From: <Saved by Microsoft Internet Explorer 5>
Subject: Aluka - Type of Modecca refracta Tul. [family PASSIFLORACEAE]
Date: Sat, 18 Oct 2008 01:16:19 +0200
MIME-Version: 1.0
Content-Type: multipart/related;
	type="text/html";
	boundary="----=_NextPart_000_0000_01C930BF.206A3D50"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3350

This is a multi-part message in MIME format.

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.aluka.org/action/showMetadata?doi=10.5555/AL.AP.SPECIMEN.P00146028&pgs=

=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><HEAD><TITLE>Aluka - Type of Modecca refracta Tul. [family =
PASSIFLORACEAE]</TITLE>
<META http-equiv=3DContent-Type content=3D"text/html; charset=3DUTF-8">
<META content=3Dnoarchive name=3Drobots>
<META content=3Dtrue name=3DMSSmartTagsPreventParsing><LINK=20
href=3D"/templates/jsp/_aluka/favicon.ico" rel=3D"shortcut icon"><LINK =
media=3Dscreen=20
href=3D"http://www.aluka.org/templates/jsp/_aluka/css/template.css" =
type=3Dtext/css=20
rel=3Dstylesheet><LINK media=3Dscreen=20
href=3D"http://www.aluka.org/templates/jsp/_aluka/css/alukamenu.css" =
type=3Dtext/css=20
rel=3Dstylesheet><LINK media=3Dall=20
href=3D"http://www.aluka.org/templates/jsp/_aluka/css/content.css" =
type=3Dtext/css=20
rel=3Dstylesheet><LINK media=3Dall=20
href=3D"http://www.aluka.org/templates/jsp/_aluka/css/tabs.css" =
type=3Dtext/css=20
rel=3Dstylesheet><LINK media=3Dall=20
href=3D"http://www.aluka.org/templates/jsp/_aluka/css/sys/dom_popup/popup=
.css"=20
type=3Dtext/css rel=3Dstylesheet><LINK media=3Dprint=20
href=3D"http://www.aluka.org/templates/jsp/_aluka/css/print.css" =
type=3Dtext/css=20
rel=3Dstylesheet><LINK =
href=3D"http://www.aluka.org/templates/jsp/style.css"=20
type=3Dtext/css rel=3Dstylesheet>
<STYLE type=3Dtext/css>.mytags {
	DISPLAY: none
}
</STYLE>
<LINK href=3D"http://www.aluka.org/templates/jsp/_aluka/css/views.css"=20
type=3Dtext/css rel=3Dstylesheet>
<SCRIPT src=3D"http://www.aluka.org/templates/jsp/script.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://www.aluka.org/templates/jsp/_aluka/jsc/sys/prototype.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://www.aluka.org/templates/jsp/_aluka/jsc/sys/utils.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT src=3D"http://www.aluka.org/templates/jsp/_aluka/jsc/aluka.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://www.aluka.org/templates/jsp/_aluka/jsc/sys/dom_popup/effect=
s.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://www.aluka.org/templates/jsp/_aluka/jsc/sys/dom_popup/dragdr=
op.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://www.aluka.org/templates/jsp/_aluka/jsc/sys/dom_popup/popup.=
js"=20
type=3Dtext/javascript></SCRIPT>

<META content=3D"MSHTML 6.00.2900.3429" name=3DGENERATOR></HEAD>
<BODY>
<DIV id=3Dcontainer>
<DIV id=3Dheader><A name=3Dtop></A><A tabIndex=3D-1 =
href=3D"http://www.aluka.org/"><IMG=20
class=3Dpng id=3Dlogo title=3D"Go to Aluka home page"=20
style=3D"BACKGROUND-IMAGE: url(/templates/jsp/_aluka/img/logo4_bg.png)" =
height=3D75=20
alt=3D"Aluka Logo" =
src=3D"http://www.aluka.org/templates/jsp/_aluka/img/logo4.gif"=20
width=3D75 align=3DtextTop border=3D0> </A>
<DIV class=3Dprint-msg>
<P><I><STRONG>www.aluka.org</STRONG> - a digital library of scholarly =
resources=20
from and about Africa</I></P></DIV>
<DIV id=3Dmenubar>
<UL id=3Dmenu>
  <LI><A title=3D"Aluka Content"=20
  href=3D"http://www.aluka.org/action/showContentInfo"=20
  mce_href=3D"/action/showContentInfo">CONTENT</A>=20
  <UL>
    <LI><A title=3D"African Cultural Heritage Sites and Landscapes"=20
    href=3D"http://www.aluka.org/page/content/heritage.jsp"=20
    mce_href=3D"/page/content/heritage.jsp">Cultural Heritage</A>=20
    <LI><A title=3D"African Plants"=20
    href=3D"http://www.aluka.org/page/content/plants.jsp"=20
    mce_href=3D"/page/content/plants.jsp">African Plants</A>=20
    <LI><A title=3D"Struggles for Freedom in Southern Africa"=20
    href=3D"http://www.aluka.org/page/content/struggles.jsp"=20
    mce_href=3D"/page/content/struggles.jsp">Struggles for Freedom</A>=20
    <LI><IMG class=3Ddivider height=3D1 alt=3D""=20
    src=3D"http://www.aluka.org/templates/jsp/_aluka/img/1px.gif" =
align=3Dmiddle=20
    mce_src=3D"/templates/jsp/_aluka/img/1px.gif">=20
    <LI><A=20
    title=3D"About =
Aluka=C3=83=C6=92=C3=86=E2=80=99=C3=83=E2=80=A0=C3=A2=E2=82=AC=E2=84=A2=C3=
=83=C6=92=C3=A2=E2=82=AC=C5=A1=C3=83=E2=80=9A=C3=82=C2=A2=C3=83=C6=92=C3=86=
=E2=80=99=C3=83=E2=80=9A=C3=82=C2=A2=C3=83=C6=92=C3=82=C2=A2=C3=83=C2=A2=C3=
=A2=E2=82=AC=C5=A1=C3=82=C2=AC=C3=83=E2=80=A6=C3=82=C2=A1=C3=83=C6=92=C3=A2=
=E2=82=AC=C5=A1=C3=83=E2=80=9A=C3=82=C2=AC=C3=83=C6=92=C3=86=E2=80=99=C3=83=
=E2=80=9A=C3=82=C2=A2=C3=83=C6=92=C3=82=C2=A2=C3=83=C2=A2=C3=A2=E2=82=AC=C5=
=A1=C3=82=C2=AC=C3=83=E2=80=A6=C3=82=C2=BE=C3=83=C6=92=C3=A2=E2=82=AC=C5=A1=
=C3=83=E2=80=9A=C3=82=C2=A2s Partners"=20
    href=3D"http://www.aluka.org/page/about/partners/list.jsp"=20
    mce_href=3D"/page/about/partners/list.jsp">About Partners</A>=20
    <LI><A title=3D"Featured Content"=20
    href=3D"http://www.aluka.org/page/about/collections/index.jsp"=20
    mce_href=3D"/page/about/collections/index.jsp">Featured Content</A>=20
    <LI><A title=3D"Latest Additions"=20
    href=3D"http://www.aluka.org/page/about/additions/index.jsp"=20
    mce_href=3D"/page/about/additions/index.jsp">Latest Additions</A>=20
    <LI><A title=3D"About Data in the Library"=20
    href=3D"http://www.aluka.org/page/about/aboutOurData.jsp"=20
    mce_href=3D"/page/about/aboutOurData.jsp">About Our Data</A>=20
    <LI><A title=3D"Contribute Content to Aluka"=20
    href=3D"http://www.aluka.org/page/about/contribute.jsp"=20
    mce_href=3D"/page/about/contribute.jsp">Contribute Content</A> =
</LI></UL></LI>
  <LI><A title=3D"About Aluka"=20
  href=3D"http://www.aluka.org/page/about/historyMission.jsp"=20
  mce_href=3D"/page/about/historyMission.jsp">ABOUT ALUKA</A>=20
  <UL>
    <LI><A title=3D"History and Mission"=20
    href=3D"http://www.aluka.org/page/about/historyMission.jsp"=20
    mce_href=3D"/page/about/historyMission.jsp">History and Mission</A>=20
    <LI><A title=3D"News Releases"=20
    href=3D"http://www.aluka.org/page/about/news/index.jsp"=20
    mce_href=3D"/page/about/news/index.jsp">News</A>=20
    <LI><A title=3DResources=20
    href=3D"http://www.aluka.org/page/about/resource_info.jsp"=20
    mce_href=3D"/page/about/resource_info.jsp">Resources</A>=20
    <LI><A title=3D"Contact Us" =
href=3D"http://www.aluka.org/page/about/contact.jsp"=20
    mce_href=3D"/page/about/contact.jsp">Contact Us</A>=20
    <LI><A title=3D"Terms and Conditions of Use"=20
    href=3D"http://www.aluka.org/page/about/termsConditions.jsp"=20
    mce_href=3D"/page/about/termsConditions.jsp">Terms and =
Conditions</A>=20
  </LI></UL></LI>
  <LI><A title=3D"Join Aluka" =
href=3D"http://www.aluka.org/page/join/index.jsp"=20
  mce_href=3D"/page/join/index.jsp">JOIN</A>=20
  <UL id=3Djoin-menu>
    <LI><A title=3DIntroduction =
href=3D"http://www.aluka.org/page/join/index.jsp"=20
    mce_href=3D"/page/join/index.jsp">Introduction</A>=20
    <LI><A title=3D"Join Aluka - Institutions Worldwide"=20
    =
href=3D"http://www.aluka.org/page/join/howtoParticipateWorldwide.jsp"=20
    mce_href=3D"/page/join/howtoParticipateWorldwide.jsp">Join Aluka -=20
    Institutions Worldwide</A>=20
    <LI><A title=3D"Join Aluka - Insitutions in Africa"=20
    href=3D"http://www.aluka.org/page/join/howtoParticipateAfrica.jsp"=20
    mce_href=3D"/page/join/howtoParticipateAfrica.jsp">Join Aluka - =
Institutions=20
    in Africa</A>=20
    <LI><A title=3D"How to Preview Aluka"=20
    href=3D"http://www.aluka.org/page/join/preview.jsp"=20
    mce_href=3D"/page/join/preview.jsp">Preview Aluka</A>=20
    <LI><A title=3D"List of Participants"=20
    href=3D"http://www.aluka.org/page/join/participants.jsp"=20
    mce_href=3D"/page/join/participants.jsp">List of Participants</A>=20
</LI></UL></LI>
  <LI><A title=3D"My Aluka Personal Space"=20
  href=3D"http://www.aluka.org/action/showTags" =
mce_href=3D"/action/showTags">MY=20
  ALUKA</A> </LI>
  <LI><A title=3D"Help about Aluka"=20
  href=3D"http://www.aluka.org/page/help/tipsTechniques/index.jsp"=20
  mce_href=3D"/page/help/tipsTechniques/index.jsp">HELP</A> </LI></UL>
<DIV id=3Dpage-lang>
<TABLE>
  <TBODY>
  <TR>
    <TD class=3Daccount><SPAN class=3Dlinks><A title=3D"Log in"=20
      =
href=3D"http://www.aluka.org/action/showLogin?uri=3D%2Faction%2FshowMetad=
ata%3Fdoi%3D10.5555%2FAL.AP.SPECIMEN.P00146028%26pgs%3D">Log=20
      in</A> |</SPAN> </TD>
    <TD class=3Dlang><SELECT title=3D"Aluka interface language"=20
      =
onchange=3Dithaka.aluka.LangSelector.setLocale(this.options[this.selected=
Index].value);=20
      name=3Dlang> <OPTION id=3Den value=3Den selected>English</OPTION> =
<OPTION=20
        id=3Dfr value=3Dfr>Fran=C3=A7ais</OPTION> <OPTION id=3Dpt=20
        value=3Dpt>Portugu=C3=AAs</OPTION> <OPTION id=3Des=20
      value=3Des>Espa=C3=B1ol</OPTION></SELECT> =
</TD></TR></TBODY></TABLE></DIV></DIV>
<DIV id=3Dlangbar>&nbsp;</DIV>
<HR class=3Dhidden>
</DIV>
<DIV style=3D"CLEAR: both"></DIV>
<TABLE id=3Dbody cellSpacing=3D0 cellPadding=3D0 border=3D0>
  <TBODY>
  <TR>
    <TD vAlign=3Dtop>
      <DIV id=3Dvtoolbar>
      <DIV id=3Dvtoolbar>
      <DIV class=3Dsearch>
      <FORM name=3DfrmSearch action=3D/action/doSearch method=3Dget>
      <TABLE>
        <TBODY>
        <TR>
          <TD class=3Dsrch-ttl>
            <DIV id=3Dv-titlebar><IMG height=3D1=20
            =
src=3D"http://www.aluka.org/templates/jsp/_aluka/img/1px.gif" width=3D60 =

            border=3D0> </DIV></TD>
          <TD class=3Dsrch-box noWrap><INPUT class=3Dgeneric id=3Dsearch =
size=3D50=20
            name=3DsearchText> </TD>
          <TD class=3Dsrch-btn noWrap><INPUT type=3Dsubmit =
value=3DSearch name=3Dsubmit> </TD>
          <TD class=3Dsrch-adv>
            <DIV class=3Dadv-search><A title=3D"Advanced Search"=20
            href=3D"http://www.aluka.org/search">Advanced =
Search</A></DIV></TD>
          <TD class=3Dsrch-adv>
            <DIV class=3Dadv-search><A title=3D"View Search History"=20
            =
href=3D"http://www.aluka.org/page/search/searchHistory.jsp">Search=20
            History</A></DIV></TD>
          <TD>&nbsp; </TD></TR></TBODY></TABLE><INPUT type=3Dhidden =
value=3Dapi name=3Dsa>=20
      <INPUT type=3Dhidden value=3Dxst name=3Dsa> <INPUT type=3Dhidden =
value=3Dxhr=20
      name=3Dsa> <INPUT type=3Dhidden value=3D4 name=3Dsa></FORM>
      <SCRIPT type=3Dtext/javascript><!-- //=0A=
_tmp=3Ddocument.forms['frmSearch'];if(_tmp){_tmp=3D_tmp['search'];if(_tmp=
)_tmp.focus();}=0A=
// -->=0A=
</SCRIPT>
      </DIV></DIV></DIV>
      <DIV></DIV>
      <DIV id=3Dvtoolbar-navi></DIV></TD></TR>
  <TR>
    <TD id=3Dmain vAlign=3Dtop>
      <DIV class=3Dcolumns-wrap id=3Dclmn-main>
      <DIV class=3Dcolumns>
      <DIV class=3Dclmnl-wrap id=3Dclmn-mainleft-results>
      <DIV class=3Dside_nav>
      <DIV id=3Dtoolbar1><SPAN class=3Dsele-METADATA>
      <UL class=3Dicons>
        <LI><IMG=20
        =
src=3D"http://www.aluka.org/templates/jsp/_aluka/img/icons/actions/metada=
ta.png"=20
        align=3DabsMiddle></IMG><A id=3DACT-METADATA=20
        =
href=3D"http://www.aluka.org/action/showMetadata?doi=3D10.5555/AL.AP.SPEC=
IMEN.P00146028&amp;pgs=3D">Metadata</A>
        <LI><IMG=20
        =
src=3D"http://www.aluka.org/templates/jsp/_aluka/img/icons/actions/large.=
png"=20
        align=3DabsMiddle></IMG><A id=3DACT-LARGEVIEW=20
        =
href=3D"http://www.aluka.org/action/showContentImage?doi=3D10.5555/AL.AP.=
SPECIMEN.P00146028&amp;p=3D&amp;pgs=3D">Larger=20
        View</A>
        <LI><IMG=20
        =
src=3D"http://www.aluka.org/templates/jsp/_aluka/img/icons/actions/pdf.pn=
g"=20
        align=3DabsMiddle></IMG><A id=3DACT-PDF=20
        =
href=3D"http://www.aluka.org/action/showPDF?doi=3D10.5555/AL.AP.SPECIMEN.=
P00146028&amp;type=3Dimg&amp;pgs=3D">Download=20
        PDF</A>
        <LI><IMG=20
        =
src=3D"http://www.aluka.org/templates/jsp/_aluka/img/icons/actions/viewer=
.png"=20
        align=3DabsMiddle></IMG><A id=3DACT-VIEWER=20
        onclick=3D"(new =
ObjectViewerWindow('/action/showViewer?doi=3D10.5555/AL.AP.SPECIMEN.P0014=
6028&amp;p=3D','10.5555/AL.AP.SPECIMEN.P00146028')).open();return =
false;"=20
        =
href=3D"http://www.aluka.org/action/showViewer?doi=3D10.5555/AL.AP.SPECIM=
EN.P00146028&amp;p=3D&amp;pgs=3D"=20
        target=3D_blank>Viewer</A></LI></UL>
      <UL class=3Dicons>
        <LI><IMG=20
        =
src=3D"http://www.aluka.org/templates/jsp/_aluka/img/icons/actions/editta=
g.png"=20
        align=3DabsMiddle></IMG><A id=3DACT-TAG=20
        =
href=3D"http://www.aluka.org/action/editTags?doi=3D10.5555/AL.AP.SPECIMEN=
.P00146028">Add/Edit=20
        tags</A></LI></UL></SPAN>
      <H3 class=3Dtb-h3>Other Tasks</H3>
      <UL class=3Dtb-list id=3Dothertasks>
        <LI><A title=3D"Submit Feedback"=20
        =
href=3D"http://www.aluka.org/feedback/show?subject=3Dmissing_data&amp;doc=
fb=3D">Submit=20
        Feedback</A> </LI></UL><BR></DIV></DIV></DIV>
      <DIV class=3Dclmnl-wrap id=3Dclmn-main-gen2>
      <DIV class=3Dclmnl>
      <DIV id=3Dtitlebar>
      <H1 id=3Dtitle>Type of Modecca refracta Tul. [family =
PASSIFLORACEAE]</H1>
      <DIV id=3Dnavpath><A title=3DHOME tabIndex=3D-1=20
      href=3D"http://www.aluka.org/">HOME</A> <SPAN =
class=3Dsep>/</SPAN><A=20
      title=3DPASSIFLORACEAE=20
      =
href=3D"http://www.aluka.org/action/doBrowse?sa=3D1&amp;st=3D145839&amp;e=
xecbr=3D&amp;sls=3D">PASSIFLORACEAE</A>=20
      <SPAN class=3Dsep>/</SPAN><A title=3DAdenia=20
      =
href=3D"http://www.aluka.org/action/doBrowse?sa=3D1&amp;st=3D145839&amp;s=
t=3D146013&amp;execbr=3D&amp;sls=3D">Adenia</A>=20
      <SPAN class=3Dsep>/</SPAN><A title=3Drefracta=20
      =
href=3D"http://www.aluka.org/action/doBrowse?sa=3D1&amp;st=3D145839&amp;s=
t=3D146013&amp;st=3D187560&amp;execbr=3D&amp;sls=3D">refracta</A>=20
      </DIV></DIV>
      <HR class=3Dhidden>

      <DIV id=3Dcontent>
      <DIV class=3Dthumb-view>
      <DIV class=3Dlangbar align=3Dright>&nbsp; <!--<b>English</b> - <a =
href=3D"#">French</a> - <a href=3D"#">Portuguese</a>--></DIV>
      <TABLE class=3Dcont>
        <TBODY>
        <TR>
          <TD>
            <DIV class=3Dthumb-cont><A=20
            =
href=3D"http://www.aluka.org/action/showContentImage?doi=3D10.5555/AL.AP.=
SPECIMEN.P00146028&amp;pgs=3D"><IMG=20
            class=3Dthumb=20
            =
src=3D"http://ts-den.aluka.org/fsi/img/size1/alukaplant/p/phase_01/p0008/=
p00146028.jpg"></IMG>
            <DIV class=3Dcaption>View larger image<IMG=20
            =
src=3D"http://www.aluka.org/templates/jsp/_aluka/img/icons/actions/zoom.p=
ng"=20
            align=3DtextTop></IMG></DIV></A></DIV></TD>
          <TD width=3D"100%">
            <TABLE class=3Dmetadata width=3D"100%">
              <TBODY class=3Dheader>
              <TR>
                <TD class=3Dname>Repository</TD>
                <TD class=3Dvalue><A=20
                  title=3D"Mus=C3=A9um National d'Histoire Naturelle =
(P)"=20
                  =
href=3D"http://www.aluka.org/action/doBrowse?sa=3D1&amp;st=3D6458&amp;exe=
cbr=3D&amp;sls=3D">Mus=C3=A9um=20
                  National d'Histoire Naturelle (P)</A></TD></TR>
              <TR>
                <TD class=3Dname>Collection</TD>
                <TD class=3Dvalue><A title=3D"Type specimens"=20
                  =
href=3D"http://www.aluka.org/action/doBrowse?sa=3D1&amp;st=3D2076&amp;exe=
cbr=3D&amp;sls=3D">Type=20
                  specimens</A></TD></TR></TBODY>
              <TBODY><!--Last update: 2005-04-10T22:00:00.000-07:00 by =
original-->
              <TR>
                <TD class=3Dname>Collector</TD>
                <TD class=3Dvalue>Pervill=C3=A9 A., No# 535</TD></TR>
              <TR>
                <TD class=3Dname>Collection date</TD>
                <TD class=3Dvalue>1841-02-09</TD></TR>
              <TR>
                <TD class=3Dname>Locality</TD>
                <TD class=3Dvalue>Ambongo, grimpant dans les arbustes =
des sables=20
                  de la mer</TD></TR>
              <TR>
                <TD class=3Dname>Country</TD>
                <TD class=3Dvalue>Madagascar (Madagascar)</TD></TR>
              <TR>
                <TD class=3Dname>Identifications</TD>
                <TD class=3Dvalue>
                  <UL>
                    <LI>Adenia refracta (Tul.) Schinz [family =
PASSIFLORACEAE]=20
                    (stored under name); Verified by De Wilde, W.J.J.O., =
1971
                    <LI>Type of Modecca refracta Tul. [family =
PASSIFLORACEAE];=20
                    Verified by de Wilde, W.J.J.O., =
1971</LI></UL></TD></TR>
              <TR>
                <TD class=3Dname>Repository</TD>
                <TD class=3Dvalue>Mus=C3=A9um national =
d=E2=80=99Histoire naturelle, Paris,=20
                  France, P00146028</TD></TR>
              <TR>
                <TD class=3Dname>Data last modified</TD>
                <TD class=3Dvalue>2005-04-11</TD></TR></TBODY>
              <TBODY class=3Dmytags>
              <TR>
                <TD class=3Dname>Tags</TD>
                <TD class=3Dvalue></TD></TR></TBODY></TABLE></TD></TR>
        <TR>
          <TD>&nbsp;</TD>
          <TD>
            <DIV class=3Dmetadata-seealso id=3Dmetadata-seealso>
            <H3>See Also</H3>See more materials like this:
            <UL>
              <LI>Collection: <A title=3D"Type specimens"=20
              =
href=3D"http://www.aluka.org/action/doBrowse?sa=3D1&amp;st=3D2076&amp;exe=
cbr=3D&amp;sls=3D">Type=20
              specimens</A>
              <LI>Country: <A title=3DMadagascar=20
              =
href=3D"http://www.aluka.org/action/doBrowse?sa=3D1&amp;st=3D6550&amp;exe=
cbr=3D&amp;sls=3D">Madagascar</A>
              <LI>Family: <A title=3DPASSIFLORACEAE=20
              =
href=3D"http://www.aluka.org/action/doBrowse?sa=3D1&amp;st=3D112261&amp;e=
xecbr=3D&amp;sls=3D">PASSIFLORACEAE</A>
              <LI>Genus: <A title=3DAdenia=20
              =
href=3D"http://www.aluka.org/action/doBrowse?sa=3D1&amp;st=3D112262&amp;e=
xecbr=3D&amp;sls=3D">Adenia</A>
              <LI>Species: <A title=3Drefracta=20
              =
href=3D"http://www.aluka.org/action/doBrowse?sa=3D1&amp;st=3D22212&amp;ex=
ecbr=3D&amp;sls=3D">refracta</A>
              <LI>Herbarium: <A title=3D"Mus=C3=A9um National d'Histoire =
Naturelle (P)"=20
              =
href=3D"http://www.aluka.org/action/doBrowse?sa=3D1&amp;st=3D6458&amp;exe=
cbr=3D&amp;sls=3D">Mus=C3=A9um=20
              National d'Histoire Naturelle (P)</A>
              <LI>Resource type: <A title=3DSpecimens=20
              =
href=3D"http://www.aluka.org/action/doBrowse?sa=3D1&amp;st=3D1988&amp;exe=
cbr=3D&amp;sls=3D">Specimens</A>
              <LI>Time period: <A title=3D1800-1849=20
              =
href=3D"http://www.aluka.org/action/doBrowse?sa=3D1&amp;st=3D434858&amp;e=
xecbr=3D&amp;sls=3D">1800-1849</A>,=20
              <A title=3D1950-1974=20
              =
href=3D"http://www.aluka.org/action/doBrowse?sa=3D1&amp;st=3D434866&amp;e=
xecbr=3D&amp;sls=3D">1950-1974</A>
              <LI>Year: <A title=3D1841=20
              =
href=3D"http://www.aluka.org/action/doBrowse?sa=3D1&amp;st=3D434854&amp;e=
xecbr=3D&amp;sls=3D">1841</A>,=20
              <A title=3D1971=20
              =
href=3D"http://www.aluka.org/action/doBrowse?sa=3D1&amp;st=3D434904&amp;e=
xecbr=3D&amp;sls=3D">1971</A></LI></UL></DIV>
            <DIV class=3Dmetadata-bkmarks><SPAN =
class=3Dbkmk-lbl>Bookmark this=20
            page:</SPAN><A=20
            title=3D"&#10;&#9;&#9;&#9;&#9;del.icio.us&#10;&#9;&#9;&#9;"=20
            onclick=3D"ithaka.aluka.Bookmarks.save('del.icio.us');return =
false;"=20
            =
href=3D"http://www.aluka.org/action/showMetadata?doi=3D10.5555/AL.AP.SPEC=
IMEN.P00146028&amp;pgs=3D#bkmrk"><IMG=20
            class=3Dpng height=3D16 alt=3Ddel.icio.us=20
            =
src=3D"http://www.aluka.org/templates/jsp/_aluka/img/icons/delicious_16.p=
ng"=20
            width=3D16></IMG></A><A=20
            title=3D"&#10;&#9;&#9;&#9;&#9;Google&#10;&#9;&#9;&#9;"=20
            onclick=3D"ithaka.aluka.Bookmarks.save('Google');return =
false;"=20
            =
href=3D"http://www.aluka.org/action/showMetadata?doi=3D10.5555/AL.AP.SPEC=
IMEN.P00146028&amp;pgs=3D#bkmrk"><IMG=20
            class=3Dpng height=3D16 alt=3DGoogle=20
            =
src=3D"http://www.aluka.org/templates/jsp/_aluka/img/icons/google_16.png"=
=20
            width=3D16></IMG></A><A=20
            title=3D"&#10;&#9;&#9;&#9;&#9;Yahoo&#10;&#9;&#9;&#9;"=20
            onclick=3D"ithaka.aluka.Bookmarks.save('Yahoo');return =
false;"=20
            =
href=3D"http://www.aluka.org/action/showMetadata?doi=3D10.5555/AL.AP.SPEC=
IMEN.P00146028&amp;pgs=3D#bkmrk"><IMG=20
            class=3Dpng height=3D16 alt=3DYahoo=20
            =
src=3D"http://www.aluka.org/templates/jsp/_aluka/img/icons/yahoo_16.png" =

            width=3D16></IMG></A></DIV></TD></TR>
        <TR>
          <TD colSpan=3D2><!--Last update: -->
            <DIV class=3D"mytags user-comments">
            <H2>Comments</H2>
            <P class=3Duser-comments>No comments.</P>
            <DIV class=3Dactions><A=20
            =
href=3D"http://www.aluka.org/action/editTags?doi=3D10.5555%2FAL.AP.SPECIM=
EN.P00146028">Add=20
            =
Comments</A></DIV></DIV></TD></TR></TBODY></TABLE></DIV></DIV></DIV></DIV=
></DIV></DIV></TD></TR></TBODY></TABLE>
<DIV id=3Dfooter>
<DIV id=3Dfooter-content>
<DIV class=3Dlinks><A title=3D"Image Credits"=20
href=3D"http://www.aluka.org/page/common/imageCredits.jsp">Image =
Credits</A> <SPAN=20
class=3Dsep>|</SPAN> <A title=3D"Contact Us"=20
href=3D"http://www.aluka.org/page/about/contact.jsp">Contact Us</A> =
<SPAN=20
class=3Dsep>|</SPAN> <A=20
href=3D"http://www.ithaka.org/about-ithaka/job-opportunities">Careers</A>=
 <SPAN=20
class=3Dsep>|</SPAN> <A title=3DHelp=20
href=3D"http://www.aluka.org/page/help/index.jsp">Help</A> <SPAN=20
class=3Dsep>|</SPAN> <A title=3D"Privacy Policy"=20
href=3D"http://www.aluka.org/page/common/privacy.jsp">Privacy Policy</A> =
<SPAN=20
class=3Dsep>|</SPAN> <A title=3D"Terms and Conditions of Use"=20
href=3D"http://www.aluka.org/page/about/termsConditions.jsp">Terms and=20
Conditions</A> <SPAN class=3Dsep>|</SPAN> <A title=3D"Site Map"=20
href=3D"http://www.aluka.org/page/help/siteMap.jsp">Site Map</A> </DIV>
<P><B>Copyright =C2=A9</B> 2006-2008 &nbsp;<A =
href=3D"http://www.ithaka.org/">Ithaka=20
Harbors, Inc.</A><BR>Aluka=C2=AE and Ithaka=C2=AE are registered =
trademarks of Ithaka=20
Harbors, Inc. </P>
<P class=3Dfootnote>Technology Partner - <IMG hspace=3D2=20
src=3D"http://www.aluka.org/templates/jsp/_aluka/img/atypon_logo.gif"=20
align=3DabsMiddle><A href=3D"http://www.atypon.com/">Atypon Systems,=20
Inc.</A></P></DIV></DIV></DIV>
<SCRIPT src=3D"http://www.google-analytics.com/urchin.js"=20
type=3Dtext/javascript>=0A=
</SCRIPT>

<SCRIPT=20
type=3Dtext/javascript>=0A=
_uacct =3D "UA-2244147-2";=0A=
urchinTracker();=0A=
=0A=
=0A=
</SCRIPT>
</BODY></HTML>

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.aluka.org/templates/jsp/_aluka/img/logo4.gif

R0lGODlhSwBLAOYAAE1NEaCgge7u52trOszMuYeGX2JiLLGxlnh3Sd3cz/39+5OTbb+/qlxcKOTk
2XBvP6qojPX18IKBVmZmM5qZddXVxlpaIrq6oI6OasTErpSUcaamiff39Xt7UFVVHnR0R66ulN/f
1fDw7ISEWri4of///2trQunp4s7OvdfXy6alhcbGtIyMZE9PFJyce+bn3tHRw5yUc7W1nIyMWoB/
Ul5fKXNyQqGgfqysjr29pXd4SXp6TNbOvaWtjFNTGYyEY////wAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5
BAEHAEAALAAAAABLAEsAAAf/gECCg4SFhoeIiYqLjI2Oj5CRkpOUlZaXmJmam5ydnp+ghBOjpKWm
p6ipqqunjqyvsLGsrrK1tq+0t7q7o7m8NcCpwby9jcQTBgUbHw2nNQ8fxxO+twYTFSUVNhalFjsV
DizNvNS2BgYgCtnbo94JJSUa47vl5gYH6hUINe4lCiDniNV7da7GKGDpshn48K4EiGEN5tUauMoA
BhIFuE0AdiCCDBop/D00uJGGBF0UU50jUOIEC43WRowIqQDCMAsLTpwYIRFWSmEURLR8OcqDjXcc
NkRst0CoCAk9cRmLFXBCg6BDLTQYEcKfChYMJFgwoEGogAUkJ04liMyaAQsU/yK0LGCAZoAHXVM8
QOB0wdh2GqUygmVgAQoVN7GewBDgBIixMvJJIHHCr1uyGGL9HNUgR4mkDdxawCCgJYZo5xpAkPwh
IEIOAmhEbbV2VQ0JXRUotRZaw4m5HjgPWF0iBTuE6hLYSKtqczsauXFM8FCgQgANpQVo4HejAgbi
CUZYqIGvRIIdzJvXZmWhA9IOHRyUEPCBhdAQE5pmm7BBXQZ0ySEQ2CzrsddBBTgU0BUHEBjgAQUJ
aFBWSwtEdEAKLCSUgoCyOFcKMFyVEIELYxlQwwBYvTBCcOc8kBAMDwwo2CK2WACdiC7YcM5bE77A
wgA71vBiBwOkR+BgslhQwP8Ln7mwgAMyRKSCXD4G4AAFwXlWAgwS5BCCWB0WqIqSv3HgQg0s1TRA
SCdIMACTIrDwQWkpDDCCOiHQIKN6SL7SQAG/RRCABRZI8I4CCa6AgQc15FSCCAsskMEOwUHAQQlf
zkZbn6s00EGZJFrjwQPYIPrWKD6M8Jt2hCLTgArqOIDejIrA8mcEI/51Dg00wOAPDsCcSAMLv4mg
ga41TBlBAZqW4uEELLAQkAENbBBBDjRgUwIJwDAgQgCA4qirRQtoJmYqrbqqwqUvPPBASCgMIAM8
BPwZaKiAmcupLAasW4IDdNkIAg0kwIPCPhYQi6M1tjxLSgMYxCpeOzUUXAL/AdO1Ey4H4jR8bqek
hTCxVRNouUIHGAwwjpIviIBBs6k4XIoE+3A2AQPwrIAAAwpcYOJBHRSA0sesLEUyziWgMEpI227E
Gcx80kiMAQMgTcAA433gawkXICMQ0bBYoAK9Krdjw9aDfr3vLRCHsELZpFhgAwovVKi21MfY4LQp
JyIgjczCGDkKtX+DXRHD/NJD9DB871k01KukNMAAqNCgAgEUCH7KABhckAOQtwxUQwcprPBAWtbc
IJ8KkBuAgGcvFBn6uRbcAM+xpjSgQQSsy5KAA7J7vLbXDHS1QlVFscA75G2BE7xawzfAQgYsCBBB
BxKNtrwsKQCveeRiNiAD/wQWsARB9hhsT+08JjI+Qfey82N0W+ubUk4NHxBAAwAUKJAA6O1Inwq4
0QENbKADBqEBBSDgglLArwE7oMAGNkABvTVgAAuQAQg+wJxywCUHNfDBBEKgAKIEkHdj0cALOIAB
bhQgBxz4346694BRZcAxLHgABEmwgAKkIAE1K8a+zpEBB5DgiKUBIcO01zsLHICF3OBGAhJAv+6d
QwU42EFEmpGBDNSgBRgoQe+EiDfOdAAGDCBBDo4oghMw44RNnFILnfZD+lUgBAVgINwmMAAW6MgC
I4gACOZBDdWQICImsgDO0jYBJjbDApaa44mmSD8YREAEFcjYh4DhARZwAP8HhKwN1VawAA/saDQK
gIHXHNnISHJjklTcEThkEIEMkOxhE0CABNIBSlL4QnpXQ90AQrCsKArwkRCIAFEMUscZhsAAASjB
Cm5pgB3IAAc0WEAEeknGWg3OAOOTkQVwUAIZjCVhgopiJH3wlmGmYEcGAMcEfLAaW47nAQmwZQsk
wKC/TGMtfwJYcLrBgpZgzwIu+Ac3rpK0DwyABi4QwAkKUKQBOOAEMRqnNG3gARoogATBGRsJ3NXN
RIxiABqAgQAusIDWjIIGGiCBAESwAg1QAAYiSIEGKpoBDjiAARToAAocsAF3gUCiINCBAW5wAhGg
YAEDyIEAcuCkBJzABaBro4WdRiCBAhTgAaT4gFd55dUCjIAGMqGcNTDgAgnsSkcGsEEBJNBVh9K1
qyMYxQICsA8JpIxhuajBFiViosEaln2EGgfjBmsNwW4RGYTiTWh8aThpWDYUmM2sZjfL2c569rOg
Da1oR5uJQAAAOw==

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.aluka.org/templates/jsp/_aluka/img/1px.gif

R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://www.aluka.org/templates/jsp/_aluka/img/icons/actions/metadata.png

iVBORw0KGgoAAAANSUhEUgAAABEAAAASCAMAAACKJ8VmAAAABGdBTUEAAK/INwWK6QAAABl0RVh0
U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAGAUExURdDQoXBwQW1tPLi4isbGlGBgMLa2
iNzcuWJiMWlpN2VlMtbWrcPDkqmpf7+/j9LSpV9fL6Ske9PTp76+jsvLmcjIlmpqOV9fMNratcrK
mK+vg6enfX19UbKyhp6ed2NjMt3du2FhMHl5Tdvbt83Nm7y8jTQ0AaKies7OnczMmXZ2SWtrOrm5
i8/Pn3R0RTU1A62tgtjYsWFhMWRkMm5uPru7jcfHlWNjMTg4BqurgDU1AtnZsjIyAKiofnp6TszM
mqamfGdnNWhoNXFxQp+feLGxhGtrOa6ug2ZmNLu7jHd3Sd3dunFxQd3dvM3NmmhoNqysgXNzRdPT
psTEk7CwhLS0h9XVrNfXsKqqgDY2BHt7T9XVq9bWrMDAkHh4S6GheXNzRKGheGlpOXR0Rm5uPcHB
kdnZs3x8UWhoOHx8UNratLOzhqKiedPTqNTUqcbGlc7OnF5eL2ZmMzMzAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAFuKi9gAAAB1dFJOU///////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////AJuw3uoAAADvSURBVHjaYihBBwwl
JfLGXEVObik+elpKUTJgEQ5hHlEVhqAwQwl2BaiIZyyLiC5/dLgEu286WMSIOSNJTNvEmTHQSyET
LKIYqsPHoskgxG2t7G0HFmF1LVbTt9DgZGLUY1eCiBgUF1tFqjDkcqcpx4FFxCOKi4v1JYuAirK0
wCIC0jbFxWpmfgxCMYbJYJFCQV4pNlUeriJ/Ju4EiIi6dIAsyDpd/jxGiEgiWJG8hzYDvwlExEXd
1kCWmS9YsoCBCSIil+NgGcJmmpovoiEGFYkX5HXPZgZ62J4TIiIgIM6qaMRhDgwVR7AIGgAIMAD/
HFOWG5tqsQAAAABJRU5ErkJggg==

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://www.aluka.org/templates/jsp/_aluka/img/icons/actions/large.png

iVBORw0KGgoAAAANSUhEUgAAABEAAAASCAMAAACKJ8VmAAAABGdBTUEAAK/INwWK6QAAABl0RVh0
U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAGAUExURWRkOGNjN1hYKY+PYmNjOKenf3V1
SKamfmJiN6amfaamdmlpN3p6THl5TuLi2mhoN8DAktfXrby8jfX18dHRpYSEX1tbMG9vStLSppqa
boaGX8fHlsbGlJqaery8irOzhWNjNp2dcICAXdjYplxcL2lpOI2NXFxcLbKygLm5i7+/k39/TaGh
csjImsDAj8PDl8fHmtHRo7KymKengJaWdMzMm6urfOjo4YWFU1hYLFdXKK2tfbu7jcPDk2VlOZCQ
aKysfoqKY9XVy2NjMWVlNGVlM4ODWaGhda2tfsHBk+Pj2vT08fHx7X19U15eLV1dM2lpO2pqN8jI
lmpqOHd3SWpqOn19VK6ugO7u6qenj2RkN8rKmOrq5cfHtL+/qcLCraiogHZ2U729jMDAlnNzT3Jy
SFhYJ2ZmNWBgMdzcsb6+i2FhL6WlfcTEm2dnObGxnbCwgru7qHZ2SnNzTI2NZ7W1h8DAkfPz72Vl
Ol5eLmhoNr6+lHNzQ39/Uaiodv///zowSrkAAACAdFJOU///////////////////////////////
////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////8AOAVLZwAAANNJ
REFUeNpiqK8Xjith4zWJLa+HAIZ6PilnCy4HSTdZL6iItyh/XbS0rkSyvawPRKRQXcdUJjjUIDPX
MR4iohQipJcUqCogIpgjCxHxZ5bPcHGuqmHTr3aDiIgxFzD5ObtyB2hVh0FEEotKwz1csjVsDd1L
ICL5loqempVpWcplPEYQkYgUBncbM+sgOW1fc6gLncRVanW41Lij8jihIvUxkcVWTKnpCiw57FAR
KOBgZOBkRREBCbEbo4jUMzLYsSagiACFKlDV1Nez1KOLgABAgAEAtaZth2rUNAYAAAAASUVORK5C
YII=

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://www.aluka.org/templates/jsp/_aluka/img/icons/actions/pdf.png

iVBORw0KGgoAAAANSUhEUgAAABEAAAASCAMAAACKJ8VmAAAABGdBTUEAAK/INwWK6QAAABl0RVh0
U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAGAUExURYB/SODfqKKhalFQGUNCC///7v//
9//+2rCveFZVHoaFTsrJkvb1vtHQmf//5OLhqt/ep6Wkbc7Nln9+R6emb4SCS1BPGNbVntnYoU5N
Fvf2v+/ut7GweVtaI1lYIbq5gqSia7e2f5+eZ8nIka6tdq2sdc/Ol6albkA/CF1bJZCPWKincDs6
A8fGj6qpclVTHbm4gUlIEQUFAFhXIKCfaJiXYPz6xEJBCszKlIGASQ4OAKmocY+OVwgHAJyaY3d2
PwkIAIeGT7KxesLBigoJAN7dpt3cpe3stY6NVrW0fbi3gB4dAJ6dZnt6Qw0LAEhHEPTyvFJRGlpZ
ItLRmv/+x09OFyAfAB0bANTSnIiHUE1LFdDPmF5dJldWH7a1fsHAiZWUXfX0vUtKE4KBSjg3APn4
weXkrfLxugIBANXUnXp5Qv///wMDAPDvuJ2cZWVjLQcGANrZolNSG0VDDeHgqc3Mla+ud7Syezo5
Av38xefmrwAAAAAAAAAAAAAAAAAAAKhBfF8AAAB9dFJOU///////////////////////////////
////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////8AEPl4HwAAAQFJREFU
eNpiqIGCGFkogwEmIhwEFykStWTgEo1kEOMS5koWA4kkKTBZazMxqdqrCKrnsdQDRThNtQyUGbOl
8pn42PQ0QCKhNlryjIzsPMzGrCE+YDXGHiJCAgJsDM7impUKxSARZiUD5ZKARDkzRjHNLNnYFIYa
QxkhXokIUV8OJTcekUB/b6DJcdz83I6S7HxsrKwJkjr1DDVRupnxDJzRbNKpuVIqFSxAc/T5uYXl
7NQs0goFxLXNQSbru6e76lbxegmV8qqZ6IDtYuVj55GW4A9W9JRXB7uQWbBMUYSDQ0bPSbVc0BAk
whJeb1RgZeuQ4WLkF5ZTjwgNOMAUAQgwAJDIVJ2aaYYoAAAAAElFTkSuQmCC

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://www.aluka.org/templates/jsp/_aluka/img/icons/actions/viewer.png

iVBORw0KGgoAAAANSUhEUgAAABEAAAASCAMAAACKJ8VmAAAABGdBTUEAAK/INwWK6QAAABl0RVh0
U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAGAUExURVhYLPj49vT08vX18jIyAPDw64yM
bq2tkldXLL29jqKig4uLZHp6Vbu7pOrq5aKiiYSEU6GhiFxcLjExAISEW7+/qXd3U5ycbKWlcoqK
W8XFq4iIYWBgMGJiMXl5SaGhgV5eL/Ly5cbGlfHx7ri4nYmJYenp3VtbLm5uPqKihNLSpa6ulT4+
Do+PY2VlM7u7jWRkMuzs5aami5WVcjU1AtPTp3NzRZCQcNXVv729lenp1M3Nmr+/j+bm2q6uk8PD
kWZmMzMzAKysfXx8UV9fL/f39K+vgdHRo9fXrnh4SHV1Ruvr5dDQofPz8Lq6mjg4BsfHnqiojG5u
RtLSpGpqOHV1R3t7Ss/Pn4SEXICAWHV1SoODYvPz7dHRpIiIWbm5i4CAVoiIYMzMmq2tfnp6SpiY
dfHx46mpeKmpjFpaLbu7kMHBkbGxgXt7T6OjcZiYdtbWrWNjMllZLZGRbfb28/X18IqKY3t7Vn9/
VMbGlPf39czMnQAAAAAAAAAAAAAAAI8gW6QAAAB9dFJOU///////////////////////////////
////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////8AEPl4HwAAAMNJREFU
eNpiqEEHDOSLeGdEaITm5vOyQkWYjWQNHAQkdStEpEUZQSLM5S5RKvbW4e4FUsZlXIw1DMw8Qua+
AUoSAslaHqXs3JqMDPxF0TVqNjksJjpupoo17NyiDAwMfDUWnHLCLP5xwVY1rImqDIIcbDW28U7C
LI7pPmk18iK8DExiHGzKlvriYXlJsTFczqlVDDVMYgxB2lmc2ZXVfglmxa4g9zAJMmSqe3mmFOqF
2JVA3czHzyOkIBMZaEi+3wECDAChWGjutbG5EwAAAABJRU5ErkJggg==

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://www.aluka.org/templates/jsp/_aluka/img/icons/actions/edittag.png

iVBORw0KGgoAAAANSUhEUgAAABEAAAASCAMAAACKJ8VmAAAABGdBTUEAAK/INwWK6QAAABl0RVh0
U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAGAUExURVtbLdjYsaioftbWrd7evbm5i1tb
Lq2tgtzcusnJl83Nm7+/j9ratbS0h9/fv4WFXcDAkNDQodLSpc7OnHBwQaOjelxcLt3du5+fd8zM
mdXVq2FhMcjIlnt7T6amfaSke5+feJ2ddru7jdvbt8/Pn9PTp7a2iMbGlMvLmH5+U8PDkoWFXJub
dVlZLJqac6+vg2RkMmBgMGVlM9TUqWtrOmFhMGZmM8ZjMbW1iLOzhnR0Rdratry8jb1eL2NjMrGx
hNnZs7e3ichtQM5rOaKies/PoF9fMCoqKsxmM1dXK2lpN15eL7q6jLu7jLa2icZoOr6+jtLSps7O
ntbWrICAVq6ug8ZkNNHRo4ODWslwQ3l5TFhYK5qadCUlJaurgcTEk4KCWW5uPcfHlZycdclyRsp0
SQkJCczMmtvbuMLCksdrPWJiMclkMtfXsMrKmLKyhXd3Ssx4TqGheMbGld/fvmxsO6Kieampf4SE
Wx4eHsNhMRAQEMt1S7pdLgAAAP///6PeTsUAAACAdFJOU///////////////////////////////
////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////8AOAVLZwAAAQhJ
REFUeNpiqEcHDPXZdgZGXqUiVgWymiEJFdpAEWnWAC0ZLkFVZkZrDhY+fqCIqZqvgLqkSqAUIw9U
xDDfsa6OMy2tsjLWHSLips/Lyl2cLhgo5aAsXgIyRzfO3tY8x8M5KzK1kIMlAiTCxF5rW1UV5u+U
UqMsngAUiZYv17ew0coLEpLK5ckIAYmUydXW1nIDcW0wI48mUMRTQZQplFcpk1M43JiZURYowqZY
VAcGGmnVxsxRQBEGHQlRJnZeH4EkSRUh4wKQSIwiSIVfXZ0Ml6uQCEhEL1lBnondkpU7npNLECKi
I+EiF2evpiSgriGcCDKZTUzM29vNUBoYKmZeJkARdAAQYACav1VviVUOcAAAAABJRU5ErkJggg==

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://ts-den.aluka.org/fsi/img/size1/alukaplant/p/phase_01/p0008/p00146028.jpg

/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0a
HBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIy
MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCADIAI4DASIA
AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA
AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3
ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm
p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA
AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx
BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK
U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3
uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwC69zut
wVZiqL8xAOBx3rT8MXEV3DcPFKsqhgMqcjpWRpzFtB1AtuyUfr6bOKT4Zf8AIOvgOgmX/wBBrjnT
srmtOV2jtfKA7Uvlc1OB+VLtrA3IghAoKA1Nil20wK/lcUxrdfSre2gqKAKJgXHSvJta1+e28TXt
nJqN3DCszrmFgxRcnoMgZHpkV7GUrjtV+H2j6pfTXNxJdh5ZDIwR1ABPXHy5rSlJRepnUi5LQ85u
ddlWS3Fl4g1WaN2O5p1WM5yOMAnj3OKfe65shLWXiLVZn8zDCaJY9owemGbNdkfhdoIPEt//AN/V
/wDiaafhfoec+dff9/V/+Jrf2lMx9nM5O41to7WRoPEWptdKqlomhUIvTOG3HP5flRH4glNsHPif
U1vPKZvJEIKEgHGX3cflXXJ8MdFR1dZ77KnIy6n/ANlqy3gLSgpzPOoIwfkiH/slHtKfYOSZxFl4
kupoYzdeK9SgkZyESO3WQOBjqSw2+nSs638UeI5b1IJNauVBYhjlTjHXtXbr4Gtrp/MtJttsOFea
KMmT3ACDj3PWpLX4XaSAryXl6synOY3UDPtlaXtKY+Socjf+I9ajtRPDq12u1grKxHOfqPareg6j
ealbSzXlzJNIH2hm64wOOK627+HOmXKgSX1/tBzgFAM+p+Wss6Ba+H5Ta2skro43kykE56dgPSpl
ODVkCjNbl+wPmaJese0bAYJ/uVJ8Mh/oOof9dU/9BrZ8I6BFrOi3YFyYVJ8o7U3dU5PJ96vaR4Ui
8JPNaw3kl0JgshZ0CkdRjj6VVT4WVTtdGyBThimrR3rlNyQUYpAadTEMp2KMEkfWnHpQBE1QOM1O
5AFcR4t12S3vobW0n2SQnzHIP8XYH8P50CudURVW6uVtgAI3mmf7kMf3m/oB7nisKfxWDo0M8QjW
8kO0xtyFI6nFchc6le3DyyPcTEyH5juxn247e3SgLnoEupXVtD5t1awWqAZ3S3GRn0+VetYlp4mO
p3UMVxGsUTSBWijXzBJngBiSOOemKt+FpxrGj3Gm3wMgjAGT1KHpz6giuV1fS7jRtSFu7Er96KUc
Er6+x9aAPTTGy8bSMcYxVMXAF2Y1JcEc7RkIR6npzXEaRdTW+owiUSzI7BXi3ElgfQevevSBAqqF
VQAOgAxigZSeZlFctq7+bfg99n9a7OSBSh4rkNWjC3wHqn9aEKWx0PgK/ttP0a784uQJA5KrnA2c
1qSaxZaxeGaykd0RFViyFeck965bwxxoGoZwMg4B4/gqXwn/AKu6+q/yNddVfu7m9HDQeHdXqrHV
rTqjQ1IK5DEBT6ytZ1mPRraKV495lkEarux2zmq9j4ntru5FvLH5DlSwLOCOKYrm3JIsaM7HAUEm
qnmXUyg5WBSM4A3N+vA/I02ScXLrCkcjRMcu5UquB2565OPwzVo8igChrF61lpF1cqCWjjJGOoPQ
GvIJpZZGLuSzE5LHkkmvWtXMk0P2GBUaS5BVi/RE7sR36gAeprlk8At5kofUMJxsIjJJ+ozx+FAj
kI7Wdo/tCxsY0bYzdTk84NaGm6Td6tK0drEWCnDueFT6n/JrvtP8OW1ro40+QmVSdzyfdJb1HpWd
oWiz6f4lvtszrbxgYGP9aG5GfpzSsBo6NpyaBZi3kkUhyXec8DdjkH2wDisTW9c0XUSkdx9rkSPc
0RgRRntuyfoRitPxncImhzRFgCQGwDzncAv9T/wGvP7Fbm6V7eP544wZCpYAL0ycn8KYHb+Gb3w8
9wsVrBJBdtwhueWb/dPT8OK64CvJNE1KPSNTW5a3WdlyoVmwQTxke9eujsaQxjKMVxniBQupJx1j
/rXbMMiuM8SLjUo/eL+ppdQlsJoBEuiXpZBkJgZH+waf4NwIrsYx8yfyNXPB9rFe6Jfs5cbQF+Uj
+59KvWek22lO62xk2yKpbe2eRmsqtaKxCpvdnXRrR+qOn10/M0VNSZNQoafnitjlOD+IN2zXllag
8JG0jficf0rF024vop/MtJmjeSPaXA5x6Z/CpPF0jXXiq5RfmZQsSL9F/wASatIBCiRqQQqgZHSq
M3udpod691Z7JSWliwCxPLD1rRlmWKJpHYBFGWJ7Csfw5BtsnnPWV8D6D/6+a5zx7qEq3cFmkrCL
y98iA8Ek8ZH0FAxJPEuoSXtxLbmKMSNtG5cuirwBzwO5PHU1PF4i1VSpM8cmP4WjHze2RiuKUlCC
vyn1U1qW10XBSXr2OMZoFqeo6bqEWpWgni+U9HQ9Ub0NWyBjOK4Xw7cTw6vAsYYiU7JF/vL6n6dc
12l2zJAwQ4dyEU+hPGfw60ijJvNGTVNPdZYxIbmMFm3bSr8lWz6DOMegrlrPwFqhnaOe4gihDf6x
SWLe4H+OK9FgjWKFIoxhEAVRnPAqTGBmgLHOWHgrSLTa0kb3UinO6ZuM/QcfnmujxQPrSk0ikRt0
Nch4k/5CEP8A1y/rXXt0rkfEv/H/AA/9cz/OkKWxN4QvFs9Evx5ZcMAxw3+wau6VrcOtCWSGGSIR
7VIcjnOfSsXwz8mhX248smRj/cNM8F5EV5x3T+Rp1cNF1PbNar9Tz4Ymoq8aK2dzrxwaqarfmw09
5Vx5h+WMH1P+HWrCmuT8T3EkmpLBuxHGgIA9T1/pTPQZz3mGW/llYeZIzFmc9c+ufzqSS5fd5aDB
I5JOcfhVaLeC8UHAD/NIR0GBUyIq5yST/tHk+9Mk6zQNeRhDY3KLGdoWN16Mff0Jqj4hkkkhvA9q
5jdzDHNuGFkDAnI9CAAD9axrGKS81WG0hXdMSGJ7Io5LGt7xXqItmk09I1JuNsrt1xz2HY/KKAuc
VND5ZCl1J2hvlPTPY+4rsfDfhrTNR0WO6nMsjyFgQsm0KQccYFc/bWsWq31vbJKY3dthIXJA+lel
6Xp8el6dDZxHcsYwWI5Y9zSGitY6Bp2ljzIjMGAI3vMxPPbirD208jo8c7pHG2+OOTnLYxyeuOen
X+VXwBxkdOlONMCst9Ap2zSLA/8AdlYL+R7/AIVN9rtSQPtUOT/01X/GhlBIyAaY8EUisrxIynqC
oOaQyYrtpc1Uik8iZbZ3JVwTEWPPHVffA5/P0qwTQwQO4ArkPEbB9Rix0EZ/nXWOMiuR8QgC/iwf
+WZ/nSCWw/wmWOgX27P3ePpspvhT/VXP1X+tVNClY6NdBHdcRgcNjPye1J4DlZrS/eaUkKyHc56D
Br2Zztg5R9PzPKjhpPFQrX0V/wATsBxXG+Ko7i2vJbvyJWgZR+9UZCkDHPpW9P4i0yHIE7Sn0iQn
9elR6hdQ6h4fnmgljEZXLGQEhcEEhgOe1eOj1GeZyq1zEJUUjnLAenrUQBOfrxmu9k8KPLOk9pJC
I5I13BieD3I479aoalpukaPGVuCbq9fpDE21U9zTuTYxtOvL/Sg93ZEopwksgXcvsDmul0Sys/FJ
nv7wSh1cK0SPhTwOSepz9axLrU7B9B+wWto1u5m3yruLhhgjIJ/Diq2k+IJ9Btp47ZFMs5Xaz8gE
E5P5Ggex6rZ2NrYRiO1t44U9EXGfqe9WDWR4f1yLW7DzVws6YWaP+6fUex7VrigY4dKWigUAFBoz
RQMrXdqtzFggb1+aN+6N2Ip1tJ59rFKRgsoLD0Pf9alPIIqnZB1a7QtlROxQY+6CASPzJ/OkBZdu
DXIeIs/bYj6of512BwOa5DxKSb+Ejj92f50glsYDax/YugSypAJNyICpO3qAP61S8Naqg8O6urRs
WkeOJFU8kkE5/DFQ64M+GnG7dxH+HTirnw5sIL7T9UiuEJUSxkEHBB2t3rtqTl7Nx6HLT+IatwhG
1mG4cHJ605bh44ZGUOQUyVjPDEEY3ew6/hWzrmiadYWyeVFMXc8O0nC46/U1R066i0+GdHt0lt5V
xKjDkgehrkub2syq/ivU0tBa2xEMS5Csoy6r2GT6dKxS7+a5clpG5JLZOfeuyi8G2P2KW5a6uG2K
XAwFXOM+5IHStm28JaKsKE2W9ioJLyMT0+tKxZ5rFwxyRwO3enahZTW6QvNGYxKC0e7gkcc/nXqN
r4c0m0l82KyQuDkFyWx+dYHiqAvrttJKreUsWIiR8rNkkjPsKLCOV0fVLnRdRS4jGWHEiE8OvcGv
WbG+g1CzjurZ90UgyPUHuD7149KzJctKPlJYn6V6roNpFa6PB5QH71RKxAxkkUIBNe1Z9Ot41hZB
NKTgnkqB3x+lcsdSvZGEhvLjPr5pH6CtLxVCfttq5BIZCoPYEHP9a527eWFAwzjuQuSKYjttA1hr
1Wtbp83CjcrH+Nf8RW6K858Ox6lf3Mc9vCGjjkGZwwXae/HfivRgcUDQhqjYyebLekKQguCFYjhs
KoOPxBH4VNezGGEKhAmlbZEP9o9/wGT+FSRRLBCkSDCqMCkxjj0Nch4mYfbLf/rm38665jha4zxI
5a8g/wBw/wA6S3CWxymrLI3h1w4TpHt2enHX3rW+GS7LXU/+ukf8mrP1NR/YLfLj5Yzn16c1qfDr
iDUcf34/5Guqr8JzUviOxvLOK/tWgl79GA5U+orEh8KP9tRridJLYfeRQQX9j7V0S1zr+K0XU7u0
eE/Z42MazxnkHHOR359K5jpZknxULOyk0uJBcPGzIZmOAy5PAA5PYZrbsvGMU0Ra5spYSD0Rg3Hr
zjFef2NuzX4DqflGWyMd+Ku6lOYkEEUgXOd+OuOwpk3PQ7DxHp+o3At4mkWZslUdeuPcE1H4lgaX
T0l4CQSeY2ewwRn9areFfDyaXbi6m+a6mXOMcRg9h7+tamsaa2q2X2MyeXE7qZGGd2Ac4H1oGeZX
EcctyzQsrBjjAPfviu78INeppptrq3lSOI/uZHGNynt+FTTaBptk0N1BaIjRSKWbJPyg8nn8/wA6
3gOaAIp7WG7j8ueJXXtkdPcelYh8KfMdt58h9Y8n+ddFinUAUdP0i00yB47ZCPMILserH8OlWxG4
6ysR9B/hUqinFcUDM2SBP7YtZDlnWKXBY5/uj+tXaqK5l1hyEbZDDs3kcFmOSB9AB+dXe1JgRMvF
cZ4nAW8gGf4W/mK7NzXGeKDi8t+n3G/mKS3CWxzV+AdEYDP3Y85/DpWv8PRtg1D3dP5Gsu8+bSCo
IOFQY9OlbfgGIi2v+n+sTp9DXVV+A5qXxHU3M4tbSa4bGIkL8+wry6znd5GWbBkZi+fUnk12fjO5
kj01bONT+++Z2x/CvUfng/SuLsrdpp4ztYvu4Cjqe1cx0MuF1t5C28tKxCqpyeAOMH8OnvT/AA5p
j6vraGUExRHzZSe/PA/E1mXSGHVJorjAMbFcE5APSu58DQqtrdyIeGdVx26df1p2EdWKcFPoa4/W
dZvJLiW2Um3jRipVT8zY9T/hXPXNxKIS4nkDKDg7jxRcZ6iUDAqwBB4IPeq2mAixUEswDME3HnaG
IA/Ksfw1qaavpmJJJBeQgLIwc5Pow/z1ra08NFbLA7KzxDaxHf0P1Io3AsGWNZBGW+c8gYNSZxUc
g3KRnHofQ+tMSYE7HIWT0Pf3FMC0PWuc8Q+KItMLW0J3T92BHyn0Hv8AoPc8VV8TeKRYQm3s23Ss
ShdTwCOoB9sjP1/Lz0NLdSl2Jd2P1qWxo9C8N+IftGy2ufKj3E+WQcc5+7z1Jz165rq88V5v4f0x
n1Wz+UM0bb2BGQAOv+fWvRqAEbHpXFeKsG9t/wDcb+Yrs36GuK8SnN5D/ut/MUluEtjClXdpwUgY
Kr079K3/AASnlwXoAxl0/ka56AmS3KmIxgbQD/e4HNdT4TjCQXeCeXXr9DXVV+A5qXxGrrP2c6XM
ZwpwMx7v7+OMVxNtJLZyrLaSGJ143AA/p6VseLbkPPaWkYJliJmYg/dGMDP1rjrkyypLMWbyFbbn
PBPp7n2rmOh7nTx/Y7wT3ciRx6ih80lB8roCC3ynIz611+k7f7LtiihQ0YbA9+a8y8PDdrFlHgNu
mBYEZ4HOK6CPxLeW8FwhP2hGVlRgArKxHXjqM0xEviy7s7fUgEk33G3E0Qxx6En19vpWE+y4tiR8
ode/asFpjLIWkdmY8lm6n3ya7nwppemaro4a5QvJFIyFfNIUjqDgH3pbjOX03UptG1JLqIg7Dh1H
R17ivTtHuodRjk1GFsrOQAvdQBwD79ax77wzo13dxQWyGGXlpfIfhU6dORkn+tbOh6PHots0Eczy
IWyN4HA9OPqaErDuaXXimvGrptdAynsRmpeKOMUxGLFo+n3Mdzbz2kTRi43bQuOgGOlVW8JQiQ+T
clIyfumPOB6ZzWnaTE6rfQ+WwUFGDY4J2jP0PTitEDNAFLT9Mt9NiKwKSzffdurf/W9quHpTwvrS
ORSY0VZnIFcfr53XUR/2W/mK66dhzXJa4QbmLvw38xSW4S2MqyTdsUE/dHXtxXUaEnlpOM9SK5/R
h5s8Kghv3fT0+Wuqs4/KLjAGcdK6qvwHNS+IV9J0+a4aaWzgklY5Z3XJP51x2v2aQ6gYJd32eNMw
xrwiqfQeuc5Peu8Byazr7TLTUL1FukJ2pldrbTweRkdua5TpaOR8OWbHxJDhMBYnZT2Hy4Gfzpbu
3W0nEKRsAFG7P8LAfMPz/mK7m0sbOxB+zQqhPBbksfqTzXMeJVt5Lg3UEmSMwzjnAI/zjP0pvYSR
kWWmWWqXZtppPs7shMcgIxuz0x3yK7HS/Den6ZEUEYnJOS0qKSPpxwK4VQ0YDbcjIIr0aHULaQhB
NEJNuSm8Ej2zQgLqRxRLtjREHooAqQD3qh/aNvnCyGQjtEhf/wBBBp0eooWIeG4hUdHliKqfx7fj
imMv54oBBpiuGUMrAqehByKjluPLZUVPMmkz5cY7+5PZR3P9aAI7Nv8ASL1fSf8A9kWr4I4qKy05
LeM/vHaWRt8rkfebuf8APYCrG2HzvJ3S7+m7YcfnjFPlYri3AhtVTz7mFHZd6oWAYj15qlLd2QYr
9tgPBIO8YOOverN9Z6XqhjnuJLoPFH5WFUjg8dMc1STwzpkpBWSTaC33ywOCee3vXR7OmZc8x6Qw
XoYW19bSSBWby1bLEDrXHauo+1IPY/0rvLXR9J0mUz2zz+YUZBvbIw2M9vYVw2rqP7QKhgQoI6+9
Y1IxjblKUm07kHhlDLqNupXI8o4A/wB2utmh8iQDaVyvf61zHggGXWLYGMp+5OOc7vkHNdjrKeVP
B15Q9frW1X4DOluUwagnEpljmi2lkyCrHG4H37Hinb6jaXHeuQ6RBdTTM0ccRhZRy0ozj6Adfzqr
PC2JhdRfaY5VAZ4htZcf7Of1H5VP53PWl83NAGXbWWmTzbreKZ5F6i4T5U9yCOT7VpLYWQYM1vHI
/wDfkQE//W/CneZnvUbTgHk0AaUbAKAOB6U7OapRzg96sLKMUXCw1rKFsmMtA/8AfhO0/wCB/EVc
sbZEuN253crgu7ZY/wD1vYVV8wZ61atJgJxn0NNbg0aDNIMCNNxzySegoWWdSA8WM553io0nXzCo
VuP9k09pdwxtbg45FaXIASXDEssKgAHAL4yfy6UP9oJzhMfjkULOcEeVIMe1OMpC5CMfbincCMqz
nDhCp9M5FcHqyCPVZV6cn+dd5LOFGf0rz/V5PM1eY9Bk/wA6iQHI2l8iKBDrXkyBeQHIZfb2Fb+l
a6LdJftmqG5ZiChd920d8UUVrUb2MIaO5oHxLZEf64VC/iG0I4mFFFY8qNfaMiGv2+7/AFoP41Kv
iC2/57L+dFFPlQc7B9egGcSA/jUJ1qJl5df++hRRRyoOdiQ68qHHGPdhVyPxDCfvMB/wKiim4IFU
ZL/b1v8A89R+dSQ+IbZLhGaQbV9/aiilyoftGaH/AAlmnhsi4lXPUKAR+tRv4ps2YmO7mB7FgCPx
FFFMnmHL4usw5DXZ2Y/ujJNI3i+yAIW6lbI/urmiimHMMTxbY+XhmkLepxz+Vczfags968ifdPT8
6KKVhOTP/9k=

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://www.aluka.org/templates/jsp/_aluka/img/icons/actions/zoom.png

iVBORw0KGgoAAAANSUhEUgAAABEAAAARCAMAAAF7tIdeAAAACXBIWXMAAAsTAAALEwEAmpwYAAAA
BGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VG
AAADAFBMVEUAAAD///+NjY2RkZGSkpLX19fv7++amprExMTHx8fa2trh4eHGxsbExMTQ0NDAwMDG
xsa8vLy6urq9vb28vLy5ubm5ubm9vb28vLy8vLzBwcG/v7/Dw8PDw8O8vLy3t7fBwcHe3t7d3d3r
6+u7u7u9vb3Ozs7T09PV1dXg4ODj4+O5ubnAwMDo6Oj09PTZ2dm+vr69vb3BwcHS0tLFxcXHx8d5
eXm/v7/e3t5mZmbq6urR0dHb29vGxsbr6+vT09PHx8fV1dXCwsLW1tbX19fk5OTV1dXOzs7a2trb
29vY2Nje3t7b29vf39/X19fc3Nzf39/c3Nze3t7e3t7f39/e3t7U1NTc3Nzi4uLi4uLj4+Py8vLn
5+fm5ubo6Ojr6+vs7Ozv7+/z8/P29vb7+/v+/v7+/v63t7fa2tqfn5+cnJyjo6N0dHSGhob///8A
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD4UwY2AAAAb3RSTlP/////////////
////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////wD+VnbVAAABO0lEQVR4
2mLMY2BgYrjFwMSgxgAAAAD//2LIy2Ni+MHEwAEAAAD//2LMY7ggJsXC8N+AgQEAAAD//2LMY2Bg
YGE4xvSHieEDw3+mn08tbJnYUxkYAAAAAP//YsxjYNgspPDorQ8TAwODCdtjRisGJgaGn5s+CXw7
y8DC8H9ROgODBgMDQIx5DBDAbM7AsIrr7Q5dJgaGBc5fBVwXMTEwsL74coedkYWBQURUmI9RlIlh
hsuxh3dXeTCyJc/KZmBgYGBKgdAMTCwQmgEgmIH7H7D+5/gs58LAwALhv1T54sLym+/tcglHiMhb
i7+Ofz8KssrxHmNgghjyluX3P4avT1lZWSG6Zvxn/qrAx8jEdPWxGAMLA8OMxGSW6W9+/GD9wc0a
zMDAwvAzmWUaWxYDHLAwsE5jy2ZAAoABAAI7TAPryp6vAAAAAElFTkSuQmCC

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://www.aluka.org/templates/jsp/_aluka/img/icons/delicious_16.png

iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAABGdBTUEAANbY1E9YMgAAABl0RVh0
U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAMUExURQAAAP///93d3QAA/+4iTdsAAABY
SURBVHjaYmCEAmYoAAggBnQBgADCEAAIIAwBgADCEAAIIAwBgADCEAAIIAwBgABigAEmKAAIIAwB
gADCEAAIIAwBgADCEAAIIAwBgADCEAAIIAwBgAADAOsQAYHT85JNAAAAAElFTkSuQmCC

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://www.aluka.org/templates/jsp/_aluka/img/icons/google_16.png

iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAADAFBMVEUA/f48tUQtt0A8tURHuUo8
tUQ8tUQ8tURNsUE8tURDuFA8tURPrVU8tURWtko8tUTMLiL/9vb/+vj//P/5/f/////y///////k
9v/////r//7////79ff+/+P2+us3W9bOJgD////0//NihKlvrO8OKssENrETMcUkOrEaJY9+nunl
9v3u///2/f/4//8Va9LREAf+/+Pu7v8AE1YcOIzt///o///8//Pp//+Jj9kTM7ooJovB9f/7/+D+
//gZX9vSKA/+/+P3//MVH4DN3PP5+//4/f//9O36/u/3//vq+f8PEp9lhdjn+P/+/+MfVvfNKgD8
/ff1//ElM7b7+v8xN7H3//H+//bw//f5///3//98j8cXO5N6pNb1+/8iYNnLFA79/+n3/+3S5//7
///E2+Px///0////+v738f///Pr4+/QcOLVCbtv3//8bXtHdGBL/+Nn0/+r//f/+/f///fr//P//
9///9//+//T//fj/+PocWrEmW8vu//0UYeHWIC//+fv9/+n8//b7//7/9fr+//j//P/y/P3/+v//
8Pb9/+kcSbAibrnt//8nU9bHIwD/+vzK0/L+//TK6vn/9PTo//bw///////+//T//f3/9f8AIpZv
munz//8hWOjSJBn9/+mGj9D//P8VKqr/9//Czv74/+H/+//4/+bu//bT2fkAJb2Bmd/1/+sdaOfO
FBn/+fOjqc3K0tTQ5f///P///P///P3+///+/+O81/8jNZkgLsX4//////8gXMrWHw3/8/+qtsIp
MHSv0vrJ1//v//P8///n+f/d6/8LFqRGdMrg5vzt//b+//QVY8/RHx3/+Obk9va/3vAdQrQxYLgW
P78aMsYTLKBaaK9Xc7zX8v/2/f/4///v//8VXPbbJRr/8fn/+P//9v/2+v3w8Pj////h3+z////7
///////+/+P/////////8v8vW9jcGgA8tUQ8tURMtDs8tURQuD08tURNtVI8tURVszk8tURNs0U8
tURItjk8tUQHY+iZWEohAAAAAXRSTlMBN+Ho8AAAARtJREFUeJwBEAHv/gD/Dv0M+wr5CPcG9QTz
AvEBAO8e7RzrGukY5xblFOMS4RAA3y7dLNsq2SjXJtUk0yLRIADPPs08yzrJOMc2xTTDMsEwAL9O
vUy7SrlIt0a1RLNCsUAAr16tXKtaqVinVqVUo1KhUACfbp1sm2qZaJdmlWSTYpFgAI9+jXyLeol4
h3aFdINygXAAf459jHuKeYh3hnWEc4JxgABvnm2ca5ppmGeWZZRjkmGQAF+uXaxbqlmoV6ZVpFOi
UaAAT75NvEu6SbhHtkW0Q7JBsAA/zj3MO8o5yDfGNcQzwjHAAC/eLdwr2inYJ9Yl1CPSIdAAH+4d
7BvqGegX5hXkE+IR4AAP/g38C/oJ+Af2BfQD8gHw1z1/gjPR670AAAAASUVORK5CYII=

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://www.aluka.org/templates/jsp/_aluka/img/icons/yahoo_16.png

iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAIAAADZrBkAAAAABGdBTUEAAK/INwWK6QAAABl0RVh0
U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAANaSURBVHjaNFNbaBxVGP7PbWZvMzuz2Y1J
k7JBY9NglFiUtlaJ2AQvFVIoCOKDBX0p9EHfBF8EHxT0RXwQX4rgm08qXtCCiGDaSiNBUyslddO4
6U42272ks3M7Z87xTKQHDvzn8t++7/vRz+uXC6FZFCWB+dAIYpISZRSjEgAoo4tlShLHz+WQv/HI
XY8dXbxRGZ8FQY00fPyxo3BvSZAY8L2TAhABsBTAakbexxdKaDiz9DIhNi0qot8DgIQnZaZwGiuF
kTJ9woYYVQTTToEp+rDubl41P/mNOyE79iYtDCYVhyEByQwfoERMARCCpAAjKVCaJXXTyCjb3ksL
5X8G6NJWf7JJB8V/FXNt0C6i+83XaHW1KIeFwKP94h47DG+fsyZmCJjIOkbOLEgwamG49td1KkkJ
Qd4ECjJ2J2egO7h76Vvj5hW/9mD7uWfNZig+/85utws5c3Qriufui946BZhQIS0EJnATUNGYX8Lz
J4y5mfZnHyY9VLWn3Ycf7Xrmzk8/7K6sVBZP9Mj9o62rAIRGLMnKF0ox1AHEoVA7ctLZ8uILHwy+
fx8/cGAk9Xd6Dff88/Da2YMT1YohW9sNasUw0G4M6Vo1GAww5lZ48hW+9Xvpxy/Fe+80PYyWnzTO
vFgam8ojAkT/2MallEvgknKZcEeGOjaNUmyNmMuvWtZscXN7ZOlI/PppNfuQZRCigKOsOLprabw0
sRgMQrEUuk5GLU2wW96ZqkYqnJidro2NhVoJhhaDiiDzo9HtdYXWIHQDVc4ZLW7bcPCpaPuWeeui
xW9QGaPGilorO4efxsRKEZL7TJI3poFc/IgNWthxo18+7V371XlieXh9tXf5K8Hz+aLb6gw3dvZs
p16wxhBJgYg73h1KRZ3LejK/YC2ehvB28uemj6q54y/A8VN7nBU4jCpVBUkSpcFAkOSB646okzTL
WgMHzI0v3q39fa1Cq6bsASGuki7DwPi+pvNpPi801CiHIJf15pWVDErGldWgsd7tROahukt4RoR0
dPgURAqKASNY21k+th+GNuaeIeM8CdpsenxYL7TtqZt/eDh2Lb8D+djPCQmpVjdNCUFUKYFw6u32
UZDwzm6n3+thTKTKJo1rIoEgpSDb6v/JQ9pCCEF2oe3/BBgA6X6CDiP52oQAAAAASUVORK5CYII=

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.aluka.org/templates/jsp/_aluka/img/atypon_logo.gif

R0lGODlhEgASAOYAAP///+np6ezs7Ovr66mpqXl5eerq6sjIyO3t7dPT0/r6+sfHx8DAwPHx8a2t
re/v752dndzc3PLy8qSkpHV1dePj49bW1o2NjcXFxZycnNfX183NzdjY2KioqJOTk3Nzc7y8vLS0
tJaWlqOjo8LCwuTk5Nra2ra2tr+/v87OzuHh4ebm5tHR0dLS0lxcXGxsbN/f321tbWNjY5WVlcbG
xuLi4rGxsdDQ0Ofn52tra/7+/oeHh8TExHZ2dpSUlOjo6HR0dMHBwf39/YyMjPX19aurq3h4eK6u
rpubm29vb5GRkbOzs4mJifDw8MrKyvv7+6ysrJiYmPT09Pz8/KampoGBgcvLywAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5
BAAAAAAALAAAAAASABIAAAflgACCAA0Bg4MITYeHB4uDNI4AAiqCQk8KClMAKoaHBkdBCSAQMxMM
CSkgHQaCEgsmDAA2TBgpEEYOgicRBw+dCVAuFoMiMigAjQCdChs7LhWDJC8dAFYNhw8WRByDPxMf
BAAtA4cCLK0OSicE4AAanYICEQAjPU6CGC/h74dSGx5JdAxikKOIOHKHfACBcIhBjFwJrgFAIChK
gSo1BN24UGAEgCWCHgxYgIMElQIULniIYIJCAREESixAuCIEjwlDMrBYwQFJBhQhSiwaAEOQAgEG
BAiqAO/QgkjIoEpgtQgBxUGBAAA7

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.aluka.org/templates/jsp/_aluka/css/template.css

 HTML #main {
	HEIGHT: 1%
}
HTML {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: #ffffff; =
PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: =
Verdana, Arial, Helvetica, sans-serif
}
BODY {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: #ffffff; =
PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: =
Verdana, Arial, Helvetica, sans-serif
}
TABLE {
	FONT-SIZE: 1em
}
A {
	COLOR: #666633
}
A:hover {
	COLOR: #cb7e32
}
IMG {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-BOTTOM-STYLE: none
}
FORM {
	MARGIN: -1px
}
.print-msg {
	DISPLAY: none
}
.link {
	CURSOR: pointer
}
.error {
	COLOR: #c30
}
.mono {
	FONT-FAMILY: serif
}
 HTML .frame-tp1 {
	HEIGHT: 1%
}
.frame-tp1 {
	PADDING-RIGHT: 1em; PADDING-LEFT: 1em; BACKGROUND: =
url(../img/cornpnl2_bg.gif) #ffffff no-repeat left top; PADDING-BOTTOM: =
1em; MARGIN: 0px 0px 0.6em; PADDING-TOP: 1em
}
#shownews A {
	FONT-WEIGHT: normal; FONT-SIZE: 12px; COLOR: #666633; FONT-VARIANT: =
normal; TEXT-DECORATION: underline
}
#shownews A:hover {
	COLOR: #cb7e32; TEXT-DECORATION: none
}
#layernews {
	BORDER-RIGHT: #999966 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: =
#999966 1px solid; PADDING-LEFT: 4px; Z-INDEX: 999; RIGHT: 20px; =
VISIBILITY: hidden; PADDING-BOTTOM: 4px; BORDER-LEFT: #999966 1px solid; =
WIDTH: 400px; PADDING-TOP: 4px; BORDER-BOTTOM: #999966 1px solid; =
POSITION: absolute; TOP: 20px; BACKGROUND-COLOR: #f9f9f3
}
#close {
	FLOAT: right
}
#close A {
	FONT-WEIGHT: bold; COLOR: #666633; FONT-FAMILY: Arial, Helvetica, =
sans-serif; TEXT-DECORATION: none
}
#close A:hover {
	COLOR: #cb7e32; TEXT-DECORATION: none
}
#layerinfo {
	BORDER-RIGHT: #666633 1px dotted; PADDING-RIGHT: 4px; BORDER-TOP: =
#666633 1px dotted; PADDING-LEFT: 4px; Z-INDEX: 999; LEFT: 200px; =
PADDING-BOTTOM: 4px; BORDER-LEFT: #666633 1px dotted; WIDTH: 280px; =
PADDING-TOP: 4px; BORDER-BOTTOM: #666633 1px dotted; POSITION: absolute; =
TOP: 20px; BACKGROUND-COLOR: #fff
}
#layerinfo .hgdLed {
	FONT-WEIGHT: bold; FONT-SIZE: 1.4em; COLOR: #333; FONT-FAMILY: Times =
New Roman,Times,serif; LETTER-SPACING: 1px; FONT-VARIANT: small-caps
}
#layerinfo .legend {
	PADDING-LEFT: 3px; MARGIN-BOTTOM: 0.3em
}
#layerinfo P {
	PADDING-LEFT: 3px; MARGIN: 0.4em 0px 0.8em
}
H2.news-hdr {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: =
1.7em; PADDING-BOTTOM: 0px; MARGIN: 0px 0px 0.4em; COLOR: #664; =
PADDING-TOP: 0px; BORDER-BOTTOM: #e0ddd2 2px solid; FONT-FAMILY: Times =
New Roman,Georgia,serif
}
H4.news-date {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: =
0.72em; MARGIN-BOTTOM: 3px; PADDING-BOTTOM: 0.1em; COLOR: #777; =
PADDING-TOP: 0.1em
}
A.join_mail {
	PADDING-RIGHT: 0px; PADDING-LEFT: 11px; BACKGROUND: =
url(/templates/jsp/_aluka/img/e-list.gif) no-repeat left 50%; =
PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
.news_popup {
	MARGIN-BOTTOM: 0.8em
}
.news_popup H4 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: =
0.7em; PADDING-BOTTOM: 0.1em; MARGIN: 0px; COLOR: #777; PADDING-TOP: =
0.1em; ont-style: italic
}
.news_popup A {
	FONT-SIZE: 0.8em; ont-weight: bold
}
.news_popup P {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0.2em 0px; PADDING-TOP: 0px
}
.more {
	FONT-SIZE: 0.75em
}
#container {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#header {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; WIDTH: 100%; PADDING-TOP: 0px
}
#menubar {
	FONT-SIZE: 65%; Z-INDEX: 900; BACKGROUND: #cc9; LEFT: 0px; MARGIN: 0px; =
WIDTH: 100%; BORDER-BOTTOM: #bb8 2px solid; FONT-FAMILY: Verdana, Arial, =
Helvetica, sans-serif; POSITION: relative; HEIGHT: 3em
}
#menubar1 {
	FONT-SIZE: 65%; Z-INDEX: 900; BACKGROUND: #cc9; LEFT: 0px; MARGIN: 0px; =
WIDTH: 100%; BORDER-BOTTOM: #666633 1px solid; FONT-FAMILY: Verdana, =
Arial, Helvetica, sans-serif; POSITION: relative; HEIGHT: 3em
}
#langbar {
	CLEAR: right; PADDING-RIGHT: 0px; DISPLAY: none; PADDING-LEFT: 0px; =
FONT-SIZE: 60%; Z-INDEX: 1; RIGHT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; COLOR: #444; PADDING-TOP: 0.2em; POSITION: relative; TEXT-ALIGN: =
right
}
#logo {
	Z-INDEX: 999; LEFT: 5px; FLOAT: left; POSITION: absolute
}
#body {
	WIDTH: 100%
}
#toolbar {
	PADDING-RIGHT: 0px; PADDING-LEFT: 12px; PADDING-BOTTOM: 0px; MARGIN: =
0px; WIDTH: 106px; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; HEIGHT: 1%; =
BORDER-BOTTOM-STYLE: none
}
#toolbar1 {
	FONT-SIZE: 75%
}
#main {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; PADDING-BOTTOM: 0.6em; MARGIN: =
0px; PADDING-TOP: 0.6em
}
#side_nav {
	WIDTH: 15%; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; HEIGHT: 1%; BORDER-BOTTOM-STYLE: none
}
#titlebar {
	Z-INDEX: 900
}
#titlebar H1 {
	PADDING-RIGHT: 0.3em; PADDING-LEFT: 0.3em; FONT-WEIGHT: normal; =
FONT-SIZE: 160%; BACKGROUND: url(../img/cornpnl2_bg.gif) #ffffff =
no-repeat left top; PADDING-BOTTOM: 0.3em; MARGIN: 0px 0px 0.6em; COLOR: =
#666633; PADDING-TOP: 0.3em; FONT-FAMILY: Times New Roman, Times, serif
}
#titlebar IMG {
	FLOAT: right
}
#v-titlebar {
	Z-INDEX: 900; MARGIN-LEFT: 80px
}
#v-titlebar H1 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: =
14px; PADDING-BOTTOM: 0.1em! important; MARGIN: 0px; COLOR: #666633; =
PADDING-TOP: 0px; FONT-FAMILY: Times New Roman, Times, serif
}
#v-titlebar IMG {
	FLOAT: right
}
#v-titlebar {
	BORDER-RIGHT: #cca 1px solid; PADDING-RIGHT: 0.8em; Z-INDEX: 900; =
MARGIN-LEFT: 0px
}
#v-titlebar H1 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: =
14px; PADDING-BOTTOM: 0px; MARGIN: 0px; COLOR: #666633; PADDING-TOP: =
0px; FONT-FAMILY: Times New Roman, Times, serif
}
#v-titlebar IMG {
	FLOAT: right
}
#v-titlebar A {
	TEXT-DECORATION: none
}
#v-titlebar A:hover {
	TEXT-DECORATION: underline
}
#vtoolbar-navi {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; PADDING-BOTTOM: 0.4em; =
PADDING-TOP: 0.4em
}
#shownews SPAN {
	PADDING-RIGHT: 18px; FONT-WEIGHT: bold; FONT-SIZE: 11px; BACKGROUND: =
url(/templates/jsp/_aluka/img/icons/show_news.gif) no-repeat right top; =
FLOAT: right; COLOR: #666633; POSITION: relative; TOP: 3px; =
FONT-VARIANT: small-caps; TEXT-DECORATION: none
}
#shownews A:hover {
	TEXT-DECORATION: underline
}
.news_aluka {
	MARGIN-BOTTOM: 1.2em
}
.news_aluka H4 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: =
0.7em; PADDING-BOTTOM: 0.1em; MARGIN: 0px; COLOR: #777; PADDING-TOP: =
0.1em
}
.news_aluka A {
	FONT-SIZE: 0.8em
}
.news_aluka P {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 0.9em; =
PADDING-BOTTOM: 0px; MARGIN: 0.2em 0px; PADDING-TOP: 0px
}
#textversion {
	PADDING-RIGHT: 0px; MARGIN-TOP: 10px; PADDING-LEFT: 0px; FLOAT: right; =
PADDING-BOTTOM: 0px; MARGIN-RIGHT: 10px; PADDING-TOP: 0px
}
#textversion A {
	FONT-WEIGHT: normal; FONT-SIZE: 0.6em; COLOR: #666633; TEXT-DECORATION: =
underline
}
#textversion A:hover {
	TEXT-DECORATION: none
}
#search-wrap {
=09
}
#vtoolbar .search {
=09
}
.search {
	BORDER-RIGHT: #e0ddd2 1px solid; PADDING-RIGHT: 0.4em; BORDER-TOP: =
#e0ddd2 1px solid; PADDING-LEFT: 0.4em; BACKGROUND: =
url(/templates/jsp/_aluka/img/hp/search_bg.png) #eae9da repeat-x left =
top; PADDING-BOTTOM: 0.3em; BORDER-LEFT: #e0ddd2 1px solid; PADDING-TOP: =
0.3em; BORDER-BOTTOM: #e0ddd2 1px solid
}
.search TABLE {
	MARGIN: 0px
}
.search TABLE TD {
	PADDING-RIGHT: 0.1em; PADDING-LEFT: 0.1em; PADDING-BOTTOM: 0px; =
VERTICAL-ALIGN: middle; PADDING-TOP: 0px
}
.search .srch-ttl {
=09
}
.search .srch-lbl {
	FONT-WEIGHT: bold; FONT-SIZE: 0.8em; COLOR: #333
}
.search .srch-box {
	FONT-SIZE: 0.85em; TEXT-ALIGN: left
}
.search .srch-box INPUT {
	PADDING-LEFT: 0.2em; FONT-SIZE: 0.85em; WIDTH: 10em; COLOR: #999; =
FONT-FAMILY: Arial, Helvetica, sans-serif
}
.menu_disc {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11px; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px
}
.srch-box INPUT.generic {
	PADDING-LEFT: 0.2em; FONT-SIZE: 0.8em; WIDTH: 15em; COLOR: #333; =
FONT-FAMILY: Arial, Helvetica, sans-serif
}
.search .radio_label {
	FONT-WEIGHT: 600; FONT-SIZE: 0.65em; MARGIN: 0px; COLOR: #333
}
#srch-scp-selector .radio_label {
	LEFT: -6px; POSITION: relative; TOP: -4px
}
.search .srch-btn {
=09
}
.search .srch-adv {
	WIDTH: 4em; TEXT-ALIGN: left
}
.search .srch-adv A {
	FONT-SIZE: 0.6em
}
.search .radio_label {
	FONT-WEIGHT: 600; FONT-SIZE: 0.65em; MARGIN: 0px; COLOR: #333
}
.search .srch-btn {
=09
}
.search .srch-adv {
	WIDTH: 4em; TEXT-ALIGN: left
}
.search .srch-adv A {
	FONT-SIZE: 0.6em
}
.file {
	PADDING-LEFT: 38px; FONT-SIZE: 13px; MIN-HEIGHT: 35px; MARGIN-LEFT: =
0.4em; WIDTH: 80%
}
#footer {
	CLEAR: both; BACKGROUND: url(/templates/jsp/_aluka/img/footer.gif) =
repeat-x left top; MARGIN: 0px; WIDTH: 100%; PADDING-TOP: 30px
}
#footer-content {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-SIZE: 70%; =
PADDING-BOTTOM: 10px; MARGIN: 0px; COLOR: #666666; PADDING-TOP: 10px; =
TEXT-ALIGN: center
}
#main .column1-cont {
	FLOAT: left; WIDTH: 70%; max-width: 60em
}
#main .column1 {
	MARGIN-RIGHT: 2em
}
#main .column2-cont {
	FLOAT: left; WIDTH: 25%
}
#main .column2 {
=09
}
#clmn-mainleft-results {
	WIDTH: 20%
}
#clmn-maincenter-public {
	WIDTH: 54%
}
#clmn-mainright-public {
	FLOAT: right; WIDTH: 25%
}
#clmn-main-gen2 {
	WIDTH: 79%
}
.hidden {
	DISPLAY: none
}
.visible {
=09
}
.noprint {
=09
}
.png {
	BACKGROUND-IMAGE: none! important; BEHAVIOR: =
url('/templates/jsp/_aluka/css/png.htc')
}
.columns-wrap {
=09
}
.columns {
	order: 1px solid
}
.clmnr-wrap {
	FLOAT: left; WIDTH: 50%
}
.clmnr {
	MARGIN-LEFT: 0.5em; adding: 0.5em
}
.clmnl-wrap {
	FLOAT: left; WIDTH: 50%
}
.clmnl {
	MARGIN-RIGHT: 0.5em; adding: 0.5em
}
.clrbth {
	CLEAR: both
}
.quick-links {
=09
}
.quick-links H3 {
	PADDING-RIGHT: 0.3em; PADDING-LEFT: 0.3em; FONT-WEIGHT: normal; =
FONT-SIZE: 150%; BACKGROUND: url(../img/cornpnl2_bg.gif) #ffffff =
no-repeat left top; PADDING-BOTTOM: 0.3em; MARGIN: 0.5em 0px 0.6em; =
COLOR: #666633; PADDING-TOP: 0.3em; FONT-FAMILY: Times New Roman, Times, =
serif
}
.quick-links P {
	FONT-SIZE: 75%; MARGIN-LEFT: 0.9em
}
#infoicon {
=09
}

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.aluka.org/templates/jsp/_aluka/css/alukamenu.css

#menu {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: #cccc99; =
PADDING-BOTTOM: 0px; MARGIN: 0px 0px 0px 80px; PADDING-TOP: 0px
}
#menu UL {
=09
}
#menu LI {
	FLOAT: left; LIST-STYLE-TYPE: none
}
#menu LI A {
	DISPLAY: block
}
#menu LI UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; Z-INDEX: 999; LEFT: -999em; =
PADDING-BOTTOM: 0px; MARGIN: -1px 0px 0px; PADDING-TOP: 0px; POSITION: =
absolute
}
#menu LI UL LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: none; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px
}
#menu LI:hover UL {
	LEFT: auto
}
#menu LI.iehover UL {
	LEFT: auto
}
#menu LI A {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-WEIGHT: bold; FONT-SIZE: =
86%; PADDING-BOTTOM: 0.8em; MARGIN: 1px; COLOR: #000; PADDING-TOP: =
1.2em; TEXT-DECORATION: none
}
#menu LI:hover A {
	BORDER-RIGHT: #333 1px solid; BORDER-TOP: #333 3px solid; BACKGROUND: =
#666633; MARGIN: 0px; BORDER-LEFT: #333 1px solid; COLOR: #ffffff
}
#menu LI.iehover A {
	BORDER-RIGHT: #333 1px solid; BORDER-TOP: #333 3px solid; BACKGROUND: =
#666633; MARGIN: 0px; BORDER-LEFT: #333 1px solid; COLOR: #ffffff
}
#menu LI A:hover {
	COLOR: #ffffff
}
#menu LI UL {
	BORDER-RIGHT: #333 1px solid; BORDER-TOP: #333 1px; BACKGROUND: =
#666633; BORDER-LEFT: #333 1px solid; BORDER-BOTTOM: #333 1px solid
}
#menu LI UL LI {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-BOTTOM-STYLE: none
}
#menu LI UL LI A {
	PADDING-RIGHT: 8px; PADDING-LEFT: 18px; FONT-WEIGHT: normal; FONT-SIZE: =
110%; BACKGROUND: #666633; PADDING-BOTTOM: 4px; MARGIN: 0px; WIDTH: =
12em; COLOR: #ebebcc; TEXT-INDENT: -10px; PADDING-TOP: 4px
}
#menu LI UL LI A:hover {
	BACKGROUND: #cccc99; COLOR: #000
}
#menu LI:hover UL A {
	BACKGROUND: #666633; COLOR: #ebebcc; BORDER-TOP-STYLE: none; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: =
none
}
MENU LI:hover UL A:hover {
	BACKGROUND: #cccc99; COLOR: #000
}
#menu LI.iehover UL A {
	BACKGROUND: #666633; COLOR: #ebebcc; BORDER-TOP-STYLE: none; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: =
none
}
#menu .divider {
	BACKGROUND: #996; MARGIN: 0px 4px; VERTICAL-ALIGN: middle; WIDTH: 168px
}
.menuHome {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: #666633; =
PADDING-BOTTOM: 0px; MARGIN: 0px 0px 0px 139px; PADDING-TOP: 0px
}
.menu {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: #666633; =
PADDING-BOTTOM: 0px; MARGIN: 0px 0px 0px 80px; PADDING-TOP: 0px
}
.menu UL {
=09
}
.menu LI {
	FLOAT: left; LIST-STYLE-TYPE: none
}
.menu LI A {
	DISPLAY: block
}
.menu LI UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; Z-INDEX: 999; LEFT: -999em; =
PADDING-BOTTOM: 0px; MARGIN: -1px 0px 0px; PADDING-TOP: 0px; POSITION: =
absolute
}
.menu LI UL LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: none; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px
}
.menu LI:hover UL {
	LEFT: auto
}
.menu LI.iehover UL {
	LEFT: auto
}
.menu LI A {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-WEIGHT: bold; FONT-SIZE: =
86%; PADDING-BOTTOM: 0.8em; MARGIN: 1px; COLOR: #000; PADDING-TOP: =
1.2em; TEXT-DECORATION: none
}
.menu LI:hover A {
	BORDER-RIGHT: #333 1px solid; BORDER-TOP: #333 3px solid; BACKGROUND: =
#666633; MARGIN: 0px; BORDER-LEFT: #333 1px solid; COLOR: #ffffff
}
.menu LI.iehover A {
	BORDER-RIGHT: #333 1px solid; BORDER-TOP: #333 3px solid; BACKGROUND: =
#666633; MARGIN: 0px; BORDER-LEFT: #333 1px solid; COLOR: #ffffff
}
.menu LI A:hover {
	COLOR: #ffffff
}
.menu LI UL {
	BORDER-RIGHT: #333 1px solid; BORDER-TOP: #333 1px; BACKGROUND: =
#666633; BORDER-LEFT: #333 1px solid; BORDER-BOTTOM: #333 1px solid
}
.menu LI UL LI {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-BOTTOM-STYLE: none
}
.menu LI UL LI A {
	PADDING-RIGHT: 8px; PADDING-LEFT: 18px; FONT-WEIGHT: normal; FONT-SIZE: =
110%; BACKGROUND: #ebebcc; PADDING-BOTTOM: 4px; MARGIN: 0px; WIDTH: =
12em; COLOR: #666633; TEXT-INDENT: -10px; PADDING-TOP: 4px
}
.menu LI UL #join-menu LI A {
	WIDTH: 16em
}
.menu LI UL LI A:hover {
	BACKGROUND: #cccc99; COLOR: #000
}
.menu LI:hover UL A {
	BACKGROUND: #666633; COLOR: #ebebcc; BORDER-TOP-STYLE: none; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: =
none
}
.menu LI:hover UL A:hover {
	BACKGROUND: #cccc99; COLOR: #000
}
.menu LI.iehover UL A {
	BACKGROUND: #666633; COLOR: #ebebcc; BORDER-TOP-STYLE: none; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: =
none
}
.menu .divider {
	BACKGROUND: #996; MARGIN: 0px 4px; VERTICAL-ALIGN: middle; WIDTH: 168px
}
#menubar-home #menu {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: #666633; =
PADDING-BOTTOM: 0px; MARGIN: 0px 0px 0px 139px; PADDING-TOP: 0px
}
#menubar-home #menu UL {
=09
}
#menubar-home #menu LI {
	FLOAT: left; LIST-STYLE-TYPE: none
}
#menubar-home #menu LI A {
	DISPLAY: block
}
#menubar-home #menu LI UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; Z-INDEX: 999; LEFT: -999em; =
PADDING-BOTTOM: 0px; MARGIN: -1px 0px 0px; PADDING-TOP: 0px; POSITION: =
absolute
}
#menubar-home #menu LI UL LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: none; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px
}
#menubar-home #menu LI:hover UL {
	LEFT: auto
}
#menubar-home #menu LI.iehover UL {
	LEFT: auto
}
#menubar-home #menu LI A {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-WEIGHT: bold; FONT-SIZE: =
86%; PADDING-BOTTOM: 0.8em; MARGIN: 1px; COLOR: #000; PADDING-TOP: =
1.2em; TEXT-DECORATION: none
}
#menubar-home #menu LI:hover A {
	BORDER-RIGHT: #333 1px solid; BORDER-TOP: #333 3px solid; BACKGROUND: =
#666633; MARGIN: 0px; BORDER-LEFT: #333 1px solid; COLOR: #ffffff
}
#menubar-home #menu LI.iehover A {
	BORDER-RIGHT: #333 1px solid; BORDER-TOP: #333 3px solid; BACKGROUND: =
#666633; MARGIN: 0px; BORDER-LEFT: #333 1px solid; COLOR: #ffffff
}
#menubar-home #menu LI A:hover {
	COLOR: #ffffff
}
#menubar-home #menu LI UL {
	BORDER-RIGHT: #333 1px solid; BORDER-TOP: #333 1px; BACKGROUND: =
#666633; BORDER-LEFT: #333 1px solid; BORDER-BOTTOM: #333 1px solid
}
#menubar-home #menu LI UL LI {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-BOTTOM-STYLE: none
}
#menubar-home #menu LI UL LI A {
	PADDING-RIGHT: 8px; PADDING-LEFT: 18px; FONT-WEIGHT: normal; FONT-SIZE: =
110%; BACKGROUND: #ebebcc; PADDING-BOTTOM: 4px; MARGIN: 0px; WIDTH: =
12em; COLOR: #666633; TEXT-INDENT: -10px; PADDING-TOP: 4px
}
#menubar-home #menu LI UL #join-menu LI A {
	WIDTH: 16em
}
#menubar-home #menu LI UL LI A:hover {
	BACKGROUND: #cccc99; COLOR: #000
}
#menubar-home #menu LI:hover UL A {
	BACKGROUND: #666633; COLOR: #ebebcc; BORDER-TOP-STYLE: none; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: =
none
}
#menubar-home #menu LI:hover UL A:hover {
	BACKGROUND: #cccc99; COLOR: #000
}
#menubar-home #menu LI.iehover UL A {
	BACKGROUND: #666633; COLOR: #ebebcc; BORDER-TOP-STYLE: none; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: =
none
}
#menubar-home #menu .divider {
	BACKGROUND: #996; MARGIN: 0px 4px; VERTICAL-ALIGN: middle; WIDTH: 168px
}
#menu LI UL#join-menu LI A {
	WIDTH: 18em
}

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.aluka.org/templates/jsp/_aluka/css/content.css

.msg-success {
	COLOR: #390
}
.msg-failure {
	COLOR: #c30
}
.msg-warn {
	PADDING-RIGHT: 1em; PADDING-LEFT: 1em; BACKGROUND: #ffffcc; =
PADDING-BOTTOM: 1em; PADDING-TOP: 1em
}
#page-lang {
	FLOAT: right
}
#page-lang TABLE {
	COLOR: #996
}
#page-lang TABLE TD {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
VERTICAL-ALIGN: bottom; PADDING-TOP: 0px
}
#page-lang .account {
=09
}
.account .lang-pref {
	COLOR: #663
}
.account .lang-name {
	FONT-WEIGHT: bold; FONT-SIZE: 1.2em; COLOR: #552
}
#page-lang .links {
	FONT-SIZE: 1.2em; PADDING-BOTTOM: 0.1em
}
#page-lang .links A {
	COLOR: #003366
}
#page-lang .links A:hover {
	COLOR: #cb7e32
}
#page-lang .lang {
	PADDING-RIGHT: 0.6em
}
#page-lang .lang SELECT {
	FONT-SIZE: 1em
}
UL.dash {
	PADDING-LEFT: 1em; MARGIN-LEFT: 0px; LIST-STYLE-TYPE: none
}
UL.dash LI {
	PADDING-LEFT: 18px; BACKGROUND: =
url(/templates/jsp/_aluka/img/li_dash.png) no-repeat 0% 0.6em; =
MARGIN-BOTTOM: 0.6em
}
UL.arrow {
	MARGIN-TOP: 3px; PADDING-LEFT: 0px; MARGIN-LEFT: 0.5em; =
LIST-STYLE-TYPE: none
}
UL.arrow LI {
	PADDING-LEFT: 17px; BACKGROUND: =
url(/templates/jsp/_aluka/img/li_arrow.gif) no-repeat left top; =
MARGIN-BOTTOM: 0.6em
}
#langbar .sep {
	COLOR: #999966
}
#langbar A {
	PADDING-RIGHT: 0.2em; PADDING-LEFT: 0.2em; PADDING-BOTTOM: 0.2em; =
PADDING-TOP: 0.2em; TEXT-DECORATION: none
}
#langbar A:hover {
	TEXT-DECORATION: underline
}
#sample-icons {
=09
}
#sample-icons IMG {
	MARGIN: 2px
}
#navpath {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 70%; PADDING-BOTTOM: =
0px; MARGIN: 0px; COLOR: #999; PADDING-TOP: 0px
}
#navpath .sep {
	PADDING-RIGHT: 0.2em; PADDING-LEFT: 0.2em; PADDING-BOTTOM: 0.2em; =
COLOR: #cb7e32; PADDING-TOP: 0.2em
}
#navpath A {
	COLOR: #666; TEXT-DECORATION: none
}
#navpath A:hover {
	COLOR: #cb7e32; TEXT-DECORATION: underline
}
#toolbar {
	FONT-SIZE: 75%
}
#toolbar UL#browse LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: =
90%; LIST-STYLE-IMAGE: none; PADDING-BOTTOM: 0px; MARGIN: 0px 0px 0.6em; =
LINE-HEIGHT: 1.2; PADDING-TOP: 0px; LIST-STYLE-TYPE: none
}
#toolbar UL#browse LI A {
	BORDER-BOTTOM: 1px solid; TEXT-DECORATION: none
}
#toolbar H2.tb-h2 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: =
medium; PADDING-BOTTOM: 0px; MARGIN: 0px 0px 0.6em; COLOR: #333; =
PADDING-TOP: 0px; BORDER-BOTTOM: #cccccc 1px solid; FONT-FAMILY: Times =
New Roman, Times, serif; FONT-VARIANT: small-caps
}
#toolbar H3.tb-h3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: =
medium; PADDING-BOTTOM: 0px; MARGIN: 0px 0px 0.6em; COLOR: #333; =
PADDING-TOP: 0px; BORDER-BOTTOM: #cccccc 1px solid; FONT-FAMILY: Times =
New Roman, Times, serif; FONT-VARIANT: small-caps
}
#toolbar UL.tb-list {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px =
0px 1em; PADDING-TOP: 0px
}
#toolbar UL.inner-ul {
	PADDING-RIGHT: 0px; MARGIN-TOP: 0.5em; PADDING-LEFT: 0px; =
MARGIN-BOTTOM: 0px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#toolbar UL.tb-list LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; LIST-STYLE-POSITION: outside; =
LIST-STYLE-IMAGE: url(/templates/jsp/_aluka/img/li1.gif); =
PADDING-BOTTOM: 0.4em; MARGIN: 0px 0px 0px 1em; PADDING-TOP: 0px
}
#toolbar UL.icons {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em =
0px; PADDING-TOP: 0px
}
#toolbar UL.icons LI {
	PADDING-LEFT: 20px; LIST-STYLE-IMAGE: none; MARGIN: 0px; TEXT-INDENT: =
-20px; LIST-STYLE-TYPE: none! important
}
#toolbar UL.icons LI IMG {
	MARGIN-RIGHT: 3px
}
#toolbar HR {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: =
0px; COLOR: #cccccc; HEIGHT: 1px; BACKGROUND-COLOR: #cccccc; =
BORDER-RIGHT-WIDTH: 0px
}
#toolbar P {
	FONT-SIZE: 75%
}
#toolbar1 {
	FONT-SIZE: 75%
}
#toolbar1 UL#browse LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: =
90%; LIST-STYLE-IMAGE: none; PADDING-BOTTOM: 0px; MARGIN: 0px 0px 0.6em; =
LINE-HEIGHT: 1.2; PADDING-TOP: 0px; LIST-STYLE-TYPE: none
}
#toolbar1 UL#browse LI A {
	BORDER-BOTTOM: 1px solid; TEXT-DECORATION: none
}
#toolbar1 H2.tb-h2 {
	PADDING-RIGHT: 0.2em; PADDING-LEFT: 0.2em; FONT-WEIGHT: bold; =
FONT-SIZE: 12px; BACKGROUND: #f9f9f1; MARGIN-BOTTOM: 0.2em; =
PADDING-BOTTOM: 0.2em; COLOR: #666633; PADDING-TOP: 0.2em; =
BORDER-BOTTOM: #ddc 3px solid; FONT-FAMILY: Times New Roman, Times, =
serif; LETTER-SPACING: 0.12em; FONT-VARIANT: small-caps
}
#toolbar1 H3.tb-h3 {
	PADDING-RIGHT: 0.2em; PADDING-LEFT: 0.2em; FONT-WEIGHT: bold; =
FONT-SIZE: 12px; BACKGROUND: #f9f9f1; MARGIN-BOTTOM: 0.2em; =
PADDING-BOTTOM: 0.2em; COLOR: #666633; PADDING-TOP: 0.2em; =
BORDER-BOTTOM: #ddc 3px solid; FONT-FAMILY: Times New Roman, Times, =
serif; LETTER-SPACING: 0.12em; FONT-VARIANT: small-caps
}
#toolbar1 UL.tb-list {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 5px =
20px 0px; PADDING-TOP: 0px
}
#toolbar1 UL.tb-list LI {
	MARGIN-TOP: 0px; PADDING-LEFT: 0.1em; LIST-STYLE-POSITION: outside; =
LIST-STYLE-IMAGE: url(/templates/jsp/_aluka/img/li_arrow.gif); =
MARGIN-BOTTOM: 0.4em
}
#toolbar1 UL.inner-ul {
	PADDING-RIGHT: 0px; MARGIN-TOP: 0.5em; PADDING-LEFT: 0px; =
MARGIN-BOTTOM: 0px; PADDING-BOTTOM: 0px; MARGIN-LEFT: 0px; PADDING-TOP: =
0px
}
#toolbar1 UL.inner-ul LI {
	PADDING-LEFT: 0px; FONT-SIZE: 0.9em; LIST-STYLE-IMAGE: =
url(../img/arrow_cat.gif); MARGIN-BOTTOM: 0.3em; PADDING-BOTTOM: 1px; =
MARGIN-LEFT: 16px
}
#toolbar1 UL.icons {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em =
0px; PADDING-TOP: 0px
}
#toolbar1 UL.icons LI {
	PADDING-LEFT: 20px; LIST-STYLE-IMAGE: none; MARGIN: 0px; TEXT-INDENT: =
-20px; LIST-STYLE-TYPE: none! important
}
#toolbar1 UL.icons LI IMG {
	MARGIN-BOTTOM: 4px; MARGIN-LEFT: 3px; MARGIN-RIGHT: 3px
}
#toolbar1 HR {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: =
0px; COLOR: #cccccc; HEIGHT: 1px; BACKGROUND-COLOR: #cccccc; =
BORDER-RIGHT-WIDTH: 0px
}
#toolbar1 P {
	FONT-SIZE: 75%
}
#toolbar .adv-search {
	FONT-SIZE: 65%; PADDING-TOP: 0.4em
}
UL.dash {
	PADDING-LEFT: 1em; MARGIN-LEFT: 0px; LIST-STYLE-TYPE: none
}
UL.dash LI {
	PADDING-LEFT: 18px; BACKGROUND: =
url(/templates/jsp/_aluka/img/li_dash.png) no-repeat 0% 0.6em; =
MARGIN-BOTTOM: 0.6em
}
UL.arrow {
	MARGIN-TOP: 3px; PADDING-LEFT: 0px; MARGIN-LEFT: 0.5em; =
LIST-STYLE-TYPE: none
}
UL.arrow LI {
	PADDING-LEFT: 17px; BACKGROUND: =
url(/templates/jsp/_aluka/img/li_arrow.gif) no-repeat left top; =
MARGIN-BOTTOM: 0.6em
}
UL.type_results {
	MARGIN-TOP: 5px; PADDING-LEFT: 0px; MARGIN-LEFT: 0.9em; =
LIST-STYLE-TYPE: none
}
UL.type_results LI {
	PADDING-LEFT: 14px; BACKGROUND: url(/templates/jsp/_aluka/img/pg.gif) =
no-repeat left center; MARGIN-BOTTOM: 0.6em
}
LI.cat_results_selected {
	PADDING-LEFT: 10px; FONT-WEIGHT: bold; FONT-SIZE: 0.88em; =
MARGIN-BOTTOM: 0.3em; PADDING-BOTTOM: 1px
}
UL.arrow_browse {
	PADDING-RIGHT: 0px; MARGIN-TOP: 3px; PADDING-LEFT: 0px; MARGIN-BOTTOM: =
0px; PADDING-BOTTOM: 0px; MARGIN-LEFT: 0px; PADDING-TOP: 0px; =
LIST-STYLE-TYPE: none
}
UL.arrow_browse LI {
	PADDING-LEFT: 17px; BACKGROUND: =
url(/templates/jsp/_aluka/img/li_arrow.gif) no-repeat left top; =
MARGIN-BOTTOM: 0.6em
}
UL.cat_results {
	PADDING-RIGHT: 0px; MARGIN-TOP: 1px; PADDING-LEFT: 0px; MARGIN-BOTTOM: =
0px; PADDING-BOTTOM: 0px; MARGIN-LEFT: 0.8em; PADDING-TOP: 0px; =
LIST-STYLE-TYPE: none
}
UL.cat_results LI {
	PADDING-LEFT: 10px; FONT-SIZE: 0.9em; BACKGROUND: =
url(/templates/jsp/_aluka/img/arrow_cat.gif) no-repeat left center; =
MARGIN-BOTTOM: 0.3em; PADDING-BOTTOM: 1px
}
H2.side_nav {
	PADDING-RIGHT: 0.2em; PADDING-LEFT: 0.2em; FONT-WEIGHT: bold; =
FONT-SIZE: 12px; BACKGROUND: #f9f9f1; MARGIN-BOTTOM: 0.3em; =
PADDING-BOTTOM: 0.2em; COLOR: #666633; PADDING-TOP: 0.1em; =
BORDER-BOTTOM: #ddc 3px solid; FONT-FAMILY: Times New Roman, Times, =
serif; LETTER-SPACING: 0.12em; FONT-VARIANT: small-caps
}
H3.side_nav {
	PADDING-RIGHT: 0.2em; PADDING-LEFT: 0.2em; FONT-WEIGHT: bold; =
FONT-SIZE: 12px; BACKGROUND: #f9f9f1; MARGIN-BOTTOM: 0.3em; =
PADDING-BOTTOM: 0.2em; COLOR: #666633; PADDING-TOP: 0.1em; =
BORDER-BOTTOM: #ddc 3px solid; FONT-FAMILY: Times New Roman, Times, =
serif; LETTER-SPACING: 0.12em; FONT-VARIANT: small-caps
}
.side_nav {
	PADDING-RIGHT: 0px; MARGIN-TOP: 0px; PADDING-LEFT: 0px; MARGIN-BOTTOM: =
0.9em; PADDING-BOTTOM: 0px; WIDTH: 97%; PADDING-TOP: 0px
}
.side_nav .tb-list {
=09
}
.side_nav_results {
	BORDER-RIGHT: #666633 1px solid; BORDER-TOP: #666633 1px solid; =
BACKGROUND: #f9f9f1; MARGIN-BOTTOM: 1.2em; BORDER-LEFT: #666633 1px =
solid; WIDTH: 96%; BORDER-BOTTOM: #666633 1px solid
}
.type-results {
	FONT-SIZE: 1.45em; MARGIN: 0.2em 0.3em 0.5em; COLOR: #333; =
BORDER-BOTTOM: #333 1px dotted; FONT-FAMILY: Georgia, "Times New Roman", =
Times, serif
}
.category-results {
	FONT-WEIGHT: bold; FONT-SIZE: 1em; MARGIN-LEFT: 1em; COLOR: #663; =
FONT-FAMILY: Georgia, "Times New Roman", Times, serif
}
#main {
=09
}
#main #content {
	FONT-SIZE: 75%; COLOR: #333333; argin-top: 0.8em
}
#main #content H1 {
=09
}
#main #content H2 {
	FONT-WEIGHT: normal; FONT-SIZE: 1.8em; COLOR: #666633; FONT-FAMILY: =
Times New Roman, Georgia, serif
}
#main #content H3 {
	FONT-WEIGHT: bold; FONT-SIZE: 120%; COLOR: #444
}
#main #content H4 {
	FONT-WEIGHT: bold; FONT-SIZE: 100%; COLOR: #333
}
#main #content H5 {
	FONT-WEIGHT: normal; FONT-SIZE: 100%; COLOR: #000
}
#main .cluster {
	MARGIN-BOTTOM: 0.6em
}
#main .cluster A {
	FONT-WEIGHT: normal; BORDER-BOTTOM: 1px solid; TEXT-DECORATION: none
}
#main .cluster P {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0.4em; MARGIN: =
0px; COLOR: #333333; PADDING-TOP: 0.4em
}
#main .cluster IMG {
	BORDER-RIGHT: #666 1px solid; BORDER-TOP: #666 1px solid; FLOAT: left; =
MARGIN: 2px 10px 0.2em 0px; BORDER-LEFT: #666 1px solid; BORDER-BOTTOM: =
#666 1px solid
}
#main #content .news {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#main #content .news H4 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; =
PADDING-BOTTOM: 0px; MARGIN: 0px; COLOR: #000; PADDING-TOP: 0px
}
#main #content .news P {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px =
0px 1em; COLOR: #333333; PADDING-TOP: 0px
}
#clmn-main-disc {
=09
}
#clmn-mainright-disc {
	WIDTH: 36%
}
#clmn-mainleft-disc {
	WIDTH: 64%
}
H3.disc {
	PADDING-RIGHT: 0.2em; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: =
1.9em; MARGIN-BOTTOM: 0.3em; PADDING-BOTTOM: 0.2em; COLOR: #003366; =
PADDING-TOP: 0.2em; BORDER-BOTTOM: #003366 1px solid; FONT-FAMILY: =
"Times New Roman", Times, serif
}
.disc-list {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px; LIST-STYLE-TYPE: none
}
.disc-list UL {
	PADDING-LEFT: 0px; MARGIN-LEFT: 0.5em; LIST-STYLE-TYPE: none
}
.disc-list LI {
	CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: =
0.7em; MARGIN-RIGHT: 0.5em; PADDING-TOP: 0.7em; eight: 10em
}
.disc-list LI A {
	PADDING-RIGHT: 1.6em; DISPLAY: block; PADDING-LEFT: 1.6em; FONT-WEIGHT: =
bold; FONT-SIZE: 1em; BACKGROUND: url(../img/li_arrow.gif) no-repeat =
left center; PADDING-BOTTOM: 0.4em; COLOR: #003366; PADDING-TOP: 0.4em; =
TEXT-DECORATION: none
}
.disc-list LI A:hover {
	TEXT-DECORATION: underline
}
.disc-list LI IMG {
	PADDING-RIGHT: 0.28em; MARGIN-TOP: 0.2em; FLOAT: left; VERTICAL-ALIGN: =
middle
}
.disc-list LI P {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 0.95em; =
PADDING-BOTTOM: 0.2em; MARGIN: 0px 0px 0px 2em; COLOR: #666; =
PADDING-TOP: 0.2em
}
.pagination {
	PADDING-RIGHT: 1.2em; PADDING-LEFT: 1.2em; PADDING-BOTTOM: 1.2em; =
PADDING-TOP: 1.2em; BORDER-BOTTOM: #003366 1px solid
}
.pagination UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 1em; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px; TEXT-ALIGN: left
}
.pagination LI {
	DISPLAY: inline; PADDING-BOTTOM: 1px; LIST-STYLE-TYPE: none
}
.pagination A {
	BORDER-RIGHT: #9aafe5 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: =
#9aafe5 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 0px; BORDER-LEFT: =
#9aafe5 1px solid; COLOR: #2e6ab1; PADDING-TOP: 0px; BORDER-BOTTOM: =
#9aafe5 1px solid; TEXT-DECORATION: none
}
.pagination A:visited {
	BORDER-RIGHT: #9aafe5 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: =
#9aafe5 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 0px; BORDER-LEFT: =
#9aafe5 1px solid; COLOR: #2e6ab1; PADDING-TOP: 0px; BORDER-BOTTOM: =
#9aafe5 1px solid; TEXT-DECORATION: none
}
.pagination A:hover {
	BORDER-RIGHT: #2b66a5 1px solid; BORDER-TOP: #2b66a5 1px solid; =
BORDER-LEFT: #2b66a5 1px solid; COLOR: #000; BORDER-BOTTOM: #2b66a5 1px =
solid; BACKGROUND-COLOR: #f1f1f9
}
.pagination A:active {
	BORDER-RIGHT: #2b66a5 1px solid; BORDER-TOP: #2b66a5 1px solid; =
BORDER-LEFT: #2b66a5 1px solid; COLOR: #000; BORDER-BOTTOM: #2b66a5 1px =
solid; BACKGROUND-COLOR: #f1f1f9
}
.pagination A.currentpage {
	FONT-WEIGHT: bold; BORDER-LEFT-COLOR: #2b66a5; BORDER-BOTTOM-COLOR: =
#2b66a5; CURSOR: default; COLOR: #fff! important; BORDER-TOP-COLOR: =
#2b66a5; BACKGROUND-COLOR: #003366; BORDER-RIGHT-COLOR: #2b66a5
}
.pagination A.disablelink {
	FONT-WEIGHT: normal! important; BORDER-LEFT-COLOR: #929292; =
BORDER-BOTTOM-COLOR: #929292; CURSOR: default; COLOR: #929292; =
BORDER-TOP-COLOR: #929292; BACKGROUND-COLOR: white; BORDER-RIGHT-COLOR: =
#929292
}
.pagination A.disablelink:hover {
	FONT-WEIGHT: normal! important; BORDER-LEFT-COLOR: #929292; =
BORDER-BOTTOM-COLOR: #929292; CURSOR: default; COLOR: #929292; =
BORDER-TOP-COLOR: #929292; BACKGROUND-COLOR: white; BORDER-RIGHT-COLOR: =
#929292
}
.pagination A.prevnext {
	FONT-WEIGHT: bold
}
.cal .date {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; BACKGROUND: =
url(/templates/jsp/_aluka/img/date_bng.png) no-repeat 0px 50%; =
PADDING-BOTTOM: 0px; MARGIN: 0px 0.9em 0px 0px; WIDTH: 28px; =
LINE-HEIGHT: 1.4em; PADDING-TOP: 0px; FONT-FAMILY: Arial, Helvetica, =
sans-serif; HEIGHT: 45px
}
.cal .date .month {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; PADDING-BOTTOM: =
0px; FONT: 9px Tahoma,Arial,Verdana,Helvetica,sans-serif; =
TEXT-TRANSFORM: uppercase; COLOR: #fff; PADDING-TOP: 2px; TEXT-ALIGN: =
center
}
.cal .date .day {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; PADDING-BOTTOM: =
0px; MARGIN: 0px; FONT: 12px Tahoma,Arial,Verdana,Helvetica,sans-serif; =
COLOR: #99ac80; PADDING-TOP: 2px; TEXT-ALIGN: center
}
P.cal {
	MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px; PADDING-BOTTOM: 0px; PADDING-TOP: =
0px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
}
IMG.cal {
	BORDER-RIGHT: #ccc 1px solid; PADDING-RIGHT: 0.23em; BORDER-TOP: #ccc =
1px solid; PADDING-LEFT: 0.23em; FLOAT: left; PADDING-BOTTOM: 0.23em; =
MARGIN: 0px 0.6em 0.6em 0.2em; BORDER-LEFT: #ccc 1px solid; PADDING-TOP: =
0.23em; BORDER-BOTTOM: #ccc 1px solid; BACKGROUND-COLOR: #fff
}
.web_series {
	PADDING-LEFT: 35px; FONT-SIZE: 11px; COLOR: #999; PADDING-TOP: 20px; =
FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; LETTER-SPACING: =
0.04em; POSITION: absolute
}
H3.dates {
	PADDING-LEFT: 35px; FONT-SIZE: 1.3em; COLOR: #663; FONT-FAMILY: =
Georgia, "Times New Roman", Times, serif; POSITION: absolute
}
.logo_text {
	FONT-WEIGHT: 700; FONT-SIZE: 1.3em; COLOR: #666633; FONT-FAMILY: =
Georgia, "Times New Roman", Times, serif
}
.date_collection {
	FONT-SIZE: 10px; COLOR: #999; FONT-FAMILY: Verdana, Arial, Helvetica, =
sans-serif; LETTER-SPACING: 0.04em
}
.contribute {
	PADDING-RIGHT: 0.6em; BORDER-TOP: #e0ddd2 1px solid; PADDING-LEFT: =
0.6em; BACKGROUND: #f9f9f1; PADDING-BOTTOM: 0.6em; MARGIN: 0px; =
BORDER-LEFT: #e0ddd2 8px solid; LINE-HEIGHT: 19px; PADDING-TOP: 0.6em; =
BORDER-BOTTOM: #e0ddd2 1px solid
}
.hint {
	FONT-SIZE: 85%; COLOR: #666
}
.backlink {
	PADDING-RIGHT: 0px; PADDING-LEFT: 10px; FONT-SIZE: 95%; BACKGROUND: =
url(/templates/jsp/_aluka/img/backarrow.png) no-repeat 0% 60%; =
PADDING-BOTTOM: 0.2em; PADDING-TOP: 0.2em; TEXT-DECORATION: none
}
.backlink:hover {
	TEXT-DECORATION: underline
}
.partner-img {
	FLOAT: right; MARGIN-LEFT: 10px; WIDTH: 250px
}
.partner-img IMG {
	BORDER-RIGHT: #333 1px solid; BORDER-TOP: #333 1px solid; BORDER-LEFT: =
#333 1px solid; BORDER-BOTTOM: #333 1px solid
}
.partner-img .caption {
	COLOR: #666; FONT-STYLE: italic; TEXT-ALIGN: center
}
.partner-vcard {
=09
}
.contact {
	MARGIN: 1em 0px
}
.contact H4 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 1em; PADDING-BOTTOM: =
0.4em; MARGIN: 0px; PADDING-TOP: 0px
}
.contact DL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.contact DT {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
0.2em; WIDTH: 10ex; COLOR: #666; MARGIN-RIGHT: 0.2em; PADDING-TOP: 0.2em
}
.contact DD {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0.2em; MARGIN: =
0px; PADDING-TOP: 0.2em
}
.browse .path {
	FONT-SIZE: 0.8em; BORDER-BOTTOM: #cccccc 1px solid
}
.browse .path .carea {
	COLOR: #666; FONT-STYLE: italic
}
.browse .path A {
	COLOR: #997; TEXT-DECORATION: none
}
.browse .path A:hover {
	COLOR: #cb7e32; TEXT-DECORATION: underline
}
.browse .path .cat {
	PADDING-BOTTOM: 0.2em; COLOR: #cb7e32
}
.browse .path .home {
	PADDING-LEFT: 17px; FONT-WEIGHT: bold; BACKGROUND: =
url(/templates/jsp/_aluka/img/pathhome2.gif) no-repeat left top
}
.browse .path .el {
	COLOR: #999
}
.browse .path .sep {
	COLOR: #cb7e32
}
.browse .path UL {
	PADDING-LEFT: 0px; PADDING-BOTTOM: 0.3em; MARGIN: 0px 0px 0.1em; =
PADDING-TOP: 0.1em; LIST-STYLE-TYPE: none
}
.browse .path .last A {
	FONT-WEIGHT: bold; COLOR: #993
}
.browse .path .last A:hover {
	COLOR: #cb7e32
}
.browse .path .loc {
	FONT-WEIGHT: bold; PADDING-BOTTOM: 0.2em; COLOR: #000
}
.browse_nav .path_nav {
	MARGIN-BOTTOM: 2.5em
}
.browse_nav .path_nav .cat_nav {
	PADDING-BOTTOM: 0.2em; COLOR: #cb7e32
}
.browse_nav .path_nav UL {
	PADDING-LEFT: 0px; PADDING-BOTTOM: 0.2em; MARGIN: 0px 0px 0.1em; =
PADDING-TOP: 0px; LIST-STYLE-TYPE: none
}
.pager {
	COLOR: #999
}
.pager .stat {
	COLOR: #000
}
.pager A {
	TEXT-DECORATION: none
}
.new-marker {
	PADDING-RIGHT: 0.3em; PADDING-LEFT: 0.3em; PADDING-BOTTOM: 0.3em; =
COLOR: #c30; PADDING-TOP: 0.3em; FONT-STYLE: italic
}
 HTML .file {
	HEIGHT: 35px
}
.pdf {
	BACKGROUND: url(/templates/jsp/_aluka/img/icons/pdf_2.gif) no-repeat =
left top
}
.metadata-acs-notice {
	BORDER-RIGHT: #fc0 1px solid; PADDING-RIGHT: 2em; BORDER-TOP: #fc0 1px =
solid; PADDING-LEFT: 68px; BACKGROUND: =
url(/templates/jsp/_aluka/img/icons/lock_48.png) #ffffcc no-repeat 10px =
16px; PADDING-BOTTOM: 0.2em; BORDER-LEFT: #fc0 1px solid; PADDING-TOP: =
0.2em; BORDER-BOTTOM: #fc0 1px solid
}
#main .column2 {
=09
}
#main .column2 H3 {
	BORDER-BOTTOM: #996 1px solid
}
.link-btn-green {
	PADDING-RIGHT: 0px; PADDING-LEFT: 10px; BACKGROUND: =
url(http://www.aluka.org/templates/jsp/_aluka/img/link-btn.png) =
no-repeat left bottom; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
.link-btn-green DIV {
	PADDING-RIGHT: 10px; PADDING-LEFT: 0px; BACKGROUND: =
url(http://www.aluka.org/templates/jsp/_aluka/img/link-btn.png) =
no-repeat right bottom; PADDING-BOTTOM: 10px; PADDING-TOP: 0px
}
.link-btn-green DIV DIV {
	PADDING-RIGHT: 0px; PADDING-LEFT: 10px; BACKGROUND: =
url(http://www.aluka.org/templates/jsp/_aluka/img/link-btn.png) =
no-repeat left top; PADDING-BOTTOM: 0px; MARGIN: 0px 0px 0px -10px; =
PADDING-TOP: 0px
}
.link-btn-green DIV DIV DIV {
	PADDING-RIGHT: 10px; PADDING-LEFT: 0px; BACKGROUND: =
url(http://www.aluka.org/templates/jsp/_aluka/img/link-btn.png) =
no-repeat right top; PADDING-BOTTOM: 0px; MARGIN: 0px -10px 0px 0px; =
PADDING-TOP: 10px
}
.link-btn-green SPAN {
	PADDING-RIGHT: 0.2em; DISPLAY: block; PADDING-LEFT: 0.2em; FONT-WEIGHT: =
bold; MIN-HEIGHT: 1.4em; PADDING-BOTTOM: 0.2em; COLOR: #330; =
PADDING-TOP: 0.2em; TEXT-ALIGN: center
}
A:hover .link-btn-green SPAN {
	CURSOR: pointer; COLOR: #000
}
A:active .link-btn-green SPAN {
	CURSOR: pointer; COLOR: #000
}
 HTML .link-btn-green SPAN {
	HEIGHT: 1.4em
}
.pod {
	WIDTH: 600px
}
.pod IMG {
	BORDER-RIGHT: #e0ddd2 8px solid; BORDER-TOP: #e0ddd2 8px solid; =
BORDER-LEFT: #e0ddd2 8px solid; BORDER-BOTTOM: #e0ddd2 8px solid
}
.pod .date {
	COLOR: #666
}
.pod .nav {
	BORDER-TOP: #eee 1px solid; FONT-WEIGHT: bold; FONT-SIZE: 1.2em; =
MARGIN: 0.6em auto; COLOR: #cb7e32
}
.pod .nav A {
	MARGIN: 0px 0.2em; TEXT-DECORATION: none
}
.pod .nav A:hover {
	BORDER-BOTTOM: #663 1px solid
}
.pod .prev {
	FLOAT: left
}
.pod .next {
	FLOAT: right
}
.pod .empty {
	COLOR: #999
}
.pod .metalink {
	PADDING-RIGHT: 0.4em; PADDING-LEFT: 0.4em; PADDING-BOTTOM: 0.4em; =
PADDING-TOP: 0.4em; FONT-STYLE: italic; TEXT-ALIGN: center
}
.folder_hdg {
	PADDING-RIGHT: 0px; PADDING-LEFT: 14px; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 0px; CURSOR: pointer; COLOR: #333; PADDING-TOP: 0px; =
LETTER-SPACING: 0.1em
}
.closed {
	BACKGROUND: url(/templates/jsp/_aluka/img/plus.gif) no-repeat left =
center
}
.opened {
	BACKGROUND: url(/templates/jsp/_aluka/img/minus.gif) no-repeat left =
center
}

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.aluka.org/templates/jsp/_aluka/css/tabs.css

.tabs {
	MARGIN-TOP: 1em; FONT-SIZE: 1em; MARGIN-BOTTOM: 0.2em; WIDTH: 100%; =
LINE-HEIGHT: normal
}
.tabs .base {
	CLEAR: both; BORDER-TOP: #999 1px solid
}
.tabs UL {
	PADDING-RIGHT: 4px; PADDING-LEFT: 4px; FONT-SIZE: 90%; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px; LIST-STYLE-TYPE: none
}
.tabs LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
0px; MARGIN: 0px 1px 0px 0px; LINE-HEIGHT: 1.6em; PADDING-TOP: 0px; =
TEXT-DECORATION: none
}
.tabs LI {
	BACKGROUND: url(/page/img/tabs/rwhite.png) no-repeat right top
}
.tabs LI A {
	PADDING-RIGHT: 1em; DISPLAY: block; PADDING-LEFT: 1em; BACKGROUND: =
url(/page/img/tabs/lwhite.png) no-repeat left top; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'/page/img/tabs/=
lwhite.png',sizingMethod=3D'crop'); PADDING-BOTTOM: 0.1em; WIDTH: auto; =
PADDING-TOP: 0.1em; WHITE-SPACE: nowrap
}
UNKNOWN {
	WIDTH: auto
}
.tabs A {
	FLOAT: none
}
.tabs LI A:link {
	FONT-SIZE: 1.4em; COLOR: #333; TEXT-DECORATION: none
}
.tabs LI A:visited {
	FONT-SIZE: 1.4em; COLOR: #333; TEXT-DECORATION: none
}
.tabs LI A:active {
	FONT-SIZE: 1.4em; COLOR: #333; TEXT-DECORATION: none
}
.tabs LI.tab_selected A:link {
	FONT-WEIGHT: bold; COLOR: #000; TEXT-DECORATION: none
}
.tabs LI.tab_selected A:visited {
	FONT-WEIGHT: bold; COLOR: #000; TEXT-DECORATION: none
}
.tabs LI.tab_selected A:active {
	FONT-WEIGHT: bold; COLOR: #000; TEXT-DECORATION: none
}
.tabs LI.tab_selected {
	BORDER-TOP-WIDTH: 0px; BACKGROUND-POSITION: 100% -150px; =
BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; POSITION: relative; =
TOP: 1px; BORDER-RIGHT-WIDTH: 0px
}
.tabs LI.tab_selected A {
	BACKGROUND-POSITION: 0px -150px; COLOR: #000; TEXT-DECORATION: none
}
.menuTabSelected {
	FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: #000000; HEIGHT: 22px; =
BACKGROUND-COLOR: #efefef; TEXT-DECORATION: none
}
.menuTabs {
	FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: #413c41; HEIGHT: 22px; =
BACKGROUND-COLOR: #fff; TEXT-DECORATION: none
}
.menuTabPlain {
	FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: #413c41; HEIGHT: 22px; =
BACKGROUND-COLOR: #fff; TEXT-DECORATION: none
}
A.menuTabSelected {
	FONT-WEIGHT: bold; FONT-SIZE: 10pt; BACKGROUND: =
url(/page/img/tabs/tabl.gif) #efefef no-repeat left top; COLOR: #000000; =
HEIGHT: 22px; TEXT-DECORATION: none; BORDER-BOTTOM-STYLE: none
}
A.menuTabSelected:visited {
	FONT-WEIGHT: bold; FONT-SIZE: 10pt; BACKGROUND: =
url(/page/img/tabs/tabl.gif) #efefef no-repeat left top; COLOR: #000000; =
HEIGHT: 22px; TEXT-DECORATION: none; BORDER-BOTTOM-STYLE: none
}
A.menuTabSelected:active {
	FONT-WEIGHT: bold; FONT-SIZE: 10pt; BACKGROUND: =
url(/page/img/tabs/tabl.gif) #efefef no-repeat left top; COLOR: #000000; =
HEIGHT: 22px; TEXT-DECORATION: none; BORDER-BOTTOM-STYLE: none
}
A.menuTabSelected:link {
	FONT-WEIGHT: bold; FONT-SIZE: 10pt; BACKGROUND: =
url(/page/img/tabs/tabl.gif) #efefef no-repeat left top; COLOR: #000000; =
HEIGHT: 22px; TEXT-DECORATION: none; BORDER-BOTTOM-STYLE: none
}
A.menuTabPlain {
	FONT-WEIGHT: bold; FONT-SIZE: 10pt; BACKGROUND: =
url(/page/img/tabs/tabl.gif) #fff no-repeat left top; COLOR: #413c41; =
HEIGHT: 22px; TEXT-DECORATION: none
}
A.menuTabPlain:visited {
	FONT-WEIGHT: bold; FONT-SIZE: 10pt; BACKGROUND: =
url(/page/img/tabs/tabl.gif) #fff no-repeat left top; COLOR: #413c41; =
HEIGHT: 22px; TEXT-DECORATION: none
}
A.menuTabPlain:active {
	FONT-WEIGHT: bold; FONT-SIZE: 10pt; BACKGROUND: =
url(/page/img/tabs/tabl.gif) #fff no-repeat left top; COLOR: #413c41; =
HEIGHT: 22px; TEXT-DECORATION: none
}
A.menuTabPlain:link {
	FONT-WEIGHT: bold; FONT-SIZE: 10pt; BACKGROUND: =
url(/page/img/tabs/tabl.gif) #fff no-repeat left top; COLOR: #413c41; =
HEIGHT: 22px; TEXT-DECORATION: none
}

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.aluka.org/templates/jsp/_aluka/css/sys/dom_popup/popup.css

DIV.popup {
	BORDER-RIGHT: #999966 1px dotted; PADDING-RIGHT: 6px; BORDER-TOP: =
#999966 1px dotted; PADDING-LEFT: 6px; PADDING-BOTTOM: 6px; BORDER-LEFT: =
#999966 1px dotted; PADDING-TOP: 6px; BORDER-BOTTOM: #999966 1px dotted; =
POSITION: absolute; BACKGROUND-COLOR: #fff; max-width: 600px
}
#popup_overlay {
	LEFT: 0px; WIDTH: 100%; POSITION: absolute; TOP: 0px; HEIGHT: 500px; =
BACKGROUND-COLOR: whitesmoke
}
SPAN.popup_link {
	PADDING-BOTTOM: 2px; CURSOR: pointer; BORDER-BOTTOM: #cccccc 1px solid
}
A.popup_link {
	PADDING-BOTTOM: 2px; CURSOR: pointer; BORDER-BOTTOM: #cccccc 1px solid
}
.popup_draghandle {
	CURSOR: move
}

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.aluka.org/templates/jsp/_aluka/css/print.css

 HTML #main {
	HEIGHT: 1%
}
HTML {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 12pt; BACKGROUND: =
#ffffff; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; =
FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
}
BODY {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 12pt; BACKGROUND: =
#ffffff; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; =
FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
}
TABLE {
	FONT-SIZE: 1em
}
#content A {
	COLOR: #333; BORDER-BOTTOM: #999 1px solid; TEXT-DECORATION: none
}
IMG {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-BOTTOM-STYLE: none
}
H1 {
	page-break-inside: avoid
}
H2 {
	page-break-inside: avoid
}
H3 {
	page-break-inside: avoid
}
H4 {
	page-break-inside: avoid
}
H5 {
	page-break-inside: avoid
}
H6 {
	page-break-inside: avoid
}
IMG {
	page-break-inside: avoid
}
BLOCKQUOTE {
	page-break-inside: avoid
}
TABLE {
	page-break-inside: avoid
}
PRE {
	page-break-inside: avoid
}
UL {
=09
}
OL {
=09
}
DL {
=09
}
H1 {
	COLOR: #000! important
}
H2 {
	COLOR: #000! important
}
.print-msg {
	RIGHT: 0px; WIDTH: 50%; FONT-FAMILY: Times New Roman, serif; POSITION: =
absolute; TOP: 0.6em; TEXT-ALIGN: right
}
.hidden {
	DISPLAY: none
}
.noprint {
	DISPLAY: none
}
#container {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#header {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; WIDTH: 100%; PADDING-TOP: 0px
}
#header #logo {
	LEFT: -1em; POSITION: relative
}
#menubar {
	DISPLAY: none
}
#menubar-home {
	DISPLAY: none
}
#langbar {
	DISPLAY: none
}
#body {
	BACKGROUND: #ffffff; MARGIN: 0px 0px 2em; WIDTH: 100%
}
#toolbar {
	DISPLAY: none
}
#main {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#titlebar {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; Z-INDEX: 900; PADDING-BOTTOM: =
1em; MARGIN: 0px; PADDING-TOP: 0px
}
#navpath {
	COLOR: #999999! important
}
#navpath A {
	COLOR: #999999! important
}
#footer {
	CLEAR: both; BORDER-TOP: #333 1px solid; DISPLAY: block; MARGIN: 0px; =
WIDTH: 100%; BOTTOM: -1em; POSITION: fixed
}
#footer-content {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 70%; PADDING-BOTTOM: =
0.6em; COLOR: #333; PADDING-TOP: 0.6em; TEXT-ALIGN: right
}
#footer-content .links {
	DISPLAY: none
}

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.aluka.org/templates/jsp/style.css

.xslDebugTemplate {
	PADDING-LEFT: 2px; FONT-SIZE: 10px; COLOR: #999999; FONT-FAMILY: =
sans-serif
}
.xslDebugNodePath {
	PADDING-LEFT: 2px; FONT-SIZE: 10px; COLOR: #ff0000; FONT-FAMILY: =
sans-serif
}
.xslDebugImport {
	PADDING-LEFT: 2px; FONT-SIZE: 10px; COLOR: #007f00; FONT-FAMILY: =
sans-serif
}
.wbr {
	FONT-SIZE: 2pt; WORD-SPACING: 0px; COLOR: #fff; FONT-FAMILY: "Lucida =
Sans Unicode", "Arial Unicode MS", sans-serif; WHITE-SPACE: normal; =
LETTER-SPACING: 0px; WORD-WRAP: break-word
}
.noWrap {
	WHITE-SPACE: nowrap
}
.tocHeading .subj-group {
	DISPLAY: block; FONT-SIZE: 90%
}
DIV.boxed-text- {
	MARGIN-LEFT: 3em
}
DIV.boxed-text-anchor {
	MARGIN-LEFT: 3em
}
DIV.boxed-text-float {
	MARGIN-LEFT: 3em
}
DIV.boxed-text-margin {
=09
}
.refnumber {
	VERTICAL-ALIGN: top; TEXT-ALIGN: left
}
.references .note P {
	PADDING-RIGHT: 0em; PADDING-LEFT: 0em; PADDING-BOTTOM: 0em; MARGIN: =
0em; PADDING-TOP: 0em
}
.articleEntry {
	MARGIN-BOTTOM: 1em
}
.NLM_table-wrap TD {
	BORDER-RIGHT: black 1px solid; BORDER-BOTTOM: black 1px solid
}
.NLM_table-wrap TH {
	BORDER-RIGHT: black 1px solid; BORDER-BOTTOM: black 1px solid
}
.NLM_table-wrap-foot P {
	MARGIN: 0px
}
.NLM_table-wrap TABLE {
	BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; =
BORDER-LEFT: black 1px solid; WIDTH: 95%; BORDER-BOTTOM: black 1px =
solid; BORDER-COLLAPSE: collapse; border-spacing: 0px
}
.NLM_table-wrap TABLE.frame_none {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-BOTTOM-STYLE: none
}
.NLM_table-wrap TABLE.frame_left {
	BORDER-LEFT: black 1px solid; BORDER-TOP-STYLE: none; =
BORDER-RIGHT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
.NLM_table-wrap TABLE.frame_right {
	BORDER-RIGHT: black 1px solid; BORDER-TOP-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
.NLM_table-wrap TABLE.frame_top {
	BORDER-TOP: black 1px solid; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
.NLM_table-wrap TABLE.frame_bottom {
	BORDER-TOP-STYLE: none; BORDER-BOTTOM: black 1px solid; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none
}
.NLM_table-wrap TABLE.frame_sides {
	BORDER-RIGHT: black 1px solid; BORDER-LEFT: black 1px solid; =
BORDER-TOP-STYLE: none; BORDER-BOTTOM-STYLE: none
}
.NLM_table-wrap TABLE.frame_topbot {
	BORDER-TOP: black 1px solid; BORDER-BOTTOM: black 1px solid; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none
}
TABLE.rowsep0 TD {
	BORDER-BOTTOM-STYLE: none
}
TABLE.rowsep0 TH {
	BORDER-BOTTOM-STYLE: none
}
TABLE.rowsep1 TD {
	BORDER-BOTTOM: black 1px solid
}
TABLE.rowsep1 TH {
	BORDER-BOTTOM: black 1px solid
}
TABLE.rowsep2 TD {
	BORDER-BOTTOM: black 3px double
}
TABLE.rowsep2 TH {
	BORDER-BOTTOM: black 3px double
}
COL.rowsep0 {
	BORDER-BOTTOM-STYLE: none
}
TR.rowsep0 TD {
	BORDER-BOTTOM-STYLE: none
}
TR.rowsep0 TH {
	BORDER-BOTTOM-STYLE: none
}
COL.rowsep1 {
	BORDER-BOTTOM: black 1px solid
}
TR.rowsep1 TD {
	BORDER-BOTTOM: black 1px solid
}
TR.rowsep1 TH {
	BORDER-BOTTOM: black 1px solid
}
COL.rowsep2 {
	BORDER-BOTTOM: black 3px double
}
TR.rowsep2 TD {
	BORDER-BOTTOM: black 3px double
}
TR.rowsep2 TH {
	BORDER-BOTTOM: black 3px double
}
TR TH.rowsep0 {
	BORDER-BOTTOM-STYLE: none
}
TR TD.rowsep0 {
	BORDER-BOTTOM-STYLE: none
}
TR TH.rowsep1 {
	BORDER-BOTTOM: black 1px solid
}
TR TD.rowsep1 {
	BORDER-BOTTOM: black 1px solid
}
TR TH.rowsep2 {
	BORDER-BOTTOM: black 3px double
}
TR TD.rowsep2 {
	BORDER-BOTTOM: black 3px double
}
TABLE.colsep0 TD {
	BORDER-RIGHT-STYLE: none
}
TABLE.colsep0 TH {
	BORDER-RIGHT-STYLE: none
}
TABLE.colsep1 TD {
	BORDER-RIGHT: black 1px solid
}
TABLE.colsep1 TH {
	BORDER-RIGHT: black 1px solid
}
TABLE.colsep2 TD {
	BORDER-RIGHT: black 3px double
}
TABLE.colsep2 TH {
	BORDER-RIGHT: black 3px double
}
COL.colsep0 {
	BORDER-RIGHT-STYLE: none
}
TR.colsep0 TD {
	BORDER-RIGHT-STYLE: none
}
TR.colsep0 TH {
	BORDER-RIGHT-STYLE: none
}
COL.colsep1 {
	BORDER-RIGHT: black 1px solid
}
TR.colsep1 TD {
	BORDER-RIGHT: black 1px solid
}
TR.colsep1 TH {
	BORDER-RIGHT: black 1px solid
}
COL.colsep2 {
	BORDER-RIGHT: black 3px double
}
TR.colsep2 TD {
	BORDER-RIGHT: black 3px double
}
TR.colsep2 TH {
	BORDER-RIGHT: black 3px double
}
TR TH.colsep0 {
	BORDER-RIGHT-STYLE: none
}
TR TD.colsep0 {
	BORDER-RIGHT-STYLE: none
}
TR TH.colsep1 {
	BORDER-RIGHT: black 1px solid
}
TR TD.colsep1 {
	BORDER-RIGHT: black 1px solid
}
TR TH.colsep2 {
	BORDER-RIGHT: black 3px double
}
TR TD.colsep2 {
	BORDER-RIGHT: black 3px double
}
.NLM_table-wrap TABLE TR.last TD {
	BORDER-BOTTOM-STYLE: none
}
.NLM_table-wrap TABLE TR TD.last {
	BORDER-RIGHT-STYLE: none
}
.NLM_table-wrap TABLE TR TH.last {
	BORDER-RIGHT-STYLE: none
}
.NLM_table-wrap .align_right {
	TEXT-ALIGN: right
}
.NLM_table-wrap .align_left {
	TEXT-ALIGN: left
}
.NLM_def-list {
	MARGIN: 1em 0px
}
.NLM_def-list .NLM_title {
	FONT-WEIGHT: bold; VERTICAL-ALIGN: top
}
.NLM_def-list .NLM_term-head {
	FONT-WEIGHT: bold; VERTICAL-ALIGN: top
}
.NLM_def-list .NLM_def-head {
	FONT-WEIGHT: bold; VERTICAL-ALIGN: top
}
.NLM_def-list .NLM_term {
	FONT-WEIGHT: bold; VERTICAL-ALIGN: top
}
.NLM_def-list .NLM_def {
	VERTICAL-ALIGN: top
}
.NLM_table-wrap TABLE TR TD TABLE.listgroup {
	WIDTH: auto; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none
}
.NLM_table-wrap TABLE TR TD TABLE.listgroup TD {
	WIDTH: auto; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none
}
.title1 {
	FONT-WEIGHT: bold
}
.title2 {
	FONT-WEIGHT: bold
}
.title3 {
	FONT-WEIGHT: bold
}
.title4 {
	FONT-WEIGHT: bold
}
.title5 {
	FONT-WEIGHT: bold
}
.inlinehead1 {
	FONT-WEIGHT: bold
}
.inlinehead2 {
	FONT-WEIGHT: bold
}
.inlinehead3 {
	FONT-WEIGHT: bold
}
.inlinehead4 {
	FONT-WEIGHT: bold
}
.inlinehead5 {
	FONT-WEIGHT: bold
}
.searchNone0 {
=09
}
.searchNone1 {
=09
}
.searchNone2 {
=09
}
.searchNone3 {
=09
}
.searchNone4 {
=09
}
.searchNone5 {
=09
}
.searchNone6 {
=09
}
.searchNone7 {
=09
}
.searchNone8 {
=09
}
.searchNone9 {
=09
}
.searchTerm0 {
	FONT-WEIGHT: bold; COLOR: black; BACKGROUND-COLOR: #ffff66
}
.searchTerm1 {
	FONT-WEIGHT: bold; COLOR: black; BACKGROUND-COLOR: #a0ffff
}
.searchTerm2 {
	FONT-WEIGHT: bold; COLOR: black; BACKGROUND-COLOR: #99ff99
}
.searchTerm3 {
	FONT-WEIGHT: bold; COLOR: black; BACKGROUND-COLOR: #ff9999
}
.searchTerm4 {
	FONT-WEIGHT: bold; COLOR: black; BACKGROUND-COLOR: #ff66ff
}
.searchTerm5 {
	FONT-WEIGHT: bold; COLOR: white; BACKGROUND-COLOR: #880000
}
.searchTerm6 {
	FONT-WEIGHT: bold; COLOR: white; BACKGROUND-COLOR: #00aa00
}
.searchTerm7 {
	FONT-WEIGHT: bold; COLOR: white; BACKGROUND-COLOR: #886800
}
.searchTerm8 {
	FONT-WEIGHT: bold; COLOR: white; BACKGROUND-COLOR: #004699
}
.searchTerm9 {
	FONT-WEIGHT: bold; COLOR: white; BACKGROUND-COLOR: #990099
}
.citation_source-book {
	FONT-STYLE: italic
}
.citation_source-journal {
	FONT-STYLE: italic
}
.dash {
	FONT-SIZE: 13px
}
.quote {
	DISPLAY: block; MARGIN: 1em 0em 1em 5em
}
.index {
=09
}
.entityA {
=09
}
.entityB {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: =
0px; VERTICAL-ALIGN: baseline; BORDER-RIGHT-WIDTH: 0px
}
.entityC {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: =
0px; VERTICAL-ALIGN: bottom; BORDER-RIGHT-WIDTH: 0px
}
.entityD {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: =
0px; VERTICAL-ALIGN: text-bottom; BORDER-RIGHT-WIDTH: 0px
}
.toc_subarticle_style {
	FONT-SIZE: 11px; FONT-FAMILY: Arial, Helvetica, sans-serif
}
.toc_subarticle_authors_style {
	FONT-SIZE: 10px; FONT-FAMILY: Arial, Helvetica, sans-serif
}
.toc_subarticle_title_style {
	FONT-WEIGHT: bold; FONT-SIZE: 11px; FONT-FAMILY: Arial, Helvetica, =
sans-serif
}
.fromGoogle {
	BORDER-RIGHT: red 0pt solid; PADDING-RIGHT: 0pt; BORDER-TOP: red 2px =
solid; PADDING-LEFT: 0pt; FONT-SIZE: 12px; PADDING-BOTTOM: 2px; MARGIN: =
12px 0pt; BORDER-LEFT: red 0pt solid; LINE-HEIGHT: 20px; PADDING-TOP: =
2px; BORDER-BOTTOM: red 2px solid
}
.lilabel {
=09
}
.smallcaps {
	FONT-VARIANT: small-caps
}
.strike {
	TEXT-DECORATION: line-through
}
.NLM_disp-formula {
	DISPLAY: block
}
A.roDisabled {
	COLOR: graytext
}
.articleEntry .firstCell {
	VERTICAL-ALIGN: top; WIDTH: 18px; PADDING-TOP: 0px; TEXT-ALIGN: right
}
DIV.appendix SPAN.title5 {
	DISPLAY: block
}
.sectionHeading {
	BACKGROUND-COLOR: #e1e1e1
}
.sectionHeading TH {
	FONT-SIZE: larger
}
.artAuthors .NLM_bio {
	FONT-WEIGHT: normal
}
.multiIssueToc .issueTitle {
	FONT-WEIGHT: bold
}
.monospace {
	FONT-FAMILY: monospace
}
TABLE.formula {
	CLEAR: both; MARGIN: 1em 0px
}
.NLM_list-list_type-simple {
	DISPLAY: block; LIST-STYLE-TYPE: none
}
.IN_LIST-freeText {
	PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px; LIST-STYLE-TYPE: none
}
.IN_LIST-label {
	PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px; LIST-STYLE-TYPE: none
}
.IN_LIST-title {
	PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px; LIST-STYLE-TYPE: none
}

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.aluka.org/templates/jsp/_aluka/css/views.css

PRE.pretext {
	FONT-FAMILY: Verdana, serif; WHITE-SPACE: pre; WORD-WRAP: break-word
}
.thumb-view {
	MARGIN-LEFT: 1em; WIDTH: 80%
}
.thumb-view H2 {
	FONT-WEIGHT: normal
}
.langbar {
	PADDING-RIGHT: 0px; MARGIN-TOP: 0px; PADDING-LEFT: 0px; FONT-SIZE: 85%; =
PADDING-BOTTOM: 0.2em; PADDING-TOP: 0.2em
}
.langbar A {
	TEXT-DECORATION: none
}
.thumb-view .cont {
	BORDER-RIGHT: 0px; BORDER-TOP: #996 4px solid; BORDER-LEFT: 0px; =
BORDER-BOTTOM: 0px; BORDER-COLLAPSE: collapse
}
.thumb-view .cont TD {
	VERTICAL-ALIGN: top
}
.thumb-view .thumb-cont {
	MARGIN: 10px 10px 0px 0px
}
.thumb-view .thumb-cont A {
	ext-decoration: none
}
.thumb-view .thumb {
	BORDER-RIGHT: #666 1px solid; BORDER-TOP: #666 1px solid; FILTER: =
progid:DXImageTransform.Microsoft.Shadow(color=3D'#666666',Direction=3D13=
5,Strength=3D4); BORDER-LEFT: #666 1px solid; BORDER-BOTTOM: #666 1px =
solid
}
.thumb-view .caption {
	PADDING-RIGHT: 2px; PADDING-LEFT: 2px; FONT-SIZE: 90%; PADDING-BOTTOM: =
2px; PADDING-TOP: 2px; TEXT-ALIGN: right; TEXT-DECORATION: underline
}
.large-view {
	WIDTH: 600px
}
.large-view TABLE {
	BORDER-RIGHT: 0px; BORDER-TOP: #996 4px solid; BORDER-LEFT: 0px; =
BORDER-BOTTOM: #996 4px solid; BORDER-COLLAPSE: collapse
}
.large-view TD {
	VERTICAL-ALIGN: top
}
.large-view .cont {
=09
}
.large-view .pager {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0.2em; =
PADDING-TOP: 0.2em
}
.large-view .large {
=09
}
.large-view .header {
	PADDING-BOTTOM: 0.6em
}
.large-view .footer {
=09
}
.metadata {
	BORDER-RIGHT: 0px; BORDER-TOP: 0px; MARGIN-TOP: 6px; BORDER-LEFT: 0px; =
BORDER-BOTTOM: #ccc 2px solid; BORDER-COLLAPSE: collapse
}
.metadata TD {
	PADDING-RIGHT: 0.4em; PADDING-LEFT: 0.4em; PADDING-BOTTOM: 0.2em; =
PADDING-TOP: 0.2em; BORDER-BOTTOM: #ddd 1px solid
}
.metadata .name {
	FONT-SIZE: 90%; VERTICAL-ALIGN: top; WIDTH: 25%; COLOR: #666
}
.metadata .value {
	VERTICAL-ALIGN: top; WIDTH: 75%
}
.metadata .header {
=09
}
.metadata .header .value {
	FONT-WEIGHT: bold
}
.metadata .header .name {
=09
}
.metadata .required {
	BACKGROUND: #efefef
}
.metadata .optional {
	BORDER-TOP: #996 4px solid
}
.metadata .optional .name {
	FONT-SIZE: 90%; COLOR: #808080
}
.metadata .value UL {
	MARGIN-TOP: 0.4em; PADDING-LEFT: 7px; MARGIN-LEFT: 0px; =
LIST-STYLE-TYPE: none
}
.metadata .value LI {
	PADDING-LEFT: 18px; BACKGROUND: =
url(/templates/jsp/_aluka/img/li_dash.png) no-repeat 0% 0.6em; =
MARGIN-BOTTOM: 0.6em
}
.metadata .value DL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0.4em; =
MARGIN-LEFT: -1em; PADDING-TOP: 0.4em
}
.metadata .value DL DL {
	MARGIN-LEFT: 0px
}
.metadata .value DD {
	MARGIN-LEFT: 2em; TEXT-INDENT: -1em
}
.metadata TBODY.mytags {
=09
}
.metadata TBODY.mytags .name {
	FONT-WEIGHT: bold; PADDING-BOTTOM: 0.6em; PADDING-TOP: 0.4em
}
.metadata TBODY.mytags .value {
	PADDING-BOTTOM: 0.6em; PADDING-TOP: 0.4em
}
.metadata .entityD {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
-1px; PADDING-TOP: 0px; POSITION: relative; TOP: 0.05em
}
.metadata-bkmarks {
	PADDING-RIGHT: 1em; PADDING-LEFT: 1em; BACKGROUND: #f5f5f5; =
PADDING-BOTTOM: 0.4em; MARGIN: 0px; PADDING-TOP: 0.4em
}
.metadata-bkmarks .bkmk-lbl {
	PADDING-RIGHT: 0.4em
}
.metadata-bkmarks .sendemail-lbl {
	BORDER-RIGHT: #999 1px solid; PADDING-RIGHT: 0.4em; MARGIN-RIGHT: 0.4em
}
.metadata-bkmarks IMG {
	PADDING-RIGHT: 0.6em; VERTICAL-ALIGN: middle
}
.metadata-seealso {
	PADDING-RIGHT: 1em; MARGIN-TOP: 1em; PADDING-LEFT: 1em; BACKGROUND: =
url(/templates/jsp/_aluka/img/cornpnl_bg.gif) no-repeat left top; =
PADDING-BOTTOM: 0.8em; PADDING-TOP: 0.8em
}
.metadata-seealso H2 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0.2em; MARGIN: =
0px; PADDING-TOP: 0px
}
.metadata-seealso H3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0.2em; MARGIN: =
0px; COLOR: #000! important; PADDING-TOP: 0px
}
.metadata-seealso .hidden {
	DISPLAY: none
}
.metadata-seealso UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0.8em 0px; PADDING-TOP: 0px; LIST-STYLE-TYPE: none
}
.metadata-seealso UL LI {
	MARGIN: 0.2em 0px; COLOR: #666; FONT-STYLE: italic
}
.metadata-seealso UL LI A {
	FONT-STYLE: normal
}
.metadata-seealso #see-more-similar-lbl {
=09
}
.viewer {
	FONT-SIZE: 80%
}
.viewer #title-bar {
	PADDING-RIGHT: 0.6em; PADDING-LEFT: 0.6em; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 0.6em; PADDING-TOP: 0.6em; TEXT-ALIGN: center
}
.viewer .cont {
	BORDER-TOP: #996 4px solid; BORDER-BOTTOM: #996 4px solid; TEXT-ALIGN: =
center
}
.viewer .options {
	PADDING-RIGHT: 0px; MARGIN-TOP: 0px; PADDING-LEFT: 0px; FONT-SIZE: 85%; =
Z-INDEX: 900; BACKGROUND: #999966; LEFT: 0px; PADDING-BOTTOM: 0.2em; =
WIDTH: 100%; COLOR: #663; PADDING-TOP: 0.2em; BORDER-BOTTOM: #999999 1px =
solid; POSITION: relative; TOP: 0px
}
.viewer .options A {
	PADDING-RIGHT: 0.4em; PADDING-LEFT: 0.4em; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 0px; COLOR: #333300; PADDING-TOP: 0px; TEXT-DECORATION: =
none
}
.viewer .options A:hover {
	COLOR: #ffffff; TEXT-DECORATION: underline
}
.viewer .note {
	COLOR: #eee; FONT-STYLE: italic
}
.viewer .reg-form {
	BORDER-RIGHT: #999 2px solid; PADDING-RIGHT: 0.6em; BORDER-TOP: #999 =
2px solid; PADDING-LEFT: 0.6em; Z-INDEX: 999; BACKGROUND: #f5f5f5; =
PADDING-BOTTOM: 0.6em; BORDER-LEFT: #999 2px solid; WIDTH: 280px; =
PADDING-TOP: 0.6em; BORDER-BOTTOM: #999 2px solid; POSITION: absolute
}
.viewer .mes-form {
	BORDER-RIGHT: #999 2px solid; PADDING-RIGHT: 0.6em; BORDER-TOP: #999 =
2px solid; PADDING-LEFT: 0.6em; Z-INDEX: 999; BACKGROUND: #f5f5f5; =
PADDING-BOTTOM: 0.6em; BORDER-LEFT: #999 2px solid; WIDTH: 280px; =
PADDING-TOP: 0.6em; BORDER-BOTTOM: #999 2px solid; POSITION: absolute
}
DL.deflist {
	FONT-SIZE: 95%
}
DL.deflist DT {
	FONT-WEIGHT: bold; FLOAT: left; LINE-HEIGHT: 1.4em; MARGIN-RIGHT: 0.6em
}
DL.deflist DD {
	MARGIN-LEFT: 8em; LINE-HEIGHT: 1.4em
}
DL.deflist2 {
=09
}
DL.deflist2 DT {
	FONT-WEIGHT: bold; COLOR: #555; LINE-HEIGHT: 1.4em
}
UL.synlist {
	MARGIN-TOP: 0.4em; MARGIN-BOTTOM: 0.4em
}
UL.synlist LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0.2em; =
MARGIN-LEFT: 1em; TEXT-INDENT: -1em; PADDING-TOP: 0.2em; =
LIST-STYLE-TYPE: none
}
UL.synlist UL {
	PADDING-LEFT: 1.2em
}
.taxaimg-cont {
	FILTER: =
progid:DXImageTransform.Microsoft.Shadow(color=3D'#999999',Direction=3D13=
5,Strength=3D4); FLOAT: right; MARGIN: 0px 0px 1em 1em
}
.taxaimg IMG {
	BORDER-RIGHT: #666 1px solid; BORDER-TOP: #666 1px solid; BORDER-LEFT: =
#666 1px solid; WIDTH: 350px; BORDER-BOTTOM: #666 1px solid
}
.summary {
	BORDER-RIGHT: #ddd 1px solid; PADDING-RIGHT: 8px; BORDER-TOP: #ddd 4px =
solid; PADDING-LEFT: 8px; BACKGROUND: #f5f5f5; PADDING-BOTTOM: 8px; =
BORDER-LEFT: #ddd 1px solid; MARGIN-RIGHT: 365px; PADDING-TOP: 8px; =
BORDER-BOTTOM: #ddd 1px solid; HEIGHT: 1%
}
.summary HR {
	BORDER-RIGHT: transparent 1px solid; BORDER-TOP: #ccc 1px solid; =
BORDER-LEFT: transparent 1px solid; COLOR: #ccc; BORDER-BOTTOM: #fff 1px =
solid; HEIGHT: 2px; BACKGROUND-COLOR: #ccc
}
.summary IMG {
	FLOAT: left; MARGIN: 4px 4px 0px 0px; WIDTH: 160px
}
H2 {
	CLEAR: left
}
DL.taxanav {
	MARGIN: 0px
}
DL.taxanav DT {
	FONT-WEIGHT: normal; LINE-HEIGHT: 1.4em
}
DL.taxanav DT SPAN.type {
	FONT-WEIGHT: bold
}
DL.taxanav DT A {
	FONT-WEIGHT: normal
}
DL.taxanav DD {
	MARGIN-LEFT: 2em
}
DL.chs-summary {
	PADDING-RIGHT: 1em; PADDING-LEFT: 1em; FLOAT: left; PADDING-BOTTOM: =
0.4em; MARGIN: 0px; PADDING-TOP: 0.4em
}
DL.chs-summary A {
	FONT-WEIGHT: normal; TEXT-DECORATION: none
}
.synonymlist {
	MARGIN-BOTTOM: 2em
}
.synonym {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 1.2em; MARGIN: =
0px 0px 1em; PADDING-TOP: 0px; BORDER-BOTTOM: #997 1px solid
}
.synonym .accepted-name {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 1.2em; =
PADDING-BOTTOM: 0.4em; MARGIN: 0px; PADDING-TOP: 0.4em
}
.synonym H3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.acceptedname {
	FONT-SIZE: 140%; COLOR: #000
}
SPAN.syn-group {
	DISPLAY: block; MARGIN-BOTTOM: 1em; PADDING-BOTTOM: 1em; BORDER-BOTTOM: =
#ccc 1px solid
}
SPAN.inrspfc-names H3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
SPAN.inrspfc-names .acceptedname {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 1.2em; =
PADDING-BOTTOM: 0.4em; MARGIN: 0px; PADDING-TOP: 0.4em
}
SPAN.inrspfc-names DL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0.6em 0px; PADDING-TOP: 0px
}
.ctrl-panel {
	BORDER-TOP: #ccc 1px solid; MARGIN-TOP: 2em
}
.ctrl-panel IMG {
	MARGIN-RIGHT: 8px
}
.ctrl-panel A {
	FONT-WEIGHT: bold; FONT-SIZE: 125%; LINE-HEIGHT: 1.4; PADDING-TOP: 8px; =
BORDER-BOTTOM: 1px solid; TEXT-DECORATION: none
}
.ctrl-panel SPAN {
=09
}
.ctrl-panel DL DD {
	MARGIN: 0px 0px 0.6em
}
.sele-METADATA #ACT-METADATA {
	FONT-WEIGHT: bold; COLOR: #000000; TEXT-DECORATION: none
}
.sele-DOWNLOAD #ACT-DOWNLOAD {
	FONT-WEIGHT: bold; COLOR: #000000; TEXT-DECORATION: none
}
.sele-LARGEVIEW #ACT-LARGEVIEW {
	FONT-WEIGHT: bold; COLOR: #000000; TEXT-DECORATION: none
}
.sele-PDF #ACT-PDF {
	FONT-WEIGHT: bold; COLOR: #000000; TEXT-DECORATION: none
}
.sele-TEXT #ACT-TEXT {
	FONT-WEIGHT: bold; COLOR: #000000; TEXT-DECORATION: none
}
.sele-HTML #ACT-HTML {
	FONT-WEIGHT: bold; COLOR: #000000; TEXT-DECORATION: none
}
.sele-VIEWER #ACT-VIEWER {
	FONT-WEIGHT: bold; COLOR: #000000; TEXT-DECORATION: none
}
.sele-TEXTALL #ACT-TEXTALL {
	FONT-WEIGHT: bold; COLOR: #000000; TEXT-DECORATION: none
}
.sele-HTMLALL #ACT-HTMLALL {
	FONT-WEIGHT: bold; COLOR: #000000; TEXT-DECORATION: none
}

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.aluka.org/templates/jsp/script.js

/* function that will be called from document.onload event=0A=
 * main event handling, for all pages */=0A=
function preload() {=0A=
	load();=0A=
}=0A=
function preunload() {=0A=
	unload();=0A=
}=0A=
=0A=
/* function that will be called from document.onload event=0A=
 * override this function to do individual onload event */=0A=
function load()=0A=
{=0A=
}=0A=
function unload()=0A=
{=0A=
}=0A=
=0A=
/**=0A=
 * Change the forecolor of the element with id eid=0A=
 * to the color specified by color=0A=
 */=0A=
function changeForegroundColor(eid, color) {=0A=
    if(document.getElementById && (elem=3Ddocument.getElementById(eid)))=0A=
        elem.style.color=3Dcolor;=0A=
}=0A=
=0A=
/**=0A=
 * Shorthand for id'ing elements=0A=
 */=0A=
if (typeof $ =3D=3D "undefined") $ =3D function(id) { return =
document.getElementById(id); }   // do not override if already defined =
by prototype=0A=
=0A=
/**	ccc rights link */=0A=
function RightslinkPopUp(aPublisher, aPublication, aTitle, aDate, =
aAuthor, aContentId, aCopyright, aVolume, aIssue, aStartPage, aEndPage, =
aIssn, aOrderBeanReset, aColor)=0A=
{=0A=
	var location =3D=0A=
		"?publisherName=3D" + aPublisher=0A=
		+ "&publication=3D" + aPublication=0A=
		+ "&title=3D" + aTitle=0A=
		+ "&publicationDate=3D" + aDate=0A=
		+ "&author=3D" + aAuthor=0A=
		+ "&contentID=3D" + aContentId=0A=
		+ "&copyright=3D" + aCopyright=0A=
		+ "&startPage=3D" + aStartPage=0A=
		+ "&endPage=3D" + aEndPage;=0A=
	if (aVolume !=3D null) {=0A=
		location +=3D "&volumeNum=3D" + aVolume;=0A=
	}=0A=
	if (aIssue !=3D null) {=0A=
		location +=3D "&issueNum=3D" + aIssue;=0A=
	}=0A=
	if (aIssn !=3D null) {=0A=
		location +=3D "&issn=3D" + aIssn;=0A=
	}=0A=
	if (aOrderBeanReset !=3D null) {=0A=
		location +=3D "&orderBeanReset=3D" + aOrderBeanReset;=0A=
	}=0A=
    if (aColor !=3D null){=0A=
        location +=3D "&color=3D" + aColor;=0A=
    }=0A=
=0A=
	var link =3D "/servlet/linkout?type=3Drightslink&url=3D" + =
escape(location);=0A=
	var winprops =3D =
"location=3Dno,toolbar=3Dno,directories=3Dno,status=3Dno,menubar=3Dno,scr=
ollbars=3Dyes,resizable=3Dyes,width=3D650,height=3D550";=0A=
	PopUp =3D window.open(link, 'Rightslink', winprops);=0A=
}=0A=
=0A=
=0A=
/* Function to load images.=0A=
 *	note: make this empty method so that=0A=
 * 1) mininize code changes; 2) for future integration; 3) easier to =
take the feature back=0A=
 */=0A=
function MM_preloadImages() {=0A=
}=0A=
=0A=
function MM_swapImgRestore() {=0A=
}=0A=
=0A=
function MM_findObj(n, d) {=0A=
}=0A=
=0A=
function MM_swapImage() {=0A=
}=0A=
=0A=
function menuMouseOver(type, actualType) {=0A=
    =
document.getElementById('MenuItem_'+type).className=3D'MenuItemOver_'+(ty=
pe =3D=3D actualType);=0A=
}=0A=
function menuMouseOut(type, actualType) {=0A=
    =
document.getElementById('MenuItem_'+type).className=3D'MenuItem_'+(type =
=3D=3D actualType);=0A=
}=0A=
function menuClick(type) {=0A=
    document.getElementById('MenuLink_'+type).click();=0A=
}=0A=
=0A=
// browser detection=0A=
function browserCheck() {=0A=
    this.ns4 =3D (document.layers)? true:false;=0A=
    this.ie =3D (document.all&&(!window.opera))? true:false;=0A=
    this.dom =3D (document.getElementById)? true:false;=0A=
    this.ns6 =3D (window.sidebar)? true:false;=0A=
    this.moz =3D =
(window.sidebar||navigator.userAgent.indexOf('Gecko')!=3D-1)? true:false;=0A=
    this.opera =3D (window.opera)? true:false;=0A=
    this.mac =3D (navigator.userAgent.indexOf('Mac')!=3D-1)? true:false;=0A=
}=0A=
browser =3D new browserCheck();=0A=
var Obj;=0A=
=0A=
// multibrowser get object by id, in NN4 you cannot access all object =
(test it first)=0A=
function getObjectByName(nameOfObject){=0A=
	Obj =3D null;=0A=
	if (browser.ie) Obj =3D document.all[nameOfObject]=0A=
	else if (browser.dom) Obj =3D findDOMObject(nameOfObject)=0A=
	else if (browser.ns4) findLayer(window,nameOfObject);=0A=
	return (!Obj || ( browser.ns4 && Obj =3D=3D window ) ) ? "Object not =
found" : Obj;=0A=
}=0A=
// helper function=0A=
function findDOMObject(nameOfObject) {=0A=
	for (var i =3D 0; i < document.images.length; i++) {=0A=
		if (document.images[i].name=3D=3DnameOfObject) return =
document.images[i]=0A=
	}=0A=
	return document.getElementById(nameOfObject)=0A=
}=0A=
// helper function=0A=
function findLayer(node,nameOfObject) {=0A=
	if ( node.name =3D=3D nameOfObject ) Obj =3D node;=0A=
	for ( var counter =3D 0; counter < node.document.images.length; =
counter++ ) {=0A=
		if (node.document.images[counter].name=3D=3DnameOfObject) Obj =3D =
node.document.images[counter];=0A=
	}=0A=
	for ( var i =3D 0; i < node.document.layers.length; i++ ) {=0A=
		findLayer(node.document.layers[i],nameOfObject);=0A=
	}=0A=
}=0A=
=0A=
function toggleVisibility(id) {=0A=
    obj =3D getObjectByName(id);=0A=
    if (obj) {=0A=
         v =3D obj.style.display;=0A=
         obj.style.display =3D (v =3D=3D 'none') ? 'block' : 'none';=0A=
         i =3D getObjectByName('hiddenImage');=0A=
         if(i) i.src =3D '/page/imageHack.jsp?object=3D' + id + =
'&display=3D' + obj.style.display + '&dummy=3D' + (new Date()).getTime();=0A=
    }=0A=
}=0A=
=0A=
/** CSS class support */=0A=
/** return true if removed, false if not found */=0A=
function removeClass(el, className) {=0A=
	if (!(el && el.className)) return false;=0A=
	var cls =3D el.className.split(" ");=0A=
	var ar =3D new Array();=0A=
	for (var i =3D cls.length; i > 0;) if (cls[--i] !=3D className) =
ar[ar.length] =3D cls[i];=0A=
	el.className =3D ar.join(" ");=0A=
    return cls.length !=3D ar.length;=0A=
}=0A=
/** return true if element has that class */=0A=
function hasClass(el, className) {=0A=
	if (!(el && el.className)) return false;=0A=
	var cls =3D el.className.split(" ");=0A=
	for (var i =3D cls.length; i > 0;) if (cls[--i] =3D=3D className) =
return true;=0A=
	return false;=0A=
}=0A=
/** add class to element, if element already had that class - does =
nothink */=0A=
function addClass(el, className) {=0A=
    if (!el || hasClass(el, className)) return;=0A=
    if (el.className) el.className +=3D " " + className;=0A=
    else el.className =3D className;=0A=
}=0A=
/** Add CSS rule as last rule in last stylesheet - override all previous =
definitions=0A=
    removing is harder - not implemented, use it with caution */=0A=
function addCssRule(selector, rule) {=0A=
    if (document.styleSheets) {=0A=
        var css =3D document.styleSheets[document.styleSheets.length-1]; =
// get last css=0A=
        if (css.addRule) css.addRule(selector, rule);         // IE=0A=
        else if (css.insertRule) css.insertRule(selector + "{" + rule + =
"}", css.cssRules.length);  // W3C=0A=
    }=0A=
}=0A=
/** get CSS style of the document */=0A=
function getCssText() {=0A=
  var imports =3D "";=0A=
  var cssText =3D "\n";=0A=
  var styleSheets =3D document.styleSheets;=0A=
  for (var i =3D 0; i < styleSheets.length; i++) {=0A=
    var css =3D styleSheets.item(i);=0A=
    var mediaText =3D typeof css.media =3D=3D "string" ? css.media : =
css.media.mediaText;=0A=
    if (!mediaText || mediaText.indexOf("all") !=3D -1 || =
mediaText.indexOf("screen") !=3D -1) {=0A=
      if (css.imports) {=0A=
        // IE imports=0A=
        for (var j =3D 0; j < css.imports.length; j++) {=0A=
          var href =3D css.imports[j].href;=0A=
          var lastQuote =3D href.lastIndexOf('"');=0A=
          if (lastQuote !=3D -1) {=0A=
            // href contains media - "url" media=0A=
            mediaText =3D href.substr(lastQuote + 1);=0A=
            if (mediaText.indexOf("all") =3D=3D -1 && =
mediaText.indexOf("screen") =3D=3D -1) continue;=0A=
            href =3D href.substr(1, lastQuote - 1);=0A=
          }=0A=
          imports +=3D '@import url("' + href + '");\n';=0A=
        }=0A=
      }=0A=
      if (css.rules) {=0A=
        // IE rules=0A=
        for (var j =3D 0; j < css.rules.length; j++) {=0A=
          // How to filter media rules ???=0A=
          cssText +=3D css.rules[j].selectorText + " { " + =
css.rules[j].style.cssText + " }\n";=0A=
        }=0A=
      } else if (css.cssRules) {=0A=
        // W3C compliant browser=0A=
        for (var j =3D 0; j < css.cssRules.length; j++) {=0A=
          var rule =3D css.cssRules.item(j);=0A=
          if (rule.type =3D=3D rule.IMPORT_RULE || rule.type =3D=3D =
rule.MEDIA_RULE) {=0A=
            mediaText =3D rule.media.mediaText;=0A=
            if (mediaText && mediaText.indexOf("all") =3D=3D -1 && =
mediaText.indexOf("screen") =3D=3D -1) continue;=0A=
            if (rule.type =3D=3D rule.IMPORT_RULE) imports +=3D =
rule.cssText;=0A=
            else cssText +=3D rule.cssText + "\n";=0A=
          } else {=0A=
            cssText +=3D rule.cssText + "\n";=0A=
          }=0A=
        }=0A=
      }=0A=
    }=0A=
  }=0A=
  return imports + cssText;=0A=
}=0A=
=0A=
function loadCss(url, title, media) {=0A=
    var el =3D document.createElement('link');=0A=
    el.type =3D 'text/css';=0A=
    el.rel =3D 'stylesheet';=0A=
    el.href =3D url;=0A=
    el.media =3D media || 'screen';=0A=
    el.title =3D title || 'dynamicLoadedSheet';=0A=
    document.getElementsByTagName("head")[0].appendChild(el);=0A=
}=0A=
=0A=
function loadJs(url) {    =0A=
    var el =3D document.createElement("script");=0A=
    el.type =3D "text/javascript";=0A=
    el.src =3D url;=0A=
    document.getElementsByTagName("head")[0].appendChild(el);=0A=
}=0A=
=0A=
/** DOM Event support */=0A=
/** addEventListener method may already exist, it's not trivial =
implement it and not break it, use other mame 'addListener' is simple */=0A=
function addListener(el, evname, func) {=0A=
    if (el.attachEvent) el.attachEvent("on" + evname, func);=0A=
	else if(el.addEventListener) el.addEventListener(evname, func, true);=0A=
}=0A=
/** removeEventListener */=0A=
function removeListener(el, evname, func) {=0A=
	if (el.detachEvent) el.detachEvent("on" + evname, func);=0A=
	else if (el.removeEventListener) el.removeEventListener(evname, func, =
true);=0A=
}=0A=
=0A=
/** Server session access */=0A=
/** helper method to access session object */=0A=
function _getSession() {=0A=
    return window.session ? window.session : (window.session =3D new =
Array());=0A=
}=0A=
/** send request to server to preserve some value between different =
requests, value is accessible using getSessionAttribute */=0A=
function setSessionAttribute(name, value) {=0A=
    /* just to test callback */=0A=
    function test(doc) {=0A=
//        alert("Server returned: " + doc.body.innerHTML);=0A=
    }=0A=
    =
sendServerMsg("/action/sessionAccess?action=3DsetJavaScriptAttribute&name=
=3D" + name + "&value=3D" + value, test);=0A=
    _getSession()[name] =3D value;=0A=
}=0A=
/** see setSessionAttribute */=0A=
function getSessionAttribute(name) {=0A=
    return _getSession()[name];=0A=
}=0A=
=0A=
/** send request - url - to the server, response is accessible in =
document passed to callback function=0A=
    DO NOT Send anything before page is loaded!=0A=
 */=0A=
function sendServerMsg(url, callBack) {=0A=
    /* called when frame is loaded */=0A=
    function _receiveServerResponse(ev) {=0A=
        var iFrame =3D window.event ? window.event.srcElement : =
ev.currentTarget;                          // IE : W3C=0A=
        var doc =3D iFrame.contentDocument ? iFrame.contentDocument : =
document.frames(iFrame.id).document; // W3C : IE=0A=
        if (iFrame.callBack) iFrame.callBack(doc);=0A=
        document.body.removeChild(document.getElementById(iFrame.id));=0A=
    }=0A=
=0A=
    var iFrame =3D document.createElement('iframe');=0A=
    addListener(iFrame, "load", _receiveServerResponse);=0A=
    iFrame.setAttribute("id", "msgFrame" + new Date().getTime());   // =
so IE can retrive document=0A=
    iFrame.setAttribute("src", url);=0A=
    iFrame.setAttribute("style", "display:none");=0A=
    if (callBack) iFrame.callBack =3D callBack;=0A=
    document.body.appendChild(iFrame);=0A=
}=0A=
=0A=
/**=0A=
  copy innerHTML of src element to innerHTML of target element=0A=
*/=0A=
function copyInnerHtml(src, target) {=0A=
    var domSupported =3D document.getElementById ? true : false;=0A=
    var se =3D (domSupported && typeof src =3D=3D "string") ? =
document.getElementById(src) : src;=0A=
    var te =3D (domSupported && typeof target =3D=3D "string") ? =
document.getElementById(target) : target;=0A=
    if (se.innerHTML && te.innerHTML) te.innerHTML =3D se.innerHTML;=0A=
}=0A=
/**=0A=
 filter select options, options that do not contain filter text are =
removed=0A=
 in first use, original select options are backed up as attribute =
optionsCopy=0A=
*/=0A=
function filterSelect(selectId, value) {=0A=
  var select;=0A=
  if (document.getElementById && (select =3D =
document.getElementById(selectId)) && select.options) {=0A=
    if (!select.optionsCopy) {=0A=
      select.optionsCopy =3D new Array();=0A=
      select.optionTexts =3D new Array();=0A=
      for (var i=3D0; i<select.options.length; i++) {=0A=
        var opt =3D select.options[i];=0A=
        select.optionsCopy[i] =3D opt;=0A=
        select.optionTexts[i] =3D opt.text.toLowerCase();=0A=
      }=0A=
    }=0A=
    value =3D value.toLowerCase();=0A=
    var allTexts =3D select.optionTexts;=0A=
    var displayOptions =3D select.options;=0A=
    var count =3D displayOptions.length =3D 0;=0A=
    for (var i=3D0; i < allTexts.length; i++) {=0A=
      if (allTexts[i].indexOf(value) !=3D -1) {=0A=
        var option =3D select.optionsCopy[i];=0A=
        displayOptions[count++] =3D option;=0A=
        option.selected =3D option.text =3D=3D value;=0A=
      }=0A=
    }=0A=
    if (count =3D=3D 1) displayOptions[0].selected =3D true;=0A=
  }=0A=
}=0A=
=0A=
function popupElement(el, anchor, windowParams) {=0A=
    if (typeof el =3D=3D "string") { // el is id=0A=
        el =3D (document.getElementById) ? document.getElementById(el) :=0A=
             (document.all) ? document.all[el] : false;=0A=
    }=0A=
    if (el) {=0A=
        var tmp;=0A=
        if (el.popupWindow && !el.popupWindow.closed) {=0A=
            el.popupWindow.focus();=0A=
            tmp =3D el.popupWindow.document;=0A=
        } else {=0A=
            if(!windowParams) windowParams =3D {};=0A=
            el.popupWindow =3D window.open('',=0A=
                windowParams.name?windowParams.name:'',=0A=
                =
windowParams.featureString?windowParams.featureString:'resizable=3Dyes,sc=
rollbars=3Dyes,width=3D600,height=3D500');=0A=
            tmp =3D el.popupWindow.document;=0A=
            =
tmp.writeln('<html><head><title>'+document.title+'</title><style =
type=3D"text/css">');=0A=
            var styleSheets =3D document.styleSheets;=0A=
            for (var i =3D 0; styleSheets && i < styleSheets.length; =
i++) {=0A=
                var css =3D styleSheets.item(i);=0A=
                if (css.cssText) tmp.writeln(css.cssText);=0A=
                else {=0A=
                    var cssRules =3D css.rules ? css.rules : =
css.cssRules;=0A=
                    for (var j =3D 0; cssRules && j < cssRules.length; =
j++) {=0A=
                        tmp.writeln(cssRules.item(j).cssText);=0A=
                    }=0A=
                }=0A=
            }=0A=
            tmp.writeln('</style></head><body id=3D"' + el.id + '">');=0A=
            tmp.writeln(el.innerHTML);=0A=
            tmp.writeln('</body></html>');=0A=
            tmp.close();=0A=
        }=0A=
        if (anchor) {=0A=
            var target =3D (tmp.getElementById) ? =
tmp.getElementById(anchor) :=0A=
                (tmp.all) ? tmp.all[anchor] : false;=0A=
            if (target) {=0A=
                if (target.scrollIntoView) target.scrollIntoView();=0A=
                else if (window.scroll && target.offsetTop) =
el.popupWindow.scroll(0, target.offsetTop);=0A=
            }=0A=
        }=0A=
	}=0A=
}=0A=
=0A=
/**	marks all check box */=0A=
function markAllCheckboxes(aForm, aNamePrefix, aChecked)=0A=
{=0A=
	var elmts =3D aForm.elements;=0A=
	for (var i=3D0; i<elmts.length; i++)=0A=
		if ((elmts[i].type =3D=3D "checkbox") &&=0A=
			(elmts[i].name.indexOf(aNamePrefix) =3D=3D 0))=0A=
			elmts[i].checked =3D aChecked;=0A=
}=0A=
=0A=
function submitMultiArticles(aForm, action, aMarkall, errorMessage) {=0A=
    var hasMarked =3D false;=0A=
    var elmts =3D aForm.elements;=0A=
    for (var i =3D 0; i < elmts.length; i++) {=0A=
		if ((elmts[i].name =3D=3D "doi") &&=0A=
			(elmts[i].type =3D=3D "checkbox") &&=0A=
			(elmts[i].checked)) {=0A=
			hasMarked =3D true;=0A=
		}=0A=
    }=0A=
=0A=
    if (!hasMarked) {=0A=
		if (aMarkall) {=0A=
			markAllCheckboxes(aForm, "doi", true);=0A=
		} else {=0A=
			alert(errorMessage ? errorMessage : "Please check at least one =
article.");=0A=
    	    return;=0A=
		}=0A=
	}=0A=
=0A=
	for (var i =3D 0; i < elmts.length; i++) {=0A=
		if ((elmts[i].name =3D=3D "doi") &&=0A=
			(elmts[i].type !=3D "checkbox")) {=0A=
			elmts[i].name =3D "xdoi";=0A=
		}=0A=
	}=0A=
=0A=
	if (aForm.getAttributeNode) {=0A=
		aForm.getAttributeNode("action").nodeValue =3D action;=0A=
	} else {=0A=
		aForm.action =3D action;=0A=
	}=0A=
    aForm.method =3D "post";=0A=
    aForm.submit();=0A=
}=0A=
=0A=
function setCheckWhenDefine(aCbx, aState)=0A=
{=0A=
	if (aCbx) {=0A=
		aCbx.checked =3D aState;=0A=
	}=0A=
}=0A=
=0A=
// --- side sfx links ---=0A=
//=0A=
function genSideCitation(dbid, linkoutUrl, display) {=0A=
	genSide('citation', dbid, linkoutUrl, display);=0A=
}=0A=
function genSideQuickSearch(dbid, value, display) {=0A=
	genSide('quicksearch', dbid, '', display, '', '', '', value);=0A=
}=0A=
function genSideRelated(dbid, linkoutUrl, display) {=0A=
	genSide('related', dbid, linkoutUrl, display);=0A=
}=0A=
=0A=
// --- popup ---=0A=
//=0A=
/*Function to generate a popup window, with params to pass to dispatcher =
*/=0A=
function popup(citart, id, doi, ptype, area) {=0A=
	popupRef(citart, id, doi, ptype, area, 600, 500);=0A=
}=0A=
=0A=
function popupFull(id, doi, ptype, area, width, height) {=0A=
    var popupURL =3D "/action/showFullPopup?id=3D" + id + "&doi=3D" + =
doi;=0A=
    if (area) popupURL +=3D "&area=3D" + area;=0A=
    if (ptype) ptype =3D ptype.replace(/\W/g, '');=0A=
    var winname =3D ptype ? ptype : 'popupRef';=0A=
	var n =3D window.open(popupURL, winname, =
'resizable=3Dyes,scrollbars=3Dyes,width=3D'+width+',height=3D'+height);=0A=
	n.moveTo(10,10);=0A=
	n.focus();=0A=
}=0A=
function popupRef(citart, id, doi, ptype, area, width, height) {=0A=
    var popupURL =3D "/action/showPopup?citid=3D" + citart + "&id=3D" + =
id + "&doi=3D" + doi;=0A=
    if (area) popupURL +=3D "&area=3D" + area;=0A=
    if (ptype) ptype =3D ptype.replace(/\W/g, '');=0A=
    var winname =3D ptype ? ptype : 'popupRef';=0A=
	var n =3D window.open(popupURL, winname, =
'resizable=3Dyes,scrollbars=3Dyes,width=3D'+width+',height=3D'+height);=0A=
	n.moveTo(10,10);=0A=
	n.focus();=0A=
}=0A=
=0A=
function popupHelp550(aUrl)=0A=
{=0A=
	popupHelpX(aUrl, =
"width=3D550,height=3D540,top=3D10,left=3D50,toolbar=3D0,menubar=3D0,resi=
zable=3Dyes,scrollbars=3Dyes");=0A=
}=0A=
function popupHelp580(aUrl)=0A=
{=0A=
	popupHelpX(aUrl, =
"width=3D580,height=3D540,top=3D10,left=3D50,toolbar=3D0,menubar=3D0,resi=
zable=3Dyes,scrollbars=3Dyes");=0A=
}=0A=
function popupHelp625(aUrl)=0A=
{=0A=
	popupHelpX(aUrl, =
"width=3D625,height=3D540,top=3D10,left=3D50,toolbar=3D0,menubar=3D0,resi=
zable=3Dyes,scrollbars=3Dyes");=0A=
}=0A=
function popupHelpX(aUrl, aWinProps)=0A=
{=0A=
	var winid =3D window.open(aUrl,"popupHelp",aWinProps);=0A=
    if (winid.focus) winid.focus();=0A=
    return false;=0A=
}=0A=
function popupHelp(aUrl)=0A=
{=0A=
	popupHelp580(aUrl);=0A=
}=0A=
=0A=
/* Function to open up a new browser window, without a navigation bar */=0A=
function popupCoverImage(url)=0A=
{=0A=
    var new_window;=0A=
    var windowProperties;=0A=
    windowProperties =3D =
"width=3D750,height=3D700,top=3D30,left=3D230,toolbar=3D0,menubar=3D0,res=
izable=3D1,scrollbars=3Dyes";=0A=
    if(new_window=3D=3Dnull) {=0A=
       new_window =3D window.open(url,null,windowProperties);=0A=
    } else {=0A=
       new_window.document.replace(url);=0A=
    }=0A=
}=0A=
=0A=
// --- quick search ---=0A=
//=0A=
/**=0A=
 *	get all the form elements and check if the "dbname"=0A=
 *	maps to specifid value.=0A=
 */=0A=
function checkDbName(aForm, aValue)=0A=
{=0A=
	var elements =3D aForm.elements;=0A=
	for (var i=3D0; i<elements.length; i++)=0A=
	{=0A=
		var elmt =3D elements[i];=0A=
		if (elmt.name =3D=3D "dbname")=0A=
		{=0A=
			if (elmt.options) {=0A=
				if ((elmt.value =3D=3D aValue) ||=0A=
					(elmt.options[elmt.selectedIndex].value =3D=3D aValue))=0A=
					return true;=0A=
			}=0A=
			else if (elmt.checked && (elmt.value =3D=3D aValue)) {=0A=
				return true;=0A=
			}=0A=
		}=0A=
	}=0A=
	return false;=0A=
}=0A=
=0A=
function onAuthorSearchClick(aForm)=0A=
{=0A=
	if (! aForm) {=0A=
		aForm =3D document.document.forms[0];=0A=
	}=0A=
	var elmts =3D aForm.elements;=0A=
	var authors =3D new Array();=0A=
	var keywords =3D new Array();=0A=
	getAuthorsAndKeywords(aForm, authors, keywords, false);=0A=
	if (checkDbName(aForm, "medline")) {=0A=
		showPubMedSearch(authors, keywords);=0A=
	} else if (checkDbName(aForm, "ads")) {=0A=
		showAdsSearch(authors, keywords);=0A=
	} else if (checkDbName(aForm, "crossref")) {=0A=
		showCrossRefSearch(authors, keywords);=0A=
	} else {=0A=
		var url =3D "/action/doSearch?action=3DsearchAuthor";=0A=
		for (var i=3D0; i<elmts.length; i++) {=0A=
			if (! elmts[i].name)=0A=
				continue;=0A=
			var addElmt =3D false;=0A=
			if (elmts[i].type =3D=3D "checkbox")=0A=
				addElmt =3D elmts[i].checked;=0A=
			else=0A=
				addElmt =3D (elmts[i].value.length > 0);=0A=
			if (addElmt)=0A=
				url +=3D "&" + elmts[i].name + "=3D" + elmts[i].value;=0A=
		}=0A=
		window.location =3D url;=0A=
	}=0A=
}=0A=
=0A=
/**=0A=
 *	@param	aAuthorArray	array stores all authors=0A=
 *	@param	aKeywordArray	array stores all keywords=0A=
 */=0A=
function getAuthorsAndKeywords(aForm, aAuthorArray, aKeywordArray, =
aForceAdd)=0A=
{=0A=
	setCheckWhenDefine(aForm.sauthusercbx, true);=0A=
	setCheckWhenDefine(aForm.keyusercbx, true);=0A=
=0A=
	var elements =3D aForm.elements;=0A=
	var cntAuthor =3D -1;=0A=
	var cntKeyword =3D -1;=0A=
	for (var i=3D0; i<elements.length; i++)=0A=
	{=0A=
		var elmt =3D elements[i];=0A=
		if ((elmt.name =3D=3D "sauthcbx") ||=0A=
			(elmt.name =3D=3D "sauthusercbx"))=0A=
		{=0A=
			if (elmt.name =3D=3D "sauthusercbx") {=0A=
				cntAuthor++;=0A=
			}=0A=
			if (aForceAdd) {=0A=
				elmt.checked =3D true;=0A=
			} else if (! elmt.checked) {=0A=
				continue;=0A=
			}=0A=
=0A=
			var result =3D null;=0A=
			if (elmt.name =3D=3D "sauthusercbx") {=0A=
				var sat =3D aForm.sauthtext;=0A=
				result =3D sat.length ? sat[cntAuthor].value : sat.value;=0A=
				if (result =3D=3D "") {=0A=
					aForm.sauthusercbx.checked =3D false;=0A=
				}=0A=
			} else {=0A=
				result =3D elmt.value;=0A=
			}=0A=
			if (result !=3D "") {=0A=
				aAuthorArray[aAuthorArray.length] =3D result;=0A=
			}=0A=
		}=0A=
		else if ((elmt.name =3D=3D "keycbx") ||=0A=
				 (elmt.name =3D=3D "keyusercbx"))=0A=
		{=0A=
			if (elmt.name =3D=3D "keyusercbx") {=0A=
				cntKeyword++;=0A=
			}=0A=
			if (aForceAdd) {=0A=
				elmt.checked =3D true;=0A=
			} else if (! elmt.checked) {=0A=
				continue;=0A=
			}=0A=
=0A=
			var result =3D null;=0A=
			if (elmt.name =3D=3D "keyusercbx") {=0A=
				var kwt =3D aForm.keytext;=0A=
				result =3D kwt.length ? kwt[cntKeyword].value : kwt.value;=0A=
				if (result =3D=3D "") {=0A=
					aForm.keyusercbx.checked =3D false;=0A=
				}=0A=
			} else {=0A=
				result =3D elmt.value;=0A=
			}=0A=
			if (result !=3D "") {=0A=
				aKeywordArray[aKeywordArray.length] =3D result;=0A=
			}=0A=
		}=0A=
	}=0A=
	// when there is no selection, add them all=0A=
	if ((! aForceAdd) && (aAuthorArray.length=3D=3D0 && =
aKeywordArray.length=3D=3D0)) {=0A=
		getAuthorsAndKeywords(aForm, aAuthorArray, aKeywordArray, true);=0A=
	}=0A=
}=0A=
=0A=
function encodeLinkOutUrl(aUrl)=0A=
{=0A=
	var result =3D "";=0A=
	for (var i=3D0; i<aUrl.length; i++) {=0A=
		var encoded =3D aUrl.charAt(i);=0A=
		switch (encoded) {=0A=
			case '?':=0A=
			case '&':	encoded =3D escape(encoded);	break;=0A=
			default:	// does nothing=0A=
		}=0A=
		result +=3D encoded;=0A=
	}=0A=
	return result;=0A=
}=0A=
=0A=
function showExternalSearch(aDbId, aUrl)=0A=
{=0A=
	=
popupHelp("/servlet/linkout?type=3Dsearch&dbid=3D"+aDbId+"&url=3D"+encode=
LinkOutUrl(aUrl));=0A=
}=0A=
=0A=
// pubmed url format:=0A=
// http://www.ncbi.nlm.nih.gov/entrez/query.fcgi=0A=
//   ?dopt=3DDocSum&cmd=3DSearch&db=3DPubMed=0A=
//   &term=3DBhatnagar[AU]+OR+Bagchi[AU]=0A=
//=0A=
function showPubMedSearch(aAuthors, aKeywords)=0A=
{=0A=
	var pmurl =3D "http://www4.ncbi.nlm.nih.gov/PubMed/";=0A=
	if ((aAuthors.length>0) || (aKeywords.length>0))=0A=
	{=0A=
		pmurl =3D =
"http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?dopt=3DDocSum&cmd=3DSearch=
&db=3DPubMed&term=3D";=0A=
=0A=
		for (var i=3D0; i<aAuthors.length; i++) {=0A=
			pmurl +=3D aAuthors[i].replace(",","+");=0A=
			pmurl +=3D "[AU]";=0A=
			if (i < aAuthors.length-1) {=0A=
				pmurl +=3D "+OR+";=0A=
			}=0A=
		}=0A=
=0A=
		if ((aAuthors.length>0) && (aKeywords.length>0)) {=0A=
			pmurl +=3D "+OR+";=0A=
		}=0A=
=0A=
		for (var i=3D0; i<aKeywords.length; i++) {=0A=
			pmurl +=3D aKeywords[i].replace(":"," ");=0A=
			if (i < aKeywords.length-1) {=0A=
				pmurl +=3D "+OR+";=0A=
			}=0A=
		}=0A=
	}=0A=
	showExternalSearch(8, pmurl);=0A=
}=0A=
=0A=
// ads url format:=0A=
// http://adsabs.harvard.edu/cgi-bin/nph-abs_connect?db_key=3DAST=0A=
//	&sort=3DSCORE&ttl_syn=3DYES&version=3D1=0A=
//	&txt_syn=3DYES&txt_logic=3DAND&text=3Dgalaxy%0D%0Astar%0D%0Aocean=0A=
//	&aut_syn=3DYES&aut_logic=3DAND&&author=3D&author=3Djack%0D%0Asmith=0A=
function showAdsSearch(aAuthors, aKeywords)=0A=
{=0A=
	var adsurl =3D "http://adsabs.harvard.edu/abstract_service.html";=0A=
	if ((aAuthors.length>0) || (aKeywords.length>0))=0A=
	{=0A=
		adsurl =3D=0A=
			"http://adsabs.harvard.edu/cgi-bin/nph-abs_connect?db_key=3DAST" +=0A=
			"&sort=3DSCORE&ttl_syn=3DYES&version=3D1" +=0A=
			"&txt_syn=3DYES&txt_logic=3DAND" +=0A=
			"&aut_syn=3DYES&aut_logic=3DAND";=0A=
=0A=
		if (aAuthors.length > 0) {=0A=
			adsurl +=3D "&author=3D";=0A=
			for (var i=3D0; i<aAuthors.length; i++) {=0A=
				adsurl +=3D aAuthors[i].replace(",","%2C");=0A=
				if (i < aAuthors.length-1) {=0A=
					adsurl +=3D "%0D%0A";=0A=
				}=0A=
			}=0A=
		}=0A=
		if (aKeywords.length > 0) {=0A=
			adsurl +=3D "&text=3D";=0A=
			for (var i=3D0; i<aKeywords.length; i++) {=0A=
				adsurl +=3D aKeywords[i];=0A=
				if (i < aKeywords.length-1) {=0A=
					adsurl +=3D "%0D%0A";=0A=
				}=0A=
			}=0A=
		}=0A=
	}=0A=
	showExternalSearch(64, adsurl);=0A=
}=0A=
=0A=
// xrs url format:=0A=
// http://www.google.com/cobrand?restrict=3Dcrossref&sa=3DSearch+=0A=
//	&q=3D%22stem+cell%22+%22type+1%22&cof=3DAWPID:bbd6d01e9a530922=0A=
function showCrossRefSearch(aAuthors, aKeywords)=0A=
{=0A=
	var xrsurl =3D =
"http://www.google.com/cobrand?restrict=3Dcrossref&sa=3DSearch+&filter=3D=
0&q=3D";=0A=
	if ((aAuthors.length>0) || (aKeywords.length>0))=0A=
	{=0A=
		var array =3D [aAuthors, aKeywords];=0A=
		for (var i=3D0; i<array.length; i++) {=0A=
			for (var j=3D0; j<array[i].length; j++) {=0A=
				xrsurl +=3D "%22"+array[i][j]+"%22+";=0A=
			}=0A=
		}=0A=
	}=0A=
	xrsurl +=3D "&cof=3DAWPID:bbd6d01e9a530922";=0A=
	showExternalSearch(16, xrsurl);=0A=
}=0A=
=0A=
/**	crossref search */=0A=
function submitXrsSearch(frm)=0A=
{=0A=
	if (! frm) {=0A=
		frm =3D document.forms['frmSearch'];=0A=
	}=0A=
	var xrsurl =3D "http://www.google.com/cobrand?" +=0A=
				 "restrict=3D" + frm.restrict.value +=0A=
				 "&q=3D" + frm.searchText.value +=0A=
				 "&filter=3D0" +=0A=
				 "&sa=3DSearch+" +=0A=
				 "&cof=3DAWPID:bbd6d01e9a530922";=0A=
=0A=
	var url =3D =
"/servlet/linkout?type=3Dsearch&dbid=3D16&url=3D"+encodeLinkOutUrl(xrsurl=
);=0A=
	var winprops =3D =
"width=3D750,height=3D700,top=3D10,left=3D20,toolbar=3D1,menubar=3D1,resi=
zable=3Dyes,scrollbars=3Dyes,status=3Dyes";=0A=
	var win =3D window.open(url, null, winprops);=0A=
	if (win !=3D null) {=0A=
		win.focus();=0A=
	}=0A=
	return false;=0A=
}=0A=
=0A=
var search_highlight =3D true;=0A=
function highlight()=0A=
{=0A=
	var from =3D search_highlight ? "searchTerm" : "searchNone";=0A=
	var to   =3D search_highlight ? "searchNone" : "searchTerm";=0A=
	var elmts =3D document.getElementsByTagName("span");=0A=
	for (var i=3D0; i<elmts.length; i++){=0A=
		var node =3D elmts.item(i);=0A=
		for (var j=3D0; j<node.attributes.length; j++) {=0A=
			var item =3D node.attributes.item(j);=0A=
			if ((item.nodeName =3D=3D 'class') &&=0A=
				(item.nodeValue.indexOf(from) =3D=3D 0)) {=0A=
				node.className =3D to + item.nodeValue.substring(from.length);=0A=
			}=0A=
		}=0A=
	}=0A=
	search_highlight =3D ! search_highlight;=0A=
}=0A=
var emailRegx =3D =
/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;=0A=
function isEmail(email) {=0A=
    if (email.value) email =3D email.value;   // is form field=0A=
    return emailRegx.test(email);=0A=
}=0A=
function countSelected(select) {=0A=
    var result =3D 0;=0A=
    if (select.options) for (var i =3D 0; i < select.options.length; =
i++) if (select.options[i].selected) result++;=0A=
    return result;=0A=
}=0A=
function countChecked(form, fieldName) {=0A=
    var result =3D 0;=0A=
    var items =3D form.elements[fieldName];=0A=
    if (items) for (var i =3D 0; i < items.length; i++) if =
(items[i].checked) result++;=0A=
    return result;=0A=
}=0A=
function getCookie(name) {=0A=
    name =3D name + "=3D";=0A=
    var cookies =3D document.cookie.split(';');=0A=
    for (var i =3D 0; i < cookies.length; i++) {=0A=
        var c =3D cookies[i];=0A=
        while (c.charAt(0) =3D=3D ' ') c =3D c.substring(1);// LTrim=0A=
        if (c.indexOf(name) =3D=3D 0) return c.substring(name.length);=0A=
    }=0A=
    return null;=0A=
}=0A=
function syncSession(sid) {=0A=
    if (sid) {=0A=
        var host =3D location.host;=0A=
        host =3D host.indexOf("staging.") =3D=3D 0 ? host.substring(8) : =
("staging." + host);=0A=
        window._sidImg =3D new Image;=0A=
        window._sidImg.src =3D "http://" + host + "/session.jsp" + =
"?JSESSIONID=3D" + sid;=0A=
    }=0A=
}=0A=
=0A=
function confirmAction(url, msg) {=0A=
    if (confirm(msg)) document.location =3D url;=0A=
}=0A=
=0A=
function msword2html(str)=0A=
{=0A=
    if (str =3D=3D null || str.replace(/\s/g, "") =3D=3D "") {=0A=
        return str;=0A=
    }=0A=
    var array =3D [=0A=
        8211,   "&ndash;",=0A=
        8212,   "&mdash;",=0A=
        8216,   "&lsquo;",=0A=
        8217,   "&rsquo;",=0A=
        8218,   "&sbquo;",=0A=
        8219,   "&#x201b;",=0A=
        8220,   "&ldquo;",=0A=
        8221,   "&rdquo;",=0A=
        8222,   "&bdquo;",=0A=
        8223,   "&#x201f;",=0A=
    ];=0A=
    for (var i=3D0; i<array.length; i+=3D2) {=0A=
        str =3D str.replace(new =
RegExp(String.fromCharCode(array[i]),"g"),array[i+1]);=0A=
    }=0A=
    return str;=0A=
}=0A=
// requires /swfobject.js=0A=
function addFlashMovie(id, flv) {=0A=
    var so =3D new SWFObject('/flvplayer.swf',id,'352','288','7');=0A=
	so.addParam('allowfullscreen','false');=0A=
	so.addVariable('file',flv);=0A=
	so.addVariable('type','flv');=0A=
    if (navigator.appName.indexOf("Microsoft") !=3D -1) {=0A=
        // this is needed for IE, but i breaks Gecko=0A=
        so.addVariable('width','352');=0A=
        so.addVariable('height','288');=0A=
    }=0A=
    so.write(id);=0A=
}=0A=

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.aluka.org/templates/jsp/_aluka/jsc/sys/prototype.js

var =
Prototype=3D{Version:'1.5.0',BrowserFeatures:{XPath:!!document.evaluate},=
ScriptFragment:'(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)',emptyFunction=
:function(){},K:function(x){return x}};var =
Class=3D{create:function(){return =
function(){this.initialize.apply(this,arguments)}}};var Abstract=3Dnew =
Object();Object.extend=3Dfunction(destination,source){for(var property =
in source){destination[property]=3Dsource[property]}return =
destination};Object.extend(Object,{inspect:function(object){try{if(object=
=3D=3D=3Dundefined)return'undefined';if(object=3D=3D=3Dnull)return'null';=
return object.inspect?object.inspect():object.toString()}catch(e){if(e =
instanceof RangeError)return'...';throw e;}},keys:function(object){var =
keys=3D[];for(var property in object)keys.push(property);return =
keys},values:function(object){var values=3D[];for(var property in =
object)values.push(object[property]);return =
values},clone:function(object){return =
Object.extend({},object)}});Function.prototype.bind=3Dfunction(){var =
__method=3Dthis,args=3D$A(arguments),object=3Dargs.shift();return =
function(){return =
__method.apply(object,args.concat($A(arguments)))}};Function.prototype.bi=
ndAsEventListener=3Dfunction(object){var =
__method=3Dthis,args=3D$A(arguments),object=3Dargs.shift();return =
function(event){return =
__method.apply(object,[(event||window.event)].concat(args).concat($A(argu=
ments)))}};Object.extend(Number.prototype,{toColorPart:function(){var =
digits=3Dthis.toString(16);if(this<16)return'0'+digits;return =
digits},succ:function(){return =
this+1},times:function(iterator){$R(0,this,true).each(iterator);return =
this}});var Try=3D{these:function(){var returnValue;for(var =
i=3D0,length=3Darguments.length;i<length;i++){var =
lambda=3Darguments[i];try{returnValue=3Dlambda();break}catch(e){}}return =
returnValue}};var =
PeriodicalExecuter=3DClass.create();PeriodicalExecuter.prototype=3D{initi=
alize:function(callback,frequency){this.callback=3Dcallback;this.frequenc=
y=3Dfrequency;this.currentlyExecuting=3Dfalse;this.registerCallback()},re=
gisterCallback:function(){this.timer=3DsetInterval(this.onTimerEvent.bind=
(this),this.frequency*1000)},stop:function(){if(!this.timer)return;clearI=
nterval(this.timer);this.timer=3Dnull},onTimerEvent:function(){if(!this.c=
urrentlyExecuting){try{this.currentlyExecuting=3Dtrue;this.callback(this)=
}finally{this.currentlyExecuting=3Dfalse}}}};String.interpret=3Dfunction(=
value){return =
value=3D=3Dnull?'':String(value)};Object.extend(String.prototype,{gsub:fu=
nction(pattern,replacement){var =
result=3D'',source=3Dthis,match;replacement=3Darguments.callee.prepareRep=
lacement(replacement);while(source.length>0){if(match=3Dsource.match(patt=
ern)){result+=3Dsource.slice(0,match.index);result+=3DString.interpret(re=
placement(match));source=3Dsource.slice(match.index+match[0].length)}else=
{result+=3Dsource,source=3D''}}return =
result},sub:function(pattern,replacement,count){replacement=3Dthis.gsub.p=
repareReplacement(replacement);count=3Dcount=3D=3D=3Dundefined?1:count;re=
turn this.gsub(pattern,function(match){if(--count<0)return =
match[0];return =
replacement(match)})},scan:function(pattern,iterator){this.gsub(pattern,i=
terator);return =
this},truncate:function(length,truncation){length=3Dlength||30;truncation=
=3Dtruncation=3D=3D=3Dundefined?'...':truncation;return =
this.length>length?this.slice(0,length-truncation.length)+truncation:this=
},strip:function(){return =
this.replace(/^\s+/,'').replace(/\s+$/,'')},stripTags:function(){return =
this.replace(/<\/?[^>]+>/gi,'')},stripScripts:function(){return =
this.replace(new =
RegExp(Prototype.ScriptFragment,'img'),'')},extractScripts:function(){var=
 matchAll=3Dnew RegExp(Prototype.ScriptFragment,'img');var =
matchOne=3Dnew =
RegExp(Prototype.ScriptFragment,'im');return(this.match(matchAll)||[]).ma=
p(function(scriptTag){return(scriptTag.match(matchOne)||['',''])[1]})},ev=
alScripts:function(){return =
this.extractScripts().map(function(script){return =
eval(script)})},escapeHTML:function(){var =
div=3Ddocument.createElement('div');var =
text=3Ddocument.createTextNode(this);div.appendChild(text);return =
div.innerHTML},unescapeHTML:function(){var =
div=3Ddocument.createElement('div');div.innerHTML=3Dthis.stripTags();retu=
rn =
div.childNodes[0]?(div.childNodes.length>1?$A(div.childNodes).inject('',f=
unction(memo,node){return =
memo+node.nodeValue}):div.childNodes[0].nodeValue):''},toQueryParams:func=
tion(separator){var =
match=3Dthis.strip().match(/([^?#]*)(#.*)?$/);if(!match)return{};return =
match[1].split(separator||'&').inject({},function(hash,pair){if((pair=3Dp=
air.split('=3D'))[0]){var name=3DdecodeURIComponent(pair[0]);var =
value=3Dpair[1]?decodeURIComponent(pair[1]):undefined;if(hash[name]!=3D=3D=
undefined){if(hash[name].constructor!=3DArray)hash[name]=3D[hash[name]];i=
f(value)hash[name].push(value)}else hash[name]=3Dvalue}return =
hash})},toArray:function(){return this.split('')},succ:function(){return =
this.slice(0,this.length-1)+String.fromCharCode(this.charCodeAt(this.leng=
th-1)+1)},camelize:function(){var =
parts=3Dthis.split('-'),len=3Dparts.length;if(len=3D=3D1)return =
parts[0];var =
camelized=3Dthis.charAt(0)=3D=3D'-'?parts[0].charAt(0).toUpperCase()+part=
s[0].substring(1):parts[0];for(var =
i=3D1;i<len;i++)camelized+=3Dparts[i].charAt(0).toUpperCase()+parts[i].su=
bstring(1);return camelized},capitalize:function(){return =
this.charAt(0).toUpperCase()+this.substring(1).toLowerCase()},underscore:=
function(){return =
this.gsub(/::/,'/').gsub(/([A-Z]+)([A-Z][a-z])/,'#{1}_#{2}').gsub(/([a-z\=
d])([A-Z])/,'#{1}_#{2}').gsub(/-/,'_').toLowerCase()},dasherize:function(=
){return this.gsub(/_/,'-')},inspect:function(useDoubleQuotes){var =
escapedString=3Dthis.replace(/\\/g,'\\\\');if(useDoubleQuotes)return'"'+e=
scapedString.replace(/"/g,'\\"')+'"';else =
return"'"+escapedString.replace(/'/g,'\\\'')+"'"}});String.prototype.gsub=
.prepareReplacement=3Dfunction(replacement){if(typeof =
replacement=3D=3D'function')return replacement;var template=3Dnew =
Template(replacement);return function(match){return =
template.evaluate(match)}};String.prototype.parseQuery=3DString.prototype=
.toQueryParams;var =
Template=3DClass.create();Template.Pattern=3D/(^|.|\r|\n)(#\{(.*?)\})/;Te=
mplate.prototype=3D{initialize:function(template,pattern){this.template=3D=
template.toString();this.pattern=3Dpattern||Template.Pattern},evaluate:fu=
nction(object){return =
this.template.gsub(this.pattern,function(match){var =
before=3Dmatch[1];if(before=3D=3D'\\')return match[2];return =
before+String.interpret(object[match[3]])})}};var $break=3Dnew =
Object();var $continue=3Dnew Object();var =
Enumerable=3D{each:function(iterator){var =
index=3D0;try{this._each(function(value){try{iterator(value,index++)}catc=
h(e){if(e!=3D$continue)throw e;}})}catch(e){if(e!=3D$break)throw =
e;}return this},eachSlice:function(number,iterator){var =
index=3D-number,slices=3D[],array=3Dthis.toArray();while((index+=3Dnumber=
)<array.length)slices.push(array.slice(index,index+number));return =
slices.map(iterator)},all:function(iterator){var =
result=3Dtrue;this.each(function(value,index){result=3Dresult&&!!(iterato=
r||Prototype.K)(value,index);if(!result)throw $break;});return =
result},any:function(iterator){var =
result=3Dfalse;this.each(function(value,index){if(result=3D!!(iterator||P=
rototype.K)(value,index))throw $break;});return =
result},collect:function(iterator){var =
results=3D[];this.each(function(value,index){results.push((iterator||Prot=
otype.K)(value,index))});return results},detect:function(iterator){var =
result;this.each(function(value,index){if(iterator(value,index)){result=3D=
value;throw $break;}});return result},findAll:function(iterator){var =
results=3D[];this.each(function(value,index){if(iterator(value,index))res=
ults.push(value)});return results},grep:function(pattern,iterator){var =
results=3D[];this.each(function(value,index){var =
stringValue=3Dvalue.toString();if(stringValue.match(pattern))results.push=
((iterator||Prototype.K)(value,index))});return =
results},include:function(object){var =
found=3Dfalse;this.each(function(value){if(value=3D=3Dobject){found=3Dtru=
e;throw $break;}});return =
found},inGroupsOf:function(number,fillWith){fillWith=3DfillWith=3D=3D=3Du=
ndefined?null:fillWith;return =
this.eachSlice(number,function(slice){while(slice.length<number)slice.pus=
h(fillWith);return =
slice})},inject:function(memo,iterator){this.each(function(value,index){m=
emo=3Diterator(memo,value,index)});return =
memo},invoke:function(method){var args=3D$A(arguments).slice(1);return =
this.map(function(value){return =
value[method].apply(value,args)})},max:function(iterator){var =
result;this.each(function(value,index){value=3D(iterator||Prototype.K)(va=
lue,index);if(result=3D=3Dundefined||value>=3Dresult)result=3Dvalue});ret=
urn result},min:function(iterator){var =
result;this.each(function(value,index){value=3D(iterator||Prototype.K)(va=
lue,index);if(result=3D=3Dundefined||value<result)result=3Dvalue});return=
 result},partition:function(iterator){var =
trues=3D[],falses=3D[];this.each(function(value,index){((iterator||Protot=
ype.K)(value,index)?trues:falses).push(value)});return[trues,falses]},plu=
ck:function(property){var =
results=3D[];this.each(function(value,index){results.push(value[property]=
)});return results},reject:function(iterator){var =
results=3D[];this.each(function(value,index){if(!iterator(value,index))re=
sults.push(value)});return results},sortBy:function(iterator){return =
this.map(function(value,index){return{value:value,criteria:iterator(value=
,index)}}).sort(function(left,right){var =
a=3Dleft.criteria,b=3Dright.criteria;return =
a<b?-1:a>b?1:0}).pluck('value')},toArray:function(){return =
this.map()},zip:function(){var =
iterator=3DPrototype.K,args=3D$A(arguments);if(typeof =
args.last()=3D=3D'function')iterator=3Dargs.pop();var =
collections=3D[this].concat(args).map($A);return =
this.map(function(value,index){return =
iterator(collections.pluck(index))})},size:function(){return =
this.toArray().length},inspect:function(){return'#<Enumerable:'+this.toAr=
ray().inspect()+'>'}};Object.extend(Enumerable,{map:Enumerable.collect,fi=
nd:Enumerable.detect,select:Enumerable.findAll,member:Enumerable.include,=
entries:Enumerable.toArray});var =
$A=3DArray.from=3Dfunction(iterable){if(!iterable)return[];if(iterable.to=
Array){return iterable.toArray()}else{var results=3D[];for(var =
i=3D0,length=3Diterable.length;i<length;i++)results.push(iterable[i]);ret=
urn =
results}};Object.extend(Array.prototype,Enumerable);if(!Array.prototype._=
reverse)Array.prototype._reverse=3DArray.prototype.reverse;Object.extend(=
Array.prototype,{_each:function(iterator){for(var =
i=3D0,length=3Dthis.length;i<length;i++)iterator(this[i])},clear:function=
(){this.length=3D0;return this},first:function(){return =
this[0]},last:function(){return =
this[this.length-1]},compact:function(){return =
this.select(function(value){return =
value!=3Dnull})},flatten:function(){return =
this.inject([],function(array,value){return =
array.concat(value&&value.constructor=3D=3DArray?value.flatten():[value])=
})},without:function(){var values=3D$A(arguments);return =
this.select(function(value){return!values.include(value)})},indexOf:funct=
ion(object){for(var =
i=3D0,length=3Dthis.length;i<length;i++)if(this[i]=3D=3Dobject)return =
i;return-1},reverse:function(inline){return(inline!=3D=3Dfalse?this:this.=
toArray())._reverse()},reduce:function(){return =
this.length>1?this:this[0]},uniq:function(){return =
this.inject([],function(array,value){return =
array.include(value)?array:array.concat([value])})},clone:function(){retu=
rn[].concat(this)},size:function(){return =
this.length},inspect:function(){return'['+this.map(Object.inspect).join('=
, ')+']'}});Array.prototype.toArray=3DArray.prototype.clone;function =
$w(string){string=3Dstring.strip();return =
string?string.split(/\s+/):[]}if(window.opera){Array.prototype.concat=3Df=
unction(){var array=3D[];for(var =
i=3D0,length=3Dthis.length;i<length;i++)array.push(this[i]);for(var =
i=3D0,length=3Darguments.length;i<length;i++){if(arguments[i].constructor=
=3D=3DArray){for(var =
j=3D0,arrayLength=3Darguments[i].length;j<arrayLength;j++)array.push(argu=
ments[i][j])}else{array.push(arguments[i])}}return array}}var =
Hash=3Dfunction(obj){Object.extend(this,obj||{})};Object.extend(Hash,{toQ=
ueryString:function(obj){var =
parts=3D[];this.prototype._each.call(obj,function(pair){if(!pair.key)retu=
rn;if(pair.value&&pair.value.constructor=3D=3DArray){var =
values=3Dpair.value.compact();if(values.length<2)pair.value=3Dvalues.redu=
ce();else{key=3DencodeURIComponent(pair.key);values.each(function(value){=
value=3Dvalue!=3Dundefined?encodeURIComponent(value):'';parts.push(key+'=3D=
'+encodeURIComponent(value))});return}}if(pair.value=3D=3Dundefined)pair[=
1]=3D'';parts.push(pair.map(encodeURIComponent).join('=3D'))});return =
parts.join('&')}});Object.extend(Hash.prototype,Enumerable);Object.extend=
(Hash.prototype,{_each:function(iterator){for(var key in this){var =
value=3Dthis[key];if(value&&value=3D=3DHash.prototype[key])continue;var =
pair=3D[key,value];pair.key=3Dkey;pair.value=3Dvalue;iterator(pair)}},key=
s:function(){return this.pluck('key')},values:function(){return =
this.pluck('value')},merge:function(hash){return =
$H(hash).inject(this,function(mergedHash,pair){mergedHash[pair.key]=3Dpai=
r.value;return mergedHash})},remove:function(){var result;for(var =
i=3D0,length=3Darguments.length;i<length;i++){var =
value=3Dthis[arguments[i]];if(value!=3D=3Dundefined){if(result=3D=3D=3Dun=
defined)result=3Dvalue;else{if(result.constructor!=3DArray)result=3D[resu=
lt];result.push(value)}}delete this[arguments[i]]}return =
result},toQueryString:function(){return =
Hash.toQueryString(this)},inspect:function(){return'#<Hash:{'+this.map(fu=
nction(pair){return pair.map(Object.inspect).join(': ')}).join(', =
')+'}>'}});function =
$H(object){if(object&&object.constructor=3D=3DHash)return object;return =
new =
Hash(object)};ObjectRange=3DClass.create();Object.extend(ObjectRange.prot=
otype,Enumerable);Object.extend(ObjectRange.prototype,{initialize:functio=
n(start,end,exclusive){this.start=3Dstart;this.end=3Dend;this.exclusive=3D=
exclusive},_each:function(iterator){var =
value=3Dthis.start;while(this.include(value)){iterator(value);value=3Dval=
ue.succ()}},include:function(value){if(value<this.start)return =
false;if(this.exclusive)return value<this.end;return =
value<=3Dthis.end}});var $R=3Dfunction(start,end,exclusive){return new =
ObjectRange(start,end,exclusive)};var =
Ajax=3D{getTransport:function(){return Try.these(function(){return new =
XMLHttpRequest()},function(){return new =
ActiveXObject('Msxml2.XMLHTTP')},function(){return new =
ActiveXObject('Microsoft.XMLHTTP')})||false},activeRequestCount:0};Ajax.R=
esponders=3D{responders:[],_each:function(iterator){this.responders._each=
(iterator)},register:function(responder){if(!this.include(responder))this=
.responders.push(responder)},unregister:function(responder){this.responde=
rs=3Dthis.responders.without(responder)},dispatch:function(callback,reque=
st,transport,json){this.each(function(responder){if(typeof =
responder[callback]=3D=3D'function'){try{responder[callback].apply(respon=
der,[request,transport,json])}catch(e){}}})}};Object.extend(Ajax.Responde=
rs,Enumerable);Ajax.Responders.register({onCreate:function(){Ajax.activeR=
equestCount++},onComplete:function(){Ajax.activeRequestCount--}});Ajax.Ba=
se=3Dfunction(){};Ajax.Base.prototype=3D{setOptions:function(options){thi=
s.options=3D{method:'post',asynchronous:true,contentType:'application/x-w=
ww-form-urlencoded',encoding:'UTF-8',parameters:''};Object.extend(this.op=
tions,options||{});this.options.method=3Dthis.options.method.toLowerCase(=
);if(typeof =
this.options.parameters=3D=3D'string')this.options.parameters=3Dthis.opti=
ons.parameters.toQueryParams()}};Ajax.Request=3DClass.create();Ajax.Reque=
st.Events=3D['Uninitialized','Loading','Loaded','Interactive','Complete']=
;Ajax.Request.prototype=3DObject.extend(new =
Ajax.Base(),{_complete:false,initialize:function(url,options){this.transp=
ort=3DAjax.getTransport();this.setOptions(options);this.request(url)},req=
uest:function(url){this.url=3Durl;this.method=3Dthis.options.method;var =
params=3Dthis.options.parameters;if(!['get','post'].include(this.method))=
{params['_method']=3Dthis.method;this.method=3D'post'}params=3DHash.toQue=
ryString(params);if(params&&/Konqueror|Safari|KHTML/.test(navigator.userA=
gent))params+=3D'&_=3D';if(this.method=3D=3D'get'&&params)this.url+=3D(th=
is.url.indexOf('?')>-1?'&':'?')+params;try{Ajax.Responders.dispatch('onCr=
eate',this,this.transport);this.transport.open(this.method.toUpperCase(),=
this.url,this.options.asynchronous);if(this.options.asynchronous)setTimeo=
ut(function(){this.respondToReadyState(1)}.bind(this),10);this.transport.=
onreadystatechange=3Dthis.onStateChange.bind(this);this.setRequestHeaders=
();var =
body=3Dthis.method=3D=3D'post'?(this.options.postBody||params):null;this.=
transport.send(body);if(!this.options.asynchronous&&this.transport.overri=
deMimeType)this.onStateChange()}catch(e){this.dispatchException(e)}},onSt=
ateChange:function(){var =
readyState=3Dthis.transport.readyState;if(readyState>1&&!((readyState=3D=3D=
4)&&this._complete))this.respondToReadyState(this.transport.readyState)},=
setRequestHeaders:function(){var =
headers=3D{'X-Requested-With':'XMLHttpRequest','X-Prototype-Version':Prot=
otype.Version,'Accept':'text/javascript, text/html, application/xml, =
text/xml, =
*/*'};if(this.method=3D=3D'post'){headers['Content-type']=3Dthis.options.=
contentType+(this.options.encoding?'; =
charset=3D'+this.options.encoding:'');if(this.transport.overrideMimeType&=
&(navigator.userAgent.match(/Gecko\/(\d{4})/)||[0,2005])[1]<2005)headers[=
'Connection']=3D'close'}if(typeof =
this.options.requestHeaders=3D=3D'object'){var =
extras=3Dthis.options.requestHeaders;if(typeof =
extras.push=3D=3D'function')for(var =
i=3D0,length=3Dextras.length;i<length;i+=3D2)headers[extras[i]]=3Dextras[=
i+1];else =
$H(extras).each(function(pair){headers[pair.key]=3Dpair.value})}for(var =
name in =
headers)this.transport.setRequestHeader(name,headers[name])},success:func=
tion(){return!this.transport.status||(this.transport.status>=3D200&&this.=
transport.status<300)},respondToReadyState:function(readyState){var =
state=3DAjax.Request.Events[readyState];var =
transport=3Dthis.transport,json=3Dthis.evalJSON();if(state=3D=3D'Complete=
'){try{this._complete=3Dtrue;(this.options['on'+this.transport.status]||t=
his.options['on'+(this.success()?'Success':'Failure')]||Prototype.emptyFu=
nction)(transport,json)}catch(e){this.dispatchException(e)}if((this.getHe=
ader('Content-type')||'text/javascript').strip().match(/^(text|applicatio=
n)\/(x-)?(java|ecma)script(;.*)?$/i))this.evalResponse()}try{(this.option=
s['on'+state]||Prototype.emptyFunction)(transport,json);Ajax.Responders.d=
ispatch('on'+state,this,transport,json)}catch(e){this.dispatchException(e=
)}if(state=3D=3D'Complete'){this.transport.onreadystatechange=3DPrototype=
.emptyFunction}},getHeader:function(name){try{return =
this.transport.getResponseHeader(name)}catch(e){return =
null}},evalJSON:function(){try{var =
json=3Dthis.getHeader('X-JSON');return =
json?eval('('+json+')'):null}catch(e){return =
null}},evalResponse:function(){try{return =
eval(this.transport.responseText)}catch(e){this.dispatchException(e)}},di=
spatchException:function(exception){(this.options.onException||Prototype.=
emptyFunction)(this,exception);Ajax.Responders.dispatch('onException',thi=
s,exception)}});Ajax.Updater=3DClass.create();Object.extend(Object.extend=
(Ajax.Updater.prototype,Ajax.Request.prototype),{initialize:function(cont=
ainer,url,options){this.container=3D{success:(container.success||containe=
r),failure:(container.failure||(container.success?null:container))};this.=
transport=3DAjax.getTransport();this.setOptions(options);var =
onComplete=3Dthis.options.onComplete||Prototype.emptyFunction;this.option=
s.onComplete=3D(function(transport,param){this.updateContent();onComplete=
(transport,param)}).bind(this);this.request(url)},updateContent:function(=
){var receiver=3Dthis.container[this.success()?'success':'failure'];var =
response=3Dthis.transport.responseText;if(!this.options.evalScripts)respo=
nse=3Dresponse.stripScripts();if(receiver=3D$(receiver)){if(this.options.=
insertion)new this.options.insertion(receiver,response);else =
receiver.update(response)}if(this.success()){if(this.onComplete)setTimeou=
t(this.onComplete.bind(this),10)}}});Ajax.PeriodicalUpdater=3DClass.creat=
e();Ajax.PeriodicalUpdater.prototype=3DObject.extend(new =
Ajax.Base(),{initialize:function(container,url,options){this.setOptions(o=
ptions);this.onComplete=3Dthis.options.onComplete;this.frequency=3D(this.=
options.frequency||2);this.decay=3D(this.options.decay||1);this.updater=3D=
{};this.container=3Dcontainer;this.url=3Durl;this.start()},start:function=
(){this.options.onComplete=3Dthis.updateComplete.bind(this);this.onTimerE=
vent()},stop:function(){this.updater.options.onComplete=3Dundefined;clear=
Timeout(this.timer);(this.onComplete||Prototype.emptyFunction).apply(this=
,arguments)},updateComplete:function(request){if(this.options.decay){this=
.decay=3D(request.responseText=3D=3Dthis.lastText?this.decay*this.options=
.decay:1);this.lastText=3Drequest.responseText}this.timer=3DsetTimeout(th=
is.onTimerEvent.bind(this),this.decay*this.frequency*1000)},onTimerEvent:=
function(){this.updater=3Dnew =
Ajax.Updater(this.container,this.url,this.options)}});function =
$(element){if(arguments.length>1){for(var =
i=3D0,elements=3D[],length=3Darguments.length;i<length;i++)elements.push(=
$(arguments[i]));return elements}if(typeof =
element=3D=3D'string')element=3Ddocument.getElementById(element);return =
Element.extend(element)}if(Prototype.BrowserFeatures.XPath){document._get=
ElementsByXPath=3Dfunction(expression,parentElement){var =
results=3D[];var =
query=3Ddocument.evaluate(expression,$(parentElement)||document,null,XPat=
hResult.ORDERED_NODE_SNAPSHOT_TYPE,null);for(var =
i=3D0,length=3Dquery.snapshotLength;i<length;i++)results.push(query.snaps=
hotItem(i));return =
results}}document.getElementsByClassName=3Dfunction(className,parentEleme=
nt){if(Prototype.BrowserFeatures.XPath){var q=3D".//*[contains(concat(' =
', @class, ' '), ' "+className+" ')]";return =
document._getElementsByXPath(q,parentElement)}else{var =
children=3D($(parentElement)||document.body).getElementsByTagName('*');va=
r elements=3D[],child;for(var =
i=3D0,length=3Dchildren.length;i<length;i++){child=3Dchildren[i];if(Eleme=
nt.hasClassName(child,className))elements.push(Element.extend(child))}ret=
urn elements}};if(!window.Element)var Element=3Dnew =
Object();Element.extend=3Dfunction(element){if(!element||_nativeExtension=
s||element.nodeType=3D=3D3)return =
element;if(!element._extended&&element.tagName&&element!=3Dwindow){var =
methods=3DObject.clone(Element.Methods),cache=3DElement.extend.cache;if(e=
lement.tagName=3D=3D'FORM')Object.extend(methods,Form.Methods);if(['INPUT=
','TEXTAREA','SELECT'].include(element.tagName))Object.extend(methods,For=
m.Element.Methods);Object.extend(methods,Element.Methods.Simulated);for(v=
ar property in methods){var value=3Dmethods[property];if(typeof =
value=3D=3D'function'&&!(property in =
element))element[property]=3Dcache.findOrStore(value)}}element._extended=3D=
true;return =
element};Element.extend.cache=3D{findOrStore:function(value){return =
this[value]=3Dthis[value]||function(){return =
value.apply(null,[this].concat($A(arguments)))}}};Element.Methods=3D{visi=
ble:function(element){return =
$(element).style.display!=3D'none'},toggle:function(element){element=3D$(=
element);Element[Element.visible(element)?'hide':'show'](element);return =
element},hide:function(element){$(element).style.display=3D'none';return =
element},show:function(element){$(element).style.display=3D'';return =
element},remove:function(element){element=3D$(element);element.parentNode=
.removeChild(element);return =
element},update:function(element,html){html=3Dtypeof =
html=3D=3D'undefined'?'':html.toString();$(element).innerHTML=3Dhtml.stri=
pScripts();setTimeout(function(){html.evalScripts()},10);return =
element},replace:function(element,html){element=3D$(element);html=3Dtypeo=
f =
html=3D=3D'undefined'?'':html.toString();if(element.outerHTML){element.ou=
terHTML=3Dhtml.stripScripts()}else{var =
range=3Delement.ownerDocument.createRange();range.selectNodeContents(elem=
ent);element.parentNode.replaceChild(range.createContextualFragment(html.=
stripScripts()),element)}setTimeout(function(){html.evalScripts()},10);re=
turn element},inspect:function(element){element=3D$(element);var =
result=3D'<'+element.tagName.toLowerCase();$H({'id':'id','className':'cla=
ss'}).each(function(pair){var =
property=3Dpair.first(),attribute=3Dpair.last();var =
value=3D(element[property]||'').toString();if(value)result+=3D' =
'+attribute+'=3D'+value.inspect(true)});return =
result+'>'},recursivelyCollect:function(element,property){element=3D$(ele=
ment);var =
elements=3D[];while(element=3Delement[property])if(element.nodeType=3D=3D=
1)elements.push(Element.extend(element));return =
elements},ancestors:function(element){return =
$(element).recursivelyCollect('parentNode')},descendants:function(element=
){return =
$A($(element).getElementsByTagName('*'))},immediateDescendants:function(e=
lement){if(!(element=3D$(element).firstChild))return[];while(element&&ele=
ment.nodeType!=3D1)element=3Delement.nextSibling;if(element)return[elemen=
t].concat($(element).nextSiblings());return[]},previousSiblings:function(=
element){return =
$(element).recursivelyCollect('previousSibling')},nextSiblings:function(e=
lement){return =
$(element).recursivelyCollect('nextSibling')},siblings:function(element){=
element=3D$(element);return =
element.previousSiblings().reverse().concat(element.nextSiblings())},matc=
h:function(element,selector){if(typeof =
selector=3D=3D'string')selector=3Dnew Selector(selector);return =
selector.match($(element))},up:function(element,expression,index){return =
Selector.findElement($(element).ancestors(),expression,index)},down:funct=
ion(element,expression,index){return =
Selector.findElement($(element).descendants(),expression,index)},previous=
:function(element,expression,index){return =
Selector.findElement($(element).previousSiblings(),expression,index)},nex=
t:function(element,expression,index){return =
Selector.findElement($(element).nextSiblings(),expression,index)},getElem=
entsBySelector:function(){var =
args=3D$A(arguments),element=3D$(args.shift());return =
Selector.findChildElements(element,args)},getElementsByClassName:function=
(element,className){return =
document.getElementsByClassName(className,element)},readAttribute:functio=
n(element,name){element=3D$(element);if(document.all&&!window.opera){var =
t=3DElement._attributeTranslations;if(t.values[name])return =
t.values[name](element,name);if(t.names[name])name=3Dt.names[name];var =
attribute=3Delement.attributes[name];if(attribute)return =
attribute.nodeValue}return =
element.getAttribute(name)},getHeight:function(element){return =
$(element).getDimensions().height},getWidth:function(element){return =
$(element).getDimensions().width},classNames:function(element){return =
new =
Element.ClassNames(element)},hasClassName:function(element,className){if(=
!(element=3D$(element)))return;var =
elementClassName=3Delement.className;if(elementClassName.length=3D=3D0)re=
turn =
false;if(elementClassName=3D=3DclassName||elementClassName.match(new =
RegExp("(^|\\s)"+className+"(\\s|$)")))return true;return =
false},addClassName:function(element,className){if(!(element=3D$(element)=
))return;Element.classNames(element).add(className);return =
element},removeClassName:function(element,className){if(!(element=3D$(ele=
ment)))return;Element.classNames(element).remove(className);return =
element},toggleClassName:function(element,className){if(!(element=3D$(ele=
ment)))return;Element.classNames(element)[element.hasClassName(className)=
?'remove':'add'](className);return =
element},observe:function(){Event.observe.apply(Event,arguments);return =
$A(arguments).first()},stopObserving:function(){Event.stopObserving.apply=
(Event,arguments);return =
$A(arguments).first()},cleanWhitespace:function(element){element=3D$(elem=
ent);var node=3Delement.firstChild;while(node){var =
nextNode=3Dnode.nextSibling;if(node.nodeType=3D=3D3&&!/\S/.test(node.node=
Value))element.removeChild(node);node=3DnextNode}return =
element},empty:function(element){return =
$(element).innerHTML.match(/^\s*$/)},descendantOf:function(element,ancest=
or){element=3D$(element),ancestor=3D$(ancestor);while(element=3Delement.p=
arentNode)if(element=3D=3Dancestor)return true;return =
false},scrollTo:function(element){element=3D$(element);var =
pos=3DPosition.cumulativeOffset(element);window.scrollTo(pos[0],pos[1]);r=
eturn =
element},getStyle:function(element,style){element=3D$(element);if(['float=
','cssFloat'].include(style))style=3D(typeof =
element.style.styleFloat!=3D'undefined'?'styleFloat':'cssFloat');style=3D=
style.camelize();var =
value=3Delement.style[style];if(!value){if(document.defaultView&&document=
.defaultView.getComputedStyle){var =
css=3Ddocument.defaultView.getComputedStyle(element,null);value=3Dcss?css=
[style]:null}else =
if(element.currentStyle){value=3Delement.currentStyle[style]}}if((value=3D=
=3D'auto')&&['width','height'].include(style)&&(element.getStyle('display=
')!=3D'none'))value=3Delement['offset'+style.capitalize()]+'px';if(window=
.opera&&['left','top','right','bottom'].include(style))if(Element.getStyl=
e(element,'position')=3D=3D'static')value=3D'auto';if(style=3D=3D'opacity=
'){if(value)return =
parseFloat(value);if(value=3D(element.getStyle('filter')||'').match(/alph=
a\(opacity=3D(.*)\)/))if(value[1])return parseFloat(value[1])/100;return =
1.0}return =
value=3D=3D'auto'?null:value},setStyle:function(element,style){element=3D=
$(element);for(var name in style){var =
value=3Dstyle[name];if(name=3D=3D'opacity'){if(value=3D=3D1){value=3D(/Ge=
cko/.test(navigator.userAgent)&&!/Konqueror|Safari|KHTML/.test(navigator.=
userAgent))?0.999999:1.0;if(/MSIE/.test(navigator.userAgent)&&!window.ope=
ra)element.style.filter=3Delement.getStyle('filter').replace(/alpha\([^\)=
]*\)/gi,'')}else =
if(value=3D=3D''){if(/MSIE/.test(navigator.userAgent)&&!window.opera)elem=
ent.style.filter=3Delement.getStyle('filter').replace(/alpha\([^\)]*\)/gi=
,'')}else{if(value<0.00001)value=3D0;if(/MSIE/.test(navigator.userAgent)&=
&!window.opera)element.style.filter=3Delement.getStyle('filter').replace(=
/alpha\([^\)]*\)/gi,'')+'alpha(opacity=3D'+value*100+')'}}else =
if(['float','cssFloat'].include(name))name=3D(typeof =
element.style.styleFloat!=3D'undefined')?'styleFloat':'cssFloat';element.=
style[name.camelize()]=3Dvalue}return =
element},getDimensions:function(element){element=3D$(element);var =
display=3D$(element).getStyle('display');if(display!=3D'none'&&display!=3D=
null)return{width:element.offsetWidth,height:element.offsetHeight};var =
els=3Delement.style;var originalVisibility=3Dels.visibility;var =
originalPosition=3Dels.position;var =
originalDisplay=3Dels.display;els.visibility=3D'hidden';els.position=3D'a=
bsolute';els.display=3D'block';var =
originalWidth=3Delement.clientWidth;var =
originalHeight=3Delement.clientHeight;els.display=3DoriginalDisplay;els.p=
osition=3DoriginalPosition;els.visibility=3DoriginalVisibility;return{wid=
th:originalWidth,height:originalHeight}},makePositioned:function(element)=
{element=3D$(element);var =
pos=3DElement.getStyle(element,'position');if(pos=3D=3D'static'||!pos){el=
ement._madePositioned=3Dtrue;element.style.position=3D'relative';if(windo=
w.opera){element.style.top=3D0;element.style.left=3D0}}return =
element},undoPositioned:function(element){element=3D$(element);if(element=
._madePositioned){element._madePositioned=3Dundefined;element.style.posit=
ion=3Delement.style.top=3Delement.style.left=3Delement.style.bottom=3Dele=
ment.style.right=3D''}return =
element},makeClipping:function(element){element=3D$(element);if(element._=
overflow)return =
element;element._overflow=3Delement.style.overflow||'auto';if((Element.ge=
tStyle(element,'overflow')||'visible')!=3D'hidden')element.style.overflow=
=3D'hidden';return =
element},undoClipping:function(element){element=3D$(element);if(!element.=
_overflow)return =
element;element.style.overflow=3Delement._overflow=3D=3D'auto'?'':element=
._overflow;element._overflow=3Dnull;return =
element}};Object.extend(Element.Methods,{childOf:Element.Methods.descenda=
ntOf});Element._attributeTranslations=3D{};Element._attributeTranslations=
.names=3D{colspan:"colSpan",rowspan:"rowSpan",valign:"vAlign",datetime:"d=
ateTime",accesskey:"accessKey",tabindex:"tabIndex",enctype:"encType",maxl=
ength:"maxLength",readonly:"readOnly",longdesc:"longDesc"};Element._attri=
buteTranslations.values=3D{_getAttr:function(element,attribute){return =
element.getAttribute(attribute,2)},_flag:function(element,attribute){retu=
rn =
$(element).hasAttribute(attribute)?attribute:null},style:function(element=
){return =
element.style.cssText.toLowerCase()},title:function(element){var =
node=3Delement.getAttributeNode('title');return =
node.specified?node.nodeValue:null}};Object.extend(Element._attributeTran=
slations.values,{href:Element._attributeTranslations.values._getAttr,src:=
Element._attributeTranslations.values._getAttr,disabled:Element._attribut=
eTranslations.values._flag,checked:Element._attributeTranslations.values.=
_flag,readonly:Element._attributeTranslations.values._flag,multiple:Eleme=
nt._attributeTranslations.values._flag});Element.Methods.Simulated=3D{has=
Attribute:function(element,attribute){var =
t=3DElement._attributeTranslations;attribute=3Dt.names[attribute]||attrib=
ute;return =
$(element).getAttributeNode(attribute).specified}};if(document.all&&!wind=
ow.opera){Element.Methods.update=3Dfunction(element,html){element=3D$(ele=
ment);html=3Dtypeof html=3D=3D'undefined'?'':html.toString();var =
tagName=3Delement.tagName.toUpperCase();if(['THEAD','TBODY','TR','TD'].in=
clude(tagName)){var =
div=3Ddocument.createElement('div');switch(tagName){case'THEAD':case'TBOD=
Y':div.innerHTML=3D'<table><tbody>'+html.stripScripts()+'</tbody></table>=
';depth=3D2;break;case'TR':div.innerHTML=3D'<table><tbody><tr>'+html.stri=
pScripts()+'</tr></tbody></table>';depth=3D3;break;case'TD':div.innerHTML=
=3D'<table><tbody><tr><td>'+html.stripScripts()+'</td></tr></tbody></tabl=
e>';depth=3D4}$A(element.childNodes).each(function(node){element.removeCh=
ild(node)});depth.times(function(){div=3Ddiv.firstChild});$A(div.childNod=
es).each(function(node){element.appendChild(node)})}else{element.innerHTM=
L=3Dhtml.stripScripts()}setTimeout(function(){html.evalScripts()},10);ret=
urn element}};Object.extend(Element,Element.Methods);var =
_nativeExtensions=3Dfalse;if(/Konqueror|Safari|KHTML/.test(navigator.user=
Agent))['','Form','Input','TextArea','Select'].each(function(tag){var =
className=3D'HTML'+tag+'Element';if(window[className])return;var =
klass=3Dwindow[className]=3D{};klass.prototype=3Ddocument.createElement(t=
ag?tag.toLowerCase():'div').__proto__});Element.addMethods=3Dfunction(met=
hods){Object.extend(Element.Methods,methods||{});function =
copy(methods,destination,onlyIfAbsent){onlyIfAbsent=3DonlyIfAbsent||false=
;var cache=3DElement.extend.cache;for(var property in methods){var =
value=3Dmethods[property];if(!onlyIfAbsent||!(property in =
destination))destination[property]=3Dcache.findOrStore(value)}}if(typeof =
HTMLElement!=3D'undefined'){copy(Element.Methods,HTMLElement.prototype);c=
opy(Element.Methods.Simulated,HTMLElement.prototype,true);copy(Form.Metho=
ds,HTMLFormElement.prototype);[HTMLInputElement,HTMLTextAreaElement,HTMLS=
electElement].each(function(klass){copy(Form.Element.Methods,klass.protot=
ype)});_nativeExtensions=3Dtrue}};var Toggle=3Dnew =
Object();Toggle.display=3DElement.toggle;Abstract.Insertion=3Dfunction(ad=
jacency){this.adjacency=3Dadjacency};Abstract.Insertion.prototype=3D{init=
ialize:function(element,content){this.element=3D$(element);this.content=3D=
content.stripScripts();if(this.adjacency&&this.element.insertAdjacentHTML=
){try{this.element.insertAdjacentHTML(this.adjacency,this.content)}catch(=
e){var =
tagName=3Dthis.element.tagName.toUpperCase();if(['TBODY','TR'].include(ta=
gName)){this.insertContent(this.contentFromAnonymousTable())}else{throw =
e;}}}else{this.range=3Dthis.element.ownerDocument.createRange();if(this.i=
nitializeRange)this.initializeRange();this.insertContent([this.range.crea=
teContextualFragment(this.content)])}setTimeout(function(){content.evalSc=
ripts()},10)},contentFromAnonymousTable:function(){var =
div=3Ddocument.createElement('div');div.innerHTML=3D'<table><tbody>'+this=
.content+'</tbody></table>';return =
$A(div.childNodes[0].childNodes[0].childNodes)}};var Insertion=3Dnew =
Object();Insertion.Before=3DClass.create();Insertion.Before.prototype=3DO=
bject.extend(new =
Abstract.Insertion('beforeBegin'),{initializeRange:function(){this.range.=
setStartBefore(this.element)},insertContent:function(fragments){fragments=
.each((function(fragment){this.element.parentNode.insertBefore(fragment,t=
his.element)}).bind(this))}});Insertion.Top=3DClass.create();Insertion.To=
p.prototype=3DObject.extend(new =
Abstract.Insertion('afterBegin'),{initializeRange:function(){this.range.s=
electNodeContents(this.element);this.range.collapse(true)},insertContent:=
function(fragments){fragments.reverse(false).each((function(fragment){thi=
s.element.insertBefore(fragment,this.element.firstChild)}).bind(this))}})=
;Insertion.Bottom=3DClass.create();Insertion.Bottom.prototype=3DObject.ex=
tend(new =
Abstract.Insertion('beforeEnd'),{initializeRange:function(){this.range.se=
lectNodeContents(this.element);this.range.collapse(this.element)},insertC=
ontent:function(fragments){fragments.each((function(fragment){this.elemen=
t.appendChild(fragment)}).bind(this))}});Insertion.After=3DClass.create()=
;Insertion.After.prototype=3DObject.extend(new =
Abstract.Insertion('afterEnd'),{initializeRange:function(){this.range.set=
StartAfter(this.element)},insertContent:function(fragments){fragments.eac=
h((function(fragment){this.element.parentNode.insertBefore(fragment,this.=
element.nextSibling)}).bind(this))}});Element.ClassNames=3DClass.create()=
;Element.ClassNames.prototype=3D{initialize:function(element){this.elemen=
t=3D$(element)},_each:function(iterator){this.element.className.split(/\s=
+/).select(function(name){return =
name.length>0})._each(iterator)},set:function(className){this.element.cla=
ssName=3DclassName},add:function(classNameToAdd){if(this.include(classNam=
eToAdd))return;this.set($A(this).concat(classNameToAdd).join(' =
'))},remove:function(classNameToRemove){if(!this.include(classNameToRemov=
e))return;this.set($A(this).without(classNameToRemove).join(' =
'))},toString:function(){return $A(this).join(' =
')}};Object.extend(Element.ClassNames.prototype,Enumerable);var =
Selector=3DClass.create();Selector.prototype=3D{initialize:function(expre=
ssion){this.params=3D{classNames:[]};this.expression=3Dexpression.toStrin=
g().strip();this.parseExpression();this.compileMatcher()},parseExpression=
:function(){function abort(message){throw'Parse error in selector: =
'+message;}if(this.expression=3D=3D'')abort('empty expression');var =
params=3Dthis.params,expr=3Dthis.expression,match,modifier,clause,rest;wh=
ile(match=3Dexpr.match(/^(.*)\[([a-z0-9_:-]+?)(?:([~\|!]?=3D)(?:"([^"]*)"=
|([^\]\s]*)))?\]$/i)){params.attributes=3Dparams.attributes||[];params.at=
tributes.push({name:match[2],operator:match[3],value:match[4]||match[5]||=
''});expr=3Dmatch[1]}if(expr=3D=3D'*')return =
this.params.wildcard=3Dtrue;while(match=3Dexpr.match(/^([^a-z0-9_-])?([a-=
z0-9_-]+)(.*)/i)){modifier=3Dmatch[1],clause=3Dmatch[2],rest=3Dmatch[3];s=
witch(modifier){case'#':params.id=3Dclause;break;case'.':params.className=
s.push(clause);break;case'':case =
undefined:params.tagName=3Dclause.toUpperCase();break;default:abort(expr.=
inspect())}expr=3Drest}if(expr.length>0)abort(expr.inspect())},buildMatch=
Expression:function(){var =
params=3Dthis.params,conditions=3D[],clause;if(params.wildcard)conditions=
.push('true');if(clause=3Dparams.id)conditions.push('element.readAttribut=
e("id") =3D=3D =
'+clause.inspect());if(clause=3Dparams.tagName)conditions.push('element.t=
agName.toUpperCase() =3D=3D =
'+clause.inspect());if((clause=3Dparams.classNames).length>0)for(var =
i=3D0,length=3Dclause.length;i<length;i++)conditions.push('element.hasCla=
ssName('+clause[i].inspect()+')');if(clause=3Dparams.attributes){clause.e=
ach(function(attribute){var =
value=3D'element.readAttribute('+attribute.name.inspect()+')';var =
splitValueBy=3Dfunction(delimiter){return value+' && =
'+value+'.split('+delimiter.inspect()+')'};switch(attribute.operator){cas=
e'=3D':conditions.push(value+' =3D=3D =
'+attribute.value.inspect());break;case'~=3D':conditions.push(splitValueB=
y(' =
')+'.include('+attribute.value.inspect()+')');break;case'|=3D':conditions=
.push(splitValueBy('-')+'.first().toUpperCase() =3D=3D =
'+attribute.value.toUpperCase().inspect());break;case'!=3D':conditions.pu=
sh(value+' !=3D '+attribute.value.inspect());break;case'':case =
undefined:conditions.push('element.hasAttribute('+attribute.name.inspect(=
)+')');break;default:throw'Unknown operator '+attribute.operator+' in =
selector';}})}return conditions.join(' && =
')},compileMatcher:function(){this.match=3Dnew =
Function('element','if(!element.tagName){ return false;} return =
'+this.buildMatchExpression())},findElements:function(scope){var =
element;if(element=3D$(this.params.id))if(this.match(element))if(!scope||=
Element.childOf(element,scope))return[element];scope=3D(scope||document).=
getElementsByTagName(this.params.tagName||'*');var results=3D[];for(var =
i=3D0,length=3Dscope.length;i<length;i++)if(this.match(element=3Dscope[i]=
))results.push(Element.extend(element));return =
results},toString:function(){return =
this.expression}};Object.extend(Selector,{matchElements:function(elements=
,expression){var selector=3Dnew Selector(expression);return =
elements.select(selector.match.bind(selector)).map(Element.extend)},findE=
lement:function(elements,expression,index){if(typeof =
expression=3D=3D'number')index=3Dexpression,expression=3Dfalse;return =
Selector.matchElements(elements,expression||'*')[index||0]},findChildElem=
ents:function(element,expressions){return =
expressions.map(function(expression){return =
expression.match(/[^\s"]+(?:"[^"]*"[^\s"]+)*/g).inject([null],function(re=
sults,expr){var selector=3Dnew Selector(expr);return =
results.inject([],function(elements,result){return =
elements.concat(selector.findElements(result||element))})})}).flatten()}}=
);function $$(){return =
Selector.findChildElements(document,$A(arguments))}var =
Form=3D{reset:function(form){$(form).reset();return =
form},serializeElements:function(elements,getHash){var =
data=3Delements.inject({},function(result,element){if(!element.disabled&&=
element.name){var =
key=3Delement.name,value=3D$(element).getValue();if(value!=3Dundefined){i=
f(result[key]){if(result[key].constructor!=3DArray)result[key]=3D[result[=
key]];result[key].push(value)}else result[key]=3Dvalue}}return =
result});return =
getHash?data:Hash.toQueryString(data)}};Form.Methods=3D{serialize:functio=
n(form,getHash){return =
Form.serializeElements(Form.getElements(form),getHash)},getElements:funct=
ion(form){return =
$A($(form).getElementsByTagName('*')).inject([],function(elements,child){=
if(Form.Element.Serializers[child.tagName.toLowerCase()])elements.push(El=
ement.extend(child));return =
elements})},getInputs:function(form,typeName,name){form=3D$(form);var =
inputs=3Dform.getElementsByTagName('input');if(!typeName&&!name)return =
$A(inputs).map(Element.extend);for(var =
i=3D0,matchingInputs=3D[],length=3Dinputs.length;i<length;i++){var =
input=3Dinputs[i];if((typeName&&input.type!=3DtypeName)||(name&&input.nam=
e!=3Dname))continue;matchingInputs.push(Element.extend(input))}return =
matchingInputs},disable:function(form){form=3D$(form);form.getElements().=
each(function(element){element.blur();element.disabled=3D'true'});return =
form},enable:function(form){form=3D$(form);form.getElements().each(functi=
on(element){element.disabled=3D''});return =
form},findFirstElement:function(form){return =
$(form).getElements().find(function(element){return =
element.type!=3D'hidden'&&!element.disabled&&['input','select','textarea'=
].include(element.tagName.toLowerCase())})},focusFirstElement:function(fo=
rm){form=3D$(form);form.findFirstElement().activate();return =
form}};Object.extend(Form,Form.Methods);Form.Element=3D{focus:function(el=
ement){$(element).focus();return =
element},select:function(element){$(element).select();return =
element}};Form.Element.Methods=3D{serialize:function(element){element=3D$=
(element);if(!element.disabled&&element.name){var =
value=3Delement.getValue();if(value!=3Dundefined){var =
pair=3D{};pair[element.name]=3Dvalue;return =
Hash.toQueryString(pair)}}return''},getValue:function(element){element=3D=
$(element);var method=3Delement.tagName.toLowerCase();return =
Form.Element.Serializers[method](element)},clear:function(element){$(elem=
ent).value=3D'';return element},present:function(element){return =
$(element).value!=3D''},activate:function(element){element=3D$(element);e=
lement.focus();if(element.select&&(element.tagName.toLowerCase()!=3D'inpu=
t'||!['button','reset','submit'].include(element.type)))element.select();=
return =
element},disable:function(element){element=3D$(element);element.disabled=3D=
true;return =
element},enable:function(element){element=3D$(element);element.blur();ele=
ment.disabled=3Dfalse;return =
element}};Object.extend(Form.Element,Form.Element.Methods);var =
Field=3DForm.Element;var =
$F=3DForm.Element.getValue;Form.Element.Serializers=3D{input:function(ele=
ment){switch(element.type.toLowerCase()){case'checkbox':case'radio':retur=
n Form.Element.Serializers.inputSelector(element);default:return =
Form.Element.Serializers.textarea(element)}},inputSelector:function(eleme=
nt){return =
element.checked?element.value:null},textarea:function(element){return =
element.value},select:function(element){return =
this[element.type=3D=3D'select-one'?'selectOne':'selectMany'](element)},s=
electOne:function(element){var index=3Delement.selectedIndex;return =
index>=3D0?this.optionValue(element.options[index]):null},selectMany:func=
tion(element){var values,length=3Delement.length;if(!length)return =
null;for(var i=3D0,values=3D[];i<length;i++){var =
opt=3Delement.options[i];if(opt.selected)values.push(this.optionValue(opt=
))}return values},optionValue:function(opt){return =
Element.extend(opt).hasAttribute('value')?opt.value:opt.text}};Abstract.T=
imedObserver=3Dfunction(){};Abstract.TimedObserver.prototype=3D{initializ=
e:function(element,frequency,callback){this.frequency=3Dfrequency;this.el=
ement=3D$(element);this.callback=3Dcallback;this.lastValue=3Dthis.getValu=
e();this.registerCallback()},registerCallback:function(){setInterval(this=
.onTimerEvent.bind(this),this.frequency*1000)},onTimerEvent:function(){va=
r value=3Dthis.getValue();var changed=3D('string'=3D=3Dtypeof =
this.lastValue&&'string'=3D=3Dtypeof =
value?this.lastValue!=3Dvalue:String(this.lastValue)!=3DString(value));if=
(changed){this.callback(this.element,value);this.lastValue=3Dvalue}}};For=
m.Element.Observer=3DClass.create();Form.Element.Observer.prototype=3DObj=
ect.extend(new Abstract.TimedObserver(),{getValue:function(){return =
Form.Element.getValue(this.element)}});Form.Observer=3DClass.create();For=
m.Observer.prototype=3DObject.extend(new =
Abstract.TimedObserver(),{getValue:function(){return =
Form.serialize(this.element)}});Abstract.EventObserver=3Dfunction(){};Abs=
tract.EventObserver.prototype=3D{initialize:function(element,callback){th=
is.element=3D$(element);this.callback=3Dcallback;this.lastValue=3Dthis.ge=
tValue();if(this.element.tagName.toLowerCase()=3D=3D'form')this.registerF=
ormCallbacks();else =
this.registerCallback(this.element)},onElementEvent:function(){var =
value=3Dthis.getValue();if(this.lastValue!=3Dvalue){this.callback(this.el=
ement,value);this.lastValue=3Dvalue}},registerFormCallbacks:function(){Fo=
rm.getElements(this.element).each(this.registerCallback.bind(this))},regi=
sterCallback:function(element){if(element.type){switch(element.type.toLow=
erCase()){case'checkbox':case'radio':Event.observe(element,'click',this.o=
nElementEvent.bind(this));break;default:Event.observe(element,'change',th=
is.onElementEvent.bind(this));break}}}};Form.Element.EventObserver=3DClas=
s.create();Form.Element.EventObserver.prototype=3DObject.extend(new =
Abstract.EventObserver(),{getValue:function(){return =
Form.Element.getValue(this.element)}});Form.EventObserver=3DClass.create(=
);Form.EventObserver.prototype=3DObject.extend(new =
Abstract.EventObserver(),{getValue:function(){return =
Form.serialize(this.element)}});if(!window.Event){var Event=3Dnew =
Object()}Object.extend(Event,{KEY_BACKSPACE:8,KEY_TAB:9,KEY_RETURN:13,KEY=
_ESC:27,KEY_LEFT:37,KEY_UP:38,KEY_RIGHT:39,KEY_DOWN:40,KEY_DELETE:46,KEY_=
HOME:36,KEY_END:35,KEY_PAGEUP:33,KEY_PAGEDOWN:34,element:function(event){=
return =
event.target||event.srcElement},isLeftClick:function(event){return(((even=
t.which)&&(event.which=3D=3D1))||((event.button)&&(event.button=3D=3D1)))=
},pointerX:function(event){return =
event.pageX||(event.clientX+(document.documentElement.scrollLeft||documen=
t.body.scrollLeft))},pointerY:function(event){return =
event.pageY||(event.clientY+(document.documentElement.scrollTop||document=
.body.scrollTop))},stop:function(event){if(event.preventDefault){event.pr=
eventDefault();event.stopPropagation()}else{event.returnValue=3Dfalse;eve=
nt.cancelBubble=3Dtrue}},findElement:function(event,tagName){var =
element=3DEvent.element(event);while(element.parentNode&&(!element.tagNam=
e||(element.tagName.toUpperCase()!=3DtagName.toUpperCase())))element=3Del=
ement.parentNode;return =
element},observers:false,_observeAndCache:function(element,name,observer,=
useCapture){if(!this.observers)this.observers=3D[];if(element.addEventLis=
tener){this.observers.push([element,name,observer,useCapture]);element.ad=
dEventListener(name,observer,useCapture)}else =
if(element.attachEvent){this.observers.push([element,name,observer,useCap=
ture]);element.attachEvent('on'+name,observer)}},unloadCache:function(){i=
f(!Event.observers)return;for(var =
i=3D0,length=3DEvent.observers.length;i<length;i++){Event.stopObserving.a=
pply(this,Event.observers[i]);Event.observers[i][0]=3Dnull}Event.observer=
s=3Dfalse},observe:function(element,name,observer,useCapture){element=3D$=
(element);useCapture=3DuseCapture||false;if(name=3D=3D'keypress'&&(naviga=
tor.appVersion.match(/Konqueror|Safari|KHTML/)||element.attachEvent))name=
=3D'keydown';Event._observeAndCache(element,name,observer,useCapture)},st=
opObserving:function(element,name,observer,useCapture){element=3D$(elemen=
t);useCapture=3DuseCapture||false;if(name=3D=3D'keypress'&&(navigator.app=
Version.match(/Konqueror|Safari|KHTML/)||element.detachEvent))name=3D'key=
down';if(element.removeEventListener){element.removeEventListener(name,ob=
server,useCapture)}else =
if(element.detachEvent){try{element.detachEvent('on'+name,observer)}catch=
(e){}}}});if(navigator.appVersion.match(/\bMSIE\b/))Event.observe(window,=
'unload',Event.unloadCache,false);var =
Position=3D{includeScrollOffsets:false,prepare:function(){this.deltaX=3Dw=
indow.pageXOffset||document.documentElement.scrollLeft||document.body.scr=
ollLeft||0;this.deltaY=3Dwindow.pageYOffset||document.documentElement.scr=
ollTop||document.body.scrollTop||0},realOffset:function(element){var =
valueT=3D0,valueL=3D0;do{valueT+=3Delement.scrollTop||0;valueL+=3Delement=
.scrollLeft||0;element=3Delement.parentNode}while(element);return[valueL,=
valueT]},cumulativeOffset:function(element){var =
valueT=3D0,valueL=3D0;do{valueT+=3Delement.offsetTop||0;valueL+=3Delement=
.offsetLeft||0;element=3Delement.offsetParent}while(element);return[value=
L,valueT]},positionedOffset:function(element){var =
valueT=3D0,valueL=3D0;do{valueT+=3Delement.offsetTop||0;valueL+=3Delement=
.offsetLeft||0;element=3Delement.offsetParent;if(element){if(element.tagN=
ame=3D=3D'BODY')break;var =
p=3DElement.getStyle(element,'position');if(p=3D=3D'relative'||p=3D=3D'ab=
solute')break}}while(element);return[valueL,valueT]},offsetParent:functio=
n(element){if(element.offsetParent)return =
element.offsetParent;if(element=3D=3Ddocument.body)return =
element;while((element=3Delement.parentNode)&&element!=3Ddocument.body)if=
(Element.getStyle(element,'position')!=3D'static')return element;return =
document.body},within:function(element,x,y){if(this.includeScrollOffsets)=
return =
this.withinIncludingScrolloffsets(element,x,y);this.xcomp=3Dx;this.ycomp=3D=
y;this.offset=3Dthis.cumulativeOffset(element);return(y>=3Dthis.offset[1]=
&&y<this.offset[1]+element.offsetHeight&&x>=3Dthis.offset[0]&&x<this.offs=
et[0]+element.offsetWidth)},withinIncludingScrolloffsets:function(element=
,x,y){var =
offsetcache=3Dthis.realOffset(element);this.xcomp=3Dx+offsetcache[0]-this=
.deltaX;this.ycomp=3Dy+offsetcache[1]-this.deltaY;this.offset=3Dthis.cumu=
lativeOffset(element);return(this.ycomp>=3Dthis.offset[1]&&this.ycomp<thi=
s.offset[1]+element.offsetHeight&&this.xcomp>=3Dthis.offset[0]&&this.xcom=
p<this.offset[0]+element.offsetWidth)},overlap:function(mode,element){if(=
!mode)return =
0;if(mode=3D=3D'vertical')return((this.offset[1]+element.offsetHeight)-th=
is.ycomp)/element.offsetHeight;if(mode=3D=3D'horizontal')return((this.off=
set[0]+element.offsetWidth)-this.xcomp)/element.offsetWidth},page:functio=
n(forElement){var valueT=3D0,valueL=3D0;var =
element=3DforElement;do{valueT+=3Delement.offsetTop||0;valueL+=3Delement.=
offsetLeft||0;if(element.offsetParent=3D=3Ddocument.body)if(Element.getSt=
yle(element,'position')=3D=3D'absolute')break}while(element=3Delement.off=
setParent);element=3DforElement;do{if(!window.opera||element.tagName=3D=3D=
'BODY'){valueT-=3Delement.scrollTop||0;valueL-=3Delement.scrollLeft||0}}w=
hile(element=3Delement.parentNode);return[valueL,valueT]},clone:function(=
source,target){var =
options=3DObject.extend({setLeft:true,setTop:true,setWidth:true,setHeight=
:true,offsetTop:0,offsetLeft:0},arguments[2]||{});source=3D$(source);var =
p=3DPosition.page(source);target=3D$(target);var delta=3D[0,0];var =
parent=3Dnull;if(Element.getStyle(target,'position')=3D=3D'absolute'){par=
ent=3DPosition.offsetParent(target);delta=3DPosition.page(parent)}if(pare=
nt=3D=3Ddocument.body){delta[0]-=3Ddocument.body.offsetLeft;delta[1]-=3Dd=
ocument.body.offsetTop}if(options.setLeft)target.style.left=3D(p[0]-delta=
[0]+options.offsetLeft)+'px';if(options.setTop)target.style.top=3D(p[1]-d=
elta[1]+options.offsetTop)+'px';if(options.setWidth)target.style.width=3D=
source.offsetWidth+'px';if(options.setHeight)target.style.height=3Dsource=
.offsetHeight+'px'},absolutize:function(element){element=3D$(element);if(=
element.style.position=3D=3D'absolute')return;Position.prepare();var =
offsets=3DPosition.positionedOffset(element);var top=3Doffsets[1];var =
left=3Doffsets[0];var width=3Delement.clientWidth;var =
height=3Delement.clientHeight;element._originalLeft=3Dleft-parseFloat(ele=
ment.style.left||0);element._originalTop=3Dtop-parseFloat(element.style.t=
op||0);element._originalWidth=3Delement.style.width;element._originalHeig=
ht=3Delement.style.height;element.style.position=3D'absolute';element.sty=
le.top=3Dtop+'px';element.style.left=3Dleft+'px';element.style.width=3Dwi=
dth+'px';element.style.height=3Dheight+'px'},relativize:function(element)=
{element=3D$(element);if(element.style.position=3D=3D'relative')return;Po=
sition.prepare();element.style.position=3D'relative';var =
top=3DparseFloat(element.style.top||0)-(element._originalTop||0);var =
left=3DparseFloat(element.style.left||0)-(element._originalLeft||0);eleme=
nt.style.top=3Dtop+'px';element.style.left=3Dleft+'px';element.style.heig=
ht=3Delement._originalHeight;element.style.width=3Delement._originalWidth=
}};if(/Konqueror|Safari|KHTML/.test(navigator.userAgent)){Position.cumula=
tiveOffset=3Dfunction(element){var =
valueT=3D0,valueL=3D0;do{valueT+=3Delement.offsetTop||0;valueL+=3Delement=
.offsetLeft||0;if(element.offsetParent=3D=3Ddocument.body)if(Element.getS=
tyle(element,'position')=3D=3D'absolute')break;element=3Delement.offsetPa=
rent}while(element);return[valueL,valueT]}}Element.addMethods();
------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.aluka.org/templates/jsp/_aluka/jsc/sys/utils.js

/*=0A=
 *                  Copyright (C) 2004 Ithaka Harbors, Inc.=0A=
 * =
-------------------------------------------------------------------------=
----=0A=
 * The information contained in this file is confidential and =
proprietary to=0A=
 * Ithaka Harbors, Inc., and may not be copied, distributed, transmitted,=0A=
 * disclosed or otherwise duplicated or made available to any third party=0A=
 * without the express written consent of Ithaka Harbors, Inc.=0A=
 * =
-------------------------------------------------------------------------=
----=0A=
 * Aluka spesific utility functions=0A=
 * Created by Vitalii Malyshev=0A=
 */=0A=
=0A=
//-----------------------------------------------------------------------=
-----//=0A=
// Utility objects=0A=
=0A=
if(!(ithaka)) {var ithaka =3D new Object()};=0A=
if(!(ithaka.util)) {ithaka.util =3D new Object()};=0A=
=0A=
DBUG =3D new Object();=0A=
Object.extend(DBUG, {=0A=
	trace: function(str) {=0A=
		var out =3D $("debug");=0A=
		if (out) {=0A=
			out.innerHTML +=3D str+"<br/>"=0A=
		}=0A=
	}=0A=
});=0A=
=0A=
// Request utils=0A=
ithaka.util.RequestUtils =3D new Object();=0A=
Object.extend(ithaka.util.RequestUtils, {=0A=
	generateQueryString: function(hash,del) {=0A=
		var var_pairs =3D new Array();=0A=
		for(var key in hash){=0A=
			var_pairs.push(key +"=3D"+ hash[key]);=0A=
		}=0A=
		return var_pairs.join((del ? del : "&"));=0A=
	},=0A=
	setAndReload: function(params) {=0A=
		var url =3D new ithaka.util.URL();=0A=
		url.setParameters(params);=0A=
		url.reload();=0A=
		return false;=0A=
	},=0A=
	addAndReload: function(params) {=0A=
		var url =3D new ithaka.util.URL();=0A=
		url.addParameters(params);=0A=
		url.reload();=0A=
		return false;=0A=
	},=0A=
	delAndReload: function(params) {=0A=
		var url =3D new ithaka.util.URL();=0A=
		url.delParameters(params);=0A=
		url.reload();=0A=
		return false;=0A=
	},=0A=
	encodeURL: function(str) {=0A=
		return escape(str).=0A=
				replace(/\+/g, '%2B').=0A=
				replace(/\"/g,'%22').=0A=
				replace(/\'/g, '%27').=0A=
				replace(/\//g,'%2F');=0A=
	}=0A=
});=0A=
ithaka.util.URL =3D Class.create();=0A=
ithaka.util.URL.pattern =3D =
"^(?:(\\w+)\://)?([^\:/]*)(?:\:(\\d+))?(/[^\?]*)+\\?(\\S*)$";=0A=
ithaka.util.URL.prototype =3D {=0A=
	initialize: function(str) {=0A=
		var tmp =3D (str && str !=3D "") ? str : window.location+"";=0A=
		var arr =3D tmp.split("?");=0A=
		this.url =3D  arr[0];=0A=
		this.params =3D {};=0A=
		// Parse url=0A=
		if (arr.length > 1) this.params =3D arr[1].toQueryParams();=0A=
	},=0A=
	test: function(str) {=0A=
		var reg =3D new RegExp(ithaka.util.URL.pattern, 'ig');=0A=
		return reg.test(str);=0A=
	},=0A=
	addParameters: function(hash) {=0A=
		for (name in hash) {=0A=
			var value =3D hash[name] ? decodeURIComponent(hash[name]) : undefined;=0A=
			if (this.params[name] !=3D=3D undefined) {=0A=
				if (this.params[name].constructor !=3D Array) this.params[name] =3D =
[this.params[name]];=0A=
				if (value) this.params[name].push(value);=0A=
			} else this.params[name] =3D value;=0A=
		}=0A=
	},=0A=
	setParameters: function(hash) {=0A=
		for (name in hash) {=0A=
			this.params[name] =3D [hash[name]];=0A=
		}=0A=
	},=0A=
	delParameters: function(hash) {=0A=
		var h =3D $H();=0A=
		$H(this.params).each(function(pair) {=0A=
			if (pair.value) {=0A=
				if (pair.value.constructor !=3D Array) pair.value =3D [pair.value];=0A=
				h[pair.key] =3D $A(pair.value).without(hash[pair.key]);=0A=
			}=0A=
		});=0A=
		this.params =3D h;=0A=
	},=0A=
	getParameter: function(name) {=0A=
		return this.params[name];=0A=
	},=0A=
	reload: function() {=0A=
		window.location =3D this.toString()+"";=0A=
	},=0A=
	toString: function() {=0A=
		var out =3D this.url;=0A=
		if ($H(this.params).values().length > 0) out +=3D =
"?"+$H(this.params).toQueryString();=0A=
		return out;=0A=
	}=0A=
}=0A=
=0A=
// Browser utils=0A=
ithaka.util.BrowserUtils =3D new Object();=0A=
Object.extend(ithaka.util.BrowserUtils, {=0A=
	getBrowserName:	function () { // returns the browser name=0A=
		var agent =3D navigator.userAgent.toLowerCase();=0A=
		var browser;=0A=
		     if (matchStr(agent,'konqueror'))   browser =3D "KONQUEROR"=0A=
		else if (matchStr(agent,'safari'))      browser =3D "SAFARI"=0A=
		else if (matchStr(agent,'omniweb'))     browser =3D "OMNIWEB"=0A=
		else if (matchStr(agent,'opera'))       browser =3D "OPERA"=0A=
		else if (matchStr(agent,'webtv'))       browser =3D "WEBTV"=0A=
		else if (matchStr(agent,'icab'))        browser =3D "ICAB"=0A=
		else if (matchStr(agent,'msie'))        browser =3D "IE"=0A=
		else if (matchStr(agent,'firefox'))     browser =3D "FIREFOX"=0A=
		else if (!matchStr(agent,'compatible')) browser =3D "NN"=0A=
		else																			browser =3D "UNKNOWN";=0A=
=0A=
		function matchStr(src, str) {=0A=
			return src.indexOf(str) + 1;=0A=
		}=0A=
=0A=
		return browser;=0A=
	},=0A=
	getBrowserVer:	function () { // returns the browser version=0A=
	}=0A=
});=0A=
=0A=
// Window utils=0A=
ithaka.util.WindowUtils =3D new Object();=0A=
Object.extend(ithaka.util.WindowUtils, {=0A=
	getWindowSize:	function (wnd) { // returns the browser window sizes=0A=
		var w =3D (wnd) ? wnd : self ;=0A=
		var size =3D {innerWidth:0,innerHeight:0,outerWidth:0,outerHeight:0};=0A=
		if( typeof( w.innerWidth ) =3D=3D 'number' ) { //Non-IE=0A=
			size.innerWidth =3D w.innerWidth;=0A=
			size.innerHeight =3D w.innerHeight;=0A=
			size.outerWidth =3D w.outerWidth;=0A=
			size.outerHeight =3D w.outerHeight;=0A=
		} else if ( w.document.documentElement && ( =
w.document.documentElement.clientWidth || =
w.document.documentElement.clientHeight ) ) { //IE 6+ in 'standards =
compliant mode'=0A=
			size.innerWidth =3D w.document.documentElement.clientWidth;=0A=
			size.innerHeight =3D w.document.documentElement.clientHeight;=0A=
			size.outerWidth =3D size.innerWidth+28;=0A=
			size.outerHeight =3D size.innerHeight+36;=0A=
		} else if ( w.document.body && ( w.document.body.clientWidth || =
w.document.body.clientHeight ) ) { //IE 4 compatible=0A=
			size.innerWidth =3D w.document.body.clientWidth;=0A=
			size.innerHeight =3D w.document.body.clientHeight;=0A=
			size.outerWidth =3D size.innerWidth+28;=0A=
			size.outerHeight =3D size.innerHeight+36;=0A=
		}=0A=
		return size;=0A=
	},=0A=
	getViewportSize:	function (wnd) { // returns the browser viewport.=0A=
		var w =3D (wnd) ? wnd : self ;=0A=
		var scrl =3D {left:0,top:0,width:0,height:0};=0A=
		var size =3D ithaka.util.WindowUtils.getWindowSize();=0A=
		scrl.width =3D size.innerWidth;=0A=
		scrl.height =3D size.innerHeight;=0A=
		if( typeof( w.pageYOffset ) =3D=3D 'number' ) { //Netscape compliant=0A=
			scrl.top =3D w.pageYOffset;=0A=
			scrl.left =3D w.pageXOffset;=0A=
		} else if ( w.document.body && ( w.document.body.scrollLeft || =
w.document.body.scrollTop ) ) { //DOM compliant=0A=
			scrl.top =3D w.document.body.scrollTop;=0A=
			scrl.left =3D w.document.body.scrollLeft;=0A=
		} else if ( w.document.documentElement && ( =
w.document.documentElement.scrollLeft || =
w.document.documentElement.scrollTop ) ) { //IE6 standards compliant mode=0A=
			scrl.top =3D w.document.documentElement.scrollTop;=0A=
			scrl.left =3D w.document.documentElement.scrollLeft;=0A=
		}=0A=
		return scrl;=0A=
	},=0A=
=0A=
	positionWindow: function (hp,vp,w) {=0A=
		vp =3D (vp=3D=3D=3Dundefined||vp<0||vp>100)?50:vp; // Vertical %=0A=
		hp =3D (hp=3D=3D=3Dundefined||hp<0||hp>100)?50:hp; // Horizontal %=0A=
		var wnd =3D (w) ? w : self;=0A=
		var w_size =3D this.getWindowSize(wnd);=0A=
		var vspace =3D screen.availHeight - w_size.outerHeight;=0A=
		var hspace =3D screen.availWidth - w_size.outerWidth;=0A=
		var top =3D vspace * vp/100;=0A=
		var left =3D hspace * hp/100;=0A=
		wnd.moveTo(left,top);=0A=
	},=0A=
	openWindow: function (url,name,w,h,hp,vp,params) {=0A=
		vp =3D (vp=3D=3D=3Dundefined||vp<0||vp>100)?50:vp; // Vertical %=0A=
		hp =3D (hp=3D=3D=3Dundefined||hp<0||hp>100)?50:hp; // Horizontal %=0A=
		w =3D =
(w=3D=3D=3Dundefined||w<=3D0||w>screen.availWidth)?screen.availWidth/2:w;=0A=
		h =3D =
(h=3D=3D=3Dundefined||h<=3D0||h>screen.availHeight)?screen.availHeight/2:=
h;=0A=
		var vspace =3D screen.availHeight - h;=0A=
		var hspace =3D screen.availWidth - w;=0A=
		var top =3D vspace * vp/100;=0A=
		var left =3D hspace * hp/100;=0A=
		var wref =3D =
window.open(url,name,"left=3D"+left+",top=3D"+top+",height=3D"+h+",width=3D=
"+w+","+params);=0A=
		return wref;=0A=
	},=0A=
	maximizeWindow: function(wnd) {=0A=
		var w =3D (wnd) ? wnd : self ;=0A=
		this.positionWindow(0,0,w);=0A=
		w.resizeTo(screen.availWidth,screen.availHeight);=0A=
		return w;=0A=
	},=0A=
	openFullscreenWindow: function(wnd) {=0A=
		var w =3D (wnd) ? wnd : self ;=0A=
		var br =3D ithaka.util.BrowserUtils.getBrowserName();=0A=
		if (br =3D=3D "IE") {=0A=
			var wref =3D =
window.open(w.document.location,w.name+"_fullscreen","fullscreen");=0A=
			w.close();=0A=
			return wref;=0A=
		}	else { // i.e. if Firefox=0A=
			this.positionWindow(0,0,w);=0A=
			w.resizeTo(screen.availWidth,screen.availHeight);=0A=
		}=0A=
		return w;=0A=
	}=0A=
});=0A=
=0A=
// Style utils=0A=
ithaka.util.RoundedCorners =3D new Object();=0A=
Object.extend(ithaka.util.RoundedCorners, {=0A=
	apply: function(klass, parent) {=0A=
		klass =3D (klass || 'rounded');=0A=
		alert(klass);=0A=
		var roundEls =3D document.getElementsByClassName(klass, parent);=0A=
		$A(roundEls).each(function(value, index) {=0A=
			value.className =3D value.className.replace(klass, '');=0A=
			var tr =3D document.createElement('div');=0A=
			tr.className =3D 'rounded2';=0A=
			value.parentNode.replaceChild(tr, value);=0A=
			var tl =3D document.createElement('div');=0A=
			var br =3D document.createElement('div');=0A=
			tr.appendChild(tl);=0A=
			tl.appendChild(br);=0A=
			br.appendChild(value);=0A=
		});=0A=
	}=0A=
});=0A=
//Event.observe(window, 'load', ithaka.util.RoundedCorners.apply, false);=0A=
=0A=
// Multiple Toggler=0A=
ithaka.util.ToggleElement =3D Class.create();=0A=
ithaka.util.ToggleElement.prototype =3D {=0A=
	initialize: function(id,ds,clon,cloff) {=0A=
		this.el =3D $(id);=0A=
		this.id =3D id;=0A=
		this.func =3D Prototype.K;=0A=
		this.onClass =3D (clon)?clon:null;=0A=
		this.offClass =3D (cloff)?cloff:null;=0A=
		this.isOn =3D (ds)?ds:false;=0A=
		this.set(this.isOn);=0A=
	},=0A=
	setFunc: function(f) {=0A=
		this.func =3D f;=0A=
	},=0A=
	setStyleClasses: function(clon,cloff) {=0A=
		this.onClass =3D clon;=0A=
		this.offClass =3D cloff;=0A=
		this.set(this.isOn);=0A=
	},=0A=
	set: function(flag,f) {=0A=
		this.isOn =3D flag;=0A=
		(f || this.func)(this);=0A=
		if (this.onClass =3D=3D null && this.offClass =3D=3D null) {=0A=
			(this.isOn =3D=3D true)?Element.show(this.el):Element.hide(this.el);=0A=
		} else {=0A=
			Element.removeClassName(this.el,(this.isOn =3D=3D =
true)?this.offClass:this.onClass);=0A=
			Element.addClassName(this.el,(this.isOn =3D=3D =
true)?this.onClass:this.offClass);=0A=
		}=0A=
	},=0A=
	toggle: function(f) {=0A=
		this.set(!this.isOn,f);=0A=
	}=0A=
}=0A=
ithaka.util.RadioToggler =3D Class.create();=0A=
ithaka.util.RadioToggler.prototype =3D {=0A=
	initialize: function(radio) {=0A=
		this.isRadio =3D (radio)?radio:false; // true - works like a radio =
group, false - like a checkbox group=0A=
		this.toggles =3D {};=0A=
		this.alloff =3D false;=0A=
	},=0A=
	setRadio: function(flag) {=0A=
		this.isRadio =3D flag;=0A=
	},=0A=
	addToggles: function(tgels) {=0A=
		$A(tgels).inject(this.toggles, function(elements, child) {=0A=
			elements[child.id] =3D child;=0A=
			return elements;=0A=
		});=0A=
	},=0A=
	set: function(id,flag) {=0A=
		if (this.toggles[id]) {=0A=
			this.toggles[id].set(flag);=0A=
		}=0A=
	},=0A=
	toggle: function(id) {=0A=
		if (!this.toggles[id]) return;=0A=
		if (this.isRadio =3D=3D true) {=0A=
			$H(this.toggles).each(function(pair) {=0A=
				if (pair.key !=3D id) {=0A=
					pair.value.set(false);=0A=
				}=0A=
			});=0A=
			(this.alloff) ? this.toggles[id].toggle() : =
this.toggles[id].set(true);=0A=
		} else {=0A=
			this.toggles[id].set(!this.toggles[id].isOn);=0A=
		}=0A=
	},=0A=
	setAll: function(flag) {=0A=
		$H(this.toggles).each(function(pair) {=0A=
			pair.value.set(flag);=0A=
		});=0A=
	},=0A=
	reset: function() {=0A=
		$H(this.toggles).each(function(pair) {=0A=
			pair.value.set(pair.value.isOn);=0A=
		});=0A=
	}=0A=
}=0A=

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.aluka.org/templates/jsp/_aluka/jsc/aluka.js

/*=0A=
 *                  Copyright (C) 2004 Ithaka Harbors, Inc.=0A=
 * =
-------------------------------------------------------------------------=
----=0A=
 * The information contained in this file is confidential and =
proprietary to=0A=
 * Ithaka Harbors, Inc., and may not be copied, distributed, transmitted,=0A=
 * disclosed or otherwise duplicated or made available to any third party=0A=
 * without the express written consent of Ithaka Harbors, Inc.=0A=
 * =
-------------------------------------------------------------------------=
----=0A=
 * Aluka project main script=0A=
 * Created by Vitalii Malyshev=0A=
 */=0A=
=0A=
if(!(ithaka)) {var ithaka =3D new Object()};=0A=
if(!(ithaka.aluka)) {ithaka.aluka =3D new Object()};=0A=
if(!(ithaka.aluka.tags)) {ithaka.aluka.tags =3D new Object()};=0A=
=0A=
//-----------------------------------------------------------------------=
-----//=0A=
// Object viewer=0A=
//-----------------------------------------------------------------------=
-----//=0A=
ithaka.ObjectViewerWindow =3D Class.create();=0A=
ithaka.ObjectViewerWindow.prototype =3D {=0A=
  initialize: function(url,id){=0A=
	  this._wref =3D null;=0A=
	  this.url =3D url?url:"";=0A=
	  this.id =3D id?"OBJID_"+this.doiToId(id):"OBJID_NODOI";=0A=
		this.width =3D (screen.availWidth/2);=0A=
		this.height =3D (screen.availHeight)*0.9;=0A=
	  this.hp =3D 95;=0A=
	  this.vp =3D 30;=0A=
	  this.params =3D "toolbar=3Dno,scrollbars=3Dyes,resizable=3Dyes";=0A=
	},=0A=
	open: function() {=0A=
		// Add Referer (for IE)=0A=
		var ref =3D =
"referrer=3D"+ithaka.util.RequestUtils.encodeURL(document.location);=0A=
		this.url =3D this.url + (this.url.indexOf("?")>=3D0?"&":"?") + ref;=0A=
		this._wref =3D =
ithaka.util.WindowUtils.openWindow(this.url,this.id,this.width,this.heigh=
t,this.hp,this.vp,this.params);=0A=
		// register window functions=0A=
		eval("this._wref."+this.id+" =3D this;");=0A=
	},=0A=
	close: function(){=0A=
		this._wref.close();=0A=
	},=0A=
	setWidth: function(value){=0A=
		this.width =3D value;=0A=
	},=0A=
	setHeight: function(value){=0A=
		this.height =3D value;=0A=
	},=0A=
	setXPercent: function(value){=0A=
		this.hp =3D value;=0A=
	},=0A=
	setYPercent: function(value){=0A=
		this.vp =3D value;=0A=
	},=0A=
	setParams: function(value){=0A=
		this.params =3D value;=0A=
	},=0A=
	doiToId: function(doi) {=0A=
		return doi.replace(/[\.\'\"\/\-]/g,'');=0A=
	},=0A=
	toString: function(){=0A=
		return "Instance of ObjectViewerWindow (window name: '"+this.id+"')";=0A=
	}=0A=
}=0A=
ithaka.aluka.Object3dViewerWindow =3D new Object();=0A=
Object.extend(ithaka.aluka.Object3dViewerWindow,{=0A=
	open: function(url,id) {=0A=
		var v =3D new ObjectViewerWindow(url,id);=0A=
		v.setXPercent(50);=0A=
		v.setYPercent(30);=0A=
		v.setHeight(480);=0A=
		v.setWidth(480);=0A=
		v.open();=0A=
	}=0A=
});=0A=
ithaka.aluka.ObjectQTViewerWindow =3D new Object();=0A=
Object.extend(ithaka.aluka.ObjectQTViewerWindow,{=0A=
	open: function(url,id) {=0A=
		var v =3D new ObjectViewerWindow(url,id);=0A=
		v.setXPercent(50);=0A=
		v.setYPercent(30);=0A=
		v.setHeight(495);=0A=
		v.setWidth(640);=0A=
		v.open();=0A=
	}=0A=
});=0A=
=0A=
//-----------------------------------------------------------------------=
-----//=0A=
// Advanced search=0A=
//-----------------------------------------------------------------------=
-----//=0A=
ithaka.aluka.AdvancedSearch =3D new Object();=0A=
Object.extend(ithaka.aluka.AdvancedSearch,{=0A=
	init: function(default_sw) {=0A=
		var aaf_frm =3D ($("aaf_frm"))?new =
ithaka.util.ToggleElement("aaf_frm"):null;=0A=
		var all_frm =3D ($("all_frm"))?new =
ithaka.util.ToggleElement("all_frm"):null;=0A=
		var chs_frm =3D ($("chs_frm"))?new =
ithaka.util.ToggleElement("chs_frm"):null;=0A=
		var apl_frm =3D ($("apl_frm"))?new =
ithaka.util.ToggleElement("apl_frm"):null;=0A=
		var sff_frm =3D ($("sff_frm"))?new =
ithaka.util.ToggleElement("sff_frm"):null;=0A=
=0A=
		var swarr =3D [];=0A=
		var fieldFunc =3D function(swtch){=0A=
			Form.getElements(swtch.el).invoke(swtch.isOn?'enable':'disable');=0A=
		};=0A=
=0A=
		if ($("aaf_sw")) {=0A=
			var sw1 =3D new ithaka.util.ToggleElement("aaf_sw",false,"on","");=0A=
			swarr[swarr.length] =3D sw1;=0A=
			sw1.setFunc(function(sw) {=0A=
				if (aaf_frm) aaf_frm.set(sw.isOn,fieldFunc);=0A=
				if (sw.isOn) {=0A=
					if (fld=3D$("aaf_ca")) fld.enable();=0A=
					$('apl_ca','chs_ca','sff_ca').compact().invoke('disable');=0A=
				}=0A=
			});=0A=
		}=0A=
		if ($("all_sw")) {=0A=
			var sw2 =3D new ithaka.util.ToggleElement("all_sw",true,"on","");=0A=
			swarr[swarr.length] =3D sw2;=0A=
			sw2.setFunc(function(sw) {=0A=
				if (all_frm) all_frm.set(sw.isOn,fieldFunc);=0A=
				if (sw.isOn) {=0A=
					try {=0A=
						$('apl_ca','chs_ca','sff_ca').compact().invoke('enable');=0A=
						if (fld=3D$("aaf_ca")) fld.disable();=0A=
					} catch (e) {}=0A=
				}=0A=
			});=0A=
		}=0A=
		if ($("chs_sw")) {=0A=
			var sw3 =3D new ithaka.util.ToggleElement("chs_sw",false,"on","");=0A=
			swarr[swarr.length] =3D sw3;=0A=
			sw3.setFunc(function(sw) {=0A=
				if (all_frm) all_frm.set(sw.isOn,fieldFunc);=0A=
				if (chs_frm) chs_frm.set(sw.isOn,fieldFunc);=0A=
				if (sw.isOn) {=0A=
					if (fld=3D$("chs_ca")) fld.enable();=0A=
					$('aaf_ca','apl_ca','sff_ca').compact().invoke('disable');=0A=
				}=0A=
			});=0A=
		}=0A=
		if ($("apl_sw")) {=0A=
			var sw4 =3D new ithaka.util.ToggleElement("apl_sw",false,"on","");=0A=
			swarr[swarr.length] =3D sw4;=0A=
			sw4.setFunc(function(sw) {=0A=
				if (all_frm) all_frm.set(sw.isOn,fieldFunc);=0A=
				if (apl_frm) apl_frm.set(sw.isOn,fieldFunc);=0A=
				if (sw.isOn) {=0A=
					if (fld=3D$("apl_ca")) fld.enable();=0A=
					$('aaf_ca','chs_ca','sff_ca').compact().invoke('disable');=0A=
				}=0A=
			});=0A=
		}=0A=
		if ($("sff_sw")) {=0A=
			var sw5 =3D new ithaka.util.ToggleElement("sff_sw",false,"on","");=0A=
			swarr[swarr.length] =3D sw5;=0A=
			sw5.setFunc(function(sw) {=0A=
				if (all_frm) all_frm.set(sw.isOn,fieldFunc);=0A=
				if (sff_frm) sff_frm.set(sw.isOn,fieldFunc);=0A=
				if (sw.isOn) {=0A=
					if (fld=3D$("sff_ca")) fld.enable();=0A=
					$('aaf_ca','apl_ca','chs_ca').compact().invoke('disable');=0A=
				}=0A=
			});=0A=
		}=0A=
=0A=
		this.formToggler =3D new ithaka.util.RadioToggler(true);=0A=
		this.formToggler.addToggles(swarr);=0A=
=0A=
		var hash =3D document.location.hash.substring(1);=0A=
		if (hash =3D=3D "aaf" || hash =3D=3D "all" || hash =3D=3D "chs" || =
hash =3D=3D "apl" || hash =3D=3D "sff") {=0A=
			this.formToggler.toggle(hash+"_sw");=0A=
		} else {=0A=
			this.formToggler.toggle(default_sw);=0A=
		}=0A=
	},=0A=
	selectScope: function(isSearchInResults) {=0A=
		$$('#sw-imputs =
input').compact().invoke(isSearchInResults?'enable':'disable');=0A=
		$$('#sall-imputs =
input').compact().invoke(isSearchInResults?'disable':'enable');=0A=
	}=0A=
});=0A=
=0A=
/* Invoke on window load to set default state */=0A=
ithaka.aluka.CompPage =3D new Object();=0A=
Object.extend(ithaka.aluka.CompPage,{=0A=
	updateSpecimenFilter: function() {=0A=
		var chboxes =3D Form.getInputs(document.body,"checkbox");=0A=
		chboxes.each(function(value, index) {=0A=
			var def =3D value.getAttribute("filter")+"";=0A=
			value.checked =3D (def && def =3D=3D "1") ? true : false;=0A=
		});=0A=
	}=0A=
});=0A=
=0A=
/* Update tag editbox */=0A=
ithaka.aluka.tags.TagEditor =3D Class.create();=0A=
ithaka.aluka.tags.TagEditor.prototype =3D {=0A=
  initialize: function(fld){=0A=
	  this.input =3D $(fld);=0A=
	  this.input.onkeyup =3D this.reprocess.bindAsEventListener(this);=0A=
	  this.input.onchange =3D this.reprocess.bindAsEventListener(this);=0A=
	  this.tags =3D [];=0A=
	},=0A=
	reprocess: function() {=0A=
		this.tags =3D $F(this.input).split(/[ \t]*[,;\n\r\v]+[ \t]*/gm);=0A=
		this.compact();=0A=
		return this.tags;=0A=
	},=0A=
	isTagExist: function(tag) {=0A=
		return this.tags.include(tag);=0A=
	},=0A=
	addTag: function(tag) {=0A=
		if (!this.isTagExist(tag) && tag !=3D '') {=0A=
			this.tags.push(tag);=0A=
		}=0A=
		this.update();=0A=
	},=0A=
	update: function() {=0A=
		this.input.value =3D this.tags.join("; ");=0A=
	},=0A=
	compact: function() {=0A=
		var results =3D [];=0A=
		this.tags.each(function(value) {=0A=
			if (!results.include(value) && value !=3D '') {=0A=
				results[results.length] =3D value;=0A=
			}=0A=
		});=0A=
		this.tags =3D results;=0A=
	},=0A=
	toString: function(){=0A=
		out =3D "TagEditor [";=0A=
		this.tags.each(function(value) {=0A=
			out +=3D "\""+value+"\",";=0A=
		});=0A=
		out +=3D "]";=0A=
		return out;=0A=
	}=0A=
}=0A=
=0A=
ithaka.aluka.LangSelector =3D new Object();=0A=
Object.extend(ithaka.aluka.LangSelector,{=0A=
	setLocale: function(loc) {=0A=
		if (!loc) return;=0A=
		window.location.href =3D =
"/action/doLocaleChange?nocache=3D1&locale=3D"+loc+"&requestUri=3D"+escap=
e(window.location);=0A=
	}=0A=
});=0A=
=0A=
ithaka.aluka.deleteSharedTag =3D function(svc, oid) {=0A=
	var tid =3D [];=0A=
	for (var i=3D2;i<this.attributes.length;i++) {=0A=
		tid[tid.length] =3D this.attributes[i];=0A=
	}=0A=
	var url =3D svc+"?oid=3D"+oid+"&tid=3D"+tid.join("&tid=3D");=0A=
	//document.location =3D url;=0A=
	//alert(url);=0A=
};=0A=
=0A=
ithaka.aluka.Pager =3D new Object();=0A=
Object.extend(ithaka.aluka.Pager,{=0A=
	setPage: function(cpage,total) {=0A=
		var tmp =3D parseInt(cpage,10);=0A=
		tmp=3D(isNaN(tmp)?1:(tmp>total?total:(tmp<1?1:tmp)));=0A=
		ithaka.util.RequestUtils.setAndReload({p:tmp});=0A=
		return false;=0A=
	},=0A=
	loadPage: function(event,el_id,total) {=0A=
		var pn =3D $(el_id);=0A=
		if (pn && (!event || event.keyCode =3D=3D Event.KEY_RETURN)) {=0A=
			ithaka.aluka.Pager.setPage(pn.getValue(),total);=0A=
		}=0A=
	}=0A=
});=0A=
=0A=
///=0A=
=0A=
ithaka.aluka.TagTool =3D Class.create();=0A=
ithaka.aluka.TagTool.prototype =3D {=0A=
	initialize: function(select_id) {=0A=
		this.objects =3D 0;=0A=
		this.objTags =3D {};=0A=
		this.select =3D $(select_id);=0A=
	},=0A=
	show: function(klass,show) {=0A=
		var els =3D $(klass).getInputs('checkbox');=0A=
		$A(els).each(function(value, index) {=0A=
			show?$(value).show():$(value).hide();=0A=
		});=0A=
	},=0A=
	selectAll: function(flag) {=0A=
		var els =3D Form.getInputs(this.select.form, 'checkbox');=0A=
		$A(els).each(function(value, index) {=0A=
			value.checked =3D flag;=0A=
			if (value.onclick) value.onclick();=0A=
		});=0A=
	},=0A=
	register: function(obj, tags) {=0A=
		this.objects++;=0A=
		this.objTags[obj] =3D tags;=0A=
		this.updateSelectEl(this.select);=0A=
		return tags.length;=0A=
	},=0A=
	unRegister: function(obj) {=0A=
		this.objects--;=0A=
		this.objTags[obj] =3D null;=0A=
		this.updateSelectEl(this.select);=0A=
	},=0A=
	resetForm: function() {=0A=
		Form.reset("frm-tagtool");=0A=
	},=0A=
	updateSelectEl: function(sel) {=0A=
		if (!sel) return;=0A=
		var tagIdSet =3D {};=0A=
		$H(this.objTags).each(function(pair) {=0A=
			if (pair.value =3D=3D null) return;=0A=
			for (var i =3D 0; i < pair.value.length; i++) {=0A=
				tagIdSet[pair.value[i]] =3D pair.value[i];=0A=
			}=0A=
		});=0A=
		var optgroups =3D sel.childNodes;=0A=
		var addgroup =3D null;=0A=
		var delgroup =3D null;=0A=
		for (var i =3D 0; i < optgroups.length; i++) {=0A=
			if (optgroups[i].nodeName =3D=3D "OPTGROUP") {=0A=
				if (optgroups[i].id =3D=3D "del") {=0A=
					delgroup =3D optgroups[i];=0A=
				} else=0A=
				if (optgroups[i].id =3D=3D "add") {=0A=
					addgroup =3D optgroups[i];=0A=
				}=0A=
			}=0A=
		}=0A=
		if (delgroup =3D=3D null) {=0A=
			delgroup =3D document.createElement("OPTGROUP");=0A=
			delgroup.id =3D "del";=0A=
			delgroup.label =3D "Delete Tags";=0A=
			sel.appendChild(delgroup);=0A=
		}=0A=
		while (delgroup.hasChildNodes()) {=0A=
			delgroup.removeChild(delgroup.lastChild);=0A=
		}=0A=
		//if(DBUG)DBUG.trace(delgroup.childNodes.length);=0A=
		if (addgroup !=3D null) {=0A=
			$H(tagIdSet).each(function(pair) {=0A=
				//var opt =3D new Option("tag id: "+pair.value, pair.key);=0A=
				var opts =3D addgroup.childNodes;=0A=
				var res =3D $A(opts).findAll(function(value,index) {return pair.key =
=3D=3D value.id;});=0A=
				if (res[0]) {=0A=
					var clone_opt =3D res[0].cloneNode(true);=0A=
					delgroup.appendChild(clone_opt);=0A=
				}=0A=
			});=0A=
		}=0A=
	},=0A=
	processSelectEl: function(sel) {=0A=
		if (!sel) return;=0A=
		if (this.objects < 1) {=0A=
			sel.selectedIndex =3D 0;=0A=
			alert('No objects selected.');=0A=
			return;=0A=
		}=0A=
		var opt =3D sel.options[sel.selectedIndex];=0A=
		if (!opt) return;=0A=
		var group =3D opt.parentNode;=0A=
		if (!group || (group.id !=3D "add" && group.id !=3D "del")) return;=0A=
		var act =3D document.createElement("INPUT");=0A=
		act.id =3D "tagtool_action";=0A=
		act.type =3D "hidden";=0A=
		if (group.id =3D=3D "add") {=0A=
			act.name =3D "btnAdd";=0A=
		} else {=0A=
			act.name =3D "btnDel";=0A=
		}=0A=
		act.value =3D "true";=0A=
		sel.form.appendChild(act);=0A=
		sel.form.submit();=0A=
	},=0A=
	removeTag: function(frm, tags) {=0A=
		if (!frm || !tags || tags.length =3D=3D 0) return;=0A=
		this.select.disabled =3D true;=0A=
		var act =3D document.createElement("INPUT");=0A=
		act.id =3D "tagtool_action";=0A=
		act.type =3D "hidden";=0A=
		act.name =3D "btnDel";=0A=
		act.value =3D "true";=0A=
		frm.appendChild(act);=0A=
		var tagfld =3D document.createElement("INPUT");=0A=
		tagfld.type =3D "hidden";=0A=
		tagfld.name =3D "tstr";=0A=
		tagfld.value =3D tags.join(';');=0A=
		frm.appendChild(tagfld);=0A=
		frm.submit();=0A=
	},=0A=
	setSelected: function(el, on) {=0A=
		return; // Too slow in IE=0A=
		if (!el) return;=0A=
		if (on && on =3D=3D true) {=0A=
			$(el).up('.cttn-item').addClassName('cttn-selected');=0A=
		} else {=0A=
			$(el).up('.cttn-item').removeClassName('cttn-selected');=0A=
		}=0A=
	},=0A=
	toString: function() {=0A=
		var out =3D "ithaka.aluka.TagTool {\n";=0A=
		$H(this.objTags).each(function(pair) {=0A=
			if (pair.value =3D=3D null) return;=0A=
			out +=3D pair.key + ": {";=0A=
			for (var i =3D 0; i < pair.value.length; i++) {=0A=
				if (i !=3D 0) out +=3D ",";=0A=
				out +=3D pair.value[i];=0A=
			}=0A=
			out +=3D "}\n";=0A=
		});=0A=
		out +=3D "}";=0A=
		return out;=0A=
	}=0A=
}=0A=
=0A=
ithaka.aluka.FloatForm =3D Class.create();=0A=
ithaka.aluka.FloatForm.prototype =3D {=0A=
	initialize: function(pref, frm){=0A=
		this.pref =3D pref;=0A=
		this.form =3D $(frm);=0A=
		var st =3D $(this.pref+"_status");=0A=
		if (st) {=0A=
			Ajax.Responders.register({=0A=
			  onCreate: function(){=0A=
			    Element.show(st);=0A=
			  },=0A=
			  onComplete: function(){=0A=
			    Element.hide(st);=0A=
			  }=0A=
			});=0A=
		}=0A=
	},=0A=
	show: function() {=0A=
		if (el=3D$(this.pref+'_frm')) el.show();=0A=
		if (el=3D$(this.pref+'_tgl')) el.hide();=0A=
		Form.focusFirstElement(this.form);=0A=
	},=0A=
	hide: function() {=0A=
		if (el=3D$(this.pref+'_frm')) el.hide();=0A=
		if (el=3D$(this.pref+'_tgl')) el.show();=0A=
	},=0A=
	submit: function(params) {=0A=
		var scope =3D this;=0A=
		new Ajax.Updater({ success:this.pref+'_cont', =
failure:this.pref+'_error' }, this.form.action, {=0A=
			method: this.form.method,=0A=
			parameters: params,=0A=
			evalScripts: true=0A=
		});=0A=
		this.hide();=0A=
	}=0A=
}=0A=
=0A=
//-----------------------------------------------------------------------=
-----//=0A=
// Fix for IE hover function=0A=
//-----------------------------------------------------------------------=
-----//=0A=
iemenuhoverfix =3D function() {=0A=
	var menu =3D $("menu");=0A=
  if (!menu) return;=0A=
	var lis =3D menu.getElementsByTagName("LI");=0A=
	for (var i=3D0; i<lis.length; i++) {=0A=
		lis[i].onmouseover =3D function() =
{Element.addClassName(this,"iehover");};=0A=
		lis[i].onmouseout =3D function() =
{Element.removeClassName(this,"iehover");};=0A=
 	}=0A=
}=0A=
//addListener(window,"load",iemenuhoverfix);=0A=
Event.observe(window, 'load', iemenuhoverfix, false);=0A=
=0A=
//-----------------------------------------------------------------------=
-----//=0A=
// Aliases (for quick access)=0A=
//-----------------------------------------------------------------------=
-----//=0A=
var ObjectViewerWindow =3D ithaka.ObjectViewerWindow;=0A=
var Object3dViewerWindow =3D ithaka.aluka.Object3dViewerWindow;=0A=
var AdvancedSearch =3D ithaka.aluka.AdvancedSearch;=0A=
=0A=
=0A=
/************************************************************************=
******/=0A=
// Unsorted functions=0A=
=0A=
function toggleElClass(id,klass1,klass2) {=0A=
	var el =3D document.getElementById(id);=0A=
	var is_klass1 =3D StyleHelper.hasClass(el,klass1);=0A=
	var is_klass2 =3D StyleHelper.hasClass(el,klass2);=0A=
	if (is_klass1 && is_klass2) {=0A=
		StyleHelper.delClass(el,klass2);=0A=
	} else=0A=
	if (is_klass1 && !is_klass2) {=0A=
		StyleHelper.delClass(el,klass1);=0A=
		StyleHelper.addClass(el,klass2);=0A=
	} else {=0A=
		StyleHelper.addClass(el,klass1);=0A=
		StyleHelper.delClass(el,klass2);=0A=
	}=0A=
	return false;=0A=
}=0A=
=0A=
ithaka.aluka.Bookmarks =3D new Object();=0A=
Object.extend(ithaka.aluka.Bookmarks,{=0A=
	save: function(id) {=0A=
		var url =3D null;=0A=
		if (id =3D=3D 'del.icio.us') {=0A=
			url =3D 'http://del.icio.us/post?url=3D' + escape(window.location) + =
'&title=3D' + escape(document.title);=0A=
		} else if (id =3D=3D 'Google') {=0A=
			url =3D =
'http://www.google.com/bookmarks/mark?op=3Dedit&output=3Dpopup&bkmk=3D' =
+ escape(window.location) + '&title=3D' + escape(document.title);=0A=
		} else if (id =3D=3D 'Yahoo') {=0A=
			url =3D 'http://myweb.yahoo.com/myresults/bookmarklet?u=3D' + =
escape(window.location) + '&t=3D' + escape(document.title) + =
'&ei=3DUTF-8';=0A=
		}		=0A=
		if (url !=3D null) {=0A=
			var newWin =3D window.open(=0A=
				url,=0A=
				"bkmk_popup",=0A=
				=
"left=3D"+((window.screenX||window.screenLeft)+10)+",top=3D"+((window.scr=
eenY||window.screenTop)+10)+",height=3D420px,width=3D850px,resizable=3D1,=
alwaysRaised=3D1"=0A=
			);=0A=
			window.setTimeout(function(){newWin.focus()},300);=0A=
			urchinTracker('/bookmark/'+id);=0A=
		}=0A=
	}=0A=
});=0A=
=0A=
ithaka.aluka.MetadataSupport =3D new Object();=0A=
Object.extend(ithaka.aluka.MetadataSupport,{=0A=
	showMore: function() {=0A=
		$$('#metadata-seealso =
.hidden').compact().any(function(n){n.removeClassName('hidden');});=0A=
		$('see-more-similar-lbl').hide();=0A=
	}=0A=
});=0A=
=0A=
if(!(ithaka.aluka.Home)) {ithaka.aluka.Home =3D new Object()};=0A=
Object.extend(ithaka.aluka.Home,{=0A=
	replaceHash: function() {	=0A=
		var retVal =3D null;=0A=
		try {=0A=
		if (document.location) {			=0A=
			var hs =3D document.location.hash;=0A=
			var pth =3D document.location.pathname;=0A=
			var srch =3D document.location.search;=0A=
			var i;=0A=
			if (hs && pth && hs.length > 0) {=0A=
				if (pth.lastIndexOf('/') < 0) {=0A=
					pth +=3D '/';=0A=
				}=0A=
				if ((i =3D hs.indexOf('#')) >=3D 0) {=0A=
					hs =3D hs.substring(i + 1);=0A=
				}=0A=
				if (hs.length > 0) {=0A=
					if (hs =3D=3D 'ttp') {=0A=
						_uctm =3D 0;=0A=
					}=0A=
					retVal =3D pth + 'hash/' + hs;=0A=
					if (srch) {=0A=
						if (!srch.indexOf('?') =3D=3D 0) {=0A=
							srch =3D '?' + srch;=0A=
						}=0A=
						retVal +=3D srch;=0A=
					}=0A=
				}=0A=
			}=0A=
		}} catch(e) {/*return null*/}=0A=
		return retVal;=0A=
	},=0A=
	libraryToolSelected: function(idx) {=0A=
		var prevIdx =3D this.libraryToolActiveIdx;=0A=
		if (idx =3D=3D 'next') {=0A=
			this.libraryToolActiveIdx++;=0A=
		} else if (idx =3D=3D 'prev') {=0A=
			this.libraryToolActiveIdx--;=0A=
		} else {=0A=
			this.libraryToolActiveIdx =3D idx;=0A=
		}=0A=
		if (this.libraryToolActiveIdx > 2 || this.libraryToolActiveIdx < 0) =
this.libraryToolActiveIdx =3D 0;=0A=
		$('library-tool' + prevIdx).hide();=0A=
		$('library-tool' + this.libraryToolActiveIdx).show();=0A=
		$('library-tool-btn' + prevIdx).removeClassName('currentpage');=0A=
		$('library-tool-btn' + =
this.libraryToolActiveIdx).addClassName('currentpage');=0A=
		return false;=0A=
	},=0A=
	libraryToolActiveIdx:0=0A=
});=0A=
=0A=
if(!(ithaka.aluka.Search)) {ithaka.aluka.Search =3D new Object()};=0A=
Object.extend(ithaka.aluka.Search,{=0A=
	placeInfo: function() {=0A=
		if (document.documentElement) {=0A=
			theLeft =3D document.documentElement.scrollLeft;=0A=
			theTop =3D document.documentElement.scrollTop;=0A=
		} else if (document.body) {=0A=
			theLeft =3D document.body.scrollLeft;=0A=
			theTop =3D document.body.scrollTop;=0A=
		}=0A=
		theLeft +=3D 206;=0A=
		theTop +=3D 195;=0A=
		var infoDiv =3D $('layerinfo');=0A=
		infoDiv.style.left =3D theLeft + 'px' ;=0A=
		infoDiv.style.top =3D theTop + 'px' ;=0A=
		setTimeout("ithaka.aluka.Search.placeInfo()", 500);=0A=
	},=0A=
	filterCompilation: function(idsString) {=0A=
		var ids =3D idsString.split(/,\s*/gm);=0A=
		var fltr =3D {};=0A=
		for(var i =3D 0; i < ids.length; i++) {=0A=
			var id =3D ids[i];=0A=
			eval('fltr.fltr_'+id+'=3D'+$(id).checked+';');=0A=
		}=0A=
		ithaka.util.RequestUtils.setAndReload(fltr);=0A=
	},=0A=
	addFF2SearchProvider: function() {=0A=
		=
window.external.AddSearchProvider('http://www.aluka.org/aluka_sp_ff.xml')=
;=0A=
	},=0A=
	addIE7SearchProvider: function() {=0A=
		=
window.external.AddSearchProvider('http://www.aluka.org/aluka_sp_ie.xml')=
;=0A=
	}=0A=
});=0A=

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.aluka.org/templates/jsp/_aluka/jsc/sys/dom_popup/effects.js

// Copyright (c) 2005, 2006 Thomas Fuchs (http://script.aculo.us, =
http://mir.aculo.us)=0A=
// Contributors:=0A=
//  Justin Palmer (http://encytemedia.com/)=0A=
//  Mark Pilgrim (http://diveintomark.org/)=0A=
//  Martin Bialasinki=0A=
// =0A=
// script.aculo.us is freely distributable under the terms of an =
MIT-style license.=0A=
// For details, see the script.aculo.us web site: =
http://script.aculo.us/ =0A=
=0A=
// converts rgb() and #xxx to #xxxxxx format,  =0A=
// returns self (or first argument) if not convertable  =0A=
String.prototype.parseColor =3D function() {  =0A=
  var color =3D '#';=0A=
  if(this.slice(0,4) =3D=3D 'rgb(') {  =0A=
    var cols =3D this.slice(4,this.length-1).split(',');  =0A=
    var i=3D0; do { color +=3D parseInt(cols[i]).toColorPart() } while =
(++i<3);  =0A=
  } else {  =0A=
    if(this.slice(0,1) =3D=3D '#') {  =0A=
      if(this.length=3D=3D4) for(var i=3D1;i<4;i++) color +=3D =
(this.charAt(i) + this.charAt(i)).toLowerCase();  =0A=
      if(this.length=3D=3D7) color =3D this.toLowerCase();  =0A=
    }  =0A=
  }  =0A=
  return(color.length=3D=3D7 ? color : (arguments[0] || this));  =0A=
}=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
Element.collectTextNodes =3D function(element) {  =0A=
  return $A($(element).childNodes).collect( function(node) {=0A=
    return (node.nodeType=3D=3D3 ? node.nodeValue : =0A=
      (node.hasChildNodes() ? Element.collectTextNodes(node) : ''));=0A=
  }).flatten().join('');=0A=
}=0A=
=0A=
Element.collectTextNodesIgnoreClass =3D function(element, className) {  =0A=
  return $A($(element).childNodes).collect( function(node) {=0A=
    return (node.nodeType=3D=3D3 ? node.nodeValue : =0A=
      ((node.hasChildNodes() && !Element.hasClassName(node,className)) ? =0A=
        Element.collectTextNodesIgnoreClass(node, className) : ''));=0A=
  }).flatten().join('');=0A=
}=0A=
=0A=
Element.setContentZoom =3D function(element, percent) {=0A=
  element =3D $(element);  =0A=
  element.setStyle({fontSize: (percent/100) + 'em'});   =0A=
  if(navigator.appVersion.indexOf('AppleWebKit')>0) window.scrollBy(0,0);=0A=
  return element;=0A=
}=0A=
=0A=
Element.getOpacity =3D function(element){=0A=
  element =3D $(element);=0A=
  var opacity;=0A=
  if (opacity =3D element.getStyle('opacity'))  =0A=
    return parseFloat(opacity);  =0A=
  if (opacity =3D (element.getStyle('filter') || =
'').match(/alpha\(opacity=3D(.*)\)/))  =0A=
    if(opacity[1]) return parseFloat(opacity[1]) / 100;  =0A=
  return 1.0;  =0A=
}=0A=
=0A=
Element.setOpacity =3D function(element, value){  =0A=
  element=3D $(element);  =0A=
  if (value =3D=3D 1){=0A=
    element.setStyle({ opacity: =0A=
      (/Gecko/.test(navigator.userAgent) && =
!/Konqueror|Safari|KHTML/.test(navigator.userAgent)) ? =0A=
      0.999999 : 1.0 });=0A=
    if(/MSIE/.test(navigator.userAgent) && !window.opera)  =0A=
      element.setStyle({filter: =
Element.getStyle(element,'filter').replace(/alpha\([^\)]*\)/gi,'')});  =0A=
  } else {  =0A=
    if(value < 0.00001) value =3D 0;  =0A=
    element.setStyle({opacity: value});=0A=
    if(/MSIE/.test(navigator.userAgent) && !window.opera)  =0A=
      element.setStyle(=0A=
        { filter: =
element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,'') +=0A=
            'alpha(opacity=3D'+value*100+')' });  =0A=
  }=0A=
  return element;=0A=
}  =0A=
 =0A=
Element.getInlineOpacity =3D function(element){  =0A=
  return $(element).style.opacity || '';=0A=
}  =0A=
=0A=
Element.forceRerendering =3D function(element) {=0A=
  try {=0A=
    element =3D $(element);=0A=
    var n =3D document.createTextNode(' ');=0A=
    element.appendChild(n);=0A=
    element.removeChild(n);=0A=
  } catch(e) { }=0A=
};=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
Array.prototype.call =3D function() {=0A=
  var args =3D arguments;=0A=
  this.each(function(f){ f.apply(this, args) });=0A=
}=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
var Effect =3D {=0A=
  _elementDoesNotExistError: {=0A=
    name: 'ElementDoesNotExistError',=0A=
    message: 'The specified DOM element does not exist, but is required =
for this effect to operate'=0A=
  },=0A=
  tagifyText: function(element) {=0A=
    if(typeof Builder =3D=3D 'undefined')=0A=
      throw("Effect.tagifyText requires including script.aculo.us' =
builder.js library");=0A=
      =0A=
    var tagifyStyle =3D 'position:relative';=0A=
    if(/MSIE/.test(navigator.userAgent) && !window.opera) tagifyStyle =
+=3D ';zoom:1';=0A=
    =0A=
    element =3D $(element);=0A=
    $A(element.childNodes).each( function(child) {=0A=
      if(child.nodeType=3D=3D3) {=0A=
        child.nodeValue.toArray().each( function(character) {=0A=
          element.insertBefore(=0A=
            Builder.node('span',{style: tagifyStyle},=0A=
              character =3D=3D ' ' ? String.fromCharCode(160) : =
character), =0A=
              child);=0A=
        });=0A=
        Element.remove(child);=0A=
      }=0A=
    });=0A=
  },=0A=
  multiple: function(element, effect) {=0A=
    var elements;=0A=
    if(((typeof element =3D=3D 'object') || =0A=
        (typeof element =3D=3D 'function')) && =0A=
       (element.length))=0A=
      elements =3D element;=0A=
    else=0A=
      elements =3D $(element).childNodes;=0A=
      =0A=
    var options =3D Object.extend({=0A=
      speed: 0.1,=0A=
      delay: 0.0=0A=
    }, arguments[2] || {});=0A=
    var masterDelay =3D options.delay;=0A=
=0A=
    $A(elements).each( function(element, index) {=0A=
      new effect(element, Object.extend(options, { delay: index * =
options.speed + masterDelay }));=0A=
    });=0A=
  },=0A=
  PAIRS: {=0A=
    'slide':  ['SlideDown','SlideUp'],=0A=
    'blind':  ['BlindDown','BlindUp'],=0A=
    'appear': ['Appear','Fade']=0A=
  },=0A=
  toggle: function(element, effect) {=0A=
    element =3D $(element);=0A=
    effect =3D (effect || 'appear').toLowerCase();=0A=
    var options =3D Object.extend({=0A=
      queue: { position:'end', scope:(element.id || 'global'), limit: 1 }=0A=
    }, arguments[2] || {});=0A=
    Effect[element.visible() ? =0A=
      Effect.PAIRS[effect][1] : Effect.PAIRS[effect][0]](element, =
options);=0A=
  }=0A=
};=0A=
=0A=
var Effect2 =3D Effect; // deprecated=0A=
=0A=
/* ------------- transitions ------------- */=0A=
=0A=
Effect.Transitions =3D {=0A=
  linear: Prototype.K,=0A=
  sinoidal: function(pos) {=0A=
    return (-Math.cos(pos*Math.PI)/2) + 0.5;=0A=
  },=0A=
  reverse: function(pos) {=0A=
    return 1-pos;=0A=
  },=0A=
  flicker: function(pos) {=0A=
    return ((-Math.cos(pos*Math.PI)/4) + 0.75) + Math.random()/4;=0A=
  },=0A=
  wobble: function(pos) {=0A=
    return (-Math.cos(pos*Math.PI*(9*pos))/2) + 0.5;=0A=
  },=0A=
  pulse: function(pos, pulses) { =0A=
    pulses =3D pulses || 5; =0A=
    return (=0A=
      Math.round((pos % (1/pulses)) * pulses) =3D=3D 0 ? =0A=
            ((pos * pulses * 2) - Math.floor(pos * pulses * 2)) : =0A=
        1 - ((pos * pulses * 2) - Math.floor(pos * pulses * 2))=0A=
      );=0A=
  },=0A=
  none: function(pos) {=0A=
    return 0;=0A=
  },=0A=
  full: function(pos) {=0A=
    return 1;=0A=
  }=0A=
};=0A=
=0A=
/* ------------- core effects ------------- */=0A=
=0A=
Effect.ScopedQueue =3D Class.create();=0A=
Object.extend(Object.extend(Effect.ScopedQueue.prototype, Enumerable), {=0A=
  initialize: function() {=0A=
    this.effects  =3D [];=0A=
    this.interval =3D null;=0A=
  },=0A=
  _each: function(iterator) {=0A=
    this.effects._each(iterator);=0A=
  },=0A=
  add: function(effect) {=0A=
    var timestamp =3D new Date().getTime();=0A=
    =0A=
    var position =3D (typeof effect.options.queue =3D=3D 'string') ? =0A=
      effect.options.queue : effect.options.queue.position;=0A=
    =0A=
    switch(position) {=0A=
      case 'front':=0A=
        // move unstarted effects after this effect  =0A=
        this.effects.findAll(function(e){ return e.state=3D=3D'idle' =
}).each( function(e) {=0A=
            e.startOn  +=3D effect.finishOn;=0A=
            e.finishOn +=3D effect.finishOn;=0A=
          });=0A=
        break;=0A=
      case 'with-last':=0A=
        timestamp =3D this.effects.pluck('startOn').max() || timestamp;=0A=
        break;=0A=
      case 'end':=0A=
        // start effect after last queued effect has finished=0A=
        timestamp =3D this.effects.pluck('finishOn').max() || timestamp;=0A=
        break;=0A=
    }=0A=
    =0A=
    effect.startOn  +=3D timestamp;=0A=
    effect.finishOn +=3D timestamp;=0A=
=0A=
    if(!effect.options.queue.limit || (this.effects.length < =
effect.options.queue.limit))=0A=
      this.effects.push(effect);=0A=
    =0A=
    if(!this.interval) =0A=
      this.interval =3D setInterval(this.loop.bind(this), 40);=0A=
  },=0A=
  remove: function(effect) {=0A=
    this.effects =3D this.effects.reject(function(e) { return =
e=3D=3Deffect });=0A=
    if(this.effects.length =3D=3D 0) {=0A=
      clearInterval(this.interval);=0A=
      this.interval =3D null;=0A=
    }=0A=
  },=0A=
  loop: function() {=0A=
    var timePos =3D new Date().getTime();=0A=
    this.effects.invoke('loop', timePos);=0A=
  }=0A=
});=0A=
=0A=
Effect.Queues =3D {=0A=
  instances: $H(),=0A=
  get: function(queueName) {=0A=
    if(typeof queueName !=3D 'string') return queueName;=0A=
    =0A=
    if(!this.instances[queueName])=0A=
      this.instances[queueName] =3D new Effect.ScopedQueue();=0A=
      =0A=
    return this.instances[queueName];=0A=
  }=0A=
}=0A=
Effect.Queue =3D Effect.Queues.get('global');=0A=
=0A=
Effect.DefaultOptions =3D {=0A=
  transition: Effect.Transitions.sinoidal,=0A=
  duration:   1.0,   // seconds=0A=
  fps:        25.0,  // max. 25fps due to Effect.Queue implementation=0A=
  sync:       false, // true for combining=0A=
  from:       0.0,=0A=
  to:         1.0,=0A=
  delay:      0.0,=0A=
  queue:      'parallel'=0A=
}=0A=
=0A=
Effect.Base =3D function() {};=0A=
Effect.Base.prototype =3D {=0A=
  position: null,=0A=
  start: function(options) {=0A=
    this.options      =3D =
Object.extend(Object.extend({},Effect.DefaultOptions), options || {});=0A=
    this.currentFrame =3D 0;=0A=
    this.state        =3D 'idle';=0A=
    this.startOn      =3D this.options.delay*1000;=0A=
    this.finishOn     =3D this.startOn + (this.options.duration*1000);=0A=
    this.event('beforeStart');=0A=
    if(!this.options.sync)=0A=
      Effect.Queues.get(typeof this.options.queue =3D=3D 'string' ? =0A=
        'global' : this.options.queue.scope).add(this);=0A=
  },=0A=
  loop: function(timePos) {=0A=
    if(timePos >=3D this.startOn) {=0A=
      if(timePos >=3D this.finishOn) {=0A=
        this.render(1.0);=0A=
        this.cancel();=0A=
        this.event('beforeFinish');=0A=
        if(this.finish) this.finish(); =0A=
        this.event('afterFinish');=0A=
        return;  =0A=
      }=0A=
      var pos   =3D (timePos - this.startOn) / (this.finishOn - =
this.startOn);=0A=
      var frame =3D Math.round(pos * this.options.fps * =
this.options.duration);=0A=
      if(frame > this.currentFrame) {=0A=
        this.render(pos);=0A=
        this.currentFrame =3D frame;=0A=
      }=0A=
    }=0A=
  },=0A=
  render: function(pos) {=0A=
    if(this.state =3D=3D 'idle') {=0A=
      this.state =3D 'running';=0A=
      this.event('beforeSetup');=0A=
      if(this.setup) this.setup();=0A=
      this.event('afterSetup');=0A=
    }=0A=
    if(this.state =3D=3D 'running') {=0A=
      if(this.options.transition) pos =3D this.options.transition(pos);=0A=
      pos *=3D (this.options.to-this.options.from);=0A=
      pos +=3D this.options.from;=0A=
      this.position =3D pos;=0A=
      this.event('beforeUpdate');=0A=
      if(this.update) this.update(pos);=0A=
      this.event('afterUpdate');=0A=
    }=0A=
  },=0A=
  cancel: function() {=0A=
    if(!this.options.sync)=0A=
      Effect.Queues.get(typeof this.options.queue =3D=3D 'string' ? =0A=
        'global' : this.options.queue.scope).remove(this);=0A=
    this.state =3D 'finished';=0A=
  },=0A=
  event: function(eventName) {=0A=
    if(this.options[eventName + 'Internal']) this.options[eventName + =
'Internal'](this);=0A=
    if(this.options[eventName]) this.options[eventName](this);=0A=
  },=0A=
  inspect: function() {=0A=
    return '#<Effect:' + $H(this).inspect() + ',options:' + =
$H(this.options).inspect() + '>';=0A=
  }=0A=
}=0A=
=0A=
Effect.Parallel =3D Class.create();=0A=
Object.extend(Object.extend(Effect.Parallel.prototype, =
Effect.Base.prototype), {=0A=
  initialize: function(effects) {=0A=
    this.effects =3D effects || [];=0A=
    this.start(arguments[1]);=0A=
  },=0A=
  update: function(position) {=0A=
    this.effects.invoke('render', position);=0A=
  },=0A=
  finish: function(position) {=0A=
    this.effects.each( function(effect) {=0A=
      effect.render(1.0);=0A=
      effect.cancel();=0A=
      effect.event('beforeFinish');=0A=
      if(effect.finish) effect.finish(position);=0A=
      effect.event('afterFinish');=0A=
    });=0A=
  }=0A=
});=0A=
=0A=
Effect.Event =3D Class.create();=0A=
Object.extend(Object.extend(Effect.Event.prototype, =
Effect.Base.prototype), {=0A=
  initialize: function() {=0A=
    var options =3D Object.extend({=0A=
      duration: 0=0A=
    }, arguments[0] || {});=0A=
    this.start(options);=0A=
  },=0A=
  update: Prototype.emptyFunction=0A=
});=0A=
=0A=
Effect.Opacity =3D Class.create();=0A=
Object.extend(Object.extend(Effect.Opacity.prototype, =
Effect.Base.prototype), {=0A=
  initialize: function(element) {=0A=
    this.element =3D $(element);=0A=
    if(!this.element) throw(Effect._elementDoesNotExistError);=0A=
    // make this work on IE on elements without 'layout'=0A=
    if(/MSIE/.test(navigator.userAgent) && !window.opera && =
(!this.element.currentStyle.hasLayout))=0A=
      this.element.setStyle({zoom: 1});=0A=
    var options =3D Object.extend({=0A=
      from: this.element.getOpacity() || 0.0,=0A=
      to:   1.0=0A=
    }, arguments[1] || {});=0A=
    this.start(options);=0A=
  },=0A=
  update: function(position) {=0A=
    this.element.setOpacity(position);=0A=
  }=0A=
});=0A=
=0A=
Effect.Move =3D Class.create();=0A=
Object.extend(Object.extend(Effect.Move.prototype, =
Effect.Base.prototype), {=0A=
  initialize: function(element) {=0A=
    this.element =3D $(element);=0A=
    if(!this.element) throw(Effect._elementDoesNotExistError);=0A=
    var options =3D Object.extend({=0A=
      x:    0,=0A=
      y:    0,=0A=
      mode: 'relative'=0A=
    }, arguments[1] || {});=0A=
    this.start(options);=0A=
  },=0A=
  setup: function() {=0A=
    // Bug in Opera: Opera returns the "real" position of a static =
element or=0A=
    // relative element that does not have top/left explicitly set.=0A=
    // =3D=3D> Always set top and left for position relative elements in =
your stylesheets =0A=
    // (to 0 if you do not need them) =0A=
    this.element.makePositioned();=0A=
    this.originalLeft =3D parseFloat(this.element.getStyle('left') || =
'0');=0A=
    this.originalTop  =3D parseFloat(this.element.getStyle('top')  || =
'0');=0A=
    if(this.options.mode =3D=3D 'absolute') {=0A=
      // absolute movement, so we need to calc deltaX and deltaY=0A=
      this.options.x =3D this.options.x - this.originalLeft;=0A=
      this.options.y =3D this.options.y - this.originalTop;=0A=
    }=0A=
  },=0A=
  update: function(position) {=0A=
    this.element.setStyle({=0A=
      left: Math.round(this.options.x  * position + this.originalLeft) + =
'px',=0A=
      top:  Math.round(this.options.y  * position + this.originalTop)  + =
'px'=0A=
    });=0A=
  }=0A=
});=0A=
=0A=
// for backwards compatibility=0A=
Effect.MoveBy =3D function(element, toTop, toLeft) {=0A=
  return new Effect.Move(element, =0A=
    Object.extend({ x: toLeft, y: toTop }, arguments[3] || {}));=0A=
};=0A=
=0A=
Effect.Scale =3D Class.create();=0A=
Object.extend(Object.extend(Effect.Scale.prototype, =
Effect.Base.prototype), {=0A=
  initialize: function(element, percent) {=0A=
    this.element =3D $(element);=0A=
    if(!this.element) throw(Effect._elementDoesNotExistError);=0A=
    var options =3D Object.extend({=0A=
      scaleX: true,=0A=
      scaleY: true,=0A=
      scaleContent: true,=0A=
      scaleFromCenter: false,=0A=
      scaleMode: 'box',        // 'box' or 'contents' or {} with =
provided values=0A=
      scaleFrom: 100.0,=0A=
      scaleTo:   percent=0A=
    }, arguments[2] || {});=0A=
    this.start(options);=0A=
  },=0A=
  setup: function() {=0A=
    this.restoreAfterFinish =3D this.options.restoreAfterFinish || false;=0A=
    this.elementPositioning =3D this.element.getStyle('position');=0A=
    =0A=
    this.originalStyle =3D {};=0A=
    ['top','left','width','height','fontSize'].each( function(k) {=0A=
      this.originalStyle[k] =3D this.element.style[k];=0A=
    }.bind(this));=0A=
      =0A=
    this.originalTop  =3D this.element.offsetTop;=0A=
    this.originalLeft =3D this.element.offsetLeft;=0A=
    =0A=
    var fontSize =3D this.element.getStyle('font-size') || '100%';=0A=
    ['em','px','%','pt'].each( function(fontSizeType) {=0A=
      if(fontSize.indexOf(fontSizeType)>0) {=0A=
        this.fontSize     =3D parseFloat(fontSize);=0A=
        this.fontSizeType =3D fontSizeType;=0A=
      }=0A=
    }.bind(this));=0A=
    =0A=
    this.factor =3D (this.options.scaleTo - this.options.scaleFrom)/100;=0A=
    =0A=
    this.dims =3D null;=0A=
    if(this.options.scaleMode=3D=3D'box')=0A=
      this.dims =3D [this.element.offsetHeight, =
this.element.offsetWidth];=0A=
    if(/^content/.test(this.options.scaleMode))=0A=
      this.dims =3D [this.element.scrollHeight, =
this.element.scrollWidth];=0A=
    if(!this.dims)=0A=
      this.dims =3D [this.options.scaleMode.originalHeight,=0A=
                   this.options.scaleMode.originalWidth];=0A=
  },=0A=
  update: function(position) {=0A=
    var currentScale =3D (this.options.scaleFrom/100.0) + (this.factor * =
position);=0A=
    if(this.options.scaleContent && this.fontSize)=0A=
      this.element.setStyle({fontSize: this.fontSize * currentScale + =
this.fontSizeType });=0A=
    this.setDimensions(this.dims[0] * currentScale, this.dims[1] * =
currentScale);=0A=
  },=0A=
  finish: function(position) {=0A=
    if(this.restoreAfterFinish) =
this.element.setStyle(this.originalStyle);=0A=
  },=0A=
  setDimensions: function(height, width) {=0A=
    var d =3D {};=0A=
    if(this.options.scaleX) d.width =3D Math.round(width) + 'px';=0A=
    if(this.options.scaleY) d.height =3D Math.round(height) + 'px';=0A=
    if(this.options.scaleFromCenter) {=0A=
      var topd  =3D (height - this.dims[0])/2;=0A=
      var leftd =3D (width  - this.dims[1])/2;=0A=
      if(this.elementPositioning =3D=3D 'absolute') {=0A=
        if(this.options.scaleY) d.top =3D this.originalTop-topd + 'px';=0A=
        if(this.options.scaleX) d.left =3D this.originalLeft-leftd + =
'px';=0A=
      } else {=0A=
        if(this.options.scaleY) d.top =3D -topd + 'px';=0A=
        if(this.options.scaleX) d.left =3D -leftd + 'px';=0A=
      }=0A=
    }=0A=
    this.element.setStyle(d);=0A=
  }=0A=
});=0A=
=0A=
Effect.Highlight =3D Class.create();=0A=
Object.extend(Object.extend(Effect.Highlight.prototype, =
Effect.Base.prototype), {=0A=
  initialize: function(element) {=0A=
    this.element =3D $(element);=0A=
    if(!this.element) throw(Effect._elementDoesNotExistError);=0A=
    var options =3D Object.extend({ startcolor: '#ffff99' }, =
arguments[1] || {});=0A=
    this.start(options);=0A=
  },=0A=
  setup: function() {=0A=
    // Prevent executing on elements not in the layout flow=0A=
    if(this.element.getStyle('display')=3D=3D'none') { this.cancel(); =
return; }=0A=
    // Disable background image during the effect=0A=
    this.oldStyle =3D {=0A=
      backgroundImage: this.element.getStyle('background-image') };=0A=
    this.element.setStyle({backgroundImage: 'none'});=0A=
    if(!this.options.endcolor)=0A=
      this.options.endcolor =3D =
this.element.getStyle('background-color').parseColor('#ffffff');=0A=
    if(!this.options.restorecolor)=0A=
      this.options.restorecolor =3D =
this.element.getStyle('background-color');=0A=
    // init color calculations=0A=
    this._base  =3D $R(0,2).map(function(i){ return =
parseInt(this.options.startcolor.slice(i*2+1,i*2+3),16) }.bind(this));=0A=
    this._delta =3D $R(0,2).map(function(i){ return =
parseInt(this.options.endcolor.slice(i*2+1,i*2+3),16)-this._base[i] =
}.bind(this));=0A=
  },=0A=
  update: function(position) {=0A=
    this.element.setStyle({backgroundColor: =
$R(0,2).inject('#',function(m,v,i){=0A=
      return =
m+(Math.round(this._base[i]+(this._delta[i]*position)).toColorPart()); =
}.bind(this)) });=0A=
  },=0A=
  finish: function() {=0A=
    this.element.setStyle(Object.extend(this.oldStyle, {=0A=
      backgroundColor: this.options.restorecolor=0A=
    }));=0A=
  }=0A=
});=0A=
=0A=
Effect.ScrollTo =3D Class.create();=0A=
Object.extend(Object.extend(Effect.ScrollTo.prototype, =
Effect.Base.prototype), {=0A=
  initialize: function(element) {=0A=
    this.element =3D $(element);=0A=
    this.start(arguments[1] || {});=0A=
  },=0A=
  setup: function() {=0A=
    Position.prepare();=0A=
    var offsets =3D Position.cumulativeOffset(this.element);=0A=
    if(this.options.offset) offsets[1] +=3D this.options.offset;=0A=
    var max =3D window.innerHeight ? =0A=
      window.height - window.innerHeight :=0A=
      document.body.scrollHeight - =0A=
        (document.documentElement.clientHeight ? =0A=
          document.documentElement.clientHeight : =
document.body.clientHeight);=0A=
    this.scrollStart =3D Position.deltaY;=0A=
    this.delta =3D (offsets[1] > max ? max : offsets[1]) - =
this.scrollStart;=0A=
  },=0A=
  update: function(position) {=0A=
    Position.prepare();=0A=
    window.scrollTo(Position.deltaX, =0A=
      this.scrollStart + (position*this.delta));=0A=
  }=0A=
});=0A=
=0A=
/* ------------- combination effects ------------- */=0A=
=0A=
Effect.Fade =3D function(element) {=0A=
  element =3D $(element);=0A=
  var oldOpacity =3D element.getInlineOpacity();=0A=
  var options =3D Object.extend({=0A=
  from: element.getOpacity() || 1.0,=0A=
  to:   0.0,=0A=
  afterFinishInternal: function(effect) { =0A=
    if(effect.options.to!=3D0) return;=0A=
    effect.element.hide().setStyle({opacity: oldOpacity}); =0A=
  }}, arguments[1] || {});=0A=
  return new Effect.Opacity(element,options);=0A=
}=0A=
=0A=
Effect.Appear =3D function(element) {=0A=
  element =3D $(element);=0A=
  var options =3D Object.extend({=0A=
  from: (element.getStyle('display') =3D=3D 'none' ? 0.0 : =
element.getOpacity() || 0.0),=0A=
  to:   1.0,=0A=
  // force Safari to render floated elements properly=0A=
  afterFinishInternal: function(effect) {=0A=
    effect.element.forceRerendering();=0A=
  },=0A=
  beforeSetup: function(effect) {=0A=
    effect.element.setOpacity(effect.options.from).show(); =0A=
  }}, arguments[1] || {});=0A=
  return new Effect.Opacity(element,options);=0A=
}=0A=
=0A=
Effect.Puff =3D function(element) {=0A=
  element =3D $(element);=0A=
  var oldStyle =3D { =0A=
    opacity: element.getInlineOpacity(), =0A=
    position: element.getStyle('position'),=0A=
    top:  element.style.top,=0A=
    left: element.style.left,=0A=
    width: element.style.width,=0A=
    height: element.style.height=0A=
  };=0A=
  return new Effect.Parallel(=0A=
   [ new Effect.Scale(element, 200, =0A=
      { sync: true, scaleFromCenter: true, scaleContent: true, =
restoreAfterFinish: true }), =0A=
     new Effect.Opacity(element, { sync: true, to: 0.0 } ) ], =0A=
     Object.extend({ duration: 1.0, =0A=
      beforeSetupInternal: function(effect) {=0A=
        Position.absolutize(effect.effects[0].element)=0A=
      },=0A=
      afterFinishInternal: function(effect) {=0A=
         effect.effects[0].element.hide().setStyle(oldStyle); }=0A=
     }, arguments[1] || {})=0A=
   );=0A=
}=0A=
=0A=
Effect.BlindUp =3D function(element) {=0A=
  element =3D $(element);=0A=
  element.makeClipping();=0A=
  return new Effect.Scale(element, 0,=0A=
    Object.extend({ scaleContent: false, =0A=
      scaleX: false, =0A=
      restoreAfterFinish: true,=0A=
      afterFinishInternal: function(effect) {=0A=
        effect.element.hide().undoClipping();=0A=
      } =0A=
    }, arguments[1] || {})=0A=
  );=0A=
}=0A=
=0A=
Effect.BlindDown =3D function(element) {=0A=
  element =3D $(element);=0A=
  var elementDimensions =3D element.getDimensions();=0A=
  return new Effect.Scale(element, 100, Object.extend({ =0A=
    scaleContent: false, =0A=
    scaleX: false,=0A=
    scaleFrom: 0,=0A=
    scaleMode: {originalHeight: elementDimensions.height, originalWidth: =
elementDimensions.width},=0A=
    restoreAfterFinish: true,=0A=
    afterSetup: function(effect) {=0A=
      effect.element.makeClipping().setStyle({height: '0px'}).show(); =0A=
    },  =0A=
    afterFinishInternal: function(effect) {=0A=
      effect.element.undoClipping();=0A=
    }=0A=
  }, arguments[1] || {}));=0A=
}=0A=
=0A=
Effect.SwitchOff =3D function(element) {=0A=
  element =3D $(element);=0A=
  var oldOpacity =3D element.getInlineOpacity();=0A=
  return new Effect.Appear(element, Object.extend({=0A=
    duration: 0.4,=0A=
    from: 0,=0A=
    transition: Effect.Transitions.flicker,=0A=
    afterFinishInternal: function(effect) {=0A=
      new Effect.Scale(effect.element, 1, { =0A=
        duration: 0.3, scaleFromCenter: true,=0A=
        scaleX: false, scaleContent: false, restoreAfterFinish: true,=0A=
        beforeSetup: function(effect) { =0A=
          effect.element.makePositioned().makeClipping();=0A=
        },=0A=
        afterFinishInternal: function(effect) {=0A=
          =
effect.element.hide().undoClipping().undoPositioned().setStyle({opacity: =
oldOpacity});=0A=
        }=0A=
      })=0A=
    }=0A=
  }, arguments[1] || {}));=0A=
}=0A=
=0A=
Effect.DropOut =3D function(element) {=0A=
  element =3D $(element);=0A=
  var oldStyle =3D {=0A=
    top: element.getStyle('top'),=0A=
    left: element.getStyle('left'),=0A=
    opacity: element.getInlineOpacity() };=0A=
  return new Effect.Parallel(=0A=
    [ new Effect.Move(element, {x: 0, y: 100, sync: true }), =0A=
      new Effect.Opacity(element, { sync: true, to: 0.0 }) ],=0A=
    Object.extend(=0A=
      { duration: 0.5,=0A=
        beforeSetup: function(effect) {=0A=
          effect.effects[0].element.makePositioned(); =0A=
        },=0A=
        afterFinishInternal: function(effect) {=0A=
          =
effect.effects[0].element.hide().undoPositioned().setStyle(oldStyle);=0A=
        } =0A=
      }, arguments[1] || {}));=0A=
}=0A=
=0A=
Effect.Shake =3D function(element) {=0A=
  element =3D $(element);=0A=
  var oldStyle =3D {=0A=
    top: element.getStyle('top'),=0A=
    left: element.getStyle('left') };=0A=
    return new Effect.Move(element, =0A=
      { x:  20, y: 0, duration: 0.05, afterFinishInternal: =
function(effect) {=0A=
    new Effect.Move(effect.element,=0A=
      { x: -40, y: 0, duration: 0.1,  afterFinishInternal: =
function(effect) {=0A=
    new Effect.Move(effect.element,=0A=
      { x:  40, y: 0, duration: 0.1,  afterFinishInternal: =
function(effect) {=0A=
    new Effect.Move(effect.element,=0A=
      { x: -40, y: 0, duration: 0.1,  afterFinishInternal: =
function(effect) {=0A=
    new Effect.Move(effect.element,=0A=
      { x:  40, y: 0, duration: 0.1,  afterFinishInternal: =
function(effect) {=0A=
    new Effect.Move(effect.element,=0A=
      { x: -20, y: 0, duration: 0.05, afterFinishInternal: =
function(effect) {=0A=
        effect.element.undoPositioned().setStyle(oldStyle);=0A=
  }}) }}) }}) }}) }}) }});=0A=
}=0A=
=0A=
Effect.SlideDown =3D function(element) {=0A=
  element =3D $(element).cleanWhitespace();=0A=
  // SlideDown need to have the content of the element wrapped in a =
container element with fixed height!=0A=
  var oldInnerBottom =3D element.down().getStyle('bottom');=0A=
  var elementDimensions =3D element.getDimensions();=0A=
  return new Effect.Scale(element, 100, Object.extend({ =0A=
    scaleContent: false, =0A=
    scaleX: false, =0A=
    scaleFrom: window.opera ? 0 : 1,=0A=
    scaleMode: {originalHeight: elementDimensions.height, originalWidth: =
elementDimensions.width},=0A=
    restoreAfterFinish: true,=0A=
    afterSetup: function(effect) {=0A=
      effect.element.makePositioned();=0A=
      effect.element.down().makePositioned();=0A=
      if(window.opera) effect.element.setStyle({top: ''});=0A=
      effect.element.makeClipping().setStyle({height: '0px'}).show(); =0A=
    },=0A=
    afterUpdateInternal: function(effect) {=0A=
      effect.element.down().setStyle({bottom:=0A=
        (effect.dims[0] - effect.element.clientHeight) + 'px' }); =0A=
    },=0A=
    afterFinishInternal: function(effect) {=0A=
      effect.element.undoClipping().undoPositioned();=0A=
      effect.element.down().undoPositioned().setStyle({bottom: =
oldInnerBottom}); }=0A=
    }, arguments[1] || {})=0A=
  );=0A=
}=0A=
=0A=
Effect.SlideUp =3D function(element) {=0A=
  element =3D $(element).cleanWhitespace();=0A=
  var oldInnerBottom =3D element.down().getStyle('bottom');=0A=
  return new Effect.Scale(element, window.opera ? 0 : 1,=0A=
   Object.extend({ scaleContent: false, =0A=
    scaleX: false, =0A=
    scaleMode: 'box',=0A=
    scaleFrom: 100,=0A=
    restoreAfterFinish: true,=0A=
    beforeStartInternal: function(effect) {=0A=
      effect.element.makePositioned();=0A=
      effect.element.down().makePositioned();=0A=
      if(window.opera) effect.element.setStyle({top: ''});=0A=
      effect.element.makeClipping().show();=0A=
    },  =0A=
    afterUpdateInternal: function(effect) {=0A=
      effect.element.down().setStyle({bottom:=0A=
        (effect.dims[0] - effect.element.clientHeight) + 'px' });=0A=
    },=0A=
    afterFinishInternal: function(effect) {=0A=
      =
effect.element.hide().undoClipping().undoPositioned().setStyle({bottom: =
oldInnerBottom});=0A=
      effect.element.down().undoPositioned();=0A=
    }=0A=
   }, arguments[1] || {})=0A=
  );=0A=
}=0A=
=0A=
// Bug in opera makes the TD containing this element expand for a =
instance after finish =0A=
Effect.Squish =3D function(element) {=0A=
  return new Effect.Scale(element, window.opera ? 1 : 0, { =0A=
    restoreAfterFinish: true,=0A=
    beforeSetup: function(effect) {=0A=
      effect.element.makeClipping(); =0A=
    },  =0A=
    afterFinishInternal: function(effect) {=0A=
      effect.element.hide().undoClipping(); =0A=
    }=0A=
  });=0A=
}=0A=
=0A=
Effect.Grow =3D function(element) {=0A=
  element =3D $(element);=0A=
  var options =3D Object.extend({=0A=
    direction: 'center',=0A=
    moveTransition: Effect.Transitions.sinoidal,=0A=
    scaleTransition: Effect.Transitions.sinoidal,=0A=
    opacityTransition: Effect.Transitions.full=0A=
  }, arguments[1] || {});=0A=
  var oldStyle =3D {=0A=
    top: element.style.top,=0A=
    left: element.style.left,=0A=
    height: element.style.height,=0A=
    width: element.style.width,=0A=
    opacity: element.getInlineOpacity() };=0A=
=0A=
  var dims =3D element.getDimensions();    =0A=
  var initialMoveX, initialMoveY;=0A=
  var moveX, moveY;=0A=
  =0A=
  switch (options.direction) {=0A=
    case 'top-left':=0A=
      initialMoveX =3D initialMoveY =3D moveX =3D moveY =3D 0; =0A=
      break;=0A=
    case 'top-right':=0A=
      initialMoveX =3D dims.width;=0A=
      initialMoveY =3D moveY =3D 0;=0A=
      moveX =3D -dims.width;=0A=
      break;=0A=
    case 'bottom-left':=0A=
      initialMoveX =3D moveX =3D 0;=0A=
      initialMoveY =3D dims.height;=0A=
      moveY =3D -dims.height;=0A=
      break;=0A=
    case 'bottom-right':=0A=
      initialMoveX =3D dims.width;=0A=
      initialMoveY =3D dims.height;=0A=
      moveX =3D -dims.width;=0A=
      moveY =3D -dims.height;=0A=
      break;=0A=
    case 'center':=0A=
      initialMoveX =3D dims.width / 2;=0A=
      initialMoveY =3D dims.height / 2;=0A=
      moveX =3D -dims.width / 2;=0A=
      moveY =3D -dims.height / 2;=0A=
      break;=0A=
  }=0A=
  =0A=
  return new Effect.Move(element, {=0A=
    x: initialMoveX,=0A=
    y: initialMoveY,=0A=
    duration: 0.01, =0A=
    beforeSetup: function(effect) {=0A=
      effect.element.hide().makeClipping().makePositioned();=0A=
    },=0A=
    afterFinishInternal: function(effect) {=0A=
      new Effect.Parallel(=0A=
        [ new Effect.Opacity(effect.element, { sync: true, to: 1.0, =
from: 0.0, transition: options.opacityTransition }),=0A=
          new Effect.Move(effect.element, { x: moveX, y: moveY, sync: =
true, transition: options.moveTransition }),=0A=
          new Effect.Scale(effect.element, 100, {=0A=
            scaleMode: { originalHeight: dims.height, originalWidth: =
dims.width }, =0A=
            sync: true, scaleFrom: window.opera ? 1 : 0, transition: =
options.scaleTransition, restoreAfterFinish: true})=0A=
        ], Object.extend({=0A=
             beforeSetup: function(effect) {=0A=
               effect.effects[0].element.setStyle({height: =
'0px'}).show(); =0A=
             },=0A=
             afterFinishInternal: function(effect) {=0A=
               =
effect.effects[0].element.undoClipping().undoPositioned().setStyle(oldSty=
le); =0A=
             }=0A=
           }, options)=0A=
      )=0A=
    }=0A=
  });=0A=
}=0A=
=0A=
Effect.Shrink =3D function(element) {=0A=
  element =3D $(element);=0A=
  var options =3D Object.extend({=0A=
    direction: 'center',=0A=
    moveTransition: Effect.Transitions.sinoidal,=0A=
    scaleTransition: Effect.Transitions.sinoidal,=0A=
    opacityTransition: Effect.Transitions.none=0A=
  }, arguments[1] || {});=0A=
  var oldStyle =3D {=0A=
    top: element.style.top,=0A=
    left: element.style.left,=0A=
    height: element.style.height,=0A=
    width: element.style.width,=0A=
    opacity: element.getInlineOpacity() };=0A=
=0A=
  var dims =3D element.getDimensions();=0A=
  var moveX, moveY;=0A=
  =0A=
  switch (options.direction) {=0A=
    case 'top-left':=0A=
      moveX =3D moveY =3D 0;=0A=
      break;=0A=
    case 'top-right':=0A=
      moveX =3D dims.width;=0A=
      moveY =3D 0;=0A=
      break;=0A=
    case 'bottom-left':=0A=
      moveX =3D 0;=0A=
      moveY =3D dims.height;=0A=
      break;=0A=
    case 'bottom-right':=0A=
      moveX =3D dims.width;=0A=
      moveY =3D dims.height;=0A=
      break;=0A=
    case 'center':  =0A=
      moveX =3D dims.width / 2;=0A=
      moveY =3D dims.height / 2;=0A=
      break;=0A=
  }=0A=
  =0A=
  return new Effect.Parallel(=0A=
    [ new Effect.Opacity(element, { sync: true, to: 0.0, from: 1.0, =
transition: options.opacityTransition }),=0A=
      new Effect.Scale(element, window.opera ? 1 : 0, { sync: true, =
transition: options.scaleTransition, restoreAfterFinish: true}),=0A=
      new Effect.Move(element, { x: moveX, y: moveY, sync: true, =
transition: options.moveTransition })=0A=
    ], Object.extend({            =0A=
         beforeStartInternal: function(effect) {=0A=
           effect.effects[0].element.makePositioned().makeClipping(); =0A=
         },=0A=
         afterFinishInternal: function(effect) {=0A=
           =
effect.effects[0].element.hide().undoClipping().undoPositioned().setStyle=
(oldStyle); }=0A=
       }, options)=0A=
  );=0A=
}=0A=
=0A=
Effect.Pulsate =3D function(element) {=0A=
  element =3D $(element);=0A=
  var options    =3D arguments[1] || {};=0A=
  var oldOpacity =3D element.getInlineOpacity();=0A=
  var transition =3D options.transition || Effect.Transitions.sinoidal;=0A=
  var reverser   =3D function(pos){ return =
transition(1-Effect.Transitions.pulse(pos, options.pulses)) };=0A=
  reverser.bind(transition);=0A=
  return new Effect.Opacity(element, =0A=
    Object.extend(Object.extend({  duration: 2.0, from: 0,=0A=
      afterFinishInternal: function(effect) { =
effect.element.setStyle({opacity: oldOpacity}); }=0A=
    }, options), {transition: reverser}));=0A=
}=0A=
=0A=
Effect.Fold =3D function(element) {=0A=
  element =3D $(element);=0A=
  var oldStyle =3D {=0A=
    top: element.style.top,=0A=
    left: element.style.left,=0A=
    width: element.style.width,=0A=
    height: element.style.height };=0A=
  element.makeClipping();=0A=
  return new Effect.Scale(element, 5, Object.extend({   =0A=
    scaleContent: false,=0A=
    scaleX: false,=0A=
    afterFinishInternal: function(effect) {=0A=
    new Effect.Scale(element, 1, { =0A=
      scaleContent: false, =0A=
      scaleY: false,=0A=
      afterFinishInternal: function(effect) {=0A=
        effect.element.hide().undoClipping().setStyle(oldStyle);=0A=
      } });=0A=
  }}, arguments[1] || {}));=0A=
};=0A=
=0A=
Effect.Morph =3D Class.create();=0A=
Object.extend(Object.extend(Effect.Morph.prototype, =
Effect.Base.prototype), {=0A=
  initialize: function(element) {=0A=
    this.element =3D $(element);=0A=
    if(!this.element) throw(Effect._elementDoesNotExistError);=0A=
    var options =3D Object.extend({=0A=
      style: ''=0A=
    }, arguments[1] || {});=0A=
    this.start(options);=0A=
  },=0A=
  setup: function(){=0A=
    function parseColor(color){=0A=
      if(!color || ['rgba(0, 0, 0, 0)','transparent'].include(color)) =
color =3D '#ffffff';=0A=
      color =3D color.parseColor();=0A=
      return $R(0,2).map(function(i){=0A=
        return parseInt( color.slice(i*2+1,i*2+3), 16 ) =0A=
      });=0A=
    }=0A=
    this.transforms =3D =
this.options.style.parseStyle().map(function(property){=0A=
      var originalValue =3D this.element.getStyle(property[0]);=0A=
      return $H({ =0A=
        style: property[0], =0A=
        originalValue: property[1].unit=3D=3D'color' ? =0A=
          parseColor(originalValue) : parseFloat(originalValue || 0), =0A=
        targetValue: property[1].unit=3D=3D'color' ? =0A=
          parseColor(property[1].value) : property[1].value,=0A=
        unit: property[1].unit=0A=
      });=0A=
    }.bind(this)).reject(function(transform){=0A=
      return (=0A=
        (transform.originalValue =3D=3D transform.targetValue) ||=0A=
        (=0A=
          transform.unit !=3D 'color' &&=0A=
          (isNaN(transform.originalValue) || =
isNaN(transform.targetValue))=0A=
        )=0A=
      )=0A=
    });=0A=
  },=0A=
  update: function(position) {=0A=
    var style =3D $H(), value =3D null;=0A=
    this.transforms.each(function(transform){=0A=
      value =3D transform.unit=3D=3D'color' ?=0A=
        $R(0,2).inject('#',function(m,v,i){=0A=
          return m+(Math.round(transform.originalValue[i]+=0A=
            (transform.targetValue[i] - =
transform.originalValue[i])*position)).toColorPart() }) : =0A=
        transform.originalValue + Math.round(=0A=
          ((transform.targetValue - transform.originalValue) * position) =
* 1000)/1000 + transform.unit;=0A=
      style[transform.style] =3D value;=0A=
    });=0A=
    this.element.setStyle(style);=0A=
  }=0A=
});=0A=
=0A=
Effect.Transform =3D Class.create();=0A=
Object.extend(Effect.Transform.prototype, {=0A=
  initialize: function(tracks){=0A=
    this.tracks  =3D [];=0A=
    this.options =3D arguments[1] || {};=0A=
    this.addTracks(tracks);=0A=
  },=0A=
  addTracks: function(tracks){=0A=
    tracks.each(function(track){=0A=
      var data =3D $H(track).values().first();=0A=
      this.tracks.push($H({=0A=
        ids:     $H(track).keys().first(),=0A=
        effect:  Effect.Morph,=0A=
        options: { style: data }=0A=
      }));=0A=
    }.bind(this));=0A=
    return this;=0A=
  },=0A=
  play: function(){=0A=
    return new Effect.Parallel(=0A=
      this.tracks.map(function(track){=0A=
        var elements =3D [$(track.ids) || $$(track.ids)].flatten();=0A=
        return elements.map(function(e){ return new track.effect(e, =
Object.extend({ sync:true }, track.options)) });=0A=
      }).flatten(),=0A=
      this.options=0A=
    );=0A=
  }=0A=
});=0A=
=0A=
Element.CSS_PROPERTIES =3D ['azimuth', 'backgroundAttachment', =
'backgroundColor', 'backgroundImage', =0A=
  'backgroundPosition', 'backgroundRepeat', 'borderBottomColor', =
'borderBottomStyle', =0A=
  'borderBottomWidth', 'borderCollapse', 'borderLeftColor', =
'borderLeftStyle', 'borderLeftWidth',=0A=
  'borderRightColor', 'borderRightStyle', 'borderRightWidth', =
'borderSpacing', 'borderTopColor',=0A=
  'borderTopStyle', 'borderTopWidth', 'bottom', 'captionSide', 'clear', =
'clip', 'color', 'content',=0A=
  'counterIncrement', 'counterReset', 'cssFloat', 'cueAfter', =
'cueBefore', 'cursor', 'direction',=0A=
  'display', 'elevation', 'emptyCells', 'fontFamily', 'fontSize', =
'fontSizeAdjust', 'fontStretch',=0A=
  'fontStyle', 'fontVariant', 'fontWeight', 'height', 'left', =
'letterSpacing', 'lineHeight',=0A=
  'listStyleImage', 'listStylePosition', 'listStyleType', =
'marginBottom', 'marginLeft', 'marginRight',=0A=
  'marginTop', 'markerOffset', 'marks', 'maxHeight', 'maxWidth', =
'minHeight', 'minWidth', 'opacity',=0A=
  'orphans', 'outlineColor', 'outlineOffset', 'outlineStyle', =
'outlineWidth', 'overflowX', 'overflowY',=0A=
  'paddingBottom', 'paddingLeft', 'paddingRight', 'paddingTop', 'page', =
'pageBreakAfter', 'pageBreakBefore',=0A=
  'pageBreakInside', 'pauseAfter', 'pauseBefore', 'pitch', 'pitchRange', =
'position', 'quotes',=0A=
  'richness', 'right', 'size', 'speakHeader', 'speakNumeral', =
'speakPunctuation', 'speechRate', 'stress',=0A=
  'tableLayout', 'textAlign', 'textDecoration', 'textIndent', =
'textShadow', 'textTransform', 'top',=0A=
  'unicodeBidi', 'verticalAlign', 'visibility', 'voiceFamily', 'volume', =
'whiteSpace', 'widows',=0A=
  'width', 'wordSpacing', 'zIndex'];=0A=
  =0A=
Element.CSS_LENGTH =3D =
/^(([\+\-]?[0-9\.]+)(em|ex|px|in|cm|mm|pt|pc|\%))|0$/;=0A=
=0A=
String.prototype.parseStyle =3D function(){=0A=
  var element =3D Element.extend(document.createElement('div'));=0A=
  element.innerHTML =3D '<div style=3D"' + this + '"></div>';=0A=
  var style =3D element.down().style, styleRules =3D $H();=0A=
  =0A=
  Element.CSS_PROPERTIES.each(function(property){=0A=
   if(style[property]) styleRules[property] =3D style[property]; =0A=
  });=0A=
  =0A=
  var result =3D $H();=0A=
  =0A=
  styleRules.each(function(pair){=0A=
    var property =3D pair[0], value =3D pair[1], unit =3D null;=0A=
    =0A=
    if(value.parseColor('#zzzzzz') !=3D '#zzzzzz') {=0A=
      value =3D value.parseColor();=0A=
      unit  =3D 'color';=0A=
    } else if(Element.CSS_LENGTH.test(value)) =0A=
      var components =3D value.match(/^([\+\-]?[0-9\.]+)(.*)$/),=0A=
          value =3D parseFloat(components[1]), unit =3D =
(components.length =3D=3D 3) ? components[2] : null;=0A=
    =0A=
    result[property.underscore().dasherize()] =3D $H({ value:value, =
unit:unit });=0A=
  }.bind(this));=0A=
  =0A=
  return result;=0A=
};=0A=
=0A=
Element.morph =3D function(element, style) {=0A=
  new Effect.Morph(element, Object.extend({ style: style }, arguments[2] =
|| {}));=0A=
  return element;=0A=
};=0A=
=0A=
['setOpacity','getOpacity','getInlineOpacity','forceRerendering','setCont=
entZoom',=0A=
 'collectTextNodes','collectTextNodesIgnoreClass','morph'].each( =0A=
  function(f) { Element.Methods[f] =3D Element[f]; }=0A=
);=0A=
=0A=
Element.Methods.visualEffect =3D function(element, effect, options) {=0A=
  s =3D effect.gsub(/_/, '-').camelize();=0A=
  effect_class =3D s.charAt(0).toUpperCase() + s.substring(1);=0A=
  new Effect[effect_class](element, options);=0A=
  return $(element);=0A=
};=0A=
=0A=
Element.addMethods();
------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.aluka.org/templates/jsp/_aluka/jsc/sys/dom_popup/dragdrop.js

// Copyright (c) 2005, 2006 Thomas Fuchs (http://script.aculo.us, =
http://mir.aculo.us)=0A=
//           (c) 2005, 2006 Sammi Williams =
(http://www.oriontransfer.co.nz, sammi@oriontransfer.co.nz)=0A=
// =0A=
// script.aculo.us is freely distributable under the terms of an =
MIT-style license.=0A=
// For details, see the script.aculo.us web site: http://script.aculo.us/=0A=
=0A=
if(typeof Effect =3D=3D 'undefined')=0A=
  throw("dragdrop.js requires including script.aculo.us' effects.js =
library");=0A=
=0A=
var Droppables =3D {=0A=
  drops: [],=0A=
=0A=
  remove: function(element) {=0A=
    this.drops =3D this.drops.reject(function(d) { return =
d.element=3D=3D$(element) });=0A=
  },=0A=
=0A=
  add: function(element) {=0A=
    element =3D $(element);=0A=
    var options =3D Object.extend({=0A=
      greedy:     true,=0A=
      hoverclass: null,=0A=
      tree:       false=0A=
    }, arguments[1] || {});=0A=
=0A=
    // cache containers=0A=
    if(options.containment) {=0A=
      options._containers =3D [];=0A=
      var containment =3D options.containment;=0A=
      if((typeof containment =3D=3D 'object') && =0A=
        (containment.constructor =3D=3D Array)) {=0A=
        containment.each( function(c) { options._containers.push($(c)) =
});=0A=
      } else {=0A=
        options._containers.push($(containment));=0A=
      }=0A=
    }=0A=
    =0A=
    if(options.accept) options.accept =3D [options.accept].flatten();=0A=
=0A=
    Element.makePositioned(element); // fix IE=0A=
    options.element =3D element;=0A=
=0A=
    this.drops.push(options);=0A=
  },=0A=
  =0A=
  findDeepestChild: function(drops) {=0A=
    deepest =3D drops[0];=0A=
      =0A=
    for (i =3D 1; i < drops.length; ++i)=0A=
      if (Element.isParent(drops[i].element, deepest.element))=0A=
        deepest =3D drops[i];=0A=
    =0A=
    return deepest;=0A=
  },=0A=
=0A=
  isContained: function(element, drop) {=0A=
    var containmentNode;=0A=
    if(drop.tree) {=0A=
      containmentNode =3D element.treeNode; =0A=
    } else {=0A=
      containmentNode =3D element.parentNode;=0A=
    }=0A=
    return drop._containers.detect(function(c) { return containmentNode =
=3D=3D c });=0A=
  },=0A=
  =0A=
  isAffected: function(point, element, drop) {=0A=
    return (=0A=
      (drop.element!=3Delement) &&=0A=
      ((!drop._containers) ||=0A=
        this.isContained(element, drop)) &&=0A=
      ((!drop.accept) ||=0A=
        (Element.classNames(element).detect( =0A=
          function(v) { return drop.accept.include(v) } ) )) &&=0A=
      Position.within(drop.element, point[0], point[1]) );=0A=
  },=0A=
=0A=
  deactivate: function(drop) {=0A=
    if(drop.hoverclass)=0A=
      Element.removeClassName(drop.element, drop.hoverclass);=0A=
    this.last_active =3D null;=0A=
  },=0A=
=0A=
  activate: function(drop) {=0A=
    if(drop.hoverclass)=0A=
      Element.addClassName(drop.element, drop.hoverclass);=0A=
    this.last_active =3D drop;=0A=
  },=0A=
=0A=
  show: function(point, element) {=0A=
    if(!this.drops.length) return;=0A=
    var affected =3D [];=0A=
    =0A=
    if(this.last_active) this.deactivate(this.last_active);=0A=
    this.drops.each( function(drop) {=0A=
      if(Droppables.isAffected(point, element, drop))=0A=
        affected.push(drop);=0A=
    });=0A=
        =0A=
    if(affected.length>0) {=0A=
      drop =3D Droppables.findDeepestChild(affected);=0A=
      Position.within(drop.element, point[0], point[1]);=0A=
      if(drop.onHover)=0A=
        drop.onHover(element, drop.element, =
Position.overlap(drop.overlap, drop.element));=0A=
      =0A=
      Droppables.activate(drop);=0A=
    }=0A=
  },=0A=
=0A=
  fire: function(event, element) {=0A=
    if(!this.last_active) return;=0A=
    Position.prepare();=0A=
=0A=
    if (this.isAffected([Event.pointerX(event), Event.pointerY(event)], =
element, this.last_active))=0A=
      if (this.last_active.onDrop) =0A=
        this.last_active.onDrop(element, this.last_active.element, =
event);=0A=
  },=0A=
=0A=
  reset: function() {=0A=
    if(this.last_active)=0A=
      this.deactivate(this.last_active);=0A=
  }=0A=
}=0A=
=0A=
var Draggables =3D {=0A=
  drags: [],=0A=
  observers: [],=0A=
  =0A=
  register: function(draggable) {=0A=
    if(this.drags.length =3D=3D 0) {=0A=
      this.eventMouseUp   =3D this.endDrag.bindAsEventListener(this);=0A=
      this.eventMouseMove =3D this.updateDrag.bindAsEventListener(this);=0A=
      this.eventKeypress  =3D this.keyPress.bindAsEventListener(this);=0A=
      =0A=
      Event.observe(document, "mouseup", this.eventMouseUp);=0A=
      Event.observe(document, "mousemove", this.eventMouseMove);=0A=
      Event.observe(document, "keypress", this.eventKeypress);=0A=
    }=0A=
    this.drags.push(draggable);=0A=
  },=0A=
  =0A=
  unregister: function(draggable) {=0A=
    this.drags =3D this.drags.reject(function(d) { return =
d=3D=3Ddraggable });=0A=
    if(this.drags.length =3D=3D 0) {=0A=
      Event.stopObserving(document, "mouseup", this.eventMouseUp);=0A=
      Event.stopObserving(document, "mousemove", this.eventMouseMove);=0A=
      Event.stopObserving(document, "keypress", this.eventKeypress);=0A=
    }=0A=
  },=0A=
  =0A=
  activate: function(draggable) {=0A=
    if(draggable.options.delay) { =0A=
      this._timeout =3D setTimeout(function() { =0A=
        Draggables._timeout =3D null; =0A=
        window.focus(); =0A=
        Draggables.activeDraggable =3D draggable; =0A=
      }.bind(this), draggable.options.delay); =0A=
    } else {=0A=
      window.focus(); // allows keypress events if window isn't =
currently focused, fails for Safari=0A=
      this.activeDraggable =3D draggable;=0A=
    }=0A=
  },=0A=
  =0A=
  deactivate: function() {=0A=
    this.activeDraggable =3D null;=0A=
  },=0A=
  =0A=
  updateDrag: function(event) {=0A=
    if(!this.activeDraggable) return;=0A=
    var pointer =3D [Event.pointerX(event), Event.pointerY(event)];=0A=
    // Mozilla-based browsers fire successive mousemove events with=0A=
    // the same coordinates, prevent needless redrawing (moz bug?)=0A=
    if(this._lastPointer && (this._lastPointer.inspect() =3D=3D =
pointer.inspect())) return;=0A=
    this._lastPointer =3D pointer;=0A=
    =0A=
    this.activeDraggable.updateDrag(event, pointer);=0A=
  },=0A=
  =0A=
  endDrag: function(event) {=0A=
    if(this._timeout) { =0A=
      clearTimeout(this._timeout); =0A=
      this._timeout =3D null; =0A=
    }=0A=
    if(!this.activeDraggable) return;=0A=
    this._lastPointer =3D null;=0A=
    this.activeDraggable.endDrag(event);=0A=
    this.activeDraggable =3D null;=0A=
  },=0A=
  =0A=
  keyPress: function(event) {=0A=
    if(this.activeDraggable)=0A=
      this.activeDraggable.keyPress(event);=0A=
  },=0A=
  =0A=
  addObserver: function(observer) {=0A=
    this.observers.push(observer);=0A=
    this._cacheObserverCallbacks();=0A=
  },=0A=
  =0A=
  removeObserver: function(element) {  // element instead of observer =
fixes mem leaks=0A=
    this.observers =3D this.observers.reject( function(o) { return =
o.element=3D=3Delement });=0A=
    this._cacheObserverCallbacks();=0A=
  },=0A=
  =0A=
  notify: function(eventName, draggable, event) {  // 'onStart', =
'onEnd', 'onDrag'=0A=
    if(this[eventName+'Count'] > 0)=0A=
      this.observers.each( function(o) {=0A=
        if(o[eventName]) o[eventName](eventName, draggable, event);=0A=
      });=0A=
    if(draggable.options[eventName]) =
draggable.options[eventName](draggable, event);=0A=
  },=0A=
  =0A=
  _cacheObserverCallbacks: function() {=0A=
    ['onStart','onEnd','onDrag'].each( function(eventName) {=0A=
      Draggables[eventName+'Count'] =3D Draggables.observers.select(=0A=
        function(o) { return o[eventName]; }=0A=
      ).length;=0A=
    });=0A=
  }=0A=
}=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
var Draggable =3D Class.create();=0A=
Draggable._dragging    =3D {};=0A=
=0A=
Draggable.prototype =3D {=0A=
  initialize: function(element) {=0A=
    var defaults =3D {=0A=
      handle: false,=0A=
      reverteffect: function(element, top_offset, left_offset) {=0A=
        var dur =3D =
Math.sqrt(Math.abs(top_offset^2)+Math.abs(left_offset^2))*0.02;=0A=
        new Effect.Move(element, { x: -left_offset, y: -top_offset, =
duration: dur,=0A=
          queue: {scope:'_draggable', position:'end'}=0A=
        });=0A=
      },=0A=
      endeffect: function(element) {=0A=
        var toOpacity =3D typeof element._opacity =3D=3D 'number' ? =
element._opacity : 1.0;=0A=
        new Effect.Opacity(element, {duration:0.2, from:0.7, =
to:toOpacity, =0A=
          queue: {scope:'_draggable', position:'end'},=0A=
          afterFinish: function(){ =0A=
            Draggable._dragging[element] =3D false =0A=
          }=0A=
        }); =0A=
      },=0A=
      zindex: 1000,=0A=
      revert: false,=0A=
      scroll: false,=0A=
      scrollSensitivity: 20,=0A=
      scrollSpeed: 15,=0A=
      snap: false,  // false, or xy or [x,y] or function(x,y){ return =
[x,y] }=0A=
      delay: 0=0A=
    };=0A=
    =0A=
    if(!arguments[1] || typeof arguments[1].endeffect =3D=3D 'undefined')=0A=
      Object.extend(defaults, {=0A=
        starteffect: function(element) {=0A=
          element._opacity =3D Element.getOpacity(element);=0A=
          Draggable._dragging[element] =3D true;=0A=
          new Effect.Opacity(element, {duration:0.2, =
from:element._opacity, to:0.7}); =0A=
        }=0A=
      });=0A=
    =0A=
    var options =3D Object.extend(defaults, arguments[1] || {});=0A=
=0A=
    this.element =3D $(element);=0A=
    =0A=
    if(options.handle && (typeof options.handle =3D=3D 'string'))=0A=
      this.handle =3D this.element.down('.'+options.handle, 0);=0A=
    =0A=
    if(!this.handle) this.handle =3D $(options.handle);=0A=
    if(!this.handle) this.handle =3D this.element;=0A=
    =0A=
    if(options.scroll && !options.scroll.scrollTo && =
!options.scroll.outerHTML) {=0A=
      options.scroll =3D $(options.scroll);=0A=
      this._isScrollChild =3D Element.childOf(this.element, =
options.scroll);=0A=
    }=0A=
=0A=
    Element.makePositioned(this.element); // fix IE    =0A=
=0A=
    this.delta    =3D this.currentDelta();=0A=
    this.options  =3D options;=0A=
    this.dragging =3D false;   =0A=
=0A=
    this.eventMouseDown =3D this.initDrag.bindAsEventListener(this);=0A=
    Event.observe(this.handle, "mousedown", this.eventMouseDown);=0A=
    =0A=
    Draggables.register(this);=0A=
  },=0A=
  =0A=
  destroy: function() {=0A=
    Event.stopObserving(this.handle, "mousedown", this.eventMouseDown);=0A=
    Draggables.unregister(this);=0A=
  },=0A=
  =0A=
  currentDelta: function() {=0A=
    return([=0A=
      parseInt(Element.getStyle(this.element,'left') || '0'),=0A=
      parseInt(Element.getStyle(this.element,'top') || '0')]);=0A=
  },=0A=
  =0A=
  initDrag: function(event) {=0A=
    if(typeof Draggable._dragging[this.element] !=3D 'undefined' &&=0A=
      Draggable._dragging[this.element]) return;=0A=
    if(Event.isLeftClick(event)) {    =0A=
      // abort on form elements, fixes a Firefox issue=0A=
      var src =3D Event.element(event);=0A=
      if(src.tagName && (=0A=
        src.tagName=3D=3D'INPUT' ||=0A=
        src.tagName=3D=3D'SELECT' ||=0A=
        src.tagName=3D=3D'OPTION' ||=0A=
        src.tagName=3D=3D'BUTTON' ||=0A=
        src.tagName=3D=3D'TEXTAREA')) return;=0A=
        =0A=
      var pointer =3D [Event.pointerX(event), Event.pointerY(event)];=0A=
      var pos     =3D Position.cumulativeOffset(this.element);=0A=
      this.offset =3D [0,1].map( function(i) { return (pointer[i] - =
pos[i]) });=0A=
      =0A=
      Draggables.activate(this);=0A=
      Event.stop(event);=0A=
    }=0A=
  },=0A=
  =0A=
  startDrag: function(event) {=0A=
    this.dragging =3D true;=0A=
    =0A=
    if(this.options.zindex) {=0A=
      this.originalZ =3D =
parseInt(Element.getStyle(this.element,'z-index') || 0);=0A=
      this.element.style.zIndex =3D this.options.zindex;=0A=
    }=0A=
    =0A=
    if(this.options.ghosting) {=0A=
      this._clone =3D this.element.cloneNode(true);=0A=
      Position.absolutize(this.element);=0A=
      this.element.parentNode.insertBefore(this._clone, this.element);=0A=
    }=0A=
    =0A=
    if(this.options.scroll) {=0A=
      if (this.options.scroll =3D=3D window) {=0A=
        var where =3D this._getWindowScroll(this.options.scroll);=0A=
        this.originalScrollLeft =3D where.left;=0A=
        this.originalScrollTop =3D where.top;=0A=
      } else {=0A=
        this.originalScrollLeft =3D this.options.scroll.scrollLeft;=0A=
        this.originalScrollTop =3D this.options.scroll.scrollTop;=0A=
      }=0A=
    }=0A=
    =0A=
    Draggables.notify('onStart', this, event);=0A=
        =0A=
    if(this.options.starteffect) this.options.starteffect(this.element);=0A=
  },=0A=
  =0A=
  updateDrag: function(event, pointer) {=0A=
    if(!this.dragging) this.startDrag(event);=0A=
    Position.prepare();=0A=
    Droppables.show(pointer, this.element);=0A=
    Draggables.notify('onDrag', this, event);=0A=
    =0A=
    this.draw(pointer);=0A=
    if(this.options.change) this.options.change(this);=0A=
    =0A=
    if(this.options.scroll) {=0A=
      this.stopScrolling();=0A=
      =0A=
      var p;=0A=
      if (this.options.scroll =3D=3D window) {=0A=
        with(this._getWindowScroll(this.options.scroll)) { p =3D [ left, =
top, left+width, top+height ]; }=0A=
      } else {=0A=
        p =3D Position.page(this.options.scroll);=0A=
        p[0] +=3D this.options.scroll.scrollLeft + Position.deltaX;=0A=
        p[1] +=3D this.options.scroll.scrollTop + Position.deltaY;=0A=
        p.push(p[0]+this.options.scroll.offsetWidth);=0A=
        p.push(p[1]+this.options.scroll.offsetHeight);=0A=
      }=0A=
      var speed =3D [0,0];=0A=
      if(pointer[0] < (p[0]+this.options.scrollSensitivity)) speed[0] =
=3D pointer[0]-(p[0]+this.options.scrollSensitivity);=0A=
      if(pointer[1] < (p[1]+this.options.scrollSensitivity)) speed[1] =
=3D pointer[1]-(p[1]+this.options.scrollSensitivity);=0A=
      if(pointer[0] > (p[2]-this.options.scrollSensitivity)) speed[0] =
=3D pointer[0]-(p[2]-this.options.scrollSensitivity);=0A=
      if(pointer[1] > (p[3]-this.options.scrollSensitivity)) speed[1] =
=3D pointer[1]-(p[3]-this.options.scrollSensitivity);=0A=
      this.startScrolling(speed);=0A=
    }=0A=
    =0A=
    // fix AppleWebKit rendering=0A=
    if(navigator.appVersion.indexOf('AppleWebKit')>0) =
window.scrollBy(0,0);=0A=
    =0A=
    Event.stop(event);=0A=
  },=0A=
  =0A=
  finishDrag: function(event, success) {=0A=
    this.dragging =3D false;=0A=
=0A=
    if(this.options.ghosting) {=0A=
      Position.relativize(this.element);=0A=
      Element.remove(this._clone);=0A=
      this._clone =3D null;=0A=
    }=0A=
=0A=
    if(success) Droppables.fire(event, this.element);=0A=
    Draggables.notify('onEnd', this, event);=0A=
=0A=
    var revert =3D this.options.revert;=0A=
    if(revert && typeof revert =3D=3D 'function') revert =3D =
revert(this.element);=0A=
    =0A=
    var d =3D this.currentDelta();=0A=
    if(revert && this.options.reverteffect) {=0A=
      this.options.reverteffect(this.element, =0A=
        d[1]-this.delta[1], d[0]-this.delta[0]);=0A=
    } else {=0A=
      this.delta =3D d;=0A=
    }=0A=
=0A=
    if(this.options.zindex)=0A=
      this.element.style.zIndex =3D this.originalZ;=0A=
=0A=
    if(this.options.endeffect) =0A=
      this.options.endeffect(this.element);=0A=
      =0A=
    Draggables.deactivate(this);=0A=
    Droppables.reset();=0A=
  },=0A=
  =0A=
  keyPress: function(event) {=0A=
    if(event.keyCode!=3DEvent.KEY_ESC) return;=0A=
    this.finishDrag(event, false);=0A=
    Event.stop(event);=0A=
  },=0A=
  =0A=
  endDrag: function(event) {=0A=
    if(!this.dragging) return;=0A=
    this.stopScrolling();=0A=
    this.finishDrag(event, true);=0A=
    Event.stop(event);=0A=
  },=0A=
  =0A=
  draw: function(point) {=0A=
    var pos =3D Position.cumulativeOffset(this.element);=0A=
    if(this.options.ghosting) {=0A=
      var r   =3D Position.realOffset(this.element);=0A=
      pos[0] +=3D r[0] - Position.deltaX; pos[1] +=3D r[1] - =
Position.deltaY;=0A=
    }=0A=
    =0A=
    var d =3D this.currentDelta();=0A=
    pos[0] -=3D d[0]; pos[1] -=3D d[1];=0A=
    =0A=
    if(this.options.scroll && (this.options.scroll !=3D window && =
this._isScrollChild)) {=0A=
      pos[0] -=3D this.options.scroll.scrollLeft-this.originalScrollLeft;=0A=
      pos[1] -=3D this.options.scroll.scrollTop-this.originalScrollTop;=0A=
    }=0A=
    =0A=
    var p =3D [0,1].map(function(i){ =0A=
      return (point[i]-pos[i]-this.offset[i]) =0A=
    }.bind(this));=0A=
    =0A=
    if(this.options.snap) {=0A=
      if(typeof this.options.snap =3D=3D 'function') {=0A=
        p =3D this.options.snap(p[0],p[1],this);=0A=
      } else {=0A=
      if(this.options.snap instanceof Array) {=0A=
        p =3D p.map( function(v, i) {=0A=
          return Math.round(v/this.options.snap[i])*this.options.snap[i] =
}.bind(this))=0A=
      } else {=0A=
        p =3D p.map( function(v) {=0A=
          return Math.round(v/this.options.snap)*this.options.snap =
}.bind(this))=0A=
      }=0A=
    }}=0A=
    =0A=
    var style =3D this.element.style;=0A=
    if((!this.options.constraint) || =
(this.options.constraint=3D=3D'horizontal'))=0A=
      style.left =3D p[0] + "px";=0A=
    if((!this.options.constraint) || =
(this.options.constraint=3D=3D'vertical'))=0A=
      style.top  =3D p[1] + "px";=0A=
    =0A=
    if(style.visibility=3D=3D"hidden") style.visibility =3D ""; // fix =
gecko rendering=0A=
  },=0A=
  =0A=
  stopScrolling: function() {=0A=
    if(this.scrollInterval) {=0A=
      clearInterval(this.scrollInterval);=0A=
      this.scrollInterval =3D null;=0A=
      Draggables._lastScrollPointer =3D null;=0A=
    }=0A=
  },=0A=
  =0A=
  startScrolling: function(speed) {=0A=
    if(!(speed[0] || speed[1])) return;=0A=
    this.scrollSpeed =3D =
[speed[0]*this.options.scrollSpeed,speed[1]*this.options.scrollSpeed];=0A=
    this.lastScrolled =3D new Date();=0A=
    this.scrollInterval =3D setInterval(this.scroll.bind(this), 10);=0A=
  },=0A=
  =0A=
  scroll: function() {=0A=
    var current =3D new Date();=0A=
    var delta =3D current - this.lastScrolled;=0A=
    this.lastScrolled =3D current;=0A=
    if(this.options.scroll =3D=3D window) {=0A=
      with (this._getWindowScroll(this.options.scroll)) {=0A=
        if (this.scrollSpeed[0] || this.scrollSpeed[1]) {=0A=
          var d =3D delta / 1000;=0A=
          this.options.scroll.scrollTo( left + d*this.scrollSpeed[0], =
top + d*this.scrollSpeed[1] );=0A=
        }=0A=
      }=0A=
    } else {=0A=
      this.options.scroll.scrollLeft +=3D this.scrollSpeed[0] * delta / =
1000;=0A=
      this.options.scroll.scrollTop  +=3D this.scrollSpeed[1] * delta / =
1000;=0A=
    }=0A=
    =0A=
    Position.prepare();=0A=
    Droppables.show(Draggables._lastPointer, this.element);=0A=
    Draggables.notify('onDrag', this);=0A=
    if (this._isScrollChild) {=0A=
      Draggables._lastScrollPointer =3D Draggables._lastScrollPointer || =
$A(Draggables._lastPointer);=0A=
      Draggables._lastScrollPointer[0] +=3D this.scrollSpeed[0] * delta =
/ 1000;=0A=
      Draggables._lastScrollPointer[1] +=3D this.scrollSpeed[1] * delta =
/ 1000;=0A=
      if (Draggables._lastScrollPointer[0] < 0)=0A=
        Draggables._lastScrollPointer[0] =3D 0;=0A=
      if (Draggables._lastScrollPointer[1] < 0)=0A=
        Draggables._lastScrollPointer[1] =3D 0;=0A=
      this.draw(Draggables._lastScrollPointer);=0A=
    }=0A=
    =0A=
    if(this.options.change) this.options.change(this);=0A=
  },=0A=
  =0A=
  _getWindowScroll: function(w) {=0A=
    var T, L, W, H;=0A=
    with (w.document) {=0A=
      if (w.document.documentElement && documentElement.scrollTop) {=0A=
        T =3D documentElement.scrollTop;=0A=
        L =3D documentElement.scrollLeft;=0A=
      } else if (w.document.body) {=0A=
        T =3D body.scrollTop;=0A=
        L =3D body.scrollLeft;=0A=
      }=0A=
      if (w.innerWidth) {=0A=
        W =3D w.innerWidth;=0A=
        H =3D w.innerHeight;=0A=
      } else if (w.document.documentElement && =
documentElement.clientWidth) {=0A=
        W =3D documentElement.clientWidth;=0A=
        H =3D documentElement.clientHeight;=0A=
      } else {=0A=
        W =3D body.offsetWidth;=0A=
        H =3D body.offsetHeight=0A=
      }=0A=
    }=0A=
    return { top: T, left: L, width: W, height: H };=0A=
  }=0A=
}=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
var SortableObserver =3D Class.create();=0A=
SortableObserver.prototype =3D {=0A=
  initialize: function(element, observer) {=0A=
    this.element   =3D $(element);=0A=
    this.observer  =3D observer;=0A=
    this.lastValue =3D Sortable.serialize(this.element);=0A=
  },=0A=
  =0A=
  onStart: function() {=0A=
    this.lastValue =3D Sortable.serialize(this.element);=0A=
  },=0A=
  =0A=
  onEnd: function() {=0A=
    Sortable.unmark();=0A=
    if(this.lastValue !=3D Sortable.serialize(this.element))=0A=
      this.observer(this.element)=0A=
  }=0A=
}=0A=
=0A=
var Sortable =3D {=0A=
  SERIALIZE_RULE: /^[^_\-](?:[A-Za-z0-9\-\_]*)[_](.*)$/,=0A=
  =0A=
  sortables: {},=0A=
  =0A=
  _findRootElement: function(element) {=0A=
    while (element.tagName !=3D "BODY") {  =0A=
      if(element.id && Sortable.sortables[element.id]) return element;=0A=
      element =3D element.parentNode;=0A=
    }=0A=
  },=0A=
=0A=
  options: function(element) {=0A=
    element =3D Sortable._findRootElement($(element));=0A=
    if(!element) return;=0A=
    return Sortable.sortables[element.id];=0A=
  },=0A=
  =0A=
  destroy: function(element){=0A=
    var s =3D Sortable.options(element);=0A=
    =0A=
    if(s) {=0A=
      Draggables.removeObserver(s.element);=0A=
      s.droppables.each(function(d){ Droppables.remove(d) });=0A=
      s.draggables.invoke('destroy');=0A=
      =0A=
      delete Sortable.sortables[s.element.id];=0A=
    }=0A=
  },=0A=
=0A=
  create: function(element) {=0A=
    element =3D $(element);=0A=
    var options =3D Object.extend({ =0A=
      element:     element,=0A=
      tag:         'li',       // assumes li children, override with =
tag: 'tagname'=0A=
      dropOnEmpty: false,=0A=
      tree:        false,=0A=
      treeTag:     'ul',=0A=
      overlap:     'vertical', // one of 'vertical', 'horizontal'=0A=
      constraint:  'vertical', // one of 'vertical', 'horizontal', false=0A=
      containment: element,    // also takes array of elements (or =
id's); or false=0A=
      handle:      false,      // or a CSS class=0A=
      only:        false,=0A=
      delay:       0,=0A=
      hoverclass:  null,=0A=
      ghosting:    false,=0A=
      scroll:      false,=0A=
      scrollSensitivity: 20,=0A=
      scrollSpeed: 15,=0A=
      format:      this.SERIALIZE_RULE,=0A=
      onChange:    Prototype.emptyFunction,=0A=
      onUpdate:    Prototype.emptyFunction=0A=
    }, arguments[1] || {});=0A=
=0A=
    // clear any old sortable with same element=0A=
    this.destroy(element);=0A=
=0A=
    // build options for the draggables=0A=
    var options_for_draggable =3D {=0A=
      revert:      true,=0A=
      scroll:      options.scroll,=0A=
      scrollSpeed: options.scrollSpeed,=0A=
      scrollSensitivity: options.scrollSensitivity,=0A=
      delay:       options.delay,=0A=
      ghosting:    options.ghosting,=0A=
      constraint:  options.constraint,=0A=
      handle:      options.handle };=0A=
=0A=
    if(options.starteffect)=0A=
      options_for_draggable.starteffect =3D options.starteffect;=0A=
=0A=
    if(options.reverteffect)=0A=
      options_for_draggable.reverteffect =3D options.reverteffect;=0A=
    else=0A=
      if(options.ghosting) options_for_draggable.reverteffect =3D =
function(element) {=0A=
        element.style.top  =3D 0;=0A=
        element.style.left =3D 0;=0A=
      };=0A=
=0A=
    if(options.endeffect)=0A=
      options_for_draggable.endeffect =3D options.endeffect;=0A=
=0A=
    if(options.zindex)=0A=
      options_for_draggable.zindex =3D options.zindex;=0A=
=0A=
    // build options for the droppables  =0A=
    var options_for_droppable =3D {=0A=
      overlap:     options.overlap,=0A=
      containment: options.containment,=0A=
      tree:        options.tree,=0A=
      hoverclass:  options.hoverclass,=0A=
      onHover:     Sortable.onHover=0A=
    }=0A=
    =0A=
    var options_for_tree =3D {=0A=
      onHover:      Sortable.onEmptyHover,=0A=
      overlap:      options.overlap,=0A=
      containment:  options.containment,=0A=
      hoverclass:   options.hoverclass=0A=
    }=0A=
=0A=
    // fix for gecko engine=0A=
    Element.cleanWhitespace(element); =0A=
=0A=
    options.draggables =3D [];=0A=
    options.droppables =3D [];=0A=
=0A=
    // drop on empty handling=0A=
    if(options.dropOnEmpty || options.tree) {=0A=
      Droppables.add(element, options_for_tree);=0A=
      options.droppables.push(element);=0A=
    }=0A=
=0A=
    (this.findElements(element, options) || []).each( function(e) {=0A=
      // handles are per-draggable=0A=
      var handle =3D options.handle ? =0A=
        $(e).down('.'+options.handle,0) : e;    =0A=
      options.draggables.push(=0A=
        new Draggable(e, Object.extend(options_for_draggable, { handle: =
handle })));=0A=
      Droppables.add(e, options_for_droppable);=0A=
      if(options.tree) e.treeNode =3D element;=0A=
      options.droppables.push(e);      =0A=
    });=0A=
    =0A=
    if(options.tree) {=0A=
      (Sortable.findTreeElements(element, options) || []).each( =
function(e) {=0A=
        Droppables.add(e, options_for_tree);=0A=
        e.treeNode =3D element;=0A=
        options.droppables.push(e);=0A=
      });=0A=
    }=0A=
=0A=
    // keep reference=0A=
    this.sortables[element.id] =3D options;=0A=
=0A=
    // for onupdate=0A=
    Draggables.addObserver(new SortableObserver(element, =
options.onUpdate));=0A=
=0A=
  },=0A=
=0A=
  // return all suitable-for-sortable elements in a guaranteed order=0A=
  findElements: function(element, options) {=0A=
    return Element.findChildren(=0A=
      element, options.only, options.tree ? true : false, options.tag);=0A=
  },=0A=
  =0A=
  findTreeElements: function(element, options) {=0A=
    return Element.findChildren(=0A=
      element, options.only, options.tree ? true : false, =
options.treeTag);=0A=
  },=0A=
=0A=
  onHover: function(element, dropon, overlap) {=0A=
    if(Element.isParent(dropon, element)) return;=0A=
=0A=
    if(overlap > .33 && overlap < .66 && Sortable.options(dropon).tree) {=0A=
      return;=0A=
    } else if(overlap>0.5) {=0A=
      Sortable.mark(dropon, 'before');=0A=
      if(dropon.previousSibling !=3D element) {=0A=
        var oldParentNode =3D element.parentNode;=0A=
        element.style.visibility =3D "hidden"; // fix gecko rendering=0A=
        dropon.parentNode.insertBefore(element, dropon);=0A=
        if(dropon.parentNode!=3DoldParentNode) =0A=
          Sortable.options(oldParentNode).onChange(element);=0A=
        Sortable.options(dropon.parentNode).onChange(element);=0A=
      }=0A=
    } else {=0A=
      Sortable.mark(dropon, 'after');=0A=
      var nextElement =3D dropon.nextSibling || null;=0A=
      if(nextElement !=3D element) {=0A=
        var oldParentNode =3D element.parentNode;=0A=
        element.style.visibility =3D "hidden"; // fix gecko rendering=0A=
        dropon.parentNode.insertBefore(element, nextElement);=0A=
        if(dropon.parentNode!=3DoldParentNode) =0A=
          Sortable.options(oldParentNode).onChange(element);=0A=
        Sortable.options(dropon.parentNode).onChange(element);=0A=
      }=0A=
    }=0A=
  },=0A=
  =0A=
  onEmptyHover: function(element, dropon, overlap) {=0A=
    var oldParentNode =3D element.parentNode;=0A=
    var droponOptions =3D Sortable.options(dropon);=0A=
        =0A=
    if(!Element.isParent(dropon, element)) {=0A=
      var index;=0A=
      =0A=
      var children =3D Sortable.findElements(dropon, {tag: =
droponOptions.tag, only: droponOptions.only});=0A=
      var child =3D null;=0A=
            =0A=
      if(children) {=0A=
        var offset =3D Element.offsetSize(dropon, droponOptions.overlap) =
* (1.0 - overlap);=0A=
        =0A=
        for (index =3D 0; index < children.length; index +=3D 1) {=0A=
          if (offset - Element.offsetSize (children[index], =
droponOptions.overlap) >=3D 0) {=0A=
            offset -=3D Element.offsetSize (children[index], =
droponOptions.overlap);=0A=
          } else if (offset - (Element.offsetSize (children[index], =
droponOptions.overlap) / 2) >=3D 0) {=0A=
            child =3D index + 1 < children.length ? children[index + 1] =
: null;=0A=
            break;=0A=
          } else {=0A=
            child =3D children[index];=0A=
            break;=0A=
          }=0A=
        }=0A=
      }=0A=
      =0A=
      dropon.insertBefore(element, child);=0A=
      =0A=
      Sortable.options(oldParentNode).onChange(element);=0A=
      droponOptions.onChange(element);=0A=
    }=0A=
  },=0A=
=0A=
  unmark: function() {=0A=
    if(Sortable._marker) Sortable._marker.hide();=0A=
  },=0A=
=0A=
  mark: function(dropon, position) {=0A=
    // mark on ghosting only=0A=
    var sortable =3D Sortable.options(dropon.parentNode);=0A=
    if(sortable && !sortable.ghosting) return; =0A=
=0A=
    if(!Sortable._marker) {=0A=
      Sortable._marker =3D =0A=
        ($('dropmarker') || =
Element.extend(document.createElement('DIV'))).=0A=
          =
hide().addClassName('dropmarker').setStyle({position:'absolute'});=0A=
      =
document.getElementsByTagName("body").item(0).appendChild(Sortable._marke=
r);=0A=
    }    =0A=
    var offsets =3D Position.cumulativeOffset(dropon);=0A=
    Sortable._marker.setStyle({left: offsets[0]+'px', top: offsets[1] + =
'px'});=0A=
    =0A=
    if(position=3D=3D'after')=0A=
      if(sortable.overlap =3D=3D 'horizontal') =0A=
        Sortable._marker.setStyle({left: (offsets[0]+dropon.clientWidth) =
+ 'px'});=0A=
      else=0A=
        Sortable._marker.setStyle({top: (offsets[1]+dropon.clientHeight) =
+ 'px'});=0A=
    =0A=
    Sortable._marker.show();=0A=
  },=0A=
  =0A=
  _tree: function(element, options, parent) {=0A=
    var children =3D Sortable.findElements(element, options) || [];=0A=
  =0A=
    for (var i =3D 0; i < children.length; ++i) {=0A=
      var match =3D children[i].id.match(options.format);=0A=
=0A=
      if (!match) continue;=0A=
      =0A=
      var child =3D {=0A=
        id: encodeURIComponent(match ? match[1] : null),=0A=
        element: element,=0A=
        parent: parent,=0A=
        children: [],=0A=
        position: parent.children.length,=0A=
        container: $(children[i]).down(options.treeTag)=0A=
      }=0A=
      =0A=
      /* Get the element containing the children and recurse over it */=0A=
      if (child.container)=0A=
        this._tree(child.container, options, child)=0A=
      =0A=
      parent.children.push (child);=0A=
    }=0A=
=0A=
    return parent; =0A=
  },=0A=
=0A=
  tree: function(element) {=0A=
    element =3D $(element);=0A=
    var sortableOptions =3D this.options(element);=0A=
    var options =3D Object.extend({=0A=
      tag: sortableOptions.tag,=0A=
      treeTag: sortableOptions.treeTag,=0A=
      only: sortableOptions.only,=0A=
      name: element.id,=0A=
      format: sortableOptions.format=0A=
    }, arguments[1] || {});=0A=
    =0A=
    var root =3D {=0A=
      id: null,=0A=
      parent: null,=0A=
      children: [],=0A=
      container: element,=0A=
      position: 0=0A=
    }=0A=
    =0A=
    return Sortable._tree(element, options, root);=0A=
  },=0A=
=0A=
  /* Construct a [i] index for a particular node */=0A=
  _constructIndex: function(node) {=0A=
    var index =3D '';=0A=
    do {=0A=
      if (node.id) index =3D '[' + node.position + ']' + index;=0A=
    } while ((node =3D node.parent) !=3D null);=0A=
    return index;=0A=
  },=0A=
=0A=
  sequence: function(element) {=0A=
    element =3D $(element);=0A=
    var options =3D Object.extend(this.options(element), arguments[1] || =
{});=0A=
    =0A=
    return $(this.findElements(element, options) || []).map( =
function(item) {=0A=
      return item.id.match(options.format) ? =
item.id.match(options.format)[1] : '';=0A=
    });=0A=
  },=0A=
=0A=
  setSequence: function(element, new_sequence) {=0A=
    element =3D $(element);=0A=
    var options =3D Object.extend(this.options(element), arguments[2] || =
{});=0A=
    =0A=
    var nodeMap =3D {};=0A=
    this.findElements(element, options).each( function(n) {=0A=
        if (n.id.match(options.format))=0A=
            nodeMap[n.id.match(options.format)[1]] =3D [n, n.parentNode];=0A=
        n.parentNode.removeChild(n);=0A=
    });=0A=
   =0A=
    new_sequence.each(function(ident) {=0A=
      var n =3D nodeMap[ident];=0A=
      if (n) {=0A=
        n[1].appendChild(n[0]);=0A=
        delete nodeMap[ident];=0A=
      }=0A=
    });=0A=
  },=0A=
  =0A=
  serialize: function(element) {=0A=
    element =3D $(element);=0A=
    var options =3D Object.extend(Sortable.options(element), =
arguments[1] || {});=0A=
    var name =3D encodeURIComponent(=0A=
      (arguments[1] && arguments[1].name) ? arguments[1].name : =
element.id);=0A=
    =0A=
    if (options.tree) {=0A=
      return Sortable.tree(element, arguments[1]).children.map( function =
(item) {=0A=
        return [name + Sortable._constructIndex(item) + "[id]=3D" + =0A=
                =
encodeURIComponent(item.id)].concat(item.children.map(arguments.callee));=0A=
      }).flatten().join('&');=0A=
    } else {=0A=
      return Sortable.sequence(element, arguments[1]).map( =
function(item) {=0A=
        return name + "[]=3D" + encodeURIComponent(item);=0A=
      }).join('&');=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
// Returns true if child is contained within element=0A=
Element.isParent =3D function(child, element) {=0A=
  if (!child.parentNode || child =3D=3D element) return false;=0A=
  if (child.parentNode =3D=3D element) return true;=0A=
  return Element.isParent(child.parentNode, element);=0A=
}=0A=
=0A=
Element.findChildren =3D function(element, only, recursive, tagName) {   =
 =0A=
  if(!element.hasChildNodes()) return null;=0A=
  tagName =3D tagName.toUpperCase();=0A=
  if(only) only =3D [only].flatten();=0A=
  var elements =3D [];=0A=
  $A(element.childNodes).each( function(e) {=0A=
    if(e.tagName && e.tagName.toUpperCase()=3D=3DtagName &&=0A=
      (!only || (Element.classNames(e).detect(function(v) { return =
only.include(v) }))))=0A=
        elements.push(e);=0A=
    if(recursive) {=0A=
      var grandchildren =3D Element.findChildren(e, only, recursive, =
tagName);=0A=
      if(grandchildren) elements.push(grandchildren);=0A=
    }=0A=
  });=0A=
=0A=
  return (elements.length>0 ? elements.flatten() : []);=0A=
}=0A=
=0A=
Element.offsetSize =3D function (element, type) {=0A=
  return element['offset' + ((type=3D=3D'vertical' || =
type=3D=3D'height') ? 'Height' : 'Width')];=0A=
}=0A=

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.aluka.org/templates/jsp/_aluka/jsc/sys/dom_popup/popup.js

/* =0A=
  popup.js=0A=
=0A=
  A lightweight general purpose JavaScript DOM element popup class.=0A=
=0A=
  Webpage:=0A=
    http;//www.methods.co.nz/popup/popup.html=0A=
=0A=
  Inspired by:=0A=
    Lightbox2: http://www.huddletogether.com/projects/lightbox2/=0A=
    Lightbox Gone Wild: =
http://particletree.com/features/lightbox-gone-wild/=0A=
    Tooltip: http://blog.innerewut.de/pages/tooltip=0A=
    Prototype library: http://www.prototypejs.org/=0A=
    Scriptaculous library: http://script.aculo.us/=0A=
=0A=
  Attributions:=0A=
    - Uses the getPageSize() function from Lightbox v2.02 by Lokesh =
Dhakar=0A=
      (http://www.huddletogether.com/projects/lightbox2/).=0A=
    - Adapted the the modal overlay technique used in Lightbox v2.02 by =
Lokesh=0A=
      Dhakar (http://www.huddletogether.com/projects/lightbox2/).=0A=
=0A=
  Version: 1.0.1=0A=
=0A=
  Author:    Stuart Rackham <srackham@methods.co.nz>=0A=
  License:   This source code is released under the MIT license.=0A=
=0A=
  Copyright (c) Stuart Rackham 2007=0A=
=0A=
*/=0A=
=0A=
var Popup =3D Class.create();=0A=
Popup.zIndex =3D 1000;  // z-index of first popup.=0A=
=0A=
Popup.prototype =3D {=0A=
=0A=
  /*=0A=
    Popup creation=0A=
  */=0A=
  initialize: function(popup, link) {=0A=
    var options =3D Object.extend({=0A=
      modal: false,=0A=
      effect: 'fade',=0A=
      hidden: true,=0A=
      closebox: 'popup_closebox',       // CSS class name of =
click-to-close elements.=0A=
      draghandle: 'popup_draghandle'    // CSS class name of drag handle =
elements.=0A=
    }, arguments[2] || {});=0A=
    options.position =3D options.position || (options.modal ? 'center' : =
'auto');=0A=
    options.trigger =3D options.trigger || (options.modal ? 'click' : =
'mouseover');=0A=
    options.duration =3D this.first_value(options.duration, =
Popup.duration, 0.5);=0A=
    options.show_duration =3D this.first_value(options.show_duration, =
options.duration);=0A=
    options.hide_duration =3D this.first_value(options.hide_duration, =
options.duration);=0A=
    options.opacity =3D this.first_value(options.opacity, Popup.opacity, =
0.5);=0A=
    options.show_delay =3D this.first_value(options.show_delay, =
Popup.show_delay, 500);=0A=
    options.hide_delay =3D this.first_value(options.hide_delay, =
Popup.hide_delay, 200);=0A=
    options.cursor_margin =3D this.first_value(options.cursor_margin, =
Popup.cursor_margin, 5);=0A=
    this.options =3D options;=0A=
    if (link) {=0A=
      this.link =3D $(link);=0A=
    }=0A=
    this.popup =3D $(popup);=0A=
    this.popup.popup =3D this;  // Make the popup object a property of =
the DOM popup element.=0A=
    if (options.hidden) {=0A=
      this.popup.hide();=0A=
    }=0A=
    if (options.closebox) {=0A=
      this.closeboxes =3D =
document.getElementsByClassName(options.closebox, this.popup);=0A=
      if (this.popup.hasClassName(options.closebox)) {=0A=
        this.closeboxes[this.closeboxes.length] =3D this.popup;=0A=
      }=0A=
    }=0A=
    else {=0A=
      this.closeboxes =3D [];=0A=
    }=0A=
    if (options.draghandle) {=0A=
      var draghandles =3D =
document.getElementsByClassName(options.draghandle, this.popup);=0A=
      for (i =3D 0; i < draghandles.length; i++) {=0A=
        new Draggable(this.popup, { handle: draghandles[i] });=0A=
      }=0A=
      if (this.popup.hasClassName(options.draghandle)) {=0A=
        new Draggable(this.popup, { handle: this.popup });=0A=
      }=0A=
    }=0A=
    this.register_events();=0A=
  },=0A=
=0A=
=0A=
  /*=0A=
    Event functions=0A=
  */=0A=
=0A=
  register_events: function() {=0A=
    var trigger_function;=0A=
    if (this.is_auto_open()) {=0A=
      trigger_function =3D this.start_show_timer;=0A=
      if (this.link) {=0A=
        Event.observe(this.link, 'mouseout', =
this.stop_show_timer.bindAsEventListener(this));=0A=
      }=0A=
    }=0A=
    else {=0A=
      trigger_function =3D this.show;=0A=
    }=0A=
    if (this.link) {=0A=
      Event.observe(this.link, this.options.trigger, =
trigger_function.bindAsEventListener(this));=0A=
    }=0A=
    if (!this.options.modal) {=0A=
      Event.observe(this.popup, 'click', =
this.bring_to_front.bindAsEventListener(this));=0A=
    }=0A=
    if (this.closeboxes.length > 0) {=0A=
      for (var i =3D 0; i < this.closeboxes.length; i++) {=0A=
        Event.observe(this.closeboxes[i], 'click', =
this.hide.bindAsEventListener(this));=0A=
      }=0A=
    }=0A=
    else {=0A=
      if (this.link) {=0A=
        Event.observe(this.link, 'mouseout', =
this.start_hide_timer.bindAsEventListener(this));=0A=
      }=0A=
      Event.observe(this.popup, 'mouseover', =
this.stop_hide_timer.bindAsEventListener(this));=0A=
      Event.observe(this.popup, 'mouseout', =
this.start_hide_timer.bindAsEventListener(this));=0A=
    }=0A=
  },=0A=
=0A=
  bring_to_front: function(event) {=0A=
    // Bring to front if not already there.=0A=
    if (Number(this.popup.style.zIndex) < Popup.zIndex - 1) {=0A=
      this.popup.style.zIndex =3D Popup.zIndex++;=0A=
    }=0A=
  },=0A=
=0A=
  start_show_timer: function(event) {=0A=
    // NOTE: event is bound to this.show but it's state changes between =
being=0A=
    // bound here and arriving at this.show -- specifically, the mouse=0A=
    // coordinates are reset to zero). I've no idea why. Anyway, this is =
the=0A=
    // reason for passing the event mouse coordinates as properties of =
this.=0A=
    this.stop_show_timer(event);=0A=
    this.mouse_x =3D Event.pointerX(event);=0A=
    this.mouse_y =3D Event.pointerY(event);=0A=
    this.show_timer =3D setTimeout(this.show.bind(this, event), =
this.options.show_delay);=0A=
  },=0A=
=0A=
  stop_show_timer: function(event) {=0A=
    if (this.show_timer) {=0A=
      clearTimeout(this.show_timer);=0A=
      this.show_timer =3D null;=0A=
    }=0A=
  },=0A=
=0A=
  start_hide_timer: function(event) {=0A=
    this.stop_hide_timer(event);=0A=
    this.hide_timer =3D setTimeout(this.hide.bind(this, event), =
this.options.hide_delay);=0A=
  },=0A=
=0A=
  stop_hide_timer: function(event) {=0A=
    if (this.hide_timer) {=0A=
      clearTimeout(this.hide_timer);=0A=
      this.hide_timer =3D null;=0A=
    }=0A=
  },=0A=
=0A=
  show: function(event) {=0A=
    this.stop_show_timer(event);=0A=
    this.stop_hide_timer(event);=0A=
    if (this.is_open) {=0A=
      return;=0A=
    }=0A=
    if (this.options.modal) {=0A=
      this.show_overlay();=0A=
    }=0A=
    var pos;=0A=
    if (!event) {=0A=
      // We only arrive here if this.show has been called externally.=0A=
      pos =3D this.get_popup_position();=0A=
    }=0A=
    else if (this.is_auto_open()) {=0A=
      // Because auto-open popups calls this.show indirectly via =
start_show_timer.=0A=
      pos =3D this.get_popup_position(this.mouse_x, this.mouse_y);=0A=
    }=0A=
    else {=0A=
      pos =3D this.get_popup_position(Event.pointerX(event), =
Event.pointerY(event));=0A=
    }=0A=
    Element.setStyle(this.popup, { top: pos.y, left: pos.x, zIndex: =
Popup.zIndex++ });=0A=
    this.is_open =3D true;=0A=
    switch (this.options.effect) {=0A=
      case 'slide':=0A=
        Effect.SlideDown(this.popup, {duration: =
this.options.show_duration});=0A=
        break;=0A=
      case 'grow':=0A=
        Effect.Grow(this.popup, {duration: this.options.show_duration});=0A=
        break;=0A=
      case 'blind':=0A=
        Effect.BlindDown(this.popup, {duration: =
this.options.show_duration});=0A=
        break;=0A=
      case 'fade':=0A=
      default:=0A=
        Effect.Appear(this.popup, {duration: =
this.options.show_duration});=0A=
        break;=0A=
    }=0A=
  },=0A=
  =0A=
  hide: function(event){=0A=
    this.is_open =3D false;=0A=
    switch (this.options.effect) {=0A=
      case 'slide':=0A=
        Effect.SlideUp(this.popup, {duration: =
this.options.hide_duration});=0A=
        break;=0A=
      case 'grow':=0A=
        Effect.Shrink(this.popup, {duration: =
this.options.hide_duration});=0A=
        break;=0A=
      case 'blind':=0A=
        Effect.BlindUp(this.popup, {duration: =
this.options.hide_duration});=0A=
        break;=0A=
      case 'fade':=0A=
      default:=0A=
        Effect.Fade(this.popup, {duration: this.options.hide_duration});=0A=
        break;=0A=
    }=0A=
    if (this.options.modal) {=0A=
      this.hide_overlay();=0A=
    }=0A=
  },=0A=
=0A=
=0A=
  /*=0A=
    Helper functions=0A=
  */=0A=
=0A=
  // Return the first function argument that is not undefined.=0A=
  // Because when zero numerical value are possible you can't use || =
chains.=0A=
  first_value: function() {=0A=
    for (var i =3D 0; i < arguments.length; i++) {=0A=
      if (arguments[i] !=3D=3D undefined) {=0A=
        return arguments[i];=0A=
      }=0A=
    }=0A=
    return undefined;=0A=
  },=0A=
=0A=
  is_auto_open: function() {=0A=
    return this.options.trigger =3D=3D 'mouseover';=0A=
  },=0A=
=0A=
  show_overlay: function() {=0A=
    if (!Popup.overlay) {=0A=
      var overlay =3D document.createElement('div');=0A=
      overlay.setAttribute('id','popup_overlay');=0A=
      overlay.style.display =3D 'none';=0A=
      document.body.appendChild(overlay);=0A=
      Popup.overlay =3D overlay;=0A=
      Popup.overlay_levels =3D [];=0A=
    }=0A=
    Popup.overlay.style.height =3D this.get_page_dimensions().height + =
'px';=0A=
    var z =3D Popup.zIndex++;=0A=
    Popup.overlay.style.zIndex =3D z;=0A=
    Popup.overlay_levels.push(z);=0A=
    if ( Popup.overlay_levels.length =3D=3D 1) { // Opening the first =
modal popup.=0A=
      // Queue the global overlay effect to ensure correct execution =
order.=0A=
      new Effect.Appear(Popup.overlay,=0A=
        { duration: this.options.show_duration,=0A=
          to: this.options.opacity,=0A=
          queue: {position: 'end', scope: 'popup_overlay'}=0A=
        });=0A=
    }=0A=
    else { // There is another modal popup at a lower level so move the =
overlay forward.=0A=
      Popup.overlay.style.zIndex =3D z;=0A=
    }=0A=
  },=0A=
		=0A=
  hide_overlay: function() {=0A=
    Popup.overlay_levels.pop();=0A=
    var z =3D Popup.overlay_levels.pop();=0A=
    if (z) { // There is another modal popup at a lower level so move =
the overlay back.=0A=
      Popup.overlay_levels.push(z);=0A=
      Popup.overlay.style.zIndex =3D z;=0A=
    }=0A=
    else { // The last modal popup is being closed so hide the overlay=0A=
      // Queue the global overlay effect to ensure correct execution =
order.=0A=
      new Effect.Fade(Popup.overlay,=0A=
        { duration: this.options.hide_duration,=0A=
          queue: {position: 'end', scope: 'popup_overlay'}=0A=
        });=0A=
    }=0A=
  },=0A=
=0A=
=0A=
  /*=0A=
    Positioning functions=0A=
  */=0A=
=0A=
  // Return the top and left CSS position strings as an {x,y} object =
that the=0A=
  // popup should be shown at.  mouse_x and mouse_y are the mouse x,y =
coordinates=0A=
  // numbers when the popup was triggered.=0A=
  get_popup_position: function(mouse_x, mouse_y) {=0A=
    var pos;=0A=
    switch (this.options.position) {=0A=
      case 'auto':=0A=
        pos =3D this.get_auto_position(mouse_x, mouse_y);=0A=
        break;=0A=
      case 'center':=0A=
        pos =3D this.get_center_position();=0A=
        break;=0A=
      case 'below':=0A=
        pos =3D this.get_below_position();=0A=
        break;=0A=
      default:=0A=
        // Check for x,y postion format (x and y can be any valid CSS =
left or=0A=
        // top property value).=0A=
        if (mo =3D =
this.options.position.match(/^\s*([^\s,]+)\s*,\s*([^\s,]+)\s*$/)) {=0A=
          pos =3D {x: mo[1], y: mo[2]};=0A=
          // If possible convert to numbers.=0A=
          pos.x =3D Number(pos.x) || pos.x;=0A=
          pos.y =3D Number(pos.y) || pos.y;=0A=
        }=0A=
        else {=0A=
          pos =3D {x: 0, y: 0};=0A=
        }=0A=
        break;=0A=
    }=0A=
    if (typeof pos.x =3D=3D 'number') {=0A=
      pos.x +=3D 'px';=0A=
    }=0A=
    if (typeof pos.y =3D=3D 'number') {=0A=
      pos.y +=3D 'px';=0A=
    }=0A=
    return pos;=0A=
  },=0A=
=0A=
  get_below_position: function() {=0A=
    var pos =3D Position.cumulativeOffset(this.link);=0A=
    return {x: pos[0], y: pos[1] + Element.getHeight(this.link)};=0A=
  },=0A=
=0A=
  get_center_position: function() {=0A=
    dim =3D Element.getDimensions(this.popup);=0A=
    var popup_width =3D dim.width;=0A=
    var popup_height =3D dim.height;=0A=
    dim =3D this.get_viewport_dimensions();=0A=
    var viewport_width =3D dim.width;=0A=
    var viewport_height =3D dim.height;=0A=
=0A=
    var x;=0A=
    if (popup_width >=3D viewport_width) {=0A=
      x =3D 0;=0A=
    }=0A=
    else {=0A=
      x =3D (viewport_width - popup_width)/2;=0A=
    }=0A=
=0A=
    var y;=0A=
    if (popup_height >=3D viewport_height) {=0A=
      y =3D 0;=0A=
    }=0A=
    else {=0A=
      y =3D (viewport_height - popup_height)/2;=0A=
    }=0A=
=0A=
    return {x: x, y: y}; =0A=
  },=0A=
=0A=
  get_auto_position: function(mouse_x, mouse_y) {=0A=
    dim =3D Element.getDimensions(this.popup);=0A=
    var popup_width =3D dim.width;=0A=
    var popup_height =3D dim.height;=0A=
    dim =3D this.get_viewport_dimensions();=0A=
    var viewport_width =3D dim.width;=0A=
    var viewport_height =3D dim.height;=0A=
=0A=
    var available_right =3D viewport_width - (mouse_x + =
this.options.cursor_margin);=0A=
    var available_left =3D mouse_x - this.options.cursor_margin;=0A=
    var available_top =3D mouse_y - this.options.cursor_margin;=0A=
    var available_bottom =3D viewport_height - (mouse_x + =
this.options.cursor_margin);=0A=
    var offset =3D this.options.cursor_margin;=0A=
    var x =3D mouse_x;=0A=
    var y =3D mouse_y;=0A=
=0A=
    if (popup_width >=3D viewport_width) {=0A=
      x =3D 0;=0A=
    }=0A=
    else if (popup_width <=3D available_right) {=0A=
      x +=3D offset;=0A=
    }=0A=
    else if (popup_width <=3D available_left) {=0A=
      x -=3D popup_width + offset;=0A=
    }=0A=
    else if (available_right >=3D available_left) {=0A=
      x =3D viewport_width - popup_width;=0A=
    }=0A=
    else {=0A=
      x =3D 0;=0A=
    }=0A=
=0A=
    if (popup_height >=3D viewport_height) {=0A=
      y =3D 0;=0A=
    }=0A=
    else if (popup_height <=3D available_bottom) {=0A=
      y +=3D offset;=0A=
    }=0A=
    else if (popup_height <=3D available_top) {=0A=
      y -=3D popup_height + offset;=0A=
    }=0A=
    else if (available_bottom >=3D available_top) {=0A=
      y =3D viewport_height - popup_height;=0A=
    }=0A=
    else {=0A=
      y =3D 0;=0A=
    }=0A=
=0A=
    return {x: x, y: y}; =0A=
  },=0A=
  =0A=
  get_viewport_dimensions: function() {=0A=
		var dim =3D this.getPageSize();=0A=
    return {width: dim[2], height: dim[3]};=0A=
  },=0A=
=0A=
  get_page_dimensions: function() {=0A=
		var dim =3D this.getPageSize();=0A=
    return {width: dim[0], height: dim[1]};=0A=
  },=0A=
=0A=
  // This function from Lightbox v2.02 by Lokesh Dhakar=0A=
  // (http://www.huddletogether.com/projects/lightbox2/).=0A=
  //=0A=
  // Returns array with page width, height and window width, height=0A=
  // Core code from - quirksmode.org=0A=
  // Edit for Firefox by pHaez=0A=
  //=0A=
  getPageSize: function() {=0A=
    var xScroll, yScroll;=0A=
=0A=
    if (window.innerHeight && window.scrollMaxY) {	=0A=
      xScroll =3D document.body.scrollWidth;=0A=
      yScroll =3D window.innerHeight + window.scrollMaxY;=0A=
    } else if (document.body.scrollHeight > document.body.offsetHeight){ =
// all but Explorer Mac=0A=
      xScroll =3D document.body.scrollWidth;=0A=
      yScroll =3D document.body.scrollHeight;=0A=
    } else { // Explorer Mac...would also work in Explorer 6 Strict, =
Mozilla and Safari=0A=
      xScroll =3D document.body.offsetWidth;=0A=
      yScroll =3D document.body.offsetHeight;=0A=
    }=0A=
=0A=
    var windowWidth, windowHeight;=0A=
    if (self.innerHeight) {	// all except Explorer=0A=
      windowWidth =3D self.innerWidth;=0A=
      windowHeight =3D self.innerHeight;=0A=
    } else if (document.documentElement && =
document.documentElement.clientHeight) { // Explorer 6 Strict Mode=0A=
      windowWidth =3D document.documentElement.clientWidth;=0A=
      windowHeight =3D document.documentElement.clientHeight;=0A=
    } else if (document.body) { // other Explorers=0A=
      windowWidth =3D document.body.clientWidth;=0A=
      windowHeight =3D document.body.clientHeight;=0A=
    }	=0A=
    =0A=
    // for small pages with total height less then height of the viewport=0A=
    if(yScroll < windowHeight){=0A=
      pageHeight =3D windowHeight;=0A=
    } else { =0A=
      pageHeight =3D yScroll;=0A=
    }=0A=
=0A=
    // for small pages with total width less then width of the viewport=0A=
    if(xScroll < windowWidth){	=0A=
      pageWidth =3D windowWidth;=0A=
    } else {=0A=
      pageWidth =3D xScroll;=0A=
    }=0A=
=0A=
    arrayPageSize =3D new =
Array(pageWidth,pageHeight,windowWidth,windowHeight);=0A=
    return arrayPageSize;=0A=
  }=0A=
=0A=
}=0A=

------=_NextPart_000_0000_01C930BF.206A3D50
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.google-analytics.com/urchin.js

//-- Google Analytics Urchin Module=0A=
//-- Copyright 2007 Google, All Rights Reserved.=0A=
=0A=
//-- Urchin On Demand Settings ONLY=0A=
var _uacct=3D"";			// set up the Urchin Account=0A=
var _userv=3D1;			// service mode (0=3Dlocal,1=3Dremote,2=3Dboth)=0A=
=0A=
//-- UTM User Settings=0A=
var _ufsc=3D1;			// set client info flag (1=3Don|0=3Doff)=0A=
var _udn=3D"auto";		// (auto|none|domain) set the domain name for cookies=0A=
var _uhash=3D"on";		// (on|off) unique domain hash for cookies=0A=
var _utimeout=3D"1800";   	// set the inactive session timeout in seconds=0A=
var _ugifpath=3D"/__utm.gif";	// set the web path to the __utm.gif file=0A=
var _utsp=3D"|";			// transaction field separator=0A=
var _uflash=3D1;			// set flash version detect option (1=3Don|0=3Doff)=0A=
var _utitle=3D1;			// set the document title detect option =
(1=3Don|0=3Doff)=0A=
var _ulink=3D0;			// enable linker functionality (1=3Don|0=3Doff)=0A=
var _uanchor=3D0;			// enable use of anchors for campaign =
(1=3Don|0=3Doff)=0A=
var _utcp=3D"/";			// the cookie path for tracking=0A=
var _usample=3D100;		// The sampling % of visitors to track (1-100).=0A=
=0A=
//-- UTM Campaign Tracking Settings=0A=
var _uctm=3D1;			// set campaign tracking module (1=3Don|0=3Doff)=0A=
var _ucto=3D"15768000";		// set timeout in seconds (6 month default)=0A=
var _uccn=3D"utm_campaign";	// name=0A=
var _ucmd=3D"utm_medium";		// medium (cpc|cpm|link|email|organic)=0A=
var _ucsr=3D"utm_source";		// source=0A=
var _uctr=3D"utm_term";		// term/keyword=0A=
var _ucct=3D"utm_content";	// content=0A=
var _ucid=3D"utm_id";		// id number=0A=
var _ucno=3D"utm_nooverride";	// don't override=0A=
=0A=
//-- Auto/Organic Sources and Keywords=0A=
var _uOsr=3Dnew Array();=0A=
var _uOkw=3Dnew Array();=0A=
_uOsr[0]=3D"google";	_uOkw[0]=3D"q";=0A=
_uOsr[1]=3D"yahoo";	_uOkw[1]=3D"p";=0A=
_uOsr[2]=3D"msn";		_uOkw[2]=3D"q";=0A=
_uOsr[3]=3D"aol";		_uOkw[3]=3D"query";=0A=
_uOsr[4]=3D"aol";		_uOkw[4]=3D"encquery";=0A=
_uOsr[5]=3D"lycos";	_uOkw[5]=3D"query";=0A=
_uOsr[6]=3D"ask";		_uOkw[6]=3D"q";=0A=
_uOsr[7]=3D"altavista";	_uOkw[7]=3D"q";=0A=
_uOsr[8]=3D"netscape";	_uOkw[8]=3D"query";=0A=
_uOsr[9]=3D"cnn";	_uOkw[9]=3D"query";=0A=
_uOsr[10]=3D"looksmart";	_uOkw[10]=3D"qt";=0A=
_uOsr[11]=3D"about";	_uOkw[11]=3D"terms";=0A=
_uOsr[12]=3D"mamma";	_uOkw[12]=3D"query";=0A=
_uOsr[13]=3D"alltheweb";	_uOkw[13]=3D"q";=0A=
_uOsr[14]=3D"gigablast";	_uOkw[14]=3D"q";=0A=
_uOsr[15]=3D"voila";	_uOkw[15]=3D"rdata";=0A=
_uOsr[16]=3D"virgilio";	_uOkw[16]=3D"qs";=0A=
_uOsr[17]=3D"live";	_uOkw[17]=3D"q";=0A=
_uOsr[18]=3D"baidu";	_uOkw[18]=3D"wd";=0A=
_uOsr[19]=3D"alice";	_uOkw[19]=3D"qs";=0A=
_uOsr[20]=3D"yandex";	_uOkw[20]=3D"text";=0A=
_uOsr[21]=3D"najdi";	_uOkw[21]=3D"q";=0A=
_uOsr[22]=3D"aol";	_uOkw[22]=3D"q";=0A=
_uOsr[23]=3D"club-internet"; _uOkw[23]=3D"query";=0A=
_uOsr[24]=3D"mama";	_uOkw[24]=3D"query";=0A=
_uOsr[25]=3D"seznam";	_uOkw[25]=3D"q";=0A=
_uOsr[26]=3D"search";	_uOkw[26]=3D"q";=0A=
_uOsr[27]=3D"wp";	_uOkw[27]=3D"szukaj";=0A=
_uOsr[28]=3D"onet";	_uOkw[28]=3D"qt";=0A=
_uOsr[29]=3D"netsprint";	_uOkw[29]=3D"q";=0A=
_uOsr[30]=3D"google.interia";	_uOkw[30]=3D"q";=0A=
_uOsr[31]=3D"szukacz";	_uOkw[31]=3D"q";=0A=
_uOsr[32]=3D"yam";	_uOkw[32]=3D"k";=0A=
_uOsr[33]=3D"pchome";	_uOkw[33]=3D"q";=0A=
_uOsr[34]=3D"kvasir";	_uOkw[34]=3D"searchExpr";=0A=
_uOsr[35]=3D"sesam";	_uOkw[35]=3D"q";=0A=
_uOsr[36]=3D"ozu"; _uOkw[36]=3D"q";=0A=
_uOsr[37]=3D"terra"; _uOkw[37]=3D"query";=0A=
_uOsr[38]=3D"nostrum"; _uOkw[38]=3D"query";=0A=
_uOsr[39]=3D"mynet"; _uOkw[39]=3D"q";=0A=
_uOsr[40]=3D"ekolay"; _uOkw[40]=3D"q";=0A=
_uOsr[41]=3D"search.ilse"; _uOkw[41]=3D"search_for";=0A=
=0A=
//-- Auto/Organic Keywords to Ignore=0A=
var _uOno=3Dnew Array();=0A=
//_uOno[0]=3D"urchin";=0A=
//_uOno[1]=3D"urchin.com";=0A=
//_uOno[2]=3D"www.urchin.com";=0A=
=0A=
//-- Referral domains to Ignore=0A=
var _uRno=3Dnew Array();=0A=
//_uRno[0]=3D".urchin.com";=0A=
=0A=
//-- **** Don't modify below this point ***=0A=
var =
_uff,_udh,_udt,_ubl=3D0,_udo=3D"",_uu,_ufns=3D0,_uns=3D0,_ur=3D"-",_ufno=3D=
0,_ust=3D0,_ubd=3Ddocument,_udl=3D_ubd.location,_udlh=3D"",_uwv=3D"1.3";=0A=
var _ugifpath2=3D"http://www.google-analytics.com/__utm.gif";=0A=
if (_udl.hash) _udlh=3D_udl.href.substring(_udl.href.indexOf('#'));=0A=
if (_udl.protocol=3D=3D"https:") =
_ugifpath2=3D"https://ssl.google-analytics.com/__utm.gif";=0A=
if (!_utcp || _utcp=3D=3D"") _utcp=3D"/";=0A=
function urchinTracker(page) {=0A=
 if (_udl.protocol=3D=3D"file:") return;=0A=
 if (_uff && (!page || page=3D=3D"")) return;=0A=
 var a,b,c,xx,v,z,k,x=3D"",s=3D"",f=3D0,nv=3D0;=0A=
 var nx=3D" expires=3D"+_uNx()+";";=0A=
 var dc=3D_ubd.cookie;=0A=
 _udh=3D_uDomain();=0A=
 if (!_uVG()) return;=0A=
 _uu=3DMath.round(Math.random()*2147483647);=0A=
 _udt=3Dnew Date();=0A=
 _ust=3DMath.round(_udt.getTime()/1000);=0A=
 a=3Ddc.indexOf("__utma=3D"+_udh+".");=0A=
 b=3Ddc.indexOf("__utmb=3D"+_udh);=0A=
 c=3Ddc.indexOf("__utmc=3D"+_udh);=0A=
 if (_udn && _udn!=3D"") { _udo=3D" domain=3D"+_udn+";"; }=0A=
 if (_utimeout && _utimeout!=3D"") {=0A=
  x=3Dnew Date(_udt.getTime()+(_utimeout*1000));=0A=
  x=3D" expires=3D"+x.toGMTString()+";";=0A=
 }=0A=
 if (_ulink) {=0A=
  if (_uanchor && _udlh && _udlh!=3D"") s=3D_udlh+"&";=0A=
  s+=3D_udl.search;=0A=
  if(s && s!=3D"" && s.indexOf("__utma=3D")>=3D0) {=0A=
   if (!(_uIN(a=3D_uGC(s,"__utma=3D","&")))) a=3D"-";=0A=
   if (!(_uIN(b=3D_uGC(s,"__utmb=3D","&")))) b=3D"-";=0A=
   if (!(_uIN(c=3D_uGC(s,"__utmc=3D","&")))) c=3D"-";=0A=
   v=3D_uGC(s,"__utmv=3D","&");=0A=
   z=3D_uGC(s,"__utmz=3D","&");=0A=
   k=3D_uGC(s,"__utmk=3D","&");=0A=
   xx=3D_uGC(s,"__utmx=3D","&");=0A=
   if ((k*1) !=3D ((_uHash(a+b+c+xx+z+v)*1)+(_udh*1))) =
{_ubl=3D1;a=3D"-";b=3D"-";c=3D"-";xx=3D"-";z=3D"-";v=3D"-";}=0A=
   if (a!=3D"-" && b!=3D"-" && c!=3D"-") f=3D1;=0A=
   else if(a!=3D"-") f=3D2;=0A=
  }=0A=
 }=0A=
 if(f=3D=3D1) {=0A=
  _ubd.cookie=3D"__utma=3D"+a+"; path=3D"+_utcp+";"+nx+_udo;=0A=
  _ubd.cookie=3D"__utmb=3D"+b+"; path=3D"+_utcp+";"+x+_udo;=0A=
  _ubd.cookie=3D"__utmc=3D"+c+"; path=3D"+_utcp+";"+_udo;=0A=
 } else if (f=3D=3D2) {=0A=
  a=3D_uFixA(s,"&",_ust);=0A=
  _ubd.cookie=3D"__utma=3D"+a+"; path=3D"+_utcp+";"+nx+_udo;=0A=
  _ubd.cookie=3D"__utmb=3D"+_udh+"; path=3D"+_utcp+";"+x+_udo;=0A=
  _ubd.cookie=3D"__utmc=3D"+_udh+"; path=3D"+_utcp+";"+_udo;=0A=
  _ufns=3D1;=0A=
 } else if (a>=3D0 && b>=3D0 && c>=3D0) {=0A=
   b =3D _uGC(dc,"__utmb=3D"+_udh,";");=0A=
   b =3D ("-" =3D=3D b) ? _udh : b;  =0A=
  _ubd.cookie=3D"__utmb=3D"+b+"; path=3D"+_utcp+";"+x+_udo;=0A=
 } else {=0A=
  if (a>=3D0) a=3D_uFixA(_ubd.cookie,";",_ust);=0A=
  else {=0A=
   a=3D_udh+"."+_uu+"."+_ust+"."+_ust+"."+_ust+".1";=0A=
   nv=3D1;=0A=
  }=0A=
  _ubd.cookie=3D"__utma=3D"+a+"; path=3D"+_utcp+";"+nx+_udo;=0A=
  _ubd.cookie=3D"__utmb=3D"+_udh+"; path=3D"+_utcp+";"+x+_udo;=0A=
  _ubd.cookie=3D"__utmc=3D"+_udh+"; path=3D"+_utcp+";"+_udo;=0A=
  _ufns=3D1;=0A=
 }=0A=
 if (_ulink && xx && xx!=3D"" && xx!=3D"-") {=0A=
   xx=3D_uUES(xx);=0A=
   if (xx.indexOf(";")=3D=3D-1) _ubd.cookie=3D"__utmx=3D"+xx+"; =
path=3D"+_utcp+";"+nx+_udo;=0A=
 }=0A=
 if (_ulink && v && v!=3D"" && v!=3D"-") {=0A=
  v=3D_uUES(v);=0A=
  if (v.indexOf(";")=3D=3D-1) _ubd.cookie=3D"__utmv=3D"+v+"; =
path=3D"+_utcp+";"+nx+_udo;=0A=
 }=0A=
 var wc=3Dwindow;=0A=
 var c=3D_ubd.cookie;=0A=
 if(wc && wc.gaGlobal && wc.gaGlobal.dh=3D=3D_udh){=0A=
  var g=3Dwc.gaGlobal;=0A=
  var ua=3Dc.split("__utma=3D"+_udh+".")[1].split(";")[0].split(".");=0A=
  if(g.sid)ua[3]=3Dg.sid;=0A=
  if(nv>0){=0A=
   ua[2]=3Dua[3];=0A=
   if(g.vid){=0A=
    var v=3Dg.vid.split(".");=0A=
    ua[0]=3Dv[0];=0A=
    ua[1]=3Dv[1];=0A=
   }=0A=
  }=0A=
  _ubd.cookie=3D"__utma=3D"+_udh+"."+ua.join(".")+"; =
path=3D"+_utcp+";"+nx+_udo;=0A=
 }=0A=
 _uInfo(page);=0A=
 _ufns=3D0;=0A=
 _ufno=3D0;=0A=
 if (!page || page=3D=3D"") _uff=3D1;=0A=
}=0A=
function _uGH() {=0A=
 var hid;=0A=
 var wc=3Dwindow;=0A=
 if (wc && wc.gaGlobal && wc.gaGlobal.hid) {=0A=
  hid=3Dwc.gaGlobal.hid;=0A=
 } else {=0A=
  hid=3DMath.round(Math.random()*0x7fffffff);=0A=
  if (!wc.gaGlobal) wc.gaGlobal=3D{};=0A=
  wc.gaGlobal.hid=3Dhid;=0A=
 }=0A=
 return hid;=0A=
}=0A=
function _uInfo(page) {=0A=
 var p,s=3D"",dm=3D"",pg=3D_udl.pathname+_udl.search;=0A=
 if (page && page!=3D"") pg=3D_uES(page,1);=0A=
 _ur=3D_ubd.referrer;=0A=
 if (!_ur || _ur=3D=3D"") { _ur=3D"-"; }=0A=
 else {=0A=
  dm=3D_ubd.domain;=0A=
  if(_utcp && _utcp!=3D"/") dm+=3D_utcp;=0A=
  p=3D_ur.indexOf(dm);=0A=
  if ((p>=3D0) && (p<=3D8)) { _ur=3D"0"; }=0A=
  if (_ur.indexOf("[")=3D=3D0 && =
_ur.lastIndexOf("]")=3D=3D(_ur.length-1)) { _ur=3D"-"; }=0A=
 }=0A=
 s+=3D"&utmn=3D"+_uu;=0A=
 if (_ufsc) s+=3D_uBInfo();=0A=
 if (_uctm) s+=3D_uCInfo();=0A=
 if (_utitle && _ubd.title && _ubd.title!=3D"") =
s+=3D"&utmdt=3D"+_uES(_ubd.title);=0A=
 if (_udl.hostname && _udl.hostname!=3D"") =
s+=3D"&utmhn=3D"+_uES(_udl.hostname);=0A=
 if (_usample && _usample !=3D 100) s+=3D"&utmsp=3D"+_uES(_usample);=0A=
 s+=3D"&utmhid=3D"+_uGH();=0A=
 s+=3D"&utmr=3D"+_ur;=0A=
 s+=3D"&utmp=3D"+pg;=0A=
 if ((_userv=3D=3D0 || _userv=3D=3D2) && _uSP()) {=0A=
  var i=3Dnew Image(1,1);=0A=
  i.src=3D_ugifpath+"?"+"utmwv=3D"+_uwv+s;=0A=
  i.onload=3Dfunction() { _uVoid(); }=0A=
 }=0A=
 if ((_userv=3D=3D1 || _userv=3D=3D2) && _uSP()) {=0A=
  var i2=3Dnew Image(1,1);=0A=
  =
i2.src=3D_ugifpath2+"?"+"utmwv=3D"+_uwv+s+"&utmac=3D"+_uacct+"&utmcc=3D"+=
_uGCS();=0A=
  i2.onload=3Dfunction() { _uVoid(); }=0A=
 }=0A=
 return;=0A=
}=0A=
function _uVoid() { return; }=0A=
function _uCInfo() {=0A=
 if (!_ucto || _ucto=3D=3D"") { _ucto=3D"15768000"; }=0A=
 if (!_uVG()) return;=0A=
 var =
c=3D"",t=3D"-",t2=3D"-",t3=3D"-",o=3D0,cs=3D0,cn=3D0,i=3D0,z=3D"-",s=3D""=
;=0A=
 if (_uanchor && _udlh && _udlh!=3D"") s=3D_udlh+"&";=0A=
 s+=3D_udl.search;=0A=
 var x=3Dnew Date(_udt.getTime()+(_ucto*1000));=0A=
 var dc=3D_ubd.cookie;=0A=
 x=3D" expires=3D"+x.toGMTString()+";";=0A=
 if (_ulink && !_ubl) {=0A=
  z=3D_uUES(_uGC(s,"__utmz=3D","&"));=0A=
  if (z!=3D"-" && z.indexOf(";")=3D=3D-1) { =
_ubd.cookie=3D"__utmz=3D"+z+"; path=3D"+_utcp+";"+x+_udo; return ""; }=0A=
 }=0A=
 z=3Ddc.indexOf("__utmz=3D"+_udh+".");=0A=
 if (z>-1) { z=3D_uGC(dc,"__utmz=3D"+_udh+".",";"); }=0A=
 else { z=3D"-"; }=0A=
 t=3D_uGC(s,_ucid+"=3D","&");=0A=
 t2=3D_uGC(s,_ucsr+"=3D","&");=0A=
 t3=3D_uGC(s,"gclid=3D","&");=0A=
 if ((t!=3D"-" && t!=3D"") || (t2!=3D"-" && t2!=3D"") || (t3!=3D"-" && =
t3!=3D"")) {=0A=
  if (t!=3D"-" && t!=3D"") c+=3D"utmcid=3D"+_uEC(t);=0A=
  if (t2!=3D"-" && t2!=3D"") { if (c !=3D "") c+=3D"|"; =
c+=3D"utmcsr=3D"+_uEC(t2); }=0A=
  if (t3!=3D"-" && t3!=3D"") { if (c !=3D "") c+=3D"|"; =
c+=3D"utmgclid=3D"+_uEC(t3); }=0A=
  t=3D_uGC(s,_uccn+"=3D","&");=0A=
  if (t!=3D"-" && t!=3D"") c+=3D"|utmccn=3D"+_uEC(t);=0A=
  else c+=3D"|utmccn=3D(not+set)";=0A=
  t=3D_uGC(s,_ucmd+"=3D","&");=0A=
  if (t!=3D"-" && t!=3D"") c+=3D"|utmcmd=3D"+_uEC(t);=0A=
  else  c+=3D"|utmcmd=3D(not+set)";=0A=
  t=3D_uGC(s,_uctr+"=3D","&");=0A=
  if (t!=3D"-" && t!=3D"") c+=3D"|utmctr=3D"+_uEC(t);=0A=
  else { t=3D_uOrg(1); if (t!=3D"-" && t!=3D"") =
c+=3D"|utmctr=3D"+_uEC(t); }=0A=
  t=3D_uGC(s,_ucct+"=3D","&");=0A=
  if (t!=3D"-" && t!=3D"") c+=3D"|utmcct=3D"+_uEC(t);=0A=
  t=3D_uGC(s,_ucno+"=3D","&");=0A=
  if (t=3D=3D"1") o=3D1;=0A=
  if (z!=3D"-" && o=3D=3D1) return "";=0A=
 }=0A=
 if (c=3D=3D"-" || c=3D=3D"") { c=3D_uOrg(); if (z!=3D"-" && =
_ufno=3D=3D1)  return ""; }=0A=
 if (c=3D=3D"-" || c=3D=3D"") { if (_ufns=3D=3D1)  c=3D_uRef(); if =
(z!=3D"-" && _ufno=3D=3D1)  return ""; }=0A=
 if (c=3D=3D"-" || c=3D=3D"") {=0A=
  if (z=3D=3D"-" && _ufns=3D=3D1) { =
c=3D"utmccn=3D(direct)|utmcsr=3D(direct)|utmcmd=3D(none)"; }=0A=
  if (c=3D=3D"-" || c=3D=3D"") return "";=0A=
 }=0A=
 if (z!=3D"-") {=0A=
  i=3Dz.indexOf(".");=0A=
  if (i>-1) i=3Dz.indexOf(".",i+1);=0A=
  if (i>-1) i=3Dz.indexOf(".",i+1);=0A=
  if (i>-1) i=3Dz.indexOf(".",i+1);=0A=
  t=3Dz.substring(i+1,z.length);=0A=
  if (t.toLowerCase()=3D=3Dc.toLowerCase()) cs=3D1;=0A=
  t=3Dz.substring(0,i);=0A=
  if ((i=3Dt.lastIndexOf(".")) > -1) {=0A=
   t=3Dt.substring(i+1,t.length);=0A=
   cn=3D(t*1);=0A=
  }=0A=
 }=0A=
 if (cs=3D=3D0 || _ufns=3D=3D1) {=0A=
  t=3D_uGC(dc,"__utma=3D"+_udh+".",";");=0A=
  if ((i=3Dt.lastIndexOf(".")) > 9) {=0A=
   _uns=3Dt.substring(i+1,t.length);=0A=
   _uns=3D(_uns*1);=0A=
  }=0A=
  cn++;=0A=
  if (_uns=3D=3D0) _uns=3D1;=0A=
  _ubd.cookie=3D"__utmz=3D"+_udh+"."+_ust+"."+_uns+"."+cn+"."+c+"; =
path=3D"+_utcp+"; "+x+_udo;=0A=
 }=0A=
 if (cs=3D=3D0 || _ufns=3D=3D1) return "&utmcn=3D1";=0A=
 else return "&utmcr=3D1";=0A=
}=0A=
function _uRef() {=0A=
 if (_ur=3D=3D"0" || _ur=3D=3D"" || _ur=3D=3D"-") return "";=0A=
 var i=3D0,h,k,n;=0A=
 if ((i=3D_ur.indexOf("://"))<0 || _uGCse()) return "";=0A=
 h=3D_ur.substring(i+3,_ur.length);=0A=
 if (h.indexOf("/") > -1) {=0A=
  k=3Dh.substring(h.indexOf("/"),h.length);=0A=
  if (k.indexOf("?") > -1) k=3Dk.substring(0,k.indexOf("?"));=0A=
  h=3Dh.substring(0,h.indexOf("/"));=0A=
 }=0A=
 h=3Dh.toLowerCase();=0A=
 n=3Dh;=0A=
 if ((i=3Dn.indexOf(":")) > -1) n=3Dn.substring(0,i);=0A=
 for (var ii=3D0;ii<_uRno.length;ii++) {=0A=
  if ((i=3Dn.indexOf(_uRno[ii].toLowerCase())) > -1 && =
n.length=3D=3D(i+_uRno[ii].length)) { _ufno=3D1; break; }=0A=
 }=0A=
 if (h.indexOf("www.")=3D=3D0) h=3Dh.substring(4,h.length);=0A=
 return =
"utmccn=3D(referral)|utmcsr=3D"+_uEC(h)+"|"+"utmcct=3D"+_uEC(k)+"|utmcmd=3D=
referral";=0A=
}=0A=
function _uOrg(t) {=0A=
 if (_ur=3D=3D"0" || _ur=3D=3D"" || _ur=3D=3D"-") return "";=0A=
 var i=3D0,h,k;=0A=
 if ((i=3D_ur.indexOf("://"))<0 || _uGCse()) return "";=0A=
 h=3D_ur.substring(i+3,_ur.length);=0A=
 if (h.indexOf("/") > -1) {=0A=
  h=3Dh.substring(0,h.indexOf("/"));=0A=
 }=0A=
 for (var ii=3D0;ii<_uOsr.length;ii++) {=0A=
  if (h.toLowerCase().indexOf(_uOsr[ii].toLowerCase()) > -1) {=0A=
   if ((i=3D_ur.indexOf("?"+_uOkw[ii]+"=3D")) > -1 || =
(i=3D_ur.indexOf("&"+_uOkw[ii]+"=3D")) > -1) {=0A=
    k=3D_ur.substring(i+_uOkw[ii].length+2,_ur.length);=0A=
    if ((i=3Dk.indexOf("&")) > -1) k=3Dk.substring(0,i);=0A=
    for (var yy=3D0;yy<_uOno.length;yy++) {=0A=
     if (_uOno[yy].toLowerCase()=3D=3Dk.toLowerCase()) { _ufno=3D1; =
break; }=0A=
    }=0A=
    if (t) return _uEC(k);=0A=
    else return =
"utmccn=3D(organic)|utmcsr=3D"+_uEC(_uOsr[ii])+"|"+"utmctr=3D"+_uEC(k)+"|=
utmcmd=3Dorganic";=0A=
   }=0A=
  }=0A=
 }=0A=
 return "";=0A=
}=0A=
function _uGCse() {=0A=
 var h,p;=0A=
 h=3Dp=3D_ur.split("://")[1];=0A=
 if(h.indexOf("/")>-1) {=0A=
  h=3Dh.split("/")[0];=0A=
  p=3Dp.substring(p.indexOf("/")+1,p.length);=0A=
 }=0A=
 if(p.indexOf("?")>-1) {=0A=
  p=3Dp.split("?")[0];=0A=
 }=0A=
 if(h.toLowerCase().indexOf("google")>-1) {=0A=
  if(_ur.indexOf("?q=3D")>-1 || _ur.indexOf("&q=3D")>-1) {=0A=
   if (p.toLowerCase().indexOf("cse")>-1) {=0A=
    return true;=0A=
   }=0A=
  }=0A=
 }=0A=
}=0A=
function _uBInfo() {=0A=
 var sr=3D"-",sc=3D"-",ul=3D"-",fl=3D"-",cs=3D"-",je=3D1;=0A=
 var n=3Dnavigator;=0A=
 if (self.screen) {=0A=
  sr=3Dscreen.width+"x"+screen.height;=0A=
  sc=3Dscreen.colorDepth+"-bit";=0A=
 } else if (self.java) {=0A=
  var j=3Djava.awt.Toolkit.getDefaultToolkit();=0A=
  var s=3Dj.getScreenSize();=0A=
  sr=3Ds.width+"x"+s.height;=0A=
 }=0A=
 if (n.language) { ul=3Dn.language.toLowerCase(); }=0A=
 else if (n.browserLanguage) { ul=3Dn.browserLanguage.toLowerCase(); }=0A=
 je=3Dn.javaEnabled()?1:0;=0A=
 if (_uflash) fl=3D_uFlash();=0A=
 if (_ubd.characterSet) cs=3D_uES(_ubd.characterSet);=0A=
 else if (_ubd.charset) cs=3D_uES(_ubd.charset);=0A=
 return =
"&utmcs=3D"+cs+"&utmsr=3D"+sr+"&utmsc=3D"+sc+"&utmul=3D"+ul+"&utmje=3D"+j=
e+"&utmfl=3D"+fl;=0A=
}=0A=
function __utmSetTrans() {=0A=
 var e;=0A=
 if (_ubd.getElementById) e=3D_ubd.getElementById("utmtrans");=0A=
 else if (_ubd.utmform && _ubd.utmform.utmtrans) =
e=3D_ubd.utmform.utmtrans;=0A=
 if (!e) return;=0A=
 var l=3De.value.split("UTM:");=0A=
 var i,i2,c;=0A=
 if (_userv=3D=3D0 || _userv=3D=3D2) i=3Dnew Array();=0A=
 if (_userv=3D=3D1 || _userv=3D=3D2) { i2=3Dnew Array(); c=3D_uGCS(); }=0A=
=0A=
 for (var ii=3D0;ii<l.length;ii++) {=0A=
  l[ii]=3D_uTrim(l[ii]);=0A=
  if (l[ii].charAt(0)!=3D'T' && l[ii].charAt(0)!=3D'I') continue;=0A=
  var r=3DMath.round(Math.random()*2147483647);=0A=
  if (!_utsp || _utsp=3D=3D"") _utsp=3D"|";=0A=
  var f=3Dl[ii].split(_utsp),s=3D"";=0A=
  if (f[0].charAt(0)=3D=3D'T') {=0A=
   s=3D"&utmt=3Dtran"+"&utmn=3D"+r;=0A=
   f[1]=3D_uTrim(f[1]); if(f[1]&&f[1]!=3D"") =
s+=3D"&utmtid=3D"+_uES(f[1]);=0A=
   f[2]=3D_uTrim(f[2]); if(f[2]&&f[2]!=3D"") =
s+=3D"&utmtst=3D"+_uES(f[2]);=0A=
   f[3]=3D_uTrim(f[3]); if(f[3]&&f[3]!=3D"") =
s+=3D"&utmtto=3D"+_uES(f[3]);=0A=
   f[4]=3D_uTrim(f[4]); if(f[4]&&f[4]!=3D"") =
s+=3D"&utmttx=3D"+_uES(f[4]);=0A=
   f[5]=3D_uTrim(f[5]); if(f[5]&&f[5]!=3D"") =
s+=3D"&utmtsp=3D"+_uES(f[5]);=0A=
   f[6]=3D_uTrim(f[6]); if(f[6]&&f[6]!=3D"") =
s+=3D"&utmtci=3D"+_uES(f[6]);=0A=
   f[7]=3D_uTrim(f[7]); if(f[7]&&f[7]!=3D"") =
s+=3D"&utmtrg=3D"+_uES(f[7]);=0A=
   f[8]=3D_uTrim(f[8]); if(f[8]&&f[8]!=3D"") =
s+=3D"&utmtco=3D"+_uES(f[8]);=0A=
  } else {=0A=
   s=3D"&utmt=3Ditem"+"&utmn=3D"+r;=0A=
   f[1]=3D_uTrim(f[1]); if(f[1]&&f[1]!=3D"") =
s+=3D"&utmtid=3D"+_uES(f[1]);=0A=
   f[2]=3D_uTrim(f[2]); if(f[2]&&f[2]!=3D"") =
s+=3D"&utmipc=3D"+_uES(f[2]);=0A=
   f[3]=3D_uTrim(f[3]); if(f[3]&&f[3]!=3D"") =
s+=3D"&utmipn=3D"+_uES(f[3]);=0A=
   f[4]=3D_uTrim(f[4]); if(f[4]&&f[4]!=3D"") =
s+=3D"&utmiva=3D"+_uES(f[4]);=0A=
   f[5]=3D_uTrim(f[5]); if(f[5]&&f[5]!=3D"") =
s+=3D"&utmipr=3D"+_uES(f[5]);=0A=
   f[6]=3D_uTrim(f[6]); if(f[6]&&f[6]!=3D"") =
s+=3D"&utmiqt=3D"+_uES(f[6]);=0A=
  }=0A=
  if (_udl.hostname && _udl.hostname!=3D"") =
s+=3D"&utmhn=3D"+_uES(_udl.hostname);=0A=
  if (_usample && _usample !=3D 100) s+=3D"&utmsp=3D"+_uES(_usample);=0A=
=0A=
  if ((_userv=3D=3D0 || _userv=3D=3D2) && _uSP()) {=0A=
   i[ii]=3Dnew Image(1,1);=0A=
   i[ii].src=3D_ugifpath+"?"+"utmwv=3D"+_uwv+s;=0A=
   i[ii].onload=3Dfunction() { _uVoid(); }=0A=
  }=0A=
  if ((_userv=3D=3D1 || _userv=3D=3D2) && _uSP()) {=0A=
   i2[ii]=3Dnew Image(1,1);=0A=
   =
i2[ii].src=3D_ugifpath2+"?"+"utmwv=3D"+_uwv+s+"&utmac=3D"+_uacct+"&utmcc=3D=
"+c;=0A=
   i2[ii].onload=3Dfunction() { _uVoid(); }=0A=
  }=0A=
 }=0A=
 return;=0A=
}=0A=
function _uFlash() {=0A=
 var f=3D"-",n=3Dnavigator;=0A=
 if (n.plugins && n.plugins.length) {=0A=
  for (var ii=3D0;ii<n.plugins.length;ii++) {=0A=
   if (n.plugins[ii].name.indexOf('Shockwave Flash')!=3D-1) {=0A=
    f=3Dn.plugins[ii].description.split('Shockwave Flash ')[1];=0A=
    break;=0A=
   }=0A=
  }=0A=
 } else {=0A=
  var fl;=0A=
  try {=0A=
   fl =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");=0A=
   f =3D fl.GetVariable("$version");=0A=
  } catch(e) {}=0A=
  if (f =3D=3D "-") {=0A=
   try {=0A=
    fl =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");=0A=
    f =3D "WIN 6,0,21,0";=0A=
    fl.AllowScriptAccess =3D "always";=0A=
    f =3D fl.GetVariable("$version");=0A=
   } catch(e) {}=0A=
  }=0A=
  if (f =3D=3D "-") {=0A=
   try {=0A=
    fl =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash");=0A=
    f =3D fl.GetVariable("$version");=0A=
   } catch(e) {}=0A=
  }=0A=
  if (f !=3D "-") {=0A=
   f =3D f.split(" ")[1].split(",");=0A=
   f =3D f[0] + "." + f[1] + " r" + f[2];=0A=
  }=0A=
 }=0A=
 return f;=0A=
}=0A=
function __utmLinkerUrl(l,h) {=0A=
 var p,k,a=3D"-",b=3D"-",c=3D"-",x=3D"-",z=3D"-",v=3D"-";=0A=
 var dc=3D_ubd.cookie;=0A=
 var iq =3D l.indexOf("?");=0A=
 var ih =3D l.indexOf("#");=0A=
 var url=3Dl;=0A=
 if (dc) {=0A=
  a=3D_uES(_uGC(dc,"__utma=3D"+_udh+".",";"));=0A=
  b=3D_uES(_uGC(dc,"__utmb=3D"+_udh,";"));=0A=
  c=3D_uES(_uGC(dc,"__utmc=3D"+_udh,";"));=0A=
  x=3D_uES(_uGC(dc,"__utmx=3D"+_udh,";"));=0A=
  z=3D_uES(_uGC(dc,"__utmz=3D"+_udh+".",";"));=0A=
  v=3D_uES(_uGC(dc,"__utmv=3D"+_udh+".",";"));=0A=
  k=3D(_uHash(a+b+c+x+z+v)*1)+(_udh*1);=0A=
  =
p=3D"__utma=3D"+a+"&__utmb=3D"+b+"&__utmc=3D"+c+"&__utmx=3D"+x+"&__utmz=3D=
"+z+"&__utmv=3D"+v+"&__utmk=3D"+k;=0A=
 }=0A=
 if (p) {=0A=
  if (h && ih>-1) return;=0A=
  if (h) { url=3Dl+"#"+p; }=0A=
  else {=0A=
   if (iq=3D=3D-1 && ih=3D=3D-1) url=3Dl+"?"+p;=0A=
   else if (ih=3D=3D-1) url=3Dl+"&"+p;=0A=
   else if (iq=3D=3D-1) url=3Dl.substring(0,ih-1)+"?"+p+l.substring(ih);=0A=
   else url=3Dl.substring(0,ih-1)+"&"+p+l.substring(ih);=0A=
  }=0A=
 }=0A=
 return url;=0A=
}=0A=
function __utmLinker(l,h) {=0A=
 if (!_ulink || !l || l=3D=3D"") return;=0A=
 _udl.href=3D__utmLinkerUrl(l,h);=0A=
}=0A=
function __utmLinkPost(f,h) {=0A=
 if (!_ulink || !f || !f.action) return;=0A=
 f.action=3D__utmLinkerUrl(f.action, h);=0A=
 return;=0A=
}=0A=
function __utmSetVar(v) {=0A=
 if (!v || v=3D=3D"") return;=0A=
 if (!_udo || _udo =3D=3D "") {=0A=
  _udh=3D_uDomain();=0A=
  if (_udn && _udn!=3D"") { _udo=3D" domain=3D"+_udn+";"; }=0A=
 }=0A=
 if (!_uVG()) return;=0A=
 var r=3DMath.round(Math.random() * 2147483647);=0A=
 _ubd.cookie=3D"__utmv=3D"+_udh+"."+_uES(v)+"; path=3D"+_utcp+"; =
expires=3D"+_uNx()+";"+_udo;=0A=
 var s=3D"&utmt=3Dvar&utmn=3D"+r;=0A=
 if (_usample && _usample !=3D 100) s+=3D"&utmsp=3D"+_uES(_usample);=0A=
 if ((_userv=3D=3D0 || _userv=3D=3D2) && _uSP()) {=0A=
  var i=3Dnew Image(1,1);=0A=
  i.src=3D_ugifpath+"?"+"utmwv=3D"+_uwv+s;=0A=
  i.onload=3Dfunction() { _uVoid(); }=0A=
 }=0A=
 if ((_userv=3D=3D1 || _userv=3D=3D2) && _uSP()) {=0A=
  var i2=3Dnew Image(1,1);=0A=
  =
i2.src=3D_ugifpath2+"?"+"utmwv=3D"+_uwv+s+"&utmac=3D"+_uacct+"&utmcc=3D"+=
_uGCS();=0A=
  i2.onload=3Dfunction() { _uVoid(); }=0A=
 }=0A=
}=0A=
function _uGCS() {=0A=
 var t,c=3D"",dc=3D_ubd.cookie;=0A=
 if ((t=3D_uGC(dc,"__utma=3D"+_udh+".",";"))!=3D"-") =
c+=3D_uES("__utma=3D"+t+";+");=0A=
 if ((t=3D_uGC(dc,"__utmx=3D"+_udh,";"))!=3D"-") =
c+=3D_uES("__utmx=3D"+t+";+");=0A=
 if ((t=3D_uGC(dc,"__utmz=3D"+_udh+".",";"))!=3D"-") =
c+=3D_uES("__utmz=3D"+t+";+");=0A=
 if ((t=3D_uGC(dc,"__utmv=3D"+_udh+".",";"))!=3D"-") =
c+=3D_uES("__utmv=3D"+t+";");=0A=
 if (c.charAt(c.length-1)=3D=3D"+") c=3Dc.substring(0,c.length-1);=0A=
 return c;=0A=
}=0A=
function _uGC(l,n,s) {=0A=
 if (!l || l=3D=3D"" || !n || n=3D=3D"" || !s || s=3D=3D"") return "-";=0A=
 var i,i2,i3,c=3D"-";=0A=
 i=3Dl.indexOf(n);=0A=
 i3=3Dn.indexOf("=3D")+1;=0A=
 if (i > -1) {=0A=
  i2=3Dl.indexOf(s,i); if (i2 < 0) { i2=3Dl.length; }=0A=
  c=3Dl.substring((i+i3),i2);=0A=
 }=0A=
 return c;=0A=
}=0A=
function _uDomain() {=0A=
 if (!_udn || _udn=3D=3D"" || _udn=3D=3D"none") { _udn=3D""; return 1; }=0A=
 if (_udn=3D=3D"auto") {=0A=
  var d=3D_ubd.domain;=0A=
  if (d.substring(0,4)=3D=3D"www.") {=0A=
   d=3Dd.substring(4,d.length);=0A=
  }=0A=
  _udn=3Dd;=0A=
 }=0A=
 _udn =3D _udn.toLowerCase(); =0A=
 if (_uhash=3D=3D"off") return 1;=0A=
 return _uHash(_udn);=0A=
}=0A=
function _uHash(d) {=0A=
 if (!d || d=3D=3D"") return 1;=0A=
 var h=3D0,g=3D0;=0A=
 for (var i=3Dd.length-1;i>=3D0;i--) {=0A=
  var c=3DparseInt(d.charCodeAt(i));=0A=
  h=3D((h << 6) & 0xfffffff) + c + (c << 14);=0A=
  if ((g=3Dh & 0xfe00000)!=3D0) h=3D(h ^ (g >> 21));=0A=
 }=0A=
 return h;=0A=
}=0A=
function _uFixA(c,s,t) {=0A=
 if (!c || c=3D=3D"" || !s || s=3D=3D"" || !t || t=3D=3D"") return "-";=0A=
 var a=3D_uGC(c,"__utma=3D"+_udh+".",s);=0A=
 var lt=3D0,i=3D0;=0A=
 if ((i=3Da.lastIndexOf(".")) > 9) {=0A=
  _uns=3Da.substring(i+1,a.length);=0A=
  _uns=3D(_uns*1)+1;=0A=
  a=3Da.substring(0,i);=0A=
  if ((i=3Da.lastIndexOf(".")) > 7) {=0A=
   lt=3Da.substring(i+1,a.length);=0A=
   a=3Da.substring(0,i);=0A=
  }=0A=
  if ((i=3Da.lastIndexOf(".")) > 5) {=0A=
   a=3Da.substring(0,i);=0A=
  }=0A=
  a+=3D"."+lt+"."+t+"."+_uns;=0A=
 }=0A=
 return a;=0A=
}=0A=
function _uTrim(s) {=0A=
  if (!s || s=3D=3D"") return "";=0A=
  while ((s.charAt(0)=3D=3D' ') || (s.charAt(0)=3D=3D'\n') || =
(s.charAt(0,1)=3D=3D'\r')) s=3Ds.substring(1,s.length);=0A=
  while ((s.charAt(s.length-1)=3D=3D' ') || =
(s.charAt(s.length-1)=3D=3D'\n') || (s.charAt(s.length-1)=3D=3D'\r')) =
s=3Ds.substring(0,s.length-1);=0A=
  return s;=0A=
}=0A=
function _uEC(s) {=0A=
  var n=3D"";=0A=
  if (!s || s=3D=3D"") return "";=0A=
  for (var i=3D0;i<s.length;i++) {if (s.charAt(i)=3D=3D" ") n+=3D"+"; =
else n+=3Ds.charAt(i);}=0A=
  return n;=0A=
}=0A=
function __utmVisitorCode(f) {=0A=
 var r=3D0,t=3D0,i=3D0,i2=3D0,m=3D31;=0A=
 var a=3D_uGC(_ubd.cookie,"__utma=3D"+_udh+".",";");=0A=
 if ((i=3Da.indexOf(".",0))<0) return;=0A=
 if ((i2=3Da.indexOf(".",i+1))>0) r=3Da.substring(i+1,i2); else return =
"";  =0A=
 if ((i=3Da.indexOf(".",i2+1))>0) t=3Da.substring(i2+1,i); else return =
"";  =0A=
 if (f) {=0A=
  return r;=0A=
 } else {=0A=
  var c=3Dnew =
Array('A','B','C','D','E','F','G','H','J','K','L','M','N','P','R','S','T'=
,'U','V','W','X','Y','Z','1','2','3','4','5','6','7','8','9');=0A=
  return =
c[r>>28&m]+c[r>>23&m]+c[r>>18&m]+c[r>>13&m]+"-"+c[r>>8&m]+c[r>>3&m]+c[((r=
&7)<<2)+(t>>30&3)]+c[t>>25&m]+c[t>>20&m]+"-"+c[t>>15&m]+c[t>>10&m]+c[t>>5=
&m]+c[t&m];=0A=
 }=0A=
}=0A=
function _uIN(n) {=0A=
 if (!n) return false;=0A=
 for (var i=3D0;i<n.length;i++) {=0A=
  var c=3Dn.charAt(i);=0A=
  if ((c<"0" || c>"9") && (c!=3D".")) return false;=0A=
 }=0A=
 return true;=0A=
}=0A=
function _uES(s,u) {=0A=
 if (typeof(encodeURIComponent) =3D=3D 'function') {=0A=
  if (u) return encodeURI(s);=0A=
  else return encodeURIComponent(s);=0A=
 } else {=0A=
  return escape(s);=0A=
 }=0A=
}=0A=
function _uUES(s) {=0A=
 if (typeof(decodeURIComponent) =3D=3D 'function') {=0A=
  return decodeURIComponent(s);=0A=
 } else {=0A=
  return unescape(s);=0A=
 }=0A=
}=0A=
function _uVG() {=0A=
 if((_udn.indexOf("www.google.") =3D=3D 0 || _udn.indexOf(".google.") =
=3D=3D 0 || _udn.indexOf("google.") =3D=3D 0) && _utcp=3D=3D'/' && =
_udn.indexOf("google.org")=3D=3D-1) {=0A=
  return false;=0A=
 }=0A=
 return true;=0A=
}=0A=
function _uSP() {=0A=
 var s=3D100;=0A=
 if (_usample) s=3D_usample;=0A=
 if(s>=3D100 || s<=3D0) return true;=0A=
 return ((__utmVisitorCode(1)%10000)<(s*100));=0A=
}=0A=
function urchinPathCopy(p){=0A=
 var d=3Ddocument,nx,tx,sx,i,c,cs,t,h,o;=0A=
 cs=3Dnew Array("a","b","c","v","x","z");=0A=
 h=3D_uDomain(); if (_udn && _udn!=3D"") o=3D" domain=3D"+_udn+";";=0A=
 nx=3D_uNx()+";";=0A=
 tx=3Dnew Date(); tx.setTime(tx.getTime()+(_utimeout*1000));=0A=
 tx=3Dtx.toGMTString()+";";=0A=
 sx=3Dnew Date(); sx.setTime(sx.getTime()+(_ucto*1000));=0A=
 sx=3Dsx.toGMTString()+";";=0A=
 for (i=3D0;i<6;i++){=0A=
  t=3D" expires=3D";=0A=
  if (i=3D=3D1) t+=3Dtx; else if (i=3D=3D2) t=3D""; else if (i=3D=3D5) =
t+=3Dsx; else t+=3Dnx;=0A=
  c=3D_uGC(d.cookie,"__utm"+cs[i]+"=3D"+h,";");=0A=
  if (c!=3D"-") d.cookie=3D"__utm"+cs[i]+"=3D"+c+"; path=3D"+p+";"+t+o;=0A=
 }=0A=
}=0A=
function _uCO() {=0A=
 if (!_utk || _utk=3D=3D"" || _utk.length<10) return;=0A=
 var d=3D'www.google.com';=0A=
 if (_utk.charAt(0)=3D=3D'!') d=3D'analytics.corp.google.com';=0A=
 _ubd.cookie=3D"GASO=3D"+_utk+"; path=3D"+_utcp+";"+_udo;=0A=
 var sc=3Ddocument.createElement('script');=0A=
 sc.type=3D'text/javascript';=0A=
 sc.id=3D"_gasojs";=0A=
 =
sc.src=3D'https://'+d+'/analytics/reporting/overlay_js?gaso=3D'+_utk+'&'+=
Math.random();=0A=
 document.getElementsByTagName('head')[0].appendChild(sc);  =0A=
}=0A=
function _uGT() {=0A=
 var h=3Dlocation.hash, a;=0A=
 if (h && h!=3D"" && h.indexOf("#gaso=3D")=3D=3D0) {=0A=
  a=3D_uGC(h,"gaso=3D","&");=0A=
 } else {=0A=
  a=3D_uGC(_ubd.cookie,"GASO=3D",";");=0A=
 }=0A=
 return a;=0A=
}=0A=
var _utk=3D_uGT();=0A=
if (_utk && _utk!=3D"" && _utk.length>10 && _utk.indexOf("=3D")=3D=3D-1) =
{=0A=
 if (window.addEventListener) {=0A=
  window.addEventListener('load', _uCO, false); =0A=
 } else if (window.attachEvent) { =0A=
  window.attachEvent('onload', _uCO);=0A=
 }=0A=
}=0A=
=0A=
function _uNx() {=0A=
  return (new Date((new Date()).getTime()+63072000000)).toGMTString();=0A=
}=0A=

------=_NextPart_000_0000_01C930BF.206A3D50--
