From: <Guardado por Microsoft Internet Explorer 5>
Subject: Jamglue - maria's studio
Date: Fri, 22 Jun 2007 20:21:36 +0200
MIME-Version: 1.0
Content-Type: multipart/related;
	type="text/html";
	boundary="----=_NextPart_000_02C3_01C7B50A.EECCFB60"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3028

This is a multi-part message in MIME format.

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.jamglue.com/people/maria

=EF=BB=BF<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" =
"http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<HTML lang=3Den><HEAD><TITLE>Jamglue - maria's studio</TITLE>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dutf-8"><LINK=20
href=3D"http://six.static.jamglue.com/favicon.png?20062007" =
type=3Dimage/png=20
rel=3Dicon><LINK title=3D"maria's Jamglue mixes"=20
href=3D"http://rss.jamglue.com/people/maria/mixes.rss" =
type=3Dapplication/rss+xml=20
rel=3Dalternate><LINK title=3D"maria's Jamglue tracks"=20
href=3D"http://rss.jamglue.com/people/maria/tracks.rss" =
type=3Dapplication/rss+xml=20
rel=3Dalternate>
<META content=3D"MSHTML 6.00.2900.3020" name=3DGENERATOR></HEAD>
<BODY><LINK media=3Dall=20
href=3D"http://four.static.jamglue.com/stylesheets/general.css?20062007" =

type=3Dtext/css rel=3DStylesheet><!--[if IE]><LINK media=3Dall=20
href=3D"http://six.static.jamglue.com/stylesheets/iehacks.css?20062007"=20
type=3Dtext/css rel=3DStylesheet><![endif]--><!--[if IE 6]><LINK =
media=3Dall=20
href=3D"http://one.static.jamglue.com/stylesheets/ie6hacks.css?20062007" =

type=3Dtext/css rel=3DStylesheet><![endif]-->
<SCRIPT =
src=3D"http://five.static.jamglue.com/javascripts/prototype.js?20062007" =

type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://five.static.jamglue.com/javascripts/effects.js?20062007"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://five.static.jamglue.com/javascripts/dragdrop.js?20062007"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://six.static.jamglue.com/javascripts/controls.js?20062007"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://six.static.jamglue.com/javascripts/application.js?20062007"=
=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://six.static.jamglue.com/javascripts/swfobject.js?20062007"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://one.static.jamglue.com/javascripts/extensions.js?20062007" =

type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://two.static.jamglue.com/javascripts/jamglue.js?20062007"=20
type=3Dtext/javascript></SCRIPT>
<!-- header, navigation //-->
<DIV id=3Dheader>
<TABLE height=3D58 cellSpacing=3D0 cellPadding=3D0 width=3D760 =
align=3Dcenter border=3D0>
  <TBODY>
  <TR>
    <TD>
      <DIV id=3Dlogo><A href=3D"http://www.jamglue.com/"><IMG =
height=3D54=20
      alt=3DLogo-placeholder=20
      =
src=3D"http://six.static.jamglue.com/images/nav/logo-placeholder.gif?2006=
2007"=20
      width=3D220 border=3D0></A> </DIV></TD>
    <TD align=3Dright>
      <DIV id=3DgreetingBox><SPAN id=3Dtop_login_span>You aren't signed =
in | <A=20
      onclick=3D"Element.toggle('top_login_form', 'top_login_span'); =
return false;"=20
      href=3D"http://www.jamglue.com/sign_in">Sign in</A> </SPAN>
      <FORM id=3Dtop_login_form style=3D"DISPLAY: none" =
action=3D/sign_in=20
      method=3Dpost><LABEL for=3Dname>Username: </LABEL><INPUT id=3Dname =
size=3D10=20
      name=3Dname> <LABEL for=3Dpassword>Password: </LABEL><INPUT =
id=3Dpassword=20
      type=3Dpassword size=3D10 name=3Dpassword> <INPUT id=3Durl =
type=3Dhidden=20
      value=3D/people/maria name=3Durl> <INPUT class=3Dtiny =
type=3Dsubmit value=3D"Sign in" name=3Dcommit> </FORM>| <A=20
      href=3D"http://www.jamglue.com/sign_up">Sign up</A> | <A=20
      href=3D"http://www.jamglue.com/help">Help</A> </DIV>
      <DIV id=3DsearchBox>
      <FORM action=3D/search method=3Dget>Search <SELECT id=3Dcategory=20
        name=3Dcategory><OPTION value=3D"All of Jamglue" selected>All of =

        Jamglue</OPTION> <OPTION value=3DMixes>Mixes</OPTION> <OPTION=20
        value=3DTracks>Tracks</OPTION> <OPTION =
value=3DPeople>People</OPTION>=20
        <OPTION value=3D"External Content">External =
Content</OPTION></SELECT> for=20
      <INPUT id=3Dquery name=3Dquery> <INPUT class=3Dtiny type=3Dsubmit =
value=3DGo name=3Dcommit>=20
  </FORM></DIV></TD></TR></TBODY></TABLE></DIV>
<DIV id=3DmainNavContainer align=3Dcenter>
<TABLE id=3DmainNav height=3D34 cellSpacing=3D0 cellPadding=3D0 =
width=3D760 border=3D0>
  <TBODY>
  <TR align=3Dmiddle>
    <TD class=3Dinactive><A =
href=3D"http://www.jamglue.com/">HOME</A></TD>
    <TD class=3Dinactive><A =
href=3D"http://www.jamglue.com/mixes">MIXES</A></TD>
    <TD class=3Dinactive><A =
href=3D"http://www.jamglue.com/tracks">TRACKS</A></TD>
    <TD class=3Dactive><A =
href=3D"http://www.jamglue.com/people">PEOPLE</A></TD>
    <TD class=3Dinactive><A=20
    =
href=3D"http://www.jamglue.com/contests">CONTESTS</A></TD></TR></TBODY></=
TABLE></DIV>
<DIV id=3DsubNavContainer>
<TABLE width=3D760 align=3Dcenter>
  <TBODY>
  <TR>
    <TD><SPAN class=3Dh1>Quick Links:</SPAN>&nbsp;&nbsp; <A=20
      href=3D"http://www.jamglue.com/upload">Upload or Record a =
Track</A></STRONG>=20
      &nbsp;&nbsp;|&nbsp;&nbsp; <A=20
      href=3D"http://www.jamglue.com/create_mix">Create a Mix</A>=20
      &nbsp;&nbsp;|&nbsp;&nbsp; <A=20
      href=3D"http://www.jamglue.com/contests/rkelly">DOUBLE UP with R. =
Kelly</A>=20
    </TD></TR></TBODY></TABLE></DIV><!-- breadcrumb //-->
<DIV id=3DbreadCrumbContainer>
<TABLE width=3D760 align=3Dcenter>
  <TBODY>
  <TR>
    <TD>You're Here: <A href=3D"http://www.jamglue.com/">Jamglue</A> =
&gt; <A=20
      href=3D"http://www.jamglue.com/people">People</A> &gt;=20
      <STRONG>maria</STRONG> </TD></TR></TBODY></TABLE></DIV><!-- end =
breadcrumb //--><!-- end header, navigation //--><!-- notice //--><!-- =
end notice //--><!-- main //-->
<DIV id=3Dmain>
<DIV id=3Dcontent>
<TABLE id=3DnameContainer height=3D30 cellSpacing=3D0 cellPadding=3D4 =
width=3D760=20
align=3Dcenter border=3D0>
  <TBODY>
  <TR>
    <TD class=3Dheading>maria</TD>
    <TD align=3Dright>
      <TABLE id=3DuserActionsBar cellSpacing=3D0 cellPadding=3D4 =
border=3D0>
        <TBODY>
        <TR vAlign=3Dbottom>
          <TD><SPAN class=3Dwarning><A=20
            =
href=3D"http://www.jamglue.com/sign_in?url=3D%2Fpeople%2Fmaria">Sign=20
            in</A> or <A=20
            =
href=3D"http://www.jamglue.com/sign_up?url=3D%2Fpeople%2Fmaria">sign=20
            up</A> to add yourself as a Fan=20
  </SPAN></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE><BR>
<TABLE cellSpacing=3D0 cellPadding=3D0 width=3D760 align=3Dcenter =
border=3D0>
  <TBODY>
  <TR>
    <TD vAlign=3Dtop align=3Dmiddle width=3D220>
      <DIV class=3Ddescription align=3Dcenter></DIV><BR>
      <DIV id=3DuserImageContainer><IMG height=3D167 alt=3D"large =
avatar"=20
      src=3D"http://images.jamglue.com/3453-large.gif" width=3D200 =
border=3D0> </DIV>
      <DIV align=3Dcenter>
      <DIV id=3DbioBox>
      <TABLE cellSpacing=3D0 cellPadding=3D4 width=3D"100%" border=3D0>
        <THEAD>
        <TR vAlign=3Dtop>
          <TD colSpan=3D3>About</TD></TR></THEAD>
        <TBODY>
        <TR vAlign=3Dtop>
          <TD width=3D80>Name:</TD>
          <TD align=3Dright width=3D2>&nbsp;</TD>
          <TD>maria </TD></TR>
        <TR vAlign=3Dtop>
          <TD width=3D80><NOBR>Joined Jamglue:</NOBR></TD>
          <TD align=3Dright width=3D2>&nbsp;</TD>
          <TD>115 days ago</TD></TR>
        <TR vAlign=3Dtop>
          <TD width=3D80><NOBR>Last active:</NOBR></TD>
          <TD align=3Dright width=3D2>&nbsp;</TD>
          <TD>More than a week ago </TD></TR>
        <TR vAlign=3Dtop>
          <TD width=3D80><NOBR>Profile viewed:</NOBR></TD>
          <TD align=3Dright width=3D2>&nbsp;</TD>
          <TD>189 times</TD></TR></TBODY></TABLE></DIV></DIV></TD>
    <TD vAlign=3Dtop width=3D20>&nbsp;</TD>
    <TD vAlign=3Dtop width=3D520>
      <TABLE width=3D"100%">
        <TBODY>
        <TR vAlign=3Dtop>
          <TD width=3D250>
            <H1>maria's Recent Mixes <A=20
            href=3D"http://rss.jamglue.com/people/maria/mixes.rss"><IMG=20
            class=3Dnoborder title=3D"Subscribe to this RSS 2.0 podcast" =

            alt=3DFeed-icon-12x12=20
            =
src=3D"http://two.static.jamglue.com/images/feed-icon-12x12.gif?20062007"=
></A>=20
            </H1>None yet </TD>
          <TD width=3D20>&nbsp;</TD>
          <TD width=3D250>
            <H1>maria's Recently Uploaded Tracks <A=20
            href=3D"http://rss.jamglue.com/people/maria/tracks.rss"><IMG =

            class=3Dnoborder title=3D"Subscribe to this RSS 2.0 podcast" =

            alt=3DFeed-icon-12x12=20
            =
src=3D"http://two.static.jamglue.com/images/feed-icon-12x12.gif?20062007"=
></A>=20
            </H1>
            <UL>
              <LI><SPAN class=3DinlinePlayerWrapper=20
              id=3Dec87e791-4a43-4f71-8f60-492b0a77a3b8><IMG =
class=3DhandCursor=20
              onclick=3D' var so =3D new =
SWFObject("/flash/inline-player.swf", "inline-player", "20", "20", "7", =
"#FFFFFF"); so.addParam("align", "absmiddle"); so.addParam("wmode", =
"transparent"); so.addVariable("rootId", 438611); =
so.addVariable("autoStart", 1); =
so.write("ec87e791-4a43-4f71-8f60-492b0a77a3b8"); '=20
              alt=3DPlay_button=20
              =
src=3D"http://five.static.jamglue.com/images/play_button.gif?20062007"=20
              align=3DabsMiddle> </SPAN><SPAN class=3Dpop>
              <DIV class=3DpopOverBox =
id=3Da1b71611-fb10-4e32-a9c8-d3ec864ad072=20
              style=3D"DISPLAY: none"></DIV></SPAN><A=20
              href=3D"http://www.jamglue.com/tracks/183085-le-on9"><IMG =
height=3D20=20
              alt=3D"tiny avatar"=20
              src=3D"http://static.jamglue.com/images/default-tiny.gif" =
width=3D20=20
              align=3DabsMiddle border=3D0></A> <A class=3DsongName =
title=3D""=20
              =
href=3D"http://www.jamglue.com/tracks/183085-le-on9">le=C3=A7on9</A>=20
              <SPAN class=3Dpoplink =
id=3Dpop_a1b71611-fb10-4e32-a9c8-d3ec864ad072=20
              style=3D"DISPLAY: none"><A=20
              onclick=3D"new =
Ajax.Request('/tracks/183085/popover?pop_id=3Da1b71611-fb10-4e32-a9c8-d3e=
c864ad072', {asynchronous:true, evalScripts:true}); return false;"=20
              href=3D"http://www.jamglue.com/people/maria#"><IMG =
alt=3DPop=20
              =
src=3D"http://two.static.jamglue.com/images/pop.gif?20062007"=20
              align=3DabsMiddle border=3D0></A> </SPAN><SPAN =
class=3Dpopspacer=20
              id=3Dpop_spacer_a1b71611-fb10-4e32-a9c8-d3ec864ad072><IMG =
height=3D13=20
              alt=3DTransparent=20
              =
src=3D"http://three.static.jamglue.com/images/transparent.png?20062007"=20
              width=3D13 align=3DabsMiddle border=3D0> </SPAN>
              <LI><SPAN class=3DinlinePlayerWrapper=20
              id=3D71648b87-dcf2-4e59-b71a-cc72df2cb873><IMG =
class=3DhandCursor=20
              onclick=3D' var so =3D new =
SWFObject("/flash/inline-player.swf", "inline-player", "20", "20", "7", =
"#FFFFFF"); so.addParam("align", "absmiddle"); so.addParam("wmode", =
"transparent"); so.addVariable("rootId", 438595); =
so.addVariable("autoStart", 1); =
so.write("71648b87-dcf2-4e59-b71a-cc72df2cb873"); '=20
              alt=3DPlay_button=20
              =
src=3D"http://five.static.jamglue.com/images/play_button.gif?20062007"=20
              align=3DabsMiddle> </SPAN><SPAN class=3Dpop>
              <DIV class=3DpopOverBox =
id=3D1681d7b3-c3df-4dd8-b1f5-f444d44abca2=20
              style=3D"DISPLAY: none"></DIV></SPAN><A=20
              href=3D"http://www.jamglue.com/tracks/183081-le-on8"><IMG =
height=3D20=20
              alt=3D"tiny avatar"=20
              src=3D"http://static.jamglue.com/images/default-tiny.gif" =
width=3D20=20
              align=3DabsMiddle border=3D0></A> <A class=3DsongName =
title=3D""=20
              =
href=3D"http://www.jamglue.com/tracks/183081-le-on8">le=C3=A7on8</A>=20
              <SPAN class=3Dpoplink =
id=3Dpop_1681d7b3-c3df-4dd8-b1f5-f444d44abca2=20
              style=3D"DISPLAY: none"><A=20
              onclick=3D"new =
Ajax.Request('/tracks/183081/popover?pop_id=3D1681d7b3-c3df-4dd8-b1f5-f44=
4d44abca2', {asynchronous:true, evalScripts:true}); return false;"=20
              href=3D"http://www.jamglue.com/people/maria#"><IMG =
alt=3DPop=20
              =
src=3D"http://two.static.jamglue.com/images/pop.gif?20062007"=20
              align=3DabsMiddle border=3D0></A> </SPAN><SPAN =
class=3Dpopspacer=20
              id=3Dpop_spacer_1681d7b3-c3df-4dd8-b1f5-f444d44abca2><IMG =
height=3D13=20
              alt=3DTransparent=20
              =
src=3D"http://three.static.jamglue.com/images/transparent.png?20062007"=20
              width=3D13 align=3DabsMiddle border=3D0> </SPAN>
              <LI><SPAN class=3DinlinePlayerWrapper=20
              id=3D65fd214e-983f-4542-8489-d4f56d65634e><IMG =
class=3DhandCursor=20
              onclick=3D' var so =3D new =
SWFObject("/flash/inline-player.swf", "inline-player", "20", "20", "7", =
"#FFFFFF"); so.addParam("align", "absmiddle"); so.addParam("wmode", =
"transparent"); so.addVariable("rootId", 438581); =
so.addVariable("autoStart", 1); =
so.write("65fd214e-983f-4542-8489-d4f56d65634e"); '=20
              alt=3DPlay_button=20
              =
src=3D"http://five.static.jamglue.com/images/play_button.gif?20062007"=20
              align=3DabsMiddle> </SPAN><SPAN class=3Dpop>
              <DIV class=3DpopOverBox =
id=3D2f221de5-1483-41cc-bf9b-7f21a1203628=20
              style=3D"DISPLAY: none"></DIV></SPAN><A=20
              href=3D"http://www.jamglue.com/tracks/183071-le-on7"><IMG =
height=3D20=20
              alt=3D"tiny avatar"=20
              src=3D"http://static.jamglue.com/images/default-tiny.gif" =
width=3D20=20
              align=3DabsMiddle border=3D0></A> <A class=3DsongName =
title=3D""=20
              =
href=3D"http://www.jamglue.com/tracks/183071-le-on7">le=C3=A7on7</A>=20
              <SPAN class=3Dpoplink =
id=3Dpop_2f221de5-1483-41cc-bf9b-7f21a1203628=20
              style=3D"DISPLAY: none"><A=20
              onclick=3D"new =
Ajax.Request('/tracks/183071/popover?pop_id=3D2f221de5-1483-41cc-bf9b-7f2=
1a1203628', {asynchronous:true, evalScripts:true}); return false;"=20
              href=3D"http://www.jamglue.com/people/maria#"><IMG =
alt=3DPop=20
              =
src=3D"http://two.static.jamglue.com/images/pop.gif?20062007"=20
              align=3DabsMiddle border=3D0></A> </SPAN><SPAN =
class=3Dpopspacer=20
              id=3Dpop_spacer_2f221de5-1483-41cc-bf9b-7f21a1203628><IMG =
height=3D13=20
              alt=3DTransparent=20
              =
src=3D"http://three.static.jamglue.com/images/transparent.png?20062007"=20
              width=3D13 align=3DabsMiddle border=3D0> </SPAN>
              <LI><SPAN class=3DinlinePlayerWrapper=20
              id=3D2e424c89-22e5-44d5-a4b6-00d71ce8c2e3><IMG =
class=3DhandCursor=20
              onclick=3D' var so =3D new =
SWFObject("/flash/inline-player.swf", "inline-player", "20", "20", "7", =
"#FFFFFF"); so.addParam("align", "absmiddle"); so.addParam("wmode", =
"transparent"); so.addVariable("rootId", 438571); =
so.addVariable("autoStart", 1); =
so.write("2e424c89-22e5-44d5-a4b6-00d71ce8c2e3"); '=20
              alt=3DPlay_button=20
              =
src=3D"http://five.static.jamglue.com/images/play_button.gif?20062007"=20
              align=3DabsMiddle> </SPAN><SPAN class=3Dpop>
              <DIV class=3DpopOverBox =
id=3D2e3b181d-0f3b-4f7e-82b8-f07c13d39af0=20
              style=3D"DISPLAY: none"></DIV></SPAN><A=20
              href=3D"http://www.jamglue.com/tracks/183059-le-on6"><IMG =
height=3D20=20
              alt=3D"tiny avatar"=20
              src=3D"http://static.jamglue.com/images/default-tiny.gif" =
width=3D20=20
              align=3DabsMiddle border=3D0></A> <A class=3DsongName =
title=3D""=20
              =
href=3D"http://www.jamglue.com/tracks/183059-le-on6">le=C3=A7on6</A>=20
              <SPAN class=3Dpoplink =
id=3Dpop_2e3b181d-0f3b-4f7e-82b8-f07c13d39af0=20
              style=3D"DISPLAY: none"><A=20
              onclick=3D"new =
Ajax.Request('/tracks/183059/popover?pop_id=3D2e3b181d-0f3b-4f7e-82b8-f07=
c13d39af0', {asynchronous:true, evalScripts:true}); return false;"=20
              href=3D"http://www.jamglue.com/people/maria#"><IMG =
alt=3DPop=20
              =
src=3D"http://two.static.jamglue.com/images/pop.gif?20062007"=20
              align=3DabsMiddle border=3D0></A> </SPAN><SPAN =
class=3Dpopspacer=20
              id=3Dpop_spacer_2e3b181d-0f3b-4f7e-82b8-f07c13d39af0><IMG =
height=3D13=20
              alt=3DTransparent=20
              =
src=3D"http://three.static.jamglue.com/images/transparent.png?20062007"=20
              width=3D13 align=3DabsMiddle border=3D0> </SPAN>
              <LI><SPAN class=3DinlinePlayerWrapper=20
              id=3Df26524d2-1793-4471-ba50-a9dd56ac3415><IMG =
class=3DhandCursor=20
              onclick=3D' var so =3D new =
SWFObject("/flash/inline-player.swf", "inline-player", "20", "20", "7", =
"#FFFFFF"); so.addParam("align", "absmiddle"); so.addParam("wmode", =
"transparent"); so.addVariable("rootId", 438565); =
so.addVariable("autoStart", 1); =
so.write("f26524d2-1793-4471-ba50-a9dd56ac3415"); '=20
              alt=3DPlay_button=20
              =
src=3D"http://five.static.jamglue.com/images/play_button.gif?20062007"=20
              align=3DabsMiddle> </SPAN><SPAN class=3Dpop>
              <DIV class=3DpopOverBox =
id=3Dd6c7811c-ed1e-40e8-81d8-9174aaaa1ee5=20
              style=3D"DISPLAY: none"></DIV></SPAN><A=20
              href=3D"http://www.jamglue.com/tracks/183053-le-on5"><IMG =
height=3D20=20
              alt=3D"tiny avatar"=20
              src=3D"http://static.jamglue.com/images/default-tiny.gif" =
width=3D20=20
              align=3DabsMiddle border=3D0></A> <A class=3DsongName =
title=3D""=20
              =
href=3D"http://www.jamglue.com/tracks/183053-le-on5">le=C3=A7on5</A>=20
              <SPAN class=3Dpoplink =
id=3Dpop_d6c7811c-ed1e-40e8-81d8-9174aaaa1ee5=20
              style=3D"DISPLAY: none"><A=20
              onclick=3D"new =
Ajax.Request('/tracks/183053/popover?pop_id=3Dd6c7811c-ed1e-40e8-81d8-917=
4aaaa1ee5', {asynchronous:true, evalScripts:true}); return false;"=20
              href=3D"http://www.jamglue.com/people/maria#"><IMG =
alt=3DPop=20
              =
src=3D"http://two.static.jamglue.com/images/pop.gif?20062007"=20
              align=3DabsMiddle border=3D0></A> </SPAN><SPAN =
class=3Dpopspacer=20
              id=3Dpop_spacer_d6c7811c-ed1e-40e8-81d8-9174aaaa1ee5><IMG =
height=3D13=20
              alt=3DTransparent=20
              =
src=3D"http://three.static.jamglue.com/images/transparent.png?20062007"=20
              width=3D13 align=3DabsMiddle border=3D0> </SPAN>
              <LI><SPAN class=3DinlinePlayerWrapper=20
              id=3Da41815a5-1274-46a4-8d26-26f238f818ed><IMG =
class=3DhandCursor=20
              onclick=3D' var so =3D new =
SWFObject("/flash/inline-player.swf", "inline-player", "20", "20", "7", =
"#FFFFFF"); so.addParam("align", "absmiddle"); so.addParam("wmode", =
"transparent"); so.addVariable("rootId", 438553); =
so.addVariable("autoStart", 1); =
so.write("a41815a5-1274-46a4-8d26-26f238f818ed"); '=20
              alt=3DPlay_button=20
              =
src=3D"http://five.static.jamglue.com/images/play_button.gif?20062007"=20
              align=3DabsMiddle> </SPAN><SPAN class=3Dpop>
              <DIV class=3DpopOverBox =
id=3D771527a1-ed9c-4de8-9801-5010fb08a154=20
              style=3D"DISPLAY: none"></DIV></SPAN><A=20
              href=3D"http://www.jamglue.com/tracks/183043-le-on4"><IMG =
height=3D20=20
              alt=3D"tiny avatar"=20
              src=3D"http://static.jamglue.com/images/default-tiny.gif" =
width=3D20=20
              align=3DabsMiddle border=3D0></A> <A class=3DsongName =
title=3D""=20
              =
href=3D"http://www.jamglue.com/tracks/183043-le-on4">le=C3=A7on4</A>=20
              <SPAN class=3Dpoplink =
id=3Dpop_771527a1-ed9c-4de8-9801-5010fb08a154=20
              style=3D"DISPLAY: none"><A=20
              onclick=3D"new =
Ajax.Request('/tracks/183043/popover?pop_id=3D771527a1-ed9c-4de8-9801-501=
0fb08a154', {asynchronous:true, evalScripts:true}); return false;"=20
              href=3D"http://www.jamglue.com/people/maria#"><IMG =
alt=3DPop=20
              =
src=3D"http://two.static.jamglue.com/images/pop.gif?20062007"=20
              align=3DabsMiddle border=3D0></A> </SPAN><SPAN =
class=3Dpopspacer=20
              id=3Dpop_spacer_771527a1-ed9c-4de8-9801-5010fb08a154><IMG =
height=3D13=20
              alt=3DTransparent=20
              =
src=3D"http://three.static.jamglue.com/images/transparent.png?20062007"=20
              width=3D13 align=3DabsMiddle border=3D0> </SPAN>
              <LI><SPAN class=3DinlinePlayerWrapper=20
              id=3D2e0a0e15-582a-46dc-b0a0-e4926f94b503><IMG =
class=3DhandCursor=20
              onclick=3D' var so =3D new =
SWFObject("/flash/inline-player.swf", "inline-player", "20", "20", "7", =
"#FFFFFF"); so.addParam("align", "absmiddle"); so.addParam("wmode", =
"transparent"); so.addVariable("rootId", 438545); =
so.addVariable("autoStart", 1); =
so.write("2e0a0e15-582a-46dc-b0a0-e4926f94b503"); '=20
              alt=3DPlay_button=20
              =
src=3D"http://five.static.jamglue.com/images/play_button.gif?20062007"=20
              align=3DabsMiddle> </SPAN><SPAN class=3Dpop>
              <DIV class=3DpopOverBox =
id=3D87267a6a-930d-4279-992c-e5d67b92633a=20
              style=3D"DISPLAY: none"></DIV></SPAN><A=20
              href=3D"http://www.jamglue.com/tracks/183035-le-on3"><IMG =
height=3D20=20
              alt=3D"tiny avatar"=20
              src=3D"http://static.jamglue.com/images/default-tiny.gif" =
width=3D20=20
              align=3DabsMiddle border=3D0></A> <A class=3DsongName =
title=3D""=20
              =
href=3D"http://www.jamglue.com/tracks/183035-le-on3">le=C3=A7on3</A>=20
              <SPAN class=3Dpoplink =
id=3Dpop_87267a6a-930d-4279-992c-e5d67b92633a=20
              style=3D"DISPLAY: none"><A=20
              onclick=3D"new =
Ajax.Request('/tracks/183035/popover?pop_id=3D87267a6a-930d-4279-992c-e5d=
67b92633a', {asynchronous:true, evalScripts:true}); return false;"=20
              href=3D"http://www.jamglue.com/people/maria#"><IMG =
alt=3DPop=20
              =
src=3D"http://two.static.jamglue.com/images/pop.gif?20062007"=20
              align=3DabsMiddle border=3D0></A> </SPAN><SPAN =
class=3Dpopspacer=20
              id=3Dpop_spacer_87267a6a-930d-4279-992c-e5d67b92633a><IMG =
height=3D13=20
              alt=3DTransparent=20
              =
src=3D"http://three.static.jamglue.com/images/transparent.png?20062007"=20
              width=3D13 align=3DabsMiddle border=3D0> </SPAN>
              <LI><SPAN class=3DinlinePlayerWrapper=20
              id=3D5d98b8a9-19c9-47b8-b715-111443d56045><IMG =
class=3DhandCursor=20
              onclick=3D' var so =3D new =
SWFObject("/flash/inline-player.swf", "inline-player", "20", "20", "7", =
"#FFFFFF"); so.addParam("align", "absmiddle"); so.addParam("wmode", =
"transparent"); so.addVariable("rootId", 438533); =
so.addVariable("autoStart", 1); =
so.write("5d98b8a9-19c9-47b8-b715-111443d56045"); '=20
              alt=3DPlay_button=20
              =
src=3D"http://five.static.jamglue.com/images/play_button.gif?20062007"=20
              align=3DabsMiddle> </SPAN><SPAN class=3Dpop>
              <DIV class=3DpopOverBox =
id=3Dea30ff88-7ef1-4af8-a865-ec5f77dc1c23=20
              style=3D"DISPLAY: none"></DIV></SPAN><A=20
              href=3D"http://www.jamglue.com/tracks/183027-le-on2"><IMG =
height=3D20=20
              alt=3D"tiny avatar"=20
              src=3D"http://static.jamglue.com/images/default-tiny.gif" =
width=3D20=20
              align=3DabsMiddle border=3D0></A> <A class=3DsongName =
title=3D""=20
              =
href=3D"http://www.jamglue.com/tracks/183027-le-on2">le=C3=A7on2</A>=20
              <SPAN class=3Dpoplink =
id=3Dpop_ea30ff88-7ef1-4af8-a865-ec5f77dc1c23=20
              style=3D"DISPLAY: none"><A=20
              onclick=3D"new =
Ajax.Request('/tracks/183027/popover?pop_id=3Dea30ff88-7ef1-4af8-a865-ec5=
f77dc1c23', {asynchronous:true, evalScripts:true}); return false;"=20
              href=3D"http://www.jamglue.com/people/maria#"><IMG =
alt=3DPop=20
              =
src=3D"http://two.static.jamglue.com/images/pop.gif?20062007"=20
              align=3DabsMiddle border=3D0></A> </SPAN><SPAN =
class=3Dpopspacer=20
              id=3Dpop_spacer_ea30ff88-7ef1-4af8-a865-ec5f77dc1c23><IMG =
height=3D13=20
              alt=3DTransparent=20
              =
src=3D"http://three.static.jamglue.com/images/transparent.png?20062007"=20
              width=3D13 align=3DabsMiddle border=3D0> =
</SPAN></LI></UL><SPAN=20
            id=3Duser_tracks_show_link><A=20
            onclick=3D"new Ajax.Updater('user_all_tracks', =
'/users/reveal_all_tracks?skip_first=3D8&amp;code_name=3Dmaria', =
{asynchronous:true, evalScripts:true, =
onComplete:function(request){Element.hide('user_all_tracks_busy'); =
Element.show('user_tracks_hide_link'); new =
Effect.SlideDown('user_all_tracks'); showPopovers();}, =
onLoading:function(request){Element.show('user_all_tracks_busy'); =
Element.hide('user_tracks_show_link');}}); return false;"=20
            href=3D"http://www.jamglue.com/people/maria#"><STRONG>Show =
all 22=20
            tracks</STRONG></A> </SPAN><SPAN id=3Duser_tracks_hide_link=20
            style=3D"DISPLAY: none"><A=20
            onclick=3D"Element.show('user_tracks_reshow_link'); =
Element.hide('user_tracks_hide_link'); new =
Effect.SlideUp('user_all_tracks');; return false;"=20
            =
href=3D"http://www.jamglue.com/people/maria#"><STRONG>Hide</STRONG></A>=20
            </SPAN><SPAN id=3Duser_tracks_reshow_link style=3D"DISPLAY: =
none"><A=20
            onclick=3D"Element.show('user_tracks_hide_link'); =
Element.hide('user_tracks_reshow_link'); new =
Effect.SlideDown('user_all_tracks');; return false;"=20
            href=3D"http://www.jamglue.com/people/maria#"><STRONG>Show =
all 22=20
            tracks</STRONG></A> </SPAN><SPAN id=3Duser_all_tracks_busy=20
            style=3D"DISPLAY: none"><IMG alt=3DBusy=20
            =
src=3D"http://four.static.jamglue.com/images/busy.gif?20062007">=20
            Loading... </SPAN>
            <DIV id=3Duser_all_tracks style=3D"DISPLAY: none">
            <DIV></DIV></DIV></TD></TR></TBODY></TABLE>
      <HR noShade SIZE=3D1>

      <H1>maria's a Fan of</H1>Nobody yet=20
      <HR noShade SIZE=3D1>
      <A name=3Dfans></A>
      <H1>Fans of maria</H1>Nobody yet=20
      <HR noShade SIZE=3D1>

      <H1>People have tagged maria with</H1>
      <DIV id=3DdetailTags>
      <P>Nothing yet </P>
      <DIV class=3Dwarning><A=20
      =
href=3D"http://www.jamglue.com/sign_in?url=3D%2Fpeople%2Fmaria">Sign =
in</A> or=20
      <A =
href=3D"http://www.jamglue.com/sign_up?url=3D%2Fpeople%2Fmaria">sign =
up</A>=20
      to add tags </DIV></DIV>
      <HR noShade SIZE=3D1>
      <A name=3Dnotes></A>
      <DIV id=3Dcomments>
      <H1>Write a note to maria</H1>
      <DIV id=3Dcommententry>
      <DIV class=3Dwarning><A=20
      =
href=3D"http://www.jamglue.com/sign_in?url=3D%2Fpeople%2Fmaria">Sign =
in</A> or=20
      <A =
href=3D"http://www.jamglue.com/sign_up?url=3D%2Fpeople%2Fmaria">sign =
up</A>=20
      to post notes </DIV></DIV>
      <HR noShade SIZE=3D1>

      <H1>Public notes</H1>
      <DIV id=3Dcommentsdisplay>
      <DIV id=3Dcomment_6331>
      <TABLE cellSpacing=3D1 cellPadding=3D6 width=3D"100%" border=3D0>
        <TBODY>
        <TR bgColor=3D#ffde90>
          <TD align=3Dmiddle width=3D120><A=20
            href=3D"http://www.jamglue.com/people/xemirra"><IMG =
height=3D100=20
            alt=3D"medium avatar" =
src=3D"http://images.jamglue.com/8043-medium.gif"=20
            width=3D74 border=3D0></A> <BR><STRONG><A=20
            href=3D"http://www.jamglue.com/people/xemirra">xemirra</A>=20
</STRONG></TD>
          <TD vAlign=3Dtop><SPAN style=3D"FLOAT: right"></SPAN>
            <P class=3Dtiny><STRONG>35 days ago:</STRONG> </P>
            <P>Bonjour Maria, bon travail avec ton space Jamglue, mais =
je pense=20
            que tu dois faire plus d=C2=B4effort articulatoire quand tu =
prononces le=20
            phoneme /r/</P></TD></TR></TBODY></TABLE><BR></DIV>
      <DIV id=3Dcomment_5160>
      <TABLE cellSpacing=3D1 cellPadding=3D6 width=3D"100%" border=3D0>
        <TBODY>
        <TR bgColor=3D#ffde90>
          <TD align=3Dmiddle width=3D120><A=20
            href=3D"http://www.jamglue.com/people/andrade"><IMG =
height=3D100=20
            alt=3D"medium avatar" =
src=3D"http://images.jamglue.com/2799-medium.gif"=20
            width=3D90 border=3D0></A> <BR><STRONG><A=20
            href=3D"http://www.jamglue.com/people/andrade">andrade</A>=20
</STRONG></TD>
          <TD vAlign=3Dtop><SPAN style=3D"FLOAT: right"></SPAN>
            <P class=3Dtiny><STRONG>56 days ago:</STRONG> </P>
            <P>bonjour la photo c=C3=A9 tres =
jolie</P></TD></TR></TBODY></TABLE><BR></DIV>
      <DIV id=3Dcomment_5145>
      <TABLE cellSpacing=3D1 cellPadding=3D6 width=3D"100%" border=3D0>
        <TBODY>
        <TR bgColor=3D#ffde90>
          <TD align=3Dmiddle width=3D120><A=20
            href=3D"http://www.jamglue.com/people/monique"><IMG =
height=3D75=20
            alt=3D"medium avatar" =
src=3D"http://images.jamglue.com/3662-medium.gif"=20
            width=3D100 border=3D0></A> <BR><STRONG><A=20
            href=3D"http://www.jamglue.com/people/monique">monique</A>=20
</STRONG></TD>
          <TD vAlign=3Dtop><SPAN style=3D"FLOAT: right"></SPAN>
            <P class=3Dtiny><STRONG>56 days ago:</STRONG> </P>
            <P>Qu'est-ce que tu pr=C3=A9f=C3=A8res pour enregistrer ta =
voix: SvRecorder,=20
            Odeo , Jamglue? <BR><BR>Et=20
      pourquoi?</P></TD></TR></TBODY></TABLE><BR></DIV>
      <DIV id=3Dcomment_5092>
      <TABLE cellSpacing=3D1 cellPadding=3D6 width=3D"100%" border=3D0>
        <TBODY>
        <TR bgColor=3D#ffde90>
          <TD align=3Dmiddle width=3D120><A=20
            href=3D"http://www.jamglue.com/people/ivan"><IMG =
height=3D100=20
            alt=3D"medium avatar" =
src=3D"http://images.jamglue.com/5331-medium.gif"=20
            width=3D100 border=3D0></A> <BR><STRONG><A=20
            href=3D"http://www.jamglue.com/people/ivan">ivan</A> =
</STRONG></TD>
          <TD vAlign=3Dtop><SPAN style=3D"FLOAT: right"></SPAN>
            <P class=3Dtiny><STRONG>56 days ago:</STRONG> </P>
            <P>C'est une belle photo! C'est toi non? jiji je te =
recommende de=20
            =
t'=C3=A9piler...</P></TD></TR></TBODY></TABLE><BR></DIV></DIV></DIV></TD>=

  <TR>
    <TD align=3Dmiddle>&nbsp;</TD>
    <TD vAlign=3Dtop>&nbsp;</TD>
    <TD vAlign=3Dtop>&nbsp;</TD></TR></TBODY></TABLE></DIV></DIV><!-- =
end main //--><!-- footer //-->
<DIV id=3Dfooter align=3Dcenter><BR><A =
href=3D"http://www.jamglue.com/help">Help</A> |=20
<A href=3D"http://www.jamglue.com/help/discussions">Discussion =
Forums</A> | <A=20
href=3D"http://www.jamglue.com/help/contact_us">Contact Us</A> | <A=20
href=3D"http://blog.jamglue.com/">Our Blog</A> | <A=20
href=3D"http://www.myspace.com/jamglue">Jamglue on MySpace</A> | <A=20
href=3D"http://www.jamglue.com/help/terms_of_service" =
target=3D_blank>Terms of=20
Service</A> | <A href=3D"http://www.jamglue.com/help/privacy_policy"=20
target=3D_blank>Privacy Policy</A> | Copyright =C2=A9 2007 Jamglue =
</DIV>
<SCRIPT=20
src=3D"http://four.static.jamglue.com/javascripts/popover_check.js?200620=
07"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT src=3D"http://www.google-analytics.com/urchin.js"=20
type=3Dtext/javascript>=0A=
</SCRIPT>

<SCRIPT type=3Dtext/javascript>=0A=
_uacct =3D "UA-832461-1";=0A=
urchinTracker();=0A=
</SCRIPT>

<SCRIPT src=3D"http://quantserve.com/quant.js" =
type=3Dtext/javascript></SCRIPT>

<SCRIPT type=3Dtext/javascript>=0A=
_qacct=3D"p-e15W06CICRfzM";quantserve();</SCRIPT>
<NOSCRIPT><IMG style=3D"DISPLAY: none" height=3D1=20
src=3D"http://quantserve.com/pixel/p-e15W06CICRfzM.gif" =
width=3D1></NOSCRIPT> <!-- magically created on =
domU-12-31-37-00-00-55.usma3.compute.amazonaws.com --></BODY></HTML>

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
Content-Location: http://six.static.jamglue.com/images/nav/logo-placeholder.gif?20062007

R0lGODlh3AA2APfVAFhXWI6Ojre3t+Dg4Dw7PJycnNPT0y8uL2VlZUpJSsXFxXNyc6qpqiwrLOzs
7CMiIycmJ4GAgS0sLbm5uSUkJTIxMufn55mYmcvKyyIhIjU0NUlISSsrK+jo6NbW1p6enk5NTjg3
OM/Pz+Pj4+Xl5bu7u3l5eeDf4NLS0l9eX5eXl3RzdDo5Ojk4ObKxsiYlJpKSkpqamjc2N5+fn42M
jd/f39fX11ZVVuvr65qZmoB/gDQzNIKCgqysrKampm1tbW1sbXFxcUtKS7e2t6WkpT8+P+np6eTk
5Orq6tDQ0FtaW4mIiUhISM7Ozr6+vnJycuLi4lJRUtjY2MPCwzY1Njs6O0JBQmxrbNzb3KCgoF5d
XlBPUDEwMT08PUFAQSQjJMTExIGBgVRUVEBAQGlpadvb20RERFxbXDMzM4qKikxLTH5+foODg6Ki
onp6epubm3x7fNzc3NHR0ZiYmCopKqurq4eHh8fHx8DAwIWEhY6NjqioqJaWlpKRksPDw2RjZHBv
cHV1dVFQUT49Pn19fampqYaGhoSDhMLCwkdGR7+/v8vLy4yLjFxcXJCPkFNSU83NzWpqamdmZ1dW
V2JhYqOjo4WFhVlZWb29vUxMTGloaa+vr7Ozs52cneHh4cnJyczMzOTj5CsqK1VVVTAvMHh3eF1d
XWhnaLq5ur++v3t6e01MTdTU1IuLi0VERU9OT7i4uGBfYHV0dbW1tWNiY1RTVLy8vHFwcS4tLpaV
loiHiENCQ6alpn9/f7GxscHBwXd2d62trdnZ2ZOTk7S0tN3d3UhHSGtqa1pZWi8vL66trqenp2Zl
Zubm5pSUlMjIyMbGxkZFRjMyM25ubiEgIe7u7gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAANUALAAAAADcADYA
AAj/AKsJHEiwoMGDCBMqXMiwocOHECNKnEixYpxbKwYQ9LMGUcWPIEOKHEmyZENk1KhpGghJFDUK
d0zKnEmzps2JDVIyGdgnJbUZN4MKHUoUZE5qOwXS8PmhqNOnUJ8e3VBNYwCmUbNq3TryaDIhEggU
wcq1rNmzCY/6XEuNSKVEx2ocPIEpABAlgl5F0fLkApgjaAMLFqmWbcpMEFLCIWihTgqX1B6QYkGg
hQSfaK6gcjC4s+eGhQ2vDSTQwQUZKaPNmTKiYJwSrVqkNBPss+3bA0OLpsZCTjUnG6hJiCClGpJU
Fw6ZKKVqSRsRAjEA+UKtURPc2AfrNhwiSTUekS0Z/6lWqNFl0RlkrJhSDcs0ahCaZp9fVsNun11Q
HDlDbYuBaiqEcJ9hIJRQTQkEUCMLEvQ1GNUPA3ZhgyfGUGNCNQp4MeB9f4xggSnUUMKggyQOpUgG
uxHACgmZUENDNY48sOGAGhgYBDVAlKhjUEuItosN1YCoRzWlzDgjBT1UAwQ1i+3o5ExEJJgSBJoU
U81SgFSjg5FGUuBCNSBQs8mTCgkQwJkF/EfmQhZMMMMeHggEygNU5cIll3Rg4EEDLbQWEgA+AXBQ
AWsFgBCgayGA0FVsGTRAAAcYlgADBhWqEKLUCHqQpdXceVMK1EyBQmJ3GglCNYQyIhKmmhaEKTUE
HP9qmEYGJWBYQQJEet8CtArEqawptVoQp57WNAE1klTDX6lczlGNGRAUBxKrBhlgmAIHvZpSAY6K
RhADRgr7a7aBIkQslzZRQo0IPTB7JxUk+ECNHX+WWxCjay1ALluKFkTorQIZoGuwBQhgppTbDjSu
QdRu6pOhnfpEAAAUV2xxTR5kcEM1q7h7py7VUFHFeB81TBDCPh2wL1u9CoSAtwItsPAAtqYUq68P
X2pvpTlHnBLETl1AjQt3eHxnrG5Qo8i0OwskgE8J1EwNt66KRrVAA+wWcKIHWeuTADj/rHOw5va8
8FBaQOBAGEbfmQoG1LDhSclNVyPzz/j2SxCmUuv/japPL/skEL7UqGnQmWdi6zM1QK8sLEHniu1U
B1xsrIZoD1RQgYwzQqDBdtSkUU0FN4BBN9kDDTDwAFn7ZLhAmELqU6+BT70W7FBDdPbedStsds9F
eUANDxZwYBgBQ5BAwhBjbMiMCB2cMAwFhm0shgQXnJ4pQf9S02/tjVcT+92MYw3104JXg3AEugPv
eNmScwn2TENQkwUohkHwCUEogE7NJAXhg2GKUI01DE97wpIa1bp3s4HEDn3USIBAuhcACFIjbOXj
nWE0tTsH9g6DEJMfTTpBjQmUwDBZKgiEdlOHgnSgCmxBA4yosQIEDsRrKaFV61KiONyJDWH/IZ8B
/ywIwqptsIgJMdmwfjej+clkKZ9wgWFEVxA73AcaBhECWxrggBhQIxI2FEgEfKKvgdSOfR4U2xjF
pisJElF9PkFjGtnCQfcx7IOLC2GgEMfHM72uJIygBgZ8YZgrGIQM9+FFQY4goLVwwAFvoAYZGmKm
MzlRfDtD2MQqhjCVzdFQCoAauBL2RiViyGBmslcHfbg9h8XPjkLJATUwcSy2ZOCSfnjBfTZgAYKw
jS0VqAYMqBGEhuCrcQ0b5YwoxUqIIQxTGnkj4VpGEHzVUXIIId/jfPdKbBKFE9RoA9wMg4scoAAF
OajAhrZADA88IxCi6UI12KYDY7qvYeTbkN5iN/84w/TrjTikRhkN8kwkLiplBwnl1wxKFGtZggR0
2A0FqMclCHDOMFEQHwdU0JDuSXAgAzPUDqkRgT4GIJ+04mc1ApqwarwRk7DM5zUziBALhq8atbsg
Q4digQMooRpMaBuXDFGNHTwCDw0JKAIMllNKMRAhIW3mQKSWQ6fdLmADy1TBBFAAbc10kxarGLZQ
hgAGGKyr+eImrMIa1h6a5BJ0qEbShDojVMiBGjo4gUO0xZabSU2OBSHfR1VaDcLp7aV/49JMBwQ2
ZQ7oAIa70yVLMkwnOIGuG5JBNdhQwofQ7D6UUigPEeJYbBE2oFdDbDUYkFW2JIBRi73P/Lq3mwP/
uFWyNIEENf5QjeaZKgsu6EMjZ3ShMZAiFBAZQD5tNr81wkohA2MfYXGaEk9aNX0EeVRrDwBK1IlQ
IArIacp4tUQjTbYko6BGGbw4o1hwRiAeYMGMOGADWFDDDRMxAAMQ51a0VDIADKAmSAbw3wp6pl0X
utyAMoCBgkRyQ3mohhiosYg1WdgkW6BGEhBxUdEM4r0DWcSGvOCAdqniwigeCRio8Yhq9Og+XKCm
LQb0hV/UYAcViEOKdwwS8CzmRveRz0AicZ8MEKEaSmgLj5dMESNEgRqdqMYKRcOBPXAmFIcYUBaq
YQJqPIHJYJaIMDSUvV4MqAhiQMN9JKCMahCC/RopwEGY5/wQEdjHWcs4D7MSAR1gUEMIUKCzoBvS
BCtQ4wfNqMETSGUkDXDUBpOgxihGgIUc6AGpg860QaBAC2rsoIVlYMMgOsyWFwhiBnKGQWIIUY0J
6LmYmo71QGYgDWpYwQeckcMb1qCFDZgBBKcwRCE0cgQY7IAaReBENaAgm7W0AcSyznQNdGC8BpDB
B2WQM0GMYIAYnIE6MuBDBwRSy7WcwjvRlvUJYqAGzr0gBEKoxQY04O5LMGDcA6kfv66T7nRLwQd5
SIEVWCAyV0giDZvQq0GwwAW2qADf/Y54NRyABGgnpBIXjbPENx6RWazgCs7wE8dHTnIyBQQAOw==

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://images.jamglue.com/3453-large.gif

R0lGODlhyACnAPcAABsUCBcTCykZCDYcCSwcEiokGDgjDDQkEzslEzwqFTwrGzUoGTQoFScrJyw0
NDgtIjk0KDc6NywxLRwiHzxBPTxERT5IUUUkDUQrFUMtG0kqFkQxHEszHEo0GFQsF1U0HFImDUQz
Iks0I0o6KFY6Jkg6LmM7JkggDEhEOllDK1hIN1VLN2VFK2ZLNmhTOndZOXFPMXpfO0tNS0ZJRkhN
UkxRTU1TVFVNRFNTTFpVSFNVU1VZVVVbW1tbVFtdW1VXV1ldYl1hXVlgWV1iY11laV5pcGxcS2ZX
R2NdU2deVnRdR2xYTWNjXGtkW2pkV3tkTHhiSHRkU3RqXHxqVHxsW3ZmVnVqV2NlY2VpZWRqa2tr
ZGtta2ZmZmhtcm1xbG1zc2x0eXNsY3puY3NtaXNzbHxyZHt0a3l2anR0c3V6e3x6dHx8e3d3dXBv
cGBfYTg+Qnl9gm52gX2BfH2ChH+GkIdkPYFeOoZpSYNsVIVtV4RyXIxyVYt0W4x3XJd0TJJ2W5R6
XZt8XJd2VJFvSYR0Y4R6bIp2Yo16ZIx8a4N2aoN8c4Z9dpN8ZJJ+app+Ypd8Zop2aqZ6S6R9VZNw
VIN/gYSDfIuEe4qDdpSBa5yCZJyEa5qFapSEc5yMfJiId5CFcayCVKmEW7SKXLqNXLOGV72RXq+C
T6OEZKKGaqSKbauKZauMa6iHZKSMc6qOcqSNea2SdKyTe6aTerSMY7WOZ7SSbb2SZLyUa7qWarOU
dLOWerSafLqWcryadLuce7eYdq6Qb76gfZ6BXsGTXsKVZMKWasSabMebacOcc8Kee8idcsShfMqj
eM6ldoOEgoyKhIyMi4eIho2RjI2Sk5SLg5aMh5SSjJuUi5qShpyalJiXlouNkqOThKucjKeYiKac
lbObg7udgrOdiquYj6iimrqiiLenlrGlk6inpraspbi2tbeyq52gocOjhMinicaslc6xk8e2qMe6
ttG7qsCegsi9w9fFudDCt+POuNbKx9bQ0ePX1OTe5ebk6+rp8+Dd4iH5BAAAAAAALAAAAADIAKcA
AAj+ADMgEBFiQwICBw4QIJAhxAAOJDSIIJFBxIYQBDekSIGBRESKGRQoIBFiRI4SCg4sWDDCYwuQ
CBIoCEGToIIEGES4eJIihIoVKlSg2CASA4cUHz7AMOFRw0YMH1h0MIDBQEwMKUh4uADCgwkQYE1c
MNChwwcTMFgkLZs0BQwYU8lS7ZCgw8YUJjqMMAtCrdmyHQac8GrCQ9fCHrQyLZFhwAATHzzAeEHi
AwkWJkzYsQM26h0SAi5UboHHhAYBAjJkMHiAgWuFDEUM6EhxA4YNIkaMSLHiRYsOl0mIKEHyAYkR
E0uMCCHyQMWJWREoQEBTwQIECKxi2J1iw4YSKFD+AFVuW0PiFh40XECQoS6IpBg6bGicoK5UD5Ez
f+260YAJFgD+x0IKbG0EmF4HukVCWZUlZZpdHVyQ3gkkIJZZfoUNlsEFHGDmFQwOZuYVC0sppYRp
GHgwGAwnejDAdAcIYAAEGzCA3UAUccCBBjsasNoGCDDQAQdnXZhBZiW41UIIKRAUAgRN4saCRSmJ
1NACGbTUmAH1ofAkBNeFEF6SHwwggGMPiSBCe0i9x9QHthmwgV4fcABZV++BcAGEZw2oVlJRleVX
WXghBVxZ8en4wXsc2IWUBhYmduF7LSCmwlEv3KGfaJB9BdkLMBzWQlqGgVAhCS20wEABNDKwgHf+
qmWgQQY5cZCTCiLYSitEHvRqoQlrknAERSuMoMBdu5EQ1HFVPsBcBsoKpAADMhJQwAINLPDACCrk
0AILHAyQnQEDHKBAbmZZ5hGAVRnAZURK7QfCCbN1oGcHeX1QoL6EuiWVvu+Be1sH8SVFwp52fXCC
CBqcoN8JeYLwsAcbfJBCpQiIFpUSLPT1gh2hKvUCZpANlphwDACgwAgQyKRARbFiR8J0Hq2ZAQce
iFBYV76+lEFiN5iQAgciqNBCCrgKpxt4IWSwgHXUhYDAADK5JgAAqD0AQQklGE0RdcYCIPYCKsyn
gXmWsXCaQgJ0IMIFgnXVcMaOwa3BByIksFv+XSkAmFXfOw+g8W0jJIA0CVlxsMFDptGb2WBooder
YQemd0FqvXLgQoUw3AHDh/+dkBQIHXgQILUEMEDUAQnADDMCs7K3gXDC/bzz5CakytTdItCFQQYb
iTBT0SUwqQLXyqJQMwICMACB1hAUQMADDxQfgnAofXm1tjM5xF5ViYmL9QAG0DsAz9hdYJ4GGFRV
VVl1lfVWB6EF2AGPHNRXH0YTYTW0zpVCDL1ExxRfkS4uCMAAjyjkge2QYEem+lOvJJYCiQFoQDdJ
SAIYkLrpNCQDV5OOQHA0uwohZoLpGQC01qSB+ahGJAh4QEposrUV5CAHS6hCGMRQhSUc4Qb+K8BB
Dlawght4aSEEQABxuNaaBwggANMrgAAKID3HdMQyGEAN1gTAQA9k4AQIAA4JqEIC5rWNO4C5zAfu
BqC3fM1dDHBX61h4sxJETj8qSoyKHPaVrCyIKrjyytnONgDJvAVE+IFMVNQCggFoZINw5OD0Rlgu
FWJndrla0+QmCDvsqEZNuMkNCox2POHt5gZLWEISkiCFVkahClLQghTCUIYyEIIQVFjCDUowHK0M
5AEMKMEDFvKABTyxANOx4kQyQIABNFMACBCOBmCnAQNICAMJVEDz5AMYLi0yYCxogRJSlbcEGOAA
4sKIRDiAgBM4zCuEydms8piXAenrAyv+aEEJJDI3y6RqVJAxS1oW5SaLNUkBBmjea5rnExUIpCTz
mYgIvNirB5hHBL9r2nMqgqolKCEKVKACIXqYyigY4QhCAQ94VHCDG+jgCKkUqR4IwUOPKuEI+cmA
1qy3qgJgbVUEEABDjqObEKDTmqhBkwEamFQCGIABCUigrQzAxgc2qins/F0CN7gyVAmHaHtEUzQ3
ZJl5SWxBHzjaCu5iGmghzi8EchcL7qAEfR3yIk3jqmv2Sp2ZiUQBeLWZTi/6yQxwDZVBW0IU8mCI
xhriEJC4ZR6o0MMbPG9rJYgABDB7gxzA9JV4yIMe9GAIPkwCD6m0I2MUUIIirqAAAdj+olGVaJEM
mMuMWkRN+7B5zqBibSDRcYzbeKs34lgTcSVwgQu6owKmGMudA3QMAVD1LczAIAYE6ttyU3CEFSRH
PXtay0bqEpW0AKgsCEjIX7tzgIsAaTY3cQ1rm6SmB7CnBOlRTglwiIdbQkIPkGiEJh6BCkD0IQ9P
UGwUplAFJ5yEa1wbEyqjEIUn4OHCeeADHxhriEc8Ig95wMNNc1esEizApwEIwAKwtgBqXY0hlzsT
QmbTLsewDpJSZafgmimT1l1GIgdrSAriCK0UMLNhZqqWR1AVILS0hQXL3c0G3JUbDSCuLO4CDlIi
4xbANKc1DHAWcj45tZik5AA+Wc7+CKv3AA+ogASKJUSAG9EID2siE48AxB7wMIUp4OEJSjBCFFaZ
gxvgwNBIQEIOklAFMYAYw3n4g2n/kIdJPGISlp4EiKPQAhpREbYpDoD0UGO1m5npAA+gFa3c5a7b
eOd6G2JPQ5i31w2MYJ8nMxZUE3Cyaa5JIahe2T6T8jHMpGBkH7hN86bFwVnFZ09kIRiBAGUXqYik
PvJVU6yEI7sRGCQEXFMT1zTQtZKSthGe0MQmNtEKT6TiFMLow56nAIUnGOHePlyCoo/QgyM4wQlV
AKke8rAHDWN6En+YRMH3cHBMS1reUIgyBJ4oaglcrXnDHIjTmiYSjIQkqAeQDgb+ziWrnGigacwB
+VG0Is4W7AUnavGImbyj1wO0ZF0kmBcLlKAEGJBg5CmggJzqkmUPdOBffQNQDLCbFgMUazd0QdoI
YHYuorEPIiYoyHwYU4IWpFK0mNCEJ9y9iVS0IhVozwSlp/CEKBzh7XBXpROW4IQoWKHPGeaDIf7w
B0A84g+OEITCNR1aEPOB733vAx+mcIQlEQAAsdXWp6+VHbZt8WkCcSY6oTkRvIkAAQAYAAmIc5qB
TMQjeRnSBUFlAsfoRr7XmY4GRmAaSJngCEoASQdWYJ+zXEYt5/1AtI/OlgtMQQnKjfJ8WsIBzosA
PRdIK7A0YF/Deh0SkHC3J87+noqypyITad9DHhjs9rcj4ZVUEMNo1z/aPvSBEY44hSPmT/+Dh/jC
hd+DIPgOCErjIQoqMAJX8wAUQAHTojUXJzZXIzZiYy4FoF4240XhAk2qcQNHIBsYEFV6dAESgnou
QRHeBlUd8DTOMStasUi580DtwR3Y1SceAjDR5hpTMRV9dm9QcAQEkgEsACTswR4ToSPKYgK71DVe
lweQwAmb4Amw4ArclwlOuAmZwAh7cHz3dlI+BFKE4FiHwAiH0AeA8IWA4AioQH+CEAgJNwl3cGF3
8ARPkIZ4sAdweAd/4H6HkAdWUCwtoxtC9XgMCAALkTJiQwAnlhAMsWqO0TD+00QAITArHJABVKE+
C5IuEBER9JIAwkNqEqUjjYg/RLM7GKA6c8Igl/EtSaEWZKE/5sQVUlAGViBoVnAELrACy5UAA8BB
DAAtLOARSxQUqPQEAaZurSALTOgKqaAJjvAIYpgJhjAFJwV392Z3enAI0sgIgMAITigM9DeGjsAK
gSAIkoBpd7CGFqYEf2ZhIHYHCMdYjDBaT+AClwJCziNFkFcAD4BMqzIjEPAkr2FrjaJAKiQCZ4Id
ahJNP5crF2AUGzFGRgFNAVgSLeFQKWgChVMfWJYAG9AogMEbdxFtHKgjjmhN5mGBb2cEzOgCUCAM
y0VEKUCBykISIqECS5D+B4TQCK/ADbJwk9yHdgPGd4zQCIegB1Vwb06QBHZ3d49lYIDghKhwCqfA
CvMnCaygCo4gCfMHCAr3ZzzHhmyoBFUQjgQHh4/ACB8Gh1CQAheQACjgKlQUAZolHiuAAsbEAGnp
GrzhjpURHCeQeSJwAgTgNccRirwxFdwSAgYwExtREZUCi9gBARVZFS2hZePVAa7BapBhALYSEVxh
GDbkAjlwUhF3BBHnAn1ABUaQFUugGiRhWEcwk6/wCrIQC7AZC7IAC61wdgPGCCE2WgH3dgAnBVRQ
Bn2gB3uQlJkgDKegCsi5CqgglazQnNvolIHAByKWlVFwYRYWWuE4CYf+5wj99weBsAd0NRUMEAES
QI8QQAEMEHQpsQBJsllOZQAJuR0d8DMSFUMi1DvQsgKNsgJxlAIJECMLSC5cdDIIkDquAQExoRH+
SRcJMEYK2AEuQCIdYytbwRVgMUROcG9HcG9ERERWUAYnVZPEsQQSeQRVMJOt0Amt8AquAAuwEAsu
enZj+GFsd29IwG9H4Jt6QAVT4IXeKQyhEAqssArAgJzI6ZRSGQisMIaAkAc8h3tsWGHX+Wd4cFp/
UIZYKnhKsBEo8Dyo5p/18TIDsVZxJQAcsRccYBUMMQL2tVrTcWt5E0eFA1UAuhALCAAHYBTM9HhU
RC1YkwAtE0d0QWr+KbAbcAEWHOgYJ2ChGKpoJ2UEUEBESOAEZZBo3MANVIB7FEYInLB9KupuqFCb
MXpnHvYIfEAFFOZDniUFVTAFmKAH8dYHgSAMxRkKpyAJqrAKtUALqxCVs+AIUnkKqJAJTspzqVQF
fyZaIaYEd7AHf6B/gRCt3fidbPdDxfMABCJRACkAJrBEWXE0u5ZUMRFULsYA5ZIAqGEAPpECjOka
y8EyMgIBgOWfB1AAexU9CiUkQiKZhkNER7cogqQepDMiOfBvRPR2K5ChTiAGYRAGR5ADO5SqUXAI
nNAJr2CxtZkKwLAKq2B2qYAKeSaWp9pDRpAEdbewrooJmFCcQBr+CsLQnKswCxw7C0PqlDUrrKfQ
pH+WQwHXdnhgCHpwYQXHf97pCIHgCMJQcIaQB0vgUBxwc7OiAeKiJkXjEv/JAKxTqJ/3IuCRAgiF
HSuDNBvBewrwlruBAgaoAMrFG/XIKkRUIxskJFLBJWuloIWEGWdjoVzxATvwlkOEAkaAQ2EwS02g
CGfgBE3gBEdAWUaICWPnCetWdq7QsaiACh8bhY4FlHVHYbCkByobuaewCUeanKoAsxzLsTYrf6eg
dpr2aHhQBR8lk6N1eA4Xrch4jB5WWpR2NCKQOLooED9jokrwBG8JJbEYFG/GNStwBE/CLUjjjtxx
EUTkE07Aewz+MAKy6AIUAAFCQkS6sQL8Ghd10Sh5uzPmoT4caE01UAMoIAT7lgODBlNnQAZywARN
4JtOQAWPxQmaEKreh3aqgHYfqwmMwAgaNlkBl6FL0ARVAHbeF8CrgJwauwqSsAq0UAuuwAoym6us
cApHa4biRwh5gKyolUO3pAd6t4UeJpZ55giZkLM8iQdQcDRLxhQVsU9H8hLYKx454AKpEpNL0AKx
uBsbqlzt2AL6qRErMHqoxJ8GQAAc4K/Og702tAIKsHsEQij3kzZe0RUQczb2UhYVkAVyEARCYENO
8IorgARncAZy4ARaUAiEYAUzKXatuX0fiwqskAqrQJupkG7+mRCcIeV2dVcFDBxafPAIaFekwCC6
aLcKjiCzwFCkHbykHezBgdC6IMajU0BhIAVikFCqmTBgYYcJYUh/PLms43R7wBIraoI9RuQCkCpi
ocVz7vhm9ibLenB8RyA0eGECpIQ0MUITSZQBuHIsY7s3iBJOpZOLJiMY0DUQTEHGQiAEDWsFN5TG
VtDGZ9CwDSsGnGqxrimbMOqifQwLAawKkauyesCqIcVDrToFeZCUoivBRtqrTdmcG/tuRgsIwhAI
gGAIewZik+VnVUAFMklnAiZ2mkDKePYIq8sI+8cIkqZhIhbE3ZocHdUCN9ACUYDCjIAHfCB+U/AC
LqAES0D+b1DwAlMAnuR4UygVzBDWNGsCTQfwVBuwAhFnTmVRMclmGZMDXZl3Lk0jB9IgB0IgB5Yg
B0OEAz3gBN4sB91sBotwCZ0QC+CQ1bqgC7vQ1bsQC7pQzsqpCZjQB4dQSyGF0ISAwu73B+BnpMgp
DKoQCsh5Ci4buvTnCM8qb+M3wlNABaNF0HPWCGEndmi3biArhmNIjQGdcHq3tCidGT/Mc0bgAnjA
CIZQwNRIcHQFBXdAcH3wZ3vwCKH1CCU9LG+nAingWWzqLCLgLjWSnhvhAv2iOByIQibgTghgKy+y
AIpYA3JQCSuwA5VwxkjQWTkgBGWgBWcwBmdgCZ5ADTX+yQ2wmdXlkNXg4NWwyYRkvX5U0EoiFWCP
sG4vLNdwrQovqwpM+c8ADdCA8J1xyHYVVgXnBrSGQGcNLWCWuwrEiHYgW7mZoI3993cFfGk9hHtu
SFdKkAeeUGePkAnHqGd30AfztwmM0AcPXaogxox6EAW3jBKo9gAiAFU0Rxeak8UcsB5TIzjmMS+Z
o23AqwVClNRasAIU0ANMoGhIwARJEAZmUAjQ3QnifJOvGQve8NXYDZvBuAmvSgVWAEtUcAgqq7Lg
lwq5UKR0TdfoDaT/LAhe7qx8B+YhxnZKcHfRqNB05gmP0AitELkCnAquMIZMWIwDdrt2fmkEjQel
Cgn+f+BhrRCq7UZgpfoKYtgKHla5gs7CpYXSRhAU+kUc/tm7I+A+5jQwj0g+stIrkMMwVDsQTFAD
WOAFlYDUQrADSbAFTZAESNADSUDVlkANnYANNonV4EDr5XDd4CAOuQ4OsuAJmPAEVmAF331LUo4J
rQAMruAKkxzXcB0Ks/rl4AmH4hdifLDLUDAFwi5S6FZndNYK/XvYAtwKyV6byb6U2hh/jpDspbru
676irdmacV6byMgNyc6i5L6iriCGK0zQzDh6x3M0G2A089E+wFEm4voQvWZl9JRCJ4ACNaAFQsAE
EC8EPdADWpDqV9DjZaAIl+AJQ07rWe0N3SAO5yD+DrfO67LQCphgBQp70LaECeumscsO10QawJgc
b3FIcPjHhngA2PqbhYfQ7dxeuf8rwJNbucnu3x+bCnkNDuzOhB5W67HQmlP/7rLgCODwCo/wClOf
7LngCrpAjHHuCK9g6I2gB0vgAkE8ES0xLO1BLhDKEeSCTgPAI/MkKw2TGQ0DRjjgBTiAAxTABDiA
Ajiw6j2Q8WPw44WwCGNXDePsDSIPDrd+DuVwDudgDufQDbLACYiASywv7J4L8+Au86mg3nWdCd3o
z4x9wNbZdn/dWEFPZx5WZ6Gq5pGbk5Ob7Lpf77qfC46gC4/gClmf7I6woqjwCrrA9bEZm/TODeD+
IPxhnwtbPf25EAvhoAtf72EX5kPjtCympCtlcQE8uOIv8zIj1CsTlR4VwgQ9EB4UIAQFWLBC4ARy
YAVygAmLYAmdSt3ioOsiL/IAIU7gOXPmzh3shs1TISlVwoRJRAgTpk2pgFkEBkyYKo6sWKXKJOzP
SJKGDPXRk2dKlCl6CBFChOmRp02aNHmyqWnTqZyZNLkC6iiZLl2OdLl6FM7Vq6C5HNEDp+uRVHqP
Wq2KlVUXuFdZd8WSlRUWLKK5dumiF46or3Bmw7UC9wgSHjxVlCwhQUJEXhImSmTQcIIAAgKDCQhA
UEIEAsYaPDjWgMCDiTBMcNRYIcWJECRChDj+sSJHziVLnaq96pRalixwAgV26ybu3DhvtWV18pQo
TJIlS8RAwvRp06aMGIF1ZHUqFapMgPbsoZuHD0qVVaZYoQITkyfuODOlypmqZibymVClAlqU3tD0
RNE6AgeOnlH3T8duJborV6xdu8DtIsu9X9bypUC0fNElnHBikUouPO6464YMSlBMhBIiE+yEEwjL
IAMEMlgMgQc6VKDDDRkjg4kdcuhBDiZycOKIHKwoQ41PPqmGG25wu+kV2GQzR5xyDgqyG29S8+QT
M6RAooclqtADE2GEIS4jKzlSBSRhAAGkD+j2yAOPPMJ8YoonrJjiN0Q40aSTVsDLSZNHhtP+hDxN
HEEFlVWKAQoocFxRiyhwuCFqnHDiii+X+e77Jav9BNVFv192GfCXcNj6pUB66PFl0/ikeuWRMJdQ
4ogWjjAhgxBKICEDAgYorLAPGaMVgRAyGBEwDQYYwDNfhajhBhiPsEKKSizB5hpuvAFrWXDOKSda
gwoisptrqumEk0USKcMMMRRBpJHhUiG3lV9+weUiVVYBhpUp/3gODz36OGmK64wwArsyDkGEu1Y6
2eQRnVCxaTjmzEvFEUdYcYQWV2p5qihXdMmFm/jiG8fTiZOhBxZgYMkl5FwozoWXXGo5F+VfeknG
F2R40SWZdtJqpx0F6Wlwrjx6U6KEEEj+oFAEwBAYQAABDhCRsAVCCOHDDAZAQAMNMtgwCB2Q6IKL
K4RgogmvCSnEkmquqS2WZb0BpxtwvImtG2nNGcdIbrBRaJFFFLHb7ldkaUUWcjOqBct1L8qEkT/6
GHMPQ1LKgwoqqoiCRkNu3O7fVl4Bj6bhNkEKT1QUlmQVV3Jpz89YWgtSnIzF0QWZZEKu5WOPReaF
l15wyaUX3XHnpcBwel+mnJndeaedcsYZJ9RHGiEkjyhaMEGFFoAW2oMHBIMaVgEGmNpDVYneXgMR
POCCBiC6cMMNLNjgIokqxliEmmqqoXvZ/tS++BxxYOtG/9l05EY1qGG3NSgCb41ohZX+YHGuK51i
SuTZBCP6QC+ToMRxVJiC4/SQiO14AmCtAMorriKeirgChCBEhStYIQlHiM4V8HkhOE4njne8Qxz0
uOGhHFEMR8ACI6KrRS1oUTtj6M6IvfhFMl7mumQso2bugCIU6TEOXbziFZDgQxSW0JAbUAgDD1AM
GENQGAEMhjGymtDTDCA+D9hgBhHQwRWuoIXdNOE38ZsfNs62GmaFxT+tiY/qBOINhXDCEnmzWyPE
lQpVAANdSETXccTjQEcwgjx8GFMemvc4KojhJTHxRCtE+aZUvGkVpFwOCIFyFVa4YhWvnFh8uPEI
cXhjHOmIRzzS8Y5N0YMXPJwFLlT+MQtazIKYtLjFLXCxzN31wmUv4wUyeuHEdkQRiryECixegYpH
HGJnfhkjASikGAQYjQAbOgDURsS0AhymjAiQQTy1kAQcOEELTRgD/CzRCGrsyBt8lAUsVhOW//yn
HPGRhY5uw528UaKf3AjoLxwpUVzE7jibYEVIuDTBPvDBcXmoAuSqQAU9xAQTH/SbRcjlsVTwTYSq
7FNMdcGNcRQEeTTMpTziESRf3qIY9FDFKERhi1mIYhbFuAUximELWxjDGLiwRTKLMdVfFpEZy7Dm
NdOii1jA4hGM4MNdfNY0cT4gVu+MlYWYFgIFLOAwABBADZgghB3gAAU4YAIX8Kn+CErMb24KHWjf
BtofAPHtJpzwxCIagQi7UUJsy5KFRGtxO1z8IoirUMUpHPEIRzhnD4dAib1C6klCUCERJt1E30Sp
0tVkRBbAAMoj+kS6pWwFdebAJfLSIY969DYdGZsPMm5Bi1EcVRLFIIYkbIGLYyhVGcYYLi6Uioyp
VncZ14UiPN7hjk1xVxzKe8Qk8LAEVlHoAWY1zDkH8wBaDUYBHHBVGSkwgxnUoAZc00I+E2EJsc3v
FaeBaEADSlgBh0UWr9CEIhsBiUIs4hl2swQ1OtHaKwHjlatIDnkqiTh7lUmLVRADv2LCiU+cdJR+
S+DHgBFZWSyIQUCJBVJChbr+d+Cyt/JQR297i81iUFcSkhjFcWkxVUmQwhalIIZzizGLqE6VFk1W
JjKYkVUolgMqMkQKJHbWRfOyN1aF0cB5CTMYD5VxaSGgwH1rMAMhYEELbGjDIijR1xzlSBZ6HKxA
cyHQlq7Gip1Q5CLMgLdoOMMSnlhNf4KxsuOwIhTCCAQgCsclPkxBCUqIghE+nJ1FdOLPbxplKjwm
CwAR1j8JKksVH/EKi41DHDmtRz50rA/fTrF1xfgxLUhBC1ooY8lMTbJzj1GKWYxiqsRgKlNLcQxl
MGPKUqSHzZSCFAf1xgSRiRVhTjTmwgQAaQQAQGJU4AIb8ABYQggCusfAhjX+RGN+1RjHN75RG25k
hW8BbcWogXHC1HCiE3bD2/yywTZTTzSImdXwZuGlEijgS9OdVGwjPP2v4ZBy3x8z9VnUEqj2PGLV
t4zHPHpLa32UvNYxQwYyeP1jSRhDGcjGxTBscYyp+lqoxkDuUpOMZJc7O4qbUlAswuHxRxjimzdo
wYUKA8YSmHPp7jwaCW6QghF8gQc04EEWhlADHmyBDXyd3zi04Q1ykK0bgSUXI1fs58sBmhqNWIQl
HEqNa3zjILsIRt6D4YtcZPYUmQjEc/pguLpY4QlOiFx2QOmvCa92xRgZi6KJMild/MKVnQvHOMBR
03TUQx75yEfJ9bEPe+z+FByX8vHKRTHVY7SeGMNIssuJIYrWI1eprz/GMJjdjGa4o2Y4PJQVlafl
3lAIVyUgDHpj1YBYHYAAD1iBClCABSFQoAJap8EOuNAGOMx5bGMjm21SKp4VW8kVqMCEJl6R2Lsl
Ip9mWAQ2urGLaOW9HIvORSo021l48YERi8OOKHACKaCCQkCsULoNUUqtBOqbx7OI/qi8/ogF2pIK
R3CFuLAYnOKtfdgH0LOHesAmnKGuYigmUXCuUli2UUiyYjCGY7AFYqC5F0yyYaBBYmiGZpuycggH
aeslVZuEnYEe88KVBwiB8wI3ACiACQiAJSwBFIAABSCCCnAA8xkCGaD+ATfYAr6is7HJhm4gByMZ
KIuAhV14rYvgjk1QsENSBDEYA/iTv4KIlvv7BVhYBVRgBebgEufgAz4wBD4Qg5EyQNzghIprhc0h
oYooPyuZqAHJBdhahR16BHCwQBN6hRt6h5CzB3zIhw+ch+2KNiVCBpxjMmV4rlIwBmKYBaVyKqU6
NiarQdg7BmN4NuOpGSvLmFdQtZ1ZgqQbp/MqAfRiviVcQgK4ARR4AAUIghqoAB4AAh6YgR/Awjnz
vmrIBnLIhoH7J765iOIQw1hoBTmBO0iwmweLBmoYB4Iwh+2KFgChwywhD0ZQODApLZeAiQPcBEzI
hIlYwEJMu7EoP5D+sbA6PIX9UxiFyYU82SxXyJh3mIeGnAd7mId48D13AMWXm4VS8LVmMMVjICZj
uEGnyjlks4VRcL1jaAZnY4Z2SIZo4a5eWgrlEa/i8wDzKowFgIACaCcCYMIjmIEbCALq4wEisIAK
EAI34AI0sBt3swZ5I4dvuClwkKji4MZUwIlGOARCKAM2hL9qkLd0KIgaUpCzSLvyKBxG6BKQIoSG
8KRPQKxvlIlKyoQ50YQ8SYVVABmPqQV2yaxACARByIM9AAS+fCBhcIRAcIRw+AXhqaFLnAd44K52
WIZQdLliKAVmsIVmsIVi8DViUAZ6IEVSfEFlOIZRIAXda72TvC7+J7ImT4SKWVIkQxivLsqAAxCA
AHgAAZgAcZoBswIjEpC+LJCDIKgAC7A+IeCC7Ru0aICGa9AGdmhKp+wGXSjDRNyEPMkJTkAEbzED
+FsErvwG3EpHcVALH0qFjHrHkVAcTBoTQlgwnagJVOCOOmGE+QyYTKhOjLAIdvGILRGEO8CDPRCE
P5gSQRgEQZiEQFiFPfuFYIgWGuIlUnS2XjAGZKA5pxKuYmCGIfvM6lKqGxyG0oRFHLyuasoua9oU
cWgFRhiT5xmBLuq2JZwAMHoAtwIjFTiCCrABIagACXAAomyDLWgDNAA75vyG52QWsCiOTVCF4Sic
PjiEQ1icrEz+BPjrK6dMR68sB8KaQ3IZjvlcODx4gigghENoBJzwoDexiVBDhYpYDkQsT0bCrJ1w
hEyAl0l4DkEQBD8YhEngU0k4BVWohVzwhV24mWUgRQldppxjBmWghZRrBuciRc2sOVI8hiIzTRF1
h2DILnhwTO2qoYP6RkPQohtIgqbTyWE8LyIkgAJIgRYwgnLzDAmQADbbgu1bgznbBm34BnZAB3mD
DXAYv02YEmF4x47qAyqQgmQVAzz6hnTwSkMhrFi4CHchVs+iiyfAgykY00ZYPzrJiVESLIGShVX4
G3I5heIAPC7ZgzsA0HW9gzuog0mog0GQhFBgBWIKoltIOUr+nblYZCpmQzbQ7NdI9bXWe7lRoEHT
lDJnS80o+j1P4SpUaAS6wAMTCAEBAIAlxM0GWIAZfYADYIANaIEuKALqa4ACkAEc0AE3gAM4YANn
sIbmJIde/YYfIUO+qQjy8DibUKSrFAMnEAP4owZ5I4iDyFIKOw7yEIY9QJxszVY9OIT0g0+b8ITM
ObHVEAsBgYW+IVeN8hJ3vYNBeNc7mISw9YNIkASOeLJZ8Klje0GaCzYXnAXRRDaDJcUka73mSlhY
PElm0J1luKrea0lOOT9u4oO66JmPXT7me4CbZAAGUAAG6AALaMYaQIE0SwIuqNU2cIZoiNlv6FV2
4J917I/+sRgLE/qq+VysRBADMQiDMVAES+CGg7i7MiRXJrVPTGAE6LAXbeUXRniE9HvPOskTcAUh
0x2LPSsOVAAEeHmOPBjbGLADOxiE6vUDP/BTVSgmJquuZHMqnJuqUQiFgh0G0VQG3muu1qNB14NF
k2TYKWsGx7QmeIAKVAirIziC3uAyCoEACSAAFHDCx0UBBYAA8+GBGvABHJCBH+gCOFiDdoOGmG1O
piwIc6g/CDzdbfI4RUIESGDdRFiEayAHZ63dm007JhUGe8EDKCiTlnjSiZgIm4Bh4Q0l4+XSTYAg
8dgS55iCdYWCGABiO4jX6h0E7E1bYzqq6iqF1WuGlBP+xePCORjkzM+ExYR1velqtmmiMnfgVPoF
h1MAhCg4AhLIASmIAhUwrxLYzQIIWSe8XAWgAazDgiDYgR/ggi5AA0qAg0qAhmrIVV511gqGFi0d
C/SwIk3ABENIBA8GYa7ErXUwiF04BzK8CBxWWmG4AzNRAijRA0OI2vRLPxm+xzmpiOHohBPm0pAY
VkDYErCtgx+OARiwg7CF1yI+Yu4FX6K6hWaYUFLUNRZErpcrydzLvYSN22NIub+dsi4uUZx5hPHK
ARSw0d44gl8sATQWgAJAgRUA4MYFAguwASDQARSQASxIAzhQTnf7Y3RAh3RAh5qqKQUpC0Y0oTyZ
CEP+IARIgARL6EqvtOBg6I/VEA4uFQY9gI5LiwKoRYQ1wYRGQGR8nGEYFgaKMMQbxuEtIYl1jYEn
EFsgfoEXqAN4neXqzbUnuz0SVIWUSzlmQAZJiKZJfTnNTDKbGwUVXMGf8uVNOd+scsx3cAVIqIIl
6CIVyAEjWIEVKIGiCQEGKAAIuNwVoIASKAIgsAEaEAIdEIIsQIM0oARogAZd5VV2ds6aCpJA8RgL
65P1Wx5Foh/k+U44pN2jXQ0u1YMpgIJSOQIjMK1DKDE2AWWPk5I90AM9mGiKFqXVcIUTFtZWfpAf
XtdX/ugXiIE6AGmyFQRJKCZeI8GXiSpl0FdmoIf+6qquz9zQ6qJBFaw5zaSHIaIFenAHwZVf7aKH
nxaDJojmFcBfF8iBEgg3ps5mCIhmFCACIohj+wqCIWgDMJCz5dRVbXDuIvXnRCmLsbDDPEldRoCE
MsUGb2jWdPRuCz47WfgE8ZaSKYgBI8C07NCOGWaEJz0EOchkNEGJPsCEPhiXctFhVRaGPriDJ4gB
WI5eyQ7ieS1iWsDsVEw5n2rUHovUEfS1DW0GmttMEqQFVvQ1XuA1V2jtZnDt145teAiHBWsC3tBt
K4iCKKiCGxCBbGZjFNiBFbgBGiCCqraBchuC7VsE5ZyfXAVrciAH5IkPkDmXcyGdFHqTrwo0T+D+
Brs7iHdYB3hAiGwU6CmZgsZRb0IoKUxAhPkErZMQBiuYkj3oXTxAk8K2z8UWBkEAUFbubyCGgv6G
5RiQbCioAyGeBEkQBTyfruGKqmTQTJVWOWR4OdHUTPPNuZrWUKriNV4Ibd7j8Ne2puPRspCyAiRQ
gRs4AiVIAhJYAAZowqOugRwAgiK4Oh7YARvYAaNsA/6yhHLk8bF2Nc1jkOQFGXIllzWNyzLtBGyo
qVzKpXcwiIES6E+YEisIqSi48jHVXd0FrUN4jt6dghSG4XuUEkyoSxwGBL98DkyGgm7vdo+O7JCG
1ztA2x8bBqQaMlugBZxDhil+LtYzyeb6zND+rulR0Gwny3BeI0Xu4uKsgopGeIIbcAEnyIEjyDQj
AJoMGIEBtskR4IEadyMLsOo7ZoO423Hn1tUijfXTkcDkDRlyZQUcdmglp6kRfoeiPQcjGThsEO8S
S2El0LQMUvaJmM/2flI50Md7vBFqr3Z8tGSlzfY9ENs4/28omHM5h1cCx/Mfe8HwXb0XHLJCXzK7
tUHztbldqy5eSw5auFcNpQfegyISdQelMAQlcAKClwJPyoMjUIEESIAReAAGAKMieIOhnAFTJ4I2
aIPYbfX5ac6whmdxOL3/ICxXyAjMSuX0Y7X+kY1JjvLU6ATKkYP/foIwRfYxde8JihKJnoj+Eoto
GCYPLhEE/hQEL3nzd/1hF3CBGHCBF1CCj1aCkR6ESCAFSYgEYyIGYxCFUbAFmcO9QqfBYshbGJRw
RsX6rC8yVuC1qC8GKBJcEsUhboCE2s6BJDADQkDvFND+DWgnpy4CygWCL/CCHcgCaZy7+ak7mp3Z
Ch4S0iWdjnCgfGyFHGFK2iWHgUqN7SZvKqcCK8AXKwAIPZ8wYTp0qE+mTASnCJMjjOBDgn0wEepj
EZCgPRgz7ul4B8qeOzFgsFjBosWLlC/s3PEzaFAkSaRm0iomatQoW6KGDSvms5gyScOOHSM2VNlP
XqRq0qLFi9akqDKb+lRmlV47d1rpuQv+54mQmDJSolgxYuSFixYtRggg8GBLmi9YtjD5cUWLFzWX
LFmidu2btm/k0KUzl24d4nXxzJ0LtivWqlWqUnlq9Yobt2+CDZsz162bN2zevHGr5skTQUx6yhqx
Qshgo0ONKBLUI7HPlNQQqQg7hKmPx0HC7girI2xQjDtTYggTttwF9BQwRk63cnyQKVPCTOHCVcqU
qFLivRMVXyrnMVy2SuEyZgzXrFCiugtTpUqYn0mSJNG6RawYMsnQwww9BRoojjiNQAJJHlRQYQUU
UFhhxQollKAAAWTglQYaVwSBBRNMlFFGJZd0Ys012rDDDjotHhYPjDC+8045u+gCyyr+qaDCCSKL
eMKNN9+c0xlj42hGGjevmPYJIlQ84YQRTkjxWiOxGWKRHlNoqQeXC01hBRWYyIFJJsDtMQgUMahZ
B3PFiaRmmlOk6QILKagJw3R33FGHH9mZwh4uf4ZXyjGEDoOTeKSMct55ohjDjC2gCNOdKriEcpwf
gkgyiyj8FVMLMqHSowxWWpmTYCJLGBFFFVbkYIUeLqhAgggIBMEDE2ikoQUXW3hxhhxyWNIJNdhs
Y402gaGDWIzxKPbOkOWAA0srqDAiGySeYDPOOd12do4433CDTTXVYObJIYasZoQLrRkiW7pc4jbm
lmVMpBsmzTHCiEdpqvmvccWpiVb+DFC4cOd0/8YwyJ7ZCTPfd6KEh8swhBb65zGkgCKxKKGA0l0p
oGhnHzCXTiIIypKEMgtTAPLCyy28+BJOOPSA8wokSxzRmhRmmaUECSOMoIMPPvCAhV0gakGGsJY8
Y0k1f32zbGLMKmbOYu+EM60nqJz2yivdCHZON9+Oww011XhzdieeMHkIHlY44RoiVe7LiEXN5XYv
vrrte5Bzw/2bcAx1PKEmdAdDcfhIa9ZxxyB9Zhcex4OO10spN6m38U2jcK7KpZLaZ/IkMe0nyiyS
FMMLMqQis7ouNdMzTjWQSOEEWU6UEcWqS6iQQg886FADDzvUMMMOTGihxiJ8dQL+TTXatIjOOYk5
qxg88cxYTjk3ttKKJ5p40olo5Ax5ztneXEOOOd+QVk0nnKwrpSF1a7KJapjs8YQVcgxiECYGEkCC
DOQgmGAEIJxzJjbdiQUJSxh0IqSEGDzBDmqKHH62IzJQlGImHPSOxAhFsfBEqmOjwIUqSCEKUvhB
GKLDBTDwM4j9bGoUNSGGJOhRDAPxEEHjoEYjxJCEV5VhQlFQgqySwIMa7EB4M4jADIJwBTKooRKW
kAY1oLGNb7BjMOSwHozMsb0a7QIW1NLEIzzRCE94gxxuJNs4gvSZbpyNG534xIPmVj9EYMITj8jX
HvTQHIe8xiCEIIQe+iAMPRD+oiAFYYQg95emlOBpOi9QGJyUAAUGqskPLmkOKESGC1CoEGSiqBRR
iIG6UnhsY7gYhShsoQqHXUoVMRSGpmgoClq8zie8uEozmuGOAp2tEYtYBBmS4IS5UcEJOYDOFnSg
gyxsIQg/qIENdNADJpCBDce0BCXSJo3BUG8d5wijOeBhDsf84kY6QgUqXtEJYnFLbOO4RhvpSEfS
dCIRVOASIgI6G078Bg97aM4emNOHQ07BQa8Z0yfwVxDcPCFC/lpTDCxInYPBqWB1+OhHTeFJU2yw
gxtjDzFCVoph4IIYo+AUCz8GqJt4zA+SgiEuBZGp/TSlJr0EylWGaTMFEaL+CUhAwg5aYwUXrOAI
LtjCDGTQhS2AAQxDqEENfuCDJqBhDWugRDTKJYtsmK+c71gMPLgXDF/s4he5WMX3xjfPIB0JSGvT
jJHO5jZEfOIThUBEIuB1CGF0ZH9P+BKX9FCGAG7CE5t47ET7kKUphOQJloWcH0Cq0X/RiaMfHQSf
PBmKUJBUYuCZmChMQQqKdUcnpCCpLdqjk0BlMBSqqEXJ9pBLWkiCF1UZFamE6Q5hDhUSZQiDDpDQ
gxrkwAkraOoReBCBCvxgCF8Ygg1sAIQrJCELzPtm2qIWGHIU5h3pNIc7lrHWXvyiFqnIxCOqhA2x
tU9s35hjkIwkrrbdcRH+YqACIcpQCNsQBBB52MOB9ZCHBS2ijwQtCCIOkViDaklLTxhEYWXIODxF
JwUrOFhoPSk5P21HYhU71FB4QhRbzMQUPCkGMYhhDM8VZz/0cIQkpPIIljmFVFe5Cle00o5X9MgM
TXADDlBwAycgYQU3OEIPtFqBCmCBB1Pmwhe+0AYqmgESlFgEJaBmJPMRyRzlCAaafeGLWtQiE5vQ
RCMu00Y3kuMzQPrGOPK8tnFgAxudWARYqFCG1wgQD8A5cB7ycEhCQCKgiUikZF+TSEGqBgqUPehD
rgPakXAUBinowAouiB+XmCISLZzcClc6jOwcgyeEIgYpJGGKUfBEEjH+tgVp/eAKR4SKF1GRyqZo
MSp6NOPHBWpGO8ohDk/0aA10GYMWwkCGJqMACzbQqhCEwAMa0MAGM6DBD+bSzS+HOXrXIKv5uoVm
x6wVGKvYhNcsYy7zxXFc2MDMaLhxjXHNE49iCEsZPiFh1XQkD3g4+BQSfUgzFOIQAT0Il/6JGwXu
gbL5AgQgzgS5N/mLLQUAtRWw40kZbkcYGgPFKIyyahWXghjHwEkkUsyToZTC1E0J0I1zrJ+eOqVA
Qg3yMLcmC0RYAhpsSJ4conGGMiABB0HowRB8YAELDKELYMhCBRwwgyRoYQttYPAiwhq1+3bjHOUo
O/d2YSMztkJ8neD+Rl7dh43L9Jkb1ihNNahxiUWIRQxmOEMhlj5o1Rz6DpatQhXEsGiD4KbCU8AD
FRzPEExsIhMJFATDDHdRKHQgAJ5nQHJEfGpTiyKUK1S5i2fOk1G81uXDIEUkZrEeSbFC2Du8cVQe
IYlHPKIpPh6mVobrDmlpIhHHDDsbgoCEEJ3BDEXDQQR4kAUiDAEIQPjBDChglzG0wQwMP2basuE+
cgipW+fYRdplAQtZxII0pHFfHLPRjbqXa56n4cSAy2CGMHi/DAAmxLUABx4owR0ogRJUQR4kwn+1
SllYWoUZWsU1hDCkQuUdlJ4wDJxYFhQwQAFMgAfmQOi9hE3hxyj+bcyf0Np3zFyrzUTMNQMxRELM
8YTEzMItJAMskMooPIJ+hELv+RY98AI9IAOxBd8yDNMrCNEYrIEzOAMWNIEcaIEM4AAXuIEOUMAQ
6MAPfMEPYB8KQIAMbIEWuAEXdB+YUQM1oMj6aMa3kI3aqZ0shM/4/IUbjUZo3Bs2NEInlMsroEYh
+FMYSIGgLRYmNAIjGEIe6IkBKgGrNIETVMEy4Y5t4A3eZNpjTaAwZFxhVRxaQIFyQMEIAAAoBsAK
BEsL1YFwCEMkqAIphVLLEQPG8IRRpN5RwOAwGEUpsAwy9EIvFEhQsMIjsIIvOsXNjQozuIMyJEMR
hsM45MwNQFv+JeyADKiBF0RhD/QAF2jBD0zXEMjADKBA1smAGF4jGrABG3ifGliCJ/yFOaDDGqYf
MOBPI3CCtnzDNZxbaJSLJ1QD2ACJaQQUIoyIoB3CJaAGIvTBQegJFCjBElQBq1RBGESBFIzIIVTG
aWhCvozJJrQCLFziHhgUbsRABEmIHKSA53neBFDAHThEZgnDpYRCi5GCLcTYyqke7KlYq7lYq9nC
LOACM/SkMggVLfQeK5wCK7zMDoUKgRgjVtBDLHiCFNwAEmgBFFKAFjgDGTRBEmxhdekAddGADGAh
CszAD7gBr7hBEtzFGJjBJTzDNZwDOxYGY3SLLMhCK+BPQHn+witQQ5BgwzOkY97N12fIU/wgwqKN
SCFcgsAZBL+ExEc8AQI6ZBiMyCVUBCa8S0GESXNkZCroDybugcGwwCVZlAsUQEkGwASsgCLVFijI
BwuOQlHI4szRoorxhCmkUjEwwzLkplL+4Cn84imcwssIYai0TjK0QzsUSCwsCBLIQA/4ABNgARWt
wRfMgA/MQAXUABHUAA0EwRBsARfIwBb6wBVcAROc5RaYAfOwJZ59A2eYHTh4w1zizydggydADbl4
gl/Aj2jkW5LAD49cghVIwSXgX4QRBILhgZ5U1BQkHiEkgiIkwiEpnCEYQpVAwiMwAuX1gaFJljDg
AXQowRT+PIHhGSAJFIAAeB4BREAeTMIjlNzDZE52kEJ5iMdMZgetqd5QFIUy4GYwuQM8CFM45IIj
OMIquIIriIoOxQwP0YMuLMgPLIHyeIFUYgEabIEPyAANWGcFUIANZIEXoIEbZB94XoFWNQET9EBU
mkHzFItmlB/ZgANdtoIA9RE6YsO+UQPUeMNn3Js3dII8MduIJAJfFcJAFKSZSNJhBZgY9KEYSEEV
NNprIAKFVslsfMW9aIkSvMAd7EEfZBwe5IESHEEJPEAAEEAAPICFTgIonVSMqtBKqVrq2WirxWBP
6CgzNMOPCt9W5AIruEIu6EIyOIIuGEioABk9LMgYLEH+EyxPGODADvhADWQBD2CpDdDA0aRBGjgD
GgCBt8nAeArBD+hADvTA8lQCNZxG2ozGZ5wDOGBGJ2wCYPlIX1wDNpxrudQdN8hCvtpRIxBCRPbV
QLoNmWTCHwBHhDyBHgiaGIyBGFTBlDAaIkDCpDYCN5xGI/yTg8gJiHYqIGRCc0zCE4TqDajAqJYA
HvCeC6FOKAXKn3TQqxbFTCgKKdDmMMQcURBFMQZTj8JD0OmCkeKYIxDrkhbII0BCIiQBEzgBEwhB
DaAABVCAD2iVGwyBEOwAFqzBHMABHLRBCWjdFWRBViKBDyyPOSoC+FXDfpadN7wCJvAVJuwFflrC
N13+wiXYYR7SoSf4EyFcwmHe3wEdEEbsQR1AAVlQgRkkQiKUAcMSgiE02iF8AicsApBwQr8W7pdU
lKElkMcGgiAYXB4wZBIswUI+QiDUhyrs5KBkB6O0WozBmmqpHgzKqFUcw636KDzcrnAx6ZA6givc
mA8mQzIgqS6MwyQsgRssUxPkgBAwgXV6ZxtogQ9g2RekASWkQRe4AXhqFRZwQRJMYRNwV7RFZvOo
jfuMxjxpAuUOZDX0hdwuQo+QD9p2gziARidUySIUQjwuwoB+QiO8WSY4gsYdFhWIQSKYAQFDaCJA
wiEhAidwwissApFZwRGAyYRECGUp0m8Kw5AGwiP+/MEkLAiD5AHKqoLEgJB3zNp3kAJKFcUozBrs
qlix6Syu/ijPukM7COmQrsKNFYgQJkMx+HCBtAIVLAHSOoEQrAAFCIEWYAE5ogEX6MAWoIEQRC8Q
cAG3Yq+3XuMYbEFWOqcTRCbU0Kv70Ct9zpMlNHB98sXx9cW9nc85kIYaua/+NgIiXEIfoYYmlAlj
Ql6DikETNAEBE0IVLNprQMIhLIgVPMGD8I4LKIFGdOzmCkIgDCUaQcIHJ9qQvqgqiEdqGYpRLErL
1eKqvW5skoLL6Szu4m4xHqcu5HDQDukj6BA9BC+TxgIhHEEO5MCSaUEOaIEckIEZjAEXfK8PoID+
1lVxG0StDkSVeW7ZMGvBGETm92nLueETGf/Z3hEdX/RFfa5P2Z0KHbGNMR3fIsgjajxWJnBuxUHe
v41B4gpy4o3IvxlCIjQCHzCkEUgIuxjBFPTB/awCK2TCULJCKkgG703Cik5CIDiCfXQHyKjWCTUD
LjRDyxkDMdgCi2VHjqreMchwKgsTgeiCz+4ur4GDLuRCzdByLoBDIyyBDNyA8gbLLzOBGbCBFiDB
DXAjCtSAG6xBGgxBeBbNNXrdGIyBGnif9xn1M3QCPtEhafDIXy0CNRBL2lgDNpCDuqJP2XVDxdJx
o/kIavTvewHCH3DEgv7bwiJugwpyFAwwIVT+LiGwRlm0C2EJwylkQihkwm0BwyyowirwgiN08B8s
tCQ0tEMXSmrJaFGsVIzBWAurYEcTxTDI8Az/6IAUSDLkAioE9o25wknnAvD6BFM2QhWsAA7kAApY
wSU8oRCYgSKEQQ1AgBB4ARNswRZkARbIwRDsQBBcaQ0QDRm0QRuEmdx+1yI8Q7FQw1L31TERgiKg
Y7mUi9TgU519Rjn06ScYHznXb5wlREJgYkMNmiLsXSI4KhEnASDqQSOUtyFEARREHhQYAR5gXCac
QnPYln3Ugn04Ai3sriTgGArtZHcEk3dozHnEJIzF2GOvHkd3NA3n6jESSDKEw0gHdtDqQnD+Bm8u
2Awe5IAySUFzSUEQkAEZLIHugLgTSCUZLJENdIEXMC1WRQAK6ACvtAE0PMPTHNP+hcEfUsEZHEKD
BZQiFELz9EXUqM96jsMczR+PGAQD0/Ei4KEfaUIqEBanTkGAhUEhFAIhOEgUiG5bc7mDPIHn4sEU
uEAUGNomYFzpAiMr2BLo/Dev/Xd/8/Umd0cvBNMx9IIt2FDlzIQkRAJOvJ4Ltxplu8OtKkOALEMy
9IIv6AIrBAKL8q5I+wItS8Iu7IEKEEKwWEIZ4MAN9EAQRIncNJeUBgEO2IAM7AARfAEP9AAOdCMO
VKMiWEM1QAOuP8NRH5cUnAFfrbYimK3+3Joh1IxL3tGrns7RHuKPw40zAxOUPHpsYUVBWBwmJ/gr
FVRBErS1/iESFRjagR3WCzxBHziCMARCfbPCKgCDX+t37e2uK0gCMpj7TgJKd9wqMxhDL+BCgtsC
TUbCzA56LVI2M+jiLbQOMwQvLwipBz/CkOYCSoeDEBbDL6BCFEDCJwiLGkjBtO3AEUywE5jpGAiB
DDARBUTri9eAA0BATkPADCTCM1gDitz4M1BCITzoJYxIGVwCw3nfmubdNrOxN5xDdc9d/BSEwyGC
J7gv5W0CI2SCIEhWFDiB2T6otzMkFShw/RACHxhCB+MBFOgBiB7ChWZCQUcGu+M3K+D+GA05AhD+
gkPHPS70Qk8yg1X4xCgEumz6yWsNRTD9aDMwwy3gZi/kIvAmgy6sgg7yHpGKtEjvUC60ApZPgRx4
whlU4xk4lxOcARIsKxtoCBZowQ4IQRDswAzMgATIuAyUwA2YASUkizZYwzY8QzSEE57ybd8R8HPH
LTr2ZR7KH37la9tAGF8dU/1wQuV1Km4sAQEvgoOCBSErcIXygT0zguHlART0wdPHEzAAA5t5P5ux
2SwALZF+f6Xsey/ou0OHSjHQwiywnt7Xot4rit//fa4GvjIUvuH7Qi6kgg6uKEA8etQKlq5ikuiF
e7REyRRMclygKHHmjJQwcqSwqVT+KZqcMT566LCxIwgTHBEizKAw48oibeyysWOnrZq2b9muVbt0
qUyZRIosUaPmidozT0GpYfvWjZw3p05lccJEiNAnRIcIGbqK6VEfYZiMLBGjKFEiMVSk5CF0CNJa
TlcNGcrTJ8+UJ3gYMcqUa1euXLpy1fJ7q1YtWrRqrUKGjBcvXI8h9+rFbFmvxcWK0ZIkadSoYZ0j
RSI17POxZu6aNWPGLDWzycuWJasMzJXAPJMEonrlCBwvernAVYkiB4qVHCgg5GiiRsuZSpbkPIvm
BUUEGTJs4NiiBk2JGTJKWE/zEh06mTbRkftGzpqlQmLKKFpkaVH9nZY8WcN2jb/+t27/u4kKK0wu
KYQQMQjZCpM+MNnjiCXMUkSMKMTQAxJI1MoDkkYSOQQRQ/gwpA8+njBEL1d22UUXXX75pZfECmuM
F8NWyaUxyHDpxZhlVlPNmMwwI4aWUWaRhDTOOuvsGGWUSe0YY5RJJkrYepHNl1xqe2SSPARq5RVd
kknGEV1c+aMKYeSwwokjVlghh0rUkOOMK5hgA4caKLABCRyy+0GHNLBIA40fSrCBDWjYKU+m8hgl
h5xrLCljDDESKUMMMxZRBKhnqKmGmk728+acc8rB5hOr1kLkQKqkwsTVKVxwIhEzxKiiigqryENX
KvhwtZFDGskrrzwYeeSVcMD+0cUXFn/x5RcZa2lMsMWoxaUyZFbj8bRmmMRsSFqC/Ew0UkYhRpnM
jkn3R2R8gS2ZXpah50pUHHlEV0IaaUQgV3JZjBt7j0DTCiOOyMGI6BSpZAgZdJABCTd+AIKLH/xE
Qgs0Eg5CBx+yiEYbRtUJWSY61DGvEzmcSNkKOeTgaadnLLkkqGqwEfWcbryRxRNEEHmLkEQSbMRV
Rhp54ogkEhkjCiqYzrWREPHgI19NDhHIk0wMeSSvWMIJR5eufQmzXclwgfEWeFejpxgmDyMF3GLo
YZJJUjY7DFxaSAktkrfPvcXvv3nphR5k6Clcl1deeQRD4RK58BFU+M0Fllb+9LDCCimkGNgKKr6A
Iw0wfLChBybcwKGECsZoww0gkLBhhhm8wKKGGX5wZppEQ85dd/NQdkKOMuSYogyKFjFDPvxAJefm
mzvhRKpGIEGkrZ6Fhn6JG6QYwyIpqKjiCXwN0cOQRgxp5RCiGTkFlWIfD6ccr+lpp5x26JFNsl4e
O7sXZSzz9rBZyEULAJKCGMUgBd3wZjfNTCI0ozjMLYqxGCYtJhmFGxw9VpQ4xS0CEk0gRFtQgYpV
JGZyh7icFXpiuUvMYQ5faAMYuJCEK8zgDSL5ARe40IYw6GAGDdBBECoghCEAIQ3OYEfJQoYO3ZVM
GmdImRQqIqcyhOEMCQv+Ss0AdA5vdEITzWsEzxKBiEYsYoycIMQNbjCpMKCFaVSAhIlCNL5HmOgR
mYBcvTTxinK4oxz0cIc76Be2yvTCF5L52y1sMYsh5U1vpsibJEYDGtHArW2TqEMkNoNAWvitFn6j
RZUuqAt6fOkV4zDlNRbRuA2h4hSrWMXkHuKEHDihDJaTwxq2AY1pQAMLV7CBDLiQhSz4gAuLiAY0
nrEGHaBBBkLIwgx4gIQt0CFR5UFi7tCRDZQxoWUsu4QcKnGJ+VTCE/tZCs5k0Ql1Om9nQfui0KRQ
gjSOYY3cUwtWyBcXSOiBaI9zxSrq1QpwuKNwe5xfOXzhDiodEhezEAX+KCQhmkhMwg4TDc0kDnjA
i2bGbqyQxCQYWLdb8GIWoQiFKBRJi8bQwzf0MKU50hFTdGgjaRt6hCNUkVNYuCplTjhDCruwjWhE
gwwyAAIxwQAHOHABDtBApiKSuQYuWGAHOwgiE+iwjWkocYnryKY15GCJbGQDG514xiLUYAYymKEQ
i6gGN7jhFGzIohqvyJcnzPiz6IkREkuQZxPG0IQ86IFpVFGLhfSQB33RC3KpCAQqYrFH97WDj3yk
Xy94QRhVpDSRsxgg3SIBis6QAhSg1ZvbDuMKj1J0EoPAZCgOIwk/+AEUimwM4RIyDnPANB3rUEc6
2BGHMVzoD39wxCn+WJGKPjjhIrS8nBOAEA1nbGMNV9jCFXiggx/AgRJtWIQz0nAFNrQhCFegAAWI
IIQdcDMNcPjYEtWxDnJkQxrZcNR8rUEJNpiBv4vgFM084YlOeOIVA/bEF6lClUSMERIS+UETElEF
LohhClPQAx6Eg6EoKFZfrnBEKlThCFeA430Ddcc7/tiOdiSjMb+4xSb/ZgsZD2m05RqFRkPDyFnw
AhW0AClF7RDkiWpGtrMVhS1UygtHYBAc9DBHPNIhD3moox7qYAclFjHYSWyGFad4ghOY4DuUsQyG
acglHNpQAyDYwAJdmEMaKjGHLfwADXD4Ah12YIEiZIEIWPhC57T+EbJ7YLM8Y70vOqRRFGewgQ1q
mE/MPrEITqjTE5j4hBn1QIg8UEEtXxRDCVDQAzcQQrCEICwVovAgPkThDoyArIdZAYt6xQIc8isH
iv+YYnrAppCM4UUxZDzAIQFwtOTCcWg+umUgmwAGdvhxsv0giFCwQpHF4IUukOGIcIyDHumIhzzq
Ee5wq0MbY8BDawWBikxUAQdVXcGaUuAEONCAu01dKhegGQ0wHAq8aYgGJdagbx7MIQ5EoMEQhoCF
bVgzd+twuDWkcV+YXOOsad2vGc7AVpkJuBqnMvWpp+BGtkQBjUhIwsnNQogoREEJRqgCH/jACFcA
JheQ00UIYyH+DvmZY4+VDWQweO0LZCQD2Hgr7QHxdkDO5I2RF8Xkj4MMAxjUYcurDQQrWIFSlYJJ
F+AQhzhM2dtw64Ps9UBHhPlwBz9o4otM4KYXnKCmI9iAB0EgQhsoEQ3uusENYPiCF4TAAy6gAQtB
wIEWiAAEHoChC0UAQxF4MIQ5JMqrIZOvNCoRE/ZYwxowi5MTtKCF4VWkrYtAhBwyjRUrVBhBF0Kj
DpawBC6oRdOxd3mnVxGLFfHLFa7QRCpk4b5y9DzXf1xGO44fm/plRhJFotvzLQrazegtNM5m7SSa
DVJXoOIRrHCFAFeBmFv8QpRdG8c74pF+eeQjH2TXhzoosYT+PJz7EXooBHTkpIUxKCIMNghCFq4A
79qAC4QLh75AGuSgBirgCmoABWpACMBADniACIgADBTPBiqAZabhdhRFGr4prKShEzhiI8hACrDg
DLAAzJogDH7CPj7hEgihDKhABvNAlV5vCdwgD8YgD5og9vJACXSlD4zlLyKHTDQBssShj4bP5ygr
19wlGZDhMIaBMyAJbzAJ2TZjCkOjDoKsCydhCX7sEQ5DF2iBpWaEFkbIL0SJ297hyeYB3NZPH/6B
7NghD5bADrIGD07PC87AC7RgBnogCSpABwCQ0drgEIEACNygI9DAC3zAB7zAC+SkEuSgCGhAz3jA
AnigCFj+hmXmQA4+kWW0QA4QUE7OQA7UIMx6pwdGJwz2yz54ogxisAz0QJXy4AZkAAfcIAlwkAvw
YAl+MWq45A9QITBq5Gt8D7KGz31OLMWa8I92DQoNAzOmkBQcahQ248Y+Y/oiYRC40ASC7MdwwxX8
iB5ogQwbYxX+SXKajNvM4R28TR7sgf3ar+zQIf6OQEPyABG2oAT+b4aEQAjU7AfcIA7aQBG2gO98
YAawICCHYAvaQBJRUAsqAQ6yAAgswAIqAAjmgAjY7AGFoCED0gmEQBTlQAhuAAdQAAVSUA6a4wy0
oA3WoD7U4AwKYSeo4hIaZxGuJyWTYPZ0ZQmiIBhB6g/+AmEWXMkvgCMWMEETdGEXfMEXlnAXggGQ
co0ZwgQZDIPISMOBkEQShmQKuXES/AD7vBA3CmceMEi1eg8YgAE4wMH82hD91K8e5jEf6kEO368a
luAI8ABDqKAJHEYGKmAGgkAI1gAIuqAL3KANKMYH2MAZXGclhAAI0EALFiFNvIAM6KAILMABHEAj
36ABKqACHKAGbKAGdAAHekAIWlOssuEMzuu8XKAk9+8MtsAH9G8mLcESnkFmPsEMhgsSCOU63IAL
mgBBbAUPlAA3JiEQHCHbkMEVphMcciOyqHKPduEXnhEaGeMgYosKHQgbJSGCNqM8z1MVuExLQEoM
LWj++1CBFdCw98CBG8JBHOjhHfSTLt/wHtoPH/RSH8yOEpoAhaYgClDgBrQABRqgAVDAmYbgOCmm
MYFgEdjgB2RAJYaAC9IAIuXAGhpyDj5Tz8AgE+kuE7NADrCgIUWxJC2hPVZgNsWsBxhNC3TgCtCA
DepjEQqhEM5ADFiQEhLhB2bgBn5gCXhROe8AD84tEJ5TEqLTEcYEGf7lccAhRYYvGHbhoCoLgxgD
GTJjFjKDPMlzM4IELJOBFXIq/HiBFtyTHHmh91zhFWih9wQDHJoM7PQz/dTPHvzUHvChHskuH8jN
Gj7BcqAA1LQgByQAB3znDWggYoqgC+CADtKgDWz+wP88kgiy4AfAAAkCsgaywDMzMhSLIFOpyvEA
DwuewRoqgQ8lUQ4ccAUgQA7SaSP0LwlkwAdy0weSgL/goxAuBBJuAAVowEgnBUHw4C7yIBC0BEo1
IxnKkEweoRHiMkXcIRhgoSr/6B3goR3CoX6SwSA0YxawsUzN9CBcgfmoLXAKZ+beVU4RZ+ZWZEWQ
xcn2lD/j4R7u4S7d7x/mUB7IwQN/xyp69AhQQA4+QQJtgALjgBIgFg5gqAvSYA6yoDItcwtEsggw
MiNP9VQDsgIsAAjkAAzIYBqkgR2kgQ9VlAlQAAeOQw46QRosgQxYZgvm7AqaoORMrgm04Djb4Ab+
3uAGaGAJxiDBqkAJnoB9HgE6oVQSPGzmjIXWgqEcwAEWhk8//6gcgoFwstIRwCUbp89MHaFfNoM6
VSFGZOT7vk8XfCNOZ+7aYmEXvu780I8/52Ee5hFAAXQfAjQf1uGbLsfSCkEKnAACVkBN4CAOiiAO
ugAMtoHP0oAIOLHxEm8xI9AL0oAOPJIHPFfxLAALhsCqGlZiPWYmVJQ6aiAHVqAGVsBWP4FmLaES
goAkTAKNcAAHkCAH0IgJxgAFKgBmkyAMZJEQkhYP/sAQJsG4AgFKcwEYUCEVmLIVZCEYEmJFbk1r
3aFrYuNd/MYWRAGlHmkzUEoVQmEW1HSERij+MX4BF1TBLYHhF+JXW4HhlWABT+kWHM5hF84BHu4h
b+eBX+8BH/BhH/y2gA3Yb8nBm1JND1AGeIzACFYACIggDhYXDMDAAmigC2xgCB6vcbsACGaAiIZq
GzC4CBxvDrAgCzyXByKABoqgI38AGhCtFFlXdnYABXbgZGKGZSQxGyrBYnLAUc8gDJiAFXXgDRhG
B5DADNoCEqhAafngD27DKKVUElQheqdXFqy2ILpme/1o+IaPMgqpFxxKPf3gCpvvMHJqswoDGGZB
MORXGDbBLVvERX5BclohFaiXGxBHFvjXHAA4b/mVb/PBb9mPgNWBEqXgE2qJJ6wAE4QHE1b+oHHp
gA5OuDA5UQ5oAAziwIK74A0qUBroIAvAYBrmIAJZRnR7qWGFCg6wYKvYYb5ckgIclVZPUUWdIAhG
kRy0QQ6oKAdyQAouwQkSlIl1IJlxQCwWgSqY8wnyYA/2ABCMqxYcYRVOIRX4OBOotxxSBE+TMD/f
gX62towRKRQwaTNAIRSw2LOQsk4bIzBcxC3bGBhwwS2DIRh+ARZSIRMwQSoO4RA2gYvLAR7iIYD5
1U8LWYAFOB7WQU7k4AmeQHDP4Cs2wQriYBs41gYoNQ7SYA3YIRpmAIY/2XGzoA3mIBq+wAbAIJVZ
Jr14AA244AootWIjMRvKQxqcQCTlgHX+zyAH1KtOwEkOFiEIsEALmOAUm2Alv8MHVjOZhzfBJPoO
7mIPnvOaaSEXUuEUMGETBvpKac3ruqaPwmEXwgGQEEoyjKFImg8shQEUQEEUVIEW4FgwWuwvnjcV
NkEYgOF95fcXUkQXNAEPQo4KnCAKPmFLec5bCXmA8YFf4wEenmxf72EdZIEKFJZlMMEJPmETpoCq
48ACK/ALooG6pEEboiENdKCjt4ES4ECrPodl6OATeaBh/SwLMnUHhkAOvIACvOAl5IAJYrWnnaAG
IKAG/LAjnEENmqA1UaY5euBlCeU7tCsQxaAt+OCzleAOrFoQrk4VWAFLPOwRNgEcZMH+FaiX1sSB
j7xmF7aWKpcBGW4BiwVITYtkrlfhRYDhtpalXvt6r1OBr+UXkHdBFgDhCaKAYAwmDzxh+HjuyfxX
gOchssvhHOgy/WShE9MkTV5lD6AACDC4C0JbqL4ADaDBGvROG6bBvUKaEqBhzeRgUehAI4ngC7JA
B7ggCIag7qQhC7CAFE+Sm4QAAoTAmF/XC2YgxqXBGbYg9MJgFLXACKIbBXSguX/g5JLTQNJOCZQA
CpDXESQBFVRhFWhj+7g5nfiY1m6NHvD0rPmIa5chGGoBLA9jfduUMEaKF5olIa4EMFxBm1OBFfZa
FlIBGGThE2RBFjahlgomB1TABQD+QRb6d/jgYR4qPW/T7xy0dFTWYVQyvBNzgGUyp5Y+/HEXs7Qt
cgvmYBqEahu2gZq0wQ0MBbeL4JLp4KVtQIh2wBmcgbdFVRrmAPD6UBJn4HXbJAyegQ2CQA5UHBqi
YQ2CO6zyTyWRYAy4YBeTMxEMhBCmoMujRkofK4Rmzvc0oRVa4fcEyuvEAXHEAcXGWp+3sk2jJVp4
Yb/xuFm6JiHCQXL0Ghi0mY69uhU2QQ6EoQ/K4BDKYHd5VwWewBOudBe6oaDhwX8nnFTOoXpHhRwW
VszchGU+oRPKwAWsYAjSIAuGgFK74AeIgGIJzgbgYBqyShu2gdFsgAaIgGVAlhP+h0AIvOALKvYL
hGAGeB7JhQBOWGYFhECYz+Aa4MQLTPzEpwGiz2AndrYE3CCwwiAJxABBsEIPnqDLp6BZHSEQTgG5
Zq4VTsETfM8TBMqbY+ERmmx7r/QpyS9GBCiC4jlawsYXuqbvvYYXtBrgN8FVMMEKTiVzZvATDqEQ
ksBgjMAFnmCgu2FLzwHCK35UCnygT4ZlWPe4Q93QmBsMriBiaGB1bN6C4wAI3mC7PvGXe54GMpBl
Aq8kiUAH/OzvIvELigAkH7AGfN91WSYGWEYarEELYnrJo8EaFo0M/EsRtCCNsn7rMedn9KAKoMAI
GuLcHOGqxV0gXqHcX4Fezf3+FeISrAE7RXDhF7SyFnrhFnKh/XmhkCooHILBF6gyRVIEGDKBjl3F
CvbACgDCxRQ5mD59wkSozCUrR5w4WeHCyidZv3bJOnfu3TuMFgnKuXTmjCU5TmrkWDFDiJxz0uRY
AcKlDZgKFtwAIRIHDpA3M2h0oTNHmiUmPIJkkWNhiBwsO7B0CRLkSxYeQmxUqGFDSIUdclR2lSNn
xQqSleR4keMsWho0WtigIUPGzLNrlsLYlSKmShMqhKIYUXIEyhMlefbs+fOo0aNXjx6hQqXJlatW
jh6tAqcrlytYsHTJAgYLGC5evHohu1WrV67SvnwlS+YrWDnZu3Rx1iRsCib+K1ZcrnBSpowcgwrl
MNFixaGLFTHAytqF8dw6jLLAjr106WxLIV6cCGEiR5oUlVy4AHFD402XHzaAWKBBI8sQIF/SVCL3
TAiaOUSIWN16VBpXpMGDBTtYRQEWQhAhzTRgPXgEcysIoUYl0FSyCByLoIFDG19c4YMZa1RSDRI3
JBFGEktUsQQVfh1xhBIuGIEHHnvkMUkfjbXimGOPMQJIKplJthksu+RSETC/lNZLL6k5mUuTv9DT
TkW+7LJLObvAIssmckDBm0NOoICCFZd81MklaWqhhRC8JXdEDEdEJEcn3VD3iTBhrVDJNWbJUQkT
QjghRSWWnJmDHFz8IIP+DG/80MUbQBTRRRY38QDfDsdpcQYcYIAlhAU1kLGWF1mksUUQREBlgQ01
PPigSmPJkUMOWhyHKhprQEOJNYts8UMSWiCRRA7EIrFEsklE4deMLrigxB13KIFHHjo21pgjjqDy
SCCpwLKKI0S6ossuFeHyyy+vwdbLMk42eUsvsAXjSy9YYglOK5xM4cKgPbgQFgUrnPQJNrJIgw02
YSEhhxR6WudCQ59ccnA3nVRHQSVoeOEFE2TskIMTOUhxycRyZOPGED/wIANMQABhAxhEABFEEUUA
8QMTZ/SQAxZeYHHFFmqQIccWacCxxhdYDCHEEFkomJUNsYLlXQ4o5JD+hAxCu7GGNt98c80abHjR
Aw5k5mDXETnAqKwR0MaIhxJ2KAFFHpkYwgiQmqASiLaowHLKKaikAgwwuegSTrpK9hIM4403CW+U
sCGuZSyyyNKJJ57QWusKOLiUnBNInHFJN94cWhasIYF+hBGfePJJJ9aQg441ZwkhxDRegCxHGGKJ
dIkWltyExRdduPHDyhVUMAMPRNicRRdkVIJCA+AF3SYTYlcy9BZLC/GpHERQQIFXJJkvlhA36LAI
GWNUQw472UDDxq09+IDDDDicYQYSR6hwAxgJUAnR2oMSYvACgTCiD3xozCkCIYhAoGIVgdsEK1ix
is6EIxy6wIXjcBH+jMdFqUmlWUYyEgeOXYDDG7J4BSI+sQhMeAcLZHLCRy5BKEwc4hNOIF8YliIH
KnwEC0aAlQ07IY1soIMc0piDHOYwB3RIowcoYAIVjNCbM2kBC0CInhO9cIUgcCEI7QHCEIhQKSHg
4CRaUIMz2ICENumADS25QlGg4jQo8oACPACVSmxIqxrUACVYG4MZKGEGMxTiGYu4wg5wAEk12koM
ObhBrWCUg4gpYTB3gIILYPCEP+QhD49ghGECcQpVsCIQwsiEJFTBmV9wEEkhbFIIg1GLXzQpGU2i
hy/CEYtgiqOFntCDE84gByQMEgIUsCFvxEKFghyhAQxgAg2/k43+bOyAAlrADq2kAJZnTEMbcgAD
DfroxOPIYREuyIFCLlEWLnThU2hIwxc8hQU0GO95XSACFuSgEDPcoAlkGMIVhPBPa6QhCDow4xC+
QATxVYAC4QEirARZAwo06gblMUMbkNCGazyDCTOYQRB85oQehGERJjrCDVqQAxWoIE7RUkIClTCF
GhXmDnvwgyROIQhBhCKoqVxFLn7pilqAMBi/CGFT37UMX6TLF7HQBThaKItqfKIQTbiBrCYAgRVQ
IAeYWJvAqKCQT5xBJVrAAQVqkI1oCEFTZzkfCnoAljmswT8RqEAQ5EC6sCygTCqpxCXAkIYszOFo
a6AEJdowhjb+sKEL8qyBSh1ygxLI4AZ95cEV5rANLBBhB/PhQRaKkIYixAcsYIADHaaxDWlEgykz
oMA2ffZPcqxBDdqYLRa0IAdLVEIIOfgESU4iluS2IAoHfBYUnjsIYUBhEE8QhnX94AdTCMMPwggF
Kwi3i2CoIjXpemot6JXLxv0CGLtIRSpa0QqDnEkKTEDBDG5AvruCxWRHuKGasiGNlnQFkGf4Zzmd
KAQICIEMbFAEHHigAx5EQAgiscQZHoLX3hi3C8YDLR0cSwk2tGER0EADGNqAAySkdAXFsm9fdTCE
xdqABxUAQoEsQIQhRIAGUiECGKBYhKZJ4wz1tS0FwHMGNFj+AxpyEGeAs2mNbGihfImSg8AG5oIA
0u1ZM4LCFJ5whyfUYczcrUOZu9tdVhy1FrmcamxCuIzHhdBcsNhEQaJJNdztIKPNFNknvIEm+SYM
G9moRJTLQrq2nkEbDnLGHCoRBCeoQQtl08EVJo27HyLBCr+pBDY6UYmf0cAGcNgGHKIRjTVsYQuJ
UMMX2tAG4CpCESVggg8iYAMJ0KAGb/ABFyqAOyHMYHk0sEAFnueqGuCuAjKwwQ4QOlcFKYgNQ2OT
FiqRTXJkgxzVGYFYc8CE5EboCM2CyIyeMIU9PAHdwjAzdrErDO1eUM21gEV5dRnnELrDHctgRjPm
DIxUbKL+D1Yog8ggyQQvhGFQYgIs6dR0CWyAhBwUX6K2z9QESqdBGtoIsDTIgIWdoUACM+iCHGa7
AycUvIcogCcTvZAG/7RhG5SAAxzaUJ6YDMEGV0CDGtTQgwqgIAINcEAF5uAMxFLCDVmQDxbAMASl
1OdlRSDCXGcwIB/g1QvfwR0WGMwGMqghnNLQthI7ARazDRIFHTjJ2qz2rCPw5glQ2IMwBlEH65pi
zNrlbipzUQtg5JLN7VoGv4MBD3i4I/HlmI0sWoGJPgwkBSiIoxaaIAQtdAc5DhFOxLHRDRxSg+Jm
L4sVwtAEYiUR1XKYXjTO4AMKzMBoYQfuSZBgNTlQvBL+0sgCEYxHg1OjQUNc4Fob2PMDHyThBzVI
jwMc4AN0sIMdcBAxTNAAjW1sIw1xKAIYtt80LGDBBmfZAQqy4YUH9MALarDGMyzhjCZUiBoW7uY1
tl0dOdT2AQUQAAMeAAEQgALJBSZWAAUxgIB3127bJQySIAmO8FOuwAu0oCS/cF76tm/NsHiJx4Hw
oCWdgAnY4RBhwAZpcAacEhJlkEhn8AmHcAnUgA3c8A0JQ3EAJgc1MANlIAU9cF+6IllXgAXSYA3W
IAf5AzRYsAgjgQRxRBJyYA3skAZdQAPz0TxwkAZgsAVuwAVogAZZsAVcoAM6YAM+wANnxAMOQAOO
BQf+RKADM8AFaxENafEFYJAFNNBaYIA7WRAEYwcWZFMDTVAJivAMlXAGTaADTWAJ2dQDENAEhHYx
oFIDDIACDAAAAFAAE1AAEiAw7RQnYOFlfmBmeCcMEKgKq0ALtZBUotELTRUMhreBHZh48QAP72AO
5wA7CoEN1PAMZzAGYaAFYUAIZlAGsLMIE/OCz2AO65AOFjdbMwABIXMrKJAElrYGOiADWBAN0qAG
wjYEiwAG0zMSxuExaoAGzmAN0bBjzzMH0dB05yEDp8YDWMAFRJA8PGADNFAEc2ABFtAFa/gDyNMD
a+ADcAANWVAB+GhyaRBzPoNQweUEOnNM0fBzbED+ZCjgBH1iDZbQBJKGdrQyISBjBSgAAAEwARMQ
AAFAPmKRSS6gcl8mB9Z1d4HwSrSQC8DgCrTwCx6kSyGkgbA4D/OADz95D/cQD+aADYUQZdm0Vkwg
BWEgBVIQBZfACYsQceRwCYm0COSwDh8nBzZAAQGYA2cQDSAFBjaQBWvgM17APWxyBWTwFkNjBWfg
BWTgBWMjB+iADhXAAzCjWNHwaihmA/YEB5WSa3pZIF1QBBbwAy/DBXFQHvbYBs4ABHYYDa81Byel
IJl3gjjAdT3gMWxAUDvTA1owiGFwDVGmCA8yAgLTTGJ1khJAkhHAABRQAGE1VnMSGMJQXda1LeL+
kgurIIG6xIob+Io/+ZP4YA/4oJxDWZTX8ILZcAZr5JRhQAUFlwiekDDZgA1q0FXCQw5mYX755Zk8
MD1CwANpQAdcdwZEQwZMEDQ+N2nAxQ6WYCpBoA3sYI9vIDV0QAeKwgNc4BM2F3MVIAEz9nwz5jw2
YAMPZVBocAVf8AUzAASmxmhwoBRNFmBdUUXb1AM7wGCVoAU6QCxoIAeK4AyV8A1l8QnXkAMFQAFk
cokAUJIk2QC16aIMAAEZNYBWMAV9kAmZAAiOsApG5QqpcDi3FELlsHjN0IH3oJzKuQ/4sA/6kA/5
cA/SVw2L4Aaa1QRQ6aVigA3nQA5RBmi944T+ZUEGP2AWtjVXuuIMa5EGNjADauBRZkAGSeADDVY/
PpdqnsVzMiMHVCEH0zcHO5EFcUCHL0MDFWADiEkExQYGEDVjQpAFokYDcxAHjepa2rcNcgANc8AO
60A72hBsM0AmztA+V3AFtsYFWwAN1gCiZOANoloGb4UFFECSFCABE0ABJgkBDLACRzCbAfgAKNA6
hEAIfTCKqCAZqeAKu/Bmt6R4iReU8KCcySml+6CtU0ql6oAO30AJTRAsTtClSQAjUuAJskBxYpow
GWkN0nAJY8AFZOAMSUY0YpNNV2BpSKAGbtGqcmBplbAWWcCFW+ADIdoTYNEqg8oOcwAGXdD+BnPA
AzzRRTYTB2hUdaaWBQeyA59CRucJM3CQBVzQWnQQYCeaDesgRT5jX1rzDNGwBTWwAz+TBVfQcWoQ
AUmgleTwCVbAFA0AtA1APhJQAMZKJrRyiZj4omFJBYeQCajgCanwCq0AC78EZ7PhDohnrUD5pFLa
D/vQD/zAD9pKpdqwCD+HBj0gBFJgcEkgBYtADWW3DtlQJ91wDeSQDhRXDZSABtsQDV7AKWMwBt8A
DUywA2OwBrr4K2QADUjQA1fwAzGxasvnA8kzBEWAFFIjB9MwB1bYj12AM4jqfd1HH+sYB17gHxWQ
BdMgDV+wqDYgKVwwBK0VDUwWDWCBlwH+5gU4cAM10JbQsAg9UAMwFz0lugUlsAXpcA7Y8An/ZAMO
UHQOoIkNIBYpgKNiNQEyOgEAmAO8cQg68gqPsRlZMhuycQ7uUA4d2LXa2g9h275i+w/yYA1jgARs
0QNdKgXEIgaWwA124g0LoXvk0A3dkA7fMA7Y8FhZQCoNVrthxwRs8AzfkA2KkGpksIVb0HStJQNY
l4Vh+ER9BAb5CGRPFLJ0AAYPWwGSMilF0B6mUgNBgGo8kDx1mIbbgAYzkAa7VQnOcDLsUAk+PGUo
UAPXtgYHpRIEIgMWQmkn0wmWIFxC0AATUAERIAFEe2U4KgGzKaNCS70hQwVP0AieoAn+mtAKzzob
6btv02qtUMq+7evG/gC/6hANbVA2ZjAGZaBi5BoGl+AN1vA62OAJalAI3kA61WDI47AIQOAFQni2
lJCljGQJ30AOZjumbJCNa+AMjoYhH9IdHQNF4uM8z2MzVWePDgszZzgBFuBE+4hjO4dQaCDDbIAz
bAAN2gANNvADzgANtTt9LWGr5HMDNtSeOyADXwANW8ADaIAO2fAFa3SRLZFR0it7EDABKxAmFICj
E7CrAJBfFmksnlAQmEDG4HDG8GAOHXic2doP/vDG/uDOYlsP37AIYYAET9mzDbFGXuAJZ/IJ2QA2
czGEQ1i70NAGPnAGSbgIiWAJz/D+DHipDWNaDdoAnWCRBkygy33IJmBxJg/CR1VnMyt8E8/rADZg
ATwgwuKjWEOwazjABPrUBvUEB5Rwn9BQAW0wDdEAByrREkGgKTVwV57JkFCxBrJFNFqQNRAgAZ/j
BRMVARRgA0QnATmAzd5BPg1AzRJAJlaNAiXgBIUgBnpwCJrwCuAQDsFwzvNwD4mX1miND/zQvu68
zu78zvygD95KF9QpB0ZgLJYETtiRbeQgwWOKH44MvGJnIZTAJpSgRFKUTWuwCGfABieHartVP07A
Mch0Cf0pB0VAATimylV3WlX3H0BAE923R0QwDewgB12QBEWxBWuwBscDDbusNDP+UANuEA3a8E9R
pA0UGQYyAG46A7gIewVr4HNaEATTkwMz8AVBMAENIAERMAMNgAJYQE2Z+JW0KQFC+wDkEwERAAE9
IAVJ4ARiwAnBRM60qNZAaQ/3YA/7ILZyLd9yLbZUug7WcJW8oWLrpwZPOavnsESn+QzWQLjXcJra
YA3OQMHOAFmLoA1eY+DocA3UEAZokKFXQMtEAxY/BBaqXQOtIjU80AVdYJ5FAFFdwDQzwwOROgQU
0AVqQYdBAGFucDQ1oANw4KAY7gw2Fwd4yQ7ooA7kxAZMcGSKEDRf8KYZJQM6kASWtQVxlQRjUwN9
9XwU4ABVbRKZOAFXTgEThQL+Qkc+EHAD+bMEYuAJ3OANsWAO7mAO8WCc9lAP+aCt8T3f8t2+U1oP
6vCded0QavIRnjAOgN0N/vyt38DQs4MOoupEDwJF0HCa25ANl0AG1uCW++EFFPAFDnK7sDJcXA4W
dJCYNLDZNdMfUccFThENYGCPP2Z1VrcDPnAFQ9AGlvJ1XMAGa5AGu9wF04CX3moNBeZWFbIFutzb
NoACW3DDW3AFMyCIbLAIYwC9Vv7cXK6r1c6rQkA+rTJR0kwBJVABOiAGi3Dmr2AO5vAOb16l+iC2
YhvXdQ7X/6APVHoPew5QTtzVmVMJhn0Ny2joY9BGnXB/c7Ag+YiXy/gMYzf+Bj3AP1xwBaV2lqcW
DW55CRViCTOw5RbwRERgAQ6gyl8wBF1gKizcNGmgV19Qc2toWkEgBD4gAz7QBi8DNElg8pSQ23DA
aNPnw6HmAzNQYGhAB9ugDdug8rynltmAlouAqmnQ1A4QURQAtORDPkKQUZr4fEKw3VFcm9GNAz7Q
BE2QCNRQDePQ5m4uD1X6D/BL5+7+7vCuD/egDrJgXCXa33uxCNagCJaADZUQwdAwaXdfCNRggzYQ
UdMnqmrABWnxYCjQhlkwfUjTIBeiBshUFlA/0n0EBJtrFpTysGfUBZVw0wIbDduwMjAnB8s+A9+9
oFrgA31L89FACYsgB3T+0LC8Vwk+gAJeUI65zQ7TsEVMAA3ZINHzswZJsAZe4JUThu1D2wDCJkgV
wKsOwKtcDLTSa6ozsFlioAjcIPbxEA/yYA9y/g9wzM5qL9du/A9srw7mUB1WQAaKUAmJIAbjsA7U
YA3ocAYz4NhmQDrkkIvwNAdAARB02NHZps2atmfR4MDpAiTaNHbaokFjZ21OGjnSKkkjYkMIDwt0
6MwZCSdaGjdAwIDpkibNnG3WoEXTto0IEC7O1lyZUYHGDxs+tmiRE2SLs0pZZICZpi2NtmzSckDQ
skZbzZpoyJCJli2bNXJpdPhYw0aGDAkNKKylMCHtWiFtJVSo4MBBA7f+ESZEcBBBAgokYcwsqkbO
XDp59vL949fYMT9/kSVP7tfvnz7M9+R9s2RGEbRn1SyNqzbGjJpqW8YkSfIM2zVL2LJtlKZtpLRp
udHRkcNOnbQhdNCp2z1tHbstWNCA1UZETscicuZcnPjlCxcuQcBwoUQpjdVvBbV1QdOmvJYkPrhs
cZP9ypgIWrJF++HAS20008ix4RFhBhtoKIGDkm3UUGORrrJBxxItdOACjSt0qCEtByRIq4C1Zlir
gQYksGuCD91qwIECHCiBBgdNq2acw+SpR599/vEHsslqlKwyfyzDTB550qnmGWcWsaSaRMxgg4xF
nnlGES7CSEKMb7D+eQ0bouTIKBuCtoGDHXYgQkcbOcDokg6IoGEDjkq0SONLOYoQwjmPiOCBBzi2
4SINL3SQgQttpmnjzjUG7NOlP7dow9AuwEiDCSaCkKGHNXaYIQIs0ohGi4PQoGDSK8oiEB1rnqkk
I2mkkQOamCwZdYYGGEChBrYgoKAGFNqawAIL7BrRQr4giACFG3CQIYkm2qCmsHTSeVGff5qVjEYb
c8zxMszykWedayhpow04knyGDDUMqmQMJNAz45xLyrBSCCmsVJDLLmiIw0t0ppkDjHvj4HKLH+SI
RpFovrHGSjmEEMJKOrJ4wwagFoFGDjXQuLON7thQZBt2omkjSEr+ymojCyzYSGOMI9WoQYYZdEBh
hi1AXaPjJBrAIQtKAoSEEjlGPQNiJIQI15o0ukyChrVkzQEHWWsQogIK7KLrjbvUkuGGGXroAQcd
skZCikSo+eawF50VO9obK6M2H2vX+UYLGWy4QgtFzOjBhzS+qeTARcwwI10n+j7jkk6kURAddOCw
QCUyBwJiCDCKIHObQ5mA6ipoapBjCOW+yAJMG4KoAYtoDIwmUliFGIoLNipeA40x2tDiChl4IOIL
NdpYQw0dSgCiVjZqU6NTK2vQISNt1IBYjk8ItgILgwlGh51S5XBiBQpWkMKKtXaAda2nHQCRAiGw
IDiHHLTWwQ3+aq4ZR9l89HnssRz7ubHZf/ap9h5r5SEHQqNC3qISMpzBGaG5Bjm+sYgwRCEMTEiC
GgrxCWxQwxro2MY04mADBwyBCNGgAxE+IgSR0OFPNGgDOg4IDfBlQQ5r+IIQvmCDw6UBKVtQQyXg
AIQRzUACEdCBgICQhTSgYU9oEMIOroCFNVRiEZRQwxi4gAUb7EAOA/yCF3a2jjM4QEnSqKEikkcw
KQhhBV6whCWspJ9sJK8M1FvB0eyyFglQQA658p4FKGDHgyVPCDrAWsqEtA1lhe19jamM/CJjmcug
zR73YOQ94kGOHfTAQOOSQg2fYSA1KOIbB1yEIsLwSUtQAwn+Z4DNM9JAJig+SA3PkAOZrEQ4NkDi
ZtWohiIoEQQrecElWBgCDTyHhVBVIg1ggAMYviCHLAjBBnUqpoC64IZKoAELzphGNKRhDUpYghKK
YIMckqPCaaxBDl7ojVm0oAUkgQt5yWtX3w5mqhoIZ51QgIILVqAWDFKAaQ5omgMqgKsKCIEJQujB
OIUgg58goQdaaEM10qEOF2GmWY9pFo5yxI997CMfi4RHI9VBDjJoIXSdKEMZznAGS2TDEopIkmio
cbdKiOEM1BASOaKCBh54AZ1nKEQZrDFB4kgDemMYAySq8Q1tVCMa47SAEOL1Ax9U4AuLgIM0RIUG
NEyHCKb+8kIElrmQbWiMDXd7Bm60UYlKUGIRi5AgNLwwzS95kAfReIYXehAGr1SCCWHIWSe+aKUV
HEwOlpDGOtaRPEx84hNT6acN+mkXC9gAhuJjghXCcAkhNAAFbFgDF87CBWiQAx2BlOhjMlrIi1Zr
kfd4xzrOYdNzGsgSl7ASGaRhDnRcQxvX+AaoKvG3tT7ja+sgBzXWUC41ROMMTrjEJSzBDsLNQXBj
mIFDr0HLcdAKBVj4gg5+0AUgUiIalDCDoUxCzGhIMwhZyEIX4gAHNvzADdCohkQyUsNO2pKwzZvg
HLyAS7tuVm3Z2MIWCJYRcrCDHKPyiuDOoTYrQOETo3L+QlzYQoQJNABXNjiwlcyolx6YgQszKIEN
uICab6yvHstyTLUY4xiN5kMz8YjHOsyBjUooAgc/UMMZ1EDbRZEhG+SYRnK18aVoRMMSiRgSOZJF
jjBoobxa0AY5LLHcg2gDegreBmG0QZptjEMLjcLCFa6AkzakLkCHckY0VkIJXboEJDz4ARCA8IM2
bCOs1ZBGNNC6REpQ4xnZKCITvACWM0hRGkxogA/mswg1kIFgnyisOixN3GzIYTjEbZeVPqEqLNTA
jhVygAUqYKU5yGEGTpBDc5GAgiRowQ036AEZkhAGRVRDfehYcfswo496yANG9auWjB1J43NMWBFb
IMP+qFptpSCINBvQWEMPfqCNdSw6DNEwg64PWIkc3IAJb5uDAS8RBrA8TxrksMY4tkEJd9f3G3LA
Qg+E4AP5uiHN4tVCDkA7jS8oSpdyQMNdSo3m7hAIGgECDX2pYYnkegEFPfCCGqKiBUugoxITmMAM
miDJgQbOK+vgkTruQdxOZOMcQ7ZSDuQw5ExjIVdNGxGHhZNqOUgJ4mFgA1vR8Mm5JcEMYljiOEa7
4hUbNjHts4c8GCmPGq8jHteQQyHwm8RF3O1Aa4CGlqHhAxvMoU9BQMIamtCaa7gBB4xqwhnWMIdn
zPYSlaCGTclhZXiPYRFh7q1ABzqEApunCzVzw3/+FNKFCtBtinOgQV0sQAMg3OQHNBhvGsba5mtc
oxJ8pfpyK0FXophqAgHYCw540ARNZ0MWKpc6ycnRCXLIQRYPJgcWUKCFUpFDGpJ9wwSYdureEI4c
siAHbArh3Mx/oxpqOEIJULCCG0RhCRRbUTrGMY5uGCYd8YB6PEwej+2nA11OOGdXqskEOeyszdII
0BokS5KJKBENN3DGgsZwNy38Dgtn+GQZnKAGq/qpbGAD7OiOLBmDHQgCMkiOKiowazKVVmoDOWkD
6aKqOZoTZSICC3CDLiAIHvgC17mKaqCEmyGHdQidSrAGcAPAHZgAAJgA8KkwS+iRc/CGc+iGbvD+
Bh2UkhVwgpTKhmc4GHaTgx44gyqygTnBAi7Is+trwhG8mfVJB3QYwTEogRu4gSVYguhrghsgBGqg
Bm7gBm/oBlnoBnN4h+2jMRsbh2cQgxwwA0uwhpjQFjRYuIWbIS5YnCwIgjmYiAHiuneRAy3oAWnA
Ah1YgiRQgRuABEsIjUUYgyZwAyRIgi0YLwIxngbiCS/4AjQAg4fIpSGAAzRIAzhYg5OAg1SLjudo
JYLwjXvZhjRwtwDpjvpjt7qzhhsIgh2ggFqBQRwQAidIAnQwrE7ohDD0BDPkBilYAWDZgfvIGZs6
AyRAPXYIky8IgjewAHjrjnGgBEJYAkK4mWT+SZZuhIREgIQmWAIqSILmOwIxQIRP4IRX8AZPaAVM
8IRY2AVzMIdu+AZqEIMwMI2XoQa1ogRr+IaaoQSdcAZRPBSXoKuZcIZSUYdsSAOiiApKqIZFqIIc
SIRLsAY1MIPcuYHPSLOwssi/6YGsOZhoSDUtK5UuAEEwUANLcYk5KIJUwzk6eAjieJ6rQCo9y5aM
1DVruIZnYIImmIEHkIAXhEE52AEIYIJq8IQzMEZP8ITD8IZLYAInuAG1aLWzQp5LaAJykoOmQIMl
cIOh7A5ISEtIaANIiMLrSzhKSAQ3gIQxOIIcODspcAIrOARM6INMCMxD+ARZwIZOWIQzgIT+tQoD
H0gCh9kmh6mGY4GGLViDRUiDiMmZuKsGaBiDOIgG6PECIcAUcqClamiEcFS+MVAERGRMS0iCKzAJ
NMAsLyCDILgCG6gALkBFaUi1lbAzNvCBHgi86chJ52EHMCACiOhJE6qJP2EDGiKca1AEJpABvMiw
ACgAOWACHaCaJJCCTzgH/ruEajgDvWICCviLg7myMHCnM0CDl6vG7qAlEjQqtWLMjGzCLjOqRUiE
PJClQkgEMbjCFViBKJgCBZ0CPKAC5MEGb7CExIy7RWANIVkDgKFMQbMEMmgCNKiEZ9CGa1Ky7hgD
AqmmRQmClFoEWcoDbmDMakgCLviBtar+AsIwAyQosEuQAi8AIM+hAC7oAmSaExu4CR5oAxmgAO14
u+mwADnIATkaCB6YgbeSBsIZjm8QIiCoJjZAKiK5ARSAgDhqCwrIAS+ghB/ImqLKgyU4gxxI0uSo
AQdAgV3EgWdzgiYIg7tZt4ighDiAy1kaSlnaz27sDiFZK8LQyGq4BCtAAhc4giqIAiNQgklVAheI
AueCQ/UZhyhZq9bsOiG5hrWCOEV4hvSpBm+IO0tYoi+pIIQ4k0RIxyVQAlkghEOQAy7QAi4wgyVo
BF+9hnPC0BqyBizgni4gApgAmTmJSUogIiYYxTgoAi04tRhgNYnAgiCABixwDi7wjS/+oQh2WAQ2
2IYyUoQfuIEJgACOc0ptStMbWEL5YgL0kAEh+AseIIMdKIAcuARTqSSIGwM5gIps6MZtWcsVqQZZ
Olhaupn69ASXqoZsICkkcIIyoAIrwAMjUIEocIIcQIK9NANqWJ/ruq4m4IJN+rJNkoJyqYRGPKpr
4AaaIsBqiAht+AavUARIeIQlaIE8wAQr8L9p3IISEIFHaASaSoK7MoOeirQ7CgIv4IGmmIMs4IIs
+IHebAMmGAMtAAN6K8sDiwZn8II+FAIvaIMrIAjCaQo4qAnCaNYfUBoKaIAAoABp6IQxQAEaoAEu
gIRZOwpOPAMXYIJpkAYvqIEzyIZ1a9hRMlgDMugbNbgGaUg4oxpB1CRB6rPPH0gd7PJHTi2uMPA/
JrgERBCDJECCKBjEINCBMditauCGqSyguqzZTaKGQpgKGSgr+nLdcXjZJZgBStAGSmAH0HiGROAG
esjCR/iEMyADrrSCJHjDbugEMdC7vQkIADs=

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
Content-Location: http://two.static.jamglue.com/images/feed-icon-12x12.gif?20062007

R0lGODlhDAAMAOYAAPSTPf3x5uOAPu6GOu6HOvabROuDOemOQuqPQuBpLOh7N+t+MuuAOfGMPOd2
MPKPPOV2NvCLO+6FM/WWPuNvLvGKNOB7PeNyNfOPNvWVO/GxivzAg/mrXfrl2Peyde2aY/eZP/q4
dvScT/q9g/ujRv7nzuVzLvu/g/uvX/jEmuOAU+yHPvnHmvS8mP3q2fOkZt9qMPmxav7z5u6mffu6
d+FuNPq3dvO2i/SSPfuuXv3v5fCdZfaraOuAMfi5gf748uh5MOl+N/jFmvGVTdteKvGPOeZ6M/CN
QN1jK/3w5veXOO+GNPaUN/7y5viYOPqbOfOONvjk1/udOv/58////wAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5
BAAAAAAALAAAAAAMAAwAAAeNgFECQQYEEQ8AExkIgiYfKxIVGExOT1IHRkBUVEksBZVSSjgGPS9C
LlRNOaFQDQQSKTxMIVNTHFBLAxEVm000KFMBRwsMDxgFJzJUNh5UNw4KAEwxGyRNAUs6HRQQE05T
VCM+VDstVAkXIE8lPyJDVBozVCowCKxLCw4UCUhEFlEHijQYwEABhAs1/gUCADs=

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
Content-Location: http://five.static.jamglue.com/images/play_button.gif?20062007

R0lGODlhFAAUAOZPAP/ag/7ISP7MVf7KTv/fk//24v6/Kv63Lv7FQf/57f7KXP/ZgP65M/7BMP67
OP/Vev7QZP61Kv/ASP7Saf/EUv/CTP7RZ//HW/68Iv/GV/69Pf65IP60Jf62KP7gmf/clf7ISf63
Lf/Sdv/Vdv6+Qv7PX/7dj//QcP66JP7biP/bjn9pNP/y1v6+K39oMX9nLn9mKn9kJP7KXv/MZ/7J
W39jIP62LP/x0/6+Kv62Kv/MZX9lJ//WeX9iHf/WeP/OXP7GQf7CNv/Maf69I/6wGf/gmP/QYv/f
lf7EO//Zf//Xev/Saf/Ub//VdAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5
BAEAAE8ALAAAAAAUABQAAAfsgE8FCiFEhoeIhiEKBU8sHRsYQ5OUlZMYGx03MigGJSkEoaKjKSUG
KDQ2OBBHra6vrxAtORwNJkW4ubq6Jg0cEUEeFghBxcbHCBYeQREHSBNI0UhOPdLWz0gHDEAgQN5A
TuE139/dDA4B6erh7DHq6g4aA/P07PY79AMaJAL9/vbsYPgTQELCj4MIAb5AiFBCBSMQI7JzEbGi
kQoUlmjc6GTFxo8bKWRgQrKkyZMlM1xowrKly5ctL8zwoaSmzZs4lfDQoWJEkp9AgwpNMkJFgRMP
FgBYyrTp0gUPTjRK8EGEkKtYs14V8SHBk0AAOw==

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://static.jamglue.com/images/default-tiny.gif

R0lGODlhFAAUANUAAPv7+8fHx8LCwvz8/ODg4NnZ2efn59HR0dDQ0Ovr69jY2MDAwNbW1svLy+Hh
4f7+/snJyeXl5c7Ozv39/d7e3u/v7/Dw8Pn5+eLi4tfX19TU1NLS0t/f38HBwe3t7d3d3fLy8u7u
7s3Nzdra2tvb2+zs7MXFxcbGxsTExPj4+Obm5vHx8dXV1fT09Pb29tPT09zc3PX19fPz88zMzOjo
6L+/v/r6+sPDw////wAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAAAALAAAAAAUABQAAAbJwMBt
SCwaiQGBbclsOpmCmw1HrVqvONvQRkvEPFisVrpBkBQPKgCQvo5tmVpNgLE4CgVKYmB9w+QSBAwQ
HQsBGhwXVW8DGBQqGnKSNQgObW9qBR2TkhkVVJg4Fgc1L6Q1Mwo1DQagW1QhCDUDKXIJODcQrVmv
OBWkDRByJxKru6EuDAtyDB+SLGC8UlURsjUgA8siDhOu02ocGyg3JjcHHwnd0lNVAwYEBQoEESU1
BN7sfS0yigAjK/jCCOSl5InBJgKEHFlYJEAQADs=

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
Content-Location: http://two.static.jamglue.com/images/pop.gif?20062007

R0lGODlhDQANAMQTAMjHvwAAAOvq5d3b0+De1trZ0Pb29Pr6+ePh2uPj39nXzfHw7eXk3ujn4tHQ
yNzb1e7s6N3c1tHPxv///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEA
ABMALAAAAAANAA0AAAVO4JQAZFkmIhAtbLtEwPgcdF0/JGTsPA+RgqBwKCA1GoGkMnAkMZ7LwJNB
QlgRyiuCROh2A94uaUAumwckR2HNZjtiAIliTldIYimTCRUCADs=

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
Content-Location: http://three.static.jamglue.com/images/transparent.png?20062007

iVBORw0KGgoAAAANSUhEUgAAAAIAAAACAQMAAABIeJ9nAAAAA1BMVEX///+nxBvIAAAAAXRSTlMA
QObYZgAAABNJREFUeF4NwAEBAAAAgJD+r5YGAAQAAXHhfPAAAAAASUVORK5CYII=

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
Content-Location: http://four.static.jamglue.com/images/busy.gif?20062007

R0lGODlhEAAQAKIHADZmvyRl1FZ5upOjxHWOv7G5yb2/w////yH/C05FVFNDQVBFMi4wAwEAAAAh
+QQFAAAHACwAAAAAEAAQAAADQ3i6B8CQORdXCG0eIeC92cZ11seMZBlxjGFUC0EcrgvLcv1W+GzD
B1lrxxgMILqi8bhIFgqHJbP5ej6j04gVClxcIwkAIfkEBQAABwAsAAAAABAAEAAAAz94uifCkDkX
FwBtHkLgvdnGddbHjGQZcUwQVMswHK4Ly3L9VvhswwcZcFEoDIlFI8xgOCSVESbTCY1Kj4ppJAEA
IfkEBQAABwAsAAAAABAADgAAAzt4ukfEkDkXlxBtnjHgvdnGddbHjGQZcQwAVEtRHK4Ly3L9Vvhs
wwcZIxCIGAwQIpFxPA6VzGayCHEqEgAh+QQFAAAHACwAAAAAEAAQAAADPni6N8OQORcXIW2eUuC9
2cZ11seMZBlxjCBUi2EcrgvLcv1W+GzDBxkDAAAOiUXjAVkMBIzEg9OplE6r1koCACH5BAUAAAcA
LAAAAAAOABAAAAM8eLpXxVA5F88YbR5j1r3ZxnXWx4xkGXEKQVSM68KtTNc3IwhRECy7HcPnUwR5
AMCB+DMik8piBKq8JSEJACH5BAUAAAcALAAAAAAQABAAAAM+eLpnxpA5F1cpbdZzb95cBzLeeAzD
GAQnmlbr6r5RzKIquxBEBAAQHo/x+zGEPYHgUAQek8qlcRNdmg7KSgIAIfkEBQAABwAsAAACABAA
DgAAAz54aqZ+IbzD2Ivx1eaw1Nz1KUUxTQBwlOWppClrurDauq/qDMMpCBMe7/H7PYQ9AuFQBB6T
yqURF13iHkpXAgAh+QQFAAAHACwAAAAAEAAQAAADPni6F8GQORfjfADURXPejKeBy7cYBikIB4pu
6+qmVcy+4MoURUQQEB6P8fvthIfB4FAEHpPKpXETXZIUykoCADs=

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://images.jamglue.com/8043-medium.gif

R0lGODlhSgBkAPcAABULChsODBUJBhsPEBYSDRwSDh4ZDR0UERwXEw0IBiISDSoWDSMVEiQaFCQc
GSoWEiscFCsdGiYWGDIdFDYdFysUDSsiFC0jGyglGTQjFTMjGzQqHDsjFTslGjwrGzorFTYtGCwm
ITQrIzstIjYqJzo0KD04M0QsG0wtG0YnF0UyHEwzHEw4GlUtGVM0HFQ6HVs1G1w7HVg1FUsmDkYt
IkMzI0s0I007JEY5KkU7NFM0IlQ7I1s9I1o+KlY6KVQ2K2M9HGc4GW02FWM9I2g7I3E2IUMfF11C
HUlDK0pFOF1CI1xDK1dFKFZJNlpSOmVDHWtEHGxJHWlDFXNEG3NKHHtMG3dGFXxSG3JKEmRDI2NF
KmpFI2xKJGxLK2dIKWRKNWtSKmdWOnNLInNNK3dJJHRSLHxTJHtULHpZKnhXNHVOMHphNn9gHUhJ
RllURlhaVlNPRmZZR2NcUnNYRmpjSmtmVXdmSXZqV3pyWn1xT3F0bFljX3yFeHuJiIZLGYpUG41b
G4hWGJRaF4tRDoNVJYJWK4RaK4xbJItcLIdYJYdcNJNdJYdQJZpkG51rHJhlGI5iFIpkKoplNpRi
JJRjLZpkI55rI5xsK5hnLJdoNpt1OZdxLKJsHKRoGKVyHKl1G7B4GKNtI6JsKaRzI6RzLKp4J6d4
Nq15MIdpRol3VZh4SZl6VY5uSIV5ZaR7RqN/UIA8GriFHKuDOLaGKbWJOLqTObGJKpWEVoiEa5eN
cKiFSKmIV7WKRrqVSLaSWKyUa72hUrikc5+heMSVLM+tL8KTGsOaScKaVcOdZ8imR8moV9S4Ws6z
V8enasipd9S6ZdS4d8+ydOHONNvHeNnFaeLQfdnAX42UjJejmJyuo66skKe4qbe7qqyzpqmch7rC
rLnIt7HHttS5hs22jsa8pNvKhtzJltnQksXLuMfUvNXQsuPMiePTieXWmOPLnObZpOfZte7jrung
nMrZxtPdy9Taxs3Tx9Xhzdvjzdvj09fk0ePl0+fq1+rp0O/q27rPwyH5BAAAAAAALAAAAABKAGQA
AAj+AOXEcROHTsE5dOzUscPQzh2GD1OhsoMqlcVUrFZpTKWxY0dVIEO+UuVKkyZdKGWhXKlLlSlN
qjSxkoQK1Zo5aUZ46EBDxQodLnT44LFkyJAnWZRoyQIkS5YuYtRIJVOIEiJFVxdRWnToUKKuiQIt
+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
IsDADb7QBC0sYQdt8wAIAgIAOw==

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://images.jamglue.com/2799-medium.gif

R0lGODlhWgBkAPcAAAIABAMCCgsBAwsDCgULCwMIEwQZGRYHBxsWCRMQEgMaJg0ZLwMmHBMsEgQn
JgQpNQU1KQU4NxYyMSgECSMZDCcaFTcGCTUOEykmCyomFjUqFzc2GC8zDzk5JDEwLi4YIQM6RA81
RiI9UAVHOQRWOxJIMjlFGDVKEzVOLCdeMQRIRwdKVQdXRwVVVhVUTQ5ZYwhlWRJpTwhpZRJxcS5U
TS1vUyt2ci9YaEkUD0ovFE0yKmo4L2AuHkVJGkdWG1JVF0ZIJkhINklWKEpZNlRaN1RULFVmF0lk
OFZmOlJtLWZ0HGN5N2p0KXRKI1FWSUtmRVdpRlp0SVt0VlFtU1N2aWtVSWZ3SWd6V2twUG14ZVBY
aWk+QBh5iBt6lAxyhip3kCh+o094kTKGcRuCdXSIM3WEHE+QdWuFSWyDWHWJSXWIWHuUWHaTTm2D
ZXWJZ3uTaXuTdm6OdGKPWxiEkyeGmDGMkjaMpTmWqDeatSmSqzSjtBqRqzWbyTmkxz6m41CWj0Wa
qUmZtVakkkaluVarsGqWjmmaq2qrlnKyrkmdxEmmyUmo1laqylas1lm12FS0y1e06mW22G62y2e7
52m893O872qeyXLE03jF+XDE6n7FtolTLpRqNKl1LpZYF49vW4I8EIuTN7WRNaKmPIqVUoWaaIaa
do6PcImiaYukd5SoeZiudbWSSauxb6qfW8abNMWWUc2uU8+3bN+zaNXIcOXNdN/Sa4uZiIynhpWr
h5qzipq2lZKrlYm4sqO3iaW6lq6xkKq7pZiXlIq3zInHupHKtanDmrfKmKrGpqzLtrPLqbTLtrnU
t7XTrJPCmojJyYnK1pjW2ZLP0YjK5oTL+o3T55jX6JfQ7Z3i66bb2LnWx7PU0aTb6aXY8qjk3Ljq
0qnl6qnm87Xq6LTs9rny67r0+K7z95vh19K4ks3KkMjVs9Hkt+jUkfDmk/Xusenersna0M3q0cT7
+8v9/MX499P9/Nv9/db79c7w5vv4yvP00eL9/Pv85en46sHc4Ip9iCH5BAAAAAAALAAAAABaAGQA
AAj+ACdMOLAByQ8OHHpcObUECSlhvHYhC4as4jFkyphpjKdNG7xv/kL6wxcvHj54+Pj1g/funbqX
69YdO6auWbNkyc55ZNZxmbpgv4CpOmWqqCk1atKoceOm6JszS5YkmXBhQhFSaYwAQXJLFRYsqHgB
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

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://images.jamglue.com/3662-medium.gif

R0lGODlhZABLAPcAAAQBCwMABQcFGBYMFBwRFwYIKAcKNwsSOhUTLCwUCioXFTMWAzYZBDocBTYa
CzUcFDgdFCEPDiQeLDoiFzwhDTAoLQcLRwcMVgsVSAoXWRQbSRIbVhEPQQYNZgsbYwobawgWaAoY
dxMaZxMadwQOdRUkWg0iWQwkag0mZwwkeBUpZxYoeRk1dxcxbiorUic2eScvazJHeUMkDUcpFFI1
HU4yGlU7JEs4MFpCKlhJN09HMmNMNWpTO2VNMVRKSmpZSXNdRmpdUndjS3xsW3hnVXFmVnZua1BV
ckI5SA0chBMehQ0nhxYpiBgrlBk1hxo2lw4tjxw4phosoyc5iCQ4mCYxkCU7pig8sx5FlR1Fph5L
sCdGiSZGmC1UljZJmTRZmDRKiihHqSpItitUpytVuTVLpTJLuDdVqjZXuDdinDdnqTlouTFosyxM
xCxWxzNMxjZZyDZZ0jllxzpp1T10yjt11i1iyjt14ElYjEVatUNVq0RpqUZmukl2uFNytGtzjmd5
q1lpk0Zpx0Rs1El0ykh41lR8zEly2FaDunmDmHKIsUqH2VaIx1SI11mW2EyHy0yJ41WL5lqW6VeW
8Fmi6WiP0Gaa6Wab8Gij6mil9XKo72uh1j+A14JsVoZzXIhyT4R0Y4t5ZYx8a4h3ZId8dJJ+aYd1
aIB/gJaEWJWDa5SEc5yNe5iJdpOHeaOSe6WSb7anccGzd5eNhZySh5uVk4qHjI2XrKOVg6uci6eZ
iKeclLGejK2ik6yjm7Wki7OklLWqm7utnLWomLyxnqygjaqnpretpL2yo720q7y2q7i1taurtZyi
rpGlyq22xYWdyLvJ3cO0mcK1pMK2qsW6q8q9rcW4p8q+ssS8s8zBrszDtMzEusrFutLFtdHGutTL
vNrNvdPIt9vRvcvJxdXNwtnOwtLOy9zTxN3WytnUydrY1cvQ1+PbzOLWx+Td0ufd1Obh0+rj1Ovl
2e7p3Obj3PLq3fDn2Ofhz+np5PLt4/Tz7Pfz6P3+/Pn58+zx7tfd4SH5BAAAAAAALAAAAABkAEsA
AAj+APXtyzcvnj124sSxi3cvnkN44qxFC3fP3ryCCMXFm5dPXz546NShE5fsmDBcuXwBG2aNGrVs
2biVe8fuXb1les7EsHavHbt799i1EweuG7iE4tq9i/funrhfQXT8aJVrV6lSpjpp5dEDBw4bAvPF
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

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://images.jamglue.com/5331-medium.gif

R0lGODlhZABkAPcAABUDBRUGGg0EEAsLPgcGOBcJJhMNMSsOFCcLKCgVKDkUKjAUMjcoMTYjFgwN
QgUKQg0RRQ0TSw0XTA4XUhISRRIVTBocTBYYSxQcVBodUhQaVREPQxYiWhsiVBokWx0qXBUhVhwj
TBonYSkdSCsmSiQrWystXCUnVS0yWjYoRjUtVzMyXDk1VzwzRzExYk0ZGkkZKE8bK0wmHFgoGlYw
F0omKUkpNlUoJ1UpNFk1KVg3N0g0NWYrGmYrJ2c3KGc5NXY5Knc7NmsrNGkSIEw1TW05Sl1DNWpF
N3ZIOHpTPG5HLXVlPlVGTWdJRWtUSXdJR3dVSXpbVGxTV2lXb3VrUHZoclZSYHNvh25fg3mDTJMb
LIg3LIg4NZgpKp4sNJspNpk3N40sLKscM7IeNqUaL6QlM6skNKsqNq0sOqYpOKQzO6gzO7IjNrQl
OrMqOrsmOrwqPLYqNrAvOIcYHZM7RKk5Q7U3RLQrQoZIOpdIOIxSOqpMPKxSPbJTO7ZZO7FNPaZj
PodJRYZYRZlIRJlYR5dZVYtWVotkS4hlWZdoV5duUpdpZY5ybadHRqdZR6haVrVRTKllS6hnV6R1
W7tjRrVsVrh1WqdoZKl5ZrdpZ7Z3Zq94c5tYZtMeO8QlPMQpPcwlPMwpPcglN9QkPdQqPtgmPdkp
P8QsQcwrQcomQNQrQdkmQdcpQcsyRuMpSMFiP9V6U8lvTsl3cMFWU4h3j7V6htJ9gpCNWJSZapWM
cKiHebiGa7iIda+Rb6+neK+FWtqDWsOAXceGacaHeNWJedeWec+Tccy6etWveeWKXeqRXuqXZ/Kb
beyTcOinc+qpdcnDfZaKjrmWia6TjqmYqqy0hba4h7SskbaqrZuKpbbCkMiYh8iclNeYhtOPicim
mdilitmnls60j9erpNi1p82zqOiXjOeoieaqlei2m/Owjui4pva4qu+yrvGTodi5xc3IidLIitXK
l9HQltfKrejDmenHp/DRsuvmt9XKy+7Ry/Xm0/v26fv7+PPt67GuwSH5BAAAAAAALAAAAABkAGQA
AAj+AK1MmYLlyhVq/volvPfsmbqH9Z7Vm3hvH7+L+/Tle6ePY8eO+RLy69dvH7579+qlRIkS30WS
+tyxU+fOnLlm7mR586aPZL98/4Jmy0aLFpaC1Hz608a0qbZqVqIepRUtYT9+6R6qcyhRq719YPXR
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

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://quantserve.com/pixel/p-e15W06CICRfzM.gif

R0lGODlhAQABAIEAAQAAAAAAAAAAAAAAACH5BAkAAAAALAAAAAABAAEAAQICRAEAOw==

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://four.static.jamglue.com/stylesheets/general.css?20062007

BODY {
	FONT-SIZE: 12px; Z-INDEX: 1; MARGIN: 4px; FONT-FAMILY: Tahoma, Verdana, =
Helvetica, Arial, sans-serif; POSITION: relative; BACKGROUND-COLOR: #eee
}
INPUT {
	VERTICAL-ALIGN: middle
}
A {
	COLOR: #1e1e5c
}
H1 {
	FONT-WEIGHT: bold; FONT-SIZE: 14px; COLOR: #b80100
}
.h1 {
	FONT-WEIGHT: bold; FONT-SIZE: 11px; COLOR: #b80100
}
#header {
	min-width: 760px
}
#logo {
	HEIGHT: 54px
}
#greetingBox {
	PADDING-RIGHT: 4px; PADDING-LEFT: 4px; FONT-SIZE: 11px; PADDING-BOTTOM: =
4px; COLOR: #000; PADDING-TOP: 4px
}
#greetingBox FORM {
	DISPLAY: inline
}
#searchBox {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-SIZE: 12px; =
PADDING-BOTTOM: 4px; COLOR: #1e1e5c; PADDING-TOP: 4px; WHITE-SPACE: =
nowrap
}
#mainMenuContainer {
	WIDTH: 100%; BORDER-BOTTOM: #1e1e5c 2px solid; HEIGHT: 34px; min-width: =
760px
}
#mainNavContainer {
	BACKGROUND: url(/images/nav/mainNav_bg_inactive.gif) #666666 repeat-x =
left bottom
}
TABLE#mainNav {
	BORDER-RIGHT: #525152 1px solid; FONT-WEIGHT: bold; FONT-SIZE: 12px; =
BACKGROUND: url(/images/nav/mainNav_bg_inactive.gif) #666666 repeat-x =
left bottom; BORDER-LEFT: #000 1px solid; COLOR: #fff
}
TABLE#mainNav TD {
	WIDTH: 20%
}
TABLE#mainNav A {
	COLOR: #fff; TEXT-DECORATION: none
}
TABLE#mainNav A:hover {
	COLOR: #fff; TEXT-DECORATION: underline
}
TABLE#mainNav TD.active {
	BORDER-RIGHT: #212021 1px solid; BACKGROUND: =
url(/images/nav/mainNav_bg_active.gif) no-repeat center bottom; =
BORDER-LEFT: #525152 1px solid; COLOR: #1e1e5c
}
TABLE#mainNav TD.active A {
	COLOR: #ffe87d
}
TABLE#mainNav TD.inactive {
	BORDER-RIGHT: #212021 1px solid; BORDER-LEFT: #525152 1px solid
}
TABLE#mainNav TD.inactive:hover {
	COLOR: #1e1e5c
}
#subNavContainer {
	FONT-SIZE: 11px; BACKGROUND: url(/images/nav/subNav_bg.gif) repeat-x =
left top; PADDING-BOTTOM: 4px; WIDTH: 100%; COLOR: #000; LINE-HEIGHT: =
11px; PADDING-TOP: 4px
}
#breadCrumbContainer {
	PADDING-RIGHT: 4px; PADDING-LEFT: 4px; FONT-SIZE: 11px; PADDING-BOTTOM: =
4px; WIDTH: 99%; LINE-HEIGHT: 11px; PADDING-TOP: 4px; BACKGROUND-COLOR: =
#eee
}
DIV.avatar IMG {
	VERTICAL-ALIGN: middle
}
.success {
	BORDER-RIGHT: green 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: green =
1px solid; PADDING-LEFT: 2px; FONT-WEIGHT: bold; PADDING-BOTTOM: 2px; =
BORDER-LEFT: green 1px solid; COLOR: black; PADDING-TOP: 2px; =
BORDER-BOTTOM: green 1px solid; BACKGROUND-COLOR: #99ff99; TEXT-ALIGN: =
center
}
.warning {
	BORDER-RIGHT: yellow 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: yellow =
1px solid; PADDING-LEFT: 2px; FONT-WEIGHT: bold; PADDING-BOTTOM: 2px; =
BORDER-LEFT: yellow 1px solid; COLOR: black; PADDING-TOP: 2px; =
BORDER-BOTTOM: yellow 1px solid; BACKGROUND-COLOR: #ffff99; TEXT-ALIGN: =
center
}
.notice {
	BORDER-RIGHT: red 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: red 1px =
solid; PADDING-LEFT: 2px; FONT-WEIGHT: bold; PADDING-BOTTOM: 2px; =
BORDER-LEFT: red 1px solid; COLOR: black; PADDING-TOP: 2px; =
BORDER-BOTTOM: red 1px solid; BACKGROUND-COLOR: #ff9999; TEXT-ALIGN: =
center
}
#main {
	PADDING-BOTTOM: 10px; WIDTH: 100%; PADDING-TOP: 10px; BACKGROUND-COLOR: =
#fff
}
#content {
	MIN-HEIGHT: 625px; MARGIN-LEFT: auto; WIDTH: 760px; MARGIN-RIGHT: auto; =
POSITION: relative
}
DIV#skyscraper {
	RIGHT: -150px; POSITION: absolute; TOP: 48px
}
DIV#skyscraper_homepage {
	RIGHT: -150px; POSITION: absolute; TOP: 5px
}
#footer {
	PADDING-RIGHT: 4px; BORDER-TOP: #212021 2px solid; PADDING-LEFT: 4px; =
FONT-SIZE: 10px; PADDING-BOTTOM: 4px; COLOR: #666956; PADDING-TOP: 4px; =
HEIGHT: 24px
}
A.addInvite {
	BORDER-RIGHT: #000 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: #febc20 =
1px solid; PADDING-LEFT: 4px; FONT-SIZE: 10px; PADDING-BOTTOM: 4px; =
TEXT-TRANSFORM: uppercase; BORDER-LEFT: #febc20 1px solid; COLOR: =
#cf3310; PADDING-TOP: 4px; BORDER-BOTTOM: #000 1px solid; =
BACKGROUND-COLOR: #fd8b04
}
A.addInvite:hover {
	COLOR: #fff; BACKGROUND-COLOR: #fd8b04
}
A.showAll {
	PADDING-RIGHT: 2px; PADDING-LEFT: 2px; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 2px; PADDING-TOP: 2px
}
IMG.rss {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; FLOAT: right; =
BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px
}
IMG.noborder {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: =
0px; BORDER-RIGHT-WIDTH: 0px
}
.tiny {
	FONT-SIZE: 10px
}
.small {
	FONT-SIZE: 12px
}
.large {
	FONT-SIZE: 16px
}
.huge {
	FONT-SIZE: 20px
}
.gray {
	COLOR: #999999
}
.songName {
	FONT-WEIGHT: bold
}
DIV#mixContents LI {
	PADDING-LEFT: 24px
}
DIV.AddComponents {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; =
PADDING-TOP: 10px
}
DIV.songComponentLink {
	PADDING-LEFT: 25px
}
DIV.expandCollapseSign {
	FLOAT: left
}
DIV.songComponentDeleteLink {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FLOAT: right; PADDING-BOTTOM: =
10px; PADDING-TOP: 10px
}
DIV.whyExplanationBox {
	BORDER-RIGHT: #666956 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: =
#666956 1px solid; PADDING-LEFT: 2px; FONT-SIZE: 12px; PADDING-BOTTOM: =
2px; MARGIN: 0px; BORDER-LEFT: #666956 1px solid; PADDING-TOP: 2px; =
BORDER-BOTTOM: #666956 1px solid; BACKGROUND-COLOR: #dedede; TEXT-ALIGN: =
left
}
DIV.explainBox {
	BORDER-RIGHT: #666956 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: =
#666956 1px solid; PADDING-LEFT: 2px; FONT-SIZE: 10px; PADDING-BOTTOM: =
2px; MARGIN: 0px; BORDER-LEFT: #666956 1px solid; WIDTH: 300px; =
PADDING-TOP: 2px; BORDER-BOTTOM: #666956 1px solid; BACKGROUND-COLOR: =
#dedede; TEXT-ALIGN: left
}
DIV.smallExplainBox {
	BORDER-RIGHT: #666956 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: =
#666956 1px solid; PADDING-LEFT: 2px; FONT-SIZE: 10px; PADDING-BOTTOM: =
2px; MARGIN: 0px; BORDER-LEFT: #666956 1px solid; PADDING-TOP: 2px; =
BORDER-BOTTOM: #666956 1px solid; BACKGROUND-COLOR: #dedede; TEXT-ALIGN: =
left
}
DIV.draftNotice {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-WEIGHT: normal; =
FONT-SIZE: 14px; PADDING-BOTTOM: 10px; PADDING-TOP: 0px
}
INPUT.embed {
	PADDING-RIGHT: 2px; PADDING-LEFT: 2px; FONT-SIZE: 9px; PADDING-BOTTOM: =
2px; WIDTH: 300px; PADDING-TOP: 2px
}
DIV#embedBox {
	BORDER-RIGHT: #cacbc4 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: =
#cacbc4 1px solid; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; =
BORDER-LEFT: #cacbc4 1px solid; PADDING-TOP: 10px; BORDER-BOTTOM: =
#cacbc4 1px solid; BACKGROUND-COLOR: #eeeeee
}
DIV.embedCode {
	MARGIN-BOTTOM: 5px
}
DIV#embedPreview {
	PADDING-RIGHT: 10px; MARGIN-TOP: 5px; PADDING-LEFT: 10px; =
PADDING-BOTTOM: 10px; PADDING-TOP: 10px; BACKGROUND-COLOR: white
}
SPAN.byLine {
	FONT-SIZE: 10px; MARGIN-LEFT: 115px
}
TABLE#signIn {
	BACKGROUND-COLOR: #ffde90
}
TABLE#signIn TD.header {
	FONT-WEIGHT: bold; BACKGROUND: url(/images/sign-in_bg.gif) #cf3310 =
repeat-x left top; COLOR: #9c270d
}
TABLE#signUp {
	BACKGROUND-COLOR: #ffde90
}
TABLE#signUp TD.header {
	FONT-WEIGHT: bold; BACKGROUND: url(/images/sign-in_bg.gif) #cf3310 =
repeat-x left top; COLOR: #9c270d
}
TABLE#advertisement {
	BORDER-RIGHT: #ccc 1px solid; BORDER-TOP: #ccc 1px solid; BORDER-LEFT: =
#ccc 1px solid; BORDER-BOTTOM: #ccc 1px solid
}
TABLE#advertisement TD.header {
	FONT-SIZE: 10px; TEXT-TRANSFORM: uppercase; COLOR: #999; =
LETTER-SPACING: 4px
}
UL {
	PADDING-LEFT: 0px; MARGIN-LEFT: 0px
}
UL LI {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 5px; BORDER-BOTTOM: #cacbc4 1px dotted; LIST-STYLE-TYPE: =
none
}
UL LI:unknown {
	BORDER-TOP: #cacbc4 1px dotted
}
UNKNOWN {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: =
0px; BORDER-RIGHT-WIDTH: 0px
}
OL.dashed {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; LIST-STYLE-POSITION: inside; =
PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
OL.dashed LI:unknown {
	BORDER-TOP: #cacbc4 1px dotted
}
OL LI {
	PADDING-RIGHT: 4px; PADDING-LEFT: 4px; PADDING-BOTTOM: 4px; =
PADDING-TOP: 4px
}
OL.dashed LI {
	BORDER-BOTTOM: #cacbc4 1px dotted
}
UL.noborder LI {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: =
0px; BORDER-RIGHT-WIDTH: 0px
}
UL.plain {
	PADDING-LEFT: 15px
}
UL.plain LI {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: =
0px; LIST-STYLE-TYPE: disc; BORDER-RIGHT-WIDTH: 0px
}
OL.plain {
	PADDING-LEFT: 15px
}
OL.plain LI {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: =
0px; LIST-STYLE-TYPE: decimal; BORDER-RIGHT-WIDTH: 0px
}
TABLE#newPeople {
=09
}
TABLE#newGroups {
=09
}
#tagCloud {
	BORDER-RIGHT: #bce5f9 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: =
#bce5f9 1px solid; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; MARGIN: 0px =
20px; BORDER-LEFT: #bce5f9 1px solid; PADDING-TOP: 10px; BORDER-BOTTOM: =
#bce5f9 1px solid; BACKGROUND-COLOR: #def2fc; TEXT-ALIGN: justify
}
#tagCloud A {
	LINE-HEIGHT: 2em
}
SELECT.sort_type {
	FONT-SIZE: 9px
}
#nameContainer {
	BORDER-BOTTOM: #292b1d 2px solid; BACKGROUND-COLOR: #fff
}
.description {
	FONT-SIZE: 11px; FONT-STYLE: oblique
}
#userImage {
=09
}
#bioBox {
	BORDER-RIGHT: #212021 1px solid; BORDER-TOP: #212021 1px solid; =
MARGIN-TOP: 5px; FONT-SIZE: 11px; OVERFLOW: auto; BORDER-LEFT: #212021 =
1px solid; WIDTH: 220px; BORDER-BOTTOM: #212021 1px solid; =
BACKGROUND-COLOR: #fff
}
#downloadBox {
	BORDER-RIGHT: #212021 1px solid; BORDER-TOP: #212021 1px solid; =
MARGIN-TOP: 5px; FONT-SIZE: 11px; OVERFLOW: auto; BORDER-LEFT: #212021 =
1px solid; WIDTH: 220px; BORDER-BOTTOM: #212021 1px solid; =
BACKGROUND-COLOR: #fff
}
#gearBox {
	BORDER-RIGHT: #212021 1px solid; BORDER-TOP: #212021 1px solid; =
MARGIN-TOP: 5px; FONT-SIZE: 11px; OVERFLOW: auto; BORDER-LEFT: #212021 =
1px solid; WIDTH: 220px; BORDER-BOTTOM: #212021 1px solid; =
BACKGROUND-COLOR: #fff
}
#bioBox THEAD {
	FONT-WEIGHT: bold; FONT-SIZE: 14px; COLOR: #fff; BACKGROUND-COLOR: =
#212021; TEXT-ALIGN: left
}
#downloadBox THEAD {
	FONT-WEIGHT: bold; FONT-SIZE: 14px; COLOR: #fff; BACKGROUND-COLOR: =
#212021; TEXT-ALIGN: left
}
#gearBox THEAD {
	FONT-WEIGHT: bold; FONT-SIZE: 14px; COLOR: #fff; BACKGROUND-COLOR: =
#212021; TEXT-ALIGN: left
}
#bioBox THEAD A:visited {
	COLOR: #aaaaaa
}
#downloadBox THEAD A:visited {
	COLOR: #aaaaaa
}
#gearBox THEAD A:visited {
	COLOR: #aaaaaa
}
#bioBox THEAD A:link {
	COLOR: #dddddd
}
#downloadBox THEAD A:link {
	COLOR: #dddddd
}
#gearBox THEAD A:link {
	COLOR: #dddddd
}
#userImageContainer {
=09
}
#morePhotosContainer {
	Z-INDEX: 5; FLOAT: right; WIDTH: 153px; POSITION: absolute; HEIGHT: =
202px
}
#userActionsBar {
	FONT-WEIGHT: normal; FONT-SIZE: 12px; COLOR: #999
}
#tagBox {
	BORDER-RIGHT: #bce5f9 1px solid; BORDER-TOP: #bce5f9 1px solid; =
MARGIN-TOP: 5px; FONT-SIZE: 11px; BORDER-LEFT: #bce5f9 1px solid; =
BORDER-BOTTOM: #bce5f9 1px solid; BACKGROUND-COLOR: #def2fc
}
#tagBox THEAD {
	FONT-WEIGHT: bold; FONT-SIZE: 14px; COLOR: #1e1e5c; BACKGROUND-COLOR: =
#bce5f9
}
#userTagCloud {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; =
LINE-HEIGHT: 2em; PADDING-TOP: 10px
}
#remixer {
	OVERFLOW: hidden; HEIGHT: 600px
}
IFRAME.upload {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: =
0px; WIDTH: 100%; HEIGHT: 160px; BORDER-RIGHT-WIDTH: 0px
}
DIV.uploadStatus {
	BORDER-RIGHT: gray 1px solid; PADDING-RIGHT: 15px; BORDER-TOP: gray 1px =
solid; PADDING-LEFT: 15px; PADDING-BOTTOM: 15px; MARGIN: 3px; =
BORDER-LEFT: gray 1px solid; PADDING-TOP: 15px; BORDER-BOTTOM: gray 1px =
solid
}
IFRAME.hidden {
	VISIBILITY: hidden; WIDTH: 0px; HEIGHT: 0px
}
.homeElement {
	BORDER-RIGHT: #cacbc4 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: =
#cacbc4 1px solid; PADDING-LEFT: 5px; BACKGROUND: =
url(/images/homeElement_bg.gif) #fff repeat-x left top; PADDING-BOTTOM: =
10px; MARGIN: 5px 5px 10px; BORDER-LEFT: #cacbc4 1px solid; PADDING-TOP: =
0px; BORDER-BOTTOM: #cacbc4 1px solid
}
.homeWelcomeElement {
	BORDER-RIGHT: #cacbc4 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: =
#cacbc4 1px solid; PADDING-LEFT: 0px; BACKGROUND: =
url(/images/welcome_graphic_bg.jpg) no-repeat left top; PADDING-BOTTOM: =
15px; MARGIN: 5px 5px 10px; BORDER-LEFT: #cacbc4 1px solid; PADDING-TOP: =
0px; BORDER-BOTTOM: #cacbc4 1px solid
}
.homePromoElement {
	BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; =
BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: 0px; =
MARGIN: 5px 5px 10px; PADDING-TOP: 0px; HEIGHT: 230px; =
BORDER-RIGHT-WIDTH: 0px
}
.homeVdayElement {
	BORDER-RIGHT: #f16fc9 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: =
#f16fc9 1px solid; PADDING-LEFT: 0px; BACKGROUND: =
url(/images/home_vday_bg.jpg) #f16fc9 no-repeat left top; =
PADDING-BOTTOM: 0px; MARGIN: 5px 5px 10px; BORDER-LEFT: #f16fc9 1px =
solid; PADDING-TOP: 0px; BORDER-BOTTOM: #f16fc9 1px solid; HEIGHT: 230px
}
.homeVdayElement TABLE {
	LEFT: 33px; POSITION: relative; TOP: 148px
}
.homeVdayElement TABLE .count {
	FONT-WEIGHT: bold; FONT-SIZE: x-large; COLOR: #220016
}
.homeVdayElement TABLE .vs {
	FONT-SIZE: medium; COLOR: #220016
}
.homeContestElement {
	BORDER-RIGHT: #000 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: #000 1px =
solid; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 5px 5px 10px; =
BORDER-LEFT: #000 1px solid; PADDING-TOP: 0px; BORDER-BOTTOM: #000 1px =
solid; HEIGHT: 230px; BACKGROUND-COLOR: #000
}
DIV.seeMore {
	MARGIN-TOP: 10px
}
.heading {
	FONT-WEIGHT: bold; FONT-SIZE: 20px; COLOR: #b80100
}
.profileLink {
	PADDING-RIGHT: 4px; PADDING-LEFT: 4px; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 4px; PADDING-TOP: 4px; BACKGROUND-COLOR: #ff0
}
.handCursor {
	CURSOR: hand
}
#inlineSearchBox {
	BORDER-RIGHT: rgb(76,130,201) 1px solid; PADDING-RIGHT: 6px; =
BORDER-TOP: rgb(76,130,201) 1px solid; PADDING-LEFT: 6px; =
PADDING-BOTTOM: 6px; BORDER-LEFT: rgb(76,130,201) 1px solid; =
PADDING-TOP: 6px; BORDER-BOTTOM: rgb(76,130,201) 1px solid; =
BACKGROUND-COLOR: #e2eeff
}
.pop {
	POSITION: relative
}
.popcontent {
	BORDER-RIGHT: black 1px inset; PADDING-RIGHT: 4px; BORDER-TOP: black =
1px inset; PADDING-LEFT: 4px; Z-INDEX: 900; LEFT: 0px; PADDING-BOTTOM: =
4px; MARGIN: 0px; BORDER-LEFT: black 1px inset; WIDTH: 200px; =
TEXT-INDENT: 0px; PADDING-TOP: 4px; BORDER-BOTTOM: black 1px inset; =
POSITION: absolute; BACKGROUND-COLOR: white; TEXT-ALIGN: left
}
.poptitle {
	PADDING-RIGHT: 2px; PADDING-LEFT: 2px; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 2px; PADDING-TOP: 2px; BACKGROUND-COLOR: #dedede
}
.popclose {
	RIGHT: 5px; POSITION: absolute; TOP: 2px
}
.popclose A {
	FONT-WEIGHT: bold; TEXT-DECORATION: none
}
#welcomeGraphic {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; FONT-SIZE: 14px; PADDING-BOTTOM: =
20px; PADDING-TOP: 10px; TEXT-ALIGN: left
}
#startMixing {
	FLOAT: left; MARGIN-LEFT: 25px
}
#tourButton {
	FLOAT: left; MARGIN-LEFT: 10px
}
#welcomeGraphic .region {
	FLOAT: left; WIDTH: 185px; POSITION: relative; HEIGHT: 100px
}
#welcomeGraphic .region .icon {
	LEFT: 0px; POSITION: absolute; TOP: 0px
}
#welcomeGraphic .region .slogan {
	LEFT: 62px; POSITION: absolute
}
#welcomeGraphic .region .text {
	PADDING-RIGHT: 0px; PADDING-LEFT: 4px; FONT-SIZE: 10px; LEFT: 62px; =
PADDING-BOTTOM: 0px; COLOR: #666; LINE-HEIGHT: 150%; PADDING-TOP: 4px; =
FONT-FAMILY: Tahoma, Verdana, Arial, Helvetica, san-serif; POSITION: =
absolute; TOP: 45px; TEXT-ALIGN: left
}
.draft {
	COLOR: #36814e
}
#searchBox {
	COLOR: black
}
#blogEntry {
	MARGIN-LEFT: 10px
}
#blogLink {
	FLOAT: right
}
UL.userFullDisplayList LI {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: =
0px; BORDER-RIGHT-WIDTH: 0px
}
.userFullDisplay {
	BORDER-RIGHT: #999 1px solid; BORDER-TOP: #999 1px solid; FLOAT: left; =
MARGIN-BOTTOM: 10px; MARGIN-LEFT: 5px; BORDER-LEFT: #999 1px solid; =
WIDTH: 365px; MARGIN-RIGHT: 5px; BORDER-BOTTOM: #999 1px solid; HEIGHT: =
230px
}
.userFullDisplay .userInfo {
	FLOAT: left; WIDTH: 120px; PADDING-TOP: 10px
}
.userFullDisplay .userMixables {
	FLOAT: left; MARGIN-LEFT: 10px; WIDTH: 230px
}
.userFullDisplay UL LI {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: =
0px; BORDER-RIGHT-WIDTH: 0px
}
.mixerAccount {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 5px
}
.mixerAccount H1 {
	BORDER-TOP-WIDTH: 0px; FONT-WEIGHT: bold; BORDER-LEFT-WIDTH: 0px; =
FONT-SIZE: 20px; COLOR: #b80100; BORDER-BOTTOM: black 2px solid; =
BORDER-RIGHT-WIDTH: 0px
}
.mixerAccount UL LI {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: =
0px; BORDER-RIGHT-WIDTH: 0px
}
.inlinePlayerWrapper {
	WHITE-SPACE: nowrap
}
TABLE.signup TD {
	PADDING-RIGHT: 20px; PADDING-LEFT: 20px; PADDING-BOTTOM: 10px; =
PADDING-TOP: 0px
}
.popOverBox {
	Z-INDEX: 900; LEFT: 0px; WIDTH: 240px; COLOR: #000; POSITION: absolute; =
min-width: 1em
}
.popOverBox .bottom {
	HEIGHT: 10px
}
.popOverBox .bottom .r {
	HEIGHT: 10px
}
.popOverBox .top {
	BACKGROUND: url(/images/popover/tl.gif) no-repeat 0px 0px; HEIGHT: 27px
}
.popOverBox .top .r {
	BACKGROUND: url(/images/popover/tr.gif) no-repeat right 0px; HEIGHT: =
27px
}
.popOverBox .top .r .c {
	PADDING-RIGHT: 0px; PADDING-LEFT: 10px; PADDING-BOTTOM: 0px; =
MARGIN-RIGHT: 10px; PADDING-TOP: 7px
}
.popOverBox .middle {
	BACKGROUND: url(/images/popover/ml.gif) repeat-y 0px 0px
}
.popOverBox .middle .r {
	BACKGROUND: url(/images/popover/mr.gif) repeat-y right 0px
}
.popOverBox .middle .r .c {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px =
0px 0px 10px; PADDING-TOP: 5px
}
.popOverBox .bottom {
	BACKGROUND: url(/images/popover/bl.gif) no-repeat 0px 0px
}
.popOverBox .bottom .r {
	BACKGROUND: url(/images/popover/br.gif) no-repeat right 0px
}
.popOverBox HR {
	BORDER-TOP: #cacbc4 1px dotted; MARGIN-RIGHT: 10px
}
.popOverBox P {
	PADDING-RIGHT: 0px; MARGIN-TOP: 6px; PADDING-LEFT: 0px; MARGIN-BOTTOM: =
0px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://six.static.jamglue.com/stylesheets/iehacks.css?20062007

.inlinePlayerWrapper {
	PADDING-RIGHT: 0px; VERTICAL-ALIGN: middle; LINE-HEIGHT: 20px; =
MARGIN-RIGHT: 0px
}
.inlinePlayerWrapper OBJECT {
	MARGIN-RIGHT: 4px
}
.popcontent {
	TOP: 25px
}
UNKNOWN {
	MARGIN-TOP: 5px
}
FORM {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: application/octet-stream
Content-Transfer-Encoding: 7bit
Content-Location: http://one.static.jamglue.com/stylesheets/ie6hacks.css?20062007

#content {
	HEIGHT: 625px
}

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://five.static.jamglue.com/javascripts/prototype.js?20062007

/*  Prototype JavaScript framework, version 1.5.0_rc0=0A=
 *  (c) 2005 Sam Stephenson <sam@conio.net>=0A=
 *=0A=
 *  Prototype is freely distributable under the terms of an MIT-style =
license.=0A=
 *  For details, see the Prototype web site: http://prototype.conio.net/=0A=
 *=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
var Prototype =3D {=0A=
  Version: '1.5.0_rc0',=0A=
  ScriptFragment: '(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)',=0A=
=0A=
  emptyFunction: function() {},=0A=
  K: function(x) {return x}=0A=
}=0A=
=0A=
var Class =3D {=0A=
  create: function() {=0A=
    return function() {=0A=
      this.initialize.apply(this, arguments);=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
var Abstract =3D new Object();=0A=
=0A=
Object.extend =3D function(destination, source) {=0A=
  for (var property in source) {=0A=
    destination[property] =3D source[property];=0A=
  }=0A=
  return destination;=0A=
}=0A=
=0A=
Object.inspect =3D function(object) {=0A=
  try {=0A=
    if (object =3D=3D undefined) return 'undefined';=0A=
    if (object =3D=3D null) return 'null';=0A=
    return object.inspect ? object.inspect() : object.toString();=0A=
  } catch (e) {=0A=
    if (e instanceof RangeError) return '...';=0A=
    throw e;=0A=
  }=0A=
}=0A=
=0A=
Function.prototype.bind =3D function() {=0A=
  var __method =3D this, args =3D $A(arguments), object =3D args.shift();=0A=
  return function() {=0A=
    return __method.apply(object, args.concat($A(arguments)));=0A=
  }=0A=
}=0A=
=0A=
Function.prototype.bindAsEventListener =3D function(object) {=0A=
  var __method =3D this;=0A=
  return function(event) {=0A=
    return __method.call(object, event || window.event);=0A=
  }=0A=
}=0A=
=0A=
Object.extend(Number.prototype, {=0A=
  toColorPart: function() {=0A=
    var digits =3D this.toString(16);=0A=
    if (this < 16) return '0' + digits;=0A=
    return digits;=0A=
  },=0A=
=0A=
  succ: function() {=0A=
    return this + 1;=0A=
  },=0A=
=0A=
  times: function(iterator) {=0A=
    $R(0, this, true).each(iterator);=0A=
    return this;=0A=
  }=0A=
});=0A=
=0A=
var Try =3D {=0A=
  these: function() {=0A=
    var returnValue;=0A=
=0A=
    for (var i =3D 0; i < arguments.length; i++) {=0A=
      var lambda =3D arguments[i];=0A=
      try {=0A=
        returnValue =3D lambda();=0A=
        break;=0A=
      } catch (e) {}=0A=
    }=0A=
=0A=
    return returnValue;=0A=
  }=0A=
}=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
var PeriodicalExecuter =3D Class.create();=0A=
PeriodicalExecuter.prototype =3D {=0A=
  initialize: function(callback, frequency) {=0A=
    this.callback =3D callback;=0A=
    this.frequency =3D frequency;=0A=
    this.currentlyExecuting =3D false;=0A=
=0A=
    this.registerCallback();=0A=
  },=0A=
=0A=
  registerCallback: function() {=0A=
    setInterval(this.onTimerEvent.bind(this), this.frequency * 1000);=0A=
  },=0A=
=0A=
  onTimerEvent: function() {=0A=
    if (!this.currentlyExecuting) {=0A=
      try {=0A=
        this.currentlyExecuting =3D true;=0A=
        this.callback();=0A=
      } finally {=0A=
        this.currentlyExecuting =3D false;=0A=
      }=0A=
    }=0A=
  }=0A=
}=0A=
Object.extend(String.prototype, {=0A=
  gsub: function(pattern, replacement) {=0A=
    var result =3D '', source =3D this, match;=0A=
    replacement =3D arguments.callee.prepareReplacement(replacement);=0A=
=0A=
    while (source.length > 0) {=0A=
      if (match =3D source.match(pattern)) {=0A=
        result +=3D source.slice(0, match.index);=0A=
        result +=3D (replacement(match) || '').toString();=0A=
        source  =3D source.slice(match.index + match[0].length);=0A=
      } else {=0A=
        result +=3D source, source =3D '';=0A=
      }=0A=
    }=0A=
    return result;=0A=
  },=0A=
=0A=
  sub: function(pattern, replacement, count) {=0A=
    replacement =3D this.gsub.prepareReplacement(replacement);=0A=
    count =3D count =3D=3D=3D undefined ? 1 : count;=0A=
=0A=
    return this.gsub(pattern, function(match) {=0A=
      if (--count < 0) return match[0];=0A=
      return replacement(match);=0A=
    });=0A=
  },=0A=
=0A=
  scan: function(pattern, iterator) {=0A=
    this.gsub(pattern, iterator);=0A=
    return this;=0A=
  },=0A=
=0A=
  truncate: function(length, truncation) {=0A=
    length =3D length || 30;=0A=
    truncation =3D truncation =3D=3D=3D undefined ? '...' : truncation;=0A=
    return this.length > length ?=0A=
      this.slice(0, length - truncation.length) + truncation : this;=0A=
  },=0A=
=0A=
  strip: function() {=0A=
    return this.replace(/^\s+/, '').replace(/\s+$/, '');=0A=
  },=0A=
=0A=
  stripTags: function() {=0A=
    return this.replace(/<\/?[^>]+>/gi, '');=0A=
  },=0A=
=0A=
  stripScripts: function() {=0A=
    return this.replace(new RegExp(Prototype.ScriptFragment, 'img'), '');=0A=
  },=0A=
=0A=
  extractScripts: function() {=0A=
    var matchAll =3D new RegExp(Prototype.ScriptFragment, 'img');=0A=
    var matchOne =3D new RegExp(Prototype.ScriptFragment, 'im');=0A=
    return (this.match(matchAll) || []).map(function(scriptTag) {=0A=
      return (scriptTag.match(matchOne) || ['', ''])[1];=0A=
    });=0A=
  },=0A=
=0A=
  evalScripts: function() {=0A=
    return this.extractScripts().map(function(script) { return =
eval(script) });=0A=
  },=0A=
=0A=
  escapeHTML: function() {=0A=
    var div =3D document.createElement('div');=0A=
    var text =3D document.createTextNode(this);=0A=
    div.appendChild(text);=0A=
    return div.innerHTML;=0A=
  },=0A=
=0A=
  unescapeHTML: function() {=0A=
    var div =3D document.createElement('div');=0A=
    div.innerHTML =3D this.stripTags();=0A=
    return div.childNodes[0] ? div.childNodes[0].nodeValue : '';=0A=
  },=0A=
=0A=
  toQueryParams: function() {=0A=
    var pairs =3D this.match(/^\??(.*)$/)[1].split('&');=0A=
    return pairs.inject({}, function(params, pairString) {=0A=
      var pair =3D pairString.split('=3D');=0A=
      params[pair[0]] =3D pair[1];=0A=
      return params;=0A=
    });=0A=
  },=0A=
=0A=
  toArray: function() {=0A=
    return this.split('');=0A=
  },=0A=
=0A=
  camelize: function() {=0A=
    var oStringList =3D this.split('-');=0A=
    if (oStringList.length =3D=3D 1) return oStringList[0];=0A=
=0A=
    var camelizedString =3D this.indexOf('-') =3D=3D 0=0A=
      ? oStringList[0].charAt(0).toUpperCase() + =
oStringList[0].substring(1)=0A=
      : oStringList[0];=0A=
=0A=
    for (var i =3D 1, len =3D oStringList.length; i < len; i++) {=0A=
      var s =3D oStringList[i];=0A=
      camelizedString +=3D s.charAt(0).toUpperCase() + s.substring(1);=0A=
    }=0A=
=0A=
    return camelizedString;=0A=
  },=0A=
=0A=
  inspect: function() {=0A=
    return "'" + this.replace(/\\/g, '\\\\').replace(/'/g, '\\\'') + "'";=0A=
  }=0A=
});=0A=
=0A=
String.prototype.gsub.prepareReplacement =3D function(replacement) {=0A=
  if (typeof replacement =3D=3D 'function') return replacement;=0A=
  var template =3D new Template(replacement);=0A=
  return function(match) { return template.evaluate(match) };=0A=
}=0A=
=0A=
String.prototype.parseQuery =3D String.prototype.toQueryParams;=0A=
=0A=
var Template =3D Class.create();=0A=
Template.Pattern =3D /(^|.|\r|\n)(#\{(.*?)\})/;=0A=
Template.prototype =3D {=0A=
  initialize: function(template, pattern) {=0A=
    this.template =3D template.toString();=0A=
    this.pattern  =3D pattern || Template.Pattern;=0A=
  },=0A=
=0A=
  evaluate: function(object) {=0A=
    return this.template.gsub(this.pattern, function(match) {=0A=
      var before =3D match[1];=0A=
      if (before =3D=3D '\\') return match[2];=0A=
      return before + (object[match[3]] || '').toString();=0A=
    });=0A=
  }=0A=
}=0A=
=0A=
var $break    =3D new Object();=0A=
var $continue =3D new Object();=0A=
=0A=
var Enumerable =3D {=0A=
  each: function(iterator) {=0A=
    var index =3D 0;=0A=
    try {=0A=
      this._each(function(value) {=0A=
        try {=0A=
          iterator(value, index++);=0A=
        } catch (e) {=0A=
          if (e !=3D $continue) throw e;=0A=
        }=0A=
      });=0A=
    } catch (e) {=0A=
      if (e !=3D $break) throw e;=0A=
    }=0A=
  },=0A=
=0A=
  all: function(iterator) {=0A=
    var result =3D true;=0A=
    this.each(function(value, index) {=0A=
      result =3D result && !!(iterator || Prototype.K)(value, index);=0A=
      if (!result) throw $break;=0A=
    });=0A=
    return result;=0A=
  },=0A=
=0A=
  any: function(iterator) {=0A=
    var result =3D true;=0A=
    this.each(function(value, index) {=0A=
      if (result =3D !!(iterator || Prototype.K)(value, index))=0A=
        throw $break;=0A=
    });=0A=
    return result;=0A=
  },=0A=
=0A=
  collect: function(iterator) {=0A=
    var results =3D [];=0A=
    this.each(function(value, index) {=0A=
      results.push(iterator(value, index));=0A=
    });=0A=
    return results;=0A=
  },=0A=
=0A=
  detect: function (iterator) {=0A=
    var result;=0A=
    this.each(function(value, index) {=0A=
      if (iterator(value, index)) {=0A=
        result =3D value;=0A=
        throw $break;=0A=
      }=0A=
    });=0A=
    return result;=0A=
  },=0A=
=0A=
  findAll: function(iterator) {=0A=
    var results =3D [];=0A=
    this.each(function(value, index) {=0A=
      if (iterator(value, index))=0A=
        results.push(value);=0A=
    });=0A=
    return results;=0A=
  },=0A=
=0A=
  grep: function(pattern, iterator) {=0A=
    var results =3D [];=0A=
    this.each(function(value, index) {=0A=
      var stringValue =3D value.toString();=0A=
      if (stringValue.match(pattern))=0A=
        results.push((iterator || Prototype.K)(value, index));=0A=
    })=0A=
    return results;=0A=
  },=0A=
=0A=
  include: function(object) {=0A=
    var found =3D false;=0A=
    this.each(function(value) {=0A=
      if (value =3D=3D object) {=0A=
        found =3D true;=0A=
        throw $break;=0A=
      }=0A=
    });=0A=
    return found;=0A=
  },=0A=
=0A=
  inject: function(memo, iterator) {=0A=
    this.each(function(value, index) {=0A=
      memo =3D iterator(memo, value, index);=0A=
    });=0A=
    return memo;=0A=
  },=0A=
=0A=
  invoke: function(method) {=0A=
    var args =3D $A(arguments).slice(1);=0A=
    return this.collect(function(value) {=0A=
      return value[method].apply(value, args);=0A=
    });=0A=
  },=0A=
=0A=
  max: function(iterator) {=0A=
    var result;=0A=
    this.each(function(value, index) {=0A=
      value =3D (iterator || Prototype.K)(value, index);=0A=
      if (result =3D=3D undefined || value >=3D result)=0A=
        result =3D value;=0A=
    });=0A=
    return result;=0A=
  },=0A=
=0A=
  min: function(iterator) {=0A=
    var result;=0A=
    this.each(function(value, index) {=0A=
      value =3D (iterator || Prototype.K)(value, index);=0A=
      if (result =3D=3D undefined || value < result)=0A=
        result =3D value;=0A=
    });=0A=
    return result;=0A=
  },=0A=
=0A=
  partition: function(iterator) {=0A=
    var trues =3D [], falses =3D [];=0A=
    this.each(function(value, index) {=0A=
      ((iterator || Prototype.K)(value, index) ?=0A=
        trues : falses).push(value);=0A=
    });=0A=
    return [trues, falses];=0A=
  },=0A=
=0A=
  pluck: function(property) {=0A=
    var results =3D [];=0A=
    this.each(function(value, index) {=0A=
      results.push(value[property]);=0A=
    });=0A=
    return results;=0A=
  },=0A=
=0A=
  reject: function(iterator) {=0A=
    var results =3D [];=0A=
    this.each(function(value, index) {=0A=
      if (!iterator(value, index))=0A=
        results.push(value);=0A=
    });=0A=
    return results;=0A=
  },=0A=
=0A=
  sortBy: function(iterator) {=0A=
    return this.collect(function(value, index) {=0A=
      return {value: value, criteria: iterator(value, index)};=0A=
    }).sort(function(left, right) {=0A=
      var a =3D left.criteria, b =3D right.criteria;=0A=
      return a < b ? -1 : a > b ? 1 : 0;=0A=
    }).pluck('value');=0A=
  },=0A=
=0A=
  toArray: function() {=0A=
    return this.collect(Prototype.K);=0A=
  },=0A=
=0A=
  zip: function() {=0A=
    var iterator =3D Prototype.K, args =3D $A(arguments);=0A=
    if (typeof args.last() =3D=3D 'function')=0A=
      iterator =3D args.pop();=0A=
=0A=
    var collections =3D [this].concat(args).map($A);=0A=
    return this.map(function(value, index) {=0A=
      return iterator(collections.pluck(index));=0A=
    });=0A=
  },=0A=
=0A=
  inspect: function() {=0A=
    return '#<Enumerable:' + this.toArray().inspect() + '>';=0A=
  }=0A=
}=0A=
=0A=
Object.extend(Enumerable, {=0A=
  map:     Enumerable.collect,=0A=
  find:    Enumerable.detect,=0A=
  select:  Enumerable.findAll,=0A=
  member:  Enumerable.include,=0A=
  entries: Enumerable.toArray=0A=
});=0A=
var $A =3D Array.from =3D function(iterable) {=0A=
  if (!iterable) return [];=0A=
  if (iterable.toArray) {=0A=
    return iterable.toArray();=0A=
  } else {=0A=
    var results =3D [];=0A=
    for (var i =3D 0; i < iterable.length; i++)=0A=
      results.push(iterable[i]);=0A=
    return results;=0A=
  }=0A=
}=0A=
=0A=
Object.extend(Array.prototype, Enumerable);=0A=
=0A=
if (!Array.prototype._reverse)=0A=
  Array.prototype._reverse =3D Array.prototype.reverse;=0A=
=0A=
Object.extend(Array.prototype, {=0A=
  _each: function(iterator) {=0A=
    for (var i =3D 0; i < this.length; i++)=0A=
      iterator(this[i]);=0A=
  },=0A=
=0A=
  clear: function() {=0A=
    this.length =3D 0;=0A=
    return this;=0A=
  },=0A=
=0A=
  first: function() {=0A=
    return this[0];=0A=
  },=0A=
=0A=
  last: function() {=0A=
    return this[this.length - 1];=0A=
  },=0A=
=0A=
  compact: function() {=0A=
    return this.select(function(value) {=0A=
      return value !=3D undefined || value !=3D null;=0A=
    });=0A=
  },=0A=
=0A=
  flatten: function() {=0A=
    return this.inject([], function(array, value) {=0A=
      return array.concat(value && value.constructor =3D=3D Array ?=0A=
        value.flatten() : [value]);=0A=
    });=0A=
  },=0A=
=0A=
  without: function() {=0A=
    var values =3D $A(arguments);=0A=
    return this.select(function(value) {=0A=
      return !values.include(value);=0A=
    });=0A=
  },=0A=
=0A=
  indexOf: function(object) {=0A=
    for (var i =3D 0; i < this.length; i++)=0A=
      if (this[i] =3D=3D object) return i;=0A=
    return -1;=0A=
  },=0A=
=0A=
  reverse: function(inline) {=0A=
    return (inline !=3D=3D false ? this : this.toArray())._reverse();=0A=
  },=0A=
=0A=
  inspect: function() {=0A=
    return '[' + this.map(Object.inspect).join(', ') + ']';=0A=
  }=0A=
});=0A=
var Hash =3D {=0A=
  _each: function(iterator) {=0A=
    for (var key in this) {=0A=
      var value =3D this[key];=0A=
      if (typeof value =3D=3D 'function') continue;=0A=
=0A=
      var pair =3D [key, value];=0A=
      pair.key =3D key;=0A=
      pair.value =3D value;=0A=
      iterator(pair);=0A=
    }=0A=
  },=0A=
=0A=
  keys: function() {=0A=
    return this.pluck('key');=0A=
  },=0A=
=0A=
  values: function() {=0A=
    return this.pluck('value');=0A=
  },=0A=
=0A=
  merge: function(hash) {=0A=
    return $H(hash).inject($H(this), function(mergedHash, pair) {=0A=
      mergedHash[pair.key] =3D pair.value;=0A=
      return mergedHash;=0A=
    });=0A=
  },=0A=
=0A=
  toQueryString: function() {=0A=
    return this.map(function(pair) {=0A=
      return pair.map(encodeURIComponent).join('=3D');=0A=
    }).join('&');=0A=
  },=0A=
=0A=
  inspect: function() {=0A=
    return '#<Hash:{' + this.map(function(pair) {=0A=
      return pair.map(Object.inspect).join(': ');=0A=
    }).join(', ') + '}>';=0A=
  }=0A=
}=0A=
=0A=
function $H(object) {=0A=
  var hash =3D Object.extend({}, object || {});=0A=
  Object.extend(hash, Enumerable);=0A=
  Object.extend(hash, Hash);=0A=
  return hash;=0A=
}=0A=
ObjectRange =3D Class.create();=0A=
Object.extend(ObjectRange.prototype, Enumerable);=0A=
Object.extend(ObjectRange.prototype, {=0A=
  initialize: function(start, end, exclusive) {=0A=
    this.start =3D start;=0A=
    this.end =3D end;=0A=
    this.exclusive =3D exclusive;=0A=
  },=0A=
=0A=
  _each: function(iterator) {=0A=
    var value =3D this.start;=0A=
    do {=0A=
      iterator(value);=0A=
      value =3D value.succ();=0A=
    } while (this.include(value));=0A=
  },=0A=
=0A=
  include: function(value) {=0A=
    if (value < this.start)=0A=
      return false;=0A=
    if (this.exclusive)=0A=
      return value < this.end;=0A=
    return value <=3D this.end;=0A=
  }=0A=
});=0A=
=0A=
var $R =3D function(start, end, exclusive) {=0A=
  return new ObjectRange(start, end, exclusive);=0A=
}=0A=
=0A=
var Ajax =3D {=0A=
  getTransport: function() {=0A=
    return Try.these(=0A=
      function() {return new XMLHttpRequest()},=0A=
      function() {return new ActiveXObject('Msxml2.XMLHTTP')},=0A=
      function() {return new ActiveXObject('Microsoft.XMLHTTP')}=0A=
    ) || false;=0A=
  },=0A=
=0A=
  activeRequestCount: 0=0A=
}=0A=
=0A=
Ajax.Responders =3D {=0A=
  responders: [],=0A=
=0A=
  _each: function(iterator) {=0A=
    this.responders._each(iterator);=0A=
  },=0A=
=0A=
  register: function(responderToAdd) {=0A=
    if (!this.include(responderToAdd))=0A=
      this.responders.push(responderToAdd);=0A=
  },=0A=
=0A=
  unregister: function(responderToRemove) {=0A=
    this.responders =3D this.responders.without(responderToRemove);=0A=
  },=0A=
=0A=
  dispatch: function(callback, request, transport, json) {=0A=
    this.each(function(responder) {=0A=
      if (responder[callback] && typeof responder[callback] =3D=3D =
'function') {=0A=
        try {=0A=
          responder[callback].apply(responder, [request, transport, =
json]);=0A=
        } catch (e) {}=0A=
      }=0A=
    });=0A=
  }=0A=
};=0A=
=0A=
Object.extend(Ajax.Responders, Enumerable);=0A=
=0A=
Ajax.Responders.register({=0A=
  onCreate: function() {=0A=
    Ajax.activeRequestCount++;=0A=
  },=0A=
=0A=
  onComplete: function() {=0A=
    Ajax.activeRequestCount--;=0A=
  }=0A=
});=0A=
=0A=
Ajax.Base =3D function() {};=0A=
Ajax.Base.prototype =3D {=0A=
  setOptions: function(options) {=0A=
    this.options =3D {=0A=
      method:       'post',=0A=
      asynchronous: true,=0A=
      contentType:  'application/x-www-form-urlencoded',=0A=
      parameters:   ''=0A=
    }=0A=
    Object.extend(this.options, options || {});=0A=
  },=0A=
=0A=
  responseIsSuccess: function() {=0A=
    return this.transport.status =3D=3D undefined=0A=
        || this.transport.status =3D=3D 0=0A=
        || (this.transport.status >=3D 200 && this.transport.status < =
300);=0A=
  },=0A=
=0A=
  responseIsFailure: function() {=0A=
    return !this.responseIsSuccess();=0A=
  }=0A=
}=0A=
=0A=
Ajax.Request =3D Class.create();=0A=
Ajax.Request.Events =3D=0A=
  ['Uninitialized', 'Loading', 'Loaded', 'Interactive', 'Complete'];=0A=
=0A=
Ajax.Request.prototype =3D Object.extend(new Ajax.Base(), {=0A=
  initialize: function(url, options) {=0A=
    this.transport =3D Ajax.getTransport();=0A=
    this.setOptions(options);=0A=
    this.request(url);=0A=
  },=0A=
=0A=
  request: function(url) {=0A=
    var parameters =3D this.options.parameters || '';=0A=
    if (parameters.length > 0) parameters +=3D '&_=3D';=0A=
=0A=
    try {=0A=
      this.url =3D url;=0A=
      if (this.options.method =3D=3D 'get' && parameters.length > 0)=0A=
        this.url +=3D (this.url.match(/\?/) ? '&' : '?') + parameters;=0A=
=0A=
      Ajax.Responders.dispatch('onCreate', this, this.transport);=0A=
=0A=
      this.transport.open(this.options.method, this.url,=0A=
        this.options.asynchronous);=0A=
=0A=
      if (this.options.asynchronous) {=0A=
        this.transport.onreadystatechange =3D =
this.onStateChange.bind(this);=0A=
        setTimeout((function() =
{this.respondToReadyState(1)}).bind(this), 10);=0A=
      }=0A=
=0A=
      this.setRequestHeaders();=0A=
=0A=
      var body =3D this.options.postBody ? this.options.postBody : =
parameters;=0A=
      this.transport.send(this.options.method =3D=3D 'post' ? body : =
null);=0A=
=0A=
    } catch (e) {=0A=
      this.dispatchException(e);=0A=
    }=0A=
  },=0A=
=0A=
  setRequestHeaders: function() {=0A=
    var requestHeaders =3D=0A=
      ['X-Requested-With', 'XMLHttpRequest',=0A=
       'X-Prototype-Version', Prototype.Version,=0A=
       'Accept', 'text/javascript, text/html, application/xml, text/xml, =
*/*'];=0A=
=0A=
    if (this.options.method =3D=3D 'post') {=0A=
      requestHeaders.push('Content-type', this.options.contentType);=0A=
=0A=
      /* Force "Connection: close" for Mozilla browsers to work around=0A=
       * a bug where XMLHttpReqeuest sends an incorrect Content-length=0A=
       * header. See Mozilla Bugzilla #246651.=0A=
       */=0A=
      if (this.transport.overrideMimeType)=0A=
        requestHeaders.push('Connection', 'close');=0A=
    }=0A=
=0A=
    if (this.options.requestHeaders)=0A=
      requestHeaders.push.apply(requestHeaders, =
this.options.requestHeaders);=0A=
=0A=
    for (var i =3D 0; i < requestHeaders.length; i +=3D 2)=0A=
      this.transport.setRequestHeader(requestHeaders[i], =
requestHeaders[i+1]);=0A=
  },=0A=
=0A=
  onStateChange: function() {=0A=
    var readyState =3D this.transport.readyState;=0A=
    if (readyState !=3D 1)=0A=
      this.respondToReadyState(this.transport.readyState);=0A=
  },=0A=
=0A=
  header: function(name) {=0A=
    try {=0A=
      return this.transport.getResponseHeader(name);=0A=
    } catch (e) {}=0A=
  },=0A=
=0A=
  evalJSON: function() {=0A=
    try {=0A=
      return eval('(' + this.header('X-JSON') + ')');=0A=
    } catch (e) {}=0A=
  },=0A=
=0A=
  evalResponse: function() {=0A=
    try {=0A=
      return eval(this.transport.responseText);=0A=
    } catch (e) {=0A=
      this.dispatchException(e);=0A=
    }=0A=
  },=0A=
=0A=
  respondToReadyState: function(readyState) {=0A=
    var event =3D Ajax.Request.Events[readyState];=0A=
    var transport =3D this.transport, json =3D this.evalJSON();=0A=
=0A=
    if (event =3D=3D 'Complete') {=0A=
      try {=0A=
        (this.options['on' + this.transport.status]=0A=
         || this.options['on' + (this.responseIsSuccess() ? 'Success' : =
'Failure')]=0A=
         || Prototype.emptyFunction)(transport, json);=0A=
      } catch (e) {=0A=
        this.dispatchException(e);=0A=
      }=0A=
=0A=
      if ((this.header('Content-type') || =
'').match(/^text\/javascript/i))=0A=
        this.evalResponse();=0A=
    }=0A=
=0A=
    try {=0A=
      (this.options['on' + event] || Prototype.emptyFunction)(transport, =
json);=0A=
      Ajax.Responders.dispatch('on' + event, this, transport, json);=0A=
    } catch (e) {=0A=
      this.dispatchException(e);=0A=
    }=0A=
=0A=
    /* Avoid memory leak in MSIE: clean up the oncomplete event handler =
*/=0A=
    if (event =3D=3D 'Complete')=0A=
      this.transport.onreadystatechange =3D Prototype.emptyFunction;=0A=
  },=0A=
=0A=
  dispatchException: function(exception) {=0A=
    (this.options.onException || Prototype.emptyFunction)(this, =
exception);=0A=
    Ajax.Responders.dispatch('onException', this, exception);=0A=
  }=0A=
});=0A=
=0A=
Ajax.Updater =3D Class.create();=0A=
=0A=
Object.extend(Object.extend(Ajax.Updater.prototype, =
Ajax.Request.prototype), {=0A=
  initialize: function(container, url, options) {=0A=
    this.containers =3D {=0A=
      success: container.success ? $(container.success) : $(container),=0A=
      failure: container.failure ? $(container.failure) :=0A=
        (container.success ? null : $(container))=0A=
    }=0A=
=0A=
    this.transport =3D Ajax.getTransport();=0A=
    this.setOptions(options);=0A=
=0A=
    var onComplete =3D this.options.onComplete || =
Prototype.emptyFunction;=0A=
    this.options.onComplete =3D (function(transport, object) {=0A=
      this.updateContent();=0A=
      onComplete(transport, object);=0A=
    }).bind(this);=0A=
=0A=
    this.request(url);=0A=
  },=0A=
=0A=
  updateContent: function() {=0A=
    var receiver =3D this.responseIsSuccess() ?=0A=
      this.containers.success : this.containers.failure;=0A=
    var response =3D this.transport.responseText;=0A=
=0A=
    if (!this.options.evalScripts)=0A=
      response =3D response.stripScripts();=0A=
=0A=
    if (receiver) {=0A=
      if (this.options.insertion) {=0A=
        new this.options.insertion(receiver, response);=0A=
      } else {=0A=
        Element.update(receiver, response);=0A=
      }=0A=
    }=0A=
=0A=
    if (this.responseIsSuccess()) {=0A=
      if (this.onComplete)=0A=
        setTimeout(this.onComplete.bind(this), 10);=0A=
    }=0A=
  }=0A=
});=0A=
=0A=
Ajax.PeriodicalUpdater =3D Class.create();=0A=
Ajax.PeriodicalUpdater.prototype =3D Object.extend(new Ajax.Base(), {=0A=
  initialize: function(container, url, options) {=0A=
    this.setOptions(options);=0A=
    this.onComplete =3D this.options.onComplete;=0A=
=0A=
    this.frequency =3D (this.options.frequency || 2);=0A=
    this.decay =3D (this.options.decay || 1);=0A=
=0A=
    this.updater =3D {};=0A=
    this.container =3D container;=0A=
    this.url =3D url;=0A=
=0A=
    this.start();=0A=
  },=0A=
=0A=
  start: function() {=0A=
    this.options.onComplete =3D this.updateComplete.bind(this);=0A=
    this.onTimerEvent();=0A=
  },=0A=
=0A=
  stop: function() {=0A=
    this.updater.onComplete =3D undefined;=0A=
    clearTimeout(this.timer);=0A=
    (this.onComplete || Prototype.emptyFunction).apply(this, arguments);=0A=
  },=0A=
=0A=
  updateComplete: function(request) {=0A=
    if (this.options.decay) {=0A=
      this.decay =3D (request.responseText =3D=3D this.lastText ?=0A=
        this.decay * this.options.decay : 1);=0A=
=0A=
      this.lastText =3D request.responseText;=0A=
    }=0A=
    this.timer =3D setTimeout(this.onTimerEvent.bind(this),=0A=
      this.decay * this.frequency * 1000);=0A=
  },=0A=
=0A=
  onTimerEvent: function() {=0A=
    this.updater =3D new Ajax.Updater(this.container, this.url, =
this.options);=0A=
  }=0A=
});=0A=
function $() {=0A=
  var results =3D [], element;=0A=
  for (var i =3D 0; i < arguments.length; i++) {=0A=
    element =3D arguments[i];=0A=
    if (typeof element =3D=3D 'string')=0A=
      element =3D document.getElementById(element);=0A=
    results.push(Element.extend(element));=0A=
  }=0A=
  return results.length < 2 ? results[0] : results;=0A=
}=0A=
=0A=
document.getElementsByClassName =3D function(className, parentElement) {=0A=
  var children =3D ($(parentElement) || =
document.body).getElementsByTagName('*');=0A=
  return $A(children).inject([], function(elements, child) {=0A=
    if (child.className.match(new RegExp("(^|\\s)" + className + =
"(\\s|$)")))=0A=
      elements.push(Element.extend(child));=0A=
    return elements;=0A=
  });=0A=
}=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
if (!window.Element)=0A=
  var Element =3D new Object();=0A=
=0A=
Element.extend =3D function(element) {=0A=
  if (!element) return;=0A=
  if (_nativeExtensions) return element;=0A=
=0A=
  if (!element._extended && element.tagName && element !=3D window) {=0A=
    var methods =3D Element.Methods, cache =3D Element.extend.cache;=0A=
    for (property in methods) {=0A=
      var value =3D methods[property];=0A=
      if (typeof value =3D=3D 'function')=0A=
        element[property] =3D cache.findOrStore(value);=0A=
    }=0A=
  }=0A=
=0A=
  element._extended =3D true;=0A=
  return element;=0A=
}=0A=
=0A=
Element.extend.cache =3D {=0A=
  findOrStore: function(value) {=0A=
    return this[value] =3D this[value] || function() {=0A=
      return value.apply(null, [this].concat($A(arguments)));=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
Element.Methods =3D {=0A=
  visible: function(element) {=0A=
    return $(element).style.display !=3D 'none';=0A=
  },=0A=
=0A=
  toggle: function() {=0A=
    for (var i =3D 0; i < arguments.length; i++) {=0A=
      var element =3D $(arguments[i]);=0A=
      Element[Element.visible(element) ? 'hide' : 'show'](element);=0A=
    }=0A=
  },=0A=
=0A=
  hide: function() {=0A=
    for (var i =3D 0; i < arguments.length; i++) {=0A=
      var element =3D $(arguments[i]);=0A=
      element.style.display =3D 'none';=0A=
    }=0A=
  },=0A=
=0A=
  show: function() {=0A=
    for (var i =3D 0; i < arguments.length; i++) {=0A=
      var element =3D $(arguments[i]);=0A=
      element.style.display =3D '';=0A=
    }=0A=
  },=0A=
=0A=
  remove: function(element) {=0A=
    element =3D $(element);=0A=
    element.parentNode.removeChild(element);=0A=
  },=0A=
=0A=
  update: function(element, html) {=0A=
    $(element).innerHTML =3D html.stripScripts();=0A=
    setTimeout(function() {html.evalScripts()}, 10);=0A=
  },=0A=
=0A=
  replace: function(element, html) {=0A=
    element =3D $(element);=0A=
    if (element.outerHTML) {=0A=
      element.outerHTML =3D html.stripScripts();=0A=
    } else {=0A=
      var range =3D element.ownerDocument.createRange();=0A=
      range.selectNodeContents(element);=0A=
      element.parentNode.replaceChild(=0A=
        range.createContextualFragment(html.stripScripts()), element);=0A=
    }=0A=
    setTimeout(function() {html.evalScripts()}, 10);=0A=
  },=0A=
=0A=
  getHeight: function(element) {=0A=
    element =3D $(element);=0A=
    return element.offsetHeight;=0A=
  },=0A=
=0A=
  classNames: function(element) {=0A=
    return new Element.ClassNames(element);=0A=
  },=0A=
=0A=
  hasClassName: function(element, className) {=0A=
    if (!(element =3D $(element))) return;=0A=
    return Element.classNames(element).include(className);=0A=
  },=0A=
=0A=
  addClassName: function(element, className) {=0A=
    if (!(element =3D $(element))) return;=0A=
    return Element.classNames(element).add(className);=0A=
  },=0A=
=0A=
  removeClassName: function(element, className) {=0A=
    if (!(element =3D $(element))) return;=0A=
    return Element.classNames(element).remove(className);=0A=
  },=0A=
=0A=
  // removes whitespace-only text node children=0A=
  cleanWhitespace: function(element) {=0A=
    element =3D $(element);=0A=
    for (var i =3D 0; i < element.childNodes.length; i++) {=0A=
      var node =3D element.childNodes[i];=0A=
      if (node.nodeType =3D=3D 3 && !/\S/.test(node.nodeValue))=0A=
        Element.remove(node);=0A=
    }=0A=
  },=0A=
=0A=
  empty: function(element) {=0A=
    return $(element).innerHTML.match(/^\s*$/);=0A=
  },=0A=
=0A=
  childOf: function(element, ancestor) {=0A=
    element =3D $(element), ancestor =3D $(ancestor);=0A=
    while (element =3D element.parentNode)=0A=
      if (element =3D=3D ancestor) return true;=0A=
    return false;=0A=
  },=0A=
=0A=
  scrollTo: function(element) {=0A=
    element =3D $(element);=0A=
    var x =3D element.x ? element.x : element.offsetLeft,=0A=
        y =3D element.y ? element.y : element.offsetTop;=0A=
    window.scrollTo(x, y);=0A=
  },=0A=
=0A=
  getStyle: function(element, style) {=0A=
    element =3D $(element);=0A=
    var value =3D element.style[style.camelize()];=0A=
    if (!value) {=0A=
      if (document.defaultView && document.defaultView.getComputedStyle) =
{=0A=
        var css =3D document.defaultView.getComputedStyle(element, null);=0A=
        value =3D css ? css.getPropertyValue(style) : null;=0A=
      } else if (element.currentStyle) {=0A=
        value =3D element.currentStyle[style.camelize()];=0A=
      }=0A=
    }=0A=
=0A=
    if (window.opera && ['left', 'top', 'right', =
'bottom'].include(style))=0A=
      if (Element.getStyle(element, 'position') =3D=3D 'static') value =
=3D 'auto';=0A=
=0A=
    return value =3D=3D 'auto' ? null : value;=0A=
  },=0A=
=0A=
  setStyle: function(element, style) {=0A=
    element =3D $(element);=0A=
    for (var name in style)=0A=
      element.style[name.camelize()] =3D style[name];=0A=
  },=0A=
=0A=
  getDimensions: function(element) {=0A=
    element =3D $(element);=0A=
    if (Element.getStyle(element, 'display') !=3D 'none')=0A=
      return {width: element.offsetWidth, height: element.offsetHeight};=0A=
=0A=
    // All *Width and *Height properties give 0 on elements with display =
none,=0A=
    // so enable the element temporarily=0A=
    var els =3D element.style;=0A=
    var originalVisibility =3D els.visibility;=0A=
    var originalPosition =3D els.position;=0A=
    els.visibility =3D 'hidden';=0A=
    els.position =3D 'absolute';=0A=
    els.display =3D '';=0A=
    var originalWidth =3D element.clientWidth;=0A=
    var originalHeight =3D element.clientHeight;=0A=
    els.display =3D 'none';=0A=
    els.position =3D originalPosition;=0A=
    els.visibility =3D originalVisibility;=0A=
    return {width: originalWidth, height: originalHeight};=0A=
  },=0A=
=0A=
  makePositioned: function(element) {=0A=
    element =3D $(element);=0A=
    var pos =3D Element.getStyle(element, 'position');=0A=
    if (pos =3D=3D 'static' || !pos) {=0A=
      element._madePositioned =3D true;=0A=
      element.style.position =3D 'relative';=0A=
      // Opera returns the offset relative to the positioning context, =
when an=0A=
      // element is position relative but top and left have not been =
defined=0A=
      if (window.opera) {=0A=
        element.style.top =3D 0;=0A=
        element.style.left =3D 0;=0A=
      }=0A=
    }=0A=
  },=0A=
=0A=
  undoPositioned: function(element) {=0A=
    element =3D $(element);=0A=
    if (element._madePositioned) {=0A=
      element._madePositioned =3D undefined;=0A=
      element.style.position =3D=0A=
        element.style.top =3D=0A=
        element.style.left =3D=0A=
        element.style.bottom =3D=0A=
        element.style.right =3D '';=0A=
    }=0A=
  },=0A=
=0A=
  makeClipping: function(element) {=0A=
    element =3D $(element);=0A=
    if (element._overflow) return;=0A=
    element._overflow =3D element.style.overflow;=0A=
    if ((Element.getStyle(element, 'overflow') || 'visible') !=3D =
'hidden')=0A=
      element.style.overflow =3D 'hidden';=0A=
  },=0A=
=0A=
  undoClipping: function(element) {=0A=
    element =3D $(element);=0A=
    if (element._overflow) return;=0A=
    element.style.overflow =3D element._overflow;=0A=
    element._overflow =3D undefined;=0A=
  }=0A=
}=0A=
=0A=
Object.extend(Element, Element.Methods);=0A=
=0A=
var _nativeExtensions =3D false;=0A=
=0A=
if(!HTMLElement && /Konqueror|Safari|KHTML/.test(navigator.userAgent)) {=0A=
  var HTMLElement =3D {}=0A=
  HTMLElement.prototype =3D document.createElement('div').__proto__;=0A=
}=0A=
=0A=
Element.addMethods =3D function(methods) {=0A=
  Object.extend(Element.Methods, methods || {});=0A=
=0A=
  if(typeof HTMLElement !=3D 'undefined') {=0A=
    var methods =3D Element.Methods, cache =3D Element.extend.cache;=0A=
    for (property in methods) {=0A=
      var value =3D methods[property];=0A=
      if (typeof value =3D=3D 'function')=0A=
        HTMLElement.prototype[property] =3D cache.findOrStore(value);=0A=
    }=0A=
    _nativeExtensions =3D true;=0A=
  }=0A=
}=0A=
=0A=
Element.addMethods();=0A=
=0A=
var Toggle =3D new Object();=0A=
Toggle.display =3D Element.toggle;=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
Abstract.Insertion =3D function(adjacency) {=0A=
  this.adjacency =3D adjacency;=0A=
}=0A=
=0A=
Abstract.Insertion.prototype =3D {=0A=
  initialize: function(element, content) {=0A=
    this.element =3D $(element);=0A=
    this.content =3D content.stripScripts();=0A=
=0A=
    if (this.adjacency && this.element.insertAdjacentHTML) {=0A=
      try {=0A=
        this.element.insertAdjacentHTML(this.adjacency, this.content);=0A=
      } catch (e) {=0A=
        var tagName =3D this.element.tagName.toLowerCase();=0A=
        if (tagName =3D=3D 'tbody' || tagName =3D=3D 'tr') {=0A=
          this.insertContent(this.contentFromAnonymousTable());=0A=
        } else {=0A=
          throw e;=0A=
        }=0A=
      }=0A=
    } else {=0A=
      this.range =3D this.element.ownerDocument.createRange();=0A=
      if (this.initializeRange) this.initializeRange();=0A=
      =
this.insertContent([this.range.createContextualFragment(this.content)]);=0A=
    }=0A=
=0A=
    setTimeout(function() {content.evalScripts()}, 10);=0A=
  },=0A=
=0A=
  contentFromAnonymousTable: function() {=0A=
    var div =3D document.createElement('div');=0A=
    div.innerHTML =3D '<table><tbody>' + this.content + =
'</tbody></table>';=0A=
    return $A(div.childNodes[0].childNodes[0].childNodes);=0A=
  }=0A=
}=0A=
=0A=
var Insertion =3D new Object();=0A=
=0A=
Insertion.Before =3D Class.create();=0A=
Insertion.Before.prototype =3D Object.extend(new =
Abstract.Insertion('beforeBegin'), {=0A=
  initializeRange: function() {=0A=
    this.range.setStartBefore(this.element);=0A=
  },=0A=
=0A=
  insertContent: function(fragments) {=0A=
    fragments.each((function(fragment) {=0A=
      this.element.parentNode.insertBefore(fragment, this.element);=0A=
    }).bind(this));=0A=
  }=0A=
});=0A=
=0A=
Insertion.Top =3D Class.create();=0A=
Insertion.Top.prototype =3D Object.extend(new =
Abstract.Insertion('afterBegin'), {=0A=
  initializeRange: function() {=0A=
    this.range.selectNodeContents(this.element);=0A=
    this.range.collapse(true);=0A=
  },=0A=
=0A=
  insertContent: function(fragments) {=0A=
    fragments.reverse(false).each((function(fragment) {=0A=
      this.element.insertBefore(fragment, this.element.firstChild);=0A=
    }).bind(this));=0A=
  }=0A=
});=0A=
=0A=
Insertion.Bottom =3D Class.create();=0A=
Insertion.Bottom.prototype =3D Object.extend(new =
Abstract.Insertion('beforeEnd'), {=0A=
  initializeRange: function() {=0A=
    this.range.selectNodeContents(this.element);=0A=
    this.range.collapse(this.element);=0A=
  },=0A=
=0A=
  insertContent: function(fragments) {=0A=
    fragments.each((function(fragment) {=0A=
      this.element.appendChild(fragment);=0A=
    }).bind(this));=0A=
  }=0A=
});=0A=
=0A=
Insertion.After =3D Class.create();=0A=
Insertion.After.prototype =3D Object.extend(new =
Abstract.Insertion('afterEnd'), {=0A=
  initializeRange: function() {=0A=
    this.range.setStartAfter(this.element);=0A=
  },=0A=
=0A=
  insertContent: function(fragments) {=0A=
    fragments.each((function(fragment) {=0A=
      this.element.parentNode.insertBefore(fragment,=0A=
        this.element.nextSibling);=0A=
    }).bind(this));=0A=
  }=0A=
});=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
Element.ClassNames =3D Class.create();=0A=
Element.ClassNames.prototype =3D {=0A=
  initialize: function(element) {=0A=
    this.element =3D $(element);=0A=
  },=0A=
=0A=
  _each: function(iterator) {=0A=
    this.element.className.split(/\s+/).select(function(name) {=0A=
      return name.length > 0;=0A=
    })._each(iterator);=0A=
  },=0A=
=0A=
  set: function(className) {=0A=
    this.element.className =3D className;=0A=
  },=0A=
=0A=
  add: function(classNameToAdd) {=0A=
    if (this.include(classNameToAdd)) return;=0A=
    this.set(this.toArray().concat(classNameToAdd).join(' '));=0A=
  },=0A=
=0A=
  remove: function(classNameToRemove) {=0A=
    if (!this.include(classNameToRemove)) return;=0A=
    this.set(this.select(function(className) {=0A=
      return className !=3D classNameToRemove;=0A=
    }).join(' '));=0A=
  },=0A=
=0A=
  toString: function() {=0A=
    return this.toArray().join(' ');=0A=
  }=0A=
}=0A=
=0A=
Object.extend(Element.ClassNames.prototype, Enumerable);=0A=
var Selector =3D Class.create();=0A=
Selector.prototype =3D {=0A=
  initialize: function(expression) {=0A=
    this.params =3D {classNames: []};=0A=
    this.expression =3D expression.toString().strip();=0A=
    this.parseExpression();=0A=
    this.compileMatcher();=0A=
  },=0A=
=0A=
  parseExpression: function() {=0A=
    function abort(message) { throw 'Parse error in selector: ' + =
message; }=0A=
=0A=
    if (this.expression =3D=3D '')  abort('empty expression');=0A=
=0A=
    var params =3D this.params, expr =3D this.expression, match, =
modifier, clause, rest;=0A=
    while (match =3D =
expr.match(/^(.*)\[([a-z0-9_:-]+?)(?:([~\|!]?=3D)(?:"([^"]*)"|([^\]\s]*))=
)?\]$/i)) {=0A=
      params.attributes =3D params.attributes || [];=0A=
      params.attributes.push({name: match[2], operator: match[3], value: =
match[4] || match[5] || ''});=0A=
      expr =3D match[1];=0A=
    }=0A=
=0A=
    if (expr =3D=3D '*') return this.params.wildcard =3D true;=0A=
=0A=
    while (match =3D expr.match(/^([^a-z0-9_-])?([a-z0-9_-]+)(.*)/i)) {=0A=
      modifier =3D match[1], clause =3D match[2], rest =3D match[3];=0A=
      switch (modifier) {=0A=
        case '#':       params.id =3D clause; break;=0A=
        case '.':       params.classNames.push(clause); break;=0A=
        case '':=0A=
        case undefined: params.tagName =3D clause.toUpperCase(); break;=0A=
        default:        abort(expr.inspect());=0A=
      }=0A=
      expr =3D rest;=0A=
    }=0A=
=0A=
    if (expr.length > 0) abort(expr.inspect());=0A=
  },=0A=
=0A=
  buildMatchExpression: function() {=0A=
    var params =3D this.params, conditions =3D [], clause;=0A=
=0A=
    if (params.wildcard)=0A=
      conditions.push('true');=0A=
    if (clause =3D params.id)=0A=
      conditions.push('element.id =3D=3D ' + clause.inspect());=0A=
    if (clause =3D params.tagName)=0A=
      conditions.push('element.tagName.toUpperCase() =3D=3D ' + =
clause.inspect());=0A=
    if ((clause =3D params.classNames).length > 0)=0A=
      for (var i =3D 0; i < clause.length; i++)=0A=
        conditions.push('Element.hasClassName(element, ' + =
clause[i].inspect() + ')');=0A=
    if (clause =3D params.attributes) {=0A=
      clause.each(function(attribute) {=0A=
        var value =3D 'element.getAttribute(' + attribute.name.inspect() =
+ ')';=0A=
        var splitValueBy =3D function(delimiter) {=0A=
          return value + ' && ' + value + '.split(' + =
delimiter.inspect() + ')';=0A=
        }=0A=
=0A=
        switch (attribute.operator) {=0A=
          case '=3D':       conditions.push(value + ' =3D=3D ' + =
attribute.value.inspect()); break;=0A=
          case '~=3D':      conditions.push(splitValueBy(' ') + =
'.include(' + attribute.value.inspect() + ')'); break;=0A=
          case '|=3D':      conditions.push(=0A=
                            splitValueBy('-') + '.first().toUpperCase() =
=3D=3D ' + attribute.value.toUpperCase().inspect()=0A=
                          ); break;=0A=
          case '!=3D':      conditions.push(value + ' !=3D ' + =
attribute.value.inspect()); break;=0A=
          case '':=0A=
          case undefined: conditions.push(value + ' !=3D null'); break;=0A=
          default:        throw 'Unknown operator ' + attribute.operator =
+ ' in selector';=0A=
        }=0A=
      });=0A=
    }=0A=
=0A=
    return conditions.join(' && ');=0A=
  },=0A=
=0A=
  compileMatcher: function() {=0A=
    this.match =3D new Function('element', 'if (!element.tagName) return =
false; \=0A=
      return ' + this.buildMatchExpression());=0A=
  },=0A=
=0A=
  findElements: function(scope) {=0A=
    var element;=0A=
=0A=
    if (element =3D $(this.params.id))=0A=
      if (this.match(element))=0A=
        if (!scope || Element.childOf(element, scope))=0A=
          return [element];=0A=
=0A=
    scope =3D (scope || =
document).getElementsByTagName(this.params.tagName || '*');=0A=
=0A=
    var results =3D [];=0A=
    for (var i =3D 0; i < scope.length; i++)=0A=
      if (this.match(element =3D scope[i]))=0A=
        results.push(Element.extend(element));=0A=
=0A=
    return results;=0A=
  },=0A=
=0A=
  toString: function() {=0A=
    return this.expression;=0A=
  }=0A=
}=0A=
=0A=
function $$() {=0A=
  return $A(arguments).map(function(expression) {=0A=
    return expression.strip().split(/\s+/).inject([null], =
function(results, expr) {=0A=
      var selector =3D new Selector(expr);=0A=
      return results.map(selector.findElements.bind(selector)).flatten();=0A=
    });=0A=
  }).flatten();=0A=
}=0A=
var Field =3D {=0A=
  clear: function() {=0A=
    for (var i =3D 0; i < arguments.length; i++)=0A=
      $(arguments[i]).value =3D '';=0A=
  },=0A=
=0A=
  focus: function(element) {=0A=
    $(element).focus();=0A=
  },=0A=
=0A=
  present: function() {=0A=
    for (var i =3D 0; i < arguments.length; i++)=0A=
      if ($(arguments[i]).value =3D=3D '') return false;=0A=
    return true;=0A=
  },=0A=
=0A=
  select: function(element) {=0A=
    $(element).select();=0A=
  },=0A=
=0A=
  activate: function(element) {=0A=
    element =3D $(element);=0A=
    element.focus();=0A=
    if (element.select)=0A=
      element.select();=0A=
  }=0A=
}=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
var Form =3D {=0A=
  serialize: function(form) {=0A=
    var elements =3D Form.getElements($(form));=0A=
    var queryComponents =3D new Array();=0A=
=0A=
    for (var i =3D 0; i < elements.length; i++) {=0A=
      var queryComponent =3D Form.Element.serialize(elements[i]);=0A=
      if (queryComponent)=0A=
        queryComponents.push(queryComponent);=0A=
    }=0A=
=0A=
    return queryComponents.join('&');=0A=
  },=0A=
=0A=
  getElements: function(form) {=0A=
    form =3D $(form);=0A=
    var elements =3D new Array();=0A=
=0A=
    for (var tagName in Form.Element.Serializers) {=0A=
      var tagElements =3D form.getElementsByTagName(tagName);=0A=
      for (var j =3D 0; j < tagElements.length; j++)=0A=
        elements.push(tagElements[j]);=0A=
    }=0A=
    return elements;=0A=
  },=0A=
=0A=
  getInputs: function(form, typeName, name) {=0A=
    form =3D $(form);=0A=
    var inputs =3D form.getElementsByTagName('input');=0A=
=0A=
    if (!typeName && !name)=0A=
      return inputs;=0A=
=0A=
    var matchingInputs =3D new Array();=0A=
    for (var i =3D 0; i < inputs.length; i++) {=0A=
      var input =3D inputs[i];=0A=
      if ((typeName && input.type !=3D typeName) ||=0A=
          (name && input.name !=3D name))=0A=
        continue;=0A=
      matchingInputs.push(input);=0A=
    }=0A=
=0A=
    return matchingInputs;=0A=
  },=0A=
=0A=
  disable: function(form) {=0A=
    var elements =3D Form.getElements(form);=0A=
    for (var i =3D 0; i < elements.length; i++) {=0A=
      var element =3D elements[i];=0A=
      element.blur();=0A=
      element.disabled =3D 'true';=0A=
    }=0A=
  },=0A=
=0A=
  enable: function(form) {=0A=
    var elements =3D Form.getElements(form);=0A=
    for (var i =3D 0; i < elements.length; i++) {=0A=
      var element =3D elements[i];=0A=
      element.disabled =3D '';=0A=
    }=0A=
  },=0A=
=0A=
  findFirstElement: function(form) {=0A=
    return Form.getElements(form).find(function(element) {=0A=
      return element.type !=3D 'hidden' && !element.disabled &&=0A=
        ['input', 'select', =
'textarea'].include(element.tagName.toLowerCase());=0A=
    });=0A=
  },=0A=
=0A=
  focusFirstElement: function(form) {=0A=
    Field.activate(Form.findFirstElement(form));=0A=
  },=0A=
=0A=
  reset: function(form) {=0A=
    $(form).reset();=0A=
  }=0A=
}=0A=
=0A=
Form.Element =3D {=0A=
  serialize: function(element) {=0A=
    element =3D $(element);=0A=
    var method =3D element.tagName.toLowerCase();=0A=
    var parameter =3D Form.Element.Serializers[method](element);=0A=
=0A=
    if (parameter) {=0A=
      var key =3D encodeURIComponent(parameter[0]);=0A=
      if (key.length =3D=3D 0) return;=0A=
=0A=
      if (parameter[1].constructor !=3D Array)=0A=
        parameter[1] =3D [parameter[1]];=0A=
=0A=
      return parameter[1].map(function(value) {=0A=
        return key + '=3D' + encodeURIComponent(value);=0A=
      }).join('&');=0A=
    }=0A=
  },=0A=
=0A=
  getValue: function(element) {=0A=
    element =3D $(element);=0A=
    var method =3D element.tagName.toLowerCase();=0A=
    var parameter =3D Form.Element.Serializers[method](element);=0A=
=0A=
    if (parameter)=0A=
      return parameter[1];=0A=
  }=0A=
}=0A=
=0A=
Form.Element.Serializers =3D {=0A=
  input: function(element) {=0A=
    switch (element.type.toLowerCase()) {=0A=
      case 'submit':=0A=
      case 'hidden':=0A=
      case 'password':=0A=
      case 'text':=0A=
        return Form.Element.Serializers.textarea(element);=0A=
      case 'checkbox':=0A=
      case 'radio':=0A=
        return Form.Element.Serializers.inputSelector(element);=0A=
    }=0A=
    return false;=0A=
  },=0A=
=0A=
  inputSelector: function(element) {=0A=
    if (element.checked)=0A=
      return [element.name, element.value];=0A=
  },=0A=
=0A=
  textarea: function(element) {=0A=
    return [element.name, element.value];=0A=
  },=0A=
=0A=
  select: function(element) {=0A=
    return Form.Element.Serializers[element.type =3D=3D 'select-one' ?=0A=
      'selectOne' : 'selectMany'](element);=0A=
  },=0A=
=0A=
  selectOne: function(element) {=0A=
    var value =3D '', opt, index =3D element.selectedIndex;=0A=
    if (index >=3D 0) {=0A=
      opt =3D element.options[index];=0A=
      value =3D opt.value || opt.text;=0A=
    }=0A=
    return [element.name, value];=0A=
  },=0A=
=0A=
  selectMany: function(element) {=0A=
    var value =3D [];=0A=
    for (var i =3D 0; i < element.length; i++) {=0A=
      var opt =3D element.options[i];=0A=
      if (opt.selected)=0A=
        value.push(opt.value || opt.text);=0A=
    }=0A=
    return [element.name, value];=0A=
  }=0A=
}=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
var $F =3D Form.Element.getValue;=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
Abstract.TimedObserver =3D function() {}=0A=
Abstract.TimedObserver.prototype =3D {=0A=
  initialize: function(element, frequency, callback) {=0A=
    this.frequency =3D frequency;=0A=
    this.element   =3D $(element);=0A=
    this.callback  =3D callback;=0A=
=0A=
    this.lastValue =3D this.getValue();=0A=
    this.registerCallback();=0A=
  },=0A=
=0A=
  registerCallback: function() {=0A=
    setInterval(this.onTimerEvent.bind(this), this.frequency * 1000);=0A=
  },=0A=
=0A=
  onTimerEvent: function() {=0A=
    var value =3D this.getValue();=0A=
    if (this.lastValue !=3D value) {=0A=
      this.callback(this.element, value);=0A=
      this.lastValue =3D value;=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
Form.Element.Observer =3D Class.create();=0A=
Form.Element.Observer.prototype =3D Object.extend(new =
Abstract.TimedObserver(), {=0A=
  getValue: function() {=0A=
    return Form.Element.getValue(this.element);=0A=
  }=0A=
});=0A=
=0A=
Form.Observer =3D Class.create();=0A=
Form.Observer.prototype =3D Object.extend(new Abstract.TimedObserver(), {=0A=
  getValue: function() {=0A=
    return Form.serialize(this.element);=0A=
  }=0A=
});=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
Abstract.EventObserver =3D function() {}=0A=
Abstract.EventObserver.prototype =3D {=0A=
  initialize: function(element, callback) {=0A=
    this.element  =3D $(element);=0A=
    this.callback =3D callback;=0A=
=0A=
    this.lastValue =3D this.getValue();=0A=
    if (this.element.tagName.toLowerCase() =3D=3D 'form')=0A=
      this.registerFormCallbacks();=0A=
    else=0A=
      this.registerCallback(this.element);=0A=
  },=0A=
=0A=
  onElementEvent: function() {=0A=
    var value =3D this.getValue();=0A=
    if (this.lastValue !=3D value) {=0A=
      this.callback(this.element, value);=0A=
      this.lastValue =3D value;=0A=
    }=0A=
  },=0A=
=0A=
  registerFormCallbacks: function() {=0A=
    var elements =3D Form.getElements(this.element);=0A=
    for (var i =3D 0; i < elements.length; i++)=0A=
      this.registerCallback(elements[i]);=0A=
  },=0A=
=0A=
  registerCallback: function(element) {=0A=
    if (element.type) {=0A=
      switch (element.type.toLowerCase()) {=0A=
        case 'checkbox':=0A=
        case 'radio':=0A=
          Event.observe(element, 'click', =
this.onElementEvent.bind(this));=0A=
          break;=0A=
        case 'password':=0A=
        case 'text':=0A=
        case 'textarea':=0A=
        case 'select-one':=0A=
        case 'select-multiple':=0A=
          Event.observe(element, 'change', =
this.onElementEvent.bind(this));=0A=
          break;=0A=
      }=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
Form.Element.EventObserver =3D Class.create();=0A=
Form.Element.EventObserver.prototype =3D Object.extend(new =
Abstract.EventObserver(), {=0A=
  getValue: function() {=0A=
    return Form.Element.getValue(this.element);=0A=
  }=0A=
});=0A=
=0A=
Form.EventObserver =3D Class.create();=0A=
Form.EventObserver.prototype =3D Object.extend(new =
Abstract.EventObserver(), {=0A=
  getValue: function() {=0A=
    return Form.serialize(this.element);=0A=
  }=0A=
});=0A=
if (!window.Event) {=0A=
  var Event =3D new Object();=0A=
}=0A=
=0A=
Object.extend(Event, {=0A=
  KEY_BACKSPACE: 8,=0A=
  KEY_TAB:       9,=0A=
  KEY_RETURN:   13,=0A=
  KEY_ESC:      27,=0A=
  KEY_LEFT:     37,=0A=
  KEY_UP:       38,=0A=
  KEY_RIGHT:    39,=0A=
  KEY_DOWN:     40,=0A=
  KEY_DELETE:   46,=0A=
=0A=
  element: function(event) {=0A=
    return event.target || event.srcElement;=0A=
  },=0A=
=0A=
  isLeftClick: function(event) {=0A=
    return (((event.which) && (event.which =3D=3D 1)) ||=0A=
            ((event.button) && (event.button =3D=3D 1)));=0A=
  },=0A=
=0A=
  pointerX: function(event) {=0A=
    return event.pageX || (event.clientX +=0A=
      (document.documentElement.scrollLeft || document.body.scrollLeft));=0A=
  },=0A=
=0A=
  pointerY: function(event) {=0A=
    return event.pageY || (event.clientY +=0A=
      (document.documentElement.scrollTop || document.body.scrollTop));=0A=
  },=0A=
=0A=
  stop: function(event) {=0A=
    if (event.preventDefault) {=0A=
      event.preventDefault();=0A=
      event.stopPropagation();=0A=
    } else {=0A=
      event.returnValue =3D false;=0A=
      event.cancelBubble =3D true;=0A=
    }=0A=
  },=0A=
=0A=
  // find the first node with the given tagName, starting from the=0A=
  // node the event was triggered on; traverses the DOM upwards=0A=
  findElement: function(event, tagName) {=0A=
    var element =3D Event.element(event);=0A=
    while (element.parentNode && (!element.tagName ||=0A=
        (element.tagName.toUpperCase() !=3D tagName.toUpperCase())))=0A=
      element =3D element.parentNode;=0A=
    return element;=0A=
  },=0A=
=0A=
  observers: false,=0A=
=0A=
  _observeAndCache: function(element, name, observer, useCapture) {=0A=
    if (!this.observers) this.observers =3D [];=0A=
    if (element.addEventListener) {=0A=
      this.observers.push([element, name, observer, useCapture]);=0A=
      element.addEventListener(name, observer, useCapture);=0A=
    } else if (element.attachEvent) {=0A=
      this.observers.push([element, name, observer, useCapture]);=0A=
      element.attachEvent('on' + name, observer);=0A=
    }=0A=
  },=0A=
=0A=
  unloadCache: function() {=0A=
    if (!Event.observers) return;=0A=
    for (var i =3D 0; i < Event.observers.length; i++) {=0A=
      Event.stopObserving.apply(this, Event.observers[i]);=0A=
      Event.observers[i][0] =3D null;=0A=
    }=0A=
    Event.observers =3D false;=0A=
  },=0A=
=0A=
  observe: function(element, name, observer, useCapture) {=0A=
    var element =3D $(element);=0A=
    useCapture =3D useCapture || false;=0A=
=0A=
    if (name =3D=3D 'keypress' &&=0A=
        (navigator.appVersion.match(/Konqueror|Safari|KHTML/)=0A=
        || element.attachEvent))=0A=
      name =3D 'keydown';=0A=
=0A=
    this._observeAndCache(element, name, observer, useCapture);=0A=
  },=0A=
=0A=
  stopObserving: function(element, name, observer, useCapture) {=0A=
    var element =3D $(element);=0A=
    useCapture =3D useCapture || false;=0A=
=0A=
    if (name =3D=3D 'keypress' &&=0A=
        (navigator.appVersion.match(/Konqueror|Safari|KHTML/)=0A=
        || element.detachEvent))=0A=
      name =3D 'keydown';=0A=
=0A=
    if (element.removeEventListener) {=0A=
      element.removeEventListener(name, observer, useCapture);=0A=
    } else if (element.detachEvent) {=0A=
      element.detachEvent('on' + name, observer);=0A=
    }=0A=
  }=0A=
});=0A=
=0A=
/* prevent memory leaks in IE */=0A=
if (navigator.appVersion.match(/\bMSIE\b/))=0A=
  Event.observe(window, 'unload', Event.unloadCache, false);=0A=
var Position =3D {=0A=
  // set to true if needed, warning: firefox performance problems=0A=
  // NOT neeeded for page scrolling, only if draggable contained in=0A=
  // scrollable elements=0A=
  includeScrollOffsets: false,=0A=
=0A=
  // must be called before calling withinIncludingScrolloffset, every =
time the=0A=
  // page is scrolled=0A=
  prepare: function() {=0A=
    this.deltaX =3D  window.pageXOffset=0A=
                || document.documentElement.scrollLeft=0A=
                || document.body.scrollLeft=0A=
                || 0;=0A=
    this.deltaY =3D  window.pageYOffset=0A=
                || document.documentElement.scrollTop=0A=
                || document.body.scrollTop=0A=
                || 0;=0A=
  },=0A=
=0A=
  realOffset: function(element) {=0A=
    var valueT =3D 0, valueL =3D 0;=0A=
    do {=0A=
      valueT +=3D element.scrollTop  || 0;=0A=
      valueL +=3D element.scrollLeft || 0;=0A=
      element =3D element.parentNode;=0A=
    } while (element);=0A=
    return [valueL, valueT];=0A=
  },=0A=
=0A=
  cumulativeOffset: function(element) {=0A=
    var valueT =3D 0, valueL =3D 0;=0A=
    do {=0A=
      valueT +=3D element.offsetTop  || 0;=0A=
      valueL +=3D element.offsetLeft || 0;=0A=
      element =3D element.offsetParent;=0A=
    } while (element);=0A=
    return [valueL, valueT];=0A=
  },=0A=
=0A=
  positionedOffset: function(element) {=0A=
    var valueT =3D 0, valueL =3D 0;=0A=
    do {=0A=
      valueT +=3D element.offsetTop  || 0;=0A=
      valueL +=3D element.offsetLeft || 0;=0A=
      element =3D element.offsetParent;=0A=
      if (element) {=0A=
        p =3D Element.getStyle(element, 'position');=0A=
        if (p =3D=3D 'relative' || p =3D=3D 'absolute') break;=0A=
      }=0A=
    } while (element);=0A=
    return [valueL, valueT];=0A=
  },=0A=
=0A=
  offsetParent: function(element) {=0A=
    if (element.offsetParent) return element.offsetParent;=0A=
    if (element =3D=3D document.body) return element;=0A=
=0A=
    while ((element =3D element.parentNode) && element !=3D =
document.body)=0A=
      if (Element.getStyle(element, 'position') !=3D 'static')=0A=
        return element;=0A=
=0A=
    return document.body;=0A=
  },=0A=
=0A=
  // caches x/y coordinate pair to use with overlap=0A=
  within: function(element, x, y) {=0A=
    if (this.includeScrollOffsets)=0A=
      return this.withinIncludingScrolloffsets(element, x, y);=0A=
    this.xcomp =3D x;=0A=
    this.ycomp =3D y;=0A=
    this.offset =3D this.cumulativeOffset(element);=0A=
=0A=
    return (y >=3D this.offset[1] &&=0A=
            y <  this.offset[1] + element.offsetHeight &&=0A=
            x >=3D this.offset[0] &&=0A=
            x <  this.offset[0] + element.offsetWidth);=0A=
  },=0A=
=0A=
  withinIncludingScrolloffsets: function(element, x, y) {=0A=
    var offsetcache =3D this.realOffset(element);=0A=
=0A=
    this.xcomp =3D x + offsetcache[0] - this.deltaX;=0A=
    this.ycomp =3D y + offsetcache[1] - this.deltaY;=0A=
    this.offset =3D this.cumulativeOffset(element);=0A=
=0A=
    return (this.ycomp >=3D this.offset[1] &&=0A=
            this.ycomp <  this.offset[1] + element.offsetHeight &&=0A=
            this.xcomp >=3D this.offset[0] &&=0A=
            this.xcomp <  this.offset[0] + element.offsetWidth);=0A=
  },=0A=
=0A=
  // within must be called directly before=0A=
  overlap: function(mode, element) {=0A=
    if (!mode) return 0;=0A=
    if (mode =3D=3D 'vertical')=0A=
      return ((this.offset[1] + element.offsetHeight) - this.ycomp) /=0A=
        element.offsetHeight;=0A=
    if (mode =3D=3D 'horizontal')=0A=
      return ((this.offset[0] + element.offsetWidth) - this.xcomp) /=0A=
        element.offsetWidth;=0A=
  },=0A=
=0A=
  clone: function(source, target) {=0A=
    source =3D $(source);=0A=
    target =3D $(target);=0A=
    target.style.position =3D 'absolute';=0A=
    var offsets =3D this.cumulativeOffset(source);=0A=
    target.style.top    =3D offsets[1] + 'px';=0A=
    target.style.left   =3D offsets[0] + 'px';=0A=
    target.style.width  =3D source.offsetWidth + 'px';=0A=
    target.style.height =3D source.offsetHeight + 'px';=0A=
  },=0A=
=0A=
  page: function(forElement) {=0A=
    var valueT =3D 0, valueL =3D 0;=0A=
=0A=
    var element =3D forElement;=0A=
    do {=0A=
      valueT +=3D element.offsetTop  || 0;=0A=
      valueL +=3D element.offsetLeft || 0;=0A=
=0A=
      // Safari fix=0A=
      if (element.offsetParent=3D=3Ddocument.body)=0A=
        if (Element.getStyle(element,'position')=3D=3D'absolute') break;=0A=
=0A=
    } while (element =3D element.offsetParent);=0A=
=0A=
    element =3D forElement;=0A=
    do {=0A=
      valueT -=3D element.scrollTop  || 0;=0A=
      valueL -=3D element.scrollLeft || 0;=0A=
    } while (element =3D element.parentNode);=0A=
=0A=
    return [valueL, valueT];=0A=
  },=0A=
=0A=
  clone: function(source, target) {=0A=
    var options =3D Object.extend({=0A=
      setLeft:    true,=0A=
      setTop:     true,=0A=
      setWidth:   true,=0A=
      setHeight:  true,=0A=
      offsetTop:  0,=0A=
      offsetLeft: 0=0A=
    }, arguments[2] || {})=0A=
=0A=
    // find page position of source=0A=
    source =3D $(source);=0A=
    var p =3D Position.page(source);=0A=
=0A=
    // find coordinate system to use=0A=
    target =3D $(target);=0A=
    var delta =3D [0, 0];=0A=
    var parent =3D null;=0A=
    // delta [0,0] will do fine with position: fixed elements,=0A=
    // position:absolute needs offsetParent deltas=0A=
    if (Element.getStyle(target,'position') =3D=3D 'absolute') {=0A=
      parent =3D Position.offsetParent(target);=0A=
      delta =3D Position.page(parent);=0A=
    }=0A=
=0A=
    // correct by body offsets (fixes Safari)=0A=
    if (parent =3D=3D document.body) {=0A=
      delta[0] -=3D document.body.offsetLeft;=0A=
      delta[1] -=3D document.body.offsetTop;=0A=
    }=0A=
=0A=
    // set position=0A=
    if(options.setLeft)   target.style.left  =3D (p[0] - delta[0] + =
options.offsetLeft) + 'px';=0A=
    if(options.setTop)    target.style.top   =3D (p[1] - delta[1] + =
options.offsetTop) + 'px';=0A=
    if(options.setWidth)  target.style.width =3D source.offsetWidth + =
'px';=0A=
    if(options.setHeight) target.style.height =3D source.offsetHeight + =
'px';=0A=
  },=0A=
=0A=
  absolutize: function(element) {=0A=
    element =3D $(element);=0A=
    if (element.style.position =3D=3D 'absolute') return;=0A=
    Position.prepare();=0A=
=0A=
    var offsets =3D Position.positionedOffset(element);=0A=
    var top     =3D offsets[1];=0A=
    var left    =3D offsets[0];=0A=
    var width   =3D element.clientWidth;=0A=
    var height  =3D element.clientHeight;=0A=
=0A=
    element._originalLeft   =3D left - parseFloat(element.style.left  || =
0);=0A=
    element._originalTop    =3D top  - parseFloat(element.style.top || =
0);=0A=
    element._originalWidth  =3D element.style.width;=0A=
    element._originalHeight =3D element.style.height;=0A=
=0A=
    element.style.position =3D 'absolute';=0A=
    element.style.top    =3D top + 'px';;=0A=
    element.style.left   =3D left + 'px';;=0A=
    element.style.width  =3D width + 'px';;=0A=
    element.style.height =3D height + 'px';;=0A=
  },=0A=
=0A=
  relativize: function(element) {=0A=
    element =3D $(element);=0A=
    if (element.style.position =3D=3D 'relative') return;=0A=
    Position.prepare();=0A=
=0A=
    element.style.position =3D 'relative';=0A=
    var top  =3D parseFloat(element.style.top  || 0) - =
(element._originalTop || 0);=0A=
    var left =3D parseFloat(element.style.left || 0) - =
(element._originalLeft || 0);=0A=
=0A=
    element.style.top    =3D top + 'px';=0A=
    element.style.left   =3D left + 'px';=0A=
    element.style.height =3D element._originalHeight;=0A=
    element.style.width  =3D element._originalWidth;=0A=
  }=0A=
}=0A=
=0A=
// Safari returns margins on body which is incorrect if the child is =
absolutely=0A=
// positioned.  For performance reasons, redefine =
Position.cumulativeOffset for=0A=
// KHTML/WebKit only.=0A=
if (/Konqueror|Safari|KHTML/.test(navigator.userAgent)) {=0A=
  Position.cumulativeOffset =3D function(element) {=0A=
    var valueT =3D 0, valueL =3D 0;=0A=
    do {=0A=
      valueT +=3D element.offsetTop  || 0;=0A=
      valueL +=3D element.offsetLeft || 0;=0A=
      if (element.offsetParent =3D=3D document.body)=0A=
        if (Element.getStyle(element, 'position') =3D=3D 'absolute') =
break;=0A=
=0A=
      element =3D element.offsetParent;=0A=
    } while (element);=0A=
=0A=
    return [valueL, valueT];=0A=
  }=0A=
}
------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://five.static.jamglue.com/javascripts/effects.js?20062007

// Copyright (c) 2005 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=
// See scriptaculous.js for full license.  =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(element, {fontSize: (percent/100) + 'em'});   =0A=
  if(navigator.appVersion.indexOf('AppleWebKit')>0) window.scrollBy(0,0);=0A=
}=0A=
=0A=
Element.getOpacity =3D function(element){  =0A=
  var opacity;=0A=
  if (opacity =3D Element.getStyle(element, 'opacity'))  =0A=
    return parseFloat(opacity);  =0A=
  if (opacity =3D (Element.getStyle(element, '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(element, { opacity: =0A=
      (/Gecko/.test(navigator.userAgent) && =
!/Konqueror|Safari|KHTML/.test(navigator.userAgent)) ? =0A=
      0.999999 : null });=0A=
    if(/MSIE/.test(navigator.userAgent))  =0A=
      Element.setStyle(element, {filter: =
Element.getStyle(element,'filter').replace(/alpha\([^\)]*\)/gi,'')});  =0A=
  } else {  =0A=
    if(value < 0.00001) value =3D 0;  =0A=
    Element.setStyle(element, {opacity: value});=0A=
    if(/MSIE/.test(navigator.userAgent))  =0A=
     Element.setStyle(element, =0A=
       { filter: =
Element.getStyle(element,'filter').replace(/alpha\([^\)]*\)/gi,'') +=0A=
                 'alpha(opacity=3D'+value*100+')' });  =0A=
  }=0A=
}  =0A=
 =0A=
Element.getInlineOpacity =3D function(element){  =0A=
  return $(element).style.opacity || '';=0A=
}  =0A=
=0A=
Element.childrenWithClassName =3D function(element, className, =
findFirst) {=0A=
  var classNameRegExp =3D new RegExp("(^|\\s)" + className + "(\\s|$)");=0A=
  var results =3D $A($(element).getElementsByTagName('*'))[findFirst ? =
'detect' : 'select']( function(c) { =0A=
    return (c.className && c.className.match(classNameRegExp));=0A=
  });=0A=
  if(!results) results =3D [];=0A=
  return results;=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=
  tagifyText: function(element) {=0A=
    var tagifyStyle =3D 'position:relative';=0A=
    if(/MSIE/.test(navigator.userAgent)) tagifyStyle +=3D ';zoom:1';=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=
=0A=
Effect.Transitions.linear =3D function(pos) {=0A=
  return pos;=0A=
}=0A=
Effect.Transitions.sinoidal =3D function(pos) {=0A=
  return (-Math.cos(pos*Math.PI)/2) + 0.5;=0A=
}=0A=
Effect.Transitions.reverse  =3D function(pos) {=0A=
  return 1-pos;=0A=
}=0A=
Effect.Transitions.flicker =3D function(pos) {=0A=
  return ((-Math.cos(pos*Math.PI)/4) + 0.75) + Math.random()/4;=0A=
}=0A=
Effect.Transitions.wobble =3D function(pos) {=0A=
  return (-Math.cos(pos*Math.PI*(9*pos))/2) + 0.5;=0A=
}=0A=
Effect.Transitions.pulse =3D function(pos) {=0A=
  return (Math.floor(pos*10) % 2 =3D=3D 0 ? =0A=
    (pos*10-Math.floor(pos*10)) : 1-(pos*10-Math.floor(pos*10)));=0A=
}=0A=
Effect.Transitions.none =3D function(pos) {=0A=
  return 0;=0A=
}=0A=
Effect.Transitions.full =3D function(pos) {=0A=
  return 1;=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 '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.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=
    // make this work on IE on elements without 'layout'=0A=
    if(/MSIE/.test(navigator.userAgent) && (!this.element.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=
    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: this.options.x  * position + this.originalLeft + 'px',=0A=
      top:  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=
    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','%'].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 width + 'px';=0A=
    if(this.options.scaleY) d.height =3D 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=
    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();=0A=
    effect.element.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);=0A=
    effect.element.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 { opacity: element.getInlineOpacity(), position: =
element.getStyle('position') };=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=
        effect.effects[0].element.setStyle({position: 'absolute'}); },=0A=
      afterFinishInternal: function(effect) {=0A=
         effect.effects[0].element.hide();=0A=
         effect.effects[0].element.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();=0A=
        effect.element.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, =0A=
    Object.extend({ 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();=0A=
        effect.element.setStyle({height: '0px'});=0A=
        effect.element.show(); =0A=
      },  =0A=
      afterFinishInternal: function(effect) {=0A=
        effect.element.undoClipping();=0A=
      }=0A=
    }, arguments[1] || {})=0A=
  );=0A=
}=0A=
=0A=
Effect.SwitchOff =3D function(element) {=0A=
  element =3D $(element);=0A=
  var oldOpacity =3D element.getInlineOpacity();=0A=
  return new Effect.Appear(element, { =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();=0A=
          effect.element.makeClipping();=0A=
        },=0A=
        afterFinishInternal: function(effect) {=0A=
          effect.element.hide();=0A=
          effect.element.undoClipping();=0A=
          effect.element.undoPositioned();=0A=
          effect.element.setStyle({opacity: oldOpacity});=0A=
        }=0A=
      })=0A=
    }=0A=
  });=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();=0A=
          effect.effects[0].element.undoPositioned();=0A=
          effect.effects[0].element.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();=0A=
        effect.element.setStyle(oldStyle);=0A=
  }}) }}) }}) }}) }}) }});=0A=
}=0A=
=0A=
Effect.SlideDown =3D function(element) {=0A=
  element =3D $(element);=0A=
  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.firstChild).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: 0,=0A=
    scaleMode: {originalHeight: elementDimensions.height, originalWidth: =
elementDimensions.width},=0A=
    restoreAfterFinish: true,=0A=
    afterSetup: function(effect) {=0A=
      effect.element.makePositioned();=0A=
      effect.element.firstChild.makePositioned();=0A=
      if(window.opera) effect.element.setStyle({top: ''});=0A=
      effect.element.makeClipping();=0A=
      effect.element.setStyle({height: '0px'});=0A=
      effect.element.show(); },=0A=
    afterUpdateInternal: function(effect) {=0A=
      effect.element.firstChild.setStyle({bottom:=0A=
        (effect.dims[0] - effect.element.clientHeight) + 'px' }); =0A=
    },=0A=
    afterFinishInternal: function(effect) {=0A=
      effect.element.undoClipping(); =0A=
      // IE will crash if child is undoPositioned first=0A=
      if(/MSIE/.test(navigator.userAgent)){=0A=
        effect.element.undoPositioned();=0A=
        effect.element.firstChild.undoPositioned();=0A=
      }else{=0A=
        effect.element.firstChild.undoPositioned();=0A=
        effect.element.undoPositioned();=0A=
      }=0A=
      effect.element.firstChild.setStyle({bottom: oldInnerBottom}); }=0A=
    }, arguments[1] || {})=0A=
  );=0A=
}=0A=
  =0A=
Effect.SlideUp =3D function(element) {=0A=
  element =3D $(element);=0A=
  element.cleanWhitespace();=0A=
  var oldInnerBottom =3D $(element.firstChild).getStyle('bottom');=0A=
  return new Effect.Scale(element, 0, =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.firstChild.makePositioned();=0A=
      if(window.opera) effect.element.setStyle({top: ''});=0A=
      effect.element.makeClipping();=0A=
      effect.element.show(); },  =0A=
    afterUpdateInternal: function(effect) {=0A=
      effect.element.firstChild.setStyle({bottom:=0A=
        (effect.dims[0] - effect.element.clientHeight) + 'px' }); },=0A=
    afterFinishInternal: function(effect) {=0A=
      effect.element.hide();=0A=
      effect.element.undoClipping();=0A=
      effect.element.firstChild.undoPositioned();=0A=
      effect.element.undoPositioned();=0A=
      effect.element.setStyle({bottom: oldInnerBottom}); }=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(effect.element); },  =0A=
      afterFinishInternal: function(effect) {=0A=
        effect.element.hide(effect.element); =0A=
        effect.element.undoClipping(effect.element); }=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();=0A=
      effect.element.makeClipping();=0A=
      effect.element.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'});=0A=
               effect.effects[0].element.show(); =0A=
             },=0A=
             afterFinishInternal: function(effect) {=0A=
               effect.effects[0].element.undoClipping();=0A=
               effect.effects[0].element.undoPositioned();=0A=
               effect.effects[0].element.setStyle(oldStyle); =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();=0A=
           effect.effects[0].element.makeClipping(); },=0A=
         afterFinishInternal: function(effect) {=0A=
           effect.effects[0].element.hide();=0A=
           effect.effects[0].element.undoClipping();=0A=
           effect.effects[0].element.undoPositioned();=0A=
           effect.effects[0].element.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)) };=0A=
  reverser.bind(transition);=0A=
  return new Effect.Opacity(element, =0A=
    Object.extend(Object.extend({  duration: 3.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(element);=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();=0A=
        effect.element.undoClipping(); =0A=
        effect.element.setStyle(oldStyle);=0A=
      } });=0A=
  }}, arguments[1] || {}));=0A=
};=0A=
=0A=
['setOpacity','getOpacity','getInlineOpacity','forceRerendering','setCont=
entZoom',=0A=
 =
'collectTextNodes','collectTextNodesIgnoreClass','childrenWithClassName']=
.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_02C3_01C7B50A.EECCFB60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://five.static.jamglue.com/javascripts/dragdrop.js?20062007

// Copyright (c) 2005 Thomas Fuchs (http://script.aculo.us, =
http://mir.aculo.us)=0A=
//           (c) 2005 Sammi Williams (http://www.oriontransfer.co.nz, =
sammi@oriontransfer.co.nz)=0A=
// =0A=
// See scriptaculous.js for full license.=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=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=
    window.focus(); // allows keypress events if window isn't currently =
focused, fails for Safari=0A=
    this.activeDraggable =3D draggable;=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=
    this.activeDraggable.updateDrag(event, pointer);=0A=
  },=0A=
  =0A=
  endDrag: function(event) {=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=
  },=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.prototype =3D {=0A=
  initialize: function(element) {=0A=
    var options =3D Object.extend({=0A=
      handle: false,=0A=
      starteffect: function(element) { =0A=
        new Effect.Opacity(element, {duration:0.2, from:1.0, to:0.7}); =0A=
      },=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=
        element._revert =3D new Effect.Move(element, { x: -left_offset, =
y: -top_offset, duration: dur});=0A=
      },=0A=
      endeffect: function(element) { =0A=
        new Effect.Opacity(element, {duration:0.2, from:0.7, to:1.0}); =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=
    }, arguments[1] || {});=0A=
=0A=
    this.element =3D $(element);=0A=
    =0A=
    if(options.handle && (typeof options.handle =3D=3D 'string')) {=0A=
      var h =3D Element.childrenWithClassName(this.element, =
options.handle, true);=0A=
      if(h.length>0) this.handle =3D h[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=
=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(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=
      if(this.element._revert) {=0A=
        this.element._revert.cancel();=0A=
        this.element._revert =3D null;=0A=
      }=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=
    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=
    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;=0A=
        p[1] +=3D this.options.scroll.scrollTop;=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=
    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)) {=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]);=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=
    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=
    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=
    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=
    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=
  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=
      hoverclass:  null,=0A=
      ghosting:    false,=0A=
      scroll:      false,=0A=
      scrollSensitivity: 20,=0A=
      scrollSpeed: 15,=0A=
      format:      /^[^_]*_(.*)$/,=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=
      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=
      //greedy:      !options.dropOnEmpty=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=
        Element.childrenWithClassName(e, 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});=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) Element.hide(Sortable._marker);=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 $('dropmarker') || =
document.createElement('DIV');=0A=
      Element.hide(Sortable._marker);=0A=
      Element.addClassName(Sortable._marker, 'dropmarker');=0A=
      Sortable._marker.style.position =3D 'absolute';=0A=
      =
document.getElementsByTagName("body").item(0).appendChild(Sortable._marke=
r);=0A=
    }    =0A=
    var offsets =3D Position.cumulativeOffset(dropon);=0A=
    Sortable._marker.style.left =3D offsets[0] + 'px';=0A=
    Sortable._marker.style.top =3D offsets[1] + 'px';=0A=
    =0A=
    if(position=3D=3D'after')=0A=
      if(sortable.overlap =3D=3D 'horizontal') =0A=
        Sortable._marker.style.left =3D (offsets[0]+dropon.clientWidth) =
+ 'px';=0A=
      else=0A=
        Sortable._marker.style.top =3D (offsets[1]+dropon.clientHeight) =
+ 'px';=0A=
    =0A=
    Element.show(Sortable._marker);=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: new Array,=0A=
        position: parent.children.length,=0A=
        container: Sortable._findChildrenElement(children[i], =
options.treeTag.toUpperCase())=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=
  /* Finds the first element of the given tag type within a parent =
element.=0A=
    Used for finding the first LI[ST] within a L[IST]I[TEM].*/=0A=
  _findChildrenElement: function (element, containerTag) {=0A=
    if (element && element.hasChildNodes)=0A=
      for (var i =3D 0; i < element.childNodes.length; ++i)=0A=
        if (element.childNodes[i].tagName =3D=3D containerTag)=0A=
          return element.childNodes[i];=0A=
  =0A=
    return null;=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: new Array,=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) + "=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=
=0A=
  if (child.parentNode =3D=3D element) return true;=0A=
=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=
  if (type =3D=3D 'vertical' || type =3D=3D 'height')=0A=
    return element.offsetHeight;=0A=
  else=0A=
    return element.offsetWidth;=0A=
}
------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://six.static.jamglue.com/javascripts/controls.js?20062007

// Copyright (c) 2005 Thomas Fuchs (http://script.aculo.us, =
http://mir.aculo.us)=0A=
//           (c) 2005 Ivan Krstic (http://blogs.law.harvard.edu/ivan)=0A=
//           (c) 2005 Jon Tirsen (http://www.tirsen.com)=0A=
// Contributors:=0A=
//  Richard Livsey=0A=
//  Rahul Bhargava=0A=
//  Rob Wills=0A=
// =0A=
// See scriptaculous.js for full license.=0A=
=0A=
// Autocompleter.Base handles all the autocompletion functionality =0A=
// that's independent of the data source for autocompletion. This=0A=
// includes drawing the autocompletion menu, observing keyboard=0A=
// and mouse events, and similar.=0A=
//=0A=
// Specific autocompleters need to provide, at the very least, =0A=
// a getUpdatedChoices function that will be invoked every time=0A=
// the text inside the monitored textbox changes. This method =0A=
// should get the text for which to provide autocompletion by=0A=
// invoking this.getToken(), NOT by directly accessing=0A=
// this.element.value. This is to allow incremental tokenized=0A=
// autocompletion. Specific auto-completion logic (AJAX, etc)=0A=
// belongs in getUpdatedChoices.=0A=
//=0A=
// Tokenized incremental autocompletion is enabled automatically=0A=
// when an autocompleter is instantiated with the 'tokens' option=0A=
// in the options parameter, e.g.:=0A=
// new Ajax.Autocompleter('id','upd', '/url/', { tokens: ',' });=0A=
// will incrementally autocomplete with a comma as the token.=0A=
// Additionally, ',' in the above example can be replaced with=0A=
// a token array, e.g. { tokens: [',', '\n'] } which=0A=
// enables autocompletion on multiple tokens. This is most =0A=
// useful when one of the tokens is \n (a newline), as it =0A=
// allows smart autocompletion after linebreaks.=0A=
=0A=
var Autocompleter =3D {}=0A=
Autocompleter.Base =3D function() {};=0A=
Autocompleter.Base.prototype =3D {=0A=
  baseInitialize: function(element, update, options) {=0A=
    this.element     =3D $(element); =0A=
    this.update      =3D $(update);  =0A=
    this.hasFocus    =3D false; =0A=
    this.changed     =3D false; =0A=
    this.active      =3D false; =0A=
    this.index       =3D 0;     =0A=
    this.entryCount  =3D 0;=0A=
=0A=
    if (this.setOptions)=0A=
      this.setOptions(options);=0A=
    else=0A=
      this.options =3D options || {};=0A=
=0A=
    this.options.paramName    =3D this.options.paramName || =
this.element.name;=0A=
    this.options.tokens       =3D this.options.tokens || [];=0A=
    this.options.frequency    =3D this.options.frequency || 0.4;=0A=
    this.options.minChars     =3D this.options.minChars || 1;=0A=
    this.options.onShow       =3D this.options.onShow || =0A=
    function(element, update){ =0A=
      if(!update.style.position || =
update.style.position=3D=3D'absolute') {=0A=
        update.style.position =3D 'absolute';=0A=
        Position.clone(element, update, {setHeight: false, offsetTop: =
element.offsetHeight});=0A=
      }=0A=
      Effect.Appear(update,{duration:0.15});=0A=
    };=0A=
    this.options.onHide =3D this.options.onHide || =0A=
    function(element, update){ new Effect.Fade(update,{duration:0.15}) };=0A=
=0A=
    if (typeof(this.options.tokens) =3D=3D 'string') =0A=
      this.options.tokens =3D new Array(this.options.tokens);=0A=
=0A=
    this.observer =3D null;=0A=
    =0A=
    this.element.setAttribute('autocomplete','off');=0A=
=0A=
    Element.hide(this.update);=0A=
=0A=
    Event.observe(this.element, "blur", =
this.onBlur.bindAsEventListener(this));=0A=
    Event.observe(this.element, "keypress", =
this.onKeyPress.bindAsEventListener(this));=0A=
  },=0A=
=0A=
  show: function() {=0A=
    if(Element.getStyle(this.update, 'display')=3D=3D'none') =
this.options.onShow(this.element, this.update);=0A=
    if(!this.iefix && =0A=
      (navigator.appVersion.indexOf('MSIE')>0) &&=0A=
      (navigator.userAgent.indexOf('Opera')<0) &&=0A=
      (Element.getStyle(this.update, 'position')=3D=3D'absolute')) {=0A=
      new Insertion.After(this.update, =0A=
       '<iframe id=3D"' + this.update.id + '_iefix" '+=0A=
       =
'style=3D"display:none;position:absolute;filter:progid:DXImageTransform.M=
icrosoft.Alpha(opacity=3D0);" ' +=0A=
       'src=3D"javascript:false;" frameborder=3D"0" =
scrolling=3D"no"></iframe>');=0A=
      this.iefix =3D $(this.update.id+'_iefix');=0A=
    }=0A=
    if(this.iefix) setTimeout(this.fixIEOverlapping.bind(this), 50);=0A=
  },=0A=
  =0A=
  fixIEOverlapping: function() {=0A=
    Position.clone(this.update, this.iefix);=0A=
    this.iefix.style.zIndex =3D 1;=0A=
    this.update.style.zIndex =3D 2;=0A=
    Element.show(this.iefix);=0A=
  },=0A=
=0A=
  hide: function() {=0A=
    this.stopIndicator();=0A=
    if(Element.getStyle(this.update, 'display')!=3D'none') =
this.options.onHide(this.element, this.update);=0A=
    if(this.iefix) Element.hide(this.iefix);=0A=
  },=0A=
=0A=
  startIndicator: function() {=0A=
    if(this.options.indicator) Element.show(this.options.indicator);=0A=
  },=0A=
=0A=
  stopIndicator: function() {=0A=
    if(this.options.indicator) Element.hide(this.options.indicator);=0A=
  },=0A=
=0A=
  onKeyPress: function(event) {=0A=
    if(this.active)=0A=
      switch(event.keyCode) {=0A=
       case Event.KEY_TAB:=0A=
       case Event.KEY_RETURN:=0A=
         this.selectEntry();=0A=
         Event.stop(event);=0A=
       case Event.KEY_ESC:=0A=
         this.hide();=0A=
         this.active =3D false;=0A=
         Event.stop(event);=0A=
         return;=0A=
       case Event.KEY_LEFT:=0A=
       case Event.KEY_RIGHT:=0A=
         return;=0A=
       case Event.KEY_UP:=0A=
         this.markPrevious();=0A=
         this.render();=0A=
         if(navigator.appVersion.indexOf('AppleWebKit')>0) =
Event.stop(event);=0A=
         return;=0A=
       case Event.KEY_DOWN:=0A=
         this.markNext();=0A=
         this.render();=0A=
         if(navigator.appVersion.indexOf('AppleWebKit')>0) =
Event.stop(event);=0A=
         return;=0A=
      }=0A=
     else =0A=
       if(event.keyCode=3D=3DEvent.KEY_TAB || =
event.keyCode=3D=3DEvent.KEY_RETURN || =0A=
         (navigator.appVersion.indexOf('AppleWebKit') > 0 && =
event.keyCode =3D=3D 0)) return;=0A=
=0A=
    this.changed =3D true;=0A=
    this.hasFocus =3D true;=0A=
=0A=
    if(this.observer) clearTimeout(this.observer);=0A=
      this.observer =3D =0A=
        setTimeout(this.onObserverEvent.bind(this), =
this.options.frequency*1000);=0A=
  },=0A=
=0A=
  activate: function() {=0A=
    this.changed =3D false;=0A=
    this.hasFocus =3D true;=0A=
    this.getUpdatedChoices();=0A=
  },=0A=
=0A=
  onHover: function(event) {=0A=
    var element =3D Event.findElement(event, 'LI');=0A=
    if(this.index !=3D element.autocompleteIndex) =0A=
    {=0A=
        this.index =3D element.autocompleteIndex;=0A=
        this.render();=0A=
    }=0A=
    Event.stop(event);=0A=
  },=0A=
  =0A=
  onClick: function(event) {=0A=
    var element =3D Event.findElement(event, 'LI');=0A=
    this.index =3D element.autocompleteIndex;=0A=
    this.selectEntry();=0A=
    this.hide();=0A=
  },=0A=
  =0A=
  onBlur: function(event) {=0A=
    // needed to make click events working=0A=
    setTimeout(this.hide.bind(this), 250);=0A=
    this.hasFocus =3D false;=0A=
    this.active =3D false;     =0A=
  }, =0A=
  =0A=
  render: function() {=0A=
    if(this.entryCount > 0) {=0A=
      for (var i =3D 0; i < this.entryCount; i++)=0A=
        this.index=3D=3Di ? =0A=
          Element.addClassName(this.getEntry(i),"selected") : =0A=
          Element.removeClassName(this.getEntry(i),"selected");=0A=
        =0A=
      if(this.hasFocus) { =0A=
        this.show();=0A=
        this.active =3D true;=0A=
      }=0A=
    } else {=0A=
      this.active =3D false;=0A=
      this.hide();=0A=
    }=0A=
  },=0A=
  =0A=
  markPrevious: function() {=0A=
    if(this.index > 0) this.index--=0A=
      else this.index =3D this.entryCount-1;=0A=
  },=0A=
  =0A=
  markNext: function() {=0A=
    if(this.index < this.entryCount-1) this.index++=0A=
      else this.index =3D 0;=0A=
  },=0A=
  =0A=
  getEntry: function(index) {=0A=
    return this.update.firstChild.childNodes[index];=0A=
  },=0A=
  =0A=
  getCurrentEntry: function() {=0A=
    return this.getEntry(this.index);=0A=
  },=0A=
  =0A=
  selectEntry: function() {=0A=
    this.active =3D false;=0A=
    this.updateElement(this.getCurrentEntry());=0A=
  },=0A=
=0A=
  updateElement: function(selectedElement) {=0A=
    if (this.options.updateElement) {=0A=
      this.options.updateElement(selectedElement);=0A=
      return;=0A=
    }=0A=
    var value =3D '';=0A=
    if (this.options.select) {=0A=
      var nodes =3D document.getElementsByClassName(this.options.select, =
selectedElement) || [];=0A=
      if(nodes.length>0) value =3D Element.collectTextNodes(nodes[0], =
this.options.select);=0A=
    } else=0A=
      value =3D Element.collectTextNodesIgnoreClass(selectedElement, =
'informal');=0A=
    =0A=
    var lastTokenPos =3D this.findLastToken();=0A=
    if (lastTokenPos !=3D -1) {=0A=
      var newValue =3D this.element.value.substr(0, lastTokenPos + 1);=0A=
      var whitespace =3D this.element.value.substr(lastTokenPos + =
1).match(/^\s+/);=0A=
      if (whitespace)=0A=
        newValue +=3D whitespace[0];=0A=
      this.element.value =3D newValue + value;=0A=
    } else {=0A=
      this.element.value =3D value;=0A=
    }=0A=
    this.element.focus();=0A=
    =0A=
    if (this.options.afterUpdateElement)=0A=
      this.options.afterUpdateElement(this.element, selectedElement);=0A=
  },=0A=
=0A=
  updateChoices: function(choices) {=0A=
    if(!this.changed && this.hasFocus) {=0A=
      this.update.innerHTML =3D choices;=0A=
      Element.cleanWhitespace(this.update);=0A=
      Element.cleanWhitespace(this.update.firstChild);=0A=
=0A=
      if(this.update.firstChild && this.update.firstChild.childNodes) {=0A=
        this.entryCount =3D =0A=
          this.update.firstChild.childNodes.length;=0A=
        for (var i =3D 0; i < this.entryCount; i++) {=0A=
          var entry =3D this.getEntry(i);=0A=
          entry.autocompleteIndex =3D i;=0A=
          this.addObservers(entry);=0A=
        }=0A=
      } else { =0A=
        this.entryCount =3D 0;=0A=
      }=0A=
=0A=
      this.stopIndicator();=0A=
=0A=
      this.index =3D 0;=0A=
      this.render();=0A=
    }=0A=
  },=0A=
=0A=
  addObservers: function(element) {=0A=
    Event.observe(element, "mouseover", =
this.onHover.bindAsEventListener(this));=0A=
    Event.observe(element, "click", =
this.onClick.bindAsEventListener(this));=0A=
  },=0A=
=0A=
  onObserverEvent: function() {=0A=
    this.changed =3D false;   =0A=
    if(this.getToken().length>=3Dthis.options.minChars) {=0A=
      this.startIndicator();=0A=
      this.getUpdatedChoices();=0A=
    } else {=0A=
      this.active =3D false;=0A=
      this.hide();=0A=
    }=0A=
  },=0A=
=0A=
  getToken: function() {=0A=
    var tokenPos =3D this.findLastToken();=0A=
    if (tokenPos !=3D -1)=0A=
      var ret =3D this.element.value.substr(tokenPos + =
1).replace(/^\s+/,'').replace(/\s+$/,'');=0A=
    else=0A=
      var ret =3D this.element.value;=0A=
=0A=
    return /\n/.test(ret) ? '' : ret;=0A=
  },=0A=
=0A=
  findLastToken: function() {=0A=
    var lastTokenPos =3D -1;=0A=
=0A=
    for (var i=3D0; i<this.options.tokens.length; i++) {=0A=
      var thisTokenPos =3D =
this.element.value.lastIndexOf(this.options.tokens[i]);=0A=
      if (thisTokenPos > lastTokenPos)=0A=
        lastTokenPos =3D thisTokenPos;=0A=
    }=0A=
    return lastTokenPos;=0A=
  }=0A=
}=0A=
=0A=
Ajax.Autocompleter =3D Class.create();=0A=
Object.extend(Object.extend(Ajax.Autocompleter.prototype, =
Autocompleter.Base.prototype), {=0A=
  initialize: function(element, update, url, options) {=0A=
    this.baseInitialize(element, update, options);=0A=
    this.options.asynchronous  =3D true;=0A=
    this.options.onComplete    =3D this.onComplete.bind(this);=0A=
    this.options.defaultParams =3D this.options.parameters || null;=0A=
    this.url                   =3D url;=0A=
  },=0A=
=0A=
  getUpdatedChoices: function() {=0A=
    entry =3D encodeURIComponent(this.options.paramName) + '=3D' + =0A=
      encodeURIComponent(this.getToken());=0A=
=0A=
    this.options.parameters =3D this.options.callback ?=0A=
      this.options.callback(this.element, entry) : entry;=0A=
=0A=
    if(this.options.defaultParams) =0A=
      this.options.parameters +=3D '&' + this.options.defaultParams;=0A=
=0A=
    new Ajax.Request(this.url, this.options);=0A=
  },=0A=
=0A=
  onComplete: function(request) {=0A=
    this.updateChoices(request.responseText);=0A=
  }=0A=
=0A=
});=0A=
=0A=
// The local array autocompleter. Used when you'd prefer to=0A=
// inject an array of autocompletion options into the page, rather=0A=
// than sending out Ajax queries, which can be quite slow sometimes.=0A=
//=0A=
// The constructor takes four parameters. The first two are, as usual,=0A=
// the id of the monitored textbox, and id of the autocompletion menu.=0A=
// The third is the array you want to autocomplete from, and the fourth=0A=
// is the options block.=0A=
//=0A=
// Extra local autocompletion options:=0A=
// - choices - How many autocompletion choices to offer=0A=
//=0A=
// - partialSearch - If false, the autocompleter will match entered=0A=
//                    text only at the beginning of strings in the =0A=
//                    autocomplete array. Defaults to true, which will=0A=
//                    match text at the beginning of any *word* in the=0A=
//                    strings in the autocomplete array. If you want to=0A=
//                    search anywhere in the string, additionally set=0A=
//                    the option fullSearch to true (default: off).=0A=
//=0A=
// - fullSsearch - Search anywhere in autocomplete array strings.=0A=
//=0A=
// - partialChars - How many characters to enter before triggering=0A=
//                   a partial match (unlike minChars, which defines=0A=
//                   how many characters are required to do any match=0A=
//                   at all). Defaults to 2.=0A=
//=0A=
// - ignoreCase - Whether to ignore case when autocompleting.=0A=
//                 Defaults to true.=0A=
//=0A=
// It's possible to pass in a custom function as the 'selector' =0A=
// option, if you prefer to write your own autocompletion logic.=0A=
// In that case, the other options above will not apply unless=0A=
// you support them.=0A=
=0A=
Autocompleter.Local =3D Class.create();=0A=
Autocompleter.Local.prototype =3D Object.extend(new =
Autocompleter.Base(), {=0A=
  initialize: function(element, update, array, options) {=0A=
    this.baseInitialize(element, update, options);=0A=
    this.options.array =3D array;=0A=
  },=0A=
=0A=
  getUpdatedChoices: function() {=0A=
    this.updateChoices(this.options.selector(this));=0A=
  },=0A=
=0A=
  setOptions: function(options) {=0A=
    this.options =3D Object.extend({=0A=
      choices: 10,=0A=
      partialSearch: true,=0A=
      partialChars: 2,=0A=
      ignoreCase: true,=0A=
      fullSearch: false,=0A=
      selector: function(instance) {=0A=
        var ret       =3D []; // Beginning matches=0A=
        var partial   =3D []; // Inside matches=0A=
        var entry     =3D instance.getToken();=0A=
        var count     =3D 0;=0A=
=0A=
        for (var i =3D 0; i < instance.options.array.length &&  =0A=
          ret.length < instance.options.choices ; i++) { =0A=
=0A=
          var elem =3D instance.options.array[i];=0A=
          var foundPos =3D instance.options.ignoreCase ? =0A=
            elem.toLowerCase().indexOf(entry.toLowerCase()) : =0A=
            elem.indexOf(entry);=0A=
=0A=
          while (foundPos !=3D -1) {=0A=
            if (foundPos =3D=3D 0 && elem.length !=3D entry.length) { =0A=
              ret.push("<li><strong>" + elem.substr(0, entry.length) + =
"</strong>" + =0A=
                elem.substr(entry.length) + "</li>");=0A=
              break;=0A=
            } else if (entry.length >=3D instance.options.partialChars =
&& =0A=
              instance.options.partialSearch && foundPos !=3D -1) {=0A=
              if (instance.options.fullSearch || =
/\s/.test(elem.substr(foundPos-1,1))) {=0A=
                partial.push("<li>" + elem.substr(0, foundPos) + =
"<strong>" +=0A=
                  elem.substr(foundPos, entry.length) + "</strong>" + =
elem.substr(=0A=
                  foundPos + entry.length) + "</li>");=0A=
                break;=0A=
              }=0A=
            }=0A=
=0A=
            foundPos =3D instance.options.ignoreCase ? =0A=
              elem.toLowerCase().indexOf(entry.toLowerCase(), foundPos + =
1) : =0A=
              elem.indexOf(entry, foundPos + 1);=0A=
=0A=
          }=0A=
        }=0A=
        if (partial.length)=0A=
          ret =3D ret.concat(partial.slice(0, instance.options.choices - =
ret.length))=0A=
        return "<ul>" + ret.join('') + "</ul>";=0A=
      }=0A=
    }, options || {});=0A=
  }=0A=
});=0A=
=0A=
// AJAX in-place editor=0A=
//=0A=
// see documentation on =
http://wiki.script.aculo.us/scriptaculous/show/Ajax.InPlaceEditor=0A=
=0A=
// Use this if you notice weird scrolling problems on some browsers,=0A=
// the DOM might be a bit confused when this gets called so do this=0A=
// waits 1 ms (with setTimeout) until it does the activation=0A=
Field.scrollFreeActivate =3D function(field) {=0A=
  setTimeout(function() {=0A=
    Field.activate(field);=0A=
  }, 1);=0A=
}=0A=
=0A=
Ajax.InPlaceEditor =3D Class.create();=0A=
Ajax.InPlaceEditor.defaultHighlightColor =3D "#FFFF99";=0A=
Ajax.InPlaceEditor.prototype =3D {=0A=
  initialize: function(element, url, options) {=0A=
    this.url =3D url;=0A=
    this.element =3D $(element);=0A=
=0A=
    this.options =3D Object.extend({=0A=
      okButton: true,=0A=
      okText: "ok",=0A=
      cancelLink: true,=0A=
      cancelText: "cancel",=0A=
      savingText: "Saving...",=0A=
      clickToEditText: "Click to edit",=0A=
      okText: "ok",=0A=
      rows: 1,=0A=
      onComplete: function(transport, element) {=0A=
        new Effect.Highlight(element, {startcolor: =
this.options.highlightcolor});=0A=
      },=0A=
      onFailure: function(transport) {=0A=
        alert("Error communicating with the server: " + =
transport.responseText.stripTags());=0A=
      },=0A=
      callback: function(form) {=0A=
        return Form.serialize(form);=0A=
      },=0A=
      handleLineBreaks: true,=0A=
      loadingText: 'Loading...',=0A=
      emptyText: '[click to add]',=0A=
      savingClassName: 'inplaceeditor-saving',=0A=
      loadingClassName: 'inplaceeditor-loading',=0A=
      formClassName: 'inplaceeditor-form',=0A=
      highlightcolor: Ajax.InPlaceEditor.defaultHighlightColor,=0A=
      highlightendcolor: "#FFFFFF",=0A=
      externalControl: null,=0A=
      submitOnBlur: false,=0A=
      ajaxOptions: {},=0A=
      evalScripts: false=0A=
    }, options || {});=0A=
=0A=
    if(!this.options.formId && this.element.id) {=0A=
      this.options.formId =3D this.element.id + "-inplaceeditor";=0A=
      if ($(this.options.formId)) {=0A=
        // there's already a form with that name, don't specify an id=0A=
        this.options.formId =3D null;=0A=
      }=0A=
    }=0A=
    =0A=
    if (this.options.externalControl) {=0A=
      this.options.externalControl =3D $(this.options.externalControl);=0A=
    }=0A=
    =0A=
    this.originalBackground =3D Element.getStyle(this.element, =
'background-color');=0A=
    if (!this.originalBackground) {=0A=
      this.originalBackground =3D "transparent";=0A=
    }=0A=
    =0A=
    this.element.title =3D this.options.clickToEditText;=0A=
    =0A=
    this.onclickListener =3D =
this.enterEditMode.bindAsEventListener(this);=0A=
    this.mouseoverListener =3D this.enterHover.bindAsEventListener(this);=0A=
    this.mouseoutListener =3D this.leaveHover.bindAsEventListener(this);=0A=
    Event.observe(this.element, 'click', this.onclickListener);=0A=
    Event.observe(this.element, 'mouseover', this.mouseoverListener);=0A=
    Event.observe(this.element, 'mouseout', this.mouseoutListener);=0A=
    if (this.options.externalControl) {=0A=
      Event.observe(this.options.externalControl, 'click', =
this.onclickListener);=0A=
      Event.observe(this.options.externalControl, 'mouseover', =
this.mouseoverListener);=0A=
      Event.observe(this.options.externalControl, 'mouseout', =
this.mouseoutListener);=0A=
    }=0A=
  },=0A=
  enterEditMode: function(evt) {=0A=
    if (this.saving) return;=0A=
    if (this.editing) return;=0A=
    this.editing =3D true;=0A=
    this.onEnterEditMode();=0A=
    if (this.options.externalControl) {=0A=
      Element.hide(this.options.externalControl);=0A=
    }=0A=
    Element.hide(this.element);=0A=
    this.createForm();=0A=
    this.element.parentNode.insertBefore(this.form, this.element);=0A=
    Field.scrollFreeActivate(this.editField);=0A=
    // stop the event to avoid a page refresh in Safari=0A=
    if (evt) {=0A=
      Event.stop(evt);=0A=
    }=0A=
    return false;=0A=
  },=0A=
  createForm: function() {=0A=
    this.form =3D document.createElement("form");=0A=
    this.form.id =3D this.options.formId;=0A=
    Element.addClassName(this.form, this.options.formClassName)=0A=
    this.form.onsubmit =3D this.onSubmit.bind(this);=0A=
=0A=
    this.createEditField();=0A=
=0A=
    if (this.options.textarea) {=0A=
      var br =3D document.createElement("br");=0A=
      this.form.appendChild(br);=0A=
    }=0A=
=0A=
    if (this.options.okButton) {=0A=
      okButton =3D document.createElement("input");=0A=
      okButton.type =3D "submit";=0A=
      okButton.value =3D this.options.okText;=0A=
      okButton.className =3D 'editor_ok_button';=0A=
      this.form.appendChild(okButton);=0A=
    }=0A=
=0A=
    if (this.options.cancelLink) {=0A=
      cancelLink =3D document.createElement("a");=0A=
      cancelLink.href =3D "#";=0A=
      =
cancelLink.appendChild(document.createTextNode(this.options.cancelText));=0A=
      cancelLink.onclick =3D this.onclickCancel.bind(this);=0A=
      cancelLink.className =3D 'editor_cancel';      =0A=
      this.form.appendChild(cancelLink);=0A=
    }=0A=
  },=0A=
  hasHTMLLineBreaks: function(string) {=0A=
    if (!this.options.handleLineBreaks) return false;=0A=
    return string.match(/<br/i) || string.match(/<p>/i);=0A=
  },=0A=
  convertHTMLLineBreaks: function(string) {=0A=
    return string.replace(/<br>/gi, "\n").replace(/<br\/>/gi, =
"\n").replace(/<\/p>/gi, "\n").replace(/<p>/gi, "");=0A=
  },=0A=
  createEditField: function() {=0A=
    var text;=0A=
    if(this.options.loadTextURL) {=0A=
      text =3D this.options.loadingText;=0A=
    } else {=0A=
      text =3D this.getText();=0A=
    }=0A=
=0A=
    var obj =3D this;=0A=
    =0A=
    if (this.options.rows =3D=3D 1 && !this.hasHTMLLineBreaks(text)) {=0A=
      this.options.textarea =3D false;=0A=
      var textField =3D document.createElement("input");=0A=
      textField.obj =3D this;=0A=
      textField.type =3D "text";=0A=
      textField.name =3D "value";=0A=
      textField.value =3D text;=0A=
      textField.style.backgroundColor =3D this.options.highlightcolor;=0A=
      textField.className =3D 'editor_field';=0A=
      var size =3D this.options.size || this.options.cols || 0;=0A=
      if (size !=3D 0) textField.size =3D size;=0A=
      if (this.options.submitOnBlur)=0A=
        textField.onblur =3D this.onSubmit.bind(this);=0A=
      this.editField =3D textField;=0A=
    } else {=0A=
      this.options.textarea =3D true;=0A=
      var textArea =3D document.createElement("textarea");=0A=
      textArea.obj =3D this;=0A=
      textArea.name =3D "value";=0A=
      textArea.value =3D this.convertHTMLLineBreaks(text);=0A=
      textArea.rows =3D this.options.rows;=0A=
      textArea.cols =3D this.options.cols || 40;=0A=
      textArea.className =3D 'editor_field';      =0A=
      if (this.options.submitOnBlur)=0A=
        textArea.onblur =3D this.onSubmit.bind(this);=0A=
      this.editField =3D textArea;=0A=
    }=0A=
    =0A=
    if(this.options.loadTextURL) {=0A=
      this.loadExternalText();=0A=
    }=0A=
    this.form.appendChild(this.editField);=0A=
  },=0A=
  getText: function() {=0A=
    return this.element.innerHTML;=0A=
  },=0A=
  loadExternalText: function() {=0A=
    Element.addClassName(this.form, this.options.loadingClassName);=0A=
    this.editField.disabled =3D true;=0A=
    new Ajax.Request(=0A=
      this.options.loadTextURL,=0A=
      Object.extend({=0A=
        asynchronous: true,=0A=
        onComplete: this.onLoadedExternalText.bind(this)=0A=
      }, this.options.ajaxOptions)=0A=
    );=0A=
  },=0A=
  onLoadedExternalText: function(transport) {=0A=
    Element.removeClassName(this.form, this.options.loadingClassName);=0A=
    this.editField.disabled =3D false;=0A=
    this.editField.value =3D transport.responseText.stripTags();=0A=
  },=0A=
  onclickCancel: function() {=0A=
    this.onComplete();=0A=
    this.leaveEditMode();=0A=
    return false;=0A=
  },=0A=
  onFailure: function(transport) {=0A=
    this.options.onFailure(transport);=0A=
    if (this.oldInnerHTML) {=0A=
      this.element.innerHTML =3D this.oldInnerHTML;=0A=
      this.oldInnerHTML =3D null;=0A=
    }=0A=
    return false;=0A=
  },=0A=
  onSubmit: function() {=0A=
    // onLoading resets these so we need to save them away for the Ajax =
call=0A=
    var form =3D this.form;=0A=
    var value =3D this.editField.value;=0A=
    =0A=
    // do this first, sometimes the ajax call returns before we get a =
chance to switch on Saving...=0A=
    // which means this will actually switch on Saving... *after* we've =
left edit mode causing Saving...=0A=
    // to be displayed indefinitely=0A=
    this.onLoading();=0A=
    =0A=
    if (this.options.evalScripts) {=0A=
      new Ajax.Request(=0A=
        this.url, Object.extend({=0A=
          parameters: this.options.callback(form, value),=0A=
          onComplete: this.onComplete.bind(this),=0A=
          onFailure: this.onFailure.bind(this),=0A=
          asynchronous:true, =0A=
          evalScripts:true=0A=
        }, this.options.ajaxOptions));=0A=
    } else  {=0A=
      new Ajax.Updater(=0A=
        { success: this.element,=0A=
          // don't update on failure (this could be an option)=0A=
          failure: null }, =0A=
        this.url, Object.extend({=0A=
          parameters: this.options.callback(form, value),=0A=
          onComplete: this.onComplete.bind(this),=0A=
          onFailure: this.onFailure.bind(this)=0A=
        }, this.options.ajaxOptions));=0A=
    }=0A=
    // stop the event to avoid a page refresh in Safari=0A=
    if (arguments.length > 1) {=0A=
      Event.stop(arguments[0]);=0A=
    }=0A=
    return false;=0A=
  },=0A=
  onLoading: function() {=0A=
    this.saving =3D true;=0A=
    this.removeForm();=0A=
    this.leaveHover();=0A=
    this.showSaving();=0A=
  },=0A=
  showSaving: function() {=0A=
    this.oldInnerHTML =3D this.element.innerHTML;=0A=
    this.element.innerHTML =3D this.options.savingText;=0A=
    Element.addClassName(this.element, this.options.savingClassName);=0A=
    this.element.style.backgroundColor =3D this.originalBackground;=0A=
    Element.show(this.element);=0A=
  },=0A=
  removeForm: function() {=0A=
    if(this.form) {=0A=
      if (this.form.parentNode) Element.remove(this.form);=0A=
      this.form =3D null;=0A=
    }=0A=
  },=0A=
  enterHover: function() {=0A=
    if (this.saving) return;=0A=
    this.element.style.backgroundColor =3D this.options.highlightcolor;=0A=
    if (this.effect) {=0A=
      this.effect.cancel();=0A=
    }=0A=
    Element.addClassName(this.element, this.options.hoverClassName)=0A=
  },=0A=
  leaveHover: function() {=0A=
    if (this.options.backgroundColor) {=0A=
      this.element.style.backgroundColor =3D this.oldBackground;=0A=
    }=0A=
    Element.removeClassName(this.element, this.options.hoverClassName)=0A=
    if (this.saving) return;=0A=
    this.effect =3D new Effect.Highlight(this.element, {=0A=
      startcolor: this.options.highlightcolor,=0A=
      endcolor: this.options.highlightendcolor,=0A=
      restorecolor: this.originalBackground=0A=
    });=0A=
  },=0A=
  leaveEditMode: function() {=0A=
    Element.removeClassName(this.element, this.options.savingClassName);=0A=
    this.removeForm();=0A=
    this.leaveHover();=0A=
    this.element.style.backgroundColor =3D this.originalBackground;=0A=
    Element.show(this.element);=0A=
    if (this.options.externalControl) {=0A=
      Element.show(this.options.externalControl);=0A=
    }=0A=
    this.editing =3D false;=0A=
    this.saving =3D false;=0A=
    this.oldInnerHTML =3D null;=0A=
    this.onLeaveEditMode();=0A=
  },=0A=
  onComplete: function(transport) {=0A=
    this.leaveEditMode();=0A=
    this.options.onComplete.bind(this)(transport, this.element);=0A=
  },=0A=
  onEnterEditMode: function() {},=0A=
  onLeaveEditMode: function() {},=0A=
  dispose: function() {=0A=
    if (this.oldInnerHTML) {=0A=
      this.element.innerHTML =3D this.oldInnerHTML;=0A=
    }=0A=
    this.leaveEditMode();=0A=
    Event.stopObserving(this.element, 'click', this.onclickListener);=0A=
    Event.stopObserving(this.element, 'mouseover', =
this.mouseoverListener);=0A=
    Event.stopObserving(this.element, 'mouseout', this.mouseoutListener);=0A=
    if (this.options.externalControl) {=0A=
      Event.stopObserving(this.options.externalControl, 'click', =
this.onclickListener);=0A=
      Event.stopObserving(this.options.externalControl, 'mouseover', =
this.mouseoverListener);=0A=
      Event.stopObserving(this.options.externalControl, 'mouseout', =
this.mouseoutListener);=0A=
    }=0A=
  }=0A=
};=0A=
=0A=
Ajax.InPlaceCollectionEditor =3D Class.create();=0A=
Object.extend(Ajax.InPlaceCollectionEditor.prototype, =
Ajax.InPlaceEditor.prototype);=0A=
Object.extend(Ajax.InPlaceCollectionEditor.prototype, {=0A=
  createEditField: function() {=0A=
    if (!this.cached_selectTag) {=0A=
      var selectTag =3D document.createElement("select");=0A=
      var collection =3D this.options.collection || [];=0A=
      var optionTag;=0A=
      collection.each(function(e,i) {=0A=
        optionTag =3D document.createElement("option");=0A=
        optionTag.value =3D (e instanceof Array) ? e[0] : e;=0A=
        if(this.options.value=3D=3DoptionTag.value) optionTag.selected =
=3D true;=0A=
        optionTag.appendChild(document.createTextNode((e instanceof =
Array) ? e[1] : e));=0A=
        selectTag.appendChild(optionTag);=0A=
      }.bind(this));=0A=
      this.cached_selectTag =3D selectTag;=0A=
    }=0A=
=0A=
    this.editField =3D this.cached_selectTag;=0A=
    if(this.options.loadTextURL) this.loadExternalText();=0A=
    this.form.appendChild(this.editField);=0A=
    this.options.callback =3D function(form, value) {=0A=
      return "value=3D" + encodeURIComponent(value);=0A=
    }=0A=
  }=0A=
});=0A=
=0A=
// Delayed observer, like Form.Element.Observer, =0A=
// but waits for delay after last key input=0A=
// Ideal for live-search fields=0A=
=0A=
Form.Element.DelayedObserver =3D Class.create();=0A=
Form.Element.DelayedObserver.prototype =3D {=0A=
  initialize: function(element, delay, callback) {=0A=
    this.delay     =3D delay || 0.5;=0A=
    this.element   =3D $(element);=0A=
    this.callback  =3D callback;=0A=
    this.timer     =3D null;=0A=
    this.lastValue =3D $F(this.element); =0A=
    =
Event.observe(this.element,'keyup',this.delayedListener.bindAsEventListen=
er(this));=0A=
  },=0A=
  delayedListener: function(event) {=0A=
    if(this.lastValue =3D=3D $F(this.element)) return;=0A=
    if(this.timer) clearTimeout(this.timer);=0A=
    this.timer =3D setTimeout(this.onTimerEvent.bind(this), this.delay * =
1000);=0A=
    this.lastValue =3D $F(this.element);=0A=
  },=0A=
  onTimerEvent: function() {=0A=
    this.timer =3D null;=0A=
    this.callback(this.element, $F(this.element));=0A=
  }=0A=
};=0A=

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://six.static.jamglue.com/javascripts/application.js?20062007

// Place your application-specific JavaScript functions and classes here=0A=
// This file is automatically included by javascript_include_tag =
:defaults=0A=

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://six.static.jamglue.com/javascripts/swfobject.js?20062007

/**=0A=
 * SWFObject v1.4.4: Flash Player detection and embed - =
http://blog.deconcept.com/swfobject/=0A=
 *=0A=
 * SWFObject is (c) 2006 Geoff Stearns and is released under the MIT =
License:=0A=
 * http://www.opensource.org/licenses/mit-license.php=0A=
 *=0A=
 * **SWFObject is the SWF embed script formerly known as FlashObject. =
The name was changed for=0A=
 *   legal reasons.=0A=
 */=0A=
if(typeof deconcept =3D=3D "undefined") var deconcept =3D new Object();=0A=
if(typeof deconcept.util =3D=3D "undefined") deconcept.util =3D new =
Object();=0A=
if(typeof deconcept.SWFObjectUtil =3D=3D "undefined") =
deconcept.SWFObjectUtil =3D new Object();=0A=
deconcept.SWFObject =3D function(swf, id, w, h, ver, c, =
useExpressInstall, quality, xiRedirectUrl, redirectUrl, detectKey){=0A=
	if (!document.getElementById) { return; }=0A=
	this.DETECT_KEY =3D detectKey ? detectKey : 'detectflash';=0A=
	this.skipDetect =3D deconcept.util.getRequestParameter(this.DETECT_KEY);=0A=
	this.params =3D new Object();=0A=
	this.variables =3D new Object();=0A=
	this.attributes =3D new Array();=0A=
	if(swf) { this.setAttribute('swf', swf); }=0A=
	if(id) { this.setAttribute('id', id); }=0A=
	if(w) { this.setAttribute('width', w); }=0A=
	if(h) { this.setAttribute('height', h); }=0A=
	if(ver) { this.setAttribute('version', new =
deconcept.PlayerVersion(ver.toString().split("."))); }=0A=
	this.installedVer =3D deconcept.SWFObjectUtil.getPlayerVersion();=0A=
	if(c) { this.addParam('bgcolor', c); }=0A=
	var q =3D quality ? quality : 'high';=0A=
	this.addParam('quality', q);=0A=
	this.setAttribute('useExpressInstall', useExpressInstall);=0A=
	this.setAttribute('doExpressInstall', false);=0A=
	var xir =3D (xiRedirectUrl) ? xiRedirectUrl : window.location;=0A=
	this.setAttribute('xiRedirectUrl', xir);=0A=
	this.setAttribute('redirectUrl', '');=0A=
	if(redirectUrl) { this.setAttribute('redirectUrl', redirectUrl); }=0A=
}=0A=
deconcept.SWFObject.prototype =3D {=0A=
	setAttribute: function(name, value){=0A=
		this.attributes[name] =3D value;=0A=
	},=0A=
	getAttribute: function(name){=0A=
		return this.attributes[name];=0A=
	},=0A=
	addParam: function(name, value){=0A=
		this.params[name] =3D value;=0A=
	},=0A=
	getParams: function(){=0A=
		return this.params;=0A=
	},=0A=
	addVariable: function(name, value){=0A=
		this.variables[name] =3D value;=0A=
	},=0A=
	getVariable: function(name){=0A=
		return this.variables[name];=0A=
	},=0A=
	getVariables: function(){=0A=
		return this.variables;=0A=
	},=0A=
	getVariablePairs: function(){=0A=
		var variablePairs =3D new Array();=0A=
		var key;=0A=
		var variables =3D this.getVariables();=0A=
		for(key in variables){=0A=
			variablePairs.push(key +"=3D"+ variables[key]);=0A=
		}=0A=
		return variablePairs;=0A=
	},=0A=
	getSWFHTML: function() {=0A=
		var swfNode =3D "";=0A=
		if (navigator.plugins && navigator.mimeTypes && =
navigator.mimeTypes.length) { // netscape plugin architecture=0A=
			if (this.getAttribute("doExpressInstall")) { =
this.addVariable("MMplayerType", "PlugIn"); }=0A=
			swfNode =3D '<embed type=3D"application/x-shockwave-flash" src=3D"'+ =
this.getAttribute('swf') +'" width=3D"'+ this.getAttribute('width') +'" =
height=3D"'+ this.getAttribute('height') +'"';=0A=
			swfNode +=3D ' id=3D"'+ this.getAttribute('id') +'" name=3D"'+ =
this.getAttribute('id') +'" ';=0A=
			var params =3D this.getParams();=0A=
			 for(var key in params){ swfNode +=3D [key] +'=3D"'+ params[key] +'" =
'; }=0A=
			var pairs =3D this.getVariablePairs().join("&");=0A=
			 if (pairs.length > 0){ swfNode +=3D 'flashvars=3D"'+ pairs +'"'; }=0A=
			swfNode +=3D '/>';=0A=
		} else { // PC IE=0A=
			if (this.getAttribute("doExpressInstall")) { =
this.addVariable("MMplayerType", "ActiveX"); }=0A=
			swfNode =3D '<object id=3D"'+ this.getAttribute('id') +'" =
classid=3D"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width=3D"'+ =
this.getAttribute('width') +'" height=3D"'+ this.getAttribute('height') =
+'">';=0A=
			swfNode +=3D '<param name=3D"movie" value=3D"'+ =
this.getAttribute('swf') +'" />';=0A=
			var params =3D this.getParams();=0A=
			for(var key in params) {=0A=
			 swfNode +=3D '<param name=3D"'+ key +'" value=3D"'+ params[key] +'" =
/>';=0A=
			}=0A=
			var pairs =3D this.getVariablePairs().join("&");=0A=
			if(pairs.length > 0) {swfNode +=3D '<param name=3D"flashvars" =
value=3D"'+ pairs +'" />';}=0A=
			swfNode +=3D "</object>";=0A=
		}=0A=
		return swfNode;=0A=
	},=0A=
	write: function(elementId){=0A=
		if(this.getAttribute('useExpressInstall')) {=0A=
			// check to see if we need to do an express install=0A=
			var expressInstallReqVer =3D new deconcept.PlayerVersion([6,0,65]);=0A=
			if (this.installedVer.versionIsValid(expressInstallReqVer) && =
!this.installedVer.versionIsValid(this.getAttribute('version'))) {=0A=
				this.setAttribute('doExpressInstall', true);=0A=
				this.addVariable("MMredirectURL", =
escape(this.getAttribute('xiRedirectUrl')));=0A=
				document.title =3D document.title.slice(0, 47) + " - Flash Player =
Installation";=0A=
				this.addVariable("MMdoctitle", document.title);=0A=
			}=0A=
		}=0A=
		if(this.skipDetect || this.getAttribute('doExpressInstall') || =
this.installedVer.versionIsValid(this.getAttribute('version'))){=0A=
			var n =3D (typeof elementId =3D=3D 'string') ? =
document.getElementById(elementId) : elementId;=0A=
			n.innerHTML =3D this.getSWFHTML();=0A=
			return true;=0A=
		}else{=0A=
			if(this.getAttribute('redirectUrl') !=3D "") {=0A=
				document.location.replace(this.getAttribute('redirectUrl'));=0A=
			}=0A=
		}=0A=
		return false;=0A=
	}=0A=
}=0A=
=0A=
/* ---- detection functions ---- */=0A=
deconcept.SWFObjectUtil.getPlayerVersion =3D function(){=0A=
	var PlayerVersion =3D new deconcept.PlayerVersion([0,0,0]);=0A=
	if(navigator.plugins && navigator.mimeTypes.length){=0A=
		var x =3D navigator.plugins["Shockwave Flash"];=0A=
		if(x && x.description) {=0A=
			PlayerVersion =3D new =
deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/, =
"").replace(/(\s+r|\s+b[0-9]+)/, ".").split("."));=0A=
		}=0A=
	}else{=0A=
		// do minor version lookup in IE, but avoid fp6 crashing issues=0A=
		// see =
http://blog.deconcept.com/2006/01/11/getvariable-setvariable-crash-intern=
et-explorer-flash-6/=0A=
		try{=0A=
			var axo =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");=0A=
		}catch(e){=0A=
			try {=0A=
				var axo =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");=0A=
				PlayerVersion =3D new deconcept.PlayerVersion([6,0,21]);=0A=
				axo.AllowScriptAccess =3D "always"; // throws if player version < =
6.0.47 (thanks to Michael Williams @ Adobe for this code)=0A=
			} catch(e) {=0A=
				if (PlayerVersion.major =3D=3D 6) {=0A=
					return PlayerVersion;=0A=
				}=0A=
			}=0A=
			try {=0A=
				axo =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash");=0A=
			} catch(e) {}=0A=
		}=0A=
		if (axo !=3D null) {=0A=
			PlayerVersion =3D new =
deconcept.PlayerVersion(axo.GetVariable("$version").split(" =
")[1].split(","));=0A=
		}=0A=
	}=0A=
	return PlayerVersion;=0A=
}=0A=
deconcept.PlayerVersion =3D function(arrVersion){=0A=
	this.major =3D arrVersion[0] !=3D null ? parseInt(arrVersion[0]) : 0;=0A=
	this.minor =3D arrVersion[1] !=3D null ? parseInt(arrVersion[1]) : 0;=0A=
	this.rev =3D arrVersion[2] !=3D null ? parseInt(arrVersion[2]) : 0;=0A=
}=0A=
deconcept.PlayerVersion.prototype.versionIsValid =3D function(fv){=0A=
	if(this.major < fv.major) return false;=0A=
	if(this.major > fv.major) return true;=0A=
	if(this.minor < fv.minor) return false;=0A=
	if(this.minor > fv.minor) return true;=0A=
	if(this.rev < fv.rev) return false;=0A=
	return true;=0A=
}=0A=
/* ---- get value of query string param ---- */=0A=
deconcept.util =3D {=0A=
	getRequestParameter: function(param) {=0A=
		var q =3D document.location.search || document.location.hash;=0A=
		if(q) {=0A=
			var pairs =3D q.substring(1).split("&");=0A=
			for (var i=3D0; i < pairs.length; i++) {=0A=
				if (pairs[i].substring(0, pairs[i].indexOf("=3D")) =3D=3D param) {=0A=
					return pairs[i].substring((pairs[i].indexOf("=3D")+1));=0A=
				}=0A=
			}=0A=
		}=0A=
		return "";=0A=
	}=0A=
}=0A=
/* fix for video streaming bug */=0A=
deconcept.SWFObjectUtil.cleanupSWFs =3D function() {=0A=
	if (window.opera || !document.all) return;=0A=
	var objects =3D document.getElementsByTagName("OBJECT");=0A=
	for (var i=3D0; i < objects.length; i++) {=0A=
		objects[i].style.display =3D 'none';=0A=
		for (var x in objects[i]) {=0A=
			if (typeof objects[i][x] =3D=3D 'function') {=0A=
				objects[i][x] =3D function(){};=0A=
			}=0A=
		}=0A=
	}=0A=
}=0A=
// fixes bug in fp9 see =
http://blog.deconcept.com/2006/07/28/swfobject-143-released/=0A=
deconcept.SWFObjectUtil.prepUnload =3D function() {=0A=
	__flash_unloadHandler =3D function(){};=0A=
	__flash_savedUnloadHandler =3D function(){};=0A=
	if (typeof window.onunload =3D=3D 'function') {=0A=
		var oldUnload =3D window.onunload;=0A=
		window.onunload =3D function() {=0A=
			deconcept.SWFObjectUtil.cleanupSWFs();=0A=
			oldUnload();=0A=
		}=0A=
	} else {=0A=
		window.onunload =3D deconcept.SWFObjectUtil.cleanupSWFs;=0A=
	}=0A=
}=0A=
if (typeof window.onbeforeunload =3D=3D 'function') {=0A=
	var oldBeforeUnload =3D window.onbeforeunload;=0A=
	window.onbeforeunload =3D function() {=0A=
		deconcept.SWFObjectUtil.prepUnload();=0A=
		oldBeforeUnload();=0A=
	}=0A=
} else {=0A=
	window.onbeforeunload =3D deconcept.SWFObjectUtil.prepUnload;=0A=
}=0A=
/* add Array.push if needed (ie5) */=0A=
if (Array.prototype.push =3D=3D null) { Array.prototype.push =3D =
function(item) { this[this.length] =3D item; return this.length; }}=0A=
=0A=
/* add some aliases for ease of use/backwards compatibility */=0A=
var getQueryParamValue =3D deconcept.util.getRequestParameter;=0A=
var FlashObject =3D deconcept.SWFObject; // for legacy support=0A=
var SWFObject =3D deconcept.SWFObject;=0A=

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://one.static.jamglue.com/javascripts/extensions.js?20062007

/*=0A=
 * InPlaceEditor extension that adds a 'click to edit' text when the =
field is =0A=
 * empty.=0A=
 *=0A=
 * Adapted from =
http://wiki.script.aculo.us/scriptaculous/show/Ajax.InPlaceEditor=0A=
 */=0A=
Ajax.InPlaceEditor.prototype.__initialize =3D =
Ajax.InPlaceEditor.prototype.initialize;=0A=
Ajax.InPlaceEditor.prototype.__getText =3D =
Ajax.InPlaceEditor.prototype.getText;=0A=
Ajax.InPlaceEditor.prototype.__onComplete =3D =
Ajax.InPlaceEditor.prototype.onComplete;=0A=
Ajax.InPlaceEditor.prototype =3D =
Object.extend(Ajax.InPlaceEditor.prototype, {=0A=
=0A=
    initialize: function(element, url, options){=0A=
        this.__initialize(element,url,options)=0A=
        this.setOptions(options);=0A=
        this._checkEmpty();=0A=
    },=0A=
=0A=
    setOptions: function(options){=0A=
        this.options =3D Object.extend(Object.extend(this.options,{=0A=
            emptyClassName: 'inplaceeditor-empty'=0A=
        }),options||{});=0A=
    },=0A=
=0A=
    _checkEmpty: function(){=0A=
        if( this.element.innerHTML.length =3D=3D 0 ){=0A=
            child =3D document.createElement("span");=0A=
            Element.addClassName(child, this.options.emptyClassName);=0A=
            child.innerHTML =3D this.options.emptyText;=0A=
            this.element.appendChild(child);=0A=
        }=0A=
    },=0A=
=0A=
    getText: function(){=0A=
        =
document.getElementsByClassName(this.options.emptyClassName,this.element)=
.each(function(child){=0A=
            this.element.removeChild(child);=0A=
        }.bind(this));=0A=
        return this.__getText();=0A=
    },=0A=
=0A=
    onComplete: function(transport){=0A=
        this._checkEmpty();=0A=
        this.__onComplete(transport);=0A=
    }=0A=
});=0A=

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://two.static.jamglue.com/javascripts/jamglue.js?20062007

function toggleMP3(img, url)=0A=
{=0A=
  // should we play=0A=
  if(img.src.match('play')) {=0A=
    // yes, start playing=0A=
    img.src=3D"/images/stop.gif";=0A=
    var span =3D document.createElement('span');=0A=
    span.innerHTML =3D  '<object =
classid=3D"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"' +=0A=
	=
'codebase=3D"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/sw=
flash.cab#version=3D6,0,0,0"' +=0A=
	'width=3D"50" height=3D"15" align=3D"middle" class=3D"player">' +=0A=
	'<param name=3D"allowScriptAccess" value=3D"sameDomain" />' +=0A=
	'<param name=3D"flashVars" value=3D"theLink=3D'+url+'" />' +=0A=
	'<param name=3D"movie" value=3D"/flash/mp3.swf" /><param =
name=3D"quality" value=3D"high" />' +=0A=
	'<param name=3D"bgcolor" value=3D"#ffffff" />' +=0A=
	'<embed src=3D"/flash/mp3.swf" flashVars=3D"theLink=3D'+url+'"'+=0A=
	'quality=3D"high" bgcolor=3D"#ffffff" width=3D"0" height=3D"0" =
name=3D"player"' +=0A=
	'align=3D"middle" allowScriptAccess=3D"sameDomain" =
type=3D"application/x-shockwave-flash"' +=0A=
	' pluginspage=3D"http://www.macromedia.com/go/getflashplayer" =
class=3D"player" /></object>';=0A=
    img.parentNode.insertBefore(span, img.nextSibling);=0A=
  } else {=0A=
    // no, stop playing=0A=
    img.src=3D"/images/play.gif";=0A=
    img.parentNode.removeChild(img.nextSibling);=0A=
  }=0A=
}=0A=
=0A=
function toggleSong(img, rootId)=0A=
{=0A=
  // should we play=0A=
  if(img.src.match('play')) {=0A=
    // yes, start playing=0A=
    img.src=3D"/images/stop.gif";=0A=
    var span =3D document.createElement('span');=0A=
    span.innerHTML =3D  '<object =
classid=3D"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"' +=0A=
	=
'codebase=3D"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/sw=
flash.cab#version=3D6,0,0,0"' +=0A=
	'width=3D"50" height=3D"15" align=3D"middle" class=3D"player">' +=0A=
	'<param name=3D"allowScriptAccess" value=3D"sameDomain" />' +=0A=
	'<param name=3D"flashVars" value=3D"rootId=3D'+rootId+'" />' +=0A=
	'<param name=3D"movie" value=3D"/flash/song.swf" /><param =
name=3D"quality" value=3D"high" />' +=0A=
	'<param name=3D"bgcolor" value=3D"#ffffff" />' +=0A=
	'<embed src=3D"/flash/song.swf" flashVars=3D"rootId=3D'+rootId+'"'+=0A=
	'quality=3D"high" bgcolor=3D"#ffffff" width=3D"50" height=3D"15" =
name=3D"player"' +=0A=
	'align=3D"middle" allowScriptAccess=3D"sameDomain" =
type=3D"application/x-shockwave-flash"' +=0A=
	' pluginspage=3D"http://www.macromedia.com/go/getflashplayer" =
class=3D"player" /></object>';=0A=
    img.parentNode.insertBefore(span, img.nextSibling);=0A=
  } else {=0A=
    // no, stop playing=0A=
    img.src=3D"/images/play.gif";=0A=
    img.parentNode.removeChild(img.nextSibling);=0A=
  }=0A=
}=0A=

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://four.static.jamglue.com/javascripts/popover_check.js?20062007

function showPopovers() {=0A=
  allPopovers =3D document.getElementsByClassName("poplink");=0A=
  allPopspacers =3D document.getElementsByClassName("popspacer");=0A=
  if (navigator.userAgent.match('MSIE') || =
navigator.userAgent.match('Firefox')) {=0A=
    for(i =3D 0; i < allPopovers.length; i++) {=0A=
      Element.show(allPopovers[i].id);=0A=
    }=0A=
    for(i =3D 0; i < allPopspacers.length; i++) {=0A=
      Element.hide(allPopspacers[i].id);=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
showPopovers();=0A=
=0A=
function showSomePopovers(element) {=0A=
  if (navigator.userAgent.match('MSIE') || =
navigator.userAgent.match('Firefox')) {=0A=
    var subelements =3D element.getElementsByTagName('span');=0A=
    for(var i=3D0; i<subelements.length; i++){=0A=
      one =3D subelements[i];=0A=
      if(one.className =3D=3D 'poplink'){=0A=
        Element.show(one.id);=0A=
      } else if(one.className =3D=3D 'popspacer'){=0A=
        Element.hide(one.id);=0A=
      }=0A=
    }=0A=
  }=0A=
}=0A=

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: application/x-javascript
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"s";=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"seznam";	_uOkw[20]=3D"w";=0A=
_uOsr[21]=3D"yandex";	_uOkw[21]=3D"text";=0A=
_uOsr[22]=3D"najdi";	_uOkw[22]=3D"q";=0A=
_uOsr[23]=3D"aol";	_uOkw[23]=3D"q";=0A=
_uOsr[24]=3D"club-internet"; _uOkw[24]=3D"q";=0A=
_uOsr[25]=3D"mama";	_uOkw[25]=3D"query";=0A=
_uOsr[26]=3D"seznam";	_uOkw[26]=3D"q";=0A=
_uOsr[27]=3D"search";	_uOkw[27]=3D"q";=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";=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;=0A=
 var nx=3D" expires=3DSun, 18 Jan 2038 00:00:00 GMT;";=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=
  _ubd.cookie=3D"__utmb=3D"+_udh+"; path=3D"+_utcp+";"+x+_udo;=0A=
 } else {=0A=
  if (a>=3D0) a=3D_uFixA(_ubd.cookie,";",_ust);=0A=
  else a=3D_udh+"."+_uu+"."+_ust+"."+_ust+"."+_ust+".1";=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=
 _uInfo(page);=0A=
 _ufns=3D0;=0A=
 _ufno=3D0;=0A=
 if (!page || page=3D=3D"") _uff=3D1;=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=
 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) 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) 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 _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 ((_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 if (window.ActiveXObject) {=0A=
  for (var ii=3D10;ii>=3D2;ii--) {=0A=
   try {=0A=
    var fl=3Deval("new =
ActiveXObject('ShockwaveFlash.ShockwaveFlash."+ii+"');");=0A=
    if (fl) { f=3Dii + '.0'; break; }=0A=
   }=0A=
   catch(e) {}=0A=
  }=0A=
 }=0A=
 return f;=0A=
}=0A=
function __utmLinker(l,h) {=0A=
 if (!_ulink) return;=0A=
 var p,k,a=3D"-",b=3D"-",c=3D"-",x=3D"-",z=3D"-",v=3D"-";=0A=
 var dc=3D_ubd.cookie;=0A=
 if (!l || l=3D=3D"") return;=0A=
 var iq =3D l.indexOf("?"); =0A=
 var ih =3D l.indexOf("#"); =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) { _udl.href=3Dl+"#"+p; }=0A=
  else {=0A=
   if (iq=3D=3D-1 && ih=3D=3D-1) _udl.href=3Dl+"?"+p;=0A=
   else if (ih=3D=3D-1) _udl.href=3Dl+"&"+p;=0A=
   else if (iq=3D=3D-1) =
_udl.href=3Dl.substring(0,ih-1)+"?"+p+l.substring(ih);=0A=
   else _udl.href=3Dl.substring(0,ih-1)+"&"+p+l.substring(ih);=0A=
  }=0A=
 } else { _udl.href=3Dl; }=0A=
}=0A=
function __utmLinkPost(f,h) {=0A=
 if (!_ulink) return;=0A=
 var p,k,a=3D"-",b=3D"-",c=3D"-",x=3D"-",z=3D"-",v=3D"-";=0A=
 var dc=3D_ubd.cookie;=0A=
 if (!f || !f.action) return;=0A=
 var iq =3D f.action.indexOf("?"); =0A=
 var ih =3D f.action.indexOf("#"); =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) { f.action+=3D"#"+p; }=0A=
  else {=0A=
   if (iq=3D=3D-1 && ih=3D=3D-1) f.action+=3D"?"+p;=0A=
   else if (ih=3D=3D-1) f.action+=3D"&"+p;=0A=
   else if (iq=3D=3D-1) =
f.action=3Df.action.substring(0,ih-1)+"?"+p+f.action.substring(ih);=0A=
   else =
f.action=3Df.action.substring(0,ih-1)+"&"+p+f.action.substring(ih);=0A=
  }=0A=
 }=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=3DSun, 18 Jan 2038 00:00:00 GMT;"+_udo;=0A=
 var s=3D"&utmt=3Dvar&utmn=3D"+r;=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,"__utmb=3D"+_udh,";"))!=3D"-") =
c+=3D_uES("__utmb=3D"+t+";+");=0A=
 if ((t=3D_uGC(dc,"__utmc=3D"+_udh,";"))!=3D"-") =
c+=3D_uES("__utmc=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=
 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'/') {=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"Sun, 18 Jan 2038 00:00:00 GMT;";=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) {=0A=
 if (window.addEventListener) {=0A=
  window.addEventListener('load', _uCO, false); =0A=
 } else if (window.attachEvent) { =0A=
  window.attachEvent('onload', _uCO);=0A=
 }=0A=
}=0A=

------=_NextPart_000_02C3_01C7B50A.EECCFB60
Content-Type: application/x-javascript
Content-Transfer-Encoding: quoted-printable
Content-Location: http://quantserve.com/quant.js

_qacct=3D'';_qmeta=3D'';=0A=
function _qcdst(){=0A=
 if(_qctzoff(0)!=3D_qctzoff(6))return 1;return 0;=0A=
}=0A=
function _qctzoff(m){=0A=
 var d1=3Dnew Date(2000,m,1,0,0,0,0);=0A=
 var t=3Dd1.toGMTString();=0A=
 var d3=3Dnew Date(t.substring(0,t.lastIndexOf(" ")-1));=0A=
 return d1-d3;=0A=
}=0A=
function _qceuc(s){=0A=
 if (typeof(encodeURIComponent) =3D=3D 'function') { return =
encodeURIComponent(s); }=0A=
 else { return escape(s); }=0A=
}=0A=
function _qcrnd(){return Math.round(Math.random()*2147483647);}=0A=
function _qvoid(){return;}=0A=
function _qcgc(n){=0A=
 var v=3D'';=0A=
 var c=3Ddocument.cookie;=0A=
 var i =3D c.indexOf(n+"=3D");=0A=
 var len =3D i + n.length + 1;=0A=
 if(i > -1){=0A=
  var end =3D c.indexOf(";", len);=0A=
  if (end < 0){end =3D c.length;}=0A=
  v=3Dc.substring(len,end);=0A=
 }=0A=
 return v;=0A=
}=0A=
function _qcdomain(){=0A=
 var d=3Ddocument.domain;=0A=
 if(d.substring(0,4)=3D=3D"www."){d=3Dd.substring(4,d.length);}=0A=
 var a=3Dd.split(".");var len=3Da.length;=0A=
 if(len<3){return d;}=0A=
 var e=3Da[len-1];=0A=
 if(e.length<3){return d;}=0A=
 d=3Da[len-2]+"."+a[len-1];=0A=
 return d;=0A=
}=0A=
function _qcsc(dc){=0A=
 var s=3D"";var u=3Ddocument;var d=3D_qcdomain();var a=3D_qcgc("__qca");=0A=
 if(a.length > 0){s+=3D";fpan=3D0;fpa=3D"+a;}=0A=
 else{=0A=
  u.cookie=3D"__qca=3D"+dc+"; expires=3DSun, 18 Jan 2038 00:00:00 GMT; =
path=3D/; domain=3D"+d;=0A=
  a=3D_qcgc("__qca");=0A=
  if(a.length > 0){s+=3D";fpan=3D1;fpa=3D"+dc;}=0A=
  else{s+=3D";fpan=3Du;fpa=3D";}=0A=
 }=0A=
 var b=3D_qcgc("__qcb");=0A=
 if(b.length > 0){s+=3D";fpbn=3D0;fpb=3D"+b;}=0A=
 else{b=3D_qcrnd();=0A=
  u.cookie=3D"__qcb=3D"+b+"; path=3D/; domain=3D"+d;=0A=
  b=3D_qcgc("__qcb");=0A=
  if(b.length > 0){s+=3D";fpbn=3D1;fpb=3D"+b;}=0A=
  else{s+=3D";fpbn=3Du;fpb=3D";}=0A=
 }=0A=
 return s;=0A=
}=0A=
function quantserve(){=0A=
 var r=3D_qcrnd();=0A=
 var ce=3D(navigator.cookieEnabled)?"1":"0";=0A=
 var je=3D"u";if(typeof navigator.javaEnabled !=3D =
'undefined')je=3D(navigator.javaEnabled())?"1":"0";=0A=
 var sr=3D'';=0A=
 =
if(self.screen){sr=3Dscreen.width+"x"+screen.height+"x"+screen.colorDepth=
;}=0A=
 var url=3D'',ref=3D'';=0A=
 var d=3Dnew Date();=0A=
 var dst=3D_qcdst();=0A=
 var dc=3D"45a67023-c97fe-e693b-ff4db";var =
qs=3D"http://pixel.quantserve.com";=0A=
 var fp=3D_qcsc(dc);=0A=
 if(window.location && window.location.href) =
url=3D_qceuc(window.location.href);=0A=
 if(window.document && window.document.referrer) =
ref=3D_qceuc(window.document.referrer);=0A=
 var img=3Dnew Image(1,1);=0A=
 =
img.src=3Dqs+'/pixel'+';r=3D'+r+fp+';url=3D'+url+';ref=3D'+ref+';ce=3D'+c=
e+';je=3D'+je+';sr=3D'+sr+';dc=3D'+dc+';dst=3D'+dst+';et=3D'+d.getTime()+=
';tzo=3D'+d.getTimezoneOffset()+';m=3D'+_qceuc(_qmeta)+';a=3D'+_qacct;=0A=
 img.onload=3Dfunction() {_qvoid();}=0A=
}=0A=

------=_NextPart_000_02C3_01C7B50A.EECCFB60--

