From: <Saved by Windows Internet Explorer 7>
Subject: the official home of all things jackass | jackassworld
Date: Tue, 5 Feb 2008 10:42:48 -0000
MIME-Version: 1.0
Content-Type: multipart/related;
	type="multipart/alternative";
	boundary="----=_NextPart_000_0013_01C867E3.D97C53A0"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3138

This is a multi-part message in MIME format.

------=_NextPart_000_0013_01C867E3.D97C53A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
Content-Location: http://www.jackassworld.com/images/front/comment_icon.gif?1194994818

R0lGODlhCwAKALMAAKysrKenp6urq6qqqqioqA4ODgwMDKmpqQ0NDQAAAAAAAAAAAAAAAAAAAAAA
AAAAACH5BAAAAAAALAAAAAALAAoAAAQ00JwjRpjjII0M+uAAGMWRVd9BFB7CFh9BpLLATV8LFvMk
EAeYCtT5DBADWK644YA8yiMiAgA7

------=_NextPart_000_0013_01C867E3.D97C53A0
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://www.jackassworld.com/blog/wp-content/uploads/2008/02/dimitrycheck.jpg

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
xGpDDn7tPk78qfXdj49fOEjjXJNEnFyzpb+gd1/6tJ2d+VL67sfHr5wRxTk5OmKmdf8AsHf3afI3
5U+v7Hx6+cPHFeUjph5pI/8ATufu1fkbz2Vn8h2Pj184P8K8ntuThplu0eQ7+7U+Rvyq/kPT/Hr5
w3+EOUnxDDzbj9mO51+qn0+/Kn5D0/x6+cPHEOX7TfDzr20uw5+7T6fflU/I+n+PXzgt8P5Z1/Bp
w7Cfl3L/AJqs7G/Kl+4+n/ua+cOVwzl4QduHna9fuF36+6l9PvyqfkvT/Hr5wjw7mBTtOEmX638h
z8ulPp+5yp+S9P8A3NfMv4L5iU2/BpnXoGVjr9FPpu5yp+T9P/c18x/grmAO0YSaSNb+Svu91Pp+
5yqflPTf3NfM5fBuaGxOFm6D/sV6fkp9N3OVPynpvj18zk8G5kT/AMlmG/Xcyr7KfTdzlU/Kem+P
XzE8D5qUa4OZ7AGlU+m7nKn5T039zXzD+AubAEDCTdOlmiNKfS9zlT8r6X+5r5nD0+5sRc4KXc9b
tEVfpe5yp+W9N/c18yPp9zm3/JJZA7fK/v1Ppu5yqX7t6X+5qR9PObm3/A5aTbsbP20+l7nw0/L+
l/uakn0850nUYSWb6E+WPtq/S9zkX7v6X+5qePTrnJGmElAnQAIHv76v0vc5J+Y9L/c1D+zvnRG3
8DlWv+wPtqfS9zkv5j0v9zVIPTjnSkkqwkoq/wAFPZ7zV+l7nJL949L/AHICPTjnZ8Jwsq570p6f
zqn0nc5H5j0vxw4emvPrG2ElD2WSB+VVX6Tuck/M+l+OF/Zpz4EXwkm50I8H20+k7nI/Nek+OF/Z
pz25tgpPtJ2fvU+k7nI/M+l+OfqK/TLnyiP+CSQT23QP86n0nc5H5r0nxwE+mHP1KNsM/Yd5bH+f
T6Tuckv3r0nxz9f6H/2W+oAFhhXtevib/fqfSdzkfm/SfHP1/oI9LefbbHCPXv03N/vVfpO5yL97
9J8f/n+gf2Vc+vYYV4a3+JoD/LpfR9zkfnPSfH/5/ok/st9QL3GHdAtrdbf79X6Tucmfznpfj/S/
0FPpP6g7fFh3Neze1+/Sej7nIv330nx/pf6Ar0n5/uNsM7awt94z9Xx0+j7nI/O+k+P9L/Q0ekvq
GLH8Ic/8Rn9+p9F3OR+d9J8f6X+h7fpL6gjriVX62LrP79J6Luck/O+k+P8AS/0E+k/qGQP+Dq1G
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
nEf/2Q==

------=_NextPart_000_0013_01C867E3.D97C53A0
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://www.jackassworld.com/blog/wp-content/uploads/2008/01/meechwee.jpg

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
WI6+nb4+FChVAf/Z

------=_NextPart_000_0013_01C867E3.D97C53A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
Content-Location: http://www.jackassworld.com/images/front/jackass_dvd.jpg?1198185051

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

------=_NextPart_000_0013_01C867E3.D97C53A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
Content-Location: http://www.jackassworld.com/images/front/warning.gif?1197641329

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

------=_NextPart_000_0013_01C867E3.D97C53A0
Content-Type: image/jpeg
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.mtv.com/content/jackassworld/video/thumbnails/jackass/00041jat_93x70.jpg

<html>

<head>
<title>Request Denied - MP3 and Music Sites</title>
</head>

<body topmargin=3D"0" leftmargin=3D"0" bgcolor=3D"#FFFFFF">

<div align=3D"left">

<table border=3D"0" cellpadding=3D"0" cellspacing=3D"0" width=3D"468">
  <tr>
    <td width=3D"150">
	<img src=3D"http://c.cornerpost.net/images/chaperon_head.jpg"
    alt=3D"chaperon_head.jpg (11520 bytes)" width=3D"150" =
height=3D"136"></td>
    <td valign=3D"middle" align=3D"center"><font face=3D"Tahoma" =
color=3D"#800000" size=3D"2"><strong>The
    Proxy Server has<br>
    Denied Access to this Site<br>
    </strong></font>
	<a target=3D"_top" =
href=3D"http://www.cornerpost.net/chaperon2000"><font
    face=3D"Tahoma" size=3D"1" color=3D"#808080">more =
information...</font></a></td>
  </tr>
</table>
</div>

<hr size=3D"1">

<blockquote>
  <p><small><font face=3D"Tahoma">The site you were attempting to visit =
has been categorized
  as:</font></small></p>
</blockquote>



<blockquote>
  <blockquote>
    <p><font face=3D"Tahoma" size=3D"2" =
color=3D"#800000"><strong>MP3/Music Sites</strong></font></p>
  </blockquote>
</blockquote>


<blockquote>
  <p align=3D"left"><font face=3D"Tahoma" size=3D"2">Your local network =
policy prohibits access to
  pages within this category.</font></p>
  <p align=3D"left"><font face=3D"Tahoma"><small>We make every effort to =
accurately categorize
  the sites in our filter list.&nbsp; If you feel the category shown =
above is incorrect,
  please report the site you attempted to visit to your local Network =
Administrator.</small></font></p>
</blockquote>

<hr size=3D"1">

<p align=3D"center"><font face=3D"Tahoma" size=3D"1" =
color=3D"#808080">=A9 Copyright=20
1999-200<span lang=3D"en-us">7</span> <a =
href=3D"http://www.cornerpostsw.com/">CornerPost Software, LLC.</a> All =
rights
reserved.</font></p>


</body>
</html>

------=_NextPart_000_0013_01C867E3.D97C53A0
Content-Type: image/jpeg
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.mtv.com/content/jackassworld/video/thumbnails/jackass/00108jat_93x70.jpg

<html>

<head>
<title>Request Denied - MP3 and Music Sites</title>
</head>

<body topmargin=3D"0" leftmargin=3D"0" bgcolor=3D"#FFFFFF">

<div align=3D"left">

<table border=3D"0" cellpadding=3D"0" cellspacing=3D"0" width=3D"468">
  <tr>
    <td width=3D"150">
	<img src=3D"http://c.cornerpost.net/images/chaperon_head.jpg"
    alt=3D"chaperon_head.jpg (11520 bytes)" width=3D"150" =
height=3D"136"></td>
    <td valign=3D"middle" align=3D"center"><font face=3D"Tahoma" =
color=3D"#800000" size=3D"2"><strong>The
    Proxy Server has<br>
    Denied Access to this Site<br>
    </strong></font>
	<a target=3D"_top" =
href=3D"http://www.cornerpost.net/chaperon2000"><font
    face=3D"Tahoma" size=3D"1" color=3D"#808080">more =
information...</font></a></td>
  </tr>
</table>
</div>

<hr size=3D"1">

<blockquote>
  <p><small><font face=3D"Tahoma">The site you were attempting to visit =
has been categorized
  as:</font></small></p>
</blockquote>



<blockquote>
  <blockquote>
    <p><font face=3D"Tahoma" size=3D"2" =
color=3D"#800000"><strong>MP3/Music Sites</strong></font></p>
  </blockquote>
</blockquote>


<blockquote>
  <p align=3D"left"><font face=3D"Tahoma" size=3D"2">Your local network =
policy prohibits access to
  pages within this category.</font></p>
  <p align=3D"left"><font face=3D"Tahoma"><small>We make every effort to =
accurately categorize
  the sites in our filter list.&nbsp; If you feel the category shown =
above is incorrect,
  please report the site you attempted to visit to your local Network =
Administrator.</small></font></p>
</blockquote>

<hr size=3D"1">

<p align=3D"center"><font face=3D"Tahoma" size=3D"1" =
color=3D"#808080">=A9 Copyright=20
1999-200<span lang=3D"en-us">7</span> <a =
href=3D"http://www.cornerpostsw.com/">CornerPost Software, LLC.</a> All =
rights
reserved.</font></p>


</body>
</html>

------=_NextPart_000_0013_01C867E3.D97C53A0
Content-Type: image/jpeg
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.mtv.com/content/jackassworld/video/thumbnails/jackass/00144jat_93x70.jpg

<html>

<head>
<title>Request Denied - MP3 and Music Sites</title>
</head>

<body topmargin=3D"0" leftmargin=3D"0" bgcolor=3D"#FFFFFF">

<div align=3D"left">

<table border=3D"0" cellpadding=3D"0" cellspacing=3D"0" width=3D"468">
  <tr>
    <td width=3D"150">
	<img src=3D"http://c.cornerpost.net/images/chaperon_head.jpg"
    alt=3D"chaperon_head.jpg (11520 bytes)" width=3D"150" =
height=3D"136"></td>
    <td valign=3D"middle" align=3D"center"><font face=3D"Tahoma" =
color=3D"#800000" size=3D"2"><strong>The
    Proxy Server has<br>
    Denied Access to this Site<br>
    </strong></font>
	<a target=3D"_top" =
href=3D"http://www.cornerpost.net/chaperon2000"><font
    face=3D"Tahoma" size=3D"1" color=3D"#808080">more =
information...</font></a></td>
  </tr>
</table>
</div>

<hr size=3D"1">

<blockquote>
  <p><small><font face=3D"Tahoma">The site you were attempting to visit =
has been categorized
  as:</font></small></p>
</blockquote>



<blockquote>
  <blockquote>
    <p><font face=3D"Tahoma" size=3D"2" =
color=3D"#800000"><strong>MP3/Music Sites</strong></font></p>
  </blockquote>
</blockquote>


<blockquote>
  <p align=3D"left"><font face=3D"Tahoma" size=3D"2">Your local network =
policy prohibits access to
  pages within this category.</font></p>
  <p align=3D"left"><font face=3D"Tahoma"><small>We make every effort to =
accurately categorize
  the sites in our filter list.&nbsp; If you feel the category shown =
above is incorrect,
  please report the site you attempted to visit to your local Network =
Administrator.</small></font></p>
</blockquote>

<hr size=3D"1">

<p align=3D"center"><font face=3D"Tahoma" size=3D"1" =
color=3D"#808080">=A9 Copyright=20
1999-200<span lang=3D"en-us">7</span> <a =
href=3D"http://www.cornerpostsw.com/">CornerPost Software, LLC.</a> All =
rights
reserved.</font></p>


</body>
</html>

------=_NextPart_000_0013_01C867E3.D97C53A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.jackassworld.com/stylesheets/front.css?1201819934

BODY {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11px; BACKGROUND: =
black; PADDING-BOTTOM: 0px; MARGIN: 0px; COLOR: white; PADDING-TOP: =
10px; FONT-FAMILY: Helvetica, Arial, Verdana, sans-serif; TEXT-ALIGN: =
center
}
DIV {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
H1 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DD {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DT {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
A {
	COLOR: #f41917; TEXT-DECORATION: none
}
A:hover {
	TEXT-DECORATION: underline
}
A:focus {
	outline: none
}
A IMG {
	PADDING-RIGHT: 1px; PADDING-LEFT: 1px; PADDING-BOTTOM: 1px; =
BORDER-TOP-STYLE: none; PADDING-TOP: 1px; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
A:hover IMG {
	BORDER-RIGHT: #f41917 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: =
#f41917 1px solid; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; BORDER-LEFT: =
#f41917 1px solid; PADDING-TOP: 0px; BORDER-BOTTOM: #f41917 1px solid; =
TEXT-DECORATION: none
}
A.selected {
	COLOR: white
}
A.selected:hover {
	TEXT-DECORATION: none
}
#container {
	MARGIN: 10px auto 0px; WIDTH: 900px; TEXT-ALIGN: left
}
.clearer {
	CLEAR: both
}
HR.clearer {
	BACKGROUND: none transparent scroll repeat 0% 0%; BORDER-TOP-STYLE: =
none; BORDER-BOTTOM: #222 1px solid; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none
}
#banner_ad {
=09
}
#banner_ad .image {
	MARGIN: 0px
}
#banner_ad .advertisement {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: =
url(../images/front/ad_label.gif) #0d0d0d no-repeat 50% 50%; =
PADDING-BOTTOM: 3px; MARGIN: 0px auto; WIDTH: 732px; TEXT-INDENT: =
-9999px; PADDING-TOP: 3px; HEIGHT: 5px
}
#login {
	MARGIN: 0px auto; WIDTH: 900px; PADDING-TOP: 7px
}
#login P {
	FLOAT: left; MARGIN: 0px
}
#login P IMG {
	PADDING-RIGHT: 2px; PADDING-LEFT: 2px; PADDING-BOTTOM: 0px; =
VERTICAL-ALIGN: middle; PADDING-TOP: 0px
}
#login .login_options {
	FLOAT: right; MARGIN-LEFT: 5px
}
#login .login_options .join_button IMG {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
BORDER-TOP-STYLE: none; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
#header {
	BACKGROUND: url(../images/front/jackassworldheader.gif) no-repeat left =
top; MARGIN-BOTTOM: 10px; WIDTH: 900px; POSITION: relative; HEIGHT: =
190px
}
#header H1 {
	HEIGHT: 100%
}
#header H1 A {
	DISPLAY: block; WIDTH: 100%; TEXT-INDENT: -9999px; HEIGHT: 100%
}
#header #header_search {
	Z-INDEX: 10; RIGHT: 5px; WIDTH: 310px; POSITION: absolute; TOP: 162px; =
TEXT-ALIGN: right
}
#header_search LABEL {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; FONT-WEIGHT: bold; FONT-SIZE: =
14px; FLOAT: left; PADDING-BOTTOM: 5px; TEXT-TRANSFORM: lowercase; =
COLOR: #f41917; PADDING-TOP: 5px
}
#header_search INPUT {
	BORDER-RIGHT: #333 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: #333 1px =
solid; PADDING-LEFT: 2px; FLOAT: left; PADDING-BOTTOM: 2px; BORDER-LEFT: =
#333 1px solid; WIDTH: 200px; PADDING-TOP: 2px; BORDER-BOTTOM: #333 1px =
solid
}
#header_search BUTTON {
	BACKGROUND: url(../images/front/go_button.gif) no-repeat left top; =
FLOAT: left; MARGIN: 3px 5px; WIDTH: 29px; CURSOR: pointer; =
BORDER-TOP-STYLE: none; TEXT-INDENT: -9999px; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; HEIGHT: 19px; BORDER-BOTTOM-STYLE: none
}
#header #nav {
	BORDER-TOP: #333 1px solid; BACKGROUND: url(../images/front/nav_bg.gif) =
#0c0c0c repeat-x left top; LEFT: 0px; WIDTH: 900px; BORDER-BOTTOM: #333 =
1px solid; LIST-STYLE-TYPE: none; POSITION: absolute; TOP: 148px
}
#nav LI {
	PADDING-RIGHT: 15px; FONT-WEIGHT: bold; FONT-SIZE: 14px; FLOAT: left; =
TEXT-TRANSFORM: lowercase; LINE-HEIGHT: 38px; HEIGHT: 38px
}
#nav LI A {
	DISPLAY: block; PADDING-LEFT: 15px; MARGIN: 0px 1px; WIDTH: 100%; =
COLOR: white; HEIGHT: 100%
}
#nav LI A:hover {
	BORDER-RIGHT: #333 1px solid; BACKGROUND: =
url(../images/front/nav_highlight.gif) repeat-x left top; MARGIN: 0px; =
BORDER-LEFT: #333 1px solid; TEXT-DECORATION: none
}
BODY#home #nav_home {
	BORDER-RIGHT: #333 1px solid; BACKGROUND: =
url(../images/front/nav_highlight.gif) repeat-x left top; MARGIN: 0px; =
BORDER-LEFT: #333 1px solid; TEXT-DECORATION: none
}
BODY#search #nav_home {
	BORDER-RIGHT: #333 1px solid; BACKGROUND: =
url(../images/front/nav_highlight.gif) repeat-x left top; MARGIN: 0px; =
BORDER-LEFT: #333 1px solid; TEXT-DECORATION: none
}
BODY#videos #nav_videos {
	BORDER-RIGHT: #333 1px solid; BACKGROUND: =
url(../images/front/nav_highlight.gif) repeat-x left top; MARGIN: 0px; =
BORDER-LEFT: #333 1px solid; TEXT-DECORATION: none
}
BODY#show_video #nav_videos {
	BORDER-RIGHT: #333 1px solid; BACKGROUND: =
url(../images/front/nav_highlight.gif) repeat-x left top; MARGIN: 0px; =
BORDER-LEFT: #333 1px solid; TEXT-DECORATION: none
}
BODY#season #nav_videos {
	BORDER-RIGHT: #333 1px solid; BACKGROUND: =
url(../images/front/nav_highlight.gif) repeat-x left top; MARGIN: 0px; =
BORDER-LEFT: #333 1px solid; TEXT-DECORATION: none
}
BODY#jackass-movie #nav_jackass_25 {
	BORDER-RIGHT: #333 1px solid; BACKGROUND: =
url(../images/front/nav_highlight.gif) repeat-x left top; MARGIN: 0px; =
BORDER-LEFT: #333 1px solid; TEXT-DECORATION: none
}
#left_column {
	PADDING-RIGHT: 20px; PADDING-LEFT: 0px; MIN-HEIGHT: 550px; FLOAT: left; =
PADDING-BOTTOM: 50px; WIDTH: 580px; PADDING-TOP: 10px
}
.page_header {
	MARGIN-TOP: 7px; FONT-WEIGHT: bold; FONT-SIZE: 24px; MARGIN-BOTTOM: =
15px; TEXT-TRANSFORM: lowercase; COLOR: #434343
}
.under_construction_subheader {
	MARGIN-TOP: -10px; FONT-SIZE: 15px; TEXT-TRANSFORM: lowercase; COLOR: =
#aaa
}
.home_article {
	MARGIN-BOTTOM: 20px; PADDING-BOTTOM: 10px
}
.blog_article {
	MARGIN-BOTTOM: 20px; PADDING-BOTTOM: 10px
}
.article_container {
	PADDING-RIGHT: 20px; PADDING-LEFT: 20px; BACKGROUND: #0d0d0d; =
PADDING-BOTTOM: 10px; PADDING-TOP: 5px
}
.article_header {
	FONT-WEIGHT: normal; FONT-SIZE: 18px; MARGIN: 5px 0px 10px; =
TEXT-TRANSFORM: lowercase; COLOR: #f41917; LINE-HEIGHT: 1.2
}
.article_header A {
=09
}
.article_byline {
	MARGIN: 3px 0px
}
.article_byline .name {
	BORDER-RIGHT: white 1px solid; PADDING-RIGHT: 7px; TEXT-TRANSFORM: =
lowercase; MARGIN-RIGHT: 3px
}
.article_byline .name A {
=09
}
.article_text {
	FONT-SIZE: 12px; MARGIN-BOTTOM: 30px; LINE-HEIGHT: 1.5
}
.article_text EMBED {
	DISPLAY: block
}
.article_video {
	TEXT-ALIGN: center
}
.article_audio {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 10px; =
PADDING-TOP: 10px; TEXT-ALIGN: center
}
.article_image {
	FLOAT: right; MARGIN: 5px 10px
}
.article_image .image {
	MARGIN-BOTTOM: 5px
}
.article_image .caption {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; BACKGROUND: #222; =
PADDING-BOTTOM: 3px; PADDING-TOP: 3px; FONT-STYLE: italic
}
.article_footer {
	BORDER-TOP: #222222 1px solid; MARGIN-TOP: 8px; PADDING-TOP: 8px
}
.article_footer P {
	MARGIN: 3px 0px
}
.article_footer .continue_reading {
	CLEAR: both; FONT-SIZE: 14px; MARGIN: 10px 0px; TEXT-TRANSFORM: =
lowercase; PADDING-TOP: 15px; TEXT-ALIGN: right
}
.article_footer .category {
	FLOAT: left; TEXT-TRANSFORM: lowercase; WIDTH: 250px; PADDING-TOP: 5px
}
.article_footer .tags {
	CLEAR: left; FLOAT: left; WIDTH: 250px
}
.article_footer .tags A {
	TEXT-TRANSFORM: lowercase
}
.article_footer .comments {
	FLOAT: right; TEXT-TRANSFORM: lowercase; WIDTH: 250px; TEXT-ALIGN: =
right
}
.comments IMG {
	PADDING-RIGHT: 2px; PADDING-LEFT: 2px; PADDING-BOTTOM: 2px; =
VERTICAL-ALIGN: middle; PADDING-TOP: 2px
}
SPAN.commentbox {
	OVERFLOW: hidden
}
A.commentCount {
	POSITION: relative; TOP: 3px
}
.comments .blog_share {
	BORDER-RIGHT: #f41917 1px solid; PADDING-RIGHT: 3px; PADDING-LEFT: 6px; =
PADDING-BOTTOM: 0pt; MARGIN: 0pt 6px 0pt 4px; BORDER-LEFT: #f41917 1px =
solid; PADDING-TOP: 0pt
}
.comments .comments_count {
	BORDER-RIGHT: #f41917 1px solid; PADDING-RIGHT: 6px; MARGIN-RIGHT: 6px
}
.comments .share {
	BORDER-RIGHT: #f41917 1px solid; PADDING-RIGHT: 6px; MARGIN-RIGHT: 6px
}
#full_blog_link {
	FONT-SIZE: 14px; TEXT-TRANSFORM: lowercase
}
.read_more_posts {
	PADDING-RIGHT: 11px; MARGIN-TOP: 0px; FONT-SIZE: 13px; BACKGROUND: =
url(../images/front/red_triangle.gif) no-repeat 100% 50%; MARGIN-BOTTOM: =
25px; TEXT-TRANSFORM: lowercase; TEXT-ALIGN: right
}
.leave_comment {
	FONT-SIZE: 14px; MARGIN-BOTTOM: 20px; PADDING-BOTTOM: 20px; =
TEXT-TRANSFORM: lowercase; BORDER-BOTTOM: #222 6px solid
}
.article_comments {
=09
}
.article_comments .view_options {
	PADDING-BOTTOM: 20px; LIST-STYLE-TYPE: none
}
.article_comments .view_options LI {
	BORDER-RIGHT: white 1px solid; PADDING-RIGHT: 6px; FLOAT: left; =
MARGIN-RIGHT: 4px
}
.article_comments .comment {
	CLEAR: left; MARGIN-BOTTOM: 10px; LINE-HEIGHT: 1.4
}
.article_comments .comment .info {
	PADDING-RIGHT: 4px; PADDING-LEFT: 6px; BACKGROUND: #131313; =
PADDING-BOTTOM: 4px; PADDING-TOP: 4px
}
.article_comments .comment .info P {
	MARGIN: 0px 0px 0px 35px
}
.article_comments .comment .info .user_thumb {
	BORDER-RIGHT: #999 1px solid; BORDER-TOP: #999 1px solid; FLOAT: left; =
MARGIN: 0px; BORDER-LEFT: #999 1px solid; BORDER-BOTTOM: #999 1px solid
}
.article_comments .comment .message {
	PADDING-RIGHT: 6px; PADDING-LEFT: 42px; PADDING-BOTTOM: 6px; =
PADDING-TOP: 6px
}
.search_header {
=09
}
.search_header .search_title {
	FONT-SIZE: 26px; MARGIN: 8px 0px; TEXT-TRANSFORM: lowercase; COLOR: =
white
}
.search_header .search_query {
	FONT-SIZE: 26px; MARGIN: 8px 0px; TEXT-TRANSFORM: lowercase; COLOR: =
white
}
.search_header .search_query {
	MARGIN-BOTTOM: 12px; COLOR: #888
}
.search_result {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; BACKGROUND: #0d0d0d; =
PADDING-BOTTOM: 5px; MARGIN: 10px 0px; PADDING-TOP: 5px
}
.search_result P {
	MARGIN: 0px
}
.search_result .result_count {
	FLOAT: left; WIDTH: 200px
}
.search_result .more_results {
	FLOAT: right; WIDTH: 200px; TEXT-ALIGN: right
}
.photo_search_results IMG {
	BORDER-RIGHT: #555 1px solid; BORDER-TOP: #555 1px solid; BORDER-LEFT: =
#555 1px solid; BORDER-BOTTOM: #555 1px solid
}
TABLE.photo_grid {
=09
}
TABLE.photo_grid TD {
	PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 5px; =
VERTICAL-ALIGN: middle; PADDING-TOP: 5px; TEXT-ALIGN: center
}
#right_column {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
50px; WIDTH: 300px; PADDING-TOP: 90px
}
BODY#error404 #right_column {
	PADDING-TOP: 10px
}
BODY#error500 #right_column {
	PADDING-TOP: 10px
}
BODY#maintenance #right_column {
	PADDING-TOP: 10px
}
BODY#static #right_column {
	PADDING-TOP: 10px
}
.sidebar_item {
	MARGIN-BOTTOM: 30px; POSITION: relative
}
.sidebar_item .sidebar_header {
	FONT-SIZE: 18px; MARGIN: 0px 0px 10px; TEXT-TRANSFORM: lowercase; =
COLOR: white
}
.sidebar_item .view_more_link {
	RIGHT: 0px; MARGIN: 5px; TEXT-TRANSFORM: lowercase; POSITION: absolute; =
TOP: 0px
}
.sidebar_item .view_more_link_bottom {
	FONT-SIZE: 12px; TEXT-TRANSFORM: lowercase; TEXT-ALIGN: right
}
.sidebar_item .video_box {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; BACKGROUND: #151515; =
PADDING-BOTTOM: 10px; MARGIN: 12px 0px; PADDING-TOP: 10px
}
.sidebar_item .alt.video_box {
	BACKGROUND: #151515
}
.video_box P {
	MARGIN: 0px; LINE-HEIGHT: 1.2
}
.video_box P.image {
	FLOAT: left
}
.video_box P.image A IMG {
	BORDER-RIGHT: #888 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: #888 1px =
solid; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; BORDER-LEFT: #888 1px =
solid; PADDING-TOP: 0px; BORDER-BOTTOM: #888 1px solid
}
.video_box P.image A:hover IMG {
	BORDER-RIGHT: #f41917 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: =
#f41917 1px solid; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; BORDER-LEFT: =
#f41917 1px solid; PADDING-TOP: 0px; BORDER-BOTTOM: #f41917 1px solid
}
.video_box P.title {
	FONT-WEIGHT: bold; FONT-SIZE: 12px; MARGIN-LEFT: 105px
}
.video_box P.description {
	MARGIN-TOP: 7px; MARGIN-LEFT: 105px
}
.video_box P.submitted_by {
	MARGIN: 3px 0px 3px 85px
}
.video_box P.duration {
	FLOAT: left; MARGIN-LEFT: 85px
}
.video_box P.stars {
	FLOAT: right
}
#advertisements {
	BACKGROUND: #0d0d0d; PADDING-BOTTOM: 5px
}
.sidebar_item .advertisement {
	BACKGROUND: url(../images/front/ad_label.gif) no-repeat 50% 50%; =
MARGIN: 5px 0px; TEXT-INDENT: -9999px; HEIGHT: 5px
}
.sidebar_item .member_box {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; MARGIN: 5px =
0px 10px; PADDING-TOP: 5px
}
.member_box P {
	MARGIN: 0px; LINE-HEIGHT: 1.2
}
.member_box P.image {
	BORDER-RIGHT: #888 1px solid; BORDER-TOP: #888 1px solid; FLOAT: left; =
BORDER-LEFT: #888 1px solid; BORDER-BOTTOM: #888 1px solid
}
.member_box P.name {
	MARGIN-LEFT: 85px
}
.member_box P.location {
	MARGIN-TOP: 1px; MARGIN-LEFT: 85px
}
.member_box P.quote {
	MARGIN-TOP: 5px; MARGIN-LEFT: 85px; FONT-STYLE: italic
}
.sidebar_item#join_jaw {
	PADDING-RIGHT: 10px; BORDER-TOP: #222 1px solid; PADDING-LEFT: 10px; =
FONT-SIZE: 14px; BACKGROUND: url(../images/front/join_jaw_bg.gif) =
no-repeat 50% 50%; PADDING-BOTTOM: 20px; TEXT-TRANSFORM: lowercase; =
PADDING-TOP: 20px; BORDER-BOTTOM: #222 1px solid; HEIGHT: 27px; =
TEXT-ALIGN: center
}
#join_jaw A {
	DISPLAY: block; WIDTH: 100%; PADDING-TOP: 6px; HEIGHT: 100%
}
.sidebar_item#most_searched H4 {
	FLOAT: left
}
.search_time {
	TEXT-TRANSFORM: lowercase; PADDING-TOP: 7px; TEXT-ALIGN: right
}
.search_time .today {
	BORDER-RIGHT: #f41917 1px solid; PADDING-RIGHT: 6px; MARGIN-RIGHT: 3px
}
#most_searched .search_time .week {
	BORDER-RIGHT: #f41917 1px solid; PADDING-RIGHT: 6px; MARGIN-RIGHT: 3px
}
.search_time .selected {
	COLOR: white
}
.search_time .selected:hover {
	TEXT-DECORATION: none
}
.most_searched_list {
	FONT-SIZE: 12px; TEXT-TRANSFORM: lowercase; LINE-HEIGHT: 1.4; =
LIST-STYLE-TYPE: none
}
.most_searched_list LI {
	PADDING-LEFT: 20px; MARGIN-BOTTOM: 8px; PADDING-BOTTOM: 5px; =
BORDER-BOTTOM: #2c2c2c 1px solid
}
.sidebar_item#subscribe {
=09
}
#subscribe P.subscribe_description {
	LINE-HEIGHT: 1.5
}
.sidebar_item#article_details {
	LINE-HEIGHT: 1.3
}
#article_details .details .article_name {
	FONT-WEIGHT: bold; TEXT-TRANSFORM: lowercase
}
#article_details .details A.rss_link {
	FLOAT: right; MARGIN-BOTTOM: 5px; MARGIN-LEFT: 8px
}
#article_details .details A.rss_link IMG {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-BOTTOM-STYLE: none
}
.sidebar_item#back_to_blog {
	FONT-SIZE: 14px; TEXT-TRANSFORM: lowercase
}
.sidebar_item .profile_box {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; MARGIN: 5px =
0px 10px; PADDING-TOP: 5px
}
.profile_box P {
	MARGIN: 0px; LINE-HEIGHT: 1.5
}
.profile_box P.image {
	BORDER-RIGHT: #888 1px solid; BORDER-TOP: #888 1px solid; FLOAT: left; =
MARGIN-BOTTOM: 4px; BORDER-LEFT: #888 1px solid; MARGIN-RIGHT: 8px; =
BORDER-BOTTOM: #888 1px solid
}
.profile_box P.name {
	FONT-SIZE: 13px; MARGIN-BOTTOM: 4px
}
.cast_profile_box {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; BACKGROUND: #0d0d0d; =
PADDING-BOTTOM: 5px; PADDING-TOP: 5px
}
.cast_profile_box .name {
	MARGIN-TOP: 0px; FONT-SIZE: 18px; MARGIN-BOTTOM: 7px; TEXT-TRANSFORM: =
lowercase; COLOR: #f41917
}
.cast_profile_box .description {
	LINE-HEIGHT: 1.5
}
.cast_profile_box .description A IMG {
	BORDER-RIGHT: white 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: white =
1px solid; PADDING-LEFT: 0px; FLOAT: left; MARGIN-BOTTOM: 3px; =
PADDING-BOTTOM: 0px; BORDER-LEFT: white 1px solid; MARGIN-RIGHT: 10px; =
PADDING-TOP: 0px; BORDER-BOTTOM: white 1px solid
}
.cast_profile_box .description A:hover IMG {
	BORDER-RIGHT: #f41917 1px solid; BORDER-TOP: #f41917 1px solid; =
BORDER-LEFT: #f41917 1px solid; BORDER-BOTTOM: #f41917 1px solid
}
BODY#blog .sidebar_item {
	BORDER-BOTTOM: #222 6px solid
}
#page_content_wrapper {
	LINE-HEIGHT: 1.4
}
#page_content_wrapper UL {
	PADDING-RIGHT: 5px; PADDING-LEFT: 20px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 5px
}
#page_content_wrapper .indent {
	PADDING-LEFT: 20px
}
#ie_footer_bleed_prevention {
	DISPLAY: none
}
#footer {
	CLEAR: left; PADDING-RIGHT: 7px; PADDING-LEFT: 7px; BACKGROUND: =
#0d0d0d; PADDING-BOTTOM: 2px; PADDING-TOP: 7px
}
#mtv_footer_logo {
	MARGIN-TOP: 10px; BACKGROUND: url(../images/front/footer_mtv.gif) =
no-repeat left top; FLOAT: left; WIDTH: 129px; MARGIN-RIGHT: 10px; =
HEIGHT: 24px; TEXT-ALIGN: center
}
#mtv_footer_logo A {
	DISPLAY: block; WIDTH: 100%; TEXT-INDENT: -9999px; HEIGHT: 100%
}
#mtv_footer_logo A IMG {
	BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; =
BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px; BORDER-RIGHT-WIDTH: 0px
}
#mtv_footer_logo A:hover IMG {
	BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; =
BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px; BORDER-RIGHT-WIDTH: 0px
}
#footer_copy {
	PADDING-RIGHT: 10px; FLOAT: left; WIDTH: 560px
}
#left_footer {
	FLOAT: left; MARGIN-BOTTOM: 5px; LIST-STYLE-TYPE: none
}
#left_footer LI {
	BORDER-RIGHT: white 1px solid; PADDING-RIGHT: 6px; FLOAT: left; =
LINE-HEIGHT: 1.2; MARGIN-RIGHT: 6px
}
#social_project_links A {
	BORDER-RIGHT: white 1px solid; PADDING-RIGHT: 6px; PADDING-LEFT: 6px; =
FONT-WEIGHT: bold; PADDING-BOTTOM: 0px; COLOR: white; PADDING-TOP: 0px
}
#left_footer LI A {
	FONT-WEIGHT: bold; COLOR: white
}
#left_footer LI.last {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-BOTTOM-STYLE: none
}
#social_project_links A.last {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-BOTTOM-STYLE: none
}
#footer_copy P {
	CLEAR: left; MARGIN: 5px 0px
}
#footer_legal {
	BORDER-TOP: #222 1px solid; MARGIN-TOP: 7px; LINE-HEIGHT: 1.3; =
PADDING-TOP: 7px
}
#right_footer {
	MARGIN-TOP: 15px; FLOAT: right; TEXT-TRANSFORM: lowercase; WIDTH: 170px
}
#right_footer A {
	PADDING-RIGHT: 28px; DISPLAY: block; BACKGROUND: =
url(../images/front/rss_logo.gif) no-repeat right top; COLOR: white; =
LINE-HEIGHT: 19px; HEIGHT: 19px; TEXT-ALIGN: right
}
BODY#videos #right_column {
	PADDING-TOP: 46px
}
#video_hub_feature {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; BACKGROUND: #0d0d0d; =
PADDING-BOTTOM: 5px; PADDING-TOP: 5px
}
#video_hub_feature_image {
	FLOAT: left; WIDTH: 320px
}
#video_hub_feature_info {
	PADDING-RIGHT: 8px; PADDING-LEFT: 15px; FLOAT: left; PADDING-BOTTOM: =
0px; WIDTH: 220px; LINE-HEIGHT: 1.3; PADDING-TOP: 0px
}
#video_hub_feature_info P {
	MARGIN: 7px 0px
}
#video_hub_feature_info H4 {
	MARGIN-TOP: 0px; FONT-SIZE: 14px; MARGIN-BOTTOM: 8px; PADDING-BOTTOM: =
0px; TEXT-TRANSFORM: lowercase; COLOR: #f41917; PADDING-TOP: 0px
}
#video_hub_feature_info .stats A {
	TEXT-TRANSFORM: lowercase
}
.video_header {
	MARGIN-TOP: 7px; FONT-SIZE: 24px; MARGIN-BOTTOM: 5px; TEXT-TRANSFORM: =
lowercase; COLOR: #42423f
}
.video_subheader {
	FONT-SIZE: 24px; MARGIN: 0px 0px 10px; TEXT-TRANSFORM: lowercase; =
COLOR: white
}
.photo_subheader {
	FONT-SIZE: 24px; MARGIN: 0px 0px 10px; TEXT-TRANSFORM: lowercase; =
COLOR: white
}
.video_subheader A {
	COLOR: white
}
.video_subheader .episode_name {
	COLOR: #aaa
}
.video_thumb_list {
	MARGIN: 0px 0px 35px
}
.video_thumb_list H3 {
	FONT-SIZE: 21px; MARGIN-BOTTOM: 10px; TEXT-TRANSFORM: lowercase
}
.video_thumb_collection {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; BACKGROUND: #0d0d0d; =
PADDING-BOTTOM: 5px; PADDING-TOP: 5px
}
#categories .category {
	FLOAT: left; MARGIN: 10px; WIDTH: 240px
}
#archives .archive {
	FLOAT: left; MARGIN: 10px; WIDTH: 240px
}
#categories .category .category_image {
	PADDING-RIGHT: 5px; FLOAT: left; PADDING-BOTTOM: 10px; MARGIN: 0px
}
#archives .archive .archive_image {
	PADDING-RIGHT: 5px; FLOAT: left; PADDING-BOTTOM: 10px; MARGIN: 0px
}
#categories .category .category_title {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: =
16px; FLOAT: right; PADDING-BOTTOM: 5px; MARGIN: 0px; TEXT-TRANSFORM: =
lowercase; WIDTH: 160px; PADDING-TOP: 0px
}
#archives .archive .archive_title {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: =
16px; FLOAT: right; PADDING-BOTTOM: 5px; MARGIN: 0px; TEXT-TRANSFORM: =
lowercase; WIDTH: 160px; PADDING-TOP: 0px
}
#categories .category .category_description {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: =
0px; MARGIN: 5px 0px 0px; WIDTH: 160px; PADDING-TOP: 0px
}
.category_clip_count {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: =
0px; MARGIN: 5px 0px 0px; WIDTH: 160px; PADDING-TOP: 0px
}
#archives .archive .archive_description {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: =
0px; MARGIN: 5px 0px 0px; WIDTH: 160px; PADDING-TOP: 0px
}
.archive_clip_count {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: =
0px; MARGIN: 5px 0px 0px; WIDTH: 160px; PADDING-TOP: 0px
}
.toggle_link {
	CLEAR: both; MARGIN: 8px 5px 5px; TEXT-TRANSFORM: lowercase; =
TEXT-ALIGN: right
}
#just_added {
	FONT-SIZE: 10px! important; TEXT-TRANSFORM: lowercase
}
#just_added A {
	FONT-SIZE: 10px
}
#just_added TABLE TD {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; WIDTH: =
100px; PADDING-TOP: 5px
}
#just_added SPAN {
	DISPLAY: block; FONT-SIZE: 11px! important; PADDING-BOTTOM: 3px
}
#just_added SPAN.date_added {
	FONT-SIZE: 10px
}
#video_player {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; BACKGROUND: #0d0d0d; =
PADDING-BOTTOM: 5px; PADDING-TOP: 5px
}
#video_player #flash_container_wrapper {
	FLOAT: right; WIDTH: 400px; HEIGHT: 330px
}
#video_player #flash_container_wrapper #flash_container {
	Z-INDEX: 3; POSITION: absolute
}
#video_info {
	LINE-HEIGHT: 1.3
}
#video_info .editors_pick {
	FONT-SIZE: 14px; MARGIN: 0px 0px 7px
}
#video_info P {
	MARGIN-TOP: 0px; MARGIN-BOTTOM: 5px
}
.video_info_title {
	FONT-WEIGHT: bold; FONT-SIZE: 16px; COLOR: #f41917
}
.video_info_stats {
=09
}
#video_info .video_info_stats P {
	FONT-WEIGHT: normal; MARGIN: 3px 0px
}
.photo_info_stats P {
	FONT-WEIGHT: normal; MARGIN: 3px 0px
}
.video_info_stats .views .label {
	PADDING-RIGHT: 15px; BACKGROUND: url(../images/front/view_icon.gif) =
no-repeat 100% 50%
}
.photo_info_stats .views .label {
	PADDING-RIGHT: 15px; BACKGROUND: url(../images/front/view_icon.gif) =
no-repeat 100% 50%
}
.video_info_stats .comments .label {
	PADDING-RIGHT: 15px; BACKGROUND: url(../images/front/comment_icon.gif) =
no-repeat 100% 50%; FONT-FAMILY: Helvetica, Arial, Verdana, sans-serif! =
important
}
.photo_info_stats .comments .label {
	PADDING-RIGHT: 15px; BACKGROUND: url(../images/front/comment_icon.gif) =
no-repeat 100% 50%; FONT-FAMILY: Helvetica, Arial, Verdana, sans-serif! =
important
}
.video_info_stats .comments A {
	FONT-FAMILY: Helvetica, Arial, Verdana, sans-serif! important
}
.photo_info_stats .comments A {
	FONT-FAMILY: Helvetica, Arial, Verdana, sans-serif! important
}
.video_info_stats .rating {
	FONT-WEIGHT: normal! important; FONT-FAMILY: Helvetica, Arial, Verdana, =
sans-serif! important
}
.photo_info_stats .rating {
	FONT-WEIGHT: normal! important; FONT-FAMILY: Helvetica, Arial, Verdana, =
sans-serif! important
}
.video_info_stats .rating .label {
	PADDING-RIGHT: 15px; BACKGROUND: url(../images/front/rating_icon.gif) =
no-repeat 100% 50%
}
.photo_info_stats .rating .label {
	PADDING-RIGHT: 15px; BACKGROUND: url(../images/front/rating_icon.gif) =
no-repeat 100% 50%
}
.video_info_stats .rate_this {
	FONT-FAMILY: Helvetica, Arial, Verdana, sans-serif! important
}
.photo_info_stats .rate_this {
	FONT-FAMILY: Helvetica, Arial, Verdana, sans-serif! important
}
.video_info_stats .rate_this A {
	FLOAT: left; MARGIN: 5px 0px; WIDTH: 37px; TEXT-INDENT: -9999px; =
HEIGHT: 29px
}
.photo_info_stats .rate_this A {
	FLOAT: left; MARGIN: 5px 0px; WIDTH: 37px; TEXT-INDENT: -9999px; =
HEIGHT: 29px
}
.video_info_stats .rate_this A.thumbs_up:hover {
	BACKGROUND-POSITION: right top
}
.video_info_stats .rate_this A.thumbs_down:hover {
	BACKGROUND-POSITION: right top
}
.photo_info_stats .rate_this A.thumbs_up:hover {
	BACKGROUND-POSITION: right top
}
.photo_info_stats .rate_this A.thumbs_down:hover {
	BACKGROUND-POSITION: right top
}
.video_info_stats .rate_this A.thumbs_up {
	BACKGROUND: url(../images/front/thumbs_up.gif) no-repeat left top; =
MARGIN-RIGHT: 3px
}
.photo_info_stats .rate_this A.thumbs_up {
	BACKGROUND: url(../images/front/thumbs_up.gif) no-repeat left top; =
MARGIN-RIGHT: 3px
}
.video_info_stats .rate_this A.thumbs_down {
	BACKGROUND: url(../images/front/thumbs_down.gif) no-repeat left top
}
.photo_info_stats .rate_this A.thumbs_down {
	BACKGROUND: url(../images/front/thumbs_down.gif) no-repeat left top
}
.video_info_stats .share {
	CLEAR: left
}
.video_info_stats .share A {
	PADDING-RIGHT: 8px; BACKGROUND: url(../images/front/red_arrow.gif) =
no-repeat 100% 50%; COLOR: white
}
.url_copy_container {
	PADDING-BOTTOM: 8px; VERTICAL-ALIGN: middle; WIDTH: 170px; PADDING-TOP: =
5px
}
.url_copy_container LABEL {
	DISPLAY: block
}
.url_copy_container INPUT {
	BORDER-RIGHT: #777 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: #777 1px =
solid; PADDING-LEFT: 2px; FONT-SIZE: 10px; BACKGROUND: black; =
MARGIN-BOTTOM: 2px; PADDING-BOTTOM: 2px; BORDER-LEFT: #777 1px solid; =
WIDTH: 100px; COLOR: #f41917; MARGIN-RIGHT: 3px; PADDING-TOP: 2px; =
BORDER-BOTTOM: #777 1px solid
}
.url_copy_container A {
	MARGIN-TOP: -20px; BACKGROUND: url(../images/front/copy_btn.gif) =
no-repeat left top; FLOAT: right; WIDTH: 46px; TEXT-INDENT: -9999px; =
MARGIN-RIGHT: 10px; HEIGHT: 20px
}
.url_copy_container A:hover {
	BACKGROUND-POSITION: right top
}
.more_from_show_header {
	FONT-SIZE: 21px; TEXT-TRANSFORM: lowercase
}
.comments_header {
	FONT-SIZE: 21px; TEXT-TRANSFORM: lowercase
}
.comments_header {
	MARGIN-TOP: 30px; MARGIN-BOTTOM: 5px
}
#more_from_show {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; BACKGROUND: #0d0d0d; =
PADDING-BOTTOM: 5px; MARGIN: 0px 20px 20px; OVERFLOW: hidden; =
PADDING-TOP: 5px
}
.thumb_list_toggle {
	PADDING-RIGHT: 0px; MARGIN-TOP: -35px; PADDING-LEFT: 0px; =
PADDING-BOTTOM: 8px; TEXT-TRANSFORM: lowercase; PADDING-TOP: 8px; =
LIST-STYLE-TYPE: none; TEXT-ALIGN: right
}
.thumb_list_toggle LI {
	DISPLAY: inline
}
#thumb_list_toggle_list {
	PADDING-LEFT: 7px; MARGIN-LEFT: 5px; BORDER-LEFT: #f41917 1px solid
}
.thumb_list_toggle LI.selected A {
	COLOR: #aaa
}
.thumb_list_toggle LI.selected A:hover {
	CURSOR: default; TEXT-DECORATION: none
}
#more_from_show_thumbs_container {
	OVERFLOW: auto; WIDTH: 525px; POSITION: relative
}
#more_from_show_list {
	OVERFLOW: auto; POSITION: relative; HEIGHT: 480px
}
.segment_list {
	CLEAR: both; FLOAT: left; PADDING-BOTTOM: 7px; MARGIN: 7px 0px; =
BORDER-BOTTOM: #222 1px solid
}
.segment_list P {
	MARGIN: 0px
}
.segment_list .image {
	FLOAT: left
}
.segment_list .views {
	FLOAT: right; WIDTH: 390px; MARGIN-RIGHT: 10px
}
.segment_list .title {
	FLOAT: right; WIDTH: 390px; MARGIN-RIGHT: 10px
}
.segment_list .description {
	FLOAT: right; WIDTH: 390px; MARGIN-RIGHT: 10px
}
.segment_list .title {
	MARGIN-TOP: 7px; FONT-SIZE: 12px; MARGIN-BOTTOM: 7px; COLOR: #f41917
}
.segment_list .description {
	LINE-HEIGHT: 1.3
}
#more_from_season_list {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: =
5px; TEXT-TRANSFORM: lowercase; PADDING-TOP: 25px; LIST-STYLE-TYPE: none
}
#more_from_season_list LI {
	BORDER-RIGHT: red 1px solid; PADDING-RIGHT: 9px; FLOAT: left; =
MARGIN-RIGHT: 7px
}
#more_from_season_list LI.last {
	PADDING-RIGHT: 0px; MARGIN-RIGHT: 0px; BORDER-RIGHT-STYLE: none
}
#random_jackass {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: #0d0d0d; =
PADDING-BOTTOM: 3px; TEXT-TRANSFORM: lowercase; PADDING-TOP: 3px; =
TEXT-ALIGN: center
}
#random_jackass IMG {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
VERTICAL-ALIGN: middle; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: =
none
}
#more_videos_container {
=09
}
#more_videos {
	TEXT-TRANSFORM: lowercase; LIST-STYLE-TYPE: none
}
#season_list {
	TEXT-TRANSFORM: lowercase; LIST-STYLE-TYPE: none
}
#more_videos LI {
	PADDING-RIGHT: 5px; PADDING-LEFT: 35px; BACKGROUND: =
url(../images/front/more_videos_bar.gif) no-repeat left top; =
PADDING-BOTTOM: 10px; MARGIN: 3px 0px; WIDTH: 268px; PADDING-TOP: 10px; =
HEIGHT: 12px
}
#season_list LI {
	PADDING-RIGHT: 5px; PADDING-LEFT: 35px; BACKGROUND: =
url(../images/front/more_videos_bar.gif) no-repeat left top; =
PADDING-BOTTOM: 10px; MARGIN: 3px 0px; WIDTH: 268px; PADDING-TOP: 10px; =
HEIGHT: 12px
}
#more_videos LI A {
	DISPLAY: block; WIDTH: 100%; HEIGHT: 100%
}
#season_list LI A {
	DISPLAY: block; WIDTH: 100%; HEIGHT: 100%
}
.thumb_link {
=09
}
.thumb_link .play_icon {
	BACKGROUND: url(../images/front/play_icon.gif) no-repeat left top; =
MARGIN: 3px; WIDTH: 14px; POSITION: absolute; HEIGHT: 11px
}
BODY#search #left_column {
	WIDTH: 760px
}
BODY#search #right_column {
	WIDTH: 120px; PADDING-TOP: 68px
}
#search_header {
	FONT-SIZE: 22px; TEXT-TRANSFORM: lowercase; COLOR: #42423f
}
#search_header .search_term {
	COLOR: #f41917
}
#search_header .search_count {
	DISPLAY: none
}
#search_row1 {
=09
}
#search_row2 {
	CLEAR: both; PADDING-RIGHT: 10px; PADDING-LEFT: 10px; BACKGROUND: =
#0d0d0d; PADDING-BOTTOM: 10px; MARGIN: 5px 0px 25px; PADDING-TOP: 10px
}
#search_page_search {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; MARGIN-BOTTOM: =
15px; PADDING-BOTTOM: 1px; PADDING-TOP: 1px
}
#search_page_search LABEL {
	DISPLAY: none
}
#search_page_search INPUT {
	BORDER-RIGHT: #555 1px solid; PADDING-RIGHT: 3px; BORDER-TOP: #555 1px =
solid; PADDING-LEFT: 3px; PADDING-BOTTOM: 0px; VERTICAL-ALIGN: bottom; =
BORDER-LEFT: #555 1px solid; WIDTH: 163px; PADDING-TOP: 0px; =
BORDER-BOTTOM: #555 1px solid; HEIGHT: 17px
}
#search_page_search BUTTON {
	BACKGROUND: url(../images/front/search_button.gif) no-repeat left top; =
MARGIN-LEFT: 5px; VERTICAL-ALIGN: bottom; WIDTH: 86px; BORDER-TOP-STYLE: =
none; TEXT-INDENT: -9999px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; HEIGHT: 19px; BORDER-BOTTOM-STYLE: none
}
#search_row2 .search_range {
	FLOAT: left; MARGIN: 0px; TEXT-TRANSFORM: lowercase
}
#gsa_search_options {
	CLEAR: both; FLOAT: left; MARGIN-BOTTOM: 20px
}
.search_by_options {
	BORDER-RIGHT: #42423f 1px solid; PADDING-RIGHT: 5px; FONT-SIZE: 16px; =
FLOAT: left; TEXT-TRANSFORM: lowercase; MARGIN-RIGHT: 20px; PADDING-TOP: =
3px; LIST-STYLE-TYPE: none
}
.order_by_options {
	FLOAT: right; TEXT-TRANSFORM: lowercase; LIST-STYLE-TYPE: none
}
.image_toggle {
	FONT-SIZE: 12px; FLOAT: right; TEXT-TRANSFORM: lowercase; PADDING-TOP: =
6px; LIST-STYLE-TYPE: none
}
.search_by_options LI {
	BORDER-RIGHT: white 1px solid; PADDING-RIGHT: 8px; FLOAT: left; =
MARGIN-RIGHT: 8px
}
.order_by_options LI {
	BORDER-RIGHT: white 1px solid; PADDING-RIGHT: 8px; FLOAT: left; =
MARGIN-RIGHT: 8px
}
.image_toggle LI {
	BORDER-RIGHT: white 1px solid; PADDING-RIGHT: 8px; FLOAT: left; =
MARGIN-RIGHT: 8px
}
.search_by_options LI {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-BOTTOM-STYLE: none
}
.order_by_options LI.last {
	PADDING-RIGHT: 0px; MARGIN-RIGHT: 0px; BORDER-RIGHT-STYLE: none
}
.image_toggle LI.last {
	PADDING-RIGHT: 0px; MARGIN-RIGHT: 0px; BORDER-RIGHT-STYLE: none
}
.search_by_options LI.selected A {
	COLOR: white
}
.order_by_options LI.selected A {
	COLOR: white
}
.image_toggle LI.selected A {
	COLOR: white
}
.search_by_options LI.selected A:hover {
	CURSOR: default; TEXT-DECORATION: none
}
.order_by_options LI.selected A:hover {
	CURSOR: default; TEXT-DECORATION: none
}
.image_toggle LI.selected A:hover {
	CURSOR: default; TEXT-DECORATION: none
}
#gsa_search_results {
	CLEAR: both
}
.gsa_search_result {
	CLEAR: both; PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: =
10px; MARGIN: 4px 0px 15px; PADDING-TOP: 5px
}
.gsa_search_result .text {
	FLOAT: left; WIDTH: 640px
}
.gsa_search_result .result_title {
=09
}
.gsa_search_result .result_excerpt {
=09
}
.gsa_search_result .result_date {
=09
}
.gsa_search_result .result_title {
	MARGIN-TOP: 3px; FONT-SIZE: 16px; MARGIN-BOTTOM: 3px
}
.gsa_search_result .result_excerpt {
	MARGIN-BOTTOM: 0px; LINE-HEIGHT: 1.4
}
.gsa_search_result .result_image {
	FLOAT: left; MARGIN: 0px 15px 0px 0px; WIDTH: 95px
}
.gsa_search_result .result_extras SPAN {
	BORDER-RIGHT: white 1px solid; PADDING-RIGHT: 10px; TEXT-TRANSFORM: =
lowercase; MARGIN-RIGHT: 5px
}
.gsa_search_result .result_extras .result_view_count {
	BORDER-RIGHT-STYLE: none
}
.gsa_search_result .result_extras .result_view_count .views {
	PADDING-RIGHT: 15px; BACKGROUND: url(../images/front/view_icon.gif) =
no-repeat 100% 50%; BORDER-TOP-STYLE: none; MARGIN-RIGHT: 0px; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: =
none
}
#gsa_search_pagination {
	CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 14px; =
PADDING-BOTTOM: 8px; PADDING-TOP: 8px; TEXT-ALIGN: center
}
#gsa_search_pagination A {
	MARGIN: 0px 3px
}
#gsa_suggestion {
	FONT-SIZE: 14px
}
#gsa_suggestion .suggestion_term {
	FONT-WEIGHT: bold; FONT-STYLE: italic
}
#gsa_no_results_notice {
	PADDING-RIGHT: 25px; PADDING-LEFT: 25px; FONT-SIZE: 14px; BACKGROUND: =
url(../images/front/red_arrow.gif) #0d0d0d no-repeat 10px 25px; =
PADDING-BOTTOM: 20px; TEXT-TRANSFORM: lowercase; PADDING-TOP: 20px
}
#gsa_no_results_notice .search_term {
	COLOR: #f41917
}
#gsa_no_results_suggestions {
	FONT-SIZE: 14px; LINE-HEIGHT: 1.4
}
#gsa_no_results_suggestions H3 {
	FONT-SIZE: 16px; MARGIN-BOTTOM: 7px
}
#gsa_no_results_suggestions DT {
	CLEAR: left; FLOAT: left; WIDTH: 25px; COLOR: #f41917; TEXT-ALIGN: =
right
}
#gsa_no_results_suggestions DD {
	MARGIN-BOTTOM: 10px; MARGIN-LEFT: 30px
}
BODY#season #right_column {
	PADDING-TOP: 80px
}
#season_synopsis {
	PADDING-RIGHT: 7px; PADDING-LEFT: 7px; BACKGROUND: #0d0d0d; =
PADDING-BOTTOM: 7px; PADDING-TOP: 7px
}
#season_photo {
	FLOAT: left; WIDTH: 320px
}
#season_photo .photo {
	DISPLAY: block; FONT-STYLE: italic; TEXT-ALIGN: center
}
#season_photo .caption {
	DISPLAY: block; FONT-STYLE: italic; TEXT-ALIGN: center
}
#season_photo .photo {
	PADDING-BOTTOM: 5px
}
#season_description {
	PADDING-RIGHT: 0px; PADDING-LEFT: 10px; FLOAT: left; PADDING-BOTTOM: =
0px; WIDTH: 180px; LINE-HEIGHT: 1.4; PADDING-TOP: 5px
}
#season_description .title {
	MARGIN-TOP: 0px; MARGIN-BOTTOM: 7px
}
#episodes_container {
	FLOAT: left; MARGIN: 0px 0px 10px
}
#pick_of_season_container {
	FLOAT: left; MARGIN: 0px 0px 10px
}
#episodes {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; BACKGROUND: #0d0d0d; FLOAT: =
left; PADDING-BOTTOM: 5px; WIDTH: 550px; PADDING-TOP: 5px
}
#pick_of_season {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; BACKGROUND: #0d0d0d; FLOAT: =
left; PADDING-BOTTOM: 5px; WIDTH: 550px; PADDING-TOP: 5px
}
.pick_of_season_item {
	FLOAT: left; MARGIN: 10px; WIDTH: 255px
}
.episode_item {
	FLOAT: left; MARGIN: 10px; WIDTH: 255px
}
.video_link {
	FLOAT: left; MARGIN: 10px; WIDTH: 255px
}
.pick_of_season_title {
	FONT-SIZE: 12px; FLOAT: right; MARGIN: 0px 0px 8px; TEXT-TRANSFORM: =
lowercase; WIDTH: 150px; COLOR: #f41917
}
.episode_title {
	FONT-SIZE: 12px; FLOAT: right; MARGIN: 0px 0px 8px; TEXT-TRANSFORM: =
lowercase; WIDTH: 150px; COLOR: #f41917
}
.video_link_title {
	FONT-SIZE: 12px; FLOAT: right; MARGIN: 0px 0px 8px; TEXT-TRANSFORM: =
lowercase; WIDTH: 150px; COLOR: #f41917
}
.pick_of_season_image {
	FLOAT: left; MARGIN: 0px 0px 8px; WIDTH: 93px
}
.episode_image {
	FLOAT: left; MARGIN: 0px 0px 8px; WIDTH: 93px
}
.video_link_image {
	FLOAT: left; MARGIN: 0px 0px 8px; WIDTH: 93px
}
.pick_of_season_description {
	MARGIN-TOP: 0px; FLOAT: right; MARGIN-BOTTOM: 0px; WIDTH: 150px; =
LINE-HEIGHT: 1.3
}
.episode_description {
	MARGIN-TOP: 0px; FLOAT: right; MARGIN-BOTTOM: 0px; WIDTH: 150px; =
LINE-HEIGHT: 1.3
}
.video_link_description {
	MARGIN-TOP: 0px; FLOAT: right; MARGIN-BOTTOM: 0px; WIDTH: 150px; =
LINE-HEIGHT: 1.3
}
#category_list {
	PADDING-RIGHT: 5px; MARGIN-TOP: 7px; PADDING-LEFT: 5px; BACKGROUND: =
#0d0d0d; PADDING-BOTTOM: 5px; PADDING-TOP: 5px; LIST-STYLE-TYPE: none
}
#category_list LI {
	DISPLAY: block; MARGIN-BOTTOM: 6px
}
#photo_searchables {
	PADDING-RIGHT: 20px; PADDING-LEFT: 20px; BACKGROUND: #0d0d0d; =
PADDING-BOTTOM: 10px; PADDING-TOP: 10px
}
#searchable_categories {
	FONT-SIZE: 12px
}
#searchable_categories .searchable_category {
	PADDING-LEFT: 7px; MARGIN-LEFT: 5px; BORDER-LEFT: white 1px solid
}
#searchable_categories .first {
	MARGIN-LEFT: 0px; BORDER-LEFT-STYLE: none
}
#searchable_categories A.selected {
	COLOR: white
}
.photo_searchable_links {
	FLOAT: left; LIST-STYLE-TYPE: none
}
.photo_searchable_links .photo_searchable_link {
	FLOAT: left; MARGIN: 0px 5px 8px 0px; WIDTH: 120px
}
BODY#photos #right_column {
	PADDING-TOP: 40px
}
BODY#show_photo #right_column {
	PADDING-TOP: 40px
}
#photo_info {
	PADDING-RIGHT: 12px; MARGIN-TOP: 50px; PADDING-LEFT: 12px; BACKGROUND: =
#0d0d0d; PADDING-BOTTOM: 5px; PADDING-TOP: 5px
}
#photo_title {
	DISPLAY: none; FONT-WEIGHT: normal; FONT-SIZE: 20px; MARGIN: 10px 0px =
15px; TEXT-TRANSFORM: lowercase; COLOR: #f41917
}
#photo_container {
	BACKGROUND: #0d0d0d; MARGIN-BOTTOM: 30px
}
#photo_nav {
	PADDING-RIGHT: 5px; PADDING-LEFT: 0px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 5px
}
#photo_nav P {
	MARGIN-TOP: 0px
}
#photo_nav #previous_photo {
	FLOAT: left; MARGIN-RIGHT: 10px
}
#photo_nav A {
	DISPLAY: block; MARGIN: 0px; WIDTH: 48px; TEXT-INDENT: -9999px; HEIGHT: =
20px
}
#photo_nav #previous_photo A {
	BACKGROUND: url(../images/front/back_btn.gif) no-repeat left top
}
#photo_nav #next_photo {
	FLOAT: left; MARGIN-RIGHT: 10px
}
#photo_nav #next_photo A {
	BACKGROUND: url(../images/front/next_btn.gif) no-repeat left top
}
#photo_nav #previous_photo A:hover {
	BACKGROUND-POSITION: right top
}
#photo_nav #next_photo A:hover {
	BACKGROUND-POSITION: right top
}
#photo {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 20px; =
PADDING-TOP: 20px; TEXT-ALIGN: center
}
#photo_number {
	MARGIN-TOP: 4px! important; FONT-SIZE: 14px; FLOAT: left
}
#photo_credit {
	PADDING-RIGHT: 7px; PADDING-LEFT: 7px; BACKGROUND: #282828; =
PADDING-BOTTOM: 7px; PADDING-TOP: 7px; TEXT-ALIGN: left
}
#photo_caption {
	MARGIN-TOP: 0px; FONT-SIZE: 12px; LINE-HEIGHT: 1.3
}
.photo_info_stats {
	TEXT-TRANSFORM: lowercase
}
.photo_info_stats P {
=09
}
.photo_info_stats .options {
	CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: =
10px; PADDING-TOP: 10px; LIST-STYLE-TYPE: none
}
.photo_info_stats .options LI {
	DISPLAY: inline; FONT-SIZE: 12px
}
.photo_info_stats .options LI.share {
	BORDER-RIGHT: #f41917 1px solid; PADDING-RIGHT: 7px; MARGIN-RIGHT: 5px
}
#photo_widget_wrapper {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; BACKGROUND: #0d0d0d; =
PADDING-BOTTOM: 10px; MARGIN: 20px 0px; PADDING-TOP: 10px
}
#photo_widget {
	BACKGROUND: url(../images/front/photo_widget_bg.gif) repeat-y left top; =
WIDTH: 281px
}
#photo_widget_header {
	PADDING-RIGHT: 0px; PADDING-LEFT: 20px; FONT-SIZE: 14px; BACKGROUND: =
url(../images/front/photo_widget_header.gif) no-repeat left top; =
PADDING-BOTTOM: 10px; MARGIN: 0px; TEXT-TRANSFORM: lowercase; =
PADDING-TOP: 8px; TEXT-ALIGN: center
}
.photo_thumb {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px; TEXT-ALIGN: center
}
.photo_thumb A {
	DISPLAY: block; WIDTH: 75px; LINE-HEIGHT: 75px; HEIGHT: 75px
}
.photo_thumb A IMG {
	VERTICAL-ALIGN: middle
}
#photo_thumb_preview {
	MARGIN-LEFT: 17px; OVERFLOW: hidden; WIDTH: 170px; POSITION: relative; =
HEIGHT: 77px
}
#photo_thumb_preview_table {
	POSITION: absolute; BORDER-COLLAPSE: collapse
}
#photo_widget #photo_count {
	MARGIN-TOP: -55px; MARGIN-BOTTOM: 25px; MARGIN-LEFT: 187px; WIDTH: =
90px; POSITION: relative
}
#photo_widget #photo_count SPAN.count {
	DISPLAY: block; FONT-SIZE: 24px; TEXT-ALIGN: center
}
#photo_widget #photo_count SPAN.label {
	MARGIN-TOP: -2px; DISPLAY: block; FONT-SIZE: 13px; TEXT-TRANSFORM: =
lowercase; TEXT-ALIGN: center
}
#photo_widget_nav {
	PADDING-LEFT: 20px; FLOAT: left; MARGIN-BOTTOM: 5px
}
#photo_widget_nav DIV {
	FLOAT: left
}
#photo_widget_nav #browse_label {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; FONT-WEIGHT: normal; =
PADDING-BOTTOM: 2px; TEXT-TRANSFORM: lowercase; WIDTH: 70px; =
PADDING-TOP: 2px; TEXT-ALIGN: center
}
#prev_thumb_button {
	WIDTH: 37px; HEIGHT: 14px
}
#next_thumb_button {
	WIDTH: 37px; HEIGHT: 14px
}
#prev_thumb_button A {
	BACKGROUND: url(../images/front/photo_widget_prev.gif) no-repeat left =
top
}
#next_thumb_button A {
	BACKGROUND: url(../images/front/photo_widget_next.gif) no-repeat left =
top
}
#prev_thumb_button A {
	DISPLAY: block; WIDTH: 100%; TEXT-INDENT: -9999px; HEIGHT: 100%
}
#next_thumb_button A {
	DISPLAY: block; WIDTH: 100%; TEXT-INDENT: -9999px; HEIGHT: 100%
}
#prev_thumb_button A:hover {
	BACKGROUND-POSITION: right top
}
#next_thumb_button A:hover {
	BACKGROUND-POSITION: right top
}
#vert_more_from_show_sb {
	BORDER-RIGHT: #222 1px solid; BORDER-TOP: #222 1px solid; RIGHT: 0px; =
BACKGROUND: black; FLOAT: right; BORDER-LEFT: #222 1px solid; WIDTH: =
16px; BORDER-BOTTOM: #222 1px solid; POSITION: relative; TOP: 0px; =
HEIGHT: 480px
}
#vert_more_from_show_sb_knob {
	Z-INDEX: 10; RIGHT: 0px; BACKGROUND: =
url(../images/front/scroll_knob.gif) no-repeat 0% 50%; WIDTH: 16px; =
POSITION: relative; TOP: 0px
}
#horz_more_from_show_sb {
	BORDER-RIGHT: #222 1px solid; BORDER-TOP: #222 1px solid; BACKGROUND: =
black; LEFT: 0px; BORDER-LEFT: #222 1px solid; WIDTH: 525px; =
BORDER-BOTTOM: #222 1px solid; POSITION: relative; TOP: 0px; HEIGHT: =
16px
}
#horz_more_from_show_sb_knob {
	Z-INDEX: 10; BACKGROUND: url(../images/front/scroll_knob_h.gif) =
no-repeat 50% 0%; LEFT: 0px; POSITION: relative; TOP: 0px; HEIGHT: 16px
}
.Flux {
	CLEAR: none! important; FONT-FAMILY: Helvetica, Arial, Verdana, =
sans-serif! important
}
.Widget {
	CLEAR: none! important; FONT-FAMILY: Helvetica, Arial, Verdana, =
sans-serif! important
}
.Flux .quickMenu {
	PADDING-RIGHT: 0px! important; COLOR: white! important
}
.Flux .quickMenu * {
	FONT-WEIGHT: normal; COLOR: white! important
}
.Flux .quickMenu * A {
=09
}
.Flux .communityMembers {
	BORDER-TOP-STYLE: none! important; BORDER-RIGHT-STYLE: none! important; =
BORDER-LEFT-STYLE: none! important; BORDER-BOTTOM-STYLE: none! important
}
.Flux .communityMembersContent {
	BORDER-TOP-STYLE: none! important; BORDER-RIGHT-STYLE: none! important; =
BORDER-LEFT-STYLE: none! important; BORDER-BOTTOM-STYLE: none! important
}
.Flux #CommunityMembers_0_communityMembersList {
=09
}
.Flux #CommunityMembers_0_communityMembersList DIV {
	TEXT-ALIGN: left! important
}
.Flux .communityMembersIconItem {
	WIDTH: 70px
}
.Flux .communityMembersIconItem IMG {
	PADDING-RIGHT: 1px! important; PADDING-LEFT: 1px! important; =
PADDING-BOTTOM: 1px! important; BORDER-TOP-STYLE: none! important; =
PADDING-TOP: 1px! important; BORDER-RIGHT-STYLE: none! important; =
BORDER-LEFT-STYLE: none! important; BORDER-BOTTOM-STYLE: none! important
}
.Flux .communityMembersIconItem:hover IMG {
	BORDER-RIGHT: #f41917 1px solid; PADDING-RIGHT: 0px! important; =
BORDER-TOP: #f41917 1px solid; PADDING-LEFT: 0px! important; =
PADDING-BOTTOM: 0px! important; BORDER-LEFT: #f41917 1px solid; =
PADDING-TOP: 0px! important; BORDER-BOTTOM: #f41917 1px solid
}
.Flux .communityMembersTitle {
	COLOR: #f41917! important; TEXT-ALIGN: right! important
}
.Flux .communityMembersTitle B {
	DISPLAY: block! important; FONT-SIZE: 18px! important; TEXT-TRANSFORM: =
lowercase; COLOR: white! important; FONT-FAMILY: Helvetica, Arial, =
sans-serif! important; TEXT-ALIGN: left! important
}
.Flux .communityMembersTitle A {
	FONT-SIZE: 12px! important; COLOR: #f41917! important
}
.comments_count .Flux {
	DISPLAY: inline! important
}
.comments_count .Flux TABLE {
	DISPLAY: inline! important
}
.comments_count .Flux TABLE TD {
	MARGIN-BOTTOM: -6px! important; PADDING-TOP: 5px! important
}
.comments_count .Flux TABLE A {
	COLOR: #f41917! important
}
.comments_count .Flux TABLE A:hover {
	TEXT-DECORATION: underline
}
DIV.fshare {
	MARGIN: 10px 0px 5px
}
.share_form_wrapper {
	Z-INDEX: 5000; POSITION: relative
}
.article_container .share_form_wrapper {
	CLEAR: both
}
.share_form {
	Z-INDEX: 9000; RIGHT: -180px; BACKGROUND: =
url(../images/front/share_form_bg.gif) no-repeat left top; WIDTH: 300px; =
PADDING-TOP: 9px; POSITION: absolute; TOP: 5px
}
.share_form_inner_wrapper {
	BORDER-RIGHT: black 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: black =
1px; PADDING-LEFT: 10px; BACKGROUND: =
url(../images/front/share_form_gradient.jpg) #333 repeat-x left bottom; =
PADDING-BOTTOM: 10px; BORDER-LEFT: black 1px solid; PADDING-TOP: 10px; =
BORDER-BOTTOM: black 1px solid
}
.share_form_header {
	MARGIN-TOP: 0px; FONT-SIZE: 16px; MARGIN-BOTTOM: 5px
}
.share_form_copy {
	FONT-WEIGHT: bold; FONT-SIZE: 12px; MARGIN-BOTTOM: 8px! important; =
COLOR: #999
}
.share_form_error {
	FONT-WEIGHT: bold; FONT-SIZE: 12px; MARGIN: 8px 0px; COLOR: red
}
.share_form_success {
	FONT-WEIGHT: bold; FONT-SIZE: 12px; MARGIN: 8px 0px; COLOR: green
}
BODY#show_video .share_form {
	RIGHT: auto; LEFT: 5px; TOP: 0px
}
BODY#show_photo .share_form {
	RIGHT: auto; LEFT: -10px
}
.share_form LABEL {
	DISPLAY: block; FONT-SIZE: 9px; MARGIN-BOTTOM: 2px; COLOR: #999
}
.share_form .form_item INPUT {
	PADDING-RIGHT: 2px; DISPLAY: block; PADDING-LEFT: 2px; MARGIN-BOTTOM: =
8px; PADDING-BOTTOM: 2px; WIDTH: 250px; PADDING-TOP: 2px
}
.share_form .form_item TEXTAREA {
	PADDING-RIGHT: 2px; DISPLAY: block; PADDING-LEFT: 2px; MARGIN-BOTTOM: =
8px; PADDING-BOTTOM: 2px; WIDTH: 250px; PADDING-TOP: 2px
}
.share_form .form_item TEXTAREA {
	FONT-FAMILY: Helvetica, Arial, Verdana, sans-serif; HEIGHT: 100px
}
.share_form .submit_button {
	TEXT-ALIGN: center
}
.share_form .submit_button BUTTON {
	DISPLAY: block; BACKGROUND: url(../images/front/share_form_submit.gif) =
no-repeat left top; MARGIN: 0px auto; WIDTH: 66px; CURSOR: pointer; =
BORDER-TOP-STYLE: none; TEXT-INDENT: -9999px; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; HEIGHT: 20px; BORDER-BOTTOM-STYLE: none
}
.share_form .submit_button BUTTON:hover {
	BACKGROUND-POSITION: right top
}
.share_form .close_button {
	RIGHT: 10px; BACKGROUND: url(../images/front/close_icon.gif) no-repeat =
left top; WIDTH: 13px; POSITION: absolute; TOP: 19px; HEIGHT: 11px
}
.share_form .close_button A {
	DISPLAY: block; WIDTH: 100%; TEXT-INDENT: -9999px; HEIGHT: 100%
}
#header_404 {
	MARGIN-TOP: 7px; FONT-SIZE: 24px; MARGIN-BOTTOM: 5px; TEXT-TRANSFORM: =
lowercase; COLOR: #f41917
}
#header_500 {
	MARGIN-TOP: 7px; FONT-SIZE: 24px; MARGIN-BOTTOM: 5px; TEXT-TRANSFORM: =
lowercase; COLOR: #f41917
}
#header_maintenance {
	MARGIN-TOP: 7px; FONT-SIZE: 24px; MARGIN-BOTTOM: 5px; TEXT-TRANSFORM: =
lowercase; COLOR: #f41917
}
#copy_404 {
	FONT-SIZE: 12px; LINE-HEIGHT: 1.5
}
#copy_500 {
	FONT-SIZE: 12px; LINE-HEIGHT: 1.5
}
#copy_maintenance {
	FONT-SIZE: 12px; LINE-HEIGHT: 1.5
}
#sign_up_wrapper {
	WIDTH: 300px
}
#sign_up {
	BACKGROUND: url(../images/front/sign_up_butt.jpg) no-repeat left top; =
PADDING-TOP: 5px; HEIGHT: 245px
}
#sign_up_success {
	BACKGROUND: url(../images/front/sign_up_butt.jpg) no-repeat left top; =
PADDING-TOP: 5px; HEIGHT: 245px
}
#sign_up_error {
	BACKGROUND: url(../images/front/sign_up_butt.jpg) no-repeat left top; =
PADDING-TOP: 5px; HEIGHT: 245px
}
#sign_up_success {
	BACKGROUND-POSITION: center top
}
#sign_up_error {
	BACKGROUND-POSITION: right top
}
#sign_up_wrapper #sign_up_copy {
	DISPLAY: none
}
#sign_up_form {
	PADDING-RIGHT: 15px; MARGIN-TOP: 210px; PADDING-LEFT: 15px; =
PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#sign_up_form LABEL {
	DISPLAY: none; FONT-SIZE: 13px; MARGIN-BOTTOM: 3px; TEXT-TRANSFORM: =
lowercase
}
#sign_up_form .form_item INPUT {
	BORDER-RIGHT: black 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: black =
1px solid; DISPLAY: block; PADDING-LEFT: 2px; BACKGROUND: white; =
PADDING-BOTTOM: 2px; BORDER-LEFT: black 1px solid; WIDTH: 190px; =
PADDING-TOP: 2px; BORDER-BOTTOM: black 1px solid
}
#sign_up_form .submit_button {
	MARGIN-LEFT: 200px
}
#sign_up_form .submit_button BUTTON {
	DISPLAY: block; RIGHT: 0px; BACKGROUND: =
url(../images/front/share_form_submit.gif) no-repeat left top; MARGIN: =
0px auto; WIDTH: 66px; CURSOR: pointer; BORDER-TOP-STYLE: none; =
TEXT-INDENT: -9999px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; =
POSITION: relative; TOP: -21px; HEIGHT: 20px; BORDER-BOTTOM-STYLE: none
}
#sign_up_form .submit_button BUTTON:hover {
	BACKGROUND-POSITION: right top
}
#press_contacts {
=09
}
#press_contacts DT {
	DISPLAY: block; FONT-SIZE: 12px; MARGIN: 18px 0px 7px; COLOR: #434343; =
BORDER-BOTTOM: #222 1px solid
}
#press_contacts DD {
	DISPLAY: block; PADDING-LEFT: 15px; MARGIN: 10px 0px
}
#fuq_page H2 {
	MARGIN-TOP: 7px; FONT-WEIGHT: bold; FONT-SIZE: 24px; MARGIN-BOTTOM: =
15px; TEXT-TRANSFORM: lowercase; COLOR: #f41917
}
#fuq_page H3 {
	MARGIN-TOP: 25px; MARGIN-BOTTOM: 5px; COLOR: #f41917
}
#hamster_hockey {
=09
}
#hamster_hockey H2 {
	MARGIN-TOP: 7px; FONT-WEIGHT: bold; FONT-SIZE: 24px; MARGIN-BOTTOM: =
15px; TEXT-TRANSFORM: lowercase; COLOR: #f41917
}
#hamster_hockey P {
	TEXT-INDENT: 20px
}
#hamster_hockey P.image {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; BACKGROUND: #0d0d0d; =
PADDING-BOTTOM: 10px; MARGIN: 20px auto; WIDTH: 450px; TEXT-INDENT: 0px; =
PADDING-TOP: 10px
}
#hamster_hockey P.image IMG {
	DISPLAY: block; MARGIN-BOTTOM: 10px
}
#hamster_hockey P.image .caption {
	DISPLAY: block; FONT-STYLE: italic
}
BODY#landing24 {
=09
}
BODY#landing24 #left_column {
	PADDING-RIGHT: 50px; PADDING-LEFT: 50px; PADDING-BOTTOM: 50px; WIDTH: =
800px; PADDING-TOP: 50px
}
BODY#landing24 #right_column {
	DISPLAY: none
}
BODY#landing24 #marquee {
	FLOAT: left; MARGIN-BOTTOM: 30px; MARGIN-RIGHT: 20px
}
BODY#landing24 #schedule {
	BORDER-RIGHT: white 1px solid; BORDER-TOP: white 1px solid; BACKGROUND: =
#0d0d0d; FLOAT: left; MARGIN-BOTTOM: 30px; BORDER-LEFT: white 1px solid; =
WIDTH: 260px; BORDER-BOTTOM: white 1px solid; HEIGHT: 360px
}
#takeover_description {
	CLEAR: left; MARGIN: 20px 0px
}
#takeover_description P {
	FONT-SIZE: 14px; LINE-HEIGHT: 1.5
}
#takeover_links {
=09
}
#takeover_links DL {
	FLOAT: left; MARGIN: 20px 10px; WIDTH: 380px
}
#takeover_links DT {
	FONT-SIZE: 12px; FLOAT: right; WIDTH: 270px; LINE-HEIGHT: 1.5
}
#takeover_links DD {
	FONT-SIZE: 12px; FLOAT: right; WIDTH: 270px; LINE-HEIGHT: 1.5
}
#takeover_links DD.image {
	BORDER-RIGHT: white 1px solid; BORDER-TOP: white 1px solid; BACKGROUND: =
#0d0d0d; FLOAT: left; MARGIN-LEFT: 0px; BORDER-LEFT: white 1px solid; =
WIDTH: 90px; BORDER-BOTTOM: white 1px solid; HEIGHT: 70px
}
#takeover_links DT {
	FONT-SIZE: 18px; MARGIN: 0px 0px 10px; TEXT-TRANSFORM: lowercase; =
LINE-HEIGHT: 1
}

------=_NextPart_000_0013_01C867E3.D97C53A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.jackassworld.com/stylesheets/ie6.css?1201815291

#container {
	MARGIN-TOP: 10px
}
#nav {
	WIDTH: 900px! important
}
#nav LI {
	PADDING-RIGHT: 0px
}
#nav LI A {
	FONT-WEIGHT: bold; WIDTH: 55px
}
#nav #nav_jackass_25 A {
	WIDTH: 95px
}
#nav #nav_community A {
	WIDTH: 95px
}
#nav #nav_videos A {
	WIDTH: 65px! important
}
#nav #nav_photos A {
	WIDTH: 65px! important
}
#nav LI A:hover {
	BACKGROUND: none transparent scroll repeat 0% 0%; BORDER-TOP-STYLE: =
none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; =
BORDER-BOTTOM-STYLE: none
}
BODY#home #nav_home {
	BACKGROUND: none transparent scroll repeat 0% 0%; BORDER-TOP-STYLE: =
none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; =
BORDER-BOTTOM-STYLE: none
}
BODY#search #nav_home {
	BACKGROUND: none transparent scroll repeat 0% 0%; BORDER-TOP-STYLE: =
none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; =
BORDER-BOTTOM-STYLE: none
}
BODY#videos #nav_videos {
	BACKGROUND: none transparent scroll repeat 0% 0%; BORDER-TOP-STYLE: =
none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; =
BORDER-BOTTOM-STYLE: none
}
BODY#show_video #nav_videos {
	BACKGROUND: none transparent scroll repeat 0% 0%; BORDER-TOP-STYLE: =
none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; =
BORDER-BOTTOM-STYLE: none
}
#nav LI A:hover {
	BORDER-RIGHT: #333 1px solid; BACKGROUND: =
url(../images/front/nav_highlight.gif) repeat-x left top; MARGIN: 0px; =
BORDER-LEFT: #333 1px solid; TEXT-DECORATION: none
}
BODY#home #nav_home A {
	BORDER-RIGHT: #333 1px solid; BACKGROUND: =
url(../images/front/nav_highlight.gif) repeat-x left top; MARGIN: 0px; =
BORDER-LEFT: #333 1px solid; TEXT-DECORATION: none
}
BODY#search #nav_home A {
	BORDER-RIGHT: #333 1px solid; BACKGROUND: =
url(../images/front/nav_highlight.gif) repeat-x left top; MARGIN: 0px; =
BORDER-LEFT: #333 1px solid; TEXT-DECORATION: none
}
BODY#videos #nav_videos A {
	BORDER-RIGHT: #333 1px solid; BACKGROUND: =
url(../images/front/nav_highlight.gif) repeat-x left top; MARGIN: 0px; =
BORDER-LEFT: #333 1px solid; TEXT-DECORATION: none
}
BODY#show_video #nav_videos A {
	BORDER-RIGHT: #333 1px solid; BACKGROUND: =
url(../images/front/nav_highlight.gif) repeat-x left top; MARGIN: 0px; =
BORDER-LEFT: #333 1px solid; TEXT-DECORATION: none
}
#header_search {
	MARGIN-TOP: -2px
}
#left_column {
	WIDTH: 570px; HEIGHT: auto! important
}
#login {
	LEFT: 0px
}
.video_box {
	FLOAT: left
}
#header_search {
	TOP: 76px
}
#search_term {
	MARGIN-TOP: 2px
}
#login {
	Z-INDEX: 1000; MARGIN: 0px auto; WIDTH: 900px
}
#ie_footer_bleed_prevention {
	CLEAR: both; DISPLAY: block
}
#footer {
	PADDING-TOP: 10px
}
#left_footer {
	MARGIN-BOTTOM: 0px
}
A IMG {
	BORDER-RIGHT: #0d0d0d 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: =
#0d0d0d 1px solid; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; BORDER-LEFT: =
#0d0d0d 1px solid; PADDING-TOP: 0px; BORDER-BOTTOM: #0d0d0d 1px solid
}
#season_synopsis {
	MARGIN-BOTTOM: 15px
}
.pick_of_season_item {
	MARGIN: 10px 5px; WIDTH: 250px
}
.episode_item {
	MARGIN: 10px 5px; WIDTH: 250px
}
.video_link {
	MARGIN: 10px 5px; WIDTH: 250px
}
.pick_of_season_title {
	FONT-SIZE: 12px; FLOAT: right; MARGIN: 0px 0px 8px; WIDTH: 150px; =
COLOR: #f41917
}
.episode_title {
	FONT-SIZE: 12px; FLOAT: right; MARGIN: 0px 0px 8px; WIDTH: 150px; =
COLOR: #f41917
}
.video_link_title {
	FONT-SIZE: 12px; FLOAT: right; MARGIN: 0px 0px 8px; WIDTH: 150px; =
COLOR: #f41917
}
.pick_of_season_image {
	FLOAT: left; MARGIN: 0px 0px 8px; WIDTH: 93px
}
.episode_image {
	FLOAT: left; MARGIN: 0px 0px 8px; WIDTH: 93px
}
.video_link_image {
	FLOAT: left; MARGIN: 0px 0px 8px; WIDTH: 93px
}
.pick_of_season_description {
	CLEAR: both; MARGIN-TOP: 0px; LINE-HEIGHT: 1.3
}
.episode_description {
	MARGIN-TOP: 0px; FLOAT: right; WIDTH: 150px; LINE-HEIGHT: 1.3
}
.video_link_description {
	MARGIN-TOP: 0px; FLOAT: right; WIDTH: 150px; LINE-HEIGHT: 1.3
}
.url_copy_container {
	WIDTH: 150px
}
.url_copy_container INPUT {
	WIDTH: 80px
}
.url_copy_container A {
	DISPLAY: block; FLOAT: none; MARGIN-LEFT: 95px
}
.Flux SPAN {
	COLOR: white
}
#more_from_show {
	OVERFLOW-Y: hidden; WIDTH: 525px; MARGIN-RIGHT: 0px
}
.segment_list {
	WIDTH: 490px
}
.segment_list .views {
	FLOAT: right; WIDTH: 360px
}
.segment_list .title {
	FLOAT: right; WIDTH: 360px
}
.segment_list .description {
	FLOAT: right; WIDTH: 360px
}
#show_video #left_column {
	WIDTH: 570px
}
#season #left_column {
	WIDTH: 570px
}
#category #left_column {
	WIDTH: 570px
}
#horz_more_from_show_sb {
	MARGIN-BOTTOM: -20px; TOP: -40px
}
.article_container .share_form {
	RIGHT: -138px; TOP: 0px
}
#right_column {
	PADDING-TOP: 85px
}
.cast_profile_box {
	FLOAT: left
}
#photo_info {
	MARGIN-TOP: 90px
}
#photo_widget_nav {
	MARGIN-TOP: 15px; PADDING-LEFT: 25px; MARGIN-BOTTOM: 0px
}
#photo_count {
	MARGIN-TOP: -70px! important; MARGIN-BOTTOM: 15px! important
}
.photo_thumb {
=09
}
.photo_thumb IMG {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-BOTTOM-STYLE: none
}

------=_NextPart_000_0013_01C867E3.D97C53A0
Content-Type: multipart/alternative;
	boundary="----=_NextPart_001_0028_01C867E3.D985C980"


------=_NextPart_001_0028_01C867E3.D985C980
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.jackassworld.com/

=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>the official home of all things jackass | =
jackassworld</TITLE><!-- PAGEOK -->
<META http-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8">
<META=20
content=3D"welcome to jackassworld, the offical home for all things =
jackass. get your daily fix of jackass including videos, photos, =
interviews, movie clips, and news."=20
name=3Ddescription>
<META=20
content=3D"jackass, jackassworld, MTV Jackass, jackass photos, jackass =
Videos, jackass clips, jackass stunts, jackass pranks"=20
name=3Dkeywords>
<META content=3D"jackassworld home" name=3Dpage_title><LINK =
media=3Dscreen=20
href=3D"http://www.jackassworld.com/stylesheets/front.css?1201819934"=20
type=3Dtext/css rel=3DStylesheet><!--[if IE]><LINK media=3Dscreen=20
href=3D"http://www.jackassworld.com/stylesheets/ie6.css?1201815291" =
type=3Dtext/css=20
rel=3DStylesheet><![endif]-->
<SCRIPT =
src=3D"http://www.jackassworld.com/javascripts/prototype.js?1193090139"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://www.jackassworld.com/javascripts/effects.js?1193090139"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://www.jackassworld.com/javascripts/dragdrop.js?1193090139"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://www.jackassworld.com/javascripts/controls.js?1193090139"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://www.jackassworld.com/javascripts/application.js?1199745950"=
=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://www.jackassworld.com/javascripts/swfobject.js?1193433632"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://www.jackassworld.com/javascripts/scrollbar.js?1199745950"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://www.jackassworld.com/javascripts/mtvi_jackassworld.js?12012=
90028"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://www.jackassworld.com/javascripts/urlparser.js?1199745950"=20
type=3Dtext/javascript></SCRIPT>
<!-- for ads -->
<SCRIPT type=3Dtext/javascript>=0A=
        com.mtvi.ads.AdManager.setUrl('/vertical/jackassworld/');=0A=
        com.mtvi.ads.AdManager.setDartSite("mtv");=0A=
        com.mtvi.ads.AdManager.setZone("vertical/jackassworld");=0A=
        com.mtvi.ads.AdManager.setMedia("adj");=0A=
      </SCRIPT>

<SCRIPT src=3D"http://www.jackassworld.com/javascripts/jaw.js"=20
type=3Dtext/javascript></SCRIPT>

<META content=3D"MSHTML 6.00.6000.16481" name=3DGENERATOR></HEAD>
<BODY id=3Dhome>
<SCRIPT type=3Dtext/javascript>jaw.ads.init();</SCRIPT>

<SCRIPT src=3D"http://widgets.flux.com/-/Runtime.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://widgets.flux.com/-/Context.js?communityUcid=3D53FBFFFF000C2=
F9C0002FFFFFB53"=20
type=3Dtext/javascript></SCRIPT>

<DIV id=3Dlogin><!-- <p class=3D"login_welcome">=0A=
				<img src=3D"../images/front/user_thumb.jpg" /> =0A=
				Hi Party Boy, you are in =0A=
				<img src=3D"../images/front/flux_logo.gif" />=0A=
				, but not a member of jackassworld.=0A=
			</p>=0A=
			<p class=3D"login_options">=0A=
				<a class=3D"join_button" href=3D"#"><img alt=3D"Join jackassworld" =
src=3D"/images/front/join_button.gif?1193433632" /></a> or <a =
href=3D"#">log out</a>=0A=
			</p> -->
<SCRIPT type=3Dtext/javascript>=0A=
			  if (typeof(Flux) !=3D 'undefined')=0A=
			  Flux.Utils.WidgetsLoader.createWidget('QuickMenu', {uri: =
'http://www.jackassworld.com'});=0A=
  		</SCRIPT>
</DIV>
<DIV id=3Dcontainer>
<DIV id=3Dheader>
<H1><A href=3D"http://www.jackassworld.com/">jackassworld</A></H1>
<UL id=3Dnav>
  <LI class=3Dfirst id=3Dnav_home><A =
href=3D"http://www.jackassworld.com/">Home</A>=20
  </LI>
  <LI id=3Dnav_jackass_25 hideable=3D"nav_jackass_25"><A=20
  href=3D"http://www.jackassworld.com/movie">Jackass 2.5</A> </LI>
  <LI id=3Dnav_videos hideable=3D"nav_videos"><A=20
  href=3D"http://www.jackassworld.com/videos">Videos</A> </LI>
  <LI id=3Dnav_community hideable=3D"nav_community"><A=20
  href=3D"http://community.jackassworld.com/">Community</A> </LI>
  <LI class=3Dlast id=3Dnav_store hideable=3D"nav_store"><A=20
  href=3D"http://shop.jackassworld.com/">Shop</A> </LI></UL></DIV><!-- =
end header -->
<DIV id=3Dleft_column>
<H2 class=3Dpage_header>Welcome to jackassworld</H2>
<H3 class=3Dunder_construction_subheader>The site is currently under =
construction=20
and will officially launch on 02.09.08</H3>
<DIV class=3Dhome_article>
<H3 class=3Darticle_header><A=20
href=3D"http://www.jackassworld.com/blog/2008/02/04/stun-gun-brass-knuckl=
es/">stun=20
gun brass knuckles</A></H3>
<DIV class=3Darticle_container>
<DIV class=3Darticle_text><EMBED=20
src=3Dhttp://www.mtv.com/jackassworld/player/embed/jaw/wp/ width=3D510 =
height=3D355=20
type=3Dapplication/x-shockwave-flash base=3D"." =
AllowScriptAccess=3D"never"=20
FlashVars=3D"CONFIG_URL=3Dhttp://www.mtv.com/jackassworld/player/embed/ja=
w/wp/configuration.jhtml%3fvid%3D207404&amp;allowFullScreen=3Dtrue"=20
allowFullScreen=3D"true">
<P>One of JxPx Blackmon=E2=80=99s foremost responsibilities as our =
in-house =E2=80=9CShady=20
Propmaster=E2=80=9D is to continually be on the lookout for items to add =
to his infamous=20
=E2=80=9CBox of Stuff That Sucks.=E2=80=9D Currently this box contains =
such annoying and/or=20
scary things like cattle prods, stun guns, paintball guns, slingshots, =
super=20
glue, C-clamps, cymbals, BB guns, etc., but his most recent discovery =
was an=20
awful joint venture between brass knuckles and a stun gun=E2=80=94kind =
of a two-for-one=20
little fucker, the crackling sound of which is enough to make you crap =
your=20
pants before the voltage even has its way with you.</P>
<P>Anyway, Johnny Knoxville is always more than happy to test out =
JxPx=E2=80=99s sucky=20
new toys, but even more so when he can involve Jeff Tremaine in some=20
uncooperative manner. Following a meeting in which the need for footage =
was=20
discussed, Knoxville grabbed the brass knuckles with an impish sense of =
urgency=20
and set about doing what he does best=E2=80=94behaving his =
worst.</P></DIV>
<P class=3Darticle_byline><SPAN class=3Dname>Posted by <A=20
href=3D"http://www.jackassworld.com/blog/author/cliver/">sean =
cliver</A></SPAN>=20
<SPAN class=3Ddate>February 5, 2008 2:43 AM</SPAN> </P>
<DIV class=3Darticle_footer>
<P class=3Dcategory>Category: <A=20
href=3D"http://www.jackassworld.com/blog/category/jackass">jackass</A>, =
<A=20
href=3D"http://www.jackassworld.com/blog/category/random%20shit">random =
shit</A>=20
</P><!-- <p class=3D"tags">Tags: <a href=3D"#">Wheels</a>, <a =
href=3D"#">Boards</a>, <a href=3D"#">Flying</a>, <a =
href=3D"#">Bike</a></p> -->
<P class=3Dcomments><IMG alt=3DComments=20
src=3D"http://www.jackassworld.com/images/front/comment_icon.gif?11949948=
18">=20
<SPAN class=3Dcomments_count>
<SCRIPT type=3Dtext/javascript>=0A=
            // <!-- Content Action Widget =0A=
              if (typeof(Flux) !=3D 'undefined')=0A=
              Flux.Utils.WidgetsLoader.createWidget('ContentAction', =
{addToMyFeeds: false, votes: false, share: false, comments: true, =
permalink: false, uri: =
'http://www.jackassworld.com/blog/2008/02/04/stun-gun-brass-knuckles/'});=0A=
            //--></SCRIPT>
</SPAN><SPAN class=3Dshare><A=20
onclick=3D"$('share_form_wrapper_0').show();; return false;"=20
href=3D"http://www.jackassworld.com/#">Send to Friend</A></SPAN> <SPAN=20
class=3Dpermalink><A=20
href=3D"http://www.jackassworld.com/blog/2008/02/04/stun-gun-brass-knuckl=
es/">Permalink</A></SPAN>=20
</P>
<DIV class=3Dshare_form_wrapper id=3Dshare_form_wrapper_0 =
style=3D"DISPLAY: none">
<DIV class=3Dshare_form>
<DIV class=3Dshare_form_inner_wrapper>
<H3 class=3Dshare_form_header>Send This Crap to a Friend</H3>
<P class=3Dshare_form_copy>Fill out the information below to share this =
post.</P>
<P class=3Dshare_form_error></P>
<P class=3Dshare_form_success></P>
<FORM=20
onsubmit=3D"new Ajax.Request('/browse/share_with_friend', =
{asynchronous:true, evalScripts:true, parameters:Form.serialize(this)}); =
return false;"=20
action=3D/browse/share_with_friend method=3Dpost><INPUT id=3Dlink =
type=3Dhidden=20
value=3Dhttp://www.jackassworld.com/blog/2008/02/04/stun-gun-brass-knuckl=
es/=20
name=3Dlink> <INPUT id=3Dtitle type=3Dhidden value=3D"stun gun brass =
knuckles"=20
name=3Dtitle> <INPUT id=3Dwrapper_id type=3Dhidden =
value=3Dshare_form_wrapper_0=20
name=3Dwrapper_id> <INPUT id=3Dkind type=3Dhidden value=3Dpost =
name=3Dkind>=20
<DIV class=3Dform_item><LABEL for=3Drecipient_email>Friend's email=20
address<BR>*Multiple addresses must be separated by commas</LABEL> =
<INPUT=20
id=3Drecipient_email name=3Drecipient_email> </DIV>
<DIV class=3Dform_item><LABEL for=3Dsender_email>Your email =
address</LABEL> <INPUT=20
id=3Dsender_email name=3Dsender_email> </DIV>
<DIV class=3Dform_item><LABEL for=3Dcomments>Comments</LABEL> <TEXTAREA =
id=3Dcomments name=3Dcomments></TEXTAREA> </DIV>
<DIV class=3Dsubmit_button><BUTTON type=3Dsubmit>Submit</BUTTON> =
</DIV></FORM>
<DIV class=3Dclose_button><A=20
onclick=3D"$('share_form_wrapper_0').hide(); return false;"=20
href=3D"http://www.jackassworld.com/#">Close</A></DIV></DIV></DIV></DIV>
<DIV class=3Dclearer></DIV><!-- <p class=3D"continue_reading"><a =
href=3D"#">Continue Reading</a></p> --></DIV></DIV></DIV>
<DIV class=3Dhome_article>
<H3 class=3Darticle_header><A=20
href=3D"http://www.jackassworld.com/blog/2008/02/01/jackass-24-hour-updat=
e/">jackass=20
24-hour update</A></H3>
<DIV class=3Darticle_container>
<DIV class=3Darticle_text>
<P>The other day I received an email from jackassworld community member =
<A=20
title=3DMovie_Ben=20
href=3D"http://community.jackassworld.com/0EC079D00009D07EC0001009D07EC/"=
=20
target=3D_blank>Movie_Ben</A>, inquiring about the status of the =
=E2=80=9Cticket winners=E2=80=9D=20
for the jackass 24-hour takeover. Here=E2=80=99s what he wrote:</P>
<P>Mr. Cliver,<BR>I am wondering if you can provide more specific =
details on=20
when you may be posting the winners for the MTV Take-Over. I live in =
Menomonie,=20
WI and am looking to fly out if I were to win, but need to book my =
flight soon,=20
so I would greatly appreciate any information you may have on this=20
subject.<BR>Thank you,<BR><A title=3DMovie_Ben=20
href=3D"http://community.jackassworld.com/0EC079D00009D07EC0001009D07EC/"=
=20
target=3D_blank>Movie_Ben</A></P>
<P><A title=3DMovie_Ben=20
href=3D"http://community.jackassworld.com/0EC079D00009D07EC0001009D07EC/"=
=20
target=3D_blank>Movie_Ben</A>, I sympathize with your plight. Especially =
since I=20
already made the mistake of booking tickets for my family to come out =
and squat=20
in my free hotel room. The long and the short of the situation, though, =
is that=20
the event has been delayed and will NOT take place on the weekend of =
February 9.=20
Exactly what date it has been pushed to remains a mystery to all parties =

involved, but we=E2=80=99re hoping Dimitry=E2=80=99s generous donation =
check clears the bank=20
soon to resuscitate the punch-drunk 24-hour budget. Stay tuned.</P>
<P><IMG alt=3D"dimitry saves jackass 24 hour takeover"=20
src=3D"http://www.jackassworld.com/blog/wp-content/uploads/2008/02/dimitr=
ycheck.jpg"></P></DIV>
<P class=3Darticle_byline><SPAN class=3Dname>Posted by <A=20
href=3D"http://www.jackassworld.com/blog/author/cliver/">sean =
cliver</A></SPAN>=20
<SPAN class=3Ddate>February 2, 2008 1:29 AM</SPAN> </P>
<DIV class=3Darticle_footer>
<P class=3Dcategory>Category: <A=20
href=3D"http://www.jackassworld.com/blog/category/jackass">jackass</A>, =
<A=20
href=3D"http://www.jackassworld.com/blog/category/news">news</A>, <A=20
href=3D"http://www.jackassworld.com/blog/category/random%20shit">random =
shit</A>=20
</P><!-- <p class=3D"tags">Tags: <a href=3D"#">Wheels</a>, <a =
href=3D"#">Boards</a>, <a href=3D"#">Flying</a>, <a =
href=3D"#">Bike</a></p> -->
<P class=3Dcomments><IMG alt=3DComments=20
src=3D"http://www.jackassworld.com/images/front/comment_icon.gif?11949948=
18">=20
<SPAN class=3Dcomments_count>
<SCRIPT type=3Dtext/javascript>=0A=
            // <!-- Content Action Widget =0A=
              if (typeof(Flux) !=3D 'undefined')=0A=
              Flux.Utils.WidgetsLoader.createWidget('ContentAction', =
{addToMyFeeds: false, votes: false, share: false, comments: true, =
permalink: false, uri: =
'http://www.jackassworld.com/blog/2008/02/01/jackass-24-hour-update/'});=0A=
            //--></SCRIPT>
</SPAN><SPAN class=3Dshare><A=20
onclick=3D"$('share_form_wrapper_1').show();; return false;"=20
href=3D"http://www.jackassworld.com/#">Send to Friend</A></SPAN> <SPAN=20
class=3Dpermalink><A=20
href=3D"http://www.jackassworld.com/blog/2008/02/01/jackass-24-hour-updat=
e/">Permalink</A></SPAN>=20
</P>
<DIV class=3Dshare_form_wrapper id=3Dshare_form_wrapper_1 =
style=3D"DISPLAY: none">
<DIV class=3Dshare_form>
<DIV class=3Dshare_form_inner_wrapper>
<H3 class=3Dshare_form_header>Send This Crap to a Friend</H3>
<P class=3Dshare_form_copy>Fill out the information below to share this =
post.</P>
<P class=3Dshare_form_error></P>
<P class=3Dshare_form_success></P>
<FORM=20
onsubmit=3D"new Ajax.Request('/browse/share_with_friend', =
{asynchronous:true, evalScripts:true, parameters:Form.serialize(this)}); =
return false;"=20
action=3D/browse/share_with_friend method=3Dpost><INPUT id=3Dlink =
type=3Dhidden=20
value=3Dhttp://www.jackassworld.com/blog/2008/02/01/jackass-24-hour-updat=
e/=20
name=3Dlink> <INPUT id=3Dtitle type=3Dhidden value=3D"jackass 24-hour =
update"=20
name=3Dtitle> <INPUT id=3Dwrapper_id type=3Dhidden =
value=3Dshare_form_wrapper_1=20
name=3Dwrapper_id> <INPUT id=3Dkind type=3Dhidden value=3Dpost =
name=3Dkind>=20
<DIV class=3Dform_item><LABEL for=3Drecipient_email>Friend's email=20
address<BR>*Multiple addresses must be separated by commas</LABEL> =
<INPUT=20
id=3Drecipient_email name=3Drecipient_email> </DIV>
<DIV class=3Dform_item><LABEL for=3Dsender_email>Your email =
address</LABEL> <INPUT=20
id=3Dsender_email name=3Dsender_email> </DIV>
<DIV class=3Dform_item><LABEL for=3Dcomments>Comments</LABEL> <TEXTAREA =
id=3Dcomments name=3Dcomments></TEXTAREA> </DIV>
<DIV class=3Dsubmit_button><BUTTON type=3Dsubmit>Submit</BUTTON> =
</DIV></FORM>
<DIV class=3Dclose_button><A=20
onclick=3D"$('share_form_wrapper_1').hide(); return false;"=20
href=3D"http://www.jackassworld.com/#">Close</A></DIV></DIV></DIV></DIV>
<DIV class=3Dclearer></DIV><!-- <p class=3D"continue_reading"><a =
href=3D"#">Continue Reading</a></p> --></DIV></DIV></DIV>
<DIV class=3Dhome_article>
<H3 class=3Darticle_header><A=20
href=3D"http://www.jackassworld.com/blog/2008/01/30/photo-of-the-day-3/">=
photo of=20
the day</A></H3>
<DIV class=3Darticle_container>
<DIV class=3Darticle_text>
<P><IMG alt=3Ddimitry=20
src=3D"http://www.jackassworld.com/blog/wp-content/uploads/2008/01/meechw=
ee.jpg"></P>
<P>Although it=E2=80=99s not exactly uncommon to see a smile on Dimitry =
Elyashkevich=E2=80=99s=20
face, it=E2=80=99s not exactly a common sight either. There is, however, =
one scenario in=20
which he can almost always be counted upon to get extremely giddy and =
that=E2=80=99s=20
whenever anyone else around him is grumpier than he is. Not an easy =
thing to do=20
given his classically dour Russian heritage.</P>
<P>On this particular day in 2001, we=E2=80=99d hit the streets of Los =
Angeles without=20
much of a clue as to what we were gonna film other than Preston Lacy =
pushing Wee=20
Man around in one of those off-road jogging strollers. However, it was =
only out=20
in the field that we discovered the stupid thing was too small to =
accommodate=20
Wee=E2=80=99s hammy ass. So there we all were, standing around on the =
sidewalk with the=20
wheels falling off our production, when Wee Man started to get real =
crabby and=20
short with everyone. Unfortunately, as you can see here by the unabashed =
look of=20
glee on Dimitry=E2=80=99s face, it=E2=80=99s rather hard to take a =
pissed-off man in a diaper=20
and baby bonnet seriously.</P>
<P>Since that time, Dimitry has written several more bits involving Wee =
Man in a=20
baby bonnet and diaper, the majority of which have all ended with Wee =
Man grumpy=20
to some extent=E2=80=94much to Dimitry=E2=80=99s delight.</P>
<P><EM>(Photo: Sean Cliver)</EM></P></DIV>
<P class=3Darticle_byline><SPAN class=3Dname>Posted by <A=20
href=3D"http://www.jackassworld.com/blog/author/cliver/">sean =
cliver</A></SPAN>=20
<SPAN class=3Ddate>January 31, 2008 12:33 AM</SPAN> </P>
<DIV class=3Darticle_footer>
<P class=3Dcategory>Category: <A=20
href=3D"http://www.jackassworld.com/blog/category/jackass">jackass</A> =
</P><!-- <p class=3D"tags">Tags: <a href=3D"#">Wheels</a>, <a =
href=3D"#">Boards</a>, <a href=3D"#">Flying</a>, <a =
href=3D"#">Bike</a></p> -->
<P class=3Dcomments><IMG alt=3DComments=20
src=3D"http://www.jackassworld.com/images/front/comment_icon.gif?11949948=
18">=20
<SPAN class=3Dcomments_count>
<SCRIPT type=3Dtext/javascript>=0A=
            // <!-- Content Action Widget =0A=
              if (typeof(Flux) !=3D 'undefined')=0A=
              Flux.Utils.WidgetsLoader.createWidget('ContentAction', =
{addToMyFeeds: false, votes: false, share: false, comments: true, =
permalink: false, uri: =
'http://www.jackassworld.com/blog/2008/01/30/photo-of-the-day-3/'});=0A=
            //--></SCRIPT>
</SPAN><SPAN class=3Dshare><A=20
onclick=3D"$('share_form_wrapper_2').show();; return false;"=20
href=3D"http://www.jackassworld.com/#">Send to Friend</A></SPAN> <SPAN=20
class=3Dpermalink><A=20
href=3D"http://www.jackassworld.com/blog/2008/01/30/photo-of-the-day-3/">=
Permalink</A></SPAN>=20
</P>
<DIV class=3Dshare_form_wrapper id=3Dshare_form_wrapper_2 =
style=3D"DISPLAY: none">
<DIV class=3Dshare_form>
<DIV class=3Dshare_form_inner_wrapper>
<H3 class=3Dshare_form_header>Send This Crap to a Friend</H3>
<P class=3Dshare_form_copy>Fill out the information below to share this =
post.</P>
<P class=3Dshare_form_error></P>
<P class=3Dshare_form_success></P>
<FORM=20
onsubmit=3D"new Ajax.Request('/browse/share_with_friend', =
{asynchronous:true, evalScripts:true, parameters:Form.serialize(this)}); =
return false;"=20
action=3D/browse/share_with_friend method=3Dpost><INPUT id=3Dlink =
type=3Dhidden=20
value=3Dhttp://www.jackassworld.com/blog/2008/01/30/photo-of-the-day-3/ =
name=3Dlink>=20
<INPUT id=3Dtitle type=3Dhidden value=3D"photo of the day" name=3Dtitle> =
<INPUT=20
id=3Dwrapper_id type=3Dhidden value=3Dshare_form_wrapper_2 =
name=3Dwrapper_id> <INPUT=20
id=3Dkind type=3Dhidden value=3Dpost name=3Dkind>=20
<DIV class=3Dform_item><LABEL for=3Drecipient_email>Friend's email=20
address<BR>*Multiple addresses must be separated by commas</LABEL> =
<INPUT=20
id=3Drecipient_email name=3Drecipient_email> </DIV>
<DIV class=3Dform_item><LABEL for=3Dsender_email>Your email =
address</LABEL> <INPUT=20
id=3Dsender_email name=3Dsender_email> </DIV>
<DIV class=3Dform_item><LABEL for=3Dcomments>Comments</LABEL> <TEXTAREA =
id=3Dcomments name=3Dcomments></TEXTAREA> </DIV>
<DIV class=3Dsubmit_button><BUTTON type=3Dsubmit>Submit</BUTTON> =
</DIV></FORM>
<DIV class=3Dclose_button><A=20
onclick=3D"$('share_form_wrapper_2').hide(); return false;"=20
href=3D"http://www.jackassworld.com/#">Close</A></DIV></DIV></DIV></DIV>
<DIV class=3Dclearer></DIV><!-- <p class=3D"continue_reading"><a =
href=3D"#">Continue Reading</a></p> --></DIV></DIV></DIV>
<DIV class=3Dhome_article>
<H3 class=3Darticle_header><A=20
href=3D"http://www.jackassworld.com/blog/2008/01/29/getting-with-the-prog=
ram/">getting=20
with the program</A></H3>
<DIV class=3Darticle_container>
<DIV class=3Darticle_text><EMBED=20
src=3Dhttp://www.mtv.com/jackassworld/player/embed/jaw/wp/ width=3D510 =
height=3D355=20
type=3Dapplication/x-shockwave-flash base=3D"." =
AllowScriptAccess=3D"never"=20
FlashVars=3D"CONFIG_URL=3Dhttp://www.mtv.com/jackassworld/player/embed/ja=
w/wp/configuration.jhtml%3fvid%3D206303&amp;allowFullScreen=3Dtrue"=20
allowFullScreen=3D"true">
<P>Over a week ago now Dave Carnie attended an open house at Girl =
Skateboards to=20
cover it for jackassworld. The shaky Flip cam footage he returned with =
mostly=20
consisted of interviews with various people, pro skaters and otherwise, =
about=20
how weird goat buttholes look. What he didn=E2=80=99t return with =
though, were release=20
forms for all the people appearing in the clips. Up until now Carnie has =
never=20
had to operate in such a =E2=80=9Cprofessional=E2=80=9D manner, so he =
was rather nonplussed when=20
told the footage simply could not go on the site without these forms =
being=20
signed. Instead of doing his due diligence and tracking down all the =
people,=20
Carnie continued to grouse about the hassle of doing this every time he =
goes to=20
shoot something and basically said =E2=80=9Cfuck it=E2=80=9D with =
regards to his whole goat butt=20
expose.</P>
<P>After spending a modest amount of time cutting the aforementioned =
mess=20
together, Rick Kosick was rather irked by Carnie=E2=80=99s apparent =
inability to =E2=80=9Cget=20
with the program=E2=80=9D (whatever that means). So this morning he =
walked into work=20
with the singular intent to push the already overblown matter up to and =
past the=20
point of utter ridiculousness=E2=80=94all just to see if he =
couldn=E2=80=99t get Carnie to crack=20
in the process.</P>
<P>He did.</P></DIV>
<P class=3Darticle_byline><SPAN class=3Dname>Posted by <A=20
href=3D"http://www.jackassworld.com/blog/author/cliver/">sean =
cliver</A></SPAN>=20
<SPAN class=3Ddate>January 29, 2008 11:49 PM</SPAN> </P>
<DIV class=3Darticle_footer>
<P class=3Dcategory>Category: <A=20
href=3D"http://www.jackassworld.com/blog/category/random%20shit">random =
shit</A>=20
</P><!-- <p class=3D"tags">Tags: <a href=3D"#">Wheels</a>, <a =
href=3D"#">Boards</a>, <a href=3D"#">Flying</a>, <a =
href=3D"#">Bike</a></p> -->
<P class=3Dcomments><IMG alt=3DComments=20
src=3D"http://www.jackassworld.com/images/front/comment_icon.gif?11949948=
18">=20
<SPAN class=3Dcomments_count>
<SCRIPT type=3Dtext/javascript>=0A=
            // <!-- Content Action Widget =0A=
              if (typeof(Flux) !=3D 'undefined')=0A=
              Flux.Utils.WidgetsLoader.createWidget('ContentAction', =
{addToMyFeeds: false, votes: false, share: false, comments: true, =
permalink: false, uri: =
'http://www.jackassworld.com/blog/2008/01/29/getting-with-the-program/'})=
;=0A=
            //--></SCRIPT>
</SPAN><SPAN class=3Dshare><A=20
onclick=3D"$('share_form_wrapper_3').show();; return false;"=20
href=3D"http://www.jackassworld.com/#">Send to Friend</A></SPAN> <SPAN=20
class=3Dpermalink><A=20
href=3D"http://www.jackassworld.com/blog/2008/01/29/getting-with-the-prog=
ram/">Permalink</A></SPAN>=20
</P>
<DIV class=3Dshare_form_wrapper id=3Dshare_form_wrapper_3 =
style=3D"DISPLAY: none">
<DIV class=3Dshare_form>
<DIV class=3Dshare_form_inner_wrapper>
<H3 class=3Dshare_form_header>Send This Crap to a Friend</H3>
<P class=3Dshare_form_copy>Fill out the information below to share this =
post.</P>
<P class=3Dshare_form_error></P>
<P class=3Dshare_form_success></P>
<FORM=20
onsubmit=3D"new Ajax.Request('/browse/share_with_friend', =
{asynchronous:true, evalScripts:true, parameters:Form.serialize(this)}); =
return false;"=20
action=3D/browse/share_with_friend method=3Dpost><INPUT id=3Dlink =
type=3Dhidden=20
value=3Dhttp://www.jackassworld.com/blog/2008/01/29/getting-with-the-prog=
ram/=20
name=3Dlink> <INPUT id=3Dtitle type=3Dhidden value=3D"getting with the =
program"=20
name=3Dtitle> <INPUT id=3Dwrapper_id type=3Dhidden =
value=3Dshare_form_wrapper_3=20
name=3Dwrapper_id> <INPUT id=3Dkind type=3Dhidden value=3Dpost =
name=3Dkind>=20
<DIV class=3Dform_item><LABEL for=3Drecipient_email>Friend's email=20
address<BR>*Multiple addresses must be separated by commas</LABEL> =
<INPUT=20
id=3Drecipient_email name=3Drecipient_email> </DIV>
<DIV class=3Dform_item><LABEL for=3Dsender_email>Your email =
address</LABEL> <INPUT=20
id=3Dsender_email name=3Dsender_email> </DIV>
<DIV class=3Dform_item><LABEL for=3Dcomments>Comments</LABEL> <TEXTAREA =
id=3Dcomments name=3Dcomments></TEXTAREA> </DIV>
<DIV class=3Dsubmit_button><BUTTON type=3Dsubmit>Submit</BUTTON> =
</DIV></FORM>
<DIV class=3Dclose_button><A=20
onclick=3D"$('share_form_wrapper_3').hide(); return false;"=20
href=3D"http://www.jackassworld.com/#">Close</A></DIV></DIV></DIV></DIV>
<DIV class=3Dclearer></DIV><!-- <p class=3D"continue_reading"><a =
href=3D"#">Continue Reading</a></p> --></DIV></DIV></DIV>
<DIV class=3Dhome_article>
<H3 class=3Darticle_header><A=20
href=3D"http://www.jackassworld.com/blog/2008/01/24/jackass-24-hour-takeo=
ver-casting-call/">jackass=20
24-hour takeover casting call</A></H3>
<DIV class=3Darticle_container>
<DIV class=3Darticle_text>
<P>In an unprecedented if not imprudent move, MTV is handing over the =
reins of=20
the network to the cast of jackass for 24 continuous hours of =
programming=20
starting Saturday, February 9th at noon. What exactly the cast plans on =
doing=20
once it has taken over the studio in New York no one really knows, but =
whatever=20
it is will be going out in a live broadcast and probably involve a =
nonstop=20
collision of dumb little stunts, pranks, silliness, technical =
difficulties and=20
sleep deprivation.</P>
<P>Anyway, the call is now going out for diehard jackass fans to join =
the cast=20
in NYC for the event=E2=80=94not only for the in-studio audience but to =
appear in=20
special surprise segments of the show. All types of people are needed: =
drag=20
queens, Little People, overweight people, Party Boys, fans willing to =
get a=20
tattoo on-air and more. Here are the details: Fans must be 18 years and =
over and=20
live in the NYC area (or be willing to travel at their own expense). For =
FREE=20
tickets, please send an e-mail to <A=20
href=3D"mailto:admin@jackassworld.com">admin@jackassworld.com</A> and =
supply the=20
following bits of information:</P>
<P>=E2=80=A2 Name<BR>=E2=80=A2 Age<BR>=E2=80=A2 Phone =
number<BR>=E2=80=A2 Where do you live?<BR>=E2=80=A2 User name and=20
link to your jackassworld profile</P>
<P>emails with attachments will be deleted</P>
<P>We=E2=80=99d also like you to respond to the following questions =
(complete sentences=20
not necessary):</P>
<P>=E2=80=A2 Why do you want to be a part of this show?<BR>=E2=80=A2 =
Have you seen all of the=20
jackass episodes?<BR>=E2=80=A2 What=E2=80=99s the meaning of =
life?<BR>=E2=80=A2 Have you ever been=20
convicted of a felony or arrested for stalking?</P></DIV>
<P class=3Darticle_byline><SPAN class=3Dname>Posted by <A=20
href=3D"http://www.jackassworld.com/blog/author/cliver/">sean =
cliver</A></SPAN>=20
<SPAN class=3Ddate>January 25, 2008 12:50 AM</SPAN> </P>
<DIV class=3Darticle_footer>
<P class=3Dcategory>Category: <A=20
href=3D"http://www.jackassworld.com/blog/category/jackass">jackass</A>, =
<A=20
href=3D"http://www.jackassworld.com/blog/category/news">news</A> =
</P><!-- <p class=3D"tags">Tags: <a href=3D"#">Wheels</a>, <a =
href=3D"#">Boards</a>, <a href=3D"#">Flying</a>, <a =
href=3D"#">Bike</a></p> -->
<P class=3Dcomments><IMG alt=3DComments=20
src=3D"http://www.jackassworld.com/images/front/comment_icon.gif?11949948=
18">=20
<SPAN class=3Dcomments_count>
<SCRIPT type=3Dtext/javascript>=0A=
            // <!-- Content Action Widget =0A=
              if (typeof(Flux) !=3D 'undefined')=0A=
              Flux.Utils.WidgetsLoader.createWidget('ContentAction', =
{addToMyFeeds: false, votes: false, share: false, comments: true, =
permalink: false, uri: =
'http://www.jackassworld.com/blog/2008/01/24/jackass-24-hour-takeover-cas=
ting-call/'});=0A=
            //--></SCRIPT>
</SPAN><SPAN class=3Dshare><A=20
onclick=3D"$('share_form_wrapper_4').show();; return false;"=20
href=3D"http://www.jackassworld.com/#">Send to Friend</A></SPAN> <SPAN=20
class=3Dpermalink><A=20
href=3D"http://www.jackassworld.com/blog/2008/01/24/jackass-24-hour-takeo=
ver-casting-call/">Permalink</A></SPAN>=20
</P>
<DIV class=3Dshare_form_wrapper id=3Dshare_form_wrapper_4 =
style=3D"DISPLAY: none">
<DIV class=3Dshare_form>
<DIV class=3Dshare_form_inner_wrapper>
<H3 class=3Dshare_form_header>Send This Crap to a Friend</H3>
<P class=3Dshare_form_copy>Fill out the information below to share this =
post.</P>
<P class=3Dshare_form_error></P>
<P class=3Dshare_form_success></P>
<FORM=20
onsubmit=3D"new Ajax.Request('/browse/share_with_friend', =
{asynchronous:true, evalScripts:true, parameters:Form.serialize(this)}); =
return false;"=20
action=3D/browse/share_with_friend method=3Dpost><INPUT id=3Dlink =
type=3Dhidden=20
value=3Dhttp://www.jackassworld.com/blog/2008/01/24/jackass-24-hour-takeo=
ver-casting-call/=20
name=3Dlink> <INPUT id=3Dtitle type=3Dhidden=20
value=3D"jackass 24-hour takeover casting call" name=3Dtitle> <INPUT =
id=3Dwrapper_id=20
type=3Dhidden value=3Dshare_form_wrapper_4 name=3Dwrapper_id> <INPUT =
id=3Dkind=20
type=3Dhidden value=3Dpost name=3Dkind>=20
<DIV class=3Dform_item><LABEL for=3Drecipient_email>Friend's email=20
address<BR>*Multiple addresses must be separated by commas</LABEL> =
<INPUT=20
id=3Drecipient_email name=3Drecipient_email> </DIV>
<DIV class=3Dform_item><LABEL for=3Dsender_email>Your email =
address</LABEL> <INPUT=20
id=3Dsender_email name=3Dsender_email> </DIV>
<DIV class=3Dform_item><LABEL for=3Dcomments>Comments</LABEL> <TEXTAREA =
id=3Dcomments name=3Dcomments></TEXTAREA> </DIV>
<DIV class=3Dsubmit_button><BUTTON type=3Dsubmit>Submit</BUTTON> =
</DIV></FORM>
<DIV class=3Dclose_button><A=20
onclick=3D"$('share_form_wrapper_4').hide(); return false;"=20
href=3D"http://www.jackassworld.com/#">Close</A></DIV></DIV></DIV></DIV>
<DIV class=3Dclearer></DIV><!-- <p class=3D"continue_reading"><a =
href=3D"#">Continue Reading</a></p> --></DIV></DIV></DIV>
<P class=3Dread_more_posts><A =
href=3D"http://www.jackassworld.com/blog">Read More=20
Posts</A></P><!-- Start of DoubleClick Spotlight Tag: Please do not =
remove--><!-- Activity Name for this tag is:Jackass World HP --><!-- Web =
site URL where tag should be placed: http://www.jackassworld.com --><!-- =
This tag must be placed within the opening <body> tag, as close to the =
beginning of it as possible--><!-- Creation Date:11/27/2007 -->
<SCRIPT language=3DJavaScript>=0A=
	var axel =3D Math.random()+"";=0A=
	var a =3D axel * 10000000000000;=0A=
	document.write('<IFRAME =
SRC=3D"http://fls.doubleclick.net/activityi;src=3D1644829;type=3Djacka192=
;cat=3Djacka270;ord=3D1;num=3D'+ a + '?" WIDTH=3D1 HEIGHT=3D1 =
FRAMEBORDER=3D0 allowtransparency=3D"true"></IFRAME>');=0A=
	</SCRIPT>
<NOSCRIPT><IFRAME=20
src=3D"http://media.mtvnservices.com/metrics/ga.html?uri=3Dwww.jackasswor=
ld.com/&amp;ref=3D"=20
frameBorder=3D0 width=3D1 height=3D1 =
allowTransparency></IFRAME></NOSCRIPT><!-- End of DoubleClick Spotlight =
Tag: Please do not remove--></DIV><!-- end left_column -->
<DIV id=3Dright_column>
<DIV class=3Dsidebar_item>
<DIV class=3Dad><A href=3D"http://shop.jackassworld.com/"><IMG=20
alt=3D"Jackass 2.5 - Buy now on jackassworld."=20
src=3D"http://www.jackassworld.com/images/front/jackass_dvd.jpg?119818505=
1"></A>=20
</DIV><!-- <p class=3D"advertisement">Advertisement</p> --></DIV>
<DIV class=3Dsidebar_item id=3Dsign_up_wrapper>
<DIV id=3Dsign_up>
<P id=3Dsign_up_copy>Get behind the scenes. We'll notify you when =
JackassWorld=20
launches.</P>
<FORM id=3Dsign_up_form=20
onsubmit=3D"new Ajax.Updater('sign_up_wrapper', '/sign_up', =
{asynchronous:true, evalScripts:true, parameters:Form.serialize(this)}); =
return false;"=20
action=3D/sign_up method=3Dpost>
<DIV class=3Dform_item><LABEL for=3Demail_address>Enter Email =
Address</LABEL> <INPUT=20
id=3Demail_address name=3Demail_address> </DIV>
<DIV class=3Dsubmit_button><BUTTON type=3Dsubmit>Submit</BUTTON>=20
</DIV></FORM></DIV></DIV>
<DIV class=3Dsidebar_item id=3Dwarning><IMG=20
alt=3D"These web clips feature stunts performed either by professionals =
or under the supervision of professionals. MTV and the producers must =
insist that no one attempt any stunt or activity performed on the site." =

src=3D"http://www.jackassworld.com/images/front/warning.gif?1197641329"> =
</DIV>
<DIV class=3Dsidebar_item id=3Dadvertisements>
<DIV class=3Dad>
<SCRIPT=20
type=3Dtext/javascript>com.mtvi.ads.AdManager.placeNewAd(300,250);</SCRIP=
T>
</DIV><!-- <p class=3D"advertisement">Advertisement</p> --></DIV>
<DIV class=3Dsidebar_item id=3Dfeatured_videos>
<H4 class=3Dsidebar_header>Featured Videos</H4>
<DIV class=3D"video_box alt">
<P class=3Dimage><A =
href=3D"http://www.jackassworld.com/videos/1575784/189192"><SPAN=20
class=3Dthumb_link><SPAN class=3Dplay_icon></SPAN><IMG =
alt=3D00041jat_93x70=20
src=3D"http://www.mtv.com/content/jackassworld/video/thumbnails/jackass/0=
0041jat_93x70.jpg"></SPAN></A></P>
<P class=3Dtitle><A =
href=3D"http://www.jackassworld.com/videos/1575784/189192">yoga=20
class</A></P>
<P class=3Ddescription>Johnny Knoxville stretches and farts his way =
through a yoga=20
class.</P>
<DIV class=3Dclearer></DIV></DIV>
<DIV class=3D"video_box ">
<P class=3Dimage><A =
href=3D"http://www.jackassworld.com/videos/1575412/190370"><SPAN=20
class=3Dthumb_link><SPAN class=3Dplay_icon></SPAN><IMG =
alt=3D00108jat_93x70=20
src=3D"http://www.mtv.com/content/jackassworld/video/thumbnails/jackass/0=
0108jat_93x70.jpg"></SPAN></A></P>
<P class=3Dtitle><A =
href=3D"http://www.jackassworld.com/videos/1575412/190370">the=20
cup test</A></P>
<P class=3Ddescription>Johnny Knoxville puts his guarded garbage on the =
line=20
through a variety of cup tests, including sledgehammers, croquet, =
paintballs,=20
and little children.</P>
<DIV class=3Dclearer></DIV></DIV>
<DIV class=3D"video_box alt">
<P class=3Dimage><A =
href=3D"http://www.jackassworld.com/videos/1579085/190406"><SPAN=20
class=3Dthumb_link><SPAN class=3Dplay_icon></SPAN><IMG =
alt=3D00144jat_93x70=20
src=3D"http://www.mtv.com/content/jackassworld/video/thumbnails/jackass/0=
0144jat_93x70.jpg"></SPAN></A></P>
<P class=3Dtitle><A =
href=3D"http://www.jackassworld.com/videos/1579085/190406">the=20
matador</A></P>
<P class=3Ddescription>First-time matador Johnny Knoxville tries his =
bumbling hand=20
at the Spanish art of bullfighting with predictable results.</P>
<DIV class=3Dclearer></DIV></DIV>
<P class=3Dview_more_link_bottom><A =
href=3D"http://www.jackassworld.com/videos">More=20
Videos</A></P></DIV></DIV><!-- end right_column -->
<DIV id=3Die_footer_bleed_prevention></DIV>
<DIV id=3Dfooter>
<DIV id=3Dmtv_footer_logo hideable=3D"mtv_footer_logo"><A=20
href=3D"http://www.mtv.com/">MTV Networks</A> </DIV>
<DIV id=3Dfooter_copy>
<P id=3Dcopyright hideable=3D"copyright">=C2=A92007 MTV Networks, Inc. =
All Rights=20
Reserved</P>
<UL id=3Dleft_footer>
  <LI class=3Dfirst hideable=3D"about_link"><A=20
  href=3D"http://www.jackassworld.com/pages/about">About/FUQs</A> </LI>
  <LI hideable=3D"Copyright_link"><A=20
  href=3D"http://www.jackassworld.com/pages/Copyright">Copyright</A> =
</LI>
  <LI hideable=3D"Privacy_link"><A=20
  href=3D"http://www.jackassworld.com/pages/Privacy">Privacy</A> </LI>
  <LI hideable=3D"Terms_Of_Use_link"><A=20
  href=3D"http://www.jackassworld.com/pages/Terms_Of_Use">Terms of =
Use</A> </LI>
  <LI hideable=3D"User_Content_Agreement_link"><A=20
  href=3D"http://www.jackassworld.com/pages/User_Content_Agreement">User =
Content=20
  Agreement</A> </LI>
  <LI class=3Dlast hideable=3D"Press_link"><A=20
  href=3D"http://www.jackassworld.com/press">Press</A> </LI></UL>
<P id=3Dsocial_project_links hideable=3D"social_project_links">Social =
Project: <A=20
href=3D"http://www.socialproject.com/TermsOfUse.html">Terms of Use</A> =
<A=20
class=3Dlast =
href=3D"http://www.socialproject.com/PrivacyPolicy.html">Privacy=20
Policy</A> </P>
<P hideable=3D"footer_notice_1">The copyright in the Jackass logo is =
owned by MTV=20
Networks, a division of Viacom International Inc.</P>
<P hideable=3D"footer_notice_2">E-commerce on this website is brought to =
you by=20
MTVN Direct Inc. powered by Delivery Agent.</P>
<P id=3Dfooter_legal hideable=3D"footer_legal">All of the information =
and commentary=20
contained herein is being provided for entertainment purposes only. The =
opinions=20
and information expressed are those of the individual posting the =
content.=20
Neither MTV Networks, nor any other associated person or entity makes =
any=20
representation or warranty, whether express or implied, regarding the=20
information or commentary and cannot accept any legal responsibility for =
the=20
content.</P></DIV>
<P id=3Dright_footer hideable=3D"right_footer"><A=20
href=3D"http://www.jackassworld.com/blog/category/homepage/feed">Subscrib=
e to=20
jackassworld</A> </P>
<DIV class=3Dclearer></DIV></DIV><!-- end footer --></DIV></BODY></HTML>

------=_NextPart_001_0028_01C867E3.D985C980
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://media.mtvnservices.com/metrics/ga.html?uri=www.jackassworld.com/&ref=

=EF=BB=BF<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE></TITLE>
<META http-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8">
<SCRIPT type=3Dtext/javascript>
	var overrefer =3D "";
	function getUriParam(searchString) {
			try {
				var uri =3D "";
				var _ws =3D window.location.search.substring(1);
				var _pa =3D _ws.split("&");
				for(var i=3D0; i < _pa.length; i++) {=09
					_pa[i] =3D _pa[i].split("=3D");
					if (_pa[i][0] =3D=3D searchString) {
						uri =3D _pa[i][1];=20
						break;
					}
				}
				return uri;
			} catch(e) { return =
"/media.mtvnsevices.com/metrics/urchin.html#JS-ERROR" }
		}
	</SCRIPT>

<META content=3D"MSHTML 6.00.6000.16481" name=3DGENERATOR></HEAD>
<BODY>
<SCRIPT type=3Dtext/javascript>
var gaJsHost =3D (("https:" =3D=3D document.location.protocol) ? =
"https://ssl." : "http://www.");
document.write(unescape("%3Cscript src=3D'" + gaJsHost + =
"google-analytics.com/ga.js' =
type=3D'text/javascript'%3E%3C/script%3E"));
</SCRIPT>

<SCRIPT type=3Dtext/javascript>
var pageTracker =3D _gat._getTracker("UA-2194182-1");
overrefer =3D getUriParam("ref");
pageTracker._initData();
pageTracker.qa =3D overrefer;
pageTracker._trackPageview(unescape(getUriParam("uri")));
</SCRIPT>
</BODY></HTML>

------=_NextPart_001_0028_01C867E3.D985C980--

------=_NextPart_000_0013_01C867E3.D97C53A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.jackassworld.com/javascripts/prototype.js?1193090139

/*  Prototype JavaScript framework, version 1.5.0=0A=
 *  (c) 2005-2007 Sam Stephenson=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',=0A=
  BrowserFeatures: {=0A=
    XPath: !!document.evaluate=0A=
  },=0A=
=0A=
  ScriptFragment: '(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)',=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.extend(Object, {=0A=
  inspect: function(object) {=0A=
    try {=0A=
      if (object =3D=3D=3D undefined) return 'undefined';=0A=
      if (object =3D=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=
  keys: function(object) {=0A=
    var keys =3D [];=0A=
    for (var property in object)=0A=
      keys.push(property);=0A=
    return keys;=0A=
  },=0A=
=0A=
  values: function(object) {=0A=
    var values =3D [];=0A=
    for (var property in object)=0A=
      values.push(object[property]);=0A=
    return values;=0A=
  },=0A=
=0A=
  clone: function(object) {=0A=
    return Object.extend({}, object);=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, args =3D $A(arguments), object =3D args.shift();=0A=
  return function(event) {=0A=
    return __method.apply(object, [( event || =
window.event)].concat(args).concat($A(arguments)));=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, length =3D arguments.length; i < 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=
    this.timer =3D setInterval(this.onTimerEvent.bind(this), =
this.frequency * 1000);=0A=
  },=0A=
=0A=
  stop: function() {=0A=
    if (!this.timer) return;=0A=
    clearInterval(this.timer);=0A=
    this.timer =3D null;=0A=
  },=0A=
=0A=
  onTimerEvent: function() {=0A=
    if (!this.currentlyExecuting) {=0A=
      try {=0A=
        this.currentlyExecuting =3D true;=0A=
        this.callback(this);=0A=
      } finally {=0A=
        this.currentlyExecuting =3D false;=0A=
      }=0A=
    }=0A=
  }=0A=
}=0A=
String.interpret =3D function(value){=0A=
  return value =3D=3D null ? '' : String(value);=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 String.interpret(replacement(match));=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.length > 1 ?=0A=
      $A(div.childNodes).inject('',function(memo,node){ return =
memo+node.nodeValue }) :=0A=
      div.childNodes[0].nodeValue) : '';=0A=
  },=0A=
=0A=
  toQueryParams: function(separator) {=0A=
    var match =3D this.strip().match(/([^?#]*)(#.*)?$/);=0A=
    if (!match) return {};=0A=
=0A=
    return match[1].split(separator || '&').inject({}, function(hash, =
pair) {=0A=
      if ((pair =3D pair.split('=3D'))[0]) {=0A=
        var name =3D decodeURIComponent(pair[0]);=0A=
        var value =3D pair[1] ? decodeURIComponent(pair[1]) : undefined;=0A=
=0A=
        if (hash[name] !=3D=3D undefined) {=0A=
          if (hash[name].constructor !=3D Array)=0A=
            hash[name] =3D [hash[name]];=0A=
          if (value) hash[name].push(value);=0A=
        }=0A=
        else hash[name] =3D value;=0A=
      }=0A=
      return hash;=0A=
    });=0A=
  },=0A=
=0A=
  toArray: function() {=0A=
    return this.split('');=0A=
  },=0A=
=0A=
  succ: function() {=0A=
    return this.slice(0, this.length - 1) +=0A=
      String.fromCharCode(this.charCodeAt(this.length - 1) + 1);=0A=
  },=0A=
=0A=
  camelize: function() {=0A=
    var parts =3D this.split('-'), len =3D parts.length;=0A=
    if (len =3D=3D 1) return parts[0];=0A=
=0A=
    var camelized =3D this.charAt(0) =3D=3D '-'=0A=
      ? parts[0].charAt(0).toUpperCase() + parts[0].substring(1)=0A=
      : parts[0];=0A=
=0A=
    for (var i =3D 1; i < len; i++)=0A=
      camelized +=3D parts[i].charAt(0).toUpperCase() + =
parts[i].substring(1);=0A=
=0A=
    return camelized;=0A=
  },=0A=
=0A=
  capitalize: function(){=0A=
    return this.charAt(0).toUpperCase() + =
this.substring(1).toLowerCase();=0A=
  },=0A=
=0A=
  underscore: function() {=0A=
    return this.gsub(/::/, =
'/').gsub(/([A-Z]+)([A-Z][a-z])/,'#{1}_#{2}').gsub(/([a-z\d])([A-Z])/,'#{=
1}_#{2}').gsub(/-/,'_').toLowerCase();=0A=
  },=0A=
=0A=
  dasherize: function() {=0A=
    return this.gsub(/_/,'-');=0A=
  },=0A=
=0A=
  inspect: function(useDoubleQuotes) {=0A=
    var escapedString =3D this.replace(/\\/g, '\\\\');=0A=
    if (useDoubleQuotes)=0A=
      return '"' + escapedString.replace(/"/g, '\\"') + '"';=0A=
    else=0A=
      return "'" + escapedString.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 + String.interpret(object[match[3]]);=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=
    return this;=0A=
  },=0A=
=0A=
  eachSlice: function(number, iterator) {=0A=
    var index =3D -number, slices =3D [], array =3D this.toArray();=0A=
    while ((index +=3D number) < array.length)=0A=
      slices.push(array.slice(index, index+number));=0A=
    return slices.map(iterator);=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 false;=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 || Prototype.K)(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=
  inGroupsOf: function(number, fillWith) {=0A=
    fillWith =3D fillWith =3D=3D=3D undefined ? null : fillWith;=0A=
    return this.eachSlice(number, function(slice) {=0A=
      while(slice.length < number) slice.push(fillWith);=0A=
      return slice;=0A=
    });=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.map(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.map(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.map();=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=
  size: function() {=0A=
    return this.toArray().length;=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, length =3D iterable.length; i < 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, length =3D this.length; i < 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 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, length =3D this.length; i < 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=
  reduce: function() {=0A=
    return this.length > 1 ? this : this[0];=0A=
  },=0A=
=0A=
  uniq: function() {=0A=
    return this.inject([], function(array, value) {=0A=
      return array.include(value) ? array : array.concat([value]);=0A=
    });=0A=
  },=0A=
=0A=
  clone: function() {=0A=
    return [].concat(this);=0A=
  },=0A=
=0A=
  size: function() {=0A=
    return this.length;=0A=
  },=0A=
=0A=
  inspect: function() {=0A=
    return '[' + this.map(Object.inspect).join(', ') + ']';=0A=
  }=0A=
});=0A=
=0A=
Array.prototype.toArray =3D Array.prototype.clone;=0A=
=0A=
function $w(string){=0A=
  string =3D string.strip();=0A=
  return string ? string.split(/\s+/) : [];=0A=
}=0A=
=0A=
if(window.opera){=0A=
  Array.prototype.concat =3D function(){=0A=
    var array =3D [];=0A=
    for(var i =3D 0, length =3D this.length; i < length; i++) =
array.push(this[i]);=0A=
    for(var i =3D 0, length =3D arguments.length; i < length; i++) {=0A=
      if(arguments[i].constructor =3D=3D Array) {=0A=
        for(var j =3D 0, arrayLength =3D arguments[i].length; j < =
arrayLength; j++)=0A=
          array.push(arguments[i][j]);=0A=
      } else {=0A=
        array.push(arguments[i]);=0A=
      }=0A=
    }=0A=
    return array;=0A=
  }=0A=
}=0A=
var Hash =3D function(obj) {=0A=
  Object.extend(this, obj || {});=0A=
};=0A=
=0A=
Object.extend(Hash, {=0A=
  toQueryString: function(obj) {=0A=
    var parts =3D [];=0A=
=0A=
	  this.prototype._each.call(obj, function(pair) {=0A=
      if (!pair.key) return;=0A=
=0A=
      if (pair.value && pair.value.constructor =3D=3D Array) {=0A=
        var values =3D pair.value.compact();=0A=
        if (values.length < 2) pair.value =3D values.reduce();=0A=
        else {=0A=
        	key =3D encodeURIComponent(pair.key);=0A=
          values.each(function(value) {=0A=
            value =3D value !=3D undefined ? encodeURIComponent(value) : =
'';=0A=
            parts.push(key + '=3D' + encodeURIComponent(value));=0A=
          });=0A=
          return;=0A=
        }=0A=
      }=0A=
      if (pair.value =3D=3D undefined) pair[1] =3D '';=0A=
      parts.push(pair.map(encodeURIComponent).join('=3D'));=0A=
	  });=0A=
=0A=
    return parts.join('&');=0A=
  }=0A=
});=0A=
=0A=
Object.extend(Hash.prototype, Enumerable);=0A=
Object.extend(Hash.prototype, {=0A=
  _each: function(iterator) {=0A=
    for (var key in this) {=0A=
      var value =3D this[key];=0A=
      if (value && value =3D=3D Hash.prototype[key]) 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(this, function(mergedHash, pair) {=0A=
      mergedHash[pair.key] =3D pair.value;=0A=
      return mergedHash;=0A=
    });=0A=
  },=0A=
=0A=
  remove: function() {=0A=
    var result;=0A=
    for(var i =3D 0, length =3D arguments.length; i < length; i++) {=0A=
      var value =3D this[arguments[i]];=0A=
      if (value !=3D=3D undefined){=0A=
        if (result =3D=3D=3D undefined) result =3D value;=0A=
        else {=0A=
          if (result.constructor !=3D Array) result =3D [result];=0A=
          result.push(value)=0A=
        }=0A=
      }=0A=
      delete this[arguments[i]];=0A=
    }=0A=
    return result;=0A=
  },=0A=
=0A=
  toQueryString: function() {=0A=
    return Hash.toQueryString(this);=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=
  if (object && object.constructor =3D=3D Hash) return object;=0A=
  return new Hash(object);=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=
    while (this.include(value)) {=0A=
      iterator(value);=0A=
      value =3D value.succ();=0A=
    }=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(responder) {=0A=
    if (!this.include(responder))=0A=
      this.responders.push(responder);=0A=
  },=0A=
=0A=
  unregister: function(responder) {=0A=
    this.responders =3D this.responders.without(responder);=0A=
  },=0A=
=0A=
  dispatch: function(callback, request, transport, json) {=0A=
    this.each(function(responder) {=0A=
      if (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=
  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=
      encoding:     'UTF-8',=0A=
      parameters:   ''=0A=
    }=0A=
    Object.extend(this.options, options || {});=0A=
=0A=
    this.options.method =3D this.options.method.toLowerCase();=0A=
    if (typeof this.options.parameters =3D=3D 'string')=0A=
      this.options.parameters =3D =
this.options.parameters.toQueryParams();=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=
  _complete: false,=0A=
=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=
    this.url =3D url;=0A=
    this.method =3D this.options.method;=0A=
    var params =3D this.options.parameters;=0A=
=0A=
    if (!['get', 'post'].include(this.method)) {=0A=
      // simulate other verbs over post=0A=
      params['_method'] =3D this.method;=0A=
      this.method =3D 'post';=0A=
    }=0A=
=0A=
    params =3D Hash.toQueryString(params);=0A=
    if (params && /Konqueror|Safari|KHTML/.test(navigator.userAgent)) =
params +=3D '&_=3D'=0A=
=0A=
    // when GET, append parameters to URL=0A=
    if (this.method =3D=3D 'get' && params)=0A=
      this.url +=3D (this.url.indexOf('?') > -1 ? '&' : '?') + params;=0A=
=0A=
    try {=0A=
      Ajax.Responders.dispatch('onCreate', this, this.transport);=0A=
=0A=
      this.transport.open(this.method.toUpperCase(), this.url,=0A=
        this.options.asynchronous);=0A=
=0A=
      if (this.options.asynchronous)=0A=
        setTimeout(function() { this.respondToReadyState(1) =
}.bind(this), 10);=0A=
=0A=
      this.transport.onreadystatechange =3D =
this.onStateChange.bind(this);=0A=
      this.setRequestHeaders();=0A=
=0A=
      var body =3D this.method =3D=3D 'post' ? (this.options.postBody || =
params) : null;=0A=
=0A=
      this.transport.send(body);=0A=
=0A=
      /* Force Firefox to handle ready state 4 for synchronous requests =
*/=0A=
      if (!this.options.asynchronous && this.transport.overrideMimeType)=0A=
        this.onStateChange();=0A=
=0A=
    }=0A=
    catch (e) {=0A=
      this.dispatchException(e);=0A=
    }=0A=
  },=0A=
=0A=
  onStateChange: function() {=0A=
    var readyState =3D this.transport.readyState;=0A=
    if (readyState > 1 && !((readyState =3D=3D 4) && this._complete))=0A=
      this.respondToReadyState(this.transport.readyState);=0A=
  },=0A=
=0A=
  setRequestHeaders: function() {=0A=
    var headers =3D {=0A=
      'X-Requested-With': 'XMLHttpRequest',=0A=
      'X-Prototype-Version': Prototype.Version,=0A=
      'Accept': 'text/javascript, text/html, application/xml, text/xml, =
*/*'=0A=
    };=0A=
=0A=
    if (this.method =3D=3D 'post') {=0A=
      headers['Content-type'] =3D this.options.contentType +=0A=
        (this.options.encoding ? '; charset=3D' + this.options.encoding =
: '');=0A=
=0A=
      /* Force "Connection: close" for older Mozilla browsers to work=0A=
       * around a bug where XMLHttpRequest sends an incorrect=0A=
       * Content-length header. See Mozilla Bugzilla #246651.=0A=
       */=0A=
      if (this.transport.overrideMimeType &&=0A=
          (navigator.userAgent.match(/Gecko\/(\d{4})/) || [0,2005])[1] < =
2005)=0A=
            headers['Connection'] =3D 'close';=0A=
    }=0A=
=0A=
    // user-defined headers=0A=
    if (typeof this.options.requestHeaders =3D=3D 'object') {=0A=
      var extras =3D this.options.requestHeaders;=0A=
=0A=
      if (typeof extras.push =3D=3D 'function')=0A=
        for (var i =3D 0, length =3D extras.length; i < length; i +=3D 2)=0A=
          headers[extras[i]] =3D extras[i+1];=0A=
      else=0A=
        $H(extras).each(function(pair) { headers[pair.key] =3D =
pair.value });=0A=
    }=0A=
=0A=
    for (var name in headers)=0A=
      this.transport.setRequestHeader(name, headers[name]);=0A=
  },=0A=
=0A=
  success: function() {=0A=
    return !this.transport.status=0A=
        || (this.transport.status >=3D 200 && this.transport.status < =
300);=0A=
  },=0A=
=0A=
  respondToReadyState: function(readyState) {=0A=
    var state =3D Ajax.Request.Events[readyState];=0A=
    var transport =3D this.transport, json =3D this.evalJSON();=0A=
=0A=
    if (state =3D=3D 'Complete') {=0A=
      try {=0A=
        this._complete =3D true;=0A=
        (this.options['on' + this.transport.status]=0A=
         || this.options['on' + (this.success() ? 'Success' : 'Failure')]=0A=
         || Prototype.emptyFunction)(transport, json);=0A=
      } catch (e) {=0A=
        this.dispatchException(e);=0A=
      }=0A=
=0A=
      if ((this.getHeader('Content-type') || 'text/javascript').strip().=0A=
        match(/^(text|application)\/(x-)?(java|ecma)script(;.*)?$/i))=0A=
          this.evalResponse();=0A=
    }=0A=
=0A=
    try {=0A=
      (this.options['on' + state] || Prototype.emptyFunction)(transport, =
json);=0A=
      Ajax.Responders.dispatch('on' + state, this, transport, json);=0A=
    } catch (e) {=0A=
      this.dispatchException(e);=0A=
    }=0A=
=0A=
    if (state =3D=3D 'Complete') {=0A=
      // avoid memory leak in MSIE: clean up=0A=
      this.transport.onreadystatechange =3D Prototype.emptyFunction;=0A=
    }=0A=
  },=0A=
=0A=
  getHeader: function(name) {=0A=
    try {=0A=
      return this.transport.getResponseHeader(name);=0A=
    } catch (e) { return null }=0A=
  },=0A=
=0A=
  evalJSON: function() {=0A=
    try {=0A=
      var json =3D this.getHeader('X-JSON');=0A=
      return json ? eval('(' + json + ')') : null;=0A=
    } catch (e) { return null }=0A=
  },=0A=
=0A=
  evalResponse: function() {=0A=
    try {=0A=
      return eval(this.transport.responseText);=0A=
    } catch (e) {=0A=
      this.dispatchException(e);=0A=
    }=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.container =3D {=0A=
      success: (container.success || container),=0A=
      failure: (container.failure || (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, param) {=0A=
      this.updateContent();=0A=
      onComplete(transport, param);=0A=
    }).bind(this);=0A=
=0A=
    this.request(url);=0A=
  },=0A=
=0A=
  updateContent: function() {=0A=
    var receiver =3D this.container[this.success() ? 'success' : =
'failure'];=0A=
    var response =3D this.transport.responseText;=0A=
=0A=
    if (!this.options.evalScripts) response =3D response.stripScripts();=0A=
=0A=
    if (receiver =3D $(receiver)) {=0A=
      if (this.options.insertion)=0A=
        new this.options.insertion(receiver, response);=0A=
      else=0A=
        receiver.update(response);=0A=
    }=0A=
=0A=
    if (this.success()) {=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.options.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 $(element) {=0A=
  if (arguments.length > 1) {=0A=
    for (var i =3D 0, elements =3D [], length =3D arguments.length; i < =
length; i++)=0A=
      elements.push($(arguments[i]));=0A=
    return elements;=0A=
  }=0A=
  if (typeof element =3D=3D 'string')=0A=
    element =3D document.getElementById(element);=0A=
  return Element.extend(element);=0A=
}=0A=
=0A=
if (Prototype.BrowserFeatures.XPath) {=0A=
  document._getElementsByXPath =3D function(expression, parentElement) {=0A=
    var results =3D [];=0A=
    var query =3D document.evaluate(expression, $(parentElement) || =
document,=0A=
      null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);=0A=
    for (var i =3D 0, length =3D query.snapshotLength; i < length; i++)=0A=
      results.push(query.snapshotItem(i));=0A=
    return results;=0A=
  };=0A=
}=0A=
=0A=
document.getElementsByClassName =3D function(className, parentElement) {=0A=
  if (Prototype.BrowserFeatures.XPath) {=0A=
    var q =3D ".//*[contains(concat(' ', @class, ' '), ' " + className + =
" ')]";=0A=
    return document._getElementsByXPath(q, parentElement);=0A=
  } else {=0A=
    var children =3D ($(parentElement) || =
document.body).getElementsByTagName('*');=0A=
    var elements =3D [], child;=0A=
    for (var i =3D 0, length =3D children.length; i < length; i++) {=0A=
      child =3D children[i];=0A=
      if (Element.hasClassName(child, className))=0A=
        elements.push(Element.extend(child));=0A=
    }=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 || _nativeExtensions || element.nodeType =3D=3D 3) return =
element;=0A=
=0A=
  if (!element._extended && element.tagName && element !=3D window) {=0A=
    var methods =3D Object.clone(Element.Methods), cache =3D =
Element.extend.cache;=0A=
=0A=
    if (element.tagName =3D=3D 'FORM')=0A=
      Object.extend(methods, Form.Methods);=0A=
    if (['INPUT', 'TEXTAREA', 'SELECT'].include(element.tagName))=0A=
      Object.extend(methods, Form.Element.Methods);=0A=
=0A=
    Object.extend(methods, Element.Methods.Simulated);=0A=
=0A=
    for (var property in methods) {=0A=
      var value =3D methods[property];=0A=
      if (typeof value =3D=3D 'function' && !(property in element))=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(element) {=0A=
    element =3D $(element);=0A=
    Element[Element.visible(element) ? 'hide' : 'show'](element);=0A=
    return element;=0A=
  },=0A=
=0A=
  hide: function(element) {=0A=
    $(element).style.display =3D 'none';=0A=
    return element;=0A=
  },=0A=
=0A=
  show: function(element) {=0A=
    $(element).style.display =3D '';=0A=
    return element;=0A=
  },=0A=
=0A=
  remove: function(element) {=0A=
    element =3D $(element);=0A=
    element.parentNode.removeChild(element);=0A=
    return element;=0A=
  },=0A=
=0A=
  update: function(element, html) {=0A=
    html =3D typeof html =3D=3D 'undefined' ? '' : html.toString();=0A=
    $(element).innerHTML =3D html.stripScripts();=0A=
    setTimeout(function() {html.evalScripts()}, 10);=0A=
    return element;=0A=
  },=0A=
=0A=
  replace: function(element, html) {=0A=
    element =3D $(element);=0A=
    html =3D typeof html =3D=3D 'undefined' ? '' : html.toString();=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=
    return element;=0A=
  },=0A=
=0A=
  inspect: function(element) {=0A=
    element =3D $(element);=0A=
    var result =3D '<' + element.tagName.toLowerCase();=0A=
    $H({'id': 'id', 'className': 'class'}).each(function(pair) {=0A=
      var property =3D pair.first(), attribute =3D pair.last();=0A=
      var value =3D (element[property] || '').toString();=0A=
      if (value) result +=3D ' ' + attribute + '=3D' + =
value.inspect(true);=0A=
    });=0A=
    return result + '>';=0A=
  },=0A=
=0A=
  recursivelyCollect: function(element, property) {=0A=
    element =3D $(element);=0A=
    var elements =3D [];=0A=
    while (element =3D element[property])=0A=
      if (element.nodeType =3D=3D 1)=0A=
        elements.push(Element.extend(element));=0A=
    return elements;=0A=
  },=0A=
=0A=
  ancestors: function(element) {=0A=
    return $(element).recursivelyCollect('parentNode');=0A=
  },=0A=
=0A=
  descendants: function(element) {=0A=
    return $A($(element).getElementsByTagName('*'));=0A=
  },=0A=
=0A=
  immediateDescendants: function(element) {=0A=
    if (!(element =3D $(element).firstChild)) return [];=0A=
    while (element && element.nodeType !=3D 1) element =3D =
element.nextSibling;=0A=
    if (element) return [element].concat($(element).nextSiblings());=0A=
    return [];=0A=
  },=0A=
=0A=
  previousSiblings: function(element) {=0A=
    return $(element).recursivelyCollect('previousSibling');=0A=
  },=0A=
=0A=
  nextSiblings: function(element) {=0A=
    return $(element).recursivelyCollect('nextSibling');=0A=
  },=0A=
=0A=
  siblings: function(element) {=0A=
    element =3D $(element);=0A=
    return =
element.previousSiblings().reverse().concat(element.nextSiblings());=0A=
  },=0A=
=0A=
  match: function(element, selector) {=0A=
    if (typeof selector =3D=3D 'string')=0A=
      selector =3D new Selector(selector);=0A=
    return selector.match($(element));=0A=
  },=0A=
=0A=
  up: function(element, expression, index) {=0A=
    return Selector.findElement($(element).ancestors(), expression, =
index);=0A=
  },=0A=
=0A=
  down: function(element, expression, index) {=0A=
    return Selector.findElement($(element).descendants(), expression, =
index);=0A=
  },=0A=
=0A=
  previous: function(element, expression, index) {=0A=
    return Selector.findElement($(element).previousSiblings(), =
expression, index);=0A=
  },=0A=
=0A=
  next: function(element, expression, index) {=0A=
    return Selector.findElement($(element).nextSiblings(), expression, =
index);=0A=
  },=0A=
=0A=
  getElementsBySelector: function() {=0A=
    var args =3D $A(arguments), element =3D $(args.shift());=0A=
    return Selector.findChildElements(element, args);=0A=
  },=0A=
=0A=
  getElementsByClassName: function(element, className) {=0A=
    return document.getElementsByClassName(className, element);=0A=
  },=0A=
=0A=
  readAttribute: function(element, name) {=0A=
    element =3D $(element);=0A=
    if (document.all && !window.opera) {=0A=
      var t =3D Element._attributeTranslations;=0A=
      if (t.values[name]) return t.values[name](element, name);=0A=
      if (t.names[name])  name =3D t.names[name];=0A=
      var attribute =3D element.attributes[name];=0A=
      if(attribute) return attribute.nodeValue;=0A=
    }=0A=
    return element.getAttribute(name);=0A=
  },=0A=
=0A=
  getHeight: function(element) {=0A=
    return $(element).getDimensions().height;=0A=
  },=0A=
=0A=
  getWidth: function(element) {=0A=
    return $(element).getDimensions().width;=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=
    var elementClassName =3D element.className;=0A=
    if (elementClassName.length =3D=3D 0) return false;=0A=
    if (elementClassName =3D=3D className ||=0A=
        elementClassName.match(new RegExp("(^|\\s)" + className + =
"(\\s|$)")))=0A=
      return true;=0A=
    return false;=0A=
  },=0A=
=0A=
  addClassName: function(element, className) {=0A=
    if (!(element =3D $(element))) return;=0A=
    Element.classNames(element).add(className);=0A=
    return element;=0A=
  },=0A=
=0A=
  removeClassName: function(element, className) {=0A=
    if (!(element =3D $(element))) return;=0A=
    Element.classNames(element).remove(className);=0A=
    return element;=0A=
  },=0A=
=0A=
  toggleClassName: function(element, className) {=0A=
    if (!(element =3D $(element))) return;=0A=
    Element.classNames(element)[element.hasClassName(className) ? =
'remove' : 'add'](className);=0A=
    return element;=0A=
  },=0A=
=0A=
  observe: function() {=0A=
    Event.observe.apply(Event, arguments);=0A=
    return $A(arguments).first();=0A=
  },=0A=
=0A=
  stopObserving: function() {=0A=
    Event.stopObserving.apply(Event, arguments);=0A=
    return $A(arguments).first();=0A=
  },=0A=
=0A=
  // removes whitespace-only text node children=0A=
  cleanWhitespace: function(element) {=0A=
    element =3D $(element);=0A=
    var node =3D element.firstChild;=0A=
    while (node) {=0A=
      var nextNode =3D node.nextSibling;=0A=
      if (node.nodeType =3D=3D 3 && !/\S/.test(node.nodeValue))=0A=
        element.removeChild(node);=0A=
      node =3D nextNode;=0A=
    }=0A=
    return element;=0A=
  },=0A=
=0A=
  empty: function(element) {=0A=
    return $(element).innerHTML.match(/^\s*$/);=0A=
  },=0A=
=0A=
  descendantOf: 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 pos =3D Position.cumulativeOffset(element);=0A=
    window.scrollTo(pos[0], pos[1]);=0A=
    return element;=0A=
  },=0A=
=0A=
  getStyle: function(element, style) {=0A=
    element =3D $(element);=0A=
    if (['float','cssFloat'].include(style))=0A=
      style =3D (typeof element.style.styleFloat !=3D 'undefined' ? =
'styleFloat' : 'cssFloat');=0A=
    style =3D style.camelize();=0A=
    var value =3D element.style[style];=0A=
    if (!value) {=0A=
      if (document.defaultView && document.defaultView.getComputedStyle) =
{=0A=
        var css =3D document.defaultView.getComputedStyle(element, null);=0A=
        value =3D css ? css[style] : null;=0A=
      } else if (element.currentStyle) {=0A=
        value =3D element.currentStyle[style];=0A=
      }=0A=
    }=0A=
=0A=
    if((value =3D=3D 'auto') && ['width','height'].include(style) && =
(element.getStyle('display') !=3D 'none'))=0A=
      value =3D element['offset'+style.capitalize()] + 'px';=0A=
=0A=
    if (window.opera && ['left', 'top', 'right', =
'bottom'].include(style))=0A=
      if (Element.getStyle(element, 'position') =3D=3D 'static') value =
=3D 'auto';=0A=
    if(style =3D=3D 'opacity') {=0A=
      if(value) return parseFloat(value);=0A=
      if(value =3D (element.getStyle('filter') || =
'').match(/alpha\(opacity=3D(.*)\)/))=0A=
        if(value[1]) return parseFloat(value[1]) / 100;=0A=
      return 1.0;=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=
      var value =3D style[name];=0A=
      if(name =3D=3D 'opacity') {=0A=
        if (value =3D=3D 1) {=0A=
          value =3D (/Gecko/.test(navigator.userAgent) &&=0A=
            !/Konqueror|Safari|KHTML/.test(navigator.userAgent)) ? =
0.999999 : 1.0;=0A=
          if(/MSIE/.test(navigator.userAgent) && !window.opera)=0A=
            element.style.filter =3D =
element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,'');=0A=
        } else if(value =3D=3D '') {=0A=
          if(/MSIE/.test(navigator.userAgent) && !window.opera)=0A=
            element.style.filter =3D =
element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,'');=0A=
        } else {=0A=
          if(value < 0.00001) value =3D 0;=0A=
          if(/MSIE/.test(navigator.userAgent) && !window.opera)=0A=
            element.style.filter =3D =
element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,'') +=0A=
              'alpha(opacity=3D'+value*100+')';=0A=
        }=0A=
      } else if(['float','cssFloat'].include(name)) name =3D (typeof =
element.style.styleFloat !=3D 'undefined') ? 'styleFloat' : 'cssFloat';=0A=
      element.style[name.camelize()] =3D value;=0A=
    }=0A=
    return element;=0A=
  },=0A=
=0A=
  getDimensions: function(element) {=0A=
    element =3D $(element);=0A=
    var display =3D $(element).getStyle('display');=0A=
    if (display !=3D 'none' && display !=3D null) // Safari bug=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=
    var originalDisplay =3D els.display;=0A=
    els.visibility =3D 'hidden';=0A=
    els.position =3D 'absolute';=0A=
    els.display =3D 'block';=0A=
    var originalWidth =3D element.clientWidth;=0A=
    var originalHeight =3D element.clientHeight;=0A=
    els.display =3D originalDisplay;=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=
    return element;=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=
    return element;=0A=
  },=0A=
=0A=
  makeClipping: function(element) {=0A=
    element =3D $(element);=0A=
    if (element._overflow) return element;=0A=
    element._overflow =3D element.style.overflow || 'auto';=0A=
    if ((Element.getStyle(element, 'overflow') || 'visible') !=3D =
'hidden')=0A=
      element.style.overflow =3D 'hidden';=0A=
    return element;=0A=
  },=0A=
=0A=
  undoClipping: function(element) {=0A=
    element =3D $(element);=0A=
    if (!element._overflow) return element;=0A=
    element.style.overflow =3D element._overflow =3D=3D 'auto' ? '' : =
element._overflow;=0A=
    element._overflow =3D null;=0A=
    return element;=0A=
  }=0A=
};=0A=
=0A=
Object.extend(Element.Methods, {childOf: Element.Methods.descendantOf});=0A=
=0A=
Element._attributeTranslations =3D {};=0A=
=0A=
Element._attributeTranslations.names =3D {=0A=
  colspan:   "colSpan",=0A=
  rowspan:   "rowSpan",=0A=
  valign:    "vAlign",=0A=
  datetime:  "dateTime",=0A=
  accesskey: "accessKey",=0A=
  tabindex:  "tabIndex",=0A=
  enctype:   "encType",=0A=
  maxlength: "maxLength",=0A=
  readonly:  "readOnly",=0A=
  longdesc:  "longDesc"=0A=
};=0A=
=0A=
Element._attributeTranslations.values =3D {=0A=
  _getAttr: function(element, attribute) {=0A=
    return element.getAttribute(attribute, 2);=0A=
  },=0A=
=0A=
  _flag: function(element, attribute) {=0A=
    return $(element).hasAttribute(attribute) ? attribute : null;=0A=
  },=0A=
=0A=
  style: function(element) {=0A=
    return element.style.cssText.toLowerCase();=0A=
  },=0A=
=0A=
  title: function(element) {=0A=
    var node =3D element.getAttributeNode('title');=0A=
    return node.specified ? node.nodeValue : null;=0A=
  }=0A=
};=0A=
=0A=
Object.extend(Element._attributeTranslations.values, {=0A=
  href: Element._attributeTranslations.values._getAttr,=0A=
  src:  Element._attributeTranslations.values._getAttr,=0A=
  disabled: Element._attributeTranslations.values._flag,=0A=
  checked:  Element._attributeTranslations.values._flag,=0A=
  readonly: Element._attributeTranslations.values._flag,=0A=
  multiple: Element._attributeTranslations.values._flag=0A=
});=0A=
=0A=
Element.Methods.Simulated =3D {=0A=
  hasAttribute: function(element, attribute) {=0A=
    var t =3D Element._attributeTranslations;=0A=
    attribute =3D t.names[attribute] || attribute;=0A=
    return $(element).getAttributeNode(attribute).specified;=0A=
  }=0A=
};=0A=
=0A=
// IE is missing .innerHTML support for TABLE-related elements=0A=
if (document.all && !window.opera){=0A=
  Element.Methods.update =3D function(element, html) {=0A=
    element =3D $(element);=0A=
    html =3D typeof html =3D=3D 'undefined' ? '' : html.toString();=0A=
    var tagName =3D element.tagName.toUpperCase();=0A=
    if (['THEAD','TBODY','TR','TD'].include(tagName)) {=0A=
      var div =3D document.createElement('div');=0A=
      switch (tagName) {=0A=
        case 'THEAD':=0A=
        case 'TBODY':=0A=
          div.innerHTML =3D '<table><tbody>' +  html.stripScripts() + =
'</tbody></table>';=0A=
          depth =3D 2;=0A=
          break;=0A=
        case 'TR':=0A=
          div.innerHTML =3D '<table><tbody><tr>' +  html.stripScripts() =
+ '</tr></tbody></table>';=0A=
          depth =3D 3;=0A=
          break;=0A=
        case 'TD':=0A=
          div.innerHTML =3D '<table><tbody><tr><td>' +  =
html.stripScripts() + '</td></tr></tbody></table>';=0A=
          depth =3D 4;=0A=
      }=0A=
      $A(element.childNodes).each(function(node){=0A=
        element.removeChild(node)=0A=
      });=0A=
      depth.times(function(){ div =3D div.firstChild });=0A=
=0A=
      $A(div.childNodes).each(=0A=
        function(node){ element.appendChild(node) });=0A=
    } else {=0A=
      element.innerHTML =3D html.stripScripts();=0A=
    }=0A=
    setTimeout(function() {html.evalScripts()}, 10);=0A=
    return element;=0A=
  }=0A=
};=0A=
=0A=
Object.extend(Element, Element.Methods);=0A=
=0A=
var _nativeExtensions =3D false;=0A=
=0A=
if(/Konqueror|Safari|KHTML/.test(navigator.userAgent))=0A=
  ['', 'Form', 'Input', 'TextArea', 'Select'].each(function(tag) {=0A=
    var className =3D 'HTML' + tag + 'Element';=0A=
    if(window[className]) return;=0A=
    var klass =3D window[className] =3D {};=0A=
    klass.prototype =3D document.createElement(tag ? tag.toLowerCase() : =
'div').__proto__;=0A=
  });=0A=
=0A=
Element.addMethods =3D function(methods) {=0A=
  Object.extend(Element.Methods, methods || {});=0A=
=0A=
  function copy(methods, destination, onlyIfAbsent) {=0A=
    onlyIfAbsent =3D onlyIfAbsent || false;=0A=
    var cache =3D Element.extend.cache;=0A=
    for (var property in methods) {=0A=
      var value =3D methods[property];=0A=
      if (!onlyIfAbsent || !(property in destination))=0A=
        destination[property] =3D cache.findOrStore(value);=0A=
    }=0A=
  }=0A=
=0A=
  if (typeof HTMLElement !=3D 'undefined') {=0A=
    copy(Element.Methods, HTMLElement.prototype);=0A=
    copy(Element.Methods.Simulated, HTMLElement.prototype, true);=0A=
    copy(Form.Methods, HTMLFormElement.prototype);=0A=
    [HTMLInputElement, HTMLTextAreaElement, =
HTMLSelectElement].each(function(klass) {=0A=
      copy(Form.Element.Methods, klass.prototype);=0A=
    });=0A=
    _nativeExtensions =3D true;=0A=
  }=0A=
}=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.toUpperCase();=0A=
        if (['TBODY', 'TR'].include(tagName)) {=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($A(this).concat(classNameToAdd).join(' '));=0A=
  },=0A=
=0A=
  remove: function(classNameToRemove) {=0A=
    if (!this.include(classNameToRemove)) return;=0A=
    this.set($A(this).without(classNameToRemove).join(' '));=0A=
  },=0A=
=0A=
  toString: function() {=0A=
    return $A(this).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.readAttribute("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, length =3D clause.length; i < length; i++)=0A=
        conditions.push('element.hasClassName(' + clause[i].inspect() + =
')');=0A=
    if (clause =3D params.attributes) {=0A=
      clause.each(function(attribute) {=0A=
        var value =3D 'element.readAttribute(' + =
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('element.hasAttribute(' + =
attribute.name.inspect() + ')'); 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=
      element =3D $(element); \=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, length =3D scope.length; i < 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=
Object.extend(Selector, {=0A=
  matchElements: function(elements, expression) {=0A=
    var selector =3D new Selector(expression);=0A=
    return =
elements.select(selector.match.bind(selector)).map(Element.extend);=0A=
  },=0A=
=0A=
  findElement: function(elements, expression, index) {=0A=
    if (typeof expression =3D=3D 'number') index =3D expression, =
expression =3D false;=0A=
    return Selector.matchElements(elements, expression || '*')[index || =
0];=0A=
  },=0A=
=0A=
  findChildElements: function(element, expressions) {=0A=
    return expressions.map(function(expression) {=0A=
      return =
expression.match(/[^\s"]+(?:"[^"]*"[^\s"]+)*/g).inject([null], =
function(results, expr) {=0A=
        var selector =3D new Selector(expr);=0A=
        return results.inject([], function(elements, result) {=0A=
          return elements.concat(selector.findElements(result || =
element));=0A=
        });=0A=
      });=0A=
    }).flatten();=0A=
  }=0A=
});=0A=
=0A=
function $$() {=0A=
  return Selector.findChildElements(document, $A(arguments));=0A=
}=0A=
var Form =3D {=0A=
  reset: function(form) {=0A=
    $(form).reset();=0A=
    return form;=0A=
  },=0A=
=0A=
  serializeElements: function(elements, getHash) {=0A=
    var data =3D elements.inject({}, function(result, element) {=0A=
      if (!element.disabled && element.name) {=0A=
        var key =3D element.name, value =3D $(element).getValue();=0A=
        if (value !=3D undefined) {=0A=
          if (result[key]) {=0A=
            if (result[key].constructor !=3D Array) result[key] =3D =
[result[key]];=0A=
            result[key].push(value);=0A=
          }=0A=
          else result[key] =3D value;=0A=
        }=0A=
      }=0A=
      return result;=0A=
    });=0A=
=0A=
    return getHash ? data : Hash.toQueryString(data);=0A=
  }=0A=
};=0A=
=0A=
Form.Methods =3D {=0A=
  serialize: function(form, getHash) {=0A=
    return Form.serializeElements(Form.getElements(form), getHash);=0A=
  },=0A=
=0A=
  getElements: function(form) {=0A=
    return $A($(form).getElementsByTagName('*')).inject([],=0A=
      function(elements, child) {=0A=
        if (Form.Element.Serializers[child.tagName.toLowerCase()])=0A=
          elements.push(Element.extend(child));=0A=
        return elements;=0A=
      }=0A=
    );=0A=
  },=0A=
=0A=
  getInputs: function(form, typeName, name) {=0A=
    form =3D $(form);=0A=
    var inputs =3D form.getElementsByTagName('input');=0A=
=0A=
    if (!typeName && !name) return $A(inputs).map(Element.extend);=0A=
=0A=
    for (var i =3D 0, matchingInputs =3D [], length =3D inputs.length; i =
< length; i++) {=0A=
      var input =3D inputs[i];=0A=
      if ((typeName && input.type !=3D typeName) || (name && input.name =
!=3D name))=0A=
        continue;=0A=
      matchingInputs.push(Element.extend(input));=0A=
    }=0A=
=0A=
    return matchingInputs;=0A=
  },=0A=
=0A=
  disable: function(form) {=0A=
    form =3D $(form);=0A=
    form.getElements().each(function(element) {=0A=
      element.blur();=0A=
      element.disabled =3D 'true';=0A=
    });=0A=
    return form;=0A=
  },=0A=
=0A=
  enable: function(form) {=0A=
    form =3D $(form);=0A=
    form.getElements().each(function(element) {=0A=
      element.disabled =3D '';=0A=
    });=0A=
    return form;=0A=
  },=0A=
=0A=
  findFirstElement: function(form) {=0A=
    return $(form).getElements().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=
    form =3D $(form);=0A=
    form.findFirstElement().activate();=0A=
    return form;=0A=
  }=0A=
}=0A=
=0A=
Object.extend(Form, Form.Methods);=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
Form.Element =3D {=0A=
  focus: function(element) {=0A=
    $(element).focus();=0A=
    return element;=0A=
  },=0A=
=0A=
  select: function(element) {=0A=
    $(element).select();=0A=
    return element;=0A=
  }=0A=
}=0A=
=0A=
Form.Element.Methods =3D {=0A=
  serialize: function(element) {=0A=
    element =3D $(element);=0A=
    if (!element.disabled && element.name) {=0A=
      var value =3D element.getValue();=0A=
      if (value !=3D undefined) {=0A=
        var pair =3D {};=0A=
        pair[element.name] =3D value;=0A=
        return Hash.toQueryString(pair);=0A=
      }=0A=
    }=0A=
    return '';=0A=
  },=0A=
=0A=
  getValue: function(element) {=0A=
    element =3D $(element);=0A=
    var method =3D element.tagName.toLowerCase();=0A=
    return Form.Element.Serializers[method](element);=0A=
  },=0A=
=0A=
  clear: function(element) {=0A=
    $(element).value =3D '';=0A=
    return element;=0A=
  },=0A=
=0A=
  present: function(element) {=0A=
    return $(element).value !=3D '';=0A=
  },=0A=
=0A=
  activate: function(element) {=0A=
    element =3D $(element);=0A=
    element.focus();=0A=
    if (element.select && ( element.tagName.toLowerCase() !=3D 'input' ||=0A=
      !['button', 'reset', 'submit'].include(element.type) ) )=0A=
      element.select();=0A=
    return element;=0A=
  },=0A=
=0A=
  disable: function(element) {=0A=
    element =3D $(element);=0A=
    element.disabled =3D true;=0A=
    return element;=0A=
  },=0A=
=0A=
  enable: function(element) {=0A=
    element =3D $(element);=0A=
    element.blur();=0A=
    element.disabled =3D false;=0A=
    return element;=0A=
  }=0A=
}=0A=
=0A=
Object.extend(Form.Element, Form.Element.Methods);=0A=
var Field =3D Form.Element;=0A=
var $F =3D Form.Element.getValue;=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
Form.Element.Serializers =3D {=0A=
  input: function(element) {=0A=
    switch (element.type.toLowerCase()) {=0A=
      case 'checkbox':=0A=
      case 'radio':=0A=
        return Form.Element.Serializers.inputSelector(element);=0A=
      default:=0A=
        return Form.Element.Serializers.textarea(element);=0A=
    }=0A=
  },=0A=
=0A=
  inputSelector: function(element) {=0A=
    return element.checked ? element.value : null;=0A=
  },=0A=
=0A=
  textarea: function(element) {=0A=
    return element.value;=0A=
  },=0A=
=0A=
  select: function(element) {=0A=
    return this[element.type =3D=3D 'select-one' ?=0A=
      'selectOne' : 'selectMany'](element);=0A=
  },=0A=
=0A=
  selectOne: function(element) {=0A=
    var index =3D element.selectedIndex;=0A=
    return index >=3D 0 ? this.optionValue(element.options[index]) : =
null;=0A=
  },=0A=
=0A=
  selectMany: function(element) {=0A=
    var values, length =3D element.length;=0A=
    if (!length) return null;=0A=
=0A=
    for (var i =3D 0, values =3D []; i < length; i++) {=0A=
      var opt =3D element.options[i];=0A=
      if (opt.selected) values.push(this.optionValue(opt));=0A=
    }=0A=
    return values;=0A=
  },=0A=
=0A=
  optionValue: function(opt) {=0A=
    // extend element because hasAttribute may not be native=0A=
    return Element.extend(opt).hasAttribute('value') ? opt.value : =
opt.text;=0A=
  }=0A=
}=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=
    var changed =3D ('string' =3D=3D typeof this.lastValue && 'string' =
=3D=3D typeof value=0A=
      ? this.lastValue !=3D value : String(this.lastValue) !=3D =
String(value));=0A=
    if (changed) {=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=
    =
Form.getElements(this.element).each(this.registerCallback.bind(this));=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=
        default:=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=
  KEY_HOME:     36,=0A=
  KEY_END:      35,=0A=
  KEY_PAGEUP:   33,=0A=
  KEY_PAGEDOWN: 34,=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, length =3D Event.observers.length; i < 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=
    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=
    Event._observeAndCache(element, name, observer, useCapture);=0A=
  },=0A=
=0A=
  stopObserving: function(element, name, observer, useCapture) {=0A=
    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=
      try {=0A=
        element.detachEvent('on' + name, observer);=0A=
      } catch (e) {}=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=
        if(element.tagName=3D=3D'BODY') break;=0A=
        var 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=
  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=
      if (!window.opera || element.tagName=3D=3D'BODY') {=0A=
        valueT -=3D element.scrollTop  || 0;=0A=
        valueL -=3D element.scrollLeft || 0;=0A=
      }=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=
}=0A=
=0A=
Element.addMethods();
------=_NextPart_000_0013_01C867E3.D97C53A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.jackassworld.com/javascripts/effects.js?1193090139

// Copyright (c) 2005, 2006 Thomas Fuchs (http://script.aculo.us, =
http://mir.aculo.us)=0A=
// Contributors:=0A=
//  Justin Palmer (http://encytemedia.com/)=0A=
//  Mark Pilgrim (http://diveintomark.org/)=0A=
//  Martin Bialasinki=0A=
// =0A=
// script.aculo.us is freely distributable under the terms of an =
MIT-style license.=0A=
// For details, see the script.aculo.us web site: =
http://script.aculo.us/ =0A=
=0A=
// converts rgb() and #xxx to #xxxxxx format,  =0A=
// returns self (or first argument) if not convertable  =0A=
String.prototype.parseColor =3D function() {  =0A=
  var color =3D '#';=0A=
  if(this.slice(0,4) =3D=3D 'rgb(') {  =0A=
    var cols =3D this.slice(4,this.length-1).split(',');  =0A=
    var i=3D0; do { color +=3D parseInt(cols[i]).toColorPart() } while =
(++i<3);  =0A=
  } else {  =0A=
    if(this.slice(0,1) =3D=3D '#') {  =0A=
      if(this.length=3D=3D4) for(var i=3D1;i<4;i++) color +=3D =
(this.charAt(i) + this.charAt(i)).toLowerCase();  =0A=
      if(this.length=3D=3D7) color =3D this.toLowerCase();  =0A=
    }  =0A=
  }  =0A=
  return(color.length=3D=3D7 ? color : (arguments[0] || this));  =0A=
}=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
Element.collectTextNodes =3D function(element) {  =0A=
  return $A($(element).childNodes).collect( function(node) {=0A=
    return (node.nodeType=3D=3D3 ? node.nodeValue : =0A=
      (node.hasChildNodes() ? Element.collectTextNodes(node) : ''));=0A=
  }).flatten().join('');=0A=
}=0A=
=0A=
Element.collectTextNodesIgnoreClass =3D function(element, className) {  =0A=
  return $A($(element).childNodes).collect( function(node) {=0A=
    return (node.nodeType=3D=3D3 ? node.nodeValue : =0A=
      ((node.hasChildNodes() && !Element.hasClassName(node,className)) ? =0A=
        Element.collectTextNodesIgnoreClass(node, className) : ''));=0A=
  }).flatten().join('');=0A=
}=0A=
=0A=
Element.setContentZoom =3D function(element, percent) {=0A=
  element =3D $(element);  =0A=
  element.setStyle({fontSize: (percent/100) + 'em'});   =0A=
  if(navigator.appVersion.indexOf('AppleWebKit')>0) window.scrollBy(0,0);=0A=
  return element;=0A=
}=0A=
=0A=
Element.getOpacity =3D function(element){=0A=
  element =3D $(element);=0A=
  var opacity;=0A=
  if (opacity =3D element.getStyle('opacity'))  =0A=
    return parseFloat(opacity);  =0A=
  if (opacity =3D (element.getStyle('filter') || =
'').match(/alpha\(opacity=3D(.*)\)/))  =0A=
    if(opacity[1]) return parseFloat(opacity[1]) / 100;  =0A=
  return 1.0;  =0A=
}=0A=
=0A=
Element.setOpacity =3D function(element, value){  =0A=
  element=3D $(element);  =0A=
  if (value =3D=3D 1){=0A=
    element.setStyle({ opacity: =0A=
      (/Gecko/.test(navigator.userAgent) && =
!/Konqueror|Safari|KHTML/.test(navigator.userAgent)) ? =0A=
      0.999999 : 1.0 });=0A=
    if(/MSIE/.test(navigator.userAgent) && !window.opera)  =0A=
      element.setStyle({filter: =
Element.getStyle(element,'filter').replace(/alpha\([^\)]*\)/gi,'')});  =0A=
  } else {  =0A=
    if(value < 0.00001) value =3D 0;  =0A=
    element.setStyle({opacity: value});=0A=
    if(/MSIE/.test(navigator.userAgent) && !window.opera)  =0A=
      element.setStyle(=0A=
        { filter: =
element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,'') +=0A=
            'alpha(opacity=3D'+value*100+')' });  =0A=
  }=0A=
  return element;=0A=
}  =0A=
 =0A=
Element.getInlineOpacity =3D function(element){  =0A=
  return $(element).style.opacity || '';=0A=
}  =0A=
=0A=
Element.forceRerendering =3D function(element) {=0A=
  try {=0A=
    element =3D $(element);=0A=
    var n =3D document.createTextNode(' ');=0A=
    element.appendChild(n);=0A=
    element.removeChild(n);=0A=
  } catch(e) { }=0A=
};=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
Array.prototype.call =3D function() {=0A=
  var args =3D arguments;=0A=
  this.each(function(f){ f.apply(this, args) });=0A=
}=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
var Effect =3D {=0A=
  _elementDoesNotExistError: {=0A=
    name: 'ElementDoesNotExistError',=0A=
    message: 'The specified DOM element does not exist, but is required =
for this effect to operate'=0A=
  },=0A=
  tagifyText: function(element) {=0A=
    if(typeof Builder =3D=3D 'undefined')=0A=
      throw("Effect.tagifyText requires including script.aculo.us' =
builder.js library");=0A=
      =0A=
    var tagifyStyle =3D 'position:relative';=0A=
    if(/MSIE/.test(navigator.userAgent) && !window.opera) tagifyStyle =
+=3D ';zoom:1';=0A=
    =0A=
    element =3D $(element);=0A=
    $A(element.childNodes).each( function(child) {=0A=
      if(child.nodeType=3D=3D3) {=0A=
        child.nodeValue.toArray().each( function(character) {=0A=
          element.insertBefore(=0A=
            Builder.node('span',{style: tagifyStyle},=0A=
              character =3D=3D ' ' ? String.fromCharCode(160) : =
character), =0A=
              child);=0A=
        });=0A=
        Element.remove(child);=0A=
      }=0A=
    });=0A=
  },=0A=
  multiple: function(element, effect) {=0A=
    var elements;=0A=
    if(((typeof element =3D=3D 'object') || =0A=
        (typeof element =3D=3D 'function')) && =0A=
       (element.length))=0A=
      elements =3D element;=0A=
    else=0A=
      elements =3D $(element).childNodes;=0A=
      =0A=
    var options =3D Object.extend({=0A=
      speed: 0.1,=0A=
      delay: 0.0=0A=
    }, arguments[2] || {});=0A=
    var masterDelay =3D options.delay;=0A=
=0A=
    $A(elements).each( function(element, index) {=0A=
      new effect(element, Object.extend(options, { delay: index * =
options.speed + masterDelay }));=0A=
    });=0A=
  },=0A=
  PAIRS: {=0A=
    'slide':  ['SlideDown','SlideUp'],=0A=
    'blind':  ['BlindDown','BlindUp'],=0A=
    'appear': ['Appear','Fade']=0A=
  },=0A=
  toggle: function(element, effect) {=0A=
    element =3D $(element);=0A=
    effect =3D (effect || 'appear').toLowerCase();=0A=
    var options =3D Object.extend({=0A=
      queue: { position:'end', scope:(element.id || 'global'), limit: 1 }=0A=
    }, arguments[2] || {});=0A=
    Effect[element.visible() ? =0A=
      Effect.PAIRS[effect][1] : Effect.PAIRS[effect][0]](element, =
options);=0A=
  }=0A=
};=0A=
=0A=
var Effect2 =3D Effect; // deprecated=0A=
=0A=
/* ------------- transitions ------------- */=0A=
=0A=
Effect.Transitions =3D {=0A=
  linear: Prototype.K,=0A=
  sinoidal: function(pos) {=0A=
    return (-Math.cos(pos*Math.PI)/2) + 0.5;=0A=
  },=0A=
  reverse: function(pos) {=0A=
    return 1-pos;=0A=
  },=0A=
  flicker: function(pos) {=0A=
    return ((-Math.cos(pos*Math.PI)/4) + 0.75) + Math.random()/4;=0A=
  },=0A=
  wobble: function(pos) {=0A=
    return (-Math.cos(pos*Math.PI*(9*pos))/2) + 0.5;=0A=
  },=0A=
  pulse: function(pos, pulses) { =0A=
    pulses =3D pulses || 5; =0A=
    return (=0A=
      Math.round((pos % (1/pulses)) * pulses) =3D=3D 0 ? =0A=
            ((pos * pulses * 2) - Math.floor(pos * pulses * 2)) : =0A=
        1 - ((pos * pulses * 2) - Math.floor(pos * pulses * 2))=0A=
      );=0A=
  },=0A=
  none: function(pos) {=0A=
    return 0;=0A=
  },=0A=
  full: function(pos) {=0A=
    return 1;=0A=
  }=0A=
};=0A=
=0A=
/* ------------- core effects ------------- */=0A=
=0A=
Effect.ScopedQueue =3D Class.create();=0A=
Object.extend(Object.extend(Effect.ScopedQueue.prototype, Enumerable), {=0A=
  initialize: function() {=0A=
    this.effects  =3D [];=0A=
    this.interval =3D null;=0A=
  },=0A=
  _each: function(iterator) {=0A=
    this.effects._each(iterator);=0A=
  },=0A=
  add: function(effect) {=0A=
    var timestamp =3D new Date().getTime();=0A=
    =0A=
    var position =3D (typeof effect.options.queue =3D=3D 'string') ? =0A=
      effect.options.queue : effect.options.queue.position;=0A=
    =0A=
    switch(position) {=0A=
      case 'front':=0A=
        // move unstarted effects after this effect  =0A=
        this.effects.findAll(function(e){ return e.state=3D=3D'idle' =
}).each( function(e) {=0A=
            e.startOn  +=3D effect.finishOn;=0A=
            e.finishOn +=3D effect.finishOn;=0A=
          });=0A=
        break;=0A=
      case 'with-last':=0A=
        timestamp =3D this.effects.pluck('startOn').max() || timestamp;=0A=
        break;=0A=
      case 'end':=0A=
        // start effect after last queued effect has finished=0A=
        timestamp =3D this.effects.pluck('finishOn').max() || timestamp;=0A=
        break;=0A=
    }=0A=
    =0A=
    effect.startOn  +=3D timestamp;=0A=
    effect.finishOn +=3D timestamp;=0A=
=0A=
    if(!effect.options.queue.limit || (this.effects.length < =
effect.options.queue.limit))=0A=
      this.effects.push(effect);=0A=
    =0A=
    if(!this.interval) =0A=
      this.interval =3D setInterval(this.loop.bind(this), 40);=0A=
  },=0A=
  remove: function(effect) {=0A=
    this.effects =3D this.effects.reject(function(e) { return =
e=3D=3Deffect });=0A=
    if(this.effects.length =3D=3D 0) {=0A=
      clearInterval(this.interval);=0A=
      this.interval =3D null;=0A=
    }=0A=
  },=0A=
  loop: function() {=0A=
    var timePos =3D new Date().getTime();=0A=
    this.effects.invoke('loop', timePos);=0A=
  }=0A=
});=0A=
=0A=
Effect.Queues =3D {=0A=
  instances: $H(),=0A=
  get: function(queueName) {=0A=
    if(typeof queueName !=3D 'string') return queueName;=0A=
    =0A=
    if(!this.instances[queueName])=0A=
      this.instances[queueName] =3D new Effect.ScopedQueue();=0A=
      =0A=
    return this.instances[queueName];=0A=
  }=0A=
}=0A=
Effect.Queue =3D Effect.Queues.get('global');=0A=
=0A=
Effect.DefaultOptions =3D {=0A=
  transition: Effect.Transitions.sinoidal,=0A=
  duration:   1.0,   // seconds=0A=
  fps:        25.0,  // max. 25fps due to Effect.Queue implementation=0A=
  sync:       false, // true for combining=0A=
  from:       0.0,=0A=
  to:         1.0,=0A=
  delay:      0.0,=0A=
  queue:      'parallel'=0A=
}=0A=
=0A=
Effect.Base =3D function() {};=0A=
Effect.Base.prototype =3D {=0A=
  position: null,=0A=
  start: function(options) {=0A=
    this.options      =3D =
Object.extend(Object.extend({},Effect.DefaultOptions), options || {});=0A=
    this.currentFrame =3D 0;=0A=
    this.state        =3D 'idle';=0A=
    this.startOn      =3D this.options.delay*1000;=0A=
    this.finishOn     =3D this.startOn + (this.options.duration*1000);=0A=
    this.event('beforeStart');=0A=
    if(!this.options.sync)=0A=
      Effect.Queues.get(typeof this.options.queue =3D=3D 'string' ? =0A=
        'global' : this.options.queue.scope).add(this);=0A=
  },=0A=
  loop: function(timePos) {=0A=
    if(timePos >=3D this.startOn) {=0A=
      if(timePos >=3D this.finishOn) {=0A=
        this.render(1.0);=0A=
        this.cancel();=0A=
        this.event('beforeFinish');=0A=
        if(this.finish) this.finish(); =0A=
        this.event('afterFinish');=0A=
        return;  =0A=
      }=0A=
      var pos   =3D (timePos - this.startOn) / (this.finishOn - =
this.startOn);=0A=
      var frame =3D Math.round(pos * this.options.fps * =
this.options.duration);=0A=
      if(frame > this.currentFrame) {=0A=
        this.render(pos);=0A=
        this.currentFrame =3D frame;=0A=
      }=0A=
    }=0A=
  },=0A=
  render: function(pos) {=0A=
    if(this.state =3D=3D 'idle') {=0A=
      this.state =3D 'running';=0A=
      this.event('beforeSetup');=0A=
      if(this.setup) this.setup();=0A=
      this.event('afterSetup');=0A=
    }=0A=
    if(this.state =3D=3D 'running') {=0A=
      if(this.options.transition) pos =3D this.options.transition(pos);=0A=
      pos *=3D (this.options.to-this.options.from);=0A=
      pos +=3D this.options.from;=0A=
      this.position =3D pos;=0A=
      this.event('beforeUpdate');=0A=
      if(this.update) this.update(pos);=0A=
      this.event('afterUpdate');=0A=
    }=0A=
  },=0A=
  cancel: function() {=0A=
    if(!this.options.sync)=0A=
      Effect.Queues.get(typeof this.options.queue =3D=3D 'string' ? =0A=
        'global' : this.options.queue.scope).remove(this);=0A=
    this.state =3D 'finished';=0A=
  },=0A=
  event: function(eventName) {=0A=
    if(this.options[eventName + 'Internal']) this.options[eventName + =
'Internal'](this);=0A=
    if(this.options[eventName]) this.options[eventName](this);=0A=
  },=0A=
  inspect: function() {=0A=
    return '#<Effect:' + $H(this).inspect() + ',options:' + =
$H(this.options).inspect() + '>';=0A=
  }=0A=
}=0A=
=0A=
Effect.Parallel =3D Class.create();=0A=
Object.extend(Object.extend(Effect.Parallel.prototype, =
Effect.Base.prototype), {=0A=
  initialize: function(effects) {=0A=
    this.effects =3D effects || [];=0A=
    this.start(arguments[1]);=0A=
  },=0A=
  update: function(position) {=0A=
    this.effects.invoke('render', position);=0A=
  },=0A=
  finish: function(position) {=0A=
    this.effects.each( function(effect) {=0A=
      effect.render(1.0);=0A=
      effect.cancel();=0A=
      effect.event('beforeFinish');=0A=
      if(effect.finish) effect.finish(position);=0A=
      effect.event('afterFinish');=0A=
    });=0A=
  }=0A=
});=0A=
=0A=
Effect.Event =3D Class.create();=0A=
Object.extend(Object.extend(Effect.Event.prototype, =
Effect.Base.prototype), {=0A=
  initialize: function() {=0A=
    var options =3D Object.extend({=0A=
      duration: 0=0A=
    }, arguments[0] || {});=0A=
    this.start(options);=0A=
  },=0A=
  update: Prototype.emptyFunction=0A=
});=0A=
=0A=
Effect.Opacity =3D Class.create();=0A=
Object.extend(Object.extend(Effect.Opacity.prototype, =
Effect.Base.prototype), {=0A=
  initialize: function(element) {=0A=
    this.element =3D $(element);=0A=
    if(!this.element) throw(Effect._elementDoesNotExistError);=0A=
    // make this work on IE on elements without 'layout'=0A=
    if(/MSIE/.test(navigator.userAgent) && !window.opera && =
(!this.element.currentStyle.hasLayout))=0A=
      this.element.setStyle({zoom: 1});=0A=
    var options =3D Object.extend({=0A=
      from: this.element.getOpacity() || 0.0,=0A=
      to:   1.0=0A=
    }, arguments[1] || {});=0A=
    this.start(options);=0A=
  },=0A=
  update: function(position) {=0A=
    this.element.setOpacity(position);=0A=
  }=0A=
});=0A=
=0A=
Effect.Move =3D Class.create();=0A=
Object.extend(Object.extend(Effect.Move.prototype, =
Effect.Base.prototype), {=0A=
  initialize: function(element) {=0A=
    this.element =3D $(element);=0A=
    if(!this.element) throw(Effect._elementDoesNotExistError);=0A=
    var options =3D Object.extend({=0A=
      x:    0,=0A=
      y:    0,=0A=
      mode: 'relative'=0A=
    }, arguments[1] || {});=0A=
    this.start(options);=0A=
  },=0A=
  setup: function() {=0A=
    // Bug in Opera: Opera returns the "real" position of a static =
element or=0A=
    // relative element that does not have top/left explicitly set.=0A=
    // =3D=3D> Always set top and left for position relative elements in =
your stylesheets =0A=
    // (to 0 if you do not need them) =0A=
    this.element.makePositioned();=0A=
    this.originalLeft =3D parseFloat(this.element.getStyle('left') || =
'0');=0A=
    this.originalTop  =3D parseFloat(this.element.getStyle('top')  || =
'0');=0A=
    if(this.options.mode =3D=3D 'absolute') {=0A=
      // absolute movement, so we need to calc deltaX and deltaY=0A=
      this.options.x =3D this.options.x - this.originalLeft;=0A=
      this.options.y =3D this.options.y - this.originalTop;=0A=
    }=0A=
  },=0A=
  update: function(position) {=0A=
    this.element.setStyle({=0A=
      left: Math.round(this.options.x  * position + this.originalLeft) + =
'px',=0A=
      top:  Math.round(this.options.y  * position + this.originalTop)  + =
'px'=0A=
    });=0A=
  }=0A=
});=0A=
=0A=
// for backwards compatibility=0A=
Effect.MoveBy =3D function(element, toTop, toLeft) {=0A=
  return new Effect.Move(element, =0A=
    Object.extend({ x: toLeft, y: toTop }, arguments[3] || {}));=0A=
};=0A=
=0A=
Effect.Scale =3D Class.create();=0A=
Object.extend(Object.extend(Effect.Scale.prototype, =
Effect.Base.prototype), {=0A=
  initialize: function(element, percent) {=0A=
    this.element =3D $(element);=0A=
    if(!this.element) throw(Effect._elementDoesNotExistError);=0A=
    var options =3D Object.extend({=0A=
      scaleX: true,=0A=
      scaleY: true,=0A=
      scaleContent: true,=0A=
      scaleFromCenter: false,=0A=
      scaleMode: 'box',        // 'box' or 'contents' or {} with =
provided values=0A=
      scaleFrom: 100.0,=0A=
      scaleTo:   percent=0A=
    }, arguments[2] || {});=0A=
    this.start(options);=0A=
  },=0A=
  setup: function() {=0A=
    this.restoreAfterFinish =3D this.options.restoreAfterFinish || false;=0A=
    this.elementPositioning =3D this.element.getStyle('position');=0A=
    =0A=
    this.originalStyle =3D {};=0A=
    ['top','left','width','height','fontSize'].each( function(k) {=0A=
      this.originalStyle[k] =3D this.element.style[k];=0A=
    }.bind(this));=0A=
      =0A=
    this.originalTop  =3D this.element.offsetTop;=0A=
    this.originalLeft =3D this.element.offsetLeft;=0A=
    =0A=
    var fontSize =3D this.element.getStyle('font-size') || '100%';=0A=
    ['em','px','%','pt'].each( function(fontSizeType) {=0A=
      if(fontSize.indexOf(fontSizeType)>0) {=0A=
        this.fontSize     =3D parseFloat(fontSize);=0A=
        this.fontSizeType =3D fontSizeType;=0A=
      }=0A=
    }.bind(this));=0A=
    =0A=
    this.factor =3D (this.options.scaleTo - this.options.scaleFrom)/100;=0A=
    =0A=
    this.dims =3D null;=0A=
    if(this.options.scaleMode=3D=3D'box')=0A=
      this.dims =3D [this.element.offsetHeight, =
this.element.offsetWidth];=0A=
    if(/^content/.test(this.options.scaleMode))=0A=
      this.dims =3D [this.element.scrollHeight, =
this.element.scrollWidth];=0A=
    if(!this.dims)=0A=
      this.dims =3D [this.options.scaleMode.originalHeight,=0A=
                   this.options.scaleMode.originalWidth];=0A=
  },=0A=
  update: function(position) {=0A=
    var currentScale =3D (this.options.scaleFrom/100.0) + (this.factor * =
position);=0A=
    if(this.options.scaleContent && this.fontSize)=0A=
      this.element.setStyle({fontSize: this.fontSize * currentScale + =
this.fontSizeType });=0A=
    this.setDimensions(this.dims[0] * currentScale, this.dims[1] * =
currentScale);=0A=
  },=0A=
  finish: function(position) {=0A=
    if(this.restoreAfterFinish) =
this.element.setStyle(this.originalStyle);=0A=
  },=0A=
  setDimensions: function(height, width) {=0A=
    var d =3D {};=0A=
    if(this.options.scaleX) d.width =3D Math.round(width) + 'px';=0A=
    if(this.options.scaleY) d.height =3D Math.round(height) + 'px';=0A=
    if(this.options.scaleFromCenter) {=0A=
      var topd  =3D (height - this.dims[0])/2;=0A=
      var leftd =3D (width  - this.dims[1])/2;=0A=
      if(this.elementPositioning =3D=3D 'absolute') {=0A=
        if(this.options.scaleY) d.top =3D this.originalTop-topd + 'px';=0A=
        if(this.options.scaleX) d.left =3D this.originalLeft-leftd + =
'px';=0A=
      } else {=0A=
        if(this.options.scaleY) d.top =3D -topd + 'px';=0A=
        if(this.options.scaleX) d.left =3D -leftd + 'px';=0A=
      }=0A=
    }=0A=
    this.element.setStyle(d);=0A=
  }=0A=
});=0A=
=0A=
Effect.Highlight =3D Class.create();=0A=
Object.extend(Object.extend(Effect.Highlight.prototype, =
Effect.Base.prototype), {=0A=
  initialize: function(element) {=0A=
    this.element =3D $(element);=0A=
    if(!this.element) throw(Effect._elementDoesNotExistError);=0A=
    var options =3D Object.extend({ startcolor: '#ffff99' }, =
arguments[1] || {});=0A=
    this.start(options);=0A=
  },=0A=
  setup: function() {=0A=
    // Prevent executing on elements not in the layout flow=0A=
    if(this.element.getStyle('display')=3D=3D'none') { this.cancel(); =
return; }=0A=
    // Disable background image during the effect=0A=
    this.oldStyle =3D {=0A=
      backgroundImage: this.element.getStyle('background-image') };=0A=
    this.element.setStyle({backgroundImage: 'none'});=0A=
    if(!this.options.endcolor)=0A=
      this.options.endcolor =3D =
this.element.getStyle('background-color').parseColor('#ffffff');=0A=
    if(!this.options.restorecolor)=0A=
      this.options.restorecolor =3D =
this.element.getStyle('background-color');=0A=
    // init color calculations=0A=
    this._base  =3D $R(0,2).map(function(i){ return =
parseInt(this.options.startcolor.slice(i*2+1,i*2+3),16) }.bind(this));=0A=
    this._delta =3D $R(0,2).map(function(i){ return =
parseInt(this.options.endcolor.slice(i*2+1,i*2+3),16)-this._base[i] =
}.bind(this));=0A=
  },=0A=
  update: function(position) {=0A=
    this.element.setStyle({backgroundColor: =
$R(0,2).inject('#',function(m,v,i){=0A=
      return =
m+(Math.round(this._base[i]+(this._delta[i]*position)).toColorPart()); =
}.bind(this)) });=0A=
  },=0A=
  finish: function() {=0A=
    this.element.setStyle(Object.extend(this.oldStyle, {=0A=
      backgroundColor: this.options.restorecolor=0A=
    }));=0A=
  }=0A=
});=0A=
=0A=
Effect.ScrollTo =3D Class.create();=0A=
Object.extend(Object.extend(Effect.ScrollTo.prototype, =
Effect.Base.prototype), {=0A=
  initialize: function(element) {=0A=
    this.element =3D $(element);=0A=
    this.start(arguments[1] || {});=0A=
  },=0A=
  setup: function() {=0A=
    Position.prepare();=0A=
    var offsets =3D Position.cumulativeOffset(this.element);=0A=
    if(this.options.offset) offsets[1] +=3D this.options.offset;=0A=
    var max =3D window.innerHeight ? =0A=
      window.height - window.innerHeight :=0A=
      document.body.scrollHeight - =0A=
        (document.documentElement.clientHeight ? =0A=
          document.documentElement.clientHeight : =
document.body.clientHeight);=0A=
    this.scrollStart =3D Position.deltaY;=0A=
    this.delta =3D (offsets[1] > max ? max : offsets[1]) - =
this.scrollStart;=0A=
  },=0A=
  update: function(position) {=0A=
    Position.prepare();=0A=
    window.scrollTo(Position.deltaX, =0A=
      this.scrollStart + (position*this.delta));=0A=
  }=0A=
});=0A=
=0A=
/* ------------- combination effects ------------- */=0A=
=0A=
Effect.Fade =3D function(element) {=0A=
  element =3D $(element);=0A=
  var oldOpacity =3D element.getInlineOpacity();=0A=
  var options =3D Object.extend({=0A=
  from: element.getOpacity() || 1.0,=0A=
  to:   0.0,=0A=
  afterFinishInternal: function(effect) { =0A=
    if(effect.options.to!=3D0) return;=0A=
    effect.element.hide().setStyle({opacity: oldOpacity}); =0A=
  }}, arguments[1] || {});=0A=
  return new Effect.Opacity(element,options);=0A=
}=0A=
=0A=
Effect.Appear =3D function(element) {=0A=
  element =3D $(element);=0A=
  var options =3D Object.extend({=0A=
  from: (element.getStyle('display') =3D=3D 'none' ? 0.0 : =
element.getOpacity() || 0.0),=0A=
  to:   1.0,=0A=
  // force Safari to render floated elements properly=0A=
  afterFinishInternal: function(effect) {=0A=
    effect.element.forceRerendering();=0A=
  },=0A=
  beforeSetup: function(effect) {=0A=
    effect.element.setOpacity(effect.options.from).show(); =0A=
  }}, arguments[1] || {});=0A=
  return new Effect.Opacity(element,options);=0A=
}=0A=
=0A=
Effect.Puff =3D function(element) {=0A=
  element =3D $(element);=0A=
  var oldStyle =3D { =0A=
    opacity: element.getInlineOpacity(), =0A=
    position: element.getStyle('position'),=0A=
    top:  element.style.top,=0A=
    left: element.style.left,=0A=
    width: element.style.width,=0A=
    height: element.style.height=0A=
  };=0A=
  return new Effect.Parallel(=0A=
   [ new Effect.Scale(element, 200, =0A=
      { sync: true, scaleFromCenter: true, scaleContent: true, =
restoreAfterFinish: true }), =0A=
     new Effect.Opacity(element, { sync: true, to: 0.0 } ) ], =0A=
     Object.extend({ duration: 1.0, =0A=
      beforeSetupInternal: function(effect) {=0A=
        Position.absolutize(effect.effects[0].element)=0A=
      },=0A=
      afterFinishInternal: function(effect) {=0A=
         effect.effects[0].element.hide().setStyle(oldStyle); }=0A=
     }, arguments[1] || {})=0A=
   );=0A=
}=0A=
=0A=
Effect.BlindUp =3D function(element) {=0A=
  element =3D $(element);=0A=
  element.makeClipping();=0A=
  return new Effect.Scale(element, 0,=0A=
    Object.extend({ scaleContent: false, =0A=
      scaleX: false, =0A=
      restoreAfterFinish: true,=0A=
      afterFinishInternal: function(effect) {=0A=
        effect.element.hide().undoClipping();=0A=
      } =0A=
    }, arguments[1] || {})=0A=
  );=0A=
}=0A=
=0A=
Effect.BlindDown =3D function(element) {=0A=
  element =3D $(element);=0A=
  var elementDimensions =3D element.getDimensions();=0A=
  return new Effect.Scale(element, 100, Object.extend({ =0A=
    scaleContent: false, =0A=
    scaleX: false,=0A=
    scaleFrom: 0,=0A=
    scaleMode: {originalHeight: elementDimensions.height, originalWidth: =
elementDimensions.width},=0A=
    restoreAfterFinish: true,=0A=
    afterSetup: function(effect) {=0A=
      effect.element.makeClipping().setStyle({height: '0px'}).show(); =0A=
    },  =0A=
    afterFinishInternal: function(effect) {=0A=
      effect.element.undoClipping();=0A=
    }=0A=
  }, arguments[1] || {}));=0A=
}=0A=
=0A=
Effect.SwitchOff =3D function(element) {=0A=
  element =3D $(element);=0A=
  var oldOpacity =3D element.getInlineOpacity();=0A=
  return new Effect.Appear(element, Object.extend({=0A=
    duration: 0.4,=0A=
    from: 0,=0A=
    transition: Effect.Transitions.flicker,=0A=
    afterFinishInternal: function(effect) {=0A=
      new Effect.Scale(effect.element, 1, { =0A=
        duration: 0.3, scaleFromCenter: true,=0A=
        scaleX: false, scaleContent: false, restoreAfterFinish: true,=0A=
        beforeSetup: function(effect) { =0A=
          effect.element.makePositioned().makeClipping();=0A=
        },=0A=
        afterFinishInternal: function(effect) {=0A=
          =
effect.element.hide().undoClipping().undoPositioned().setStyle({opacity: =
oldOpacity});=0A=
        }=0A=
      })=0A=
    }=0A=
  }, arguments[1] || {}));=0A=
}=0A=
=0A=
Effect.DropOut =3D function(element) {=0A=
  element =3D $(element);=0A=
  var oldStyle =3D {=0A=
    top: element.getStyle('top'),=0A=
    left: element.getStyle('left'),=0A=
    opacity: element.getInlineOpacity() };=0A=
  return new Effect.Parallel(=0A=
    [ new Effect.Move(element, {x: 0, y: 100, sync: true }), =0A=
      new Effect.Opacity(element, { sync: true, to: 0.0 }) ],=0A=
    Object.extend(=0A=
      { duration: 0.5,=0A=
        beforeSetup: function(effect) {=0A=
          effect.effects[0].element.makePositioned(); =0A=
        },=0A=
        afterFinishInternal: function(effect) {=0A=
          =
effect.effects[0].element.hide().undoPositioned().setStyle(oldStyle);=0A=
        } =0A=
      }, arguments[1] || {}));=0A=
}=0A=
=0A=
Effect.Shake =3D function(element) {=0A=
  element =3D $(element);=0A=
  var oldStyle =3D {=0A=
    top: element.getStyle('top'),=0A=
    left: element.getStyle('left') };=0A=
    return new Effect.Move(element, =0A=
      { x:  20, y: 0, duration: 0.05, afterFinishInternal: =
function(effect) {=0A=
    new Effect.Move(effect.element,=0A=
      { x: -40, y: 0, duration: 0.1,  afterFinishInternal: =
function(effect) {=0A=
    new Effect.Move(effect.element,=0A=
      { x:  40, y: 0, duration: 0.1,  afterFinishInternal: =
function(effect) {=0A=
    new Effect.Move(effect.element,=0A=
      { x: -40, y: 0, duration: 0.1,  afterFinishInternal: =
function(effect) {=0A=
    new Effect.Move(effect.element,=0A=
      { x:  40, y: 0, duration: 0.1,  afterFinishInternal: =
function(effect) {=0A=
    new Effect.Move(effect.element,=0A=
      { x: -20, y: 0, duration: 0.05, afterFinishInternal: =
function(effect) {=0A=
        effect.element.undoPositioned().setStyle(oldStyle);=0A=
  }}) }}) }}) }}) }}) }});=0A=
}=0A=
=0A=
Effect.SlideDown =3D function(element) {=0A=
  element =3D $(element).cleanWhitespace();=0A=
  // SlideDown need to have the content of the element wrapped in a =
container element with fixed height!=0A=
  var oldInnerBottom =3D element.down().getStyle('bottom');=0A=
  var elementDimensions =3D element.getDimensions();=0A=
  return new Effect.Scale(element, 100, Object.extend({ =0A=
    scaleContent: false, =0A=
    scaleX: false, =0A=
    scaleFrom: window.opera ? 0 : 1,=0A=
    scaleMode: {originalHeight: elementDimensions.height, originalWidth: =
elementDimensions.width},=0A=
    restoreAfterFinish: true,=0A=
    afterSetup: function(effect) {=0A=
      effect.element.makePositioned();=0A=
      effect.element.down().makePositioned();=0A=
      if(window.opera) effect.element.setStyle({top: ''});=0A=
      effect.element.makeClipping().setStyle({height: '0px'}).show(); =0A=
    },=0A=
    afterUpdateInternal: function(effect) {=0A=
      effect.element.down().setStyle({bottom:=0A=
        (effect.dims[0] - effect.element.clientHeight) + 'px' }); =0A=
    },=0A=
    afterFinishInternal: function(effect) {=0A=
      effect.element.undoClipping().undoPositioned();=0A=
      effect.element.down().undoPositioned().setStyle({bottom: =
oldInnerBottom}); }=0A=
    }, arguments[1] || {})=0A=
  );=0A=
}=0A=
=0A=
Effect.SlideUp =3D function(element) {=0A=
  element =3D $(element).cleanWhitespace();=0A=
  var oldInnerBottom =3D element.down().getStyle('bottom');=0A=
  return new Effect.Scale(element, window.opera ? 0 : 1,=0A=
   Object.extend({ scaleContent: false, =0A=
    scaleX: false, =0A=
    scaleMode: 'box',=0A=
    scaleFrom: 100,=0A=
    restoreAfterFinish: true,=0A=
    beforeStartInternal: function(effect) {=0A=
      effect.element.makePositioned();=0A=
      effect.element.down().makePositioned();=0A=
      if(window.opera) effect.element.setStyle({top: ''});=0A=
      effect.element.makeClipping().show();=0A=
    },  =0A=
    afterUpdateInternal: function(effect) {=0A=
      effect.element.down().setStyle({bottom:=0A=
        (effect.dims[0] - effect.element.clientHeight) + 'px' });=0A=
    },=0A=
    afterFinishInternal: function(effect) {=0A=
      =
effect.element.hide().undoClipping().undoPositioned().setStyle({bottom: =
oldInnerBottom});=0A=
      effect.element.down().undoPositioned();=0A=
    }=0A=
   }, arguments[1] || {})=0A=
  );=0A=
}=0A=
=0A=
// Bug in opera makes the TD containing this element expand for a =
instance after finish =0A=
Effect.Squish =3D function(element) {=0A=
  return new Effect.Scale(element, window.opera ? 1 : 0, { =0A=
    restoreAfterFinish: true,=0A=
    beforeSetup: function(effect) {=0A=
      effect.element.makeClipping(); =0A=
    },  =0A=
    afterFinishInternal: function(effect) {=0A=
      effect.element.hide().undoClipping(); =0A=
    }=0A=
  });=0A=
}=0A=
=0A=
Effect.Grow =3D function(element) {=0A=
  element =3D $(element);=0A=
  var options =3D Object.extend({=0A=
    direction: 'center',=0A=
    moveTransition: Effect.Transitions.sinoidal,=0A=
    scaleTransition: Effect.Transitions.sinoidal,=0A=
    opacityTransition: Effect.Transitions.full=0A=
  }, arguments[1] || {});=0A=
  var oldStyle =3D {=0A=
    top: element.style.top,=0A=
    left: element.style.left,=0A=
    height: element.style.height,=0A=
    width: element.style.width,=0A=
    opacity: element.getInlineOpacity() };=0A=
=0A=
  var dims =3D element.getDimensions();    =0A=
  var initialMoveX, initialMoveY;=0A=
  var moveX, moveY;=0A=
  =0A=
  switch (options.direction) {=0A=
    case 'top-left':=0A=
      initialMoveX =3D initialMoveY =3D moveX =3D moveY =3D 0; =0A=
      break;=0A=
    case 'top-right':=0A=
      initialMoveX =3D dims.width;=0A=
      initialMoveY =3D moveY =3D 0;=0A=
      moveX =3D -dims.width;=0A=
      break;=0A=
    case 'bottom-left':=0A=
      initialMoveX =3D moveX =3D 0;=0A=
      initialMoveY =3D dims.height;=0A=
      moveY =3D -dims.height;=0A=
      break;=0A=
    case 'bottom-right':=0A=
      initialMoveX =3D dims.width;=0A=
      initialMoveY =3D dims.height;=0A=
      moveX =3D -dims.width;=0A=
      moveY =3D -dims.height;=0A=
      break;=0A=
    case 'center':=0A=
      initialMoveX =3D dims.width / 2;=0A=
      initialMoveY =3D dims.height / 2;=0A=
      moveX =3D -dims.width / 2;=0A=
      moveY =3D -dims.height / 2;=0A=
      break;=0A=
  }=0A=
  =0A=
  return new Effect.Move(element, {=0A=
    x: initialMoveX,=0A=
    y: initialMoveY,=0A=
    duration: 0.01, =0A=
    beforeSetup: function(effect) {=0A=
      effect.element.hide().makeClipping().makePositioned();=0A=
    },=0A=
    afterFinishInternal: function(effect) {=0A=
      new Effect.Parallel(=0A=
        [ new Effect.Opacity(effect.element, { sync: true, to: 1.0, =
from: 0.0, transition: options.opacityTransition }),=0A=
          new Effect.Move(effect.element, { x: moveX, y: moveY, sync: =
true, transition: options.moveTransition }),=0A=
          new Effect.Scale(effect.element, 100, {=0A=
            scaleMode: { originalHeight: dims.height, originalWidth: =
dims.width }, =0A=
            sync: true, scaleFrom: window.opera ? 1 : 0, transition: =
options.scaleTransition, restoreAfterFinish: true})=0A=
        ], Object.extend({=0A=
             beforeSetup: function(effect) {=0A=
               effect.effects[0].element.setStyle({height: =
'0px'}).show(); =0A=
             },=0A=
             afterFinishInternal: function(effect) {=0A=
               =
effect.effects[0].element.undoClipping().undoPositioned().setStyle(oldSty=
le); =0A=
             }=0A=
           }, options)=0A=
      )=0A=
    }=0A=
  });=0A=
}=0A=
=0A=
Effect.Shrink =3D function(element) {=0A=
  element =3D $(element);=0A=
  var options =3D Object.extend({=0A=
    direction: 'center',=0A=
    moveTransition: Effect.Transitions.sinoidal,=0A=
    scaleTransition: Effect.Transitions.sinoidal,=0A=
    opacityTransition: Effect.Transitions.none=0A=
  }, arguments[1] || {});=0A=
  var oldStyle =3D {=0A=
    top: element.style.top,=0A=
    left: element.style.left,=0A=
    height: element.style.height,=0A=
    width: element.style.width,=0A=
    opacity: element.getInlineOpacity() };=0A=
=0A=
  var dims =3D element.getDimensions();=0A=
  var moveX, moveY;=0A=
  =0A=
  switch (options.direction) {=0A=
    case 'top-left':=0A=
      moveX =3D moveY =3D 0;=0A=
      break;=0A=
    case 'top-right':=0A=
      moveX =3D dims.width;=0A=
      moveY =3D 0;=0A=
      break;=0A=
    case 'bottom-left':=0A=
      moveX =3D 0;=0A=
      moveY =3D dims.height;=0A=
      break;=0A=
    case 'bottom-right':=0A=
      moveX =3D dims.width;=0A=
      moveY =3D dims.height;=0A=
      break;=0A=
    case 'center':  =0A=
      moveX =3D dims.width / 2;=0A=
      moveY =3D dims.height / 2;=0A=
      break;=0A=
  }=0A=
  =0A=
  return new Effect.Parallel(=0A=
    [ new Effect.Opacity(element, { sync: true, to: 0.0, from: 1.0, =
transition: options.opacityTransition }),=0A=
      new Effect.Scale(element, window.opera ? 1 : 0, { sync: true, =
transition: options.scaleTransition, restoreAfterFinish: true}),=0A=
      new Effect.Move(element, { x: moveX, y: moveY, sync: true, =
transition: options.moveTransition })=0A=
    ], Object.extend({            =0A=
         beforeStartInternal: function(effect) {=0A=
           effect.effects[0].element.makePositioned().makeClipping(); =0A=
         },=0A=
         afterFinishInternal: function(effect) {=0A=
           =
effect.effects[0].element.hide().undoClipping().undoPositioned().setStyle=
(oldStyle); }=0A=
       }, options)=0A=
  );=0A=
}=0A=
=0A=
Effect.Pulsate =3D function(element) {=0A=
  element =3D $(element);=0A=
  var options    =3D arguments[1] || {};=0A=
  var oldOpacity =3D element.getInlineOpacity();=0A=
  var transition =3D options.transition || Effect.Transitions.sinoidal;=0A=
  var reverser   =3D function(pos){ return =
transition(1-Effect.Transitions.pulse(pos, options.pulses)) };=0A=
  reverser.bind(transition);=0A=
  return new Effect.Opacity(element, =0A=
    Object.extend(Object.extend({  duration: 2.0, from: 0,=0A=
      afterFinishInternal: function(effect) { =
effect.element.setStyle({opacity: oldOpacity}); }=0A=
    }, options), {transition: reverser}));=0A=
}=0A=
=0A=
Effect.Fold =3D function(element) {=0A=
  element =3D $(element);=0A=
  var oldStyle =3D {=0A=
    top: element.style.top,=0A=
    left: element.style.left,=0A=
    width: element.style.width,=0A=
    height: element.style.height };=0A=
  element.makeClipping();=0A=
  return new Effect.Scale(element, 5, Object.extend({   =0A=
    scaleContent: false,=0A=
    scaleX: false,=0A=
    afterFinishInternal: function(effect) {=0A=
    new Effect.Scale(element, 1, { =0A=
      scaleContent: false, =0A=
      scaleY: false,=0A=
      afterFinishInternal: function(effect) {=0A=
        effect.element.hide().undoClipping().setStyle(oldStyle);=0A=
      } });=0A=
  }}, arguments[1] || {}));=0A=
};=0A=
=0A=
Effect.Morph =3D Class.create();=0A=
Object.extend(Object.extend(Effect.Morph.prototype, =
Effect.Base.prototype), {=0A=
  initialize: function(element) {=0A=
    this.element =3D $(element);=0A=
    if(!this.element) throw(Effect._elementDoesNotExistError);=0A=
    var options =3D Object.extend({=0A=
      style: ''=0A=
    }, arguments[1] || {});=0A=
    this.start(options);=0A=
  },=0A=
  setup: function(){=0A=
    function parseColor(color){=0A=
      if(!color || ['rgba(0, 0, 0, 0)','transparent'].include(color)) =
color =3D '#ffffff';=0A=
      color =3D color.parseColor();=0A=
      return $R(0,2).map(function(i){=0A=
        return parseInt( color.slice(i*2+1,i*2+3), 16 ) =0A=
      });=0A=
    }=0A=
    this.transforms =3D =
this.options.style.parseStyle().map(function(property){=0A=
      var originalValue =3D this.element.getStyle(property[0]);=0A=
      return $H({ =0A=
        style: property[0], =0A=
        originalValue: property[1].unit=3D=3D'color' ? =0A=
          parseColor(originalValue) : parseFloat(originalValue || 0), =0A=
        targetValue: property[1].unit=3D=3D'color' ? =0A=
          parseColor(property[1].value) : property[1].value,=0A=
        unit: property[1].unit=0A=
      });=0A=
    }.bind(this)).reject(function(transform){=0A=
      return (=0A=
        (transform.originalValue =3D=3D transform.targetValue) ||=0A=
        (=0A=
          transform.unit !=3D 'color' &&=0A=
          (isNaN(transform.originalValue) || =
isNaN(transform.targetValue))=0A=
        )=0A=
      )=0A=
    });=0A=
  },=0A=
  update: function(position) {=0A=
    var style =3D $H(), value =3D null;=0A=
    this.transforms.each(function(transform){=0A=
      value =3D transform.unit=3D=3D'color' ?=0A=
        $R(0,2).inject('#',function(m,v,i){=0A=
          return m+(Math.round(transform.originalValue[i]+=0A=
            (transform.targetValue[i] - =
transform.originalValue[i])*position)).toColorPart() }) : =0A=
        transform.originalValue + Math.round(=0A=
          ((transform.targetValue - transform.originalValue) * position) =
* 1000)/1000 + transform.unit;=0A=
      style[transform.style] =3D value;=0A=
    });=0A=
    this.element.setStyle(style);=0A=
  }=0A=
});=0A=
=0A=
Effect.Transform =3D Class.create();=0A=
Object.extend(Effect.Transform.prototype, {=0A=
  initialize: function(tracks){=0A=
    this.tracks  =3D [];=0A=
    this.options =3D arguments[1] || {};=0A=
    this.addTracks(tracks);=0A=
  },=0A=
  addTracks: function(tracks){=0A=
    tracks.each(function(track){=0A=
      var data =3D $H(track).values().first();=0A=
      this.tracks.push($H({=0A=
        ids:     $H(track).keys().first(),=0A=
        effect:  Effect.Morph,=0A=
        options: { style: data }=0A=
      }));=0A=
    }.bind(this));=0A=
    return this;=0A=
  },=0A=
  play: function(){=0A=
    return new Effect.Parallel(=0A=
      this.tracks.map(function(track){=0A=
        var elements =3D [$(track.ids) || $$(track.ids)].flatten();=0A=
        return elements.map(function(e){ return new track.effect(e, =
Object.extend({ sync:true }, track.options)) });=0A=
      }).flatten(),=0A=
      this.options=0A=
    );=0A=
  }=0A=
});=0A=
=0A=
Element.CSS_PROPERTIES =3D ['azimuth', 'backgroundAttachment', =
'backgroundColor', 'backgroundImage', =0A=
  'backgroundPosition', 'backgroundRepeat', 'borderBottomColor', =
'borderBottomStyle', =0A=
  'borderBottomWidth', 'borderCollapse', 'borderLeftColor', =
'borderLeftStyle', 'borderLeftWidth',=0A=
  'borderRightColor', 'borderRightStyle', 'borderRightWidth', =
'borderSpacing', 'borderTopColor',=0A=
  'borderTopStyle', 'borderTopWidth', 'bottom', 'captionSide', 'clear', =
'clip', 'color', 'content',=0A=
  'counterIncrement', 'counterReset', 'cssFloat', 'cueAfter', =
'cueBefore', 'cursor', 'direction',=0A=
  'display', 'elevation', 'emptyCells', 'fontFamily', 'fontSize', =
'fontSizeAdjust', 'fontStretch',=0A=
  'fontStyle', 'fontVariant', 'fontWeight', 'height', 'left', =
'letterSpacing', 'lineHeight',=0A=
  'listStyleImage', 'listStylePosition', 'listStyleType', =
'marginBottom', 'marginLeft', 'marginRight',=0A=
  'marginTop', 'markerOffset', 'marks', 'maxHeight', 'maxWidth', =
'minHeight', 'minWidth', 'opacity',=0A=
  'orphans', 'outlineColor', 'outlineOffset', 'outlineStyle', =
'outlineWidth', 'overflowX', 'overflowY',=0A=
  'paddingBottom', 'paddingLeft', 'paddingRight', 'paddingTop', 'page', =
'pageBreakAfter', 'pageBreakBefore',=0A=
  'pageBreakInside', 'pauseAfter', 'pauseBefore', 'pitch', 'pitchRange', =
'position', 'quotes',=0A=
  'richness', 'right', 'size', 'speakHeader', 'speakNumeral', =
'speakPunctuation', 'speechRate', 'stress',=0A=
  'tableLayout', 'textAlign', 'textDecoration', 'textIndent', =
'textShadow', 'textTransform', 'top',=0A=
  'unicodeBidi', 'verticalAlign', 'visibility', 'voiceFamily', 'volume', =
'whiteSpace', 'widows',=0A=
  'width', 'wordSpacing', 'zIndex'];=0A=
  =0A=
Element.CSS_LENGTH =3D =
/^(([\+\-]?[0-9\.]+)(em|ex|px|in|cm|mm|pt|pc|\%))|0$/;=0A=
=0A=
String.prototype.parseStyle =3D function(){=0A=
  var element =3D Element.extend(document.createElement('div'));=0A=
  element.innerHTML =3D '<div style=3D"' + this + '"></div>';=0A=
  var style =3D element.down().style, styleRules =3D $H();=0A=
  =0A=
  Element.CSS_PROPERTIES.each(function(property){=0A=
   if(style[property]) styleRules[property] =3D style[property]; =0A=
  });=0A=
  =0A=
  var result =3D $H();=0A=
  =0A=
  styleRules.each(function(pair){=0A=
    var property =3D pair[0], value =3D pair[1], unit =3D null;=0A=
    =0A=
    if(value.parseColor('#zzzzzz') !=3D '#zzzzzz') {=0A=
      value =3D value.parseColor();=0A=
      unit  =3D 'color';=0A=
    } else if(Element.CSS_LENGTH.test(value)) =0A=
      var components =3D value.match(/^([\+\-]?[0-9\.]+)(.*)$/),=0A=
          value =3D parseFloat(components[1]), unit =3D =
(components.length =3D=3D 3) ? components[2] : null;=0A=
    =0A=
    result[property.underscore().dasherize()] =3D $H({ value:value, =
unit:unit });=0A=
  }.bind(this));=0A=
  =0A=
  return result;=0A=
};=0A=
=0A=
Element.morph =3D function(element, style) {=0A=
  new Effect.Morph(element, Object.extend({ style: style }, arguments[2] =
|| {}));=0A=
  return element;=0A=
};=0A=
=0A=
['setOpacity','getOpacity','getInlineOpacity','forceRerendering','setCont=
entZoom',=0A=
 'collectTextNodes','collectTextNodesIgnoreClass','morph'].each( =0A=
  function(f) { Element.Methods[f] =3D Element[f]; }=0A=
);=0A=
=0A=
Element.Methods.visualEffect =3D function(element, effect, options) {=0A=
  s =3D effect.gsub(/_/, '-').camelize();=0A=
  effect_class =3D s.charAt(0).toUpperCase() + s.substring(1);=0A=
  new Effect[effect_class](element, options);=0A=
  return $(element);=0A=
};=0A=
=0A=
Element.addMethods();
------=_NextPart_000_0013_01C867E3.D97C53A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.jackassworld.com/javascripts/dragdrop.js?1193090139

// Copyright (c) 2005, 2006 Thomas Fuchs (http://script.aculo.us, =
http://mir.aculo.us)=0A=
//           (c) 2005, 2006 Sammi Williams =
(http://www.oriontransfer.co.nz, sammi@oriontransfer.co.nz)=0A=
// =0A=
// script.aculo.us is freely distributable under the terms of an =
MIT-style license.=0A=
// For details, see the script.aculo.us web site: http://script.aculo.us/=0A=
=0A=
if(typeof Effect =3D=3D 'undefined')=0A=
  throw("dragdrop.js requires including script.aculo.us' effects.js =
library");=0A=
=0A=
var Droppables =3D {=0A=
  drops: [],=0A=
=0A=
  remove: function(element) {=0A=
    this.drops =3D this.drops.reject(function(d) { return =
d.element=3D=3D$(element) });=0A=
  },=0A=
=0A=
  add: function(element) {=0A=
    element =3D $(element);=0A=
    var options =3D Object.extend({=0A=
      greedy:     true,=0A=
      hoverclass: null,=0A=
      tree:       false=0A=
    }, arguments[1] || {});=0A=
=0A=
    // cache containers=0A=
    if(options.containment) {=0A=
      options._containers =3D [];=0A=
      var containment =3D options.containment;=0A=
      if((typeof containment =3D=3D 'object') && =0A=
        (containment.constructor =3D=3D Array)) {=0A=
        containment.each( function(c) { options._containers.push($(c)) =
});=0A=
      } else {=0A=
        options._containers.push($(containment));=0A=
      }=0A=
    }=0A=
    =0A=
    if(options.accept) options.accept =3D [options.accept].flatten();=0A=
=0A=
    Element.makePositioned(element); // fix IE=0A=
    options.element =3D element;=0A=
=0A=
    this.drops.push(options);=0A=
  },=0A=
  =0A=
  findDeepestChild: function(drops) {=0A=
    deepest =3D drops[0];=0A=
      =0A=
    for (i =3D 1; i < drops.length; ++i)=0A=
      if (Element.isParent(drops[i].element, deepest.element))=0A=
        deepest =3D drops[i];=0A=
    =0A=
    return deepest;=0A=
  },=0A=
=0A=
  isContained: function(element, drop) {=0A=
    var containmentNode;=0A=
    if(drop.tree) {=0A=
      containmentNode =3D element.treeNode; =0A=
    } else {=0A=
      containmentNode =3D element.parentNode;=0A=
    }=0A=
    return drop._containers.detect(function(c) { return containmentNode =
=3D=3D c });=0A=
  },=0A=
  =0A=
  isAffected: function(point, element, drop) {=0A=
    return (=0A=
      (drop.element!=3Delement) &&=0A=
      ((!drop._containers) ||=0A=
        this.isContained(element, drop)) &&=0A=
      ((!drop.accept) ||=0A=
        (Element.classNames(element).detect( =0A=
          function(v) { return drop.accept.include(v) } ) )) &&=0A=
      Position.within(drop.element, point[0], point[1]) );=0A=
  },=0A=
=0A=
  deactivate: function(drop) {=0A=
    if(drop.hoverclass)=0A=
      Element.removeClassName(drop.element, drop.hoverclass);=0A=
    this.last_active =3D null;=0A=
  },=0A=
=0A=
  activate: function(drop) {=0A=
    if(drop.hoverclass)=0A=
      Element.addClassName(drop.element, drop.hoverclass);=0A=
    this.last_active =3D drop;=0A=
  },=0A=
=0A=
  show: function(point, element) {=0A=
    if(!this.drops.length) return;=0A=
    var affected =3D [];=0A=
    =0A=
    if(this.last_active) this.deactivate(this.last_active);=0A=
    this.drops.each( function(drop) {=0A=
      if(Droppables.isAffected(point, element, drop))=0A=
        affected.push(drop);=0A=
    });=0A=
        =0A=
    if(affected.length>0) {=0A=
      drop =3D Droppables.findDeepestChild(affected);=0A=
      Position.within(drop.element, point[0], point[1]);=0A=
      if(drop.onHover)=0A=
        drop.onHover(element, drop.element, =
Position.overlap(drop.overlap, drop.element));=0A=
      =0A=
      Droppables.activate(drop);=0A=
    }=0A=
  },=0A=
=0A=
  fire: function(event, element) {=0A=
    if(!this.last_active) return;=0A=
    Position.prepare();=0A=
=0A=
    if (this.isAffected([Event.pointerX(event), Event.pointerY(event)], =
element, this.last_active))=0A=
      if (this.last_active.onDrop) =0A=
        this.last_active.onDrop(element, this.last_active.element, =
event);=0A=
  },=0A=
=0A=
  reset: function() {=0A=
    if(this.last_active)=0A=
      this.deactivate(this.last_active);=0A=
  }=0A=
}=0A=
=0A=
var Draggables =3D {=0A=
  drags: [],=0A=
  observers: [],=0A=
  =0A=
  register: function(draggable) {=0A=
    if(this.drags.length =3D=3D 0) {=0A=
      this.eventMouseUp   =3D this.endDrag.bindAsEventListener(this);=0A=
      this.eventMouseMove =3D this.updateDrag.bindAsEventListener(this);=0A=
      this.eventKeypress  =3D this.keyPress.bindAsEventListener(this);=0A=
      =0A=
      Event.observe(document, "mouseup", this.eventMouseUp);=0A=
      Event.observe(document, "mousemove", this.eventMouseMove);=0A=
      Event.observe(document, "keypress", this.eventKeypress);=0A=
    }=0A=
    this.drags.push(draggable);=0A=
  },=0A=
  =0A=
  unregister: function(draggable) {=0A=
    this.drags =3D this.drags.reject(function(d) { return =
d=3D=3Ddraggable });=0A=
    if(this.drags.length =3D=3D 0) {=0A=
      Event.stopObserving(document, "mouseup", this.eventMouseUp);=0A=
      Event.stopObserving(document, "mousemove", this.eventMouseMove);=0A=
      Event.stopObserving(document, "keypress", this.eventKeypress);=0A=
    }=0A=
  },=0A=
  =0A=
  activate: function(draggable) {=0A=
    if(draggable.options.delay) { =0A=
      this._timeout =3D setTimeout(function() { =0A=
        Draggables._timeout =3D null; =0A=
        window.focus(); =0A=
        Draggables.activeDraggable =3D draggable; =0A=
      }.bind(this), draggable.options.delay); =0A=
    } else {=0A=
      window.focus(); // allows keypress events if window isn't =
currently focused, fails for Safari=0A=
      this.activeDraggable =3D draggable;=0A=
    }=0A=
  },=0A=
  =0A=
  deactivate: function() {=0A=
    this.activeDraggable =3D null;=0A=
  },=0A=
  =0A=
  updateDrag: function(event) {=0A=
    if(!this.activeDraggable) return;=0A=
    var pointer =3D [Event.pointerX(event), Event.pointerY(event)];=0A=
    // Mozilla-based browsers fire successive mousemove events with=0A=
    // the same coordinates, prevent needless redrawing (moz bug?)=0A=
    if(this._lastPointer && (this._lastPointer.inspect() =3D=3D =
pointer.inspect())) return;=0A=
    this._lastPointer =3D pointer;=0A=
    =0A=
    this.activeDraggable.updateDrag(event, pointer);=0A=
  },=0A=
  =0A=
  endDrag: function(event) {=0A=
    if(this._timeout) { =0A=
      clearTimeout(this._timeout); =0A=
      this._timeout =3D null; =0A=
    }=0A=
    if(!this.activeDraggable) return;=0A=
    this._lastPointer =3D null;=0A=
    this.activeDraggable.endDrag(event);=0A=
    this.activeDraggable =3D null;=0A=
  },=0A=
  =0A=
  keyPress: function(event) {=0A=
    if(this.activeDraggable)=0A=
      this.activeDraggable.keyPress(event);=0A=
  },=0A=
  =0A=
  addObserver: function(observer) {=0A=
    this.observers.push(observer);=0A=
    this._cacheObserverCallbacks();=0A=
  },=0A=
  =0A=
  removeObserver: function(element) {  // element instead of observer =
fixes mem leaks=0A=
    this.observers =3D this.observers.reject( function(o) { return =
o.element=3D=3Delement });=0A=
    this._cacheObserverCallbacks();=0A=
  },=0A=
  =0A=
  notify: function(eventName, draggable, event) {  // 'onStart', =
'onEnd', 'onDrag'=0A=
    if(this[eventName+'Count'] > 0)=0A=
      this.observers.each( function(o) {=0A=
        if(o[eventName]) o[eventName](eventName, draggable, event);=0A=
      });=0A=
    if(draggable.options[eventName]) =
draggable.options[eventName](draggable, event);=0A=
  },=0A=
  =0A=
  _cacheObserverCallbacks: function() {=0A=
    ['onStart','onEnd','onDrag'].each( function(eventName) {=0A=
      Draggables[eventName+'Count'] =3D Draggables.observers.select(=0A=
        function(o) { return o[eventName]; }=0A=
      ).length;=0A=
    });=0A=
  }=0A=
}=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
var Draggable =3D Class.create();=0A=
Draggable._dragging    =3D {};=0A=
=0A=
Draggable.prototype =3D {=0A=
  initialize: function(element) {=0A=
    var defaults =3D {=0A=
      handle: false,=0A=
      reverteffect: function(element, top_offset, left_offset) {=0A=
        var dur =3D =
Math.sqrt(Math.abs(top_offset^2)+Math.abs(left_offset^2))*0.02;=0A=
        new Effect.Move(element, { x: -left_offset, y: -top_offset, =
duration: dur,=0A=
          queue: {scope:'_draggable', position:'end'}=0A=
        });=0A=
      },=0A=
      endeffect: function(element) {=0A=
        var toOpacity =3D typeof element._opacity =3D=3D 'number' ? =
element._opacity : 1.0;=0A=
        new Effect.Opacity(element, {duration:0.2, from:0.7, =
to:toOpacity, =0A=
          queue: {scope:'_draggable', position:'end'},=0A=
          afterFinish: function(){ =0A=
            Draggable._dragging[element] =3D false =0A=
          }=0A=
        }); =0A=
      },=0A=
      zindex: 1000,=0A=
      revert: false,=0A=
      scroll: false,=0A=
      scrollSensitivity: 20,=0A=
      scrollSpeed: 15,=0A=
      snap: false,  // false, or xy or [x,y] or function(x,y){ return =
[x,y] }=0A=
      delay: 0=0A=
    };=0A=
    =0A=
    if(!arguments[1] || typeof arguments[1].endeffect =3D=3D 'undefined')=0A=
      Object.extend(defaults, {=0A=
        starteffect: function(element) {=0A=
          element._opacity =3D Element.getOpacity(element);=0A=
          Draggable._dragging[element] =3D true;=0A=
          new Effect.Opacity(element, {duration:0.2, =
from:element._opacity, to:0.7}); =0A=
        }=0A=
      });=0A=
    =0A=
    var options =3D Object.extend(defaults, arguments[1] || {});=0A=
=0A=
    this.element =3D $(element);=0A=
    =0A=
    if(options.handle && (typeof options.handle =3D=3D 'string'))=0A=
      this.handle =3D this.element.down('.'+options.handle, 0);=0A=
    =0A=
    if(!this.handle) this.handle =3D $(options.handle);=0A=
    if(!this.handle) this.handle =3D this.element;=0A=
    =0A=
    if(options.scroll && !options.scroll.scrollTo && =
!options.scroll.outerHTML) {=0A=
      options.scroll =3D $(options.scroll);=0A=
      this._isScrollChild =3D Element.childOf(this.element, =
options.scroll);=0A=
    }=0A=
=0A=
    Element.makePositioned(this.element); // fix IE    =0A=
=0A=
    this.delta    =3D this.currentDelta();=0A=
    this.options  =3D options;=0A=
    this.dragging =3D false;   =0A=
=0A=
    this.eventMouseDown =3D this.initDrag.bindAsEventListener(this);=0A=
    Event.observe(this.handle, "mousedown", this.eventMouseDown);=0A=
    =0A=
    Draggables.register(this);=0A=
  },=0A=
  =0A=
  destroy: function() {=0A=
    Event.stopObserving(this.handle, "mousedown", this.eventMouseDown);=0A=
    Draggables.unregister(this);=0A=
  },=0A=
  =0A=
  currentDelta: function() {=0A=
    return([=0A=
      parseInt(Element.getStyle(this.element,'left') || '0'),=0A=
      parseInt(Element.getStyle(this.element,'top') || '0')]);=0A=
  },=0A=
  =0A=
  initDrag: function(event) {=0A=
    if(typeof Draggable._dragging[this.element] !=3D 'undefined' &&=0A=
      Draggable._dragging[this.element]) return;=0A=
    if(Event.isLeftClick(event)) {    =0A=
      // abort on form elements, fixes a Firefox issue=0A=
      var src =3D Event.element(event);=0A=
      if(src.tagName && (=0A=
        src.tagName=3D=3D'INPUT' ||=0A=
        src.tagName=3D=3D'SELECT' ||=0A=
        src.tagName=3D=3D'OPTION' ||=0A=
        src.tagName=3D=3D'BUTTON' ||=0A=
        src.tagName=3D=3D'TEXTAREA')) return;=0A=
        =0A=
      var pointer =3D [Event.pointerX(event), Event.pointerY(event)];=0A=
      var pos     =3D Position.cumulativeOffset(this.element);=0A=
      this.offset =3D [0,1].map( function(i) { return (pointer[i] - =
pos[i]) });=0A=
      =0A=
      Draggables.activate(this);=0A=
      Event.stop(event);=0A=
    }=0A=
  },=0A=
  =0A=
  startDrag: function(event) {=0A=
    this.dragging =3D true;=0A=
    =0A=
    if(this.options.zindex) {=0A=
      this.originalZ =3D =
parseInt(Element.getStyle(this.element,'z-index') || 0);=0A=
      this.element.style.zIndex =3D this.options.zindex;=0A=
    }=0A=
    =0A=
    if(this.options.ghosting) {=0A=
      this._clone =3D this.element.cloneNode(true);=0A=
      Position.absolutize(this.element);=0A=
      this.element.parentNode.insertBefore(this._clone, this.element);=0A=
    }=0A=
    =0A=
    if(this.options.scroll) {=0A=
      if (this.options.scroll =3D=3D window) {=0A=
        var where =3D this._getWindowScroll(this.options.scroll);=0A=
        this.originalScrollLeft =3D where.left;=0A=
        this.originalScrollTop =3D where.top;=0A=
      } else {=0A=
        this.originalScrollLeft =3D this.options.scroll.scrollLeft;=0A=
        this.originalScrollTop =3D this.options.scroll.scrollTop;=0A=
      }=0A=
    }=0A=
    =0A=
    Draggables.notify('onStart', this, event);=0A=
        =0A=
    if(this.options.starteffect) this.options.starteffect(this.element);=0A=
  },=0A=
  =0A=
  updateDrag: function(event, pointer) {=0A=
    if(!this.dragging) this.startDrag(event);=0A=
    Position.prepare();=0A=
    Droppables.show(pointer, this.element);=0A=
    Draggables.notify('onDrag', this, event);=0A=
    =0A=
    this.draw(pointer);=0A=
    if(this.options.change) this.options.change(this);=0A=
    =0A=
    if(this.options.scroll) {=0A=
      this.stopScrolling();=0A=
      =0A=
      var p;=0A=
      if (this.options.scroll =3D=3D window) {=0A=
        with(this._getWindowScroll(this.options.scroll)) { p =3D [ left, =
top, left+width, top+height ]; }=0A=
      } else {=0A=
        p =3D Position.page(this.options.scroll);=0A=
        p[0] +=3D this.options.scroll.scrollLeft + Position.deltaX;=0A=
        p[1] +=3D this.options.scroll.scrollTop + Position.deltaY;=0A=
        p.push(p[0]+this.options.scroll.offsetWidth);=0A=
        p.push(p[1]+this.options.scroll.offsetHeight);=0A=
      }=0A=
      var speed =3D [0,0];=0A=
      if(pointer[0] < (p[0]+this.options.scrollSensitivity)) speed[0] =
=3D pointer[0]-(p[0]+this.options.scrollSensitivity);=0A=
      if(pointer[1] < (p[1]+this.options.scrollSensitivity)) speed[1] =
=3D pointer[1]-(p[1]+this.options.scrollSensitivity);=0A=
      if(pointer[0] > (p[2]-this.options.scrollSensitivity)) speed[0] =
=3D pointer[0]-(p[2]-this.options.scrollSensitivity);=0A=
      if(pointer[1] > (p[3]-this.options.scrollSensitivity)) speed[1] =
=3D pointer[1]-(p[3]-this.options.scrollSensitivity);=0A=
      this.startScrolling(speed);=0A=
    }=0A=
    =0A=
    // fix AppleWebKit rendering=0A=
    if(navigator.appVersion.indexOf('AppleWebKit')>0) =
window.scrollBy(0,0);=0A=
    =0A=
    Event.stop(event);=0A=
  },=0A=
  =0A=
  finishDrag: function(event, success) {=0A=
    this.dragging =3D false;=0A=
=0A=
    if(this.options.ghosting) {=0A=
      Position.relativize(this.element);=0A=
      Element.remove(this._clone);=0A=
      this._clone =3D null;=0A=
    }=0A=
=0A=
    if(success) Droppables.fire(event, this.element);=0A=
    Draggables.notify('onEnd', this, event);=0A=
=0A=
    var revert =3D this.options.revert;=0A=
    if(revert && typeof revert =3D=3D 'function') revert =3D =
revert(this.element);=0A=
    =0A=
    var d =3D this.currentDelta();=0A=
    if(revert && this.options.reverteffect) {=0A=
      this.options.reverteffect(this.element, =0A=
        d[1]-this.delta[1], d[0]-this.delta[0]);=0A=
    } else {=0A=
      this.delta =3D d;=0A=
    }=0A=
=0A=
    if(this.options.zindex)=0A=
      this.element.style.zIndex =3D this.originalZ;=0A=
=0A=
    if(this.options.endeffect) =0A=
      this.options.endeffect(this.element);=0A=
      =0A=
    Draggables.deactivate(this);=0A=
    Droppables.reset();=0A=
  },=0A=
  =0A=
  keyPress: function(event) {=0A=
    if(event.keyCode!=3DEvent.KEY_ESC) return;=0A=
    this.finishDrag(event, false);=0A=
    Event.stop(event);=0A=
  },=0A=
  =0A=
  endDrag: function(event) {=0A=
    if(!this.dragging) return;=0A=
    this.stopScrolling();=0A=
    this.finishDrag(event, true);=0A=
    Event.stop(event);=0A=
  },=0A=
  =0A=
  draw: function(point) {=0A=
    var pos =3D Position.cumulativeOffset(this.element);=0A=
    if(this.options.ghosting) {=0A=
      var r   =3D Position.realOffset(this.element);=0A=
      pos[0] +=3D r[0] - Position.deltaX; pos[1] +=3D r[1] - =
Position.deltaY;=0A=
    }=0A=
    =0A=
    var d =3D this.currentDelta();=0A=
    pos[0] -=3D d[0]; pos[1] -=3D d[1];=0A=
    =0A=
    if(this.options.scroll && (this.options.scroll !=3D window && =
this._isScrollChild)) {=0A=
      pos[0] -=3D this.options.scroll.scrollLeft-this.originalScrollLeft;=0A=
      pos[1] -=3D this.options.scroll.scrollTop-this.originalScrollTop;=0A=
    }=0A=
    =0A=
    var p =3D [0,1].map(function(i){ =0A=
      return (point[i]-pos[i]-this.offset[i]) =0A=
    }.bind(this));=0A=
    =0A=
    if(this.options.snap) {=0A=
      if(typeof this.options.snap =3D=3D 'function') {=0A=
        p =3D this.options.snap(p[0],p[1],this);=0A=
      } else {=0A=
      if(this.options.snap instanceof Array) {=0A=
        p =3D p.map( function(v, i) {=0A=
          return Math.round(v/this.options.snap[i])*this.options.snap[i] =
}.bind(this))=0A=
      } else {=0A=
        p =3D p.map( function(v) {=0A=
          return Math.round(v/this.options.snap)*this.options.snap =
}.bind(this))=0A=
      }=0A=
    }}=0A=
    =0A=
    var style =3D this.element.style;=0A=
    if((!this.options.constraint) || =
(this.options.constraint=3D=3D'horizontal'))=0A=
      style.left =3D p[0] + "px";=0A=
    if((!this.options.constraint) || =
(this.options.constraint=3D=3D'vertical'))=0A=
      style.top  =3D p[1] + "px";=0A=
    =0A=
    if(style.visibility=3D=3D"hidden") style.visibility =3D ""; // fix =
gecko rendering=0A=
  },=0A=
  =0A=
  stopScrolling: function() {=0A=
    if(this.scrollInterval) {=0A=
      clearInterval(this.scrollInterval);=0A=
      this.scrollInterval =3D null;=0A=
      Draggables._lastScrollPointer =3D null;=0A=
    }=0A=
  },=0A=
  =0A=
  startScrolling: function(speed) {=0A=
    if(!(speed[0] || speed[1])) return;=0A=
    this.scrollSpeed =3D =
[speed[0]*this.options.scrollSpeed,speed[1]*this.options.scrollSpeed];=0A=
    this.lastScrolled =3D new Date();=0A=
    this.scrollInterval =3D setInterval(this.scroll.bind(this), 10);=0A=
  },=0A=
  =0A=
  scroll: function() {=0A=
    var current =3D new Date();=0A=
    var delta =3D current - this.lastScrolled;=0A=
    this.lastScrolled =3D current;=0A=
    if(this.options.scroll =3D=3D window) {=0A=
      with (this._getWindowScroll(this.options.scroll)) {=0A=
        if (this.scrollSpeed[0] || this.scrollSpeed[1]) {=0A=
          var d =3D delta / 1000;=0A=
          this.options.scroll.scrollTo( left + d*this.scrollSpeed[0], =
top + d*this.scrollSpeed[1] );=0A=
        }=0A=
      }=0A=
    } else {=0A=
      this.options.scroll.scrollLeft +=3D this.scrollSpeed[0] * delta / =
1000;=0A=
      this.options.scroll.scrollTop  +=3D this.scrollSpeed[1] * delta / =
1000;=0A=
    }=0A=
    =0A=
    Position.prepare();=0A=
    Droppables.show(Draggables._lastPointer, this.element);=0A=
    Draggables.notify('onDrag', this);=0A=
    if (this._isScrollChild) {=0A=
      Draggables._lastScrollPointer =3D Draggables._lastScrollPointer || =
$A(Draggables._lastPointer);=0A=
      Draggables._lastScrollPointer[0] +=3D this.scrollSpeed[0] * delta =
/ 1000;=0A=
      Draggables._lastScrollPointer[1] +=3D this.scrollSpeed[1] * delta =
/ 1000;=0A=
      if (Draggables._lastScrollPointer[0] < 0)=0A=
        Draggables._lastScrollPointer[0] =3D 0;=0A=
      if (Draggables._lastScrollPointer[1] < 0)=0A=
        Draggables._lastScrollPointer[1] =3D 0;=0A=
      this.draw(Draggables._lastScrollPointer);=0A=
    }=0A=
    =0A=
    if(this.options.change) this.options.change(this);=0A=
  },=0A=
  =0A=
  _getWindowScroll: function(w) {=0A=
    var T, L, W, H;=0A=
    with (w.document) {=0A=
      if (w.document.documentElement && documentElement.scrollTop) {=0A=
        T =3D documentElement.scrollTop;=0A=
        L =3D documentElement.scrollLeft;=0A=
      } else if (w.document.body) {=0A=
        T =3D body.scrollTop;=0A=
        L =3D body.scrollLeft;=0A=
      }=0A=
      if (w.innerWidth) {=0A=
        W =3D w.innerWidth;=0A=
        H =3D w.innerHeight;=0A=
      } else if (w.document.documentElement && =
documentElement.clientWidth) {=0A=
        W =3D documentElement.clientWidth;=0A=
        H =3D documentElement.clientHeight;=0A=
      } else {=0A=
        W =3D body.offsetWidth;=0A=
        H =3D body.offsetHeight=0A=
      }=0A=
    }=0A=
    return { top: T, left: L, width: W, height: H };=0A=
  }=0A=
}=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
var SortableObserver =3D Class.create();=0A=
SortableObserver.prototype =3D {=0A=
  initialize: function(element, observer) {=0A=
    this.element   =3D $(element);=0A=
    this.observer  =3D observer;=0A=
    this.lastValue =3D Sortable.serialize(this.element);=0A=
  },=0A=
  =0A=
  onStart: function() {=0A=
    this.lastValue =3D Sortable.serialize(this.element);=0A=
  },=0A=
  =0A=
  onEnd: function() {=0A=
    Sortable.unmark();=0A=
    if(this.lastValue !=3D Sortable.serialize(this.element))=0A=
      this.observer(this.element)=0A=
  }=0A=
}=0A=
=0A=
var Sortable =3D {=0A=
  SERIALIZE_RULE: /^[^_\-](?:[A-Za-z0-9\-\_]*)[_](.*)$/,=0A=
  =0A=
  sortables: {},=0A=
  =0A=
  _findRootElement: function(element) {=0A=
    while (element.tagName !=3D "BODY") {  =0A=
      if(element.id && Sortable.sortables[element.id]) return element;=0A=
      element =3D element.parentNode;=0A=
    }=0A=
  },=0A=
=0A=
  options: function(element) {=0A=
    element =3D Sortable._findRootElement($(element));=0A=
    if(!element) return;=0A=
    return Sortable.sortables[element.id];=0A=
  },=0A=
  =0A=
  destroy: function(element){=0A=
    var s =3D Sortable.options(element);=0A=
    =0A=
    if(s) {=0A=
      Draggables.removeObserver(s.element);=0A=
      s.droppables.each(function(d){ Droppables.remove(d) });=0A=
      s.draggables.invoke('destroy');=0A=
      =0A=
      delete Sortable.sortables[s.element.id];=0A=
    }=0A=
  },=0A=
=0A=
  create: function(element) {=0A=
    element =3D $(element);=0A=
    var options =3D Object.extend({ =0A=
      element:     element,=0A=
      tag:         'li',       // assumes li children, override with =
tag: 'tagname'=0A=
      dropOnEmpty: false,=0A=
      tree:        false,=0A=
      treeTag:     'ul',=0A=
      overlap:     'vertical', // one of 'vertical', 'horizontal'=0A=
      constraint:  'vertical', // one of 'vertical', 'horizontal', false=0A=
      containment: element,    // also takes array of elements (or =
id's); or false=0A=
      handle:      false,      // or a CSS class=0A=
      only:        false,=0A=
      delay:       0,=0A=
      hoverclass:  null,=0A=
      ghosting:    false,=0A=
      scroll:      false,=0A=
      scrollSensitivity: 20,=0A=
      scrollSpeed: 15,=0A=
      format:      this.SERIALIZE_RULE,=0A=
      onChange:    Prototype.emptyFunction,=0A=
      onUpdate:    Prototype.emptyFunction=0A=
    }, arguments[1] || {});=0A=
=0A=
    // clear any old sortable with same element=0A=
    this.destroy(element);=0A=
=0A=
    // build options for the draggables=0A=
    var options_for_draggable =3D {=0A=
      revert:      true,=0A=
      scroll:      options.scroll,=0A=
      scrollSpeed: options.scrollSpeed,=0A=
      scrollSensitivity: options.scrollSensitivity,=0A=
      delay:       options.delay,=0A=
      ghosting:    options.ghosting,=0A=
      constraint:  options.constraint,=0A=
      handle:      options.handle };=0A=
=0A=
    if(options.starteffect)=0A=
      options_for_draggable.starteffect =3D options.starteffect;=0A=
=0A=
    if(options.reverteffect)=0A=
      options_for_draggable.reverteffect =3D options.reverteffect;=0A=
    else=0A=
      if(options.ghosting) options_for_draggable.reverteffect =3D =
function(element) {=0A=
        element.style.top  =3D 0;=0A=
        element.style.left =3D 0;=0A=
      };=0A=
=0A=
    if(options.endeffect)=0A=
      options_for_draggable.endeffect =3D options.endeffect;=0A=
=0A=
    if(options.zindex)=0A=
      options_for_draggable.zindex =3D options.zindex;=0A=
=0A=
    // build options for the droppables  =0A=
    var options_for_droppable =3D {=0A=
      overlap:     options.overlap,=0A=
      containment: options.containment,=0A=
      tree:        options.tree,=0A=
      hoverclass:  options.hoverclass,=0A=
      onHover:     Sortable.onHover=0A=
    }=0A=
    =0A=
    var options_for_tree =3D {=0A=
      onHover:      Sortable.onEmptyHover,=0A=
      overlap:      options.overlap,=0A=
      containment:  options.containment,=0A=
      hoverclass:   options.hoverclass=0A=
    }=0A=
=0A=
    // fix for gecko engine=0A=
    Element.cleanWhitespace(element); =0A=
=0A=
    options.draggables =3D [];=0A=
    options.droppables =3D [];=0A=
=0A=
    // drop on empty handling=0A=
    if(options.dropOnEmpty || options.tree) {=0A=
      Droppables.add(element, options_for_tree);=0A=
      options.droppables.push(element);=0A=
    }=0A=
=0A=
    (this.findElements(element, options) || []).each( function(e) {=0A=
      // handles are per-draggable=0A=
      var handle =3D options.handle ? =0A=
        $(e).down('.'+options.handle,0) : e;    =0A=
      options.draggables.push(=0A=
        new Draggable(e, Object.extend(options_for_draggable, { handle: =
handle })));=0A=
      Droppables.add(e, options_for_droppable);=0A=
      if(options.tree) e.treeNode =3D element;=0A=
      options.droppables.push(e);      =0A=
    });=0A=
    =0A=
    if(options.tree) {=0A=
      (Sortable.findTreeElements(element, options) || []).each( =
function(e) {=0A=
        Droppables.add(e, options_for_tree);=0A=
        e.treeNode =3D element;=0A=
        options.droppables.push(e);=0A=
      });=0A=
    }=0A=
=0A=
    // keep reference=0A=
    this.sortables[element.id] =3D options;=0A=
=0A=
    // for onupdate=0A=
    Draggables.addObserver(new SortableObserver(element, =
options.onUpdate));=0A=
=0A=
  },=0A=
=0A=
  // return all suitable-for-sortable elements in a guaranteed order=0A=
  findElements: function(element, options) {=0A=
    return Element.findChildren(=0A=
      element, options.only, options.tree ? true : false, options.tag);=0A=
  },=0A=
  =0A=
  findTreeElements: function(element, options) {=0A=
    return Element.findChildren(=0A=
      element, options.only, options.tree ? true : false, =
options.treeTag);=0A=
  },=0A=
=0A=
  onHover: function(element, dropon, overlap) {=0A=
    if(Element.isParent(dropon, element)) return;=0A=
=0A=
    if(overlap > .33 && overlap < .66 && Sortable.options(dropon).tree) {=0A=
      return;=0A=
    } else if(overlap>0.5) {=0A=
      Sortable.mark(dropon, 'before');=0A=
      if(dropon.previousSibling !=3D element) {=0A=
        var oldParentNode =3D element.parentNode;=0A=
        element.style.visibility =3D "hidden"; // fix gecko rendering=0A=
        dropon.parentNode.insertBefore(element, dropon);=0A=
        if(dropon.parentNode!=3DoldParentNode) =0A=
          Sortable.options(oldParentNode).onChange(element);=0A=
        Sortable.options(dropon.parentNode).onChange(element);=0A=
      }=0A=
    } else {=0A=
      Sortable.mark(dropon, 'after');=0A=
      var nextElement =3D dropon.nextSibling || null;=0A=
      if(nextElement !=3D element) {=0A=
        var oldParentNode =3D element.parentNode;=0A=
        element.style.visibility =3D "hidden"; // fix gecko rendering=0A=
        dropon.parentNode.insertBefore(element, nextElement);=0A=
        if(dropon.parentNode!=3DoldParentNode) =0A=
          Sortable.options(oldParentNode).onChange(element);=0A=
        Sortable.options(dropon.parentNode).onChange(element);=0A=
      }=0A=
    }=0A=
  },=0A=
  =0A=
  onEmptyHover: function(element, dropon, overlap) {=0A=
    var oldParentNode =3D element.parentNode;=0A=
    var droponOptions =3D Sortable.options(dropon);=0A=
        =0A=
    if(!Element.isParent(dropon, element)) {=0A=
      var index;=0A=
      =0A=
      var children =3D Sortable.findElements(dropon, {tag: =
droponOptions.tag, only: droponOptions.only});=0A=
      var child =3D null;=0A=
            =0A=
      if(children) {=0A=
        var offset =3D Element.offsetSize(dropon, droponOptions.overlap) =
* (1.0 - overlap);=0A=
        =0A=
        for (index =3D 0; index < children.length; index +=3D 1) {=0A=
          if (offset - Element.offsetSize (children[index], =
droponOptions.overlap) >=3D 0) {=0A=
            offset -=3D Element.offsetSize (children[index], =
droponOptions.overlap);=0A=
          } else if (offset - (Element.offsetSize (children[index], =
droponOptions.overlap) / 2) >=3D 0) {=0A=
            child =3D index + 1 < children.length ? children[index + 1] =
: null;=0A=
            break;=0A=
          } else {=0A=
            child =3D children[index];=0A=
            break;=0A=
          }=0A=
        }=0A=
      }=0A=
      =0A=
      dropon.insertBefore(element, child);=0A=
      =0A=
      Sortable.options(oldParentNode).onChange(element);=0A=
      droponOptions.onChange(element);=0A=
    }=0A=
  },=0A=
=0A=
  unmark: function() {=0A=
    if(Sortable._marker) Sortable._marker.hide();=0A=
  },=0A=
=0A=
  mark: function(dropon, position) {=0A=
    // mark on ghosting only=0A=
    var sortable =3D Sortable.options(dropon.parentNode);=0A=
    if(sortable && !sortable.ghosting) return; =0A=
=0A=
    if(!Sortable._marker) {=0A=
      Sortable._marker =3D =0A=
        ($('dropmarker') || =
Element.extend(document.createElement('DIV'))).=0A=
          =
hide().addClassName('dropmarker').setStyle({position:'absolute'});=0A=
      =
document.getElementsByTagName("body").item(0).appendChild(Sortable._marke=
r);=0A=
    }    =0A=
    var offsets =3D Position.cumulativeOffset(dropon);=0A=
    Sortable._marker.setStyle({left: offsets[0]+'px', top: offsets[1] + =
'px'});=0A=
    =0A=
    if(position=3D=3D'after')=0A=
      if(sortable.overlap =3D=3D 'horizontal') =0A=
        Sortable._marker.setStyle({left: (offsets[0]+dropon.clientWidth) =
+ 'px'});=0A=
      else=0A=
        Sortable._marker.setStyle({top: (offsets[1]+dropon.clientHeight) =
+ 'px'});=0A=
    =0A=
    Sortable._marker.show();=0A=
  },=0A=
  =0A=
  _tree: function(element, options, parent) {=0A=
    var children =3D Sortable.findElements(element, options) || [];=0A=
  =0A=
    for (var i =3D 0; i < children.length; ++i) {=0A=
      var match =3D children[i].id.match(options.format);=0A=
=0A=
      if (!match) continue;=0A=
      =0A=
      var child =3D {=0A=
        id: encodeURIComponent(match ? match[1] : null),=0A=
        element: element,=0A=
        parent: parent,=0A=
        children: [],=0A=
        position: parent.children.length,=0A=
        container: $(children[i]).down(options.treeTag)=0A=
      }=0A=
      =0A=
      /* Get the element containing the children and recurse over it */=0A=
      if (child.container)=0A=
        this._tree(child.container, options, child)=0A=
      =0A=
      parent.children.push (child);=0A=
    }=0A=
=0A=
    return parent; =0A=
  },=0A=
=0A=
  tree: function(element) {=0A=
    element =3D $(element);=0A=
    var sortableOptions =3D this.options(element);=0A=
    var options =3D Object.extend({=0A=
      tag: sortableOptions.tag,=0A=
      treeTag: sortableOptions.treeTag,=0A=
      only: sortableOptions.only,=0A=
      name: element.id,=0A=
      format: sortableOptions.format=0A=
    }, arguments[1] || {});=0A=
    =0A=
    var root =3D {=0A=
      id: null,=0A=
      parent: null,=0A=
      children: [],=0A=
      container: element,=0A=
      position: 0=0A=
    }=0A=
    =0A=
    return Sortable._tree(element, options, root);=0A=
  },=0A=
=0A=
  /* Construct a [i] index for a particular node */=0A=
  _constructIndex: function(node) {=0A=
    var index =3D '';=0A=
    do {=0A=
      if (node.id) index =3D '[' + node.position + ']' + index;=0A=
    } while ((node =3D node.parent) !=3D null);=0A=
    return index;=0A=
  },=0A=
=0A=
  sequence: function(element) {=0A=
    element =3D $(element);=0A=
    var options =3D Object.extend(this.options(element), arguments[1] || =
{});=0A=
    =0A=
    return $(this.findElements(element, options) || []).map( =
function(item) {=0A=
      return item.id.match(options.format) ? =
item.id.match(options.format)[1] : '';=0A=
    });=0A=
  },=0A=
=0A=
  setSequence: function(element, new_sequence) {=0A=
    element =3D $(element);=0A=
    var options =3D Object.extend(this.options(element), arguments[2] || =
{});=0A=
    =0A=
    var nodeMap =3D {};=0A=
    this.findElements(element, options).each( function(n) {=0A=
        if (n.id.match(options.format))=0A=
            nodeMap[n.id.match(options.format)[1]] =3D [n, n.parentNode];=0A=
        n.parentNode.removeChild(n);=0A=
    });=0A=
   =0A=
    new_sequence.each(function(ident) {=0A=
      var n =3D nodeMap[ident];=0A=
      if (n) {=0A=
        n[1].appendChild(n[0]);=0A=
        delete nodeMap[ident];=0A=
      }=0A=
    });=0A=
  },=0A=
  =0A=
  serialize: function(element) {=0A=
    element =3D $(element);=0A=
    var options =3D Object.extend(Sortable.options(element), =
arguments[1] || {});=0A=
    var name =3D encodeURIComponent(=0A=
      (arguments[1] && arguments[1].name) ? arguments[1].name : =
element.id);=0A=
    =0A=
    if (options.tree) {=0A=
      return Sortable.tree(element, arguments[1]).children.map( function =
(item) {=0A=
        return [name + Sortable._constructIndex(item) + "[id]=3D" + =0A=
                =
encodeURIComponent(item.id)].concat(item.children.map(arguments.callee));=0A=
      }).flatten().join('&');=0A=
    } else {=0A=
      return Sortable.sequence(element, arguments[1]).map( =
function(item) {=0A=
        return name + "[]=3D" + encodeURIComponent(item);=0A=
      }).join('&');=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
// Returns true if child is contained within element=0A=
Element.isParent =3D function(child, element) {=0A=
  if (!child.parentNode || child =3D=3D element) return false;=0A=
  if (child.parentNode =3D=3D element) return true;=0A=
  return Element.isParent(child.parentNode, element);=0A=
}=0A=
=0A=
Element.findChildren =3D function(element, only, recursive, tagName) {   =
 =0A=
  if(!element.hasChildNodes()) return null;=0A=
  tagName =3D tagName.toUpperCase();=0A=
  if(only) only =3D [only].flatten();=0A=
  var elements =3D [];=0A=
  $A(element.childNodes).each( function(e) {=0A=
    if(e.tagName && e.tagName.toUpperCase()=3D=3DtagName &&=0A=
      (!only || (Element.classNames(e).detect(function(v) { return =
only.include(v) }))))=0A=
        elements.push(e);=0A=
    if(recursive) {=0A=
      var grandchildren =3D Element.findChildren(e, only, recursive, =
tagName);=0A=
      if(grandchildren) elements.push(grandchildren);=0A=
    }=0A=
  });=0A=
=0A=
  return (elements.length>0 ? elements.flatten() : []);=0A=
}=0A=
=0A=
Element.offsetSize =3D function (element, type) {=0A=
  return element['offset' + ((type=3D=3D'vertical' || =
type=3D=3D'height') ? 'Height' : 'Width')];=0A=
}=0A=

------=_NextPart_000_0013_01C867E3.D97C53A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.jackassworld.com/javascripts/controls.js?1193090139

// Copyright (c) 2005, 2006 Thomas Fuchs (http://script.aculo.us, =
http://mir.aculo.us)=0A=
//           (c) 2005, 2006 Ivan Krstic =
(http://blogs.law.harvard.edu/ivan)=0A=
//           (c) 2005, 2006 Jon Tirsen (http://www.tirsen.com)=0A=
// Contributors:=0A=
//  Richard Livsey=0A=
//  Rahul Bhargava=0A=
//  Rob Wills=0A=
// =0A=
// script.aculo.us is freely distributable under the terms of an =
MIT-style license.=0A=
// For details, see the script.aculo.us web site: http://script.aculo.us/=0A=
=0A=
// 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=
if(typeof Effect =3D=3D 'undefined')=0A=
  throw("controls.js requires including script.aculo.us' effects.js =
library");=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, {=0A=
            setHeight: false, =0A=
            offsetTop: element.offsetHeight=0A=
          });=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, =
{setTop:(!this.update.style.height)});=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=
    this.getEntry(this.index).scrollIntoView(true);=0A=
  },=0A=
  =0A=
  markNext: function() {=0A=
    if(this.index < this.entryCount-1) this.index++=0A=
      else this.index =3D 0;=0A=
    this.getEntry(this.index).scrollIntoView(false);=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.down());=0A=
=0A=
      if(this.update.firstChild && this.update.down().childNodes) {=0A=
        this.entryCount =3D =0A=
          this.update.down().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=
      this.index =3D 0;=0A=
      =0A=
      if(this.entryCount=3D=3D1 && this.options.autoSelect) {=0A=
        this.selectEntry();=0A=
        this.hide();=0A=
      } else {=0A=
        this.render();=0A=
      }=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=
      paramName: "value",=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=
      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=
    if (!this.options.loadTextURL) =
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 this.options.paramName;=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 this.options.paramName;=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=
    Field.scrollFreeActivate(this.editField);=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((typeof this.options.value =3D=3D 'undefined') && =0A=
          ((e instanceof Array) ? this.element.innerHTML =3D=3D e[1] : e =
=3D=3D optionTag.value)) optionTag.selected =3D true;=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_0013_01C867E3.D97C53A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.jackassworld.com/javascripts/application.js?1199745950

function getElementsByClassName(className, tag, elm){=0A=
	var testClass =3D new RegExp("(^|\\\\s)" + className + "(\\\\s|$)");=0A=
	var tag =3D tag || "*";=0A=
	var elm =3D elm || document;=0A=
	var elements =3D (tag =3D=3D "*" && elm.all)? elm.all : =
elm.getElementsByTagName(tag);=0A=
	var returnElements =3D [];=0A=
	var current;=0A=
	var length =3D elements.length;=0A=
	for(var i=3D0; i<length; i++){=0A=
		current =3D elements[i];=0A=
		if(testClass.test(current.className)){=0A=
			returnElements.push(current);=0A=
		}=0A=
	}=0A=
	return returnElements;=0A=
}=0A=
=0A=
function open_mf_panel(name) {=0A=
	var panels =3D getElementsByClassName('mf_panel_results', 'div', =
$('media_finder'));=0A=
	for(var i=3D0; i<panels.length; i++) {=0A=
		current =3D panels[i];=0A=
		if(current.id =3D=3D name) {=0A=
			current.style.display =3D 'block';=0A=
		}=0A=
		else {=0A=
			current.style.display =3D 'none';=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
function clear_thumbs() {=0A=
	containers =3D getElementsByClassName('horizontal_thumb_row', 'tr', =
$('media_finder'));=0A=
	for(var i=3D0; i<containers.length; i++) {=0A=
		so_clearInnerHTML(containers[i]);=0A=
	}=0A=
}=0A=
=0A=
function so_clearInnerHTML(obj) {=0A=
	while(obj.firstChild) obj.removeChild(obj.firstChild);=0A=
}=0A=
=0A=
function copy(str) {=0A=
   var flashcopier =3D 'flashcopier';=0A=
   if(!document.getElementById(flashcopier)) {=0A=
     var divholder =3D document.createElement('div');=0A=
     divholder.id =3D flashcopier;=0A=
     document.body.appendChild(divholder);=0A=
   }=0A=
   document.getElementById(flashcopier).innerHTML =3D '';=0A=
   var divinfo =3D '<embed src=3D"/flash/_clipboard.swf" =
FlashVars=3D"clipboard=3D'+encodeURIComponent(str)+'" width=3D"0" =
height=3D"0" type=3D"application/x-shockwave-flash"></embed>';=0A=
   document.getElementById(flashcopier).innerHTML =3D divinfo;=0A=
}=0A=
=0A=
function show_photo_searchables(name) {=0A=
	// hide / reveal searchable lists=0A=
	var panels =3D getElementsByClassName('photo_searchable_links', 'ul', =
$('photo_searchables'));=0A=
	for(var i=3D0; i<panels.length; i++) {=0A=
		current =3D panels[i];=0A=
		if(current.id =3D=3D name + '_searchables') {=0A=
			current.style.display =3D 'block';=0A=
		}=0A=
		else {=0A=
			current.style.display =3D 'none';=0A=
		}=0A=
	}=0A=
	=0A=
	// remove 'selected' class from all links=0A=
	var panels =3D getElementsByClassName('selected', 'a', =
$('searchable_categories'));=0A=
	for(var i=3D0; i<panels.length; i++) {=0A=
		current =3D panels[i];=0A=
			current.className =3D '';=0A=
	}=0A=
	=0A=
	// add 'selected' class to chosen link=0A=
	$(name + '_label').firstChild.className +=3D ' selected'=0A=
}=0A=
=0A=
function showMoreFromShowThumbs() {=0A=
	v =3D $('vert_more_from_show_sb');=0A=
	if(v) {=0A=
		v.hide();=0A=
	} =0A=
	$('more_from_show_thumbs').style.overflow =3D 'hidden'; =0A=
	$('more_from_show_list').hide(); =0A=
	$('more_from_show_thumbs').show(); =0A=
	makeScrollBar('more_from_show_thumbs_container', =
'horz_more_from_show_sb', 525, 0, true); =0A=
	h =3D $('horz_more_from_show_sb');=0A=
	if(h) {=0A=
		h.show();=0A=
	}=0A=
	$('thumb_list_toggle_thumbs').addClassName('selected'); =0A=
	$('thumb_list_toggle_list').removeClassName('selected');=0A=
}=0A=
=0A=
function showMoreFromShowList() {=0A=
	h =3D $('horz_more_from_show_sb');=0A=
	if(h) {=0A=
		h.hide();=0A=
	} =0A=
	$('more_from_show_list').style.overflow =3D 'hidden'; =0A=
	$('more_from_show_thumbs').hide(); =0A=
	$('more_from_show_list').show(); =0A=
	makeScrollBar('more_from_show_list', 'vert_more_from_show_sb', 480); =0A=
	v =3D $('vert_more_from_show_sb');=0A=
	if(v) {=0A=
		v.show();=0A=
	} =0A=
	$('thumb_list_toggle_list').addClassName('selected'); =0A=
	$('thumb_list_toggle_thumbs').removeClassName('selected');=0A=
}=0A=
=0A=
widget_in_use =3D false;=0A=
=0A=
function scrollPhotoWidget(obj_id, distance) {=0A=
	if(!widget_in_use) { =0A=
		obj =3D $(obj_id)=0A=
		if((distance >=3D 0 && obj.offsetLeft < 0) || (distance < 0 && =
obj.offsetLeft > -obj.offsetWidth - 2 * distance)) {=0A=
			widget_in_use =3D true; =0A=
			new Effect.Move(obj_id, {x:distance, duration:.5, =
afterFinish:function(e){ widget_in_use =3D false; } });=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
function createCookie(name,value,days) {=0A=
	if (days) {=0A=
		var date =3D new Date();=0A=
		date.setTime(date.getTime()+(days*24*60*60*1000));=0A=
		var expires =3D "; expires=3D"+date.toGMTString();=0A=
	}=0A=
	else var expires =3D "";=0A=
	document.cookie =3D name+"=3D"+value+expires+"; path=3D/";=0A=
}=0A=
=0A=
function readCookie(name) {=0A=
	var nameEQ =3D name + "=3D";=0A=
	var ca =3D document.cookie.split(';');=0A=
	for(var i=3D0;i < ca.length;i++) {=0A=
		var c =3D ca[i];=0A=
		while (c.charAt(0)=3D=3D' ') c =3D c.substring(1,c.length);=0A=
		if (c.indexOf(nameEQ) =3D=3D 0) return =
c.substring(nameEQ.length,c.length);=0A=
	}=0A=
	return null;=0A=
}=0A=
=0A=
function getElementsByClass(searchClass,node,tag) {=0A=
	var classElements =3D new Array();=0A=
	if ( node =3D=3D null )=0A=
		node =3D document;=0A=
	if ( tag =3D=3D null )=0A=
		tag =3D '*';=0A=
	var els =3D node.getElementsByTagName(tag);=0A=
	var elsLen =3D els.length;=0A=
	var pattern =3D new RegExp("(^|\\\\s)"+searchClass+"(\\\\s|$)");=0A=
	for (i =3D 0, j =3D 0; i < elsLen; i++) {=0A=
		if ( pattern.test(els[i].className) ) {=0A=
			classElements[j] =3D els[i];=0A=
			j++;=0A=
		}=0A=
	}=0A=
	return classElements;=0A=
}=0A=
=0A=
=0A=
function turnOnSearchImages() {=0A=
	if(!search_images_on) {=0A=
		search_images_on =3D true;=0A=
		createCookie('search_images_on', 'true', 7);=0A=
		$('image_toggle_on').addClassName('selected');=0A=
		$('image_toggle_off').removeClassName('selected');=0A=
		arr =3D getElementsByClass('result_image', $('gsa_search_results'), =
'p')=0A=
		for(i=3D0; i < arr.length; i++) {=0A=
			arr[i].show();=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
function turnOffSearchImages() {=0A=
	if(search_images_on) {=0A=
		search_images_on =3D false;=0A=
		createCookie('search_images_on', 'false', 7);=0A=
		$('image_toggle_on').removeClassName('selected');=0A=
		$('image_toggle_off').addClassName('selected');=0A=
		arr =3D getElementsByClass('result_image', $('gsa_search_results'), =
'p')=0A=
		for(i=3D0; i < arr.length; i++) {=0A=
			arr[i].hide();=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
var search_images_on =3D true;=0A=
=0A=
window.onload =3D function() {=0A=
	if (cook =3D readCookie('search_images_on')) {=0A=
		search_images_on =3D (cook =3D=3D 'true') ? true : false;=0A=
		if(!search_images_on) {=0A=
			search_images_on =3D true;=0A=
			turnOffSearchImages();=0A=
		}=0A=
	}=0A=
	else {=0A=
		search_images_on =3D true;=0A=
		createCookie('search_images_on', search_images_on, 7);=0A=
	}=0A=
}=0A=
=0A=
	=0A=
function nada() {=0A=
	=0A=
}
------=_NextPart_000_0013_01C867E3.D97C53A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.jackassworld.com/javascripts/swfobject.js?1193433632

/**=0A=
 * SWFObject v1.5: Flash Player detection and embed - =
http://blog.deconcept.com/swfobject/=0A=
 *=0A=
 * SWFObject is (c) 2007 Geoff Stearns and is released under the MIT =
License:=0A=
 * http://www.opensource.org/licenses/mit-license.php=0A=
 *=0A=
 */=0A=
if(typeof deconcept=3D=3D"undefined"){var deconcept=3Dnew =
Object();}if(typeof =
deconcept.util=3D=3D"undefined"){deconcept.util=3Dnew =
Object();}if(typeof =
deconcept.SWFObjectUtil=3D=3D"undefined"){deconcept.SWFObjectUtil=3Dnew =
Object();}deconcept.SWFObject=3Dfunction(_1,id,w,h,_5,c,_7,_8,_9,_a){if(!=
document.getElementById){return;}this.DETECT_KEY=3D_a?_a:"detectflash";th=
is.skipDetect=3Ddeconcept.util.getRequestParameter(this.DETECT_KEY);this.=
params=3Dnew Object();this.variables=3Dnew =
Object();this.attributes=3Dnew =
Array();if(_1){this.setAttribute("swf",_1);}if(id){this.setAttribute("id"=
,id);}if(w){this.setAttribute("width",w);}if(h){this.setAttribute("height=
",h);}if(_5){this.setAttribute("version",new =
deconcept.PlayerVersion(_5.toString().split(".")));}this.installedVer=3Dd=
econcept.SWFObjectUtil.getPlayerVersion();if(!window.opera&&document.all&=
&this.installedVer.major>7){deconcept.SWFObject.doPrepUnload=3Dtrue;}if(c=
){this.addParam("bgcolor",c);}var =
q=3D_7?_7:"high";this.addParam("quality",q);this.setAttribute("useExpress=
Install",false);this.setAttribute("doExpressInstall",false);var =
_c=3D(_8)?_8:window.location;this.setAttribute("xiRedirectUrl",_c);this.s=
etAttribute("redirectUrl","");if(_9){this.setAttribute("redirectUrl",_9);=
}};deconcept.SWFObject.prototype=3D{useExpressInstall:function(_d){this.x=
iSWFPath=3D!_d?"expressinstall.swf":_d;this.setAttribute("useExpressInsta=
ll",true);},setAttribute:function(_e,_f){this.attributes[_e]=3D_f;},getAt=
tribute:function(_10){return =
this.attributes[_10];},addParam:function(_11,_12){this.params[_11]=3D_12;=
},getParams:function(){return =
this.params;},addVariable:function(_13,_14){this.variables[_13]=3D_14;},g=
etVariable:function(_15){return =
this.variables[_15];},getVariables:function(){return =
this.variables;},getVariablePairs:function(){var _16=3Dnew Array();var =
key;var _18=3Dthis.getVariables();for(key in =
_18){_16[_16.length]=3Dkey+"=3D"+_18[key];}return =
_16;},getSWFHTML:function(){var =
_19=3D"";if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.l=
ength){if(this.getAttribute("doExpressInstall")){this.addVariable("MMplay=
erType","PlugIn");this.setAttribute("swf",this.xiSWFPath);}_19=3D"<embed =
type=3D\"application/x-shockwave-flash\" =
src=3D\""+this.getAttribute("swf")+"\" =
width=3D\""+this.getAttribute("width")+"\" =
height=3D\""+this.getAttribute("height")+"\" =
style=3D\""+this.getAttribute("style")+"\"";_19+=3D" =
id=3D\""+this.getAttribute("id")+"\" =
name=3D\""+this.getAttribute("id")+"\" ";var =
_1a=3Dthis.getParams();for(var key in =
_1a){_19+=3D[key]+"=3D\""+_1a[key]+"\" ";}var =
_1c=3Dthis.getVariablePairs().join("&");if(_1c.length>0){_19+=3D"flashvar=
s=3D\""+_1c+"\"";}_19+=3D"/>";}else{if(this.getAttribute("doExpressInstal=
l")){this.addVariable("MMplayerType","ActiveX");this.setAttribute("swf",t=
his.xiSWFPath);}_19=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")+"\" =
style=3D\""+this.getAttribute("style")+"\">";_19+=3D"<param =
name=3D\"movie\" value=3D\""+this.getAttribute("swf")+"\" />";var =
_1d=3Dthis.getParams();for(var key in _1d){_19+=3D"<param =
name=3D\""+key+"\" value=3D\""+_1d[key]+"\" />";}var =
_1f=3Dthis.getVariablePairs().join("&");if(_1f.length>0){_19+=3D"<param =
name=3D\"flashvars\" value=3D\""+_1f+"\" />";}_19+=3D"</object>";}return =
_19;},write:function(_20){if(this.getAttribute("useExpressInstall")){var =
_21=3Dnew =
deconcept.PlayerVersion([6,0,65]);if(this.installedVer.versionIsValid(_21=
)&&!this.installedVer.versionIsValid(this.getAttribute("version"))){this.=
setAttribute("doExpressInstall",true);this.addVariable("MMredirectURL",es=
cape(this.getAttribute("xiRedirectUrl")));document.title=3Ddocument.title=
.slice(0,47)+" - Flash Player =
Installation";this.addVariable("MMdoctitle",document.title);}}if(this.ski=
pDetect||this.getAttribute("doExpressInstall")||this.installedVer.version=
IsValid(this.getAttribute("version"))){var n=3D(typeof =
_20=3D=3D"string")?document.getElementById(_20):_20;n.innerHTML=3Dthis.ge=
tSWFHTML();return =
true;}else{if(this.getAttribute("redirectUrl")!=3D""){document.location.r=
eplace(this.getAttribute("redirectUrl"));}}return =
false;}};deconcept.SWFObjectUtil.getPlayerVersion=3Dfunction(){var =
_23=3Dnew =
deconcept.PlayerVersion([0,0,0]);if(navigator.plugins&&navigator.mimeType=
s.length){var x=3Dnavigator.plugins["Shockwave =
Flash"];if(x&&x.description){_23=3Dnew =
deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/,"").replac=
e(/(\s+r|\s+b[0-9]+)/,".").split("."));}}else{if(navigator.userAgent&&nav=
igator.userAgent.indexOf("Windows CE")>=3D0){var axo=3D1;var =
_26=3D3;while(axo){try{_26++;axo=3Dnew =
ActiveXObject("ShockwaveFlash.ShockwaveFlash."+_26);_23=3Dnew =
deconcept.PlayerVersion([_26,0,0]);}catch(e){axo=3Dnull;}}}else{try{var =
axo=3Dnew =
ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");}catch(e){try{var =
axo=3Dnew ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");_23=3Dnew =
deconcept.PlayerVersion([6,0,21]);axo.AllowScriptAccess=3D"always";}catch=
(e){if(_23.major=3D=3D6){return _23;}}try{axo=3Dnew =
ActiveXObject("ShockwaveFlash.ShockwaveFlash");}catch(e){}}if(axo!=3Dnull=
){_23=3Dnew deconcept.PlayerVersion(axo.GetVariable("$version").split(" =
")[1].split(","));}}}return =
_23;};deconcept.PlayerVersion=3Dfunction(_29){this.major=3D_29[0]!=3Dnull=
?parseInt(_29[0]):0;this.minor=3D_29[1]!=3Dnull?parseInt(_29[1]):0;this.r=
ev=3D_29[2]!=3Dnull?parseInt(_29[2]):0;};deconcept.PlayerVersion.prototyp=
e.versionIsValid=3Dfunction(fv){if(this.major<fv.major){return =
false;}if(this.major>fv.major){return =
true;}if(this.minor<fv.minor){return =
false;}if(this.minor>fv.minor){return true;}if(this.rev<fv.rev){return =
false;}return =
true;};deconcept.util=3D{getRequestParameter:function(_2b){var =
q=3Ddocument.location.search||document.location.hash;if(_2b=3D=3Dnull){re=
turn q;}if(q){var _2d=3Dq.substring(1).split("&");for(var =
i=3D0;i<_2d.length;i++){if(_2d[i].substring(0,_2d[i].indexOf("=3D"))=3D=3D=
_2b){return _2d[i].substring((_2d[i].indexOf("=3D")+1));}}}return =
"";}};deconcept.SWFObjectUtil.cleanupSWFs=3Dfunction(){var =
_2f=3Ddocument.getElementsByTagName("OBJECT");for(var =
i=3D_2f.length-1;i>=3D0;i--){_2f[i].style.display=3D"none";for(var x in =
_2f[i]){if(typeof =
_2f[i][x]=3D=3D"function"){_2f[i][x]=3Dfunction(){};}}}};if(deconcept.SWF=
Object.doPrepUnload){if(!deconcept.unloadSet){deconcept.SWFObjectUtil.pre=
pUnload=3Dfunction(){__flash_unloadHandler=3Dfunction(){};__flash_savedUn=
loadHandler=3Dfunction(){};window.attachEvent("onunload",deconcept.SWFObj=
ectUtil.cleanupSWFs);};window.attachEvent("onbeforeunload",deconcept.SWFO=
bjectUtil.prepUnload);deconcept.unloadSet=3Dtrue;}}if(!document.getElemen=
tById&&document.all){document.getElementById=3Dfunction(id){return =
document.all[id];};}var =
getQueryParamValue=3Ddeconcept.util.getRequestParameter;var =
FlashObject=3Ddeconcept.SWFObject;var SWFObject=3Ddeconcept.SWFObject;
------=_NextPart_000_0013_01C867E3.D97C53A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.jackassworld.com/javascripts/scrollbar.js?1199745950

// TODO: Add page up/down by clicking bar functionality=0A=
// TODO: Turn it into a simple Rails plugin=0A=
=0A=
document.onmousemove =3D mouseMove;=0A=
document.onmouseup   =3D mouseUp;=0A=
=0A=
var scrollbarArray =3D [];=0A=
=0A=
var dragObject  =3D null;=0A=
var mouseOffset =3D null;=0A=
var scrollingDiv =3D null;=0A=
var dragStartX =3D null;=0A=
var dragStartY =3D null;=0A=
var mouseStartX =3D null;=0A=
var mouseStartY =3D null;=0A=
=0A=
var max_scroll =3D 0;=0A=
var min_scroll =3D 0;=0A=
=0A=
function mouseMove(ev){=0A=
	if(!ev) ev =3D window.event;=0A=
	=0A=
	var mousePos =3D mouseCoords(ev);=0A=
=0A=
	if(dragObject){=0A=
		if(target.scrollHeight > target.offsetHeight) {=0A=
		// if(dragObject.scrollHeight > dragObject.offsetHeight) {=0A=
			var newY =3D dragStartY - mouseStartY + mousePos.y;=0A=
			if(newY > max_scroll) {=0A=
				newY =3D max_scroll;=0A=
			}=0A=
			else if (newY < min_scroll) {=0A=
				newY =3D min_scroll;=0A=
			}=0A=
			dragObject.style.top =3D newY + 'px';=0A=
			var myRatio =3D 1 - (max_scroll - newY)/(max_scroll - min_scroll);=0A=
			scrollingDiv.scrollTop =3D Math.round(myRatio * =
(scrollingDiv.scrollHeight - scrollingDiv.offsetHeight));=0A=
			// $('test').innerHTML =3D 'y: ' + newY + ', ' + max_scroll + ', ' + =
(scrollingDiv.scrollHeight - scrollingDiv.offsetHeight);=0A=
		}=0A=
		else {=0A=
			var newX =3D dragStartX - mouseStartX + mousePos.x;=0A=
			if(newX > max_scroll) {=0A=
				newX =3D max_scroll;=0A=
			}=0A=
			else if (newX < min_scroll) {=0A=
				newX =3D min_scroll;=0A=
			}=0A=
			dragObject.style.left =3D newX + 'px';=0A=
			var myRatio =3D 1 - (max_scroll - newX)/(max_scroll - min_scroll);=0A=
			scrollingDiv.scrollLeft =3D Math.round(myRatio * =
(scrollingDiv.scrollWidth - scrollingDiv.offsetWidth));=0A=
			// $('test').innerHTML =3D 'x: ' + newX + ', ' + max_scroll + ', ' + =
scrollingDiv.scrollLeft;=0A=
		}=0A=
		return false;=0A=
	}=0A=
}=0A=
=0A=
function mouseUp(){=0A=
	dragObject =3D null;=0A=
	mouseStartX =3D null;=0A=
	mouseStartY =3D null;=0A=
}=0A=
=0A=
function mouseCoords(ev){=0A=
	if(ev.pageX || ev.pageY){=0A=
		return {x:ev.pageX, y:ev.pageY};=0A=
	}=0A=
	return {=0A=
		x:ev.clientX + document.body.scrollLeft - document.body.clientLeft,=0A=
		y:ev.clientY + document.body.scrollTop - document.body.clientTop=0A=
	};=0A=
}=0A=
=0A=
function makeDraggable(item, max, min){=0A=
	if(!item) return;=0A=
	item.onmousedown =3D function(ev){=0A=
		if(!ev) ev =3D window.event;=0A=
		dragObject  =3D this;=0A=
		mouseStartX =3D mouseCoords(ev).x;=0A=
		mouseStartY =3D mouseCoords(ev).y;=0A=
		dragStartX =3D (this.style.left =3D=3D '') ? 0 : =
this.style.left.replace('px', '');=0A=
		dragStartY =3D (this.style.top =3D=3D '') ? 0 : =
this.style.top.replace('px', '');=0A=
		max_scroll =3D max;=0A=
		min_scroll =3D min;=0A=
		return false;=0A=
	}=0A=
}=0A=
=0A=
function makeScrollBar(tar, id, max, min, horizontal) {=0A=
	target =3D document.getElementById(tar);=0A=
	// parent =3D target.parentNode;=0A=
	min =3D (min =3D=3D null) ? 0 : min;=0A=
	if(document.getElementById(id) =3D=3D null) {=0A=
		// alert(parent.scrollHeight + ' ? ' + parent.offsetHeight + ', ' + =
parent.scrollWidth + ' ? ' + parent.offsetWidth + ', ' + =
target.scrollHeight + ' ? ' + target.offsetHeight + ', ' + =
target.scrollWidth + ' ? ' + target.offsetWidth)=0A=
		// if(parent.scrollHeight > parent.offsetHeight || parent.scrollWidth =
> parent.offsetWidth || target.scrollHeight > target.offsetHeight || =
target.scrollWidth > target.offsetWidth) {=0A=
		if(target.scrollHeight > target.offsetHeight || target.scrollWidth > =
target.offsetWidth) {=0A=
			// scrollingDiv =3D parent;=0A=
			scrollingDiv =3D target;=0A=
			scrollDiv =3D document.createElement('div');=0A=
			scrollDiv.setAttribute('class', 'scroll_bar');=0A=
			scrollDiv.setAttribute('id', id);=0A=
			knobDiv =3D document.createElement('div');=0A=
			knobDiv.setAttribute('class', 'scroll_knob');=0A=
			knobDiv.setAttribute('id', id + '_knob');=0A=
			if(horizontal){=0A=
				w =3D Math.round(target.offsetWidth * (target.offsetWidth / =
target.scrollWidth));=0A=
				if(w < 40) { w =3D 40; }=0A=
				knobDiv.style.width =3D w + "px";=0A=
				max =3D max - w;=0A=
			}=0A=
			else {=0A=
				h =3D Math.round(target.offsetHeight * (target.offsetHeight / =
target.scrollHeight))=0A=
				if(h < 40) { h =3D 40; }=0A=
				knobDiv.style.height =3D h + "px";=0A=
				max =3D max - h;=0A=
			}			=0A=
			makeDraggable(knobDiv, max, min);=0A=
			scrollDiv.appendChild(knobDiv);=0A=
			// parent.parentNode.insertBefore(scrollDiv, parent);=0A=
			if(horizontal) {=0A=
				target.parentNode.appendChild(scrollDiv);=0A=
			}=0A=
			else {=0A=
				target.parentNode.insertBefore(scrollDiv, target);				=0A=
			}=0A=
			target.style.overflow =3D "hidden";=0A=
			// parent.style.overflow =3D "hidden";=0A=
		}=0A=
	}=0A=
	else {=0A=
		scrollingDiv =3D target;=0A=
		makeDraggable($(id + '_knob'), max, min);=0A=
	}=0A=
}
------=_NextPart_000_0013_01C867E3.D97C53A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.jackassworld.com/javascripts/mtvi_jackassworld.js?1201290028

/*Build Date: Fri Jan 18, 2008 14:26:17*/var =
com=3D{mtvi:{util:{},logger:{},config:{},ads:{},reporting:{}}};String.pro=
totype.trim=3Dfunction(){return =
this.replace(/^\\s+|\\s+$/g,'');};String.prototype.chop=3Dfunction(n){if(=
isNaN(n)){n=3Dthis.length-1;}return =
this.substring(0,n);};String.prototype.ucFirst=3Dfunction(){return =
this.charAt(0).toUpperCase()+this.substr(1,this.length);};document.getEle=
mentsByClassName=3Dfunction(str){var nodes=3D[];var name=3Dnew =
RegExp('\\b'+str+'\\b');var =
elems=3Dthis.getElementsByTagName('*');for(var =
i=3D0;i<elems.length;i++){if(name.test(elems[i].className)){nodes.push(el=
ems[i])};}return =
nodes;};Math.getRnd=3Dfunction(a_numA,a_numB){if(!com.mtvi.util.isDefined=
(a_numA)||isNaN(a_numA)||parseInt(a_numA)<0){a_numA=3D1;}if(!com.mtvi.uti=
l.isDefined(a_numB)||isNaN(a_numB)||parseInt(a_numB)<0){a_numB=3D0;}if(a_=
numA<a_numB){var =
tempNum=3Da_numA;a_numA=3Da_numB;a_numB=3DtempNum;}return(parseInt(Math.r=
andom()*(a_numA-a_numB+1)+a_numB));};bindLinkEvent=3Dfunction(d,l,t){var =
linkName=3Dcom.mtvi.util.crawlNodes(l);linkName=3DlinkName?linkName:l.hre=
f;return =
function(){d.sendLinkEvent(l,l.href,t);};};com.mtvi.util=3D{isDefined:fun=
ction(v){if(typeof =
v=3D=3D=3D'undefined'||v=3D=3D=3Dnull||v=3D=3D=3D''||v=3D=3D=3D'undefined=
'){return false;}else{return =
true;}},stringToObject:function(s,d){try{var o=3D{};var d=3Dd?d:",";var =
s=3Ds.split(d);for(var i=3D0;i<s.length;i++){var =
p=3Ds[i].split('=3D');o[p[0]]=3Dp[1];}return =
o;}catch(e){}},objectToString:function(o){try{var a=3D[];for(var i in =
o){if(typeof o[i]=3D=3D'string'){a.push(i+'=3D'+o[i]);}}return =
a.join(',');}catch(e){}},queryStringToHash:function(str){try{var =
qs=3D[];var =
a=3Dstr.indexOf("?")>-1?str.split("?")[1].split("&"):str.split("&");for(v=
ar x=3D0;x<a.length;x++){var =
b=3Da[x].split("=3D");qs[b[0]]=3Db[1];}return =
qs;}catch(e){}},addOnloadEvent:function(func){try{if(window.attachEvent){=
window.attachEvent("onload",func);}if(window.addEventListener){window.add=
EventListener("load",func,false);}return =
this;}catch(e){}},setProperties:function(o){try{for(var i in =
o.properties){if(typeof o[i]!=3D"object"){var =
name=3Di.ucFirst();eval("o.get"+name+"=3Dfunction(){return =
this.properties['"+i+"'];}");eval("o.set"+name+"=3Dfunction(v){this.prope=
rties['"+i+"']=3Dcom.mtvi.util.isDefined(v)?v:'';}");}}}catch(e){try{com.=
mtvi.logger.JsError(e);}catch(e){}}},readCookie:function(name){try{var =
name=3Dname+"=3D";var ca=3Ddocument.cookie.split(';');for(var =
i=3D0;i<ca.length;i++){var c=3Dca[i];while(c.charAt(0)=3D=3D' =
'){c=3Dc.substring(1,c.length)};if(c.indexOf(name)=3D=3D0){return =
c.substring(name.length,c.length)};}return =
null;}catch(e){}},setCookie:function(name,value){try{document.cookie=3Dna=
me+"=3D"+value+"; path=3D/";}catch(e){}},debug:function(msg){try{var =
c=3Ddocument.getElementById("debug");if(!c){c=3Ddocument.createElement("d=
iv");c.setAttribute("id","debug");document.getElementsByTagName("body")[0=
].appendChild(c);}c.innerHTML=3Dc.innerHTML+msg+"<br>";}catch(e){}},trace=
:function(msg){try{if(com_mtvi_debug){document.write(msg+"<br>");}}catch(=
e){}try{if(this.debugOn){document.write(msg+"<br>");}}catch(e){}},setDebu=
gOn:function(){this.debugOn=3Dtrue;},crawlNodes:function(node){var =
linkName=3Dnull;for(var c=3D0;c<node.childNodes.length;c++){var =
childnode=3Dnode.childNodes[c];switch(childnode.nodeType){case 3:return =
childnode.nodeValue;break;case =
1:if(childnode.title){linkName=3Dchildnode.title;}else =
if(childnode.alt){linkName=3Dchildnode.alt;}break;};}return =
linkName;}};com.mtvi.logger=3D{url:"http://viarnd.112.2o7.net/b/ss/viarnd=
/1/EMAIL?",send:function(src){if(MTVi.util.isDefined(msg)){var img=3Dnew =
Image();img.src=3Dsrc;}},JsError:function(e){try{var =
map=3D{message:'c21',name:'c22',stack:'c23'};var =
msg=3Dthis.url+"pageName=3DJS_ER-"+window.location;if(!MTVi.util.isDefine=
d(e.stack)){e.stack=3Dwindow.location.href;}for(var i in =
map){if(MTVi.util.isDefined(e[i])){msg+=3D"&"+map[i]+"=3D"+e[i];}}this.se=
nd(msg);}catch(e){try{this.send(this.url+"pageName=3DJS_ER-"+"com.mtvi.lo=
gger error:"+e.message);}catch(e){}}}};var =
s=3Dnull;com.mtvi.reporting.Widget=3D{};com.mtvi.reporting.Widget.init=3D=
function(){this.extCode=3Ds=3Ds_gi(com.mtvi.reporting.Account.name);this.=
extCode.getNewRepeat=3Dnew Function(""+"var s=3Dthis,e=3Dnew =
Date(),cval,ct=3De.getTime(),y=3De.getYear();e.setTime"+"(ct+30*24*60*60*=
1000);cval=3Ds.c_r('s_nr');if(cval.length=3D=3D0){s.c_w("+"'s_nr',ct,e);r=
eturn =
'New';}if(cval.length!=3D0&&ct-cval<30*60*1000){s"+".c_w('s_nr',ct,e);ret=
urn =
'New';}if(cval<1123916400001){e.setTime(cv"+"al+30*24*60*60*1000);s.c_w('=
s_nr',ct,e);return 'Repeat';}else retur"+"n =
'Repeat';");};com.mtvi.reporting.Widget.setAttribute=3Dfunction(k,v){try{=
if(com.mtvi.util.isDefined(k)){this.extCode[k]=3Dcom.mtvi.util.isDefined(=
v)?v:'';}}catch(e){}};com.mtvi.reporting.Widget.getAttribute=3Dfunction(k=
){try{if(com.mtvi.util.isDefined(k)){return =
this.extCode[k];}else{return;}}catch(e){}};com.mtvi.reporting.Widget.setA=
ccount=3Dfunction(v){try{this.setAttribute("un",v);}catch(e){}};com.mtvi.=
reporting.Widget.getAccount=3Dfunction(v){try{this.getAttribute("un");}ca=
tch(e){}};com.mtvi.reporting.Widget.appendCall=3Dfunction(s){try{document=
.write('<div style=3D"display:none;" =
id=3D"s_code_alt">'+s+'</div>');}catch(e){}};try{document.write('<div =
style=3D"position:absolute; visibility:hidden; width:1px; height:1px; =
border:0px; top:-100px; left:-100px" =
id=3D"urchin"></div>');}catch(e){};var s_objectID;function s_c2fe(f){var =
x=3D'',s=3D0,e,a,b,c;while(1){e=3Df.indexOf('"',s);b=3Df.indexOf('\\',s);=
c=3Df.indexOf("\n",s);if(e<0||(b>=3D0&&b<e))e=3Db;if(e<0||(c>=3D0&&c<e))e=
=3Dc;if(e>=3D0){x+=3D(e>s?f.substring(s,e):'')+(e=3D=3Dc?'\\n':'\\'+f.sub=
string(e,e+1));s=3De+1}else return x+f.substring(s)}return f}function =
s_c2fa(f){var =
s=3Df.indexOf('(')+1,e=3Df.indexOf(')'),a=3D'',c;while(s>=3D0&&s<e){c=3Df=
.substring(s,s+1);if(c=3D=3D',')a+=3D'","';else if(("\n\r\t =
").indexOf(c)<0)a+=3Dc;s++}return a?'"'+a+'"':a}function =
s_c2f(cc){cc=3D''+cc;var fc=3D'var f=3Dnew =
Function(',s=3Dcc.indexOf(';',cc.indexOf('{')),e=3Dcc.lastIndexOf('}'),o,=
a,d,q,c,f,h,x;fc+=3Ds_c2fa(cc)+',"var s=3Dnew =
Object;';c=3Dcc.substring(s+1,e);s=3Dc.indexOf('function');while(s>=3D0){=
d=3D1;q=3D'';x=3D0;f=3Dc.substring(s);a=3Ds_c2fa(f);e=3Do=3Dc.indexOf('{'=
,s);e++;while(d>0){h=3Dc.substring(e,e+1);if(q){if(h=3D=3Dq&&!x)q=3D'';if=
(h=3D=3D'\\')x=3Dx?0:1;else =
x=3D0}else{if(h=3D=3D'"'||h=3D=3D"'")q=3Dh;if(h=3D=3D'{')d++;if(h=3D=3D'}=
')d--}if(d>0)e++}c=3Dc.substring(0,s)+'new =
Function('+(a?a+',':'')+'"'+s_c2fe(c.substring(o+1,e))+'")'+c.substring(e=
+1);s=3Dc.indexOf('function')}fc+=3Ds_c2fe(c)+';return =
s");';eval(fc);return f;}function s_gi(un,pg,ss){var c=3D"function =
s_c(un,pg,s"+"s){var =
s=3Dthis;s.wd=3Dwindow;if(!s.wd.s_c_in){s.wd.s_c_il=3Dnew =
Array;s."+"wd.s_c_in=3D0;}s._il=3Ds.wd.s_c_il;s._in=3Ds.wd.s_c_in;s._il[s=
._in]=3Ds;s.w"+"d.s_c_in++;s.m=3Dfunction(m){return =
(''+m).indexOf('{')<0};s.fl=3Dfunct"+"ion(x,l){return =
x?(''+x).substring(0,l):x};s.co=3Dfunction(o){if(!o)r"+"eturn o;var =
n=3Dnew Object,x;for(x in =
o)if(x.indexOf('select')<0&&x.i"+"ndexOf('filter')<0)n[x]=3Do[x];return =
n};s.num=3Dfunction(x){x=3D''+x;for"+"(var =
p=3D0;p<x.length;p++)if(('0123456789').indexOf(x.substring(p,p+1"+"))<0)r=
eturn 0;return 1};s.rep=3Dfunction(x,o,n){var =
i=3Dx.indexOf(o),l=3D"+"n.length>0?n.length:1;while(x&&i>=3D0){x=3Dx.subs=
tring(0,i)+n+x.substri"+"ng(i+o.length);i=3Dx.indexOf(o,i+l)}return =
x};s.ape=3Dfunction(x){var =
s"+"=3Dthis,i;x=3Dx?s.rep(escape(''+x),'+','%2B'):x;if(x&&s.charSet&&s.em=
=3D=3D"+"1&&x.indexOf('%u')<0&&x.indexOf('%U')<0){i=3Dx.indexOf('%');whil=
e(i>=3D"+"0){i++;if(('89ABCDEFabcdef').indexOf(x.substring(i,i+1))>=3D0)r=
eturn =
"+"x.substring(0,i)+'u00'+x.substring(i);i=3Dx.indexOf('%',i)}}return =
x}"+";s.epa=3Dfunction(x){var s=3Dthis;return =
x?unescape(s.rep(''+x,'+',' ')"+"):x};s.pt=3Dfunction(x,d,f,a){var =
s=3Dthis,t=3Dx,z=3D0,y,r;while(t){y=3Dt.ind"+"exOf(d);y=3Dy<0?t.length:y;=
t=3Dt.substring(0,y);r=3Ds.m(f)?s[f](t,a):f(t,"+"a);if(r)return =
r;z+=3Dy+d.length;t=3Dx.substring(z,x.length);t=3Dz<x.leng"+"th?t:''}retu=
rn ''};s.isf=3Dfunction(t,a){var =
c=3Da.indexOf(':');if(c>=3D0"+")a=3Da.substring(0,c);if(t.substring(0,2)=3D=
=3D's_')t=3Dt.substring(2);retu"+"rn =
(t!=3D''&&t=3D=3Da)};s.fsf=3Dfunction(t,a){var =
s=3Dthis;if(s.pt(a,',','isf"+"',t))s.fsg+=3D(s.fsg!=3D''?',':'')+t;return=
 0};s.fs=3Dfunction(x,f){var =
s"+"=3Dthis;s.fsg=3D'';s.pt(x,',','fsf',f);return =
s.fsg};s.c_d=3D'';s.c_gdf=3Df"+"unction(t,a){var =
s=3Dthis;if(!s.num(t))return 1;return 0};s.c_gd=3Dfunc"+"tion(){var =
s=3Dthis,d=3Ds.wd.location.hostname,n=3Ds.cookieDomainPeriods,"+"p;if(d&&=
!s.c_d){n=3Dn?parseInt(n):2;n=3Dn>2?n:2;p=3Dd.lastIndexOf('.');wh"+"ile(p=
>=3D0&&n>1){p=3Dd.lastIndexOf('.',p-1);n--}s.c_d=3Dp>0&&s.pt(d,'.','"+"c_=
gdf',0)?d.substring(p):''}return s.c_d};s.c_r=3Dfunction(k){var =
s=3Dt"+"his;k=3Ds.ape(k);var c=3D' '+s.d.cookie,i=3Dc.indexOf(' =
'+k+'=3D'),e=3Di<0?i:"+"c.indexOf(';',i),v=3Di<0?'':s.epa(c.substring(i+2=
+k.length,e<0?c.leng"+"th:e));return =
v!=3D'[[B]]'?v:''};s.c_w=3Dfunction(k,v,e){var =
s=3Dthis,d=3Ds"+".c_gd(),l=3Ds.cookieLifetime,t;v=3D''+v;l=3Dl?(''+l).toU=
pperCase():'';if("+"e&&l!=3D'SESSION'&&l!=3D'NONE'){t=3D(v!=3D''?parseInt=
(l?l:0):-60);if(t){e=3Dn"+"ew =
Date;e.setTime(e.getTime()+(t*1000))}}if(k&&l!=3D'NONE'){s.d.cooki"+"e=3D=
k+'=3D'+s.ape(v!=3D''?v:'[[B]]')+'; path=3D/;'+(e&&l!=3D'SESSION'?' =
expir"+"es=3D'+e.toGMTString()+';':'')+(d?' domain=3D'+d+';':'');return =
s.c_r(k"+")=3D=3Dv}return 0};s.eh=3Dfunction(o,e,r,f){var =
s=3Dthis,b=3D's_'+e+'_'+s._in"+",n=3D-1,l,i,x;if(!s.ehl)s.ehl=3Dnew =
Array;l=3Ds.ehl;for(i=3D0;i<l.length&&n"+"<0;i++){if(l[i].o=3D=3Do&&l[i].=
e=3D=3De)n=3Di}if(n<0){n=3Di;l[n]=3Dnew =
Object}x=3Dl"+"[n];x.o=3Do;x.e=3De;f=3Dr?x.b:f;if(r||f){x.b=3Dr?0:o[e];x.=
o[e]=3Df}if(x.b){x."+"o[b]=3Dx.b;return b}return =
0};s.cet=3Dfunction(f,a,t,o,b){var =
s=3Dthis,r;"+"if(s.isie&&a.apv>=3D5)eval('try{r=3Ds.m(f)?s[f](a):f(a)}cat=
ch(e){r=3Ds.m("+"t)?s[t](e):t(e)}');else{if(s.ismac&&s.u.indexOf('MSIE =
4')>=3D0)r=3Ds.m("+"b)?s[b](a):b(a);else{s.eh(s.wd,'onerror',0,o);r=3Ds.m=
(f)?s[f](a):f(a)"+";s.eh(s.wd,'onerror',1)}}return =
r};s.gtfset=3Dfunction(e){var s=3Dthis;"+"return s.tfs};s.gtfsoe=3Dnew =
Function('e','var =
s=3Ds_c_il['+s._in+'];s."+"eh(window,\"onerror\",1);s.etfs=3D1;var =
c=3Ds.t();if(c)s.d.write(c);s.e"+"tfs=3D0;return =
true');s.gtfsfb=3Dfunction(a){return =
window};s.gtfsf=3Dfun"+"ction(w){var =
s=3Dthis,p=3Dw.parent,l=3Dw.location;s.tfs=3Dw;if(p&&p.locatio"+"n!=3Dl&&=
p.location.host=3D=3Dl.host){s.tfs=3Dp;return s.gtfsf(s.tfs)}return"+" =
s.tfs};s.gtfs=3Dfunction(){var =
s=3Dthis;if(!s.tfs){s.tfs=3Ds.wd;if(!s.et"+"fs)s.tfs=3Ds.cet('gtfsf',s.tf=
s,'gtfset',s.gtfsoe,'gtfsfb')}return s.t"+"fs};s.ca=3Dfunction(){var =
s=3Dthis,imn=3D's_i_'+s.fun;if(s.d.images&&s.ap"+"v>=3D3&&!s.isopera&&(s.=
ns6<0||s.apv>=3D6.1)){s.ios=3D1;if(!s.d.images[imn"+"]&&(!s.isns||(s.apv<=
4||s.apv>=3D5))){s.d.write('<div style=3D\"display:none;\" =
id=3D\"s_code\"><im'+'g name=3D\"'+imn+"+"'\" height=3D1 width=3D1 =
border=3D0 =
alt=3D\"\"></div>');if(!s.d.images[imn])s.ios"+"=3D0}}};s.mr=3Dfunction(s=
ess,q,ta){var =
s=3Dthis,ns=3Ds.visitorNamespace,unc"+"=3Ds.rep(s.fun,'_','-'),imn=3D's_i=
_'+s.fun,im,b,e,rs=3D'http'+(s.ssl?'s':"+"'')+'://'+(ns?ns:(s.ssl?'102':u=
nc))+'.112.2O7.net/b/ss/'+s.un+'/1/H"+".1-pdv-2/'+sess+'?[AQB]&ndh=3D1'+(=
q?q:'')+(s.q?s.q:'')+'&[AQE]';if(s."+"isie&&!s.ismac){if(s.apv>5.5)rs=3Ds=
.fl(rs,4095);else =
rs=3Ds.fl(rs,2047)"+"}if(s.ios){im=3Ds.wd[imn]?s.wd[imn]:s.d.images[imn];=
if(!im)im=3Ds.wd[im"+"n]=3Dnew =
Image;im.src=3Drs;if(rs.indexOf('&pe=3D')>=3D0&&(!ta||ta=3D=3D'_self'|"+"=
|ta=3D=3D'_top'||(s.wd.name&&ta=3D=3Ds.wd.name))){b=3De=3Dnew =
Date;while(e.getT"+"ime()-b.getTime()<500)e=3Dnew Date}return ''}return =
'<im'+'g sr'+'c=3D"+"\"'+rs+'\" width=3D1 height=3D1 border=3D0 =
alt=3D\"\">'};s.gg=3Dfunction(v){v"+"ar s=3Dthis;return =
s.wd['s_'+v]};s.glf=3Dfunction(t,a){if(t.substring(0"+",2)=3D=3D's_')t=3D=
t.substring(2);var =
s=3Dthis,v=3Ds.gg(t);if(v)s[t]=3Dv};s.gl=3Df"+"unction(v){var =
s=3Dthis;s.pt(v,',','glf',0)};s.gv=3Dfunction(v){var s=3Dt"+"his;return =
s['vpm_'+v]?s['vpv_'+v]:s[v]};s.havf=3Dfunction(t,a){var =
s"+"=3Dthis,b=3Dt.substring(0,4),x=3Dt.substring(4),n=3DparseInt(x),k=3D'=
g_'+t,m=3D"+"'vpm_'+t,q=3Dt,v=3Ds.linkTrackVars,e=3Ds.linkTrackEvents;s[k=
]=3Ds.gv(t);if("+"s.lnk||s.eo){v=3Dv?v+','+s.vl_l:'';if(v&&!s.pt(v,',','i=
sf',t))s[k]=3D''"+";if(t=3D=3D'events'&&e)s[k]=3Ds.fs(s[k],e)}s[m]=3D0;if=
(t=3D=3D'pageURL')q=3D'g';e"+"lse if(t=3D=3D'referrer')q=3D'r';else =
if(t=3D=3D'charSet'){q=3D'ce';if(s[k]&&s."+"em=3D=3D2)s[k]=3D'UTF-8'}else=
 if(t=3D=3D'visitorNamespace')q=3D'ns';else =
if(t=3D=3D"+"'cookieDomainPeriods')q=3D'cdp';else =
if(t=3D=3D'cookieLifetime')q=3D'cl';el"+"se =
if(t=3D=3D'visitVariableProvider')q=3D'vvp';else =
if(t=3D=3D'currencyCode')"+"q=3D'cc';else =
if(t=3D=3D'channel')q=3D'ch';else if(t=3D=3D'campaign')q=3D'v0';els"+"e =
if(s.num(x)) {if(b=3D=3D'prop')q=3D'c'+n;else =
if(b=3D=3D'eVar')q=3D'v'+n;else"+" =
if(b=3D=3D'hier'){q=3D'h'+n;s[k]=3Ds.fl(s[k],255)}}if(s[k]&&t!=3D'linkNam=
e'&"+"&t!=3D'linkType')s.qav+=3D'&'+q+'=3D'+s.ape(s[k]);return =
''};s.hav=3Dfuncti"+"on(){var =
s=3Dthis;s.qav=3D'';s.pt(s.vl_t,',','havf',0);return =
s.qav};s."+"lnf=3Dfunction(t,h){t=3Dt?t.toLowerCase():'';h=3Dh?h.toLowerC=
ase():'';var"+" =
te=3Dt.indexOf('=3D');if(t&&te>0&&h.indexOf(t.substring(te+1))>=3D0)retu"=
+"rn t.substring(0,te);return ''};s.ln=3Dfunction(h){var =
s=3Dthis,n=3Ds.lin"+"kNames;if(n)return s.pt(n,',','lnf',h);return =
''};s.ltdf=3Dfunction(t"+",h){t=3Dt?t.toLowerCase():'';h=3Dh?h.toLowerCas=
e():'';var =
qi=3Dh.indexOf("+"'?');h=3Dqi>=3D0?h.substring(0,qi):h;if(t&&h.substring(=
h.length-(t.leng"+"th+1))=3D=3D'.'+t)return 1;return =
0};s.ltef=3Dfunction(t,h){t=3Dt?t.toLower"+"Case():'';h=3Dh?h.toLowerCase=
():'';if(t&&h.indexOf(t)>=3D0)return 1;ret"+"urn =
0};s.lt=3Dfunction(h){var =
s=3Dthis,lft=3Ds.linkDownloadFileTypes,lef=3D"+"s.linkExternalFilters,lif=
=3Ds.linkInternalFilters;lif=3Dlif?lif:s.wd.lo"+"cation.hostname;h=3Dh.to=
LowerCase();if(s.trackDownloadLinks&&lft&&s.p"+"t(lft,',','ltdf',h))retur=
n =
'd';if(s.trackExternalLinks&&(lef||lif)&"+"&(!lef||s.pt(lef,',','ltef',h)=
)&&(!lif||!s.pt(lif,',','ltef',h)))re"+"turn 'e';return ''};s.lc=3Dnew =
Function('e','var =
s=3Ds_c_il['+s._in+'],"+"b=3Ds.eh(this,\"onclick\");s.lnk=3Ds.co(this);s.=
t();s.lnk=3D0;if(b)return"+" this[b](e);return true');s.bc=3Dnew =
Function('e','var =
s=3Ds_c_il['+s._"+"in+'];if(s.d&&s.d.all&&s.d.all.cppXYctnr)return;s.eo=3D=
e.srcElement?e"+".srcElement:e.target;s.t();s.eo=3D0');s.ot=3Dfunction(o)=
{var a=3Do.type,b"+"=3Do.tagName;return =
(a&&a.toUpperCase?a:b&&b.toUpperCase?b:o.href?'A'"+":'').toUpperCase()};s=
.oid=3Dfunction(o){var =
s=3Dthis,t=3Ds.ot(o),p=3Do.prot"+"ocol,c=3Do.onclick,n=3D'',x=3D0;if(!o.s=
_oid){if(o.href&&(t=3D=3D'A'||t=3D=3D'AREA"+"')&&(!c||!p||p.toLowerCase()=
.indexOf('javascript')<0))n=3Do.href;else"+" =
if(c){n=3Ds.rep(s.rep(s.rep(s.rep(''+c,\"\\r\",''),\"\\n\",''),\"\\t"+"\"=
,''),' ','');x=3D2}else =
if(o.value&&(t=3D=3D'INPUT'||t=3D=3D'SUBMIT')){n=3Do."+"value;x=3D3}else =
if(o.src&&t=3D=3D'IMAGE')n=3Do.src;if(n){o.s_oid=3Ds.fl(n,10"+"0);o.s_oid=
t=3Dx}}return o.s_oid};s.rqf=3Dfunction(t,un){var =
s=3Dthis,e=3Dt."+"indexOf('=3D'),u=3De>=3D0?','+t.substring(0,e)+',':'';r=
eturn =
u&&u.indexOf"+"(','+un+',')>=3D0?s.epa(t.substring(e+1)):''};s.rq=3Dfunct=
ion(un){var =
s"+"=3Dthis,c=3Dun.indexOf(','),v=3Ds.c_r('s_sq'),q=3D'';if(c<0)return =
s.pt(v,'"+"&','rqf',un);return =
s.pt(un,',','rq',0)};s.sqp=3Dfunction(t,a){var =
s=3D"+"this,e=3Dt.indexOf('=3D'),q=3De<0?'':s.epa(t.substring(e+1));s.sqq=
[q]=3D'';"+"if(e>=3D0)s.pt(t.substring(0,e),',','sqs',q);return =
0};s.sqs=3Dfunction"+"(un,q){var s=3Dthis;s.squ[un]=3Dq;return =
0};s.sq=3Dfunction(q){var =
s=3Dthis"+",k=3D's_sq',v=3Ds.c_r(k),x,c=3D0;s.sqq=3Dnew =
Object;s.squ=3Dnew =
Object;s.sqq["+"q]=3D'';s.pt(v,'&','sqp',0);s.pt(s.un,',','sqs',q);v=3D''=
;for(x in s.sq"+"u)s.sqq[s.squ[x]]+=3D(s.sqq[s.squ[x]]?',':'')+x;for(x =
in =
s.sqq)if(x&&"+"s.sqq[x]&&(x=3D=3Dq||c<2)){v+=3D(v?'&':'')+s.sqq[x]+'=3D'+=
s.ape(x);c++}retu"+"rn s.c_w(k,v,0)};s.wdl=3Dnew Function('e','var =
s=3Ds_c_il['+s._in+'],r=3D"+"true,b=3Ds.eh(s.wd,\"onload\"),i,o,oc;if(b)r=
=3Dthis[b](e);for(i=3D0;i<s.d"+".links.length;i++){o=3Ds.d.links[i];oc=3D=
o.onclick?\"\"+o.onclick:\"\";"+"if((oc.indexOf(\"s_gs(\")<0||oc.indexOf(=
\".s_oc(\")>=3D0)&&oc.indexOf"+"(\".tl(\")<0)s.eh(o,\"onclick\",0,s.lc);}=
return r');s.wds=3Dfunction("+"){var =
s=3Dthis;if(s.apv>3&&(!s.isie||!s.ismac||s.apv>=3D5)){if(s.b&&s.b"+".atta=
chEvent)s.b.attachEvent('onclick',s.bc);else =
if(s.b&&s.b.addEv"+"entListener)s.b.addEventListener('click',s.bc,false);=
else s.eh(s.wd"+",'onload',0,s.wdl)}};s.vs=3Dfunction(x){var =
s=3Dthis,v=3Ds.visitorSamplin"+"g,g=3Ds.visitorSamplingGroup,k=3D's_vsn_'=
+s.un+(g?'_'+g:''),n=3Ds.c_r(k),"+"e=3Dnew =
Date,y=3De.getYear();e.setYear(y+10+(y<1900?1900:0));if(v){v*=3D1"+"00;if=
(!n){if(!s.c_w(k,x,e))return 0;n=3Dx}if(n%10000>v)return 0}retur"+"n =
1};s.dyasmf=3Dfunction(t,m){if(t&&m&&m.indexOf(t)>=3D0)return =
1;retur"+"n 0};s.dyasf=3Dfunction(t,m){var =
s=3Dthis,i=3Dt?t.indexOf('=3D'):-1,n,x;if("+"i>=3D0&&m){var =
n=3Dt.substring(0,i),x=3Dt.substring(i+1);if(s.pt(x,',','d"+"yasmf',m))re=
turn n}return 0};s.uns=3Dfunction(){var =
s=3Dthis,x=3Ds.dynami"+"cAccountSelection,l=3Ds.dynamicAccountList,m=3Ds.=
dynamicAccountMatch,n,"+"i;s.un.toLowerCase();if(x&&l){if(!m)m=3Ds.wd.loc=
ation.host;if(!m.toLo"+"werCase)m=3D''+m;l=3Dl.toLowerCase();m=3Dm.toLowe=
rCase();n=3Ds.pt(l,';','dy"+"asf',m);if(n)s.un=3Dn}i=3Ds.un.indexOf(',');=
s.fun=3Di<0?s.un:s.un.substri"+"ng(0,i)};s.t=3Dfunction(){var =
s=3Dthis,trk=3D1,tm=3Dnew =
Date,sed=3DMath&&Math"+".random?Math.floor(Math.random()*10000000000000):=
tm.getTime(),sess=3D"+"'s'+Math.floor(tm.getTime()/10800000)%10+sed,yr=3D=
tm.getYear(),vt=3Dtm."+"getDate()+'/'+tm.getMonth()+'/'+(yr<1900?yr+1900:=
yr)+' '+tm.getHour"+"s()+':'+tm.getMinutes()+':'+tm.getSeconds()+' =
'+tm.getDay()+' =
'+tm."+"getTimezoneOffset(),tfs=3Ds.gtfs(),ta=3D'',q=3D'',qs=3D'';s.uns()=
;if(!s.q){"+"var =
tl=3Dtfs.location,x=3D'',c=3D'',v=3D'',p=3D'',bw=3D'',bh=3D'',j=3D'1.0',k=
=3Ds.c_w"+"('s_cc','true',0)?'Y':'N',hp=3D'',ct=3D'',pn=3D0,ps;if(s.apv>=3D=
4)x=3Dscreen."+"width+'x'+screen.height;if(s.isns||s.isopera){if(s.apv>=3D=
3){j=3D'1.1';"+"v=3Ds.n.javaEnabled()?'Y':'N';if(s.apv>=3D4){j=3D'1.2';c=3D=
screen.pixelDept"+"h;bw=3Ds.wd.innerWidth;bh=3Ds.wd.innerHeight;if(s.apv>=
=3D4.06)j=3D'1.3'}}s."+"pl=3Ds.n.plugins}else =
if(s.isie){if(s.apv>=3D4){v=3Ds.n.javaEnabled()?'Y'"+":'N';j=3D'1.2';c=3D=
screen.colorDepth;if(s.apv>=3D5){bw=3Ds.d.documentElemen"+"t.offsetWidth;=
bh=3Ds.d.documentElement.offsetHeight;j=3D'1.3';if(!s.ism"+"ac&&s.b){s.b.=
addBehavior('#default#homePage');hp=3Ds.b.isHomePage(tl)"+"?\"Y\":\"N\";s=
.b.addBehavior('#default#clientCaps');ct=3Ds.b.connecti"+"onType}}}else =
r=3D''}if(s.pl)while(pn<s.pl.length&&pn<30){ps=3Ds.fl(s.p"+"l[pn].name,10=
0)+';';if(p.indexOf(ps)<0)p+=3Dps;pn++}s.q=3D(x?'&s=3D'+s.ap"+"e(x):'')+(=
c?'&c=3D'+s.ape(c):'')+(j?'&j=3D'+j:'')+(v?'&v=3D'+v:'')+(k?'&k"+"=3D'+k:=
'')+(bw?'&bw=3D'+bw:'')+(bh?'&bh=3D'+bh:'')+(ct?'&ct=3D'+s.ape(ct):'"+"')=
+(hp?'&hp=3D'+hp:'')+(p?'&p=3D'+s.ape(p):'')}if(s.usePlugins)s.doPlug"+"i=
ns(s);var =
l=3Ds.wd.location,r=3Dtfs.document.referrer;if(!s.pageURL)s."+"pageURL=3D=
s.fl(l?l:'',255);if(!s.referrer)s.referrer=3Ds.fl(r?r:'',255)"+";if(s.lnk=
||s.eo){var o=3Ds.eo?s.eo:s.lnk;if(!o)return '';var =
p=3Ds.gv('"+"pageName'),w=3D1,t=3Ds.ot(o),n=3Ds.oid(o),x=3Do.s_oidt,h,l,i=
,oc;if(s.eo&&o=3D"+"=3Ds.eo){while(o&&!n&&t!=3D'BODY'){o=3Do.parentElemen=
t?o.parentElement:o."+"parentNode;if(!o)return =
'';t=3Ds.ot(o);n=3Ds.oid(o);x=3Do.s_oidt}oc=3Do.onc"+"lick?''+o.onclick:'=
';if((oc.indexOf(\"s_gs(\")>=3D0&&oc.indexOf(\".s_"+"oc(\")<0)||oc.indexO=
f(\".tl(\")>=3D0)return =
''}ta=3Do.target;h=3Do.href?o"+".href:'';i=3Dh.indexOf('?');h=3Ds.linkLea=
veQueryString||i<0?h:h.substri"+"ng(0,i);l=3Ds.linkName?s.linkName:s.ln(h=
);t=3Ds.linkType?s.linkType.toL"+"owerCase():s.lt(h);if(t&&(h||l))q+=3D'&=
pe=3Dlnk_'+(t=3D=3D'd'||t=3D=3D'e'?s.ape"+"(t):'o')+(h?'&pev1=3D'+s.ape(h=
):'')+(l?'&pev2=3D'+s.ape(l):'');else =
trk"+"=3D0;if(s.trackInlineStats){if(!p){p=3Ds.gv('pageURL');w=3D0}t=3Ds.=
ot(o);i=3D"+"o.sourceIndex;if(s.gg('objectID')){n=3Ds.gg('objectID');x=3D=
1;i=3D1}if(p&"+"&n&&t)qs=3D'&pid=3D'+s.ape(s.fl(p,255))+(w?'&pidt=3D'+w:'=
')+'&oid=3D'+s.ape"+"(s.fl(n,100))+(x?'&oidt=3D'+x:'')+'&ot=3D'+s.ape(t)+=
(i?'&oi=3D'+i:'')}}if"+"(!trk&&!qs)return '';var =
code=3D'';if(trk&&s.vs(sed))code=3Ds.mr(sess,("+"vt?'&t=3D'+s.ape(vt):'')=
+s.hav()+q+(qs?qs:s.rq(s.un)),ta);s.sq(trk?''"+":qs);s.lnk=3Ds.eo=3Ds.lin=
kName=3Ds.linkType=3Ds.wd.s_objectID=3D'';return =
cod"+"e};s.tl=3Dfunction(o,t,n){var =
s=3Dthis;s.lnk=3Ds.co(o);s.linkType=3Dt;s.lin"+"kName=3Dn;s.t()};s.ssl=3D=
(s.wd.location.protocol.toLowerCase().indexOf("+"'https')>=3D0);s.d=3Ddoc=
ument;s.b=3Ds.d.body;s.n=3Dnavigator;s.u=3Ds.n.userAg"+"ent;s.ns6=3Ds.u.i=
ndexOf('Netscape6/');var =
apn=3Ds.n.appName,v=3Ds.n.appVe"+"rsion,ie=3Dv.indexOf('MSIE =
'),i;if(v.indexOf('Opera')>=3D0||s.u.indexOf"+"('Opera')>=3D0)apn=3D'Oper=
a';s.isie=3D(apn=3D=3D'Microsoft Internet =
Explorer'"+");s.isns=3D(apn=3D=3D'Netscape');s.isopera=3D(apn=3D=3D'Opera=
');s.ismac=3D(s.u.in"+"dexOf('Mac')>=3D0);if(ie>0){s.apv=3DparseInt(i=3Dv=
.substring(ie+5));if(s."+"apv>3)s.apv=3DparseFloat(i)}else =
if(s.ns6>0)s.apv=3DparseFloat(s.u.subs"+"tring(s.ns6+10));else =
s.apv=3DparseFloat(v);s.em=3D0;if(String.fromChar"+"Code){i=3Descape(Stri=
ng.fromCharCode(256)).toUpperCase();s.em=3D(i=3D=3D'%C"+"4%80'?2:(i=3D=3D=
'%U0100'?1:0))}s.un=3Dun;s.uns();s.vl_l=3D'charSet,visitorN"+"amespace,co=
okieDomainPeriods,cookieLifetime,visitVariableProvider,p"+"ageName,pageUR=
L,referrer,currencyCode,purchaseID';s.vl_t=3Ds.vl_l+',c"+"hannel,server,p=
ageType,campaign,state,zip,events,products,linkName,"+"linkType';for(var =
n=3D1;n<51;n++)s.vl_t+=3D',prop'+n+',eVar'+n+',hier'+"+"n;s.vl_g=3Ds.vl_t=
+',trackDownloadLinks,trackExternalLinks,trackInline"+"Stats,linkLeaveQue=
ryString,linkDownloadFileTypes,linkExternalFilter"+"s,linkInternalFilters=
,linkNames';if(pg)s.gl(s.vl_g);if(!ss){s.wds()"+";s.ca()}}",l=3Dwindow.s_=
c_il,n=3Dnavigator,u=3Dn.userAgent,v=3Dn.appVersion,e=3Dv.indexOf('MSIE =
'),m=3Du.indexOf('Netscape6/'),a,i,s;if(l)for(i=3D0;i<l.length;i++){s=3Dl=
[i];s.uns();if(s.un=3D=3Dun)return s;else =
if(s.pt(s.un,',','isf',un)){s=3Ds.co(s);s.un=3Dun;s.uns();return =
s}}if(e>0){a=3DparseInt(i=3Dv.substring(e+5));if(a>3)a=3DparseFloat(i)}el=
se if(m>0)a=3DparseFloat(u.substring(m+10));else =
a=3DparseFloat(v);if(a>=3D5&&v.indexOf('Opera')<0&&u.indexOf('Opera')<0){=
eval(c);return new s_c(un,pg,ss)}else s=3Ds_c2f(c);return =
s(un,pg,ss)}com.mtvi.reporting.Dispatcher=3Dfunction(){try{this.version=3D=
"2.0";this.sendResults=3Dnull;this.widget=3Dcom.mtvi.reporting.Widget;thi=
s.widget.init();this.setAccountVars(com.mtvi.reporting.Account);}catch(e)=
{}};com.mtvi.reporting.Dispatcher.prototype=3D{send:function(){try{if(com=
.mtvi.util.isDefined(this.widget.extCode.un)){var =
hcode=3Dthis.widget.extCode.t();return =
true;}}catch(e){try{com.mtvi.logger.JsError(e);return =
false;}catch(e){return false;}}},getNewRepeat:function(){try{return =
this.widget.extCode.getNewRepeat();}catch(e){}},setNewRepeat:function(){t=
ry{this.widget.setAttribute("prop41",this.widget.extCode.getNewRepeat());=
}catch(e){}},setAccountVars:function(o){try{this.widget.setAccount(o.name=
);this.widget.setAttribute("dynamicAccountSelection",o.dynamic);this.widg=
et.setAttribute("dynamicAccountList",o.list);this.widget.setAttribute("li=
nkInternalFilters",o.filters);for(var i in =
o){this.widget.setAttribute(i,o[i]);};}catch(e){}},setValues:function(o){=
try{for(var i in =
o){this.widget.setAttribute(i,o[i]);}}catch(e){}},config:function(){try{t=
his.setAccountVars(com.mtvi.reporting.Account);}catch(e){}try{this.setVal=
ues(com.mtvi.reporting.Map());}catch(e){}try{this.setValues(com.mtvi.repo=
rting.Defaultvalues());}catch(e){}},sendCall:function(){try{try{this.setV=
alues(com.mtvi.reporting.Map());}catch(e){}try{this.setNewRepeat();}catch=
(e){}try{this.setValues(com.mtvi.config.SectionSetup);}catch(e){}try{com.=
mtvi.reporting.ga.makeCall("urchin",this.widget.getAttribute("pageName"))=
;}catch(e){}return =
this.send();}catch(e){try{com.mtvi.logger.JsError(e);return =
false;}catch(e){return false;}}},setDefaultData:function(){try{var =
ch=3D(typeof =
this.getAttribute("channel")!=3D"undefined")?this.getAttribute("channel")=
:false;var =
pn=3Dlocation.pathname.substring(1)+location.search;if(pn.charAt(pn.lengt=
h-1)=3D=3D"/")pn=3Dpn.substring(0,pn.length-1);if(ch&&pn.substring(0,ch.l=
ength)!=3Dch)pn=3Dch+"/"+pn;this.widget.setAttribute("pageName",pn);this.=
widget.setAttribute("hier1",pn);}catch(e){try{com.mtvi.logger.JsError(e);=
}catch(e){}}},sendThirdPartyCall:function(){try{this.setAccountVars(com.m=
tvi.config.Get);this.setThirdPartyData();try{this.setValues(com.mtvi.repo=
rting.Map());}catch(e){}this.send();}catch(e){try{com.mtvi.logger.JsError=
(e);}catch(e){}}},sendLinkEvent:function(data){try{this.config();this.set=
Attribute('linkType',data.linkType?data.linkType:"o");this.setAttribute('=
linkName',data.linkName);this.setAttribute('lnk',data.lnk?this.widget.ext=
Code.co(data.lnk):true);this.send();}catch(e){try{com.mtvi.logger.JsError=
(e);}catch(e){}}},getBaseUrl:function(){try{this.config();var =
vendorUrl=3D".112.2o7.net/b/ss/";return("http"+(this.widget.extCode.ssl?'=
s':'')+"://"+this.widget.extCode.un+vendorUrl+this.widget.extCode.un+"/1/=
");}catch(e){try{com.mtvi.logger.JsError(e);}catch(e){}}},sendFailedSearc=
h:function(v){try{if(com.mtvi.util.isDefined(v)){var =
aImg=3Ddocument.createElement('img');aImg.src=3Dthis.getBaseUrl()+"EMAIL?=
pageName=3DFAILED+SEARCH&v4=3D"+v;aImg.id=3D"failedSearchCall";document.g=
etElementsByTagName('body')[0].appendChild(aImg);}}catch(e){try{com.mtvi.=
logger.JsError(e);}catch(e){}}},replacePathSection:function(path,newValue=
,replaceAt){try{var =
pathParts=3D(path.charAt(0)!=3D"/")?path.split("/"):path.substring(1).spl=
it("/");if(isNaN(replaceAt)||replaceAt>=3DpathParts.length){return =
false;}pathParts[replaceAt]=3DnewValue;var =
newPath=3DpathParts.join("/");return =
newPath;}catch(e){try{com.mtvi.logger.JsError(e);return =
false;}catch(e){return =
false;}}},deletePathSection:function(path,removeAt){try{var =
pathParts=3D(path.charAt(0)!=3D"/")?path.split("/"):path.substring(1).spl=
it("/");if(isNaN(removeAt)||removeAt>=3DpathParts.length){return =
false;}pathParts.splice(removeAt,1);var =
newPath=3DpathParts.join("/");return =
newPath;}catch(e){try{com.mtvi.logger.JsError(e);return =
false;}catch(e){return =
false;}}},getPathSection:function(path,getAt){try{var =
pathParts=3D(path.charAt(0)!=3D"/")?path.split("/"):path.substring(1).spl=
it("/");if(isNaN(getAt)||getAt>=3DpathParts.length){return =
false;};return =
pathParts[getAt];}catch(e){try{com.mtvi.logger.JsError(e);return =
false;}catch(e){return =
false;}}},clearProps:function(path,removeAt){try{for(var =
p=3D1;p<=3D50;p++){this.widget.setAttribute("prop"+p,"");}}catch(e){try{c=
om.mtvi.logger.JsError(e);return false;}catch(e){return =
false;}}},registerLinks:function(){var =
links=3Ddocument.getElementsByTagName("a");var =
domain=3Dlocation.hostname;for(var l=3D0;l<links.length;l++){var =
thisLink=3Dlinks[l];if(typeof thisLink.onclick!=3D"function"){var =
linkType=3D(thisLink.href.indexOf(domain)!=3D-1||thisLink.href.charAt(0)=3D=
=3D"/"||thisLink.href.charAt(0)=3D=3D"#")?"o":"e";thisLink.onclick=3Dbind=
LinkEvent(this,thisLink,linkType);};};try{}catch(e){try{com.mtvi.logger.J=
sError(e);return false;}catch(e){return =
false;}}},setAttribute:function(k,v){this.widget.setAttribute(k,v);},getA=
ttribute:function(k){return =
this.widget.getAttribute(k);}};com.mtvi.metadata=3D{getSections:function(=
){var =
retVal=3D"";try{retVal=3Dself.location.pathname;if(com.mtvi.util.isDefine=
d(retVal)&&typeof(retVal)=3D=3D=3D"string"){if(retVal.lastIndexOf("/")=3D=
=3D(retVal.length-1)){retVal+=3D"index";}if(retVal.indexOf("/")=3D=3D0){r=
etVal=3DretVal.substring(1);}if(retVal.indexOf(".")!=3D-1){retVal=3DretVa=
l.substring(0,retVal.indexOf("."));}}}catch(e){try{com.mtvi.logger.JsErro=
r(e);return false;}catch(e){return false;}}return =
retVal;}};com.mtvi.ads.AdManager=3Dnew =
function(){this.init=3Dfunction(){};this.properties=3D{protocol:"http://"=
,server:"ad.doubleclick.net",dartSite:self.location.hostname.substring(se=
lf.location.hostname.indexOf(".")+1,self.location.hostname.lastIndexOf(".=
")),media:"",tileCounter:0,pageName:"",zone:"",sectionArray:new =
Array(),namesValuesObj:{},debug:false,ord:Math.getRnd(100000000000000000,=
999999999999999999)};this.DART_SITE_DOMAIN=3D".mtvi";com.mtvi.util.setPro=
perties(this);this.adObjects=3Dnew =
Array();this.getNewAd=3Dfunction(a_width,a_height,a_media,a_dartSite,a_ga=
teway,a_pTileFlag,a_protocol,a_server,a_zone){this.adObjects[this.adObjec=
ts.length]=3Dnew =
this.adObject(a_width,a_height,a_media,a_dartSite,a_gateway,a_pTileFlag,a=
_protocol,a_server,a_zone);com.mtvi.util.setProperties(this.adObjects[thi=
s.adObjects.length-1]);return =
this.adObjects[this.adObjects.length-1];};this.placeNewAd=3Dfunction(a_wi=
dth,a_height,a_media,a_dartSite,a_gateway,a_pTileFlag,a_protocol,a_server=
,a_zone){return =
jackass_houseads(a_width,a_height);this.getNewAd(a_width,a_height,a_media=
,a_dartSite,a_gateway,a_pTileFlag,a_protocol,a_server,a_zone);this.adObje=
cts[this.adObjects.length-1].write();};this.populate=3Dfunction(){var =
path=3Dself.location.pathname;try{if(self.location.search.indexOf("url=3D=
")!=3D-1){path=3Dself.location.search.substring(self.location.search.inde=
xOf("url=3D")+4);if(path.indexOf("&")!=3D-1){path=3Dpath.substring(0,path=
.indexOf("&"));}if(path.length<=3D0){path=3Dself.location.pathname;}}}cat=
ch(e){}this.setUrl(path);};this.setUrl=3Dfunction(a_path){if(com.mtvi.uti=
l.isDefined(a_path)&&typeof(a_path)=3D=3D=3D"string"&&a_path.lastIndexOf(=
"/")!=3D(a_path.length-1)){if(a_path.indexOf("/")=3D=3D0){this.setSection=
Array(a_path.substring(1).split("/"))}else{this.setSectionArray(a_path.sp=
lit("/"))}var =
tempPageName=3D(com.mtvi.util.isDefined(this.getSectionArray())&&this.get=
SectionArray().length>0)?this.getSectionArray().pop():"";tempPageName=3D(=
tempPageName.indexOf(".")!=3D-1)?tempPageName.substring(0,tempPageName.in=
dexOf(".")):tempPageName;if(!com.mtvi.util.isDefined(tempPageName)){tempP=
ageName=3D"index";}this.setPageName(tempPageName);this.setZone(tempPageNa=
me);}};this.getOrdVal=3Dfunction(){var =
retVal=3Dthis.getOrd();try{if(self.location.search.indexOf("ord=3D")!=3D-=
1){retVal=3Dself.location.search.substring(self.location.search.indexOf("=
ord=3D")+4);if(retVal.indexOf("&")!=3D-1){retVal=3DretVal.substring(0,ret=
Val.indexOf("&"));}if(retVal.length<=3D0){retVal=3Dthis.getOrd();}}}catch=
(e){}return =
retVal;};this.populateNamesValuesObj=3Dfunction(a_obj,a_overwrite){if(com=
.mtvi.util.isDefined(a_obj)&&typeof(a_obj)=3D=3D=3D"object"){if(com.mtvi.=
util.isDefined(this.getNamesValuesObj())){if(com.mtvi.util.isDefined(a_ov=
erwrite)&&a_overwrite=3D=3D=3Dtrue){}else{for(var i in =
this.getNamesValuesObj()){a_obj[i]=3Dthis.getNamesValuesObj()[i];}}}this.=
setNamesValuesObj(a_obj);}else{this.setNamesValuesObj(new function(){var =
names=3Dnew Array();var values=3Dnew Array();try{var =
tempQueryString=3Dself.location.search.substring(1);var =
paramsArray=3DtempQueryString.split("&");for(var =
i=3D0;i<paramsArray.length;i++){if(paramsArray[i].indexOf("mockupMode")!=3D=
-1||paramsArray[i].indexOf("url")!=3D-1||paramsArray[i].indexOf("ord")!=3D=
-1){}else{for(var =
j=3D0;j<tempQueryString.split("&")[i].split("=3D").length;j=3Dj+2){names.=
push(tempQueryString.split("&")[i].split("=3D")[j]);values.push(tempQuery=
String.split("&")[i].split("=3D")[j+1]);}}}}catch(e){}for(var =
k=3D0;k<names.length;k++){this[names[k]]=3D(com.mtvi.util.isDefined(value=
s[k]))?values[k]:"";}});}};this.adObject=3Dfunction(a_width,a_height,a_me=
dia,a_dartSite,a_gateway,a_pTileFlag,a_protocol,a_server,a_zone){this.pro=
perties=3D{protocol:(com.mtvi.util.isDefined(a_protocol))?a_protocol:com.=
mtvi.ads.AdManager.getProtocol(),server:(com.mtvi.util.isDefined(a_server=
))?a_server:com.mtvi.ads.AdManager.getServer(),media:(com.mtvi.util.isDef=
ined(a_media))?a_media:com.mtvi.ads.AdManager.getMedia(),dartSite:(com.mt=
vi.util.isDefined(a_dartSite))?a_dartSite:com.mtvi.ads.AdManager.getDartS=
ite(),zone:(com.mtvi.util.isDefined(a_zone))?a_zone:com.mtvi.ads.AdManage=
r.getZone(),width:(com.mtvi.util.isDefined(a_width))?a_width:"",height:(c=
om.mtvi.util.isDefined(a_height))?a_height:"",gateway:(com.mtvi.util.isDe=
fined(a_gateway))?a_gateway:"",gatewayOverride:(com.mtvi.util.isDefined(a=
_gateway))?true:false,uVal:"u=3D",pTileFlag:(com.mtvi.util.isDefined(a_pT=
ileFlag))?a_pTileFlag:false,ord:com.mtvi.ads.AdManager.getOrdVal()};this.=
getTile=3Dfunction(){com.mtvi.ads.AdManager.setTileCounter(com.mtvi.ads.A=
dManager.getTileCounter()+1);return =
com.mtvi.ads.AdManager.getTileCounter();};this.getAdURL=3Dfunction(){var =
retVal=3D'';var u_sections=3D'';var =
u_namesValues=3D'';retVal+=3Dthis.getProtocol();retVal+=3Dthis.getServer(=
);retVal+=3D'/'+this.getMedia();retVal+=3D'/'+this.getDartSite()+com.mtvi=
.ads.AdManager.DART_SITE_DOMAIN;retVal+=3D'/'+this.getZone()+';';retVal+=3D=
'pagename=3D'+com.mtvi.ads.AdManager.getPageName()+';';if(this.getGateway=
Override()=3D=3D=3Dfalse){this.setGateway((com.mtvi.util.isDefined(com.mt=
vi.ads.AdManager.getSectionArray())&&com.mtvi.ads.AdManager.getSectionArr=
ay().length>0)?com.mtvi.ads.AdManager.getSectionArray()[0]:'');}retVal+=3D=
'gateway=3D'+this.getGateway()+';';for(var =
i=3D1;i<com.mtvi.ads.AdManager.getSectionArray().length;i++){retVal+=3D's=
ection_'+i+'=3D'+com.mtvi.ads.AdManager.getSectionArray()[i]+';';u_sectio=
ns+=3D'|section_'+i+'-'+com.mtvi.ads.AdManager.getSectionArray()[i];}for(=
var i in =
com.mtvi.ads.AdManager.getNamesValuesObj()){retVal+=3Di+'=3D'+com.mtvi.ad=
s.AdManager.getNamesValuesObj()[i]+';';u_namesValues+=3D'|'+i+'-'+com.mtv=
i.ads.AdManager.getNamesValuesObj()[i];}retVal+=3Dthis.getUVal()+'|pagena=
me-'+com.mtvi.ads.AdManager.getPageName();retVal+=3D'|gateway-'+this.getG=
ateway();retVal+=3Du_sections;retVal+=3Du_namesValues;retVal+=3D';';retVa=
l+=3D'sz=3D'+this.getWidth()+'x'+this.getHeight()+';';retVal+=3D(this.get=
PTileFlag()=3D=3D=3Dtrue)?'ptile=3D'+this.getTile()+';':'tile=3D'+this.ge=
tTile()+';';retVal+=3D'ord=3D'+this.getOrd()+'?';if(this.isOK()=3D=3D=3Df=
alse){retVal=3D"";}return retVal;};this.write=3Dfunction(){var =
writeVal=3D'';try{if(this.isOK()=3D=3D=3Dtrue){if(self.location.search.in=
dexOf("mockupMode=3Dtrue")=3D=3D-1){writeVal+=3Dthis.getTagOpen();}writeV=
al+=3Dthis.getAdURL();if(self.location.search.indexOf("mockupMode=3Dtrue"=
)=3D=3D-1){writeVal+=3Dthis.getTagClose();}}}catch(e){}document.write(wri=
teVal);};this.getTagOpen=3Dfunction(){var =
retVal=3D'';if(this.getMedia()=3D=3D"adj"){retVal+=3D'<scr'+'ipt =
type=3D"text/javascript" src=3D"';}else =
if(this.getMedia()=3D=3D"adi"){retVal+=3D'<ifr'+'ame frameborder=3D"no" =
border=3D"0" marginwidth=3D"0" marginheight=3D"0" =
scrolling=3D"no"';retVal+=3D' =
width=3D"';retVal+=3Dthis.getWidth();retVal+=3D'"';retVal+=3D' =
height=3D"';retVal+=3Dthis.getHeight();retVal+=3D'"';retVal+=3D' =
src=3D"';}else if(this.getMedia()=3D=3D"ad"){retVal+=3D'<img =
border=3D"0" alt=3D""';retVal+=3D' =
width=3D"';retVal+=3Dthis.getWidth();retVal+=3D'"';retVal+=3D' =
height=3D"';retVal+=3Dthis.getHeight();retVal+=3D'"';retVal+=3D' =
src=3D"';}return retVal;};this.getTagClose=3Dfunction(){var =
retVal=3D'';if(this.getMedia()=3D=3D"adj"){retVal+=3D'"><\/scr'+'ipt>';}e=
lse if(this.getMedia()=3D=3D"adi"){retVal+=3D'"><\/ifr'+'ame>';}else =
if(this.getMedia()=3D=3D"ad"){retVal+=3D'"\/>';}return =
retVal;};this.isOK=3Dfunction(){var =
retVal=3Dtrue;if(!com.mtvi.util.isDefined(this.getZone())){if(com.mtvi.ad=
s.AdManager.getDebug()=3D=3D=3Dtrue){com.mtvi.debug("Error - Missing =
zone value in ad =
URL!");}retVal=3Dfalse;}if(this.isSizeOK()=3D=3D=3Dfalse){if(com.mtvi.ads=
.AdManager.getDebug()=3D=3D=3Dtrue){com.mtvi.debug("Error - Wrong or =
missing size value in ad =
URL!");}retVal=3Dfalse;}if(this.isMediaOK()=3D=3D=3Dfalse){if(com.mtvi.ad=
s.AdManager.getDebug()=3D=3D=3Dtrue){com.mtvi.debug("Error - Wrong or =
missing media value in ad =
URL!");}retVal=3Dfalse;}if(!com.mtvi.util.isDefined(this.getDartSite())){=
if(com.mtvi.ads.AdManager.getDebug()=3D=3D=3Dtrue){com.mtvi.debug("Error =
- Missing dart site value in ad =
URL!");}retVal=3Dfalse;}if(this.is_pTileFlagOK()=3D=3D=3Dfalse){if(com.mt=
vi.ads.AdManager.getDebug()=3D=3D=3Dtrue){com.mtvi.debug("Error - Wrong =
or missing pTile usage flag value in ad URL!");}retVal=3Dfalse;}return =
retVal;};this.is_pTileFlagOK=3Dfunction(){var =
retVal=3Dfalse;if(com.mtvi.util.isDefined(this.getPTileFlag())&&typeof(th=
is.getPTileFlag())=3D=3D"boolean"){retVal=3Dtrue;}return =
retVal;};this.isMediaOK=3Dfunction(){var retVal=3Dfalse;var =
okMedia=3Dnew Array("ad","adj","adx","pfadx","adi");for(var =
i=3D0;i<okMedia.length;i++){if(this.getMedia()=3D=3DokMedia[i]){retVal=3D=
true;break;}}return retVal;};this.isSizeOK=3Dfunction(){var =
retVal=3Dfalse;if(com.mtvi.util.isDefined(this.getWidth())&&!isNaN(this.g=
etWidth())=3D=3D=3Dtrue&&!isNaN(this.getHeight())=3D=3D=3Dtrue){retVal=3D=
true;}return retVal;};return =
this;};this.populate();this.populateNamesValuesObj();};com.mtvi.reporting=
.ga=3D{makeCall:function(id,uri){try{var =
_div=3Ddocument.getElementById(id);var _wl=3Dwindow.location;var =
_uri=3Duri.substring(0,1)!=3D"/"?"/"+uri:uri;var =
_refer=3Ddocument.referrer;var =
_ga=3D"//media.mtvnservices.com/metrics/ga.html?uri=3D";_refer=3D"&ref=3D=
"+escape(_refer);if(_div){var =
newChild=3Ddocument.createElement("iframe");newChild.src=3D_wl.protocol+_=
ga+_wl.hostname+_uri+_refer;_div.appendChild(newChild);}}catch(e){com.mtv=
i.logger.JsError(e);}}};

/* Do not change above this line */=20

/*=20
either revert the version of this, or remove this from above when ready =
to serve real ads:
return jackass_houseads(a_width,a_height);
also remove the below arrays and functions
*/
house_lks =3D new Array('http://jackassdvd.seenon.com', =
'http://jackassthegame.com', =
'http://www.comedycentral.com/shows/reno_911/index.jhtml');
house_ads_160x60 =3D new =
Array('DVD_160x60.jpg','Reno911_160x600_Jan16.jpg','Reno911_160x600_Wedne=
sday.jpg');
house_lks_160x60 =3D new Array(0,2,2);
house_ads_728x90 =3D new Array('DVD_728x90.jpg');
house_lks_728x90 =3D new Array(0);
house_ads_300x250 =3D new =
Array('GAME_300x250.jpg','DVD_300x250.jpg','GAME2_300x250.jpg','GAME3_300=
x250.jpg','SHOP_300x250.jpg','Reno911_300x250_Jan16.jpg','Reno911_300x250=
_Wednesday.jpg');
house_lks_300x250 =3D new Array(1,0,1,1,0,2,2);
// called from placeNewAd above
function jackass_houseads(width, height) {
	eval('house_ads_count =3D house_ads_' + width + 'x' + height + '.length =
- 1');
	ad_index =3D Math.round(Math.random()*house_ads_count);
	eval('ad_src =3D house_ads_' + width + 'x' + height + '[ad_index]');
	eval('ad_ind =3D house_lks_' + width + 'x' + height + '[ad_index]');
	ad_lnk =3D house_lks[ad_ind];
	document.write('<a href=3D"' + ad_lnk + '" target=3D"_blank"><img =
src=3D"/images/house_ads/' + ad_src + '" /></a>');
}

com.mtvi.reporting.Account=3D{
	name:'viajackassworld',
	dynamicAccountSelection:'true',
	dynamicAccountList:'viajackassworlddev=3Dmtv-d,mtv-q',
  	trackExternalLinks:true,
   	trackInlineStats:true
};

try{
	var pageName=3Dlocation.pathname + escape(location.search);
	var dispatcher=3Dnew com.mtvi.reporting.Dispatcher();
	dispatcher.setDefaultData();
	dispatcher.setAttribute('pageName',pageName);
	dispatcher.setAttribute('hier1',pageName);
	dispatcher.sendCall();
}catch(e){
}

------=_NextPart_000_0013_01C867E3.D97C53A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.jackassworld.com/javascripts/urlparser.js?1199745950

/** =0A=
* @projectDescription 	Poly9's polyvalent URLParser class=0A=
*=0A=
* @author	Denis Laprise - denis@poly9.com - http://poly9.com=0A=
* @version	0.1 =0A=
* @namespace	Poly9=0A=
*=0A=
* Usage: var p =3D new =
Poly9.URLParser('http://user:password@poly9.com/pathname?arguments=3D1#fr=
agment');=0A=
* p.getHost() =3D=3D 'poly9.com';=0A=
* p.getProtocol() =3D=3D 'http';=0A=
* p.getPathname() =3D=3D '/pathname';=0A=
* p.getQuerystring() =3D=3D 'arguments=3D1';=0A=
* p.getFragment() =3D=3D 'fragment';=0A=
* p.getUsername() =3D=3D 'user';=0A=
* p.getPassword() =3D=3D 'password';=0A=
*=0A=
* See the unit test file for more examples.=0A=
* URLParser is freely distributable under the terms of an MIT-style =
license.=0A=
*/=0A=
=0A=
if (typeof Poly9 =3D=3D 'undefined')=0A=
 var Poly9 =3D {};=0A=
=0A=
/**=0A=
 * Creates an URLParser instance=0A=
 *=0A=
 * @classDescription	Creates an URLParser instance=0A=
 * @return {Object}	return an URLParser object=0A=
 * @param {String} url	The url to parse=0A=
 * @constructor=0A=
 * @exception {String}  Throws an exception if the specified url is =
invalid=0A=
 */=0A=
Poly9.URLParser =3D function(url) {=0A=
 this._fields =3D {'Username' : 4, 'Password' : 5, 'Port' : 7, =
'Protocol' : 2, 'Host' : 6, 'Pathname' : 8, 'URL' : 0, 'Querystring' : =
9, 'Fragment' : 10};=0A=
 this._values =3D {};=0A=
 this._regex =3D null;=0A=
 this.version =3D 0.1;=0A=
 this._regex =3D =
/^((\w+):\/\/)?((\w+):?(\w+)?@)?([^\/\?:]+):?(\d+)?(\/?[^\?#]+)?\??([^#]+=
)?#?(\w*)/;=0A=
 for(var f in this._fields)=0A=
  this['get' + f] =3D this._makeGetter(f);=0A=
 if (typeof url !=3D 'undefined')=0A=
  this._parse(url);=0A=
}=0A=
 =0A=
/**=0A=
 * @method =0A=
 * @param {String} url	The url to parse=0A=
 * @exception {String} 	Throws an exception if the specified url is =
invalid=0A=
 */=0A=
Poly9.URLParser.prototype.setURL =3D function(url) {=0A=
  this._parse(url);=0A=
}=0A=
=0A=
Poly9.URLParser.prototype._initValues =3D function() {=0A=
   for(var f in this._fields)=0A=
   this._values[f] =3D '';=0A=
}=0A=
=0A=
Poly9.URLParser.prototype._parse =3D function(url) {=0A=
  this._initValues();=0A=
  var r =3D this._regex.exec(url);=0A=
  if (!r) throw "DPURLParser::_parse -> Invalid URL"=0A=
  for(var f in this._fields) if (typeof r[this._fields[f]] !=3D =
'undefined')=0A=
   this._values[f] =3D r[this._fields[f]];=0A=
}=0A=
=0A=
Poly9.URLParser.prototype._makeGetter =3D function(field) {=0A=
 return function() {=0A=
  return this._values[field];=0A=
 }=0A=
}=0A=
=0A=

------=_NextPart_000_0013_01C867E3.D97C53A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.jackassworld.com/javascripts/jaw.js

=0A=
jaw =3D new function () {=0A=
	=0A=
	/* public functions */=0A=
	this.init =3D new function () {	=0A=
	}=0A=
	=0A=
	this.lightsOn =3D function () {=0A=
		return jaw.screen.lightsOn();=0A=
	}=0A=
	=0A=
	this.lightsOff =3D function () {=0A=
		return jaw.screen.lightsOff();=0A=
	}=0A=
}=0A=
=0A=
jaw.screen =3D new function () {=0A=
=0A=
	/* public functions */=0A=
	this.init =3D function () {=0A=
		Event.observe(window, 'load', jaw.screen.setup);=0A=
		Event.observe(window, 'resize', jaw.screen.resize);=0A=
	}=0A=
	=0A=
	this.setup =3D function () {=0A=
		var screenObj =3D document.createElement('div');=0A=
		screenObj.id =3D 'pageScreen';=0A=
		document.body.appendChild(screenObj);=0A=
		Element.setStyle(screenObj, {display: 'none'});=0A=
		sizeScreen();=0A=
	}=0A=
	=0A=
	this.lightsOn =3D function () {=0A=
		sizeScreen();=0A=
		var s =3D $('pageScreen');=0A=
		Effect.Fade(s, {duration: 1, from: 0.9, to: 0});=0A=
	}=0A=
	=0A=
	this.lightsOff =3D function () {=0A=
		sizeScreen();=0A=
		var s =3D $('pageScreen');=0A=
		Effect.Appear(s, {duration: 1, from: 0, to: 0.9});=0A=
	}=0A=
	=0A=
	this.resize =3D function () {=0A=
		sizeScreen();=0A=
	}=0A=
	=0A=
	/* private functions */=0A=
	function appendLoad (newMethod) {=0A=
		var current =3D window.onload;=0A=
		if (typeof window.onload !=3D 'function') {=0A=
			window.onload =3D newMethod;=0A=
		} else {=0A=
			window.onload =3D function () {=0A=
				if (current) { current(); }=0A=
				newMethod();=0A=
			}=0A=
		}=0A=
	}=0A=
	=0A=
	function positionPlayer () {=0A=
		var m =3D $('mediaplayer');=0A=
		var my =3D m.offsetTop;=0A=
		var mx =3D (document.documentElement.offsetWidth - 900) / 2;=0A=
		if (mx < 0) { mx =3D 0; }=0A=
		Element.setStyle(m, {position: 'absolute', top: my+'px', left: =
mx+'px', zIndex: 999999});=0A=
	}=0A=
	=0A=
	function sizeScreen () {=0A=
		var s =3D $('pageScreen');=0A=
		var w =3D document.documentElement.offsetWidth;=0A=
//		if (w < document.documentElement.scrollWidth) { w =3D =
document.documentElement.scrollWidth; }=0A=
		var h =3D document.documentElement.scrollHeight;=0A=
		if (h < document.body.scrollHeight) { h =3D =
document.body.scrollHeight; }=0A=
		if (h < document.documentElement.offsetHeight) { h =3D =
document.documentElement.offsetHeight; }=0A=
		Element.setStyle(s, {width: w + "px", height: h + "px"});=0A=
	}=0A=
}=0A=
=0A=
jaw.ads =3D new function () {=0A=
=0A=
	/* private variables */=0A=
	var written =3D false;=0A=
	var ad_account =3D {=0A=
		publisher: false,=0A=
		application: false=0A=
	};=0A=
=0A=
	/* public (privileged) functions */=0A=
	this.init =3D function () {=0A=
		if (written =3D=3D=3D false) {=0A=
			if (ad_account.publisher !=3D=3D false && ad_account.application =
!=3D=3D false) {=0A=
				document.write('<scr' + 'ipt =
src=3D"http://adcontent.videoegg.com/eap/apps/apps_api/banner.js?rand=3D'=
 + Math.round(Math.random()*10000000) + '"></scr' + 'ipt>');=0A=
				written =3D true;=0A=
			}=0A=
		}=0A=
	}=0A=
	=0A=
	this.setPublisher =3D function (pub) {=0A=
		ad_account.publisher =3D pub;=0A=
	}=0A=
	=0A=
	this.setApplication =3D function (app) {=0A=
		ad_account.application =3D app;=0A=
	}=0A=
	=0A=
	this.placeAd =3D function (type, fallback) {=0A=
		switch (type.toLowerCase()) {=0A=
			case "banner":=0A=
				placeBanner();=0A=
				break;=0A=
			case "companion":=0A=
				placeCompanion(fallback);=0A=
				break;=0A=
			case "skyscraper":=0A=
				placeSkyscraper(fallback);=0A=
				break;=0A=
		}=0A=
	}=0A=
=0A=
	/* private functions */=0A=
	function placeBanner () {=0A=
		if (written =3D=3D=3D true) {=0A=
			VE_embedBanner(ad_account);=0A=
		}=0A=
	}=0A=
	=0A=
	function placeCompanion (fallback) {=0A=
		VE_initAdManager(ad_account);=0A=
		VE_embedCompanionAd(300, 250, fallback);=0A=
	}=0A=
=0A=
	function placeSkyscraper (fallback) {=0A=
		VE_initAdManager(ad_account);=0A=
		VE_embedCompanionAd(120, 600, fallback);=0A=
	}=0A=
=0A=
}=0A=
=0A=
jaw.ads.setPublisher("testPublisher");=0A=
jaw.ads.setApplication("testApplication");=0A=

------=_NextPart_000_0013_01C867E3.D97C53A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://widgets.flux.com/-/Runtime.js

if (typeof(Function.__typeName) =3D=3D=3D 'undefined') {
//----------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------
// MicrosoftAjax.js
Function.__typeName=3D"Function";Function.__class=3Dtrue;Function.createC=
allback=3Dfunction(b,a){return function(){var =
e=3Darguments.length;if(e>0){var d=3D[];for(var =
c=3D0;c<e;c++)d[c]=3Darguments[c];d[e]=3Da;return b.apply(this,d)}return =
b.call(this,a)}};Function.createDelegate=3Dfunction(a,b){return =
function(){return =
b.apply(a,arguments)}};Function.emptyFunction=3DFunction.emptyMethod=3Dfu=
nction(){};Function._validateParams=3Dfunction(e,c){var =
a;a=3DFunction._validateParameterCount(e,c);if(a){a.popStackFrame();retur=
n a}for(var b=3D0;b<e.length;b++){var =
d=3Dc[Math.min(b,c.length-1)],f=3Dd.name;if(d.parameterArray)f+=3D"["+(b-=
c.length+1)+"]";a=3DFunction._validateParameter(e[b],d,f);if(a){a.popStac=
kFrame();return a}}return =
null};Function._validateParameterCount=3Dfunction(e,a){var =
c=3Da.length,d=3D0;for(var =
b=3D0;b<a.length;b++)if(a[b].parameterArray)c=3DNumber.MAX_VALUE;else =
if(!a[b].optional)d++;if(e.length<d||e.length>c){var =
f=3DError.parameterCount();f.popStackFrame();return f}return =
null};Function._validateParameter=3Dfunction(c,a,h){var =
b,g=3Da.type,l=3D!!a.integer,k=3D!!a.domElement,m=3D!!a.mayBeNull;b=3DFun=
ction._validateParameterType(c,g,l,k,m,h);if(b){b.popStackFrame();return =
b}var =
e=3Da.elementType,f=3D!!a.elementMayBeNull;if(g=3D=3D=3DArray&&typeof =
c!=3D=3D"undefined"&&c!=3D=3Dnull&&(e||!f)){var =
j=3D!!a.elementInteger,i=3D!!a.elementDomElement;for(var =
d=3D0;d<c.length;d++){var =
n=3Dc[d];b=3DFunction._validateParameterType(n,e,j,i,f,h+"["+d+"]");if(b)=
{b.popStackFrame();return b}}}return =
null};Function._validateParameterType=3Dfunction(b,c,k,j,h,d){var =
a;if(typeof b=3D=3D=3D"undefined")if(h)return =
null;else{a=3DError.argumentUndefined(d);a.popStackFrame();return =
a}if(b=3D=3D=3Dnull)if(h)return =
null;else{a=3DError.argumentNull(d);a.popStackFrame();return =
a}if(c&&c.__enum){if(typeof =
b!=3D=3D"number"){a=3DError.argumentType(d,Object.getType(b),c);a.popStac=
kFrame();return a}if(b%1=3D=3D=3D0){var =
e=3Dc.prototype;if(!c.__flags||b=3D=3D=3D0){for(var g in =
e)if(e[g]=3D=3D=3Db)return null}else{var i=3Db;for(var g in e){var =
f=3De[g];if(f=3D=3D=3D0)continue;if((f&b)=3D=3D=3Df)i-=3Df;if(i=3D=3D=3D0=
)return =
null}}}a=3DError.argumentOutOfRange(d,b,String.format(Sys.Res.enumInvalid=
Value,b,c.getName()));a.popStackFrame();return =
a}if(j&&b!=3D=3Dwindow&&b!=3D=3Ddocument&&!(window.HTMLElement&&b =
instanceof HTMLElement)&&typeof =
b.nodeName!=3D=3D"string"){a=3DError.argument(d,Sys.Res.argumentDomElemen=
t);a.popStackFrame();return =
a}if(c&&!c.isInstanceOfType(b)){a=3DError.argumentType(d,Object.getType(b=
),c);a.popStackFrame();return =
a}if(c=3D=3D=3DNumber&&k)if(b%1!=3D=3D0){a=3DError.argumentOutOfRange(d,b=
,Sys.Res.argumentInteger);a.popStackFrame();return a}return =
null};Error.__typeName=3D"Error";Error.__class=3Dtrue;Error.create=3Dfunc=
tion(d,b){var a=3Dnew Error(d);a.message=3Dd;if(b)for(var c in =
b)a[c]=3Db[c];a.popStackFrame();return =
a};Error.argument=3Dfunction(a,c){var b=3D"Sys.ArgumentException: =
"+(c?c:Sys.Res.argument);if(a)b+=3D"\n"+String.format(Sys.Res.paramName,a=
);var =
d=3DError.create(b,{name:"Sys.ArgumentException",paramName:a});d.popStack=
Frame();return d};Error.argumentNull=3Dfunction(a,c){var =
b=3D"Sys.ArgumentNullException: =
"+(c?c:Sys.Res.argumentNull);if(a)b+=3D"\n"+String.format(Sys.Res.paramNa=
me,a);var =
d=3DError.create(b,{name:"Sys.ArgumentNullException",paramName:a});d.popS=
tackFrame();return d};Error.argumentOutOfRange=3Dfunction(c,a,d){var =
b=3D"Sys.ArgumentOutOfRangeException: =
"+(d?d:Sys.Res.argumentOutOfRange);if(c)b+=3D"\n"+String.format(Sys.Res.p=
aramName,c);if(typeof =
a!=3D=3D"undefined"&&a!=3D=3Dnull)b+=3D"\n"+String.format(Sys.Res.actualV=
alue,a);var =
e=3DError.create(b,{name:"Sys.ArgumentOutOfRangeException",paramName:c,ac=
tualValue:a});e.popStackFrame();return =
e};Error.argumentType=3Dfunction(d,c,b,e){var =
a=3D"Sys.ArgumentTypeException: ";if(e)a+=3De;else =
if(c&&b)a+=3DString.format(Sys.Res.argumentTypeWithTypes,c.getName(),b.ge=
tName());else =
a+=3DSys.Res.argumentType;if(d)a+=3D"\n"+String.format(Sys.Res.paramName,=
d);var =
f=3DError.create(a,{name:"Sys.ArgumentTypeException",paramName:d,actualTy=
pe:c,expectedType:b});f.popStackFrame();return =
f};Error.argumentUndefined=3Dfunction(a,c){var =
b=3D"Sys.ArgumentUndefinedException: =
"+(c?c:Sys.Res.argumentUndefined);if(a)b+=3D"\n"+String.format(Sys.Res.pa=
ramName,a);var =
d=3DError.create(b,{name:"Sys.ArgumentUndefinedException",paramName:a});d=
.popStackFrame();return d};Error.format=3Dfunction(a){var =
c=3D"Sys.FormatException: =
"+(a?a:Sys.Res.format),b=3DError.create(c,{name:"Sys.FormatException"});b=
.popStackFrame();return b};Error.invalidOperation=3Dfunction(a){var =
c=3D"Sys.InvalidOperationException: =
"+(a?a:Sys.Res.invalidOperation),b=3DError.create(c,{name:"Sys.InvalidOpe=
rationException"});b.popStackFrame();return =
b};Error.notImplemented=3Dfunction(a){var =
c=3D"Sys.NotImplementedException: =
"+(a?a:Sys.Res.notImplemented),b=3DError.create(c,{name:"Sys.NotImplement=
edException"});b.popStackFrame();return =
b};Error.parameterCount=3Dfunction(a){var =
c=3D"Sys.ParameterCountException: =
"+(a?a:Sys.Res.parameterCount),b=3DError.create(c,{name:"Sys.ParameterCou=
ntException"});b.popStackFrame();return =
b};Error.prototype.popStackFrame=3Dfunction(){if(typeof =
this.stack=3D=3D=3D"undefined"||this.stack=3D=3D=3Dnull||typeof =
this.fileName=3D=3D=3D"undefined"||this.fileName=3D=3D=3Dnull||typeof =
this.lineNumber=3D=3D=3D"undefined"||this.lineNumber=3D=3D=3Dnull)return;=
var =
a=3Dthis.stack.split("\n"),c=3Da[0],e=3Dthis.fileName+":"+this.lineNumber=
;while(typeof =
c!=3D=3D"undefined"&&c!=3D=3Dnull&&c.indexOf(e)=3D=3D=3D-1){a.shift();c=3D=
a[0]}var d=3Da[1];if(typeof =
d=3D=3D=3D"undefined"||d=3D=3D=3Dnull)return;var =
b=3Dd.match(/@(.*):(\d+)$/);if(typeof =
b=3D=3D=3D"undefined"||b=3D=3D=3Dnull)return;this.fileName=3Db[1];this.li=
neNumber=3DparseInt(b[2]);a.shift();this.stack=3Da.join("\n")};if(!window=
)this.window=3Dthis;window.Type=3DFunction;window.__rootNamespaces=3D[];w=
indow.__registeredTypes=3D{};Type.prototype.callBaseMethod=3Dfunction(a,d=
,b){var c=3Dthis.getBaseMethod(a,d);if(!b)return c.apply(a);else return =
c.apply(a,b)};Type.prototype.getBaseMethod=3Dfunction(d,c){var =
b=3Dthis.getBaseType();if(b){var a=3Db.prototype[c];return a instanceof =
Function?a:null}return =
null};Type.prototype.getBaseType=3Dfunction(){return typeof =
this.__baseType=3D=3D=3D"undefined"?null:this.__baseType};Type.prototype.=
getInterfaces=3Dfunction(){var a=3D[],b=3Dthis;while(b){var =
c=3Db.__interfaces;if(c)for(var d=3D0,f=3Dc.length;d<f;d++){var =
e=3Dc[d];if(!Array.contains(a,e))a[a.length]=3De}b=3Db.__baseType}return =
a};Type.prototype.getName=3Dfunction(){return typeof =
this.__typeName=3D=3D=3D"undefined"?"":this.__typeName};Type.prototype.im=
plementsInterface=3Dfunction(d){this.resolveInheritance();var =
c=3Dd.getName(),a=3Dthis.__interfaceCache;if(a){var e=3Da[c];if(typeof =
e!=3D=3D"undefined")return e}else a=3Dthis.__interfaceCache=3D{};var =
b=3Dthis;while(b){var =
f=3Db.__interfaces;if(f)if(Array.indexOf(f,d)!=3D=3D-1)return =
a[c]=3Dtrue;b=3Db.__baseType}return =
a[c]=3Dfalse};Type.prototype.inheritsFrom=3Dfunction(b){this.resolveInher=
itance();var a=3Dthis.__baseType;while(a){if(a=3D=3D=3Db)return =
true;a=3Da.__baseType}return =
false};Type.prototype.initializeBase=3Dfunction(a,b){this.resolveInherita=
nce();if(this.__baseType)if(!b)this.__baseType.apply(a);else =
this.__baseType.apply(a,b);return =
a};Type.prototype.isImplementedBy=3Dfunction(a){if(typeof =
a=3D=3D=3D"undefined"||a=3D=3D=3Dnull)return false;var =
b=3DObject.getType(a);return =
!!(b.implementsInterface&&b.implementsInterface(this))};Type.prototype.is=
InstanceOfType=3Dfunction(b){if(typeof =
b=3D=3D=3D"undefined"||b=3D=3D=3Dnull)return false;if(b instanceof =
this)return true;var a=3DObject.getType(b);return =
!!(a=3D=3D=3Dthis)||a.inheritsFrom&&a.inheritsFrom(this)||a.implementsInt=
erface&&a.implementsInterface(this)};Type.prototype.registerClass=3Dfunct=
ion(c,b,d){this.prototype.constructor=3Dthis;this.__typeName=3Dc;this.__c=
lass=3Dtrue;if(b){this.__baseType=3Db;this.__basePrototypePending=3Dtrue}=
if(!window.__classes)window.__classes=3D{};window.__classes[c.toUpperCase=
()]=3Dthis;if(d){this.__interfaces=3D[];for(var =
a=3D2;a<arguments.length;a++){var =
e=3Darguments[a];this.__interfaces.push(e)}}return =
this};Type.prototype.registerInterface=3Dfunction(a){this.prototype.const=
ructor=3Dthis;this.__typeName=3Da;this.__interface=3Dtrue;return =
this};Type.prototype.resolveInheritance=3Dfunction(){if(this.__baseProtot=
ypePending){var b=3Dthis.__baseType;b.resolveInheritance();for(var a in =
b.prototype){var =
c=3Db.prototype[a];if(!this.prototype[a])this.prototype[a]=3Dc}delete =
this.__basePrototypePending}};Type.getRootNamespaces=3Dfunction(){return =
Array.clone(window.__rootNamespaces)};Type.isClass=3Dfunction(a){if(typeo=
f a=3D=3D=3D"undefined"||a=3D=3D=3Dnull)return false;return =
!!a.__class};Type.isInterface=3Dfunction(a){if(typeof =
a=3D=3D=3D"undefined"||a=3D=3D=3Dnull)return false;return =
!!a.__interface};Type.isNamespace=3Dfunction(a){if(typeof =
a=3D=3D=3D"undefined"||a=3D=3D=3Dnull)return false;return =
!!a.__namespace};Type.parse=3Dfunction(typeName,ns){var =
fn;if(ns){if(!window.__classes)return =
null;fn=3Dwindow.__classes[ns.getName().toUpperCase()+"."+typeName.toUppe=
rCase()];return fn||null}if(!typeName)return =
null;if(!Type.__htClasses)Type.__htClasses=3D{};fn=3DType.__htClasses[typ=
eName];if(!fn){fn=3Deval(typeName);Type.__htClasses[typeName]=3Dfn}return=
 fn};Type.registerNamespace=3Dfunction(f){var =
d=3Dwindow,c=3Df.split(".");for(var b=3D0;b<c.length;b++){var =
e=3Dc[b],a=3Dd[e];if(!a){a=3Dd[e]=3D{};if(b=3D=3D=3D0)window.__rootNamesp=
aces[window.__rootNamespaces.length]=3Da;a.__namespace=3Dtrue;a.__typeNam=
e=3Dc.slice(0,b+1).join(".");a.getName=3Dfunction(){return =
this.__typeName}}d=3Da}};Object.__typeName=3D"Object";Object.__class=3Dtr=
ue;Object.getType=3Dfunction(b){var a=3Db.constructor;if(!a||typeof =
a!=3D=3D"function"||!a.__typeName||a.__typeName=3D=3D=3D"Object")return =
Object;return a};Object.getTypeName=3Dfunction(a){return =
Object.getType(a).getName()};Boolean.__typeName=3D"Boolean";Boolean.__cla=
ss=3Dtrue;Boolean.parse=3Dfunction(b){var =
a=3Db.trim().toLowerCase();if(a=3D=3D=3D"false")return =
false;if(a=3D=3D=3D"true")return =
true};Date.__typeName=3D"Date";Date.__class=3Dtrue;Date._appendPreOrPostM=
atch=3Dfunction(e,b){var d=3D0,a=3Dfalse;for(var =
c=3D0,g=3De.length;c<g;c++){var f=3De.charAt(c);switch(f){case =
"'":if(a)b.append("'");else d++;a=3Dfalse;break;case =
"\\":if(a)b.append("\\");a=3D!a;break;default:b.append(f);a=3Dfalse;break=
}}return =
d};Date._expandFormat=3Dfunction(a,b){if(!b)b=3D"F";if(b.length=3D=3D=3D1=
)switch(b){case "d":return a.ShortDatePattern;case "D":return =
a.LongDatePattern;case "t":return a.ShortTimePattern;case "T":return =
a.LongTimePattern;case "F":return a.FullDateTimePattern;case "M":case =
"m":return a.MonthDayPattern;case "s":return =
a.SortableDateTimePattern;case "Y":case "y":return =
a.YearMonthPattern;default:throw =
Error.format(Sys.Res.formatInvalidString)}return =
b};Date._expandYear=3Dfunction(c,a){if(a<100){var b=3D(new =
Date).getFullYear();a+=3Db-b%100;if(a>c.Calendar.TwoDigitYearMax)return =
a-100}return =
a};Date._getParseRegExp=3Dfunction(b,e){if(!b._parseRegExp)b._parseRegExp=
=3D{};else if(b._parseRegExp[e])return b._parseRegExp[e];var =
c=3DDate._expandFormat(b,e);c=3Dc.replace(/([\^\$\.\*\+\?\|\[\]\(\)\{\}])=
/g,"\\\\$1");var a=3Dnew =
Sys.StringBuilder("^"),j=3D[],f=3D0,i=3D0,h=3DDate._getTokenRegExp(),d;wh=
ile((d=3Dh.exec(c))!=3D=3Dnull){var =
l=3Dc.slice(f,d.index);f=3Dh.lastIndex;i+=3DDate._appendPreOrPostMatch(l,=
a);if(i%2=3D=3D=3D1){a.append(d[0]);continue}switch(d[0]){case =
"dddd":case "ddd":case "MMMM":case "MMM":a.append("(\\D+)");break;case =
"tt":case "t":a.append("(\\D*)");break;case =
"yyyy":a.append("(\\d{4})");break;case =
"fff":a.append("(\\d{3})");break;case =
"ff":a.append("(\\d{2})");break;case "f":a.append("(\\d)");break;case =
"dd":case "d":case "MM":case "M":case "yy":case "y":case "HH":case =
"H":case "hh":case "h":case "mm":case "m":case "ss":case =
"s":a.append("(\\d\\d?)");break;case =
"zzz":a.append("([+-]?\\d\\d?:\\d{2})");break;case "zz":case =
"z":a.append("([+-]?\\d\\d?)");break}Array.add(j,d[0])}Date._appendPreOrP=
ostMatch(c.slice(f),a);a.append("$");var =
k=3Da.toString().replace(/\s+/g,"\\s+"),g=3D{"regExp":k,"groups":j};b._pa=
rseRegExp[e]=3Dg;return g};Date._getTokenRegExp=3Dfunction(){return =
/dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|y|hh|h|HH|H|mm|m|ss|s|tt|t|fff|ff|f|=
zzz|zz|z/g};Date.parseLocale=3Dfunction(a){return =
Date._parse(a,Sys.CultureInfo.CurrentCulture,arguments)};Date.parseInvari=
ant=3Dfunction(a){return =
Date._parse(a,Sys.CultureInfo.InvariantCulture,arguments)};Date._parse=3D=
function(g,c,h){var e=3Dfalse;for(var a=3D1,i=3Dh.length;a<i;a++){var =
f=3Dh[a];if(f){e=3Dtrue;var b=3DDate._parseExact(g,f,c);if(b)return =
b}}if(!e){var d=3Dc._getDateTimeFormats();for(var =
a=3D0,i=3Dd.length;a<i;a++){var =
b=3DDate._parseExact(g,d[a],c);if(b)return b}}return =
null};Date._parseExact=3Dfunction(s,y,j){s=3Ds.trim();var =
m=3Dj.dateTimeFormat,v=3DDate._getParseRegExp(m,y),x=3D(new =
RegExp(v.regExp)).exec(s);if(x!=3D=3Dnull){var =
w=3Dv.groups,f=3Dnull,c=3Dnull,h=3Dnull,g=3Dnull,d=3D0,n=3D0,o=3D0,e=3D0,=
k=3Dnull,r=3Dfalse;for(var p=3D0,z=3Dw.length;p<z;p++){var =
a=3Dx[p+1];if(a)switch(w[p]){case "dd":case =
"d":h=3DDate._parseInt(a);if(h<1||h>31)return null;break;case =
"MMMM":c=3Dj._getMonthIndex(a);if(c<0||c>11)return null;break;case =
"MMM":c=3Dj._getAbbrMonthIndex(a);if(c<0||c>11)return null;break;case =
"M":case "MM":var c=3DDate._parseInt(a)-1;if(c<0||c>11)return =
null;break;case "y":case =
"yy":f=3DDate._expandYear(m,Date._parseInt(a));if(f<0||f>9999)return =
null;break;case "yyyy":f=3DDate._parseInt(a);if(f<0||f>9999)return =
null;break;case "h":case =
"hh":d=3DDate._parseInt(a);if(d=3D=3D=3D12)d=3D0;if(d<0||d>11)return =
null;break;case "H":case "HH":d=3DDate._parseInt(a);if(d<0||d>23)return =
null;break;case "m":case "mm":n=3DDate._parseInt(a);if(n<0||n>59)return =
null;break;case "s":case "ss":o=3DDate._parseInt(a);if(o<0||o>59)return =
null;break;case "tt":case "t":var =
u=3Da.toUpperCase();r=3Du=3D=3D=3Dm.PMDesignator.toUpperCase();if(!r&&u!=3D=
=3Dm.AMDesignator.toUpperCase())return null;break;case =
"f":e=3DDate._parseInt(a)*100;if(e<0||e>999)return null;break;case =
"ff":e=3DDate._parseInt(a)*10;if(e<0||e>999)return null;break;case =
"fff":e=3DDate._parseInt(a);if(e<0||e>999)return null;break;case =
"dddd":g=3Dj._getDayIndex(a);if(g<0||g>6)return null;break;case =
"ddd":g=3Dj._getAbbrDayIndex(a);if(g<0||g>6)return null;break;case =
"zzz":var q=3Da.split(/:/);if(q.length!=3D=3D2)return null;var =
i=3DDate._parseInt(q[0]);if(i<-12||i>13)return null;var =
l=3DDate._parseInt(q[1]);if(l<0||l>59)return =
null;k=3Di*60+(a.startsWith("-")?-l:l);break;case "z":case "zz":var =
i=3DDate._parseInt(a);if(i<-12||i>13)return null;k=3Di*60;break}}var =
b=3Dnew =
Date;if(f=3D=3D=3Dnull)f=3Db.getFullYear();if(c=3D=3D=3Dnull)c=3Db.getMon=
th();if(h=3D=3D=3Dnull)h=3Db.getDate();b.setFullYear(f,c,h);if(b.getDate(=
)!=3D=3Dh)return null;if(g!=3D=3Dnull&&b.getDay()!=3D=3Dg)return =
null;if(r&&d<12)d+=3D12;b.setHours(d,n,o,e);if(k!=3D=3Dnull){var =
t=3Db.getMinutes()-(k+b.getTimezoneOffset());b.setHours(b.getHours()+pars=
eInt(t/60),t%60)}return b}};Date._parseInt=3Dfunction(a){return =
parseInt(a.replace(/^[\s0]+(\d+)$/,"$1"))};Date.prototype.format=3Dfuncti=
on(a){return =
this._toFormattedString(a,Sys.CultureInfo.InvariantCulture)};Date.prototy=
pe.localeFormat=3Dfunction(a){return =
this._toFormattedString(a,Sys.CultureInfo.CurrentCulture)};Date.prototype=
._toFormattedString=3Dfunction(e,h){if(!e||e.length=3D=3D=3D0||e=3D=3D=3D=
"i")if(h&&h.name.length>0)return this.toLocaleString();else return =
this.toString();var d=3Dh.dateTimeFormat;e=3DDate._expandFormat(d,e);var =
a=3Dnew Sys.StringBuilder,b;function c(a){if(a<10)return "0"+a;return =
a.toString()}function g(a){if(a<10)return "00"+a;if(a<100)return =
"0"+a;return a.toString()}var =
j=3D0,i=3DDate._getTokenRegExp();for(;true;){var =
l=3Di.lastIndex,f=3Di.exec(e),k=3De.slice(l,f?f.index:e.length);j+=3DDate=
._appendPreOrPostMatch(k,a);if(!f)break;if(j%2=3D=3D=3D1){a.append(f[0]);=
continue}switch(f[0]){case =
"dddd":a.append(d.DayNames[this.getDay()]);break;case =
"ddd":a.append(d.AbbreviatedDayNames[this.getDay()]);break;case =
"dd":a.append(c(this.getDate()));break;case =
"d":a.append(this.getDate());break;case =
"MMMM":a.append(d.MonthNames[this.getMonth()]);break;case =
"MMM":a.append(d.AbbreviatedMonthNames[this.getMonth()]);break;case =
"MM":a.append(c(this.getMonth()+1));break;case =
"M":a.append(this.getMonth()+1);break;case =
"yyyy":a.append(this.getFullYear());break;case =
"yy":a.append(c(this.getFullYear()%100));break;case =
"y":a.append(this.getFullYear()%100);break;case =
"hh":b=3Dthis.getHours()%12;if(b=3D=3D=3D0)b=3D12;a.append(c(b));break;ca=
se =
"h":b=3Dthis.getHours()%12;if(b=3D=3D=3D0)b=3D12;a.append(b);break;case =
"HH":a.append(c(this.getHours()));break;case =
"H":a.append(this.getHours());break;case =
"mm":a.append(c(this.getMinutes()));break;case =
"m":a.append(this.getMinutes());break;case =
"ss":a.append(c(this.getSeconds()));break;case =
"s":a.append(this.getSeconds());break;case =
"tt":a.append(this.getHours()<12?d.AMDesignator:d.PMDesignator);break;cas=
e =
"t":a.append((this.getHours()<12?d.AMDesignator:d.PMDesignator).charAt(0)=
);break;case =
"f":a.append(g(this.getMilliseconds()).charAt(0));break;case =
"ff":a.append(g(this.getMilliseconds()).substr(0,2));break;case =
"fff":a.append(g(this.getMilliseconds()));break;case =
"z":b=3Dthis.getTimezoneOffset()/60;a.append((b>=3D0?"+":"-")+Math.floor(=
Math.abs(b)));break;case =
"zz":b=3Dthis.getTimezoneOffset()/60;a.append((b>=3D0?"+":"-")+c(Math.flo=
or(Math.abs(b))));break;case =
"zzz":b=3Dthis.getTimezoneOffset()/60;a.append((b>=3D0?"+":"-")+c(Math.fl=
oor(Math.abs(b)))+d.TimeSeparator+c(Math.abs(this.getTimezoneOffset()%60)=
));break}}return =
a.toString()};Number.__typeName=3D"Number";Number.__class=3Dtrue;Number.p=
arseLocale=3Dfunction(a){return =
Number._parse(a,Sys.CultureInfo.CurrentCulture)};Number.parseInvariant=3D=
function(a){return =
Number._parse(a,Sys.CultureInfo.InvariantCulture)};Number._parse=3Dfuncti=
on(g,f){var a=3Dg.trim();if(a.match(/infinity/i)!=3D=3Dnull)return =
parseFloat(a);if(a.match(/^0x[a-f0-9]+$/i)!=3D=3Dnull)return =
parseInt(a);var =
d=3Df.numberFormat,b=3Dd.NumberDecimalSeparator,c=3Dd.NumberGroupSeparato=
r,e=3Dnew =
RegExp("^[+-]?[\\d\\"+c+"]*\\"+b+"?\\d*([eE][+-]?\\d+)?$");if(!a.match(e)=
)return Number.NaN;a=3Da.split(c).join("");a=3Da.replace(b,".");return =
parseFloat(a)};Number.prototype.format=3Dfunction(a){return =
this._toFormattedString(a,Sys.CultureInfo.InvariantCulture)};Number.proto=
type.localeFormat=3Dfunction(a){return =
this._toFormattedString(a,Sys.CultureInfo.CurrentCulture)};Number.prototy=
pe._toFormattedString=3Dfunction(d,j){if(!d||d.length=3D=3D=3D0||d=3D=3D=3D=
"i")if(j&&j.name.length>0)return this.toLocaleString();else return =
this.toString();var q=3D["n %","n%","%n"],p=3D["-n =
%","-n%","-%n"],r=3D["(n)","-n","- n","n-","n -"],o=3D["$n","n$","$ =
n","n $"],n=3D["($n)","-$n","$-n","$n-","(n$)","-n$","n-$","n$-","-n =
$","-$ n","n $-","$ n-","$ -n","n- $","($ n)","(n $)"];function =
i(p,k,j,l,o){var =
e=3Dj[0],g=3D1,c=3Dp.toString(),a=3D"",m=3D"",i=3Dc.split(".");if(i.lengt=
h>1){c=3Di[0];a=3Di[1];var =
h=3Da.split(/e/i);if(h.length>1){a=3Dh[0];m=3D"e"+h[1]}}if(k>0){var =
f=3Da.length-k;if(f>0)a=3Da.slice(0,k);else if(f<0)for(var =
n=3D0;n<Math.abs(f);n++)a+=3D"0";a=3Do+a}else a=3D"";a+=3Dm;var =
b=3Dc.length-1,d=3D"";while(b>=3D0){if(e=3D=3D=3D0||e>b)if(d.length>0)ret=
urn c.slice(0,b+1)+l+d+a;else return =
c.slice(0,b+1)+a;if(d.length>0)d=3Dc.slice(b-e+1,b+1)+l+d;else =
d=3Dc.slice(b-e+1,b+1);b-=3De;if(g<j.length){e=3Dj[g];g++}}return =
c.slice(0,b+1)+l+d+a}var =
a=3Dj.numberFormat,e=3DMath.abs(this);if(!d)d=3D"D";var =
b=3D-1;if(d.length>1)b=3DparseInt(d.slice(1));var =
c;switch(d.charAt(0)){case "d":case "D":c=3D"n";if(b!=3D=3D-1){var =
g=3D""+e,k=3Db-g.length;if(k>0)for(var =
m=3D0;m<k;m++)g=3D"0"+g;e=3Dg}if(this<0)e=3D-e;break;case "c":case =
"C":if(this<0)c=3Dn[a.CurrencyNegativePattern];else =
c=3Do[a.CurrencyPositivePattern];if(b=3D=3D=3D-1)b=3Da.CurrencyDecimalDig=
its;e=3Di(Math.abs(this),b,a.CurrencyGroupSizes,a.CurrencyGroupSeparator,=
a.CurrencyDecimalSeparator);break;case "n":case =
"N":if(this<0)c=3Dr[a.NumberNegativePattern];else =
c=3D"n";if(b=3D=3D=3D-1)b=3Da.NumberDecimalDigits;e=3Di(Math.abs(this),b,=
a.NumberGroupSizes,a.NumberGroupSeparator,a.NumberDecimalSeparator);break=
;case "p":case "P":if(this<0)c=3Dp[a.PercentNegativePattern];else =
c=3Dq[a.PercentPositivePattern];if(b=3D=3D=3D-1)b=3Da.PercentDecimalDigit=
s;e=3Di(Math.abs(this),b,a.PercentGroupSizes,a.PercentGroupSeparator,a.Pe=
rcentDecimalSeparator);break;default:throw =
Error.format(Sys.Res.formatBadFormatSpecifier)}var =
l=3D/n|\$|-|%/g,f=3D"";for(;true;){var =
s=3Dl.lastIndex,h=3Dl.exec(c);f+=3Dc.slice(s,h?h.index:c.length);if(!h)br=
eak;switch(h[0]){case "n":f+=3De;break;case =
"$":f+=3Da.CurrencySymbol;break;case "-":f+=3Da.NegativeSign;break;case =
"%":f+=3Da.PercentSymbol;break}}return =
f};RegExp.__typeName=3D"RegExp";RegExp.__class=3Dtrue;Array.__typeName=3D=
"Array";Array.__class=3Dtrue;Array.add=3DArray.enqueue=3Dfunction(a,b){a[=
a.length]=3Db};Array.addRange=3Dfunction(a,b){a.push.apply(a,b)};Array.cl=
ear=3Dfunction(a){a.length=3D0};Array.clone=3Dfunction(a){if(a.length=3D=3D=
=3D1)return [a[0]];else return =
Array.apply(null,a)};Array.contains=3Dfunction(a,b){return =
Array.indexOf(a,b)>=3D0};Array.dequeue=3Dfunction(a){return =
a.shift()};Array.forEach=3Dfunction(b,e,d){for(var =
a=3D0,f=3Db.length;a<f;a++){var c=3Db[a];if(typeof =
c!=3D=3D"undefined")e.call(d,c,a,b)}};Array.indexOf=3Dfunction(d,e,a){if(=
typeof e=3D=3D=3D"undefined")return -1;var =
c=3Dd.length;if(c!=3D=3D0){a=3Da-0;if(isNaN(a))a=3D0;else{if(isFinite(a))=
a=3Da-a%1;if(a<0)a=3DMath.max(0,c+a)}for(var b=3Da;b<c;b++)if(typeof =
d[b]!=3D=3D"undefined"&&d[b]=3D=3D=3De)return b}return =
-1};Array.insert=3Dfunction(a,b,c){a.splice(b,0,c)};Array.parse=3Dfunctio=
n(value){if(!value)return [];return =
eval(value)};Array.remove=3Dfunction(b,c){var =
a=3DArray.indexOf(b,c);if(a>=3D0)b.splice(a,1);return =
a>=3D0};Array.removeAt=3Dfunction(a,b){a.splice(b,1)};String.__typeName=3D=
"String";String.__class=3Dtrue;String.prototype.endsWith=3Dfunction(a){re=
turn =
this.substr(this.length-a.length)=3D=3D=3Da};String.prototype.startsWith=3D=
function(a){return =
this.substr(0,a.length)=3D=3D=3Da};String.prototype.trim=3Dfunction(){ret=
urn =
this.replace(/^\s+|\s+$/g,"")};String.prototype.trimEnd=3Dfunction(){retu=
rn =
this.replace(/\s+$/,"")};String.prototype.trimStart=3Dfunction(){return =
this.replace(/^\s+/,"")};String.format=3Dfunction(){return =
String._toFormattedString(false,arguments)};String.localeFormat=3Dfunctio=
n(){return =
String._toFormattedString(true,arguments)};String._toFormattedString=3Dfu=
nction(l,j){var c=3D"",e=3Dj[0];for(var a=3D0;true;){var =
f=3De.indexOf("{",a),d=3De.indexOf("}",a);if(f<0&&d<0){c+=3De.slice(a);br=
eak}if(d>0&&(d<f||f<0)){c+=3De.slice(a,d+1);a=3Dd+2;continue}c+=3De.slice=
(a,f);a=3Df+1;if(e.charAt(a)=3D=3D=3D"{"){c+=3D"{";a++;continue}if(d<0)br=
eak;var =
h=3De.substring(a,d),g=3Dh.indexOf(":"),k=3DparseInt(g<0?h:h.substring(0,=
g))+1,i=3Dg<0?"":h.substring(g+1),b=3Dj[k];if(typeof =
b=3D=3D=3D"undefined"||b=3D=3D=3Dnull)b=3D"";if(b.toFormattedString)c+=3D=
b.toFormattedString(i);else =
if(l&&b.localeFormat)c+=3Db.localeFormat(i);else =
if(b.format)c+=3Db.format(i);else c+=3Db.toString();a=3Dd+1}return =
c};Type.registerNamespace("Sys");Sys.IDisposable=3Dfunction(){};Sys.IDisp=
osable.prototype=3D{};Sys.IDisposable.registerInterface("Sys.IDisposable"=
);Sys.StringBuilder=3Dfunction(a){this._parts=3Dtypeof =
a!=3D=3D"undefined"&&a!=3D=3Dnull&&a!=3D=3D""?[a.toString()]:[];this._val=
ue=3D{};this._len=3D0};Sys.StringBuilder.prototype=3D{append:function(a){=
this._parts[this._parts.length]=3Da},appendLine:function(a){this._parts[t=
his._parts.length]=3Dtypeof =
a=3D=3D=3D"undefined"||a=3D=3D=3Dnull||a=3D=3D=3D""?"\r\n":a+"\r\n"},clea=
r:function(){this._parts=3D[];this._value=3D{};this._len=3D0},isEmpty:fun=
ction(){if(this._parts.length=3D=3D=3D0)return true;return =
this.toString()=3D=3D=3D""},toString:function(a){a=3Da||"";var =
b=3Dthis._parts;if(this._len!=3D=3Db.length){this._value=3D{};this._len=3D=
b.length}var d=3Dthis._value;if(typeof =
d[a]=3D=3D=3D"undefined"){if(a!=3D=3D"")for(var =
c=3D0;c<b.length;)if(typeof =
b[c]=3D=3D=3D"undefined"||b[c]=3D=3D=3D""||b[c]=3D=3D=3Dnull)b.splice(c,1=
);else c++;d[a]=3Dthis._parts.join(a)}return =
d[a]}};Sys.StringBuilder.registerClass("Sys.StringBuilder");if(!window.XM=
LHttpRequest)window.XMLHttpRequest=3Dfunction(){var =
b=3D["Msxml2.XMLHTTP","Microsoft.XMLHTTP"];for(var =
a=3D0;a<b.length;a++)try{var c=3Dnew ActiveXObject(b[a]);return =
c}catch(d){}return =
null};Sys.Browser=3D{};Sys.Browser.InternetExplorer=3D{};Sys.Browser.Fire=
fox=3D{};Sys.Browser.Safari=3D{};Sys.Browser.Opera=3D{};Sys.Browser.agent=
=3Dnull;Sys.Browser.hasDebuggerStatement=3Dfalse;Sys.Browser.name=3Dnavig=
ator.appName;Sys.Browser.version=3DparseFloat(navigator.appVersion);if(na=
vigator.userAgent.indexOf(" MSIE =
")>-1){Sys.Browser.agent=3DSys.Browser.InternetExplorer;Sys.Browser.versi=
on=3DparseFloat(navigator.userAgent.match(/MSIE =
(\d+\.\d+)/)[1]);Sys.Browser.hasDebuggerStatement=3Dtrue}else =
if(navigator.userAgent.indexOf(" =
Firefox/")>-1){Sys.Browser.agent=3DSys.Browser.Firefox;Sys.Browser.versio=
n=3DparseFloat(navigator.userAgent.match(/Firefox\/(\d+\.\d+)/)[1]);Sys.B=
rowser.name=3D"Firefox";Sys.Browser.hasDebuggerStatement=3Dtrue}else =
if(navigator.userAgent.indexOf(" =
Safari/")>-1){Sys.Browser.agent=3DSys.Browser.Safari;Sys.Browser.version=3D=
parseFloat(navigator.userAgent.match(/Safari\/(\d+\.\d+)/)[1]);Sys.Browse=
r.name=3D"Safari"}else =
if(navigator.userAgent.indexOf("Opera/")>-1)Sys.Browser.agent=3DSys.Brows=
er.Opera;Type.registerNamespace("Sys.UI");Sys._Debug=3Dfunction(){};Sys._=
Debug.prototype=3D{_appendConsole:function(a){if(typeof =
Debug!=3D=3D"undefined"&&Debug.writeln)Debug.writeln(a);if(window.console=
&&window.console.log)window.console.log(a);if(window.opera)window.opera.p=
ostError(a);if(window.debugService)window.debugService.trace(a)},_appendT=
race:function(b){var =
a=3Ddocument.getElementById("TraceConsole");if(a&&a.tagName.toUpperCase()=
=3D=3D=3D"TEXTAREA")a.value+=3Db+"\n"},assert:function(c,a,b){if(!c){a=3D=
b&&this.assert.caller?String.format(Sys.Res.assertFailedCaller,a,this.ass=
ert.caller):String.format(Sys.Res.assertFailed,a);if(confirm(String.forma=
t(Sys.Res.breakIntoDebugger,a)))this.fail(a)}},clearTrace:function(){var =
a=3Ddocument.getElementById("TraceConsole");if(a&&a.tagName.toUpperCase()=
=3D=3D=3D"TEXTAREA")a.value=3D""},fail:function(message){this._appendCons=
ole(message);if(Sys.Browser.hasDebuggerStatement)eval("debugger")},trace:=
function(a){this._appendConsole(a);this._appendTrace(a)},traceDump:functi=
on(a,b){var =
c=3Dthis._traceDump(a,b,true)},_traceDump:function(a,c,f,b,d){c=3Dc?c:"tr=
aceDump";b=3Db?b:"";if(a=3D=3D=3Dnull){this.trace(b+c+": =
null");return}switch(typeof a){case "undefined":this.trace(b+c+": =
Undefined");break;case "number":case "string":case =
"boolean":this.trace(b+c+": =
"+a);break;default:if(Date.isInstanceOfType(a)||RegExp.isInstanceOfType(a=
)){this.trace(b+c+": "+a.toString());break}if(!d)d=3D[];else =
if(Array.contains(d,a)){this.trace(b+c+": =
...");return}Array.add(d,a);if(a=3D=3Dwindow||a=3D=3D=3Ddocument||window.=
HTMLElement&&a instanceof HTMLElement||typeof =
a.nodeName=3D=3D=3D"string"){var =
k=3Da.tagName?a.tagName:"DomElement";if(a.id)k+=3D" - =
"+a.id;this.trace(b+c+" {"+k+"}")}else{var =
i=3DObject.getTypeName(a);this.trace(b+c+(typeof i=3D=3D=3D"string"?" =
{"+i+"}":""));if(b=3D=3D=3D""||f){b+=3D"    ";var =
e,j,l,g,h;if(Array.isInstanceOfType(a)){j=3Da.length;for(e=3D0;e<j;e++)th=
is._traceDump(a[e],"["+e+"]",f,b,d)}else for(g in =
a){h=3Da[g];if(!Function.isInstanceOfType(h))this._traceDump(h,g,f,b,d)}}=
}Array.remove(d,a)}}};Sys._Debug.registerClass("Sys._Debug");Sys.Debug=3D=
new Sys._Debug;Sys.Debug.isDebug=3Dfalse;function =
Sys$Enum$parse(c,e){var =
a,b,i;if(e){a=3Dthis.__lowerCaseValues;if(!a){this.__lowerCaseValues=3Da=3D=
{};var g=3Dthis.prototype;for(var f in g)a[f.toLowerCase()]=3Dg[f]}}else =
a=3Dthis.prototype;if(!this.__flags){i=3De?c.toLowerCase():c;b=3Da[i.trim=
()];if(typeof b!=3D=3D"number")throw =
Error.argument("value",String.format(Sys.Res.enumInvalidValue,c,this.__ty=
peName));return b}else{var =
h=3D(e?c.toLowerCase():c).split(","),j=3D0;for(var =
d=3Dh.length-1;d>=3D0;d--){var k=3Dh[d].trim();b=3Da[k];if(typeof =
b!=3D=3D"number")throw =
Error.argument("value",String.format(Sys.Res.enumInvalidValue,c.split(","=
)[d].trim(),this.__typeName));j|=3Db}return j}}function =
Sys$Enum$toString(c){if(typeof =
c=3D=3D=3D"undefined"||c=3D=3D=3Dnull)return this.__string;var =
d=3Dthis.prototype,a;if(!this.__flags||c=3D=3D=3D0){for(a in =
d)if(d[a]=3D=3D=3Dc)return a}else{var =
b=3Dthis.__sortedValues;if(!b){b=3D[];for(a in =
d)b[b.length]=3D{key:a,value:d[a]};b.sort(function(a,b){return =
a.value-b.value});this.__sortedValues=3Db}var =
e=3D[],g=3Dc;for(a=3Db.length-1;a>=3D0;a--){var =
h=3Db[a],f=3Dh.value;if(f=3D=3D=3D0)continue;if((f&c)=3D=3D=3Df){e[e.leng=
th]=3Dh.key;g-=3Df;if(g=3D=3D=3D0)break}}if(e.length&&g=3D=3D=3D0)return =
e.reverse().join(", ")}return =
""}Type.prototype.registerEnum=3Dfunction(c,b){for(var a in =
this.prototype)this[a]=3Dthis.prototype[a];this.__typeName=3Dc;this.parse=
=3DSys$Enum$parse;this.__string=3Dthis.toString();this.toString=3DSys$Enu=
m$toString;this.__flags=3Db;this.__enum=3Dtrue};Type.isEnum=3Dfunction(a)=
{if(typeof a=3D=3D=3D"undefined"||a=3D=3D=3Dnull)return false;return =
!!a.__enum};Type.isFlags=3Dfunction(a){if(typeof =
a=3D=3D=3D"undefined"||a=3D=3D=3Dnull)return false;return =
!!a.__flags};Sys.EventHandlerList=3Dfunction(){this._list=3D{}};Sys.Event=
HandlerList.prototype=3D{addHandler:function(b,a){Array.add(this._getEven=
t(b,true),a)},removeHandler:function(c,b){var =
a=3Dthis._getEvent(c);if(!a)return;Array.remove(a,b)},getHandler:function=
(b){var a=3Dthis._getEvent(b);if(!a||a.length=3D=3D=3D0)return =
null;a=3DArray.clone(a);if(!a._handler)a._handler=3Dfunction(c,d){for(var=
 b=3D0,e=3Da.length;b<e;b++)a[b](c,d)};return =
a._handler},_getEvent:function(a,b){if(!this._list[a]){if(!b)return =
null;this._list[a]=3D[]}return =
this._list[a]}};Sys.EventHandlerList.registerClass("Sys.EventHandlerList"=
);Sys.EventArgs=3Dfunction(){};Sys.EventArgs.registerClass("Sys.EventArgs=
");Sys.EventArgs.Empty=3Dnew =
Sys.EventArgs;Sys.CancelEventArgs=3Dfunction(){Sys.CancelEventArgs.initia=
lizeBase(this);this._cancel=3Dfalse};Sys.CancelEventArgs.prototype=3D{get=
_cancel:function(){return =
this._cancel},set_cancel:function(a){this._cancel=3Da}};Sys.CancelEventAr=
gs.registerClass("Sys.CancelEventArgs",Sys.EventArgs);Sys.INotifyProperty=
Change=3Dfunction(){};Sys.INotifyPropertyChange.prototype=3D{};Sys.INotif=
yPropertyChange.registerInterface("Sys.INotifyPropertyChange");Sys.Proper=
tyChangedEventArgs=3Dfunction(a){Sys.PropertyChangedEventArgs.initializeB=
ase(this);this._propertyName=3Da};Sys.PropertyChangedEventArgs.prototype=3D=
{get_propertyName:function(){return =
this._propertyName}};Sys.PropertyChangedEventArgs.registerClass("Sys.Prop=
ertyChangedEventArgs",Sys.EventArgs);Sys.INotifyDisposing=3Dfunction(){};=
Sys.INotifyDisposing.prototype=3D{};Sys.INotifyDisposing.registerInterfac=
e("Sys.INotifyDisposing");Sys.Component=3Dfunction(){if(Sys.Application)S=
ys.Application.registerDisposableObject(this)};Sys.Component.prototype=3D=
{_id:null,_initialized:false,_updating:false,get_events:function(){if(!th=
is._events)this._events=3Dnew Sys.EventHandlerList;return =
this._events},get_id:function(){return =
this._id},set_id:function(a){this._id=3Da},get_isInitialized:function(){r=
eturn this._initialized},get_isUpdating:function(){return =
this._updating},add_disposing:function(a){this.get_events().addHandler("d=
isposing",a)},remove_disposing:function(a){this.get_events().removeHandle=
r("disposing",a)},add_propertyChanged:function(a){this.get_events().addHa=
ndler("propertyChanged",a)},remove_propertyChanged:function(a){this.get_e=
vents().removeHandler("propertyChanged",a)},beginUpdate:function(){this._=
updating=3Dtrue},dispose:function(){if(this._events){var =
a=3Dthis._events.getHandler("disposing");if(a)a(this,Sys.EventArgs.Empty)=
}delete =
this._events;Sys.Application.unregisterDisposableObject(this);Sys.Applica=
tion.removeComponent(this)},endUpdate:function(){this._updating=3Dfalse;i=
f(!this._initialized)this.initialize();this.updated()},initialize:functio=
n(){this._initialized=3Dtrue},raisePropertyChanged:function(b){if(!this._=
events)return;var =
a=3Dthis._events.getHandler("propertyChanged");if(a)a(this,new =
Sys.PropertyChangedEventArgs(b))},updated:function(){}};Sys.Component.reg=
isterClass("Sys.Component",null,Sys.IDisposable,Sys.INotifyPropertyChange=
,Sys.INotifyDisposing);function Sys$Component$_setProperties(a,i){var =
d,j=3DObject.getType(a),e=3Dj=3D=3D=3DObject||j=3D=3D=3DSys.UI.DomElement=
,h=3DSys.Component.isInstanceOfType(a)&&!a.get_isUpdating();if(h)a.beginU=
pdate();for(var c in i){var b=3Di[c],f=3De?null:a["get_"+c];if(e||typeof =
f!=3D=3D"function"){var k=3Da[c];if(!b||typeof =
b!=3D=3D"object"||e&&!k)a[c]=3Db;else =
Sys$Component$_setProperties(k,b)}else{var l=3Da["set_"+c];if(typeof =
l=3D=3D=3D"function")l.apply(a,[b]);else if(b instanceof =
Array){d=3Df.apply(a);for(var =
g=3D0,m=3Dd.length,n=3Db.length;g<n;g++,m++)d[m]=3Db[g]}else if(typeof =
b=3D=3D=3D"object"&&Object.getType(b)=3D=3D=3DObject){d=3Df.apply(a);Sys$=
Component$_setProperties(d,b)}}}if(h)a.endUpdate()}function =
Sys$Component$_setReferences(c,b){for(var a in b){var =
e=3Dc["set_"+a],d=3D$find(b[a]);e.apply(c,[d])}}var =
$create=3DSys.Component.create=3Dfunction(h,f,d,c,g){var a=3Dg?new =
h(g):new =
h,b=3DSys.Application,i=3Db.get_isCreatingComponents();a.beginUpdate();if=
(f)Sys$Component$_setProperties(a,f);if(d)for(var e in =
d)a["add_"+e](d[e]);b._createdComponents[b._createdComponents.length]=3Da=
;if(a.get_id())b.addComponent(a);if(i)if(c)b._addComponentToSecondPass(a,=
c);else =
a.endUpdate();else{if(c)Sys$Component$_setReferences(a,c);a.endUpdate()}r=
eturn a};Sys.UI.MouseButton=3Dfunction(){throw =
Error.notImplemented()};Sys.UI.MouseButton.prototype=3D{leftButton:0,midd=
leButton:1,rightButton:2};Sys.UI.MouseButton.registerEnum("Sys.UI.MouseBu=
tton");Sys.UI.Key=3Dfunction(){throw =
Error.notImplemented()};Sys.UI.Key.prototype=3D{backspace:8,tab:9,enter:1=
3,esc:27,space:32,pageUp:33,pageDown:34,end:35,home:36,left:37,up:38,righ=
t:39,down:40,del:127};Sys.UI.Key.registerEnum("Sys.UI.Key");Sys.UI.DomEve=
nt=3Dfunction(c){var =
a=3Dc;this.rawEvent=3Da;this.altKey=3Da.altKey;if(typeof =
a.button!=3D=3D"undefined")this.button=3Dtypeof =
a.which!=3D=3D"undefined"?a.button:a.button=3D=3D=3D4?Sys.UI.MouseButton.=
middleButton:a.button=3D=3D=3D2?Sys.UI.MouseButton.rightButton:Sys.UI.Mou=
seButton.leftButton;if(a.type=3D=3D=3D"keypress")this.charCode=3Da.charCo=
de||a.keyCode;else =
if(a.keyCode&&a.keyCode=3D=3D=3D46)this.keyCode=3D127;else =
this.keyCode=3Da.keyCode;this.clientX=3Da.clientX;this.clientY=3Da.client=
Y;this.ctrlKey=3Da.ctrlKey;this.target=3Da.target?a.target:a.srcElement;i=
f(this.target){var =
b=3DSys.UI.DomElement.getLocation(this.target);this.offsetX=3Dtypeof =
a.offsetX!=3D=3D"undefined"?a.offsetX:window.pageXOffset+(a.clientX||0)-b=
.x;this.offsetY=3Dtypeof =
a.offsetY!=3D=3D"undefined"?a.offsetY:window.pageYOffset+(a.clientY||0)-b=
.y}this.screenX=3Da.screenX;this.screenY=3Da.screenY;this.shiftKey=3Da.sh=
iftKey;this.type=3Da.type};Sys.UI.DomEvent.prototype=3D{preventDefault:fu=
nction(){if(this.rawEvent.preventDefault)this.rawEvent.preventDefault();e=
lse =
if(window.event)window.event.returnValue=3Dfalse},stopPropagation:functio=
n(){if(this.rawEvent.stopPropagation)this.rawEvent.stopPropagation();else=
 =
if(window.event)window.event.cancelBubble=3Dtrue}};Sys.UI.DomEvent.regist=
erClass("Sys.UI.DomEvent");var =
$addHandler=3DSys.UI.DomEvent.addHandler=3Dfunction(a,d,e){if(!a._events)=
a._events=3D{};var c=3Da._events[d];if(!c)a._events[d]=3Dc=3D[];var =
b;if(a.addEventListener){b=3Dfunction(b){return e.call(a,new =
Sys.UI.DomEvent(b))};a.addEventListener(d,b,false)}else =
if(a.attachEvent){b=3Dfunction(){return e.call(a,new =
Sys.UI.DomEvent(window.event))};a.attachEvent("on"+d,b)}c[c.length]=3D{ha=
ndler:e,browserHandler:b}},$addHandlers=3DSys.UI.DomEvent.addHandlers=3Df=
unction(e,d,c){for(var b in d){var =
a=3Dd[b];if(c)a=3DFunction.createDelegate(c,a);$addHandler(e,b,a)}},$clea=
rHandlers=3DSys.UI.DomEvent.clearHandlers=3Dfunction(a){if(a._events){var=
 e=3Da._events;for(var b in e){var d=3De[b];for(var =
c=3Dd.length-1;c>=3D0;c--)$removeHandler(a,b,d[c].handler)}a._events=3Dnu=
ll}},$removeHandler=3DSys.UI.DomEvent.removeHandler=3Dfunction(a,e,f){var=
 d=3Dnull,c=3Da._events[e],d=3Dnull;for(var =
b=3D0,g=3Dc.length;b<g;b++)if(c[b].handler=3D=3D=3Df){d=3Dc[b].browserHan=
dler;break}if(a.removeEventListener)a.removeEventListener(e,d,false);else=
 =
if(a.detachEvent)a.detachEvent("on"+e,d);c.splice(b,1)};Sys.IContainer=3D=
function(){};Sys.IContainer.prototype=3D{};Sys.IContainer.registerInterfa=
ce("Sys.IContainer");Sys._ScriptLoader=3Dfunction(){this._scriptsToLoad=3D=
null;this._scriptLoadedDelegate=3DFunction.createDelegate(this,this._scri=
ptLoadedHandler)};Sys._ScriptLoader.prototype=3D{dispose:function(){this.=
_stopLoading();if(this._events)delete =
this._events;this._scriptLoadedDelegate=3Dnull},loadScripts:function(a,c,=
d,b){this._loading=3Dtrue;this._allScriptsLoadedCallback=3Dc;this._script=
LoadFailedCallback=3Dd;this._scriptLoadTimeoutCallback=3Db;if(a>0)this._t=
imeoutCookie=3Dwindow.setTimeout(Function.createDelegate(this,this._scrip=
tLoadTimeoutHandler),a*1000);this._loadScriptsInternal()},notifyScriptLoa=
ded:function(){if(!this._loading)return;this._currentTask._notified++;if(=
Sys.Browser.agent=3D=3D=3DSys.Browser.Safari)if(this._currentTask._notifi=
ed=3D=3D=3D1)window.setTimeout(Function.createDelegate(this,function(){th=
is._scriptLoadedHandler(this._currentTask.get_scriptElement(),true)}),0)}=
,queueCustomScriptTag:function(a){if(!this._scriptsToLoad)this._scriptsTo=
Load=3D[];Array.add(this._scriptsToLoad,a)},queueScriptBlock:function(a){=
if(!this._scriptsToLoad)this._scriptsToLoad=3D[];Array.add(this._scriptsT=
oLoad,{text:a})},queueScriptReference:function(a){if(!this._scriptsToLoad=
)this._scriptsToLoad=3D[];Array.add(this._scriptsToLoad,{src:a})},_create=
ScriptElement:function(c){var =
a=3Ddocument.createElement("SCRIPT");a.type=3D"text/javascript";for(var =
b in c)a[b]=3Dc[b];return =
a},_loadScriptsInternal:function(){if(this._scriptsToLoad&&this._scriptsT=
oLoad.length>0){var =
b=3DArray.dequeue(this._scriptsToLoad),a=3Dthis._createScriptElement(b);i=
f(a.text&&Sys.Browser.agent=3D=3D=3DSys.Browser.Safari){a.innerHTML=3Da.t=
ext;delete a.text}if(typeof =
b.src=3D=3D=3D"string"){this._currentTask=3Dnew =
Sys._ScriptLoaderTask(a,this._scriptLoadedDelegate);this._currentTask.exe=
cute()}else{document.getElementsByTagName("HEAD")[0].appendChild(a);Sys._=
ScriptLoader._clearScript(a);this._loadScriptsInternal()}}else{var =
c=3Dthis._allScriptsLoadedCallback;this._stopLoading();if(c)c(this)}},_ra=
iseError:function(a){var =
c=3Dthis._scriptLoadFailedCallback,b=3Dthis._currentTask.get_scriptElemen=
t();this._stopLoading();if(c)c(this,b,a);else throw =
Sys._ScriptLoader._errorScriptLoadFailed(b.src,a)},_scriptLoadedHandler:f=
unction(a,b){if(b&&this._currentTask._notified)if(this._currentTask._noti=
fied>1)this._raiseError(true);else{Array.add(Sys._ScriptLoader._getLoaded=
Scripts(),a.src);this._currentTask.dispose();this._currentTask=3Dnull;thi=
s._loadScriptsInternal()}else =
this._raiseError(false)},_scriptLoadTimeoutHandler:function(){var =
a=3Dthis._scriptLoadTimeoutCallback;this._stopLoading();if(a)a(this)},_st=
opLoading:function(){if(this._timeoutCookie){window.clearTimeout(this._ti=
meoutCookie);this._timeoutCookie=3Dnull}if(this._currentTask){this._curre=
ntTask.dispose();this._currentTask=3Dnull}this._scriptsToLoad=3Dnull;this=
._loading=3Dnull;this._allScriptsLoadedCallback=3Dnull;this._scriptLoadFa=
iledCallback=3Dnull;this._scriptLoadTimeoutCallback=3Dnull}};Sys._ScriptL=
oader.registerClass("Sys._ScriptLoader",null,Sys.IDisposable);Sys._Script=
Loader.getInstance=3Dfunction(){var =
a=3DSys._ScriptLoader._activeInstance;if(!a)a=3DSys._ScriptLoader._active=
Instance=3Dnew Sys._ScriptLoader;return =
a};Sys._ScriptLoader.isScriptLoaded=3Dfunction(b){var =
a=3Ddocument.createElement("script");a.src=3Db;return =
Array.contains(Sys._ScriptLoader._getLoadedScripts(),a.src)};Sys._ScriptL=
oader.readLoadedScripts=3Dfunction(){if(!Sys._ScriptLoader._referencedScr=
ipts){var =
b=3DSys._ScriptLoader._referencedScripts=3D[],c=3Ddocument.getElementsByT=
agName("SCRIPT");for(i=3Dc.length-1;i>=3D0;i--){var =
d=3Dc[i],a=3Dd.src;if(a.length)if(!Array.contains(b,a))Array.add(b,a)}}};=
Sys._ScriptLoader._clearScript=3Dfunction(a){if(!Sys.Debug.isDebug)a.pare=
ntNode.removeChild(a)};Sys._ScriptLoader._errorScriptLoadFailed=3Dfunctio=
n(b,d){var a;if(d)a=3DSys.Res.scriptLoadMultipleCallbacks;else =
a=3DSys.Res.scriptLoadFailed;var e=3D"Sys.ScriptLoadFailedException: =
"+String.format(a,b),c=3DError.create(e,{name:"Sys.ScriptLoadFailedExcept=
ion","scriptUrl":b});c.popStackFrame();return =
c};Sys._ScriptLoader._getLoadedScripts=3Dfunction(){if(!Sys._ScriptLoader=
._referencedScripts){Sys._ScriptLoader._referencedScripts=3D[];Sys._Scrip=
tLoader.readLoadedScripts()}return =
Sys._ScriptLoader._referencedScripts};Sys._ScriptLoaderTask=3Dfunction(b,=
a){this._scriptElement=3Db;this._completedCallback=3Da;this._notified=3D0=
};Sys._ScriptLoaderTask.prototype=3D{get_scriptElement:function(){return =
this._scriptElement},dispose:function(){if(this._disposed)return;this._di=
sposed=3Dtrue;this._removeScriptElementHandlers();Sys._ScriptLoader._clea=
rScript(this._scriptElement);this._scriptElement=3Dnull},execute:function=
(){this._addScriptElementHandlers();document.getElementsByTagName("HEAD")=
[0].appendChild(this._scriptElement)},_addScriptElementHandlers:function(=
){this._scriptLoadDelegate=3DFunction.createDelegate(this,this._scriptLoa=
dHandler);if(Sys.Browser.agent!=3D=3DSys.Browser.InternetExplorer){this._=
scriptElement.readyState=3D"loaded";$addHandler(this._scriptElement,"load=
",this._scriptLoadDelegate)}else =
$addHandler(this._scriptElement,"readystatechange",this._scriptLoadDelega=
te);this._scriptErrorDelegate=3DFunction.createDelegate(this,this._script=
ErrorHandler);$addHandler(this._scriptElement,"error",this._scriptErrorDe=
legate)},_removeScriptElementHandlers:function(){if(this._scriptLoadDeleg=
ate){var =
a=3Dthis.get_scriptElement();if(Sys.Browser.agent!=3D=3DSys.Browser.Inter=
netExplorer)$removeHandler(a,"load",this._scriptLoadDelegate);else =
$removeHandler(a,"readystatechange",this._scriptLoadDelegate);$removeHand=
ler(a,"error",this._scriptErrorDelegate);this._scriptErrorDelegate=3Dnull=
;this._scriptLoadDelegate=3Dnull}},_scriptErrorHandler:function(){if(this=
._disposed)return;this._completedCallback(this.get_scriptElement(),false)=
},_scriptLoadHandler:function(){if(this._disposed)return;var =
a=3Dthis.get_scriptElement();if(a.readyState!=3D=3D"loaded"&&a.readyState=
!=3D=3D"complete")return;var =
b=3Dthis;window.setTimeout(function(){b._completedCallback(a,true)},0)}};=
Sys._ScriptLoaderTask.registerClass("Sys._ScriptLoaderTask",null,Sys.IDis=
posable);Sys.ApplicationLoadEventArgs=3Dfunction(b,a){Sys.ApplicationLoad=
EventArgs.initializeBase(this);this._components=3Db;this._isPartialLoad=3D=
a};Sys.ApplicationLoadEventArgs.prototype=3D{get_components:function(){re=
turn this._components},get_isPartialLoad:function(){return =
this._isPartialLoad}};Sys.ApplicationLoadEventArgs.registerClass("Sys.App=
licationLoadEventArgs",Sys.EventArgs);Sys._Application=3Dfunction(){Sys._=
Application.initializeBase(this);this._disposableObjects=3D[];this._compo=
nents=3D{};this._createdComponents=3D[];this._secondPassComponents=3D[];t=
his._unloadHandlerDelegate=3DFunction.createDelegate(this,this._unloadHan=
dler);this._loadHandlerDelegate=3DFunction.createDelegate(this,this._load=
Handler);Sys.UI.DomEvent.addHandler(window,"unload",this._unloadHandlerDe=
legate);Sys.UI.DomEvent.addHandler(window,"load",this._loadHandlerDelegat=
e)};Sys._Application.prototype=3D{_creatingComponents:false,_disposing:fa=
lse,get_isCreatingComponents:function(){return =
this._creatingComponents},add_load:function(a){this.get_events().addHandl=
er("load",a)},remove_load:function(a){this.get_events().removeHandler("lo=
ad",a)},add_init:function(a){if(this._initialized)a(this,Sys.EventArgs.Em=
pty);else =
this.get_events().addHandler("init",a)},remove_init:function(a){this.get_=
events().removeHandler("init",a)},add_unload:function(a){this.get_events(=
).addHandler("unload",a)},remove_unload:function(a){this.get_events().rem=
oveHandler("unload",a)},addComponent:function(a){this._components[a.get_i=
d()]=3Da},beginCreateComponents:function(){this._creatingComponents=3Dtru=
e},dispose:function(){if(!this._disposing){this._disposing=3Dtrue;if(wind=
ow.pageUnload)window.pageUnload(this,Sys.EventArgs.Empty);var =
c=3Dthis.get_events().getHandler("unload");if(c)c(this,Sys.EventArgs.Empt=
y);var b=3DArray.clone(this._disposableObjects);for(var =
a=3D0,e=3Db.length;a<e;a++)b[a].dispose();Array.clear(this._disposableObj=
ects);Sys.UI.DomEvent.removeHandler(window,"unload",this._unloadHandlerDe=
legate);if(this._loadHandlerDelegate){Sys.UI.DomEvent.removeHandler(windo=
w,"load",this._loadHandlerDelegate);this._loadHandlerDelegate=3Dnull}var =
d=3DSys._ScriptLoader.getInstance();if(d)d.dispose();Sys._Application.cal=
lBaseMethod(this,"dispose")}},endCreateComponents:function(){var =
b=3Dthis._secondPassComponents;for(var a=3D0,d=3Db.length;a<d;a++){var =
c=3Db[a].component;Sys$Component$_setReferences(c,b[a].references);c.endU=
pdate()}this._secondPassComponents=3D[];this._creatingComponents=3Dfalse}=
,findComponent:function(b,a){return =
a?Sys.IContainer.isInstanceOfType(a)?a.findComponent(b):a[b]||null:Sys.Ap=
plication._components[b]||null},getComponents:function(){var =
a=3D[],b=3Dthis._components;for(var c in b)a[a.length]=3Db[c];return =
a},initialize:function(){if(!this._initialized&&!this._initializing){this=
._initializing=3Dtrue;window.setTimeout(Function.createDelegate(this,this=
._doInitialize),0)}},notifyScriptLoaded:function(){var =
a=3DSys._ScriptLoader.getInstance();if(a)a.notifyScriptLoaded()},register=
DisposableObject:function(a){if(!this._disposing)this._disposableObjects[=
this._disposableObjects.length]=3Da},raiseLoad:function(){var =
b=3Dthis.get_events().getHandler("load"),a=3Dnew =
Sys.ApplicationLoadEventArgs(Array.clone(this._createdComponents),!this._=
initializing);if(b)b(this,a);if(window.pageLoad)window.pageLoad(this,a);t=
his._createdComponents=3D[]},removeComponent:function(b){var =
a=3Db.get_id();if(a)delete =
this._components[a]},unregisterDisposableObject:function(a){if(!this._dis=
posing)Array.remove(this._disposableObjects,a)},_addComponentToSecondPass=
:function(b,a){this._secondPassComponents[this._secondPassComponents.leng=
th]=3D{component:b,references:a}},_doInitialize:function(){Sys._Applicati=
on.callBaseMethod(this,"initialize");var =
a=3Dthis.get_events().getHandler("init");if(a){this.beginCreateComponents=
();a(this,Sys.EventArgs.Empty);this.endCreateComponents()}this.raiseLoad(=
);this._initializing=3Dfalse},_loadHandler:function(){if(this._loadHandle=
rDelegate){Sys.UI.DomEvent.removeHandler(window,"load",this._loadHandlerD=
elegate);this._loadHandlerDelegate=3Dnull}this.initialize()},_unloadHandl=
er:function(){this.dispose()}};Sys._Application.registerClass("Sys._Appli=
cation",Sys.Component,Sys.IContainer);Sys.Application=3Dnew =
Sys._Application;var =
$find=3DSys.Application.findComponent;Type.registerNamespace("Sys.Net");S=
ys.Net.WebRequestExecutor=3Dfunction(){this._webRequest=3Dnull;this._resu=
ltObject=3Dnull};Sys.Net.WebRequestExecutor.prototype=3D{get_webRequest:f=
unction(){return =
this._webRequest},_set_webRequest:function(a){this._webRequest=3Da},get_s=
tarted:function(){throw =
Error.notImplemented()},get_responseAvailable:function(){throw =
Error.notImplemented()},get_timedOut:function(){throw =
Error.notImplemented()},get_aborted:function(){throw =
Error.notImplemented()},get_responseData:function(){throw =
Error.notImplemented()},get_statusCode:function(){throw =
Error.notImplemented()},get_statusText:function(){throw =
Error.notImplemented()},get_xml:function(){throw =
Error.notImplemented()},get_object:function(){if(!this._resultObject)this=
._resultObject=3DSys.Serialization.JavaScriptSerializer.deserialize(this.=
get_responseData());return =
this._resultObject},executeRequest:function(){throw =
Error.notImplemented()},abort:function(){throw =
Error.notImplemented()},getResponseHeader:function(){throw =
Error.notImplemented()},getAllResponseHeaders:function(){throw =
Error.notImplemented()}};Sys.Net.WebRequestExecutor.registerClass("Sys.Ne=
t.WebRequestExecutor");window.XMLDOM=3Dfunction(d){if(!window.DOMParser){=
var c=3D["Msxml2.DOMDocument.3.0","Msxml2.DOMDocument"];for(var =
b=3D0;b<c.length;b++)try{var a=3Dnew =
ActiveXObject(c[b]);a.async=3Dfalse;a.loadXML(d);a.setProperty("Selection=
Language","XPath");return a}catch(f){}return null}else try{var e=3Dnew =
window.DOMParser;return e.parseFromString(d,"text/xml")}catch(f){return =
null}return =
null};Sys.Net.XMLHttpExecutor=3Dfunction(){Sys.Net.XMLHttpExecutor.initia=
lizeBase(this);var =
a=3Dthis;this._xmlHttpRequest=3Dnull;this._webRequest=3Dnull;this._respon=
seAvailable=3Dfalse;this._timedOut=3Dfalse;this._timer=3Dnull;this._abort=
ed=3Dfalse;this._started=3Dfalse;this._onReadyStateChange=3Dfunction(){if=
(a._xmlHttpRequest.readyState=3D=3D=3D4){a._clearTimer();a._responseAvail=
able=3Dtrue;a._webRequest.completed(Sys.EventArgs.Empty);if(a._xmlHttpReq=
uest!=3Dnull){a._xmlHttpRequest.onreadystatechange=3DFunction.emptyMethod=
;a._xmlHttpRequest=3Dnull}}};this._clearTimer=3Dfunction(){if(a._timer!=3D=
null){window.clearTimeout(a._timer);a._timer=3Dnull}};this._onTimeout=3Df=
unction(){if(!a._responseAvailable){a._clearTimer();a._timedOut=3Dtrue;a.=
_xmlHttpRequest.onreadystatechange=3DFunction.emptyMethod;a._xmlHttpReque=
st.abort();a._webRequest.completed(Sys.EventArgs.Empty);a._xmlHttpRequest=
=3Dnull}}};Sys.Net.XMLHttpExecutor.prototype=3D{get_timedOut:function(){r=
eturn this._timedOut},get_started:function(){return =
this._started},get_responseAvailable:function(){return =
this._responseAvailable},get_aborted:function(){return =
this._aborted},executeRequest:function(){this._webRequest=3Dthis.get_webR=
equest();var =
c=3Dthis._webRequest.get_body(),a=3Dthis._webRequest.get_headers();this._=
xmlHttpRequest=3Dnew =
XMLHttpRequest;this._xmlHttpRequest.onreadystatechange=3Dthis._onReadySta=
teChange;var =
e=3Dthis._webRequest.get_httpVerb();this._xmlHttpRequest.open(e,this._web=
Request.getResolvedUrl(),true);if(a)for(var b in a){var =
f=3Da[b];if(typeof =
f!=3D=3D"function")this._xmlHttpRequest.setRequestHeader(b,f)}if(e.toLowe=
rCase()=3D=3D=3D"post"){if(a=3D=3D=3Dnull||!a["Content-Type"])this._xmlHt=
tpRequest.setRequestHeader("Content-Type","application/x-www-form-urlenco=
ded");if(!c)c=3D""}var =
d=3Dthis._webRequest.get_timeout();if(d>0)this._timer=3Dwindow.setTimeout=
(Function.createDelegate(this,this._onTimeout),d);this._xmlHttpRequest.se=
nd(c);this._started=3Dtrue},getResponseHeader:function(b){var =
a;try{a=3Dthis._xmlHttpRequest.getResponseHeader(b)}catch(c){}if(!a)a=3D"=
";return a},getAllResponseHeaders:function(){return =
this._xmlHttpRequest.getAllResponseHeaders()},get_responseData:function()=
{return =
this._xmlHttpRequest.responseText},get_statusCode:function(){return =
this._xmlHttpRequest.status},get_statusText:function(){return =
this._xmlHttpRequest.statusText},get_xml:function(){var =
a=3Dthis._xmlHttpRequest.responseXML;if(!a||!a.documentElement){a=3Dnew =
XMLDOM(this._xmlHttpRequest.responseText);if(!a||!a.documentElement)retur=
n null}else =
if(navigator.userAgent.indexOf("MSIE")!=3D=3D-1)a.setProperty("SelectionL=
anguage","XPath");if(a.documentElement.namespaceURI=3D=3D=3D"http://www.m=
ozilla.org/newlayout/xml/parsererror.xml"&&a.documentElement.tagName=3D=3D=
=3D"parsererror")return =
null;if(a.documentElement.firstChild&&a.documentElement.firstChild.tagNam=
e=3D=3D=3D"parsererror")return null;return =
a},abort:function(){if(this._aborted||this._responseAvailable||this._time=
dOut)return;this._aborted=3Dtrue;this._clearTimer();if(this._xmlHttpReque=
st&&!this._responseAvailable){this._xmlHttpRequest.onreadystatechange=3DF=
unction.emptyMethod;this._xmlHttpRequest.abort();this._xmlHttpRequest=3Dn=
ull;var =
a=3Dthis._webRequest._get_eventHandlerList().getHandler("completed");if(a=
)a(this,Sys.EventArgs.Empty)}}};Sys.Net.XMLHttpExecutor.registerClass("Sy=
s.Net.XMLHttpExecutor",Sys.Net.WebRequestExecutor);Sys.Net._WebRequestMan=
ager=3Dfunction(){this._this=3Dthis;this._defaultTimeout=3D0;this._defaul=
tExecutorType=3D"Sys.Net.XMLHttpExecutor"};Sys.Net._WebRequestManager.pro=
totype=3D{add_invokingRequest:function(a){this._get_eventHandlerList().ad=
dHandler("invokingRequest",a)},remove_invokingRequest:function(a){this._g=
et_eventHandlerList().removeHandler("invokingRequest",a)},add_completedRe=
quest:function(a){this._get_eventHandlerList().addHandler("completedReque=
st",a)},remove_completedRequest:function(a){this._get_eventHandlerList().=
removeHandler("completedRequest",a)},_get_eventHandlerList:function(){if(=
!this._events)this._events=3Dnew Sys.EventHandlerList;return =
this._events},get_defaultTimeout:function(){return =
this._defaultTimeout},set_defaultTimeout:function(a){this._defaultTimeout=
=3Da},get_defaultExecutorType:function(){return =
this._defaultExecutorType},set_defaultExecutorType:function(a){this._defa=
ultExecutorType=3Da},executeRequest:function(webRequest){var =
executor=3DwebRequest.get_executor();if(!executor){var =
failed=3Dfalse;try{var =
executorType=3Deval(this._defaultExecutorType);executor=3Dnew =
executorType}catch(a){failed=3Dtrue}webRequest.set_executor(executor)}if(=
executor.get_aborted())return;var evArgs=3Dnew =
Sys.Net.NetworkRequestEventArgs(webRequest),handler=3Dthis._get_eventHand=
lerList().getHandler("invokingRequest");if(handler)handler(this,evArgs);i=
f(!evArgs.get_cancel())executor.executeRequest()}};Sys.Net._WebRequestMan=
ager.registerClass("Sys.Net._WebRequestManager");Sys.Net.WebRequestManage=
r=3Dnew =
Sys.Net._WebRequestManager;Sys.Net.NetworkRequestEventArgs=3Dfunction(a){=
Sys.Net.NetworkRequestEventArgs.initializeBase(this);this._webRequest=3Da=
};Sys.Net.NetworkRequestEventArgs.prototype=3D{get_webRequest:function(){=
return =
this._webRequest}};Sys.Net.NetworkRequestEventArgs.registerClass("Sys.Net=
.NetworkRequestEventArgs",Sys.CancelEventArgs);Sys.Net.WebRequest=3Dfunct=
ion(){this._url=3D"";this._headers=3D{};this._body=3Dnull;this._userConte=
xt=3Dnull;this._httpVerb=3Dnull;this._executor=3Dnull;this._invokeCalled=3D=
false;this._timeout=3D0};Sys.Net.WebRequest.prototype=3D{add_completed:fu=
nction(a){this._get_eventHandlerList().addHandler("completed",a)},remove_=
completed:function(a){this._get_eventHandlerList().removeHandler("complet=
ed",a)},completed:function(b){var =
a=3DSys.Net.WebRequestManager._get_eventHandlerList().getHandler("complet=
edRequest");if(a)a(this._executor,b);a=3Dthis._get_eventHandlerList().get=
Handler("completed");if(a)a(this._executor,b)},_get_eventHandlerList:func=
tion(){if(!this._events)this._events=3Dnew Sys.EventHandlerList;return =
this._events},get_url:function(){return =
this._url},set_url:function(a){this._url=3Da},get_headers:function(){retu=
rn =
this._headers},get_httpVerb:function(){if(this._httpVerb=3D=3D=3Dnull){if=
(this._body=3D=3D=3Dnull)return "GET";return "POST"}return =
this._httpVerb},set_httpVerb:function(a){this._httpVerb=3Da},get_body:fun=
ction(){return =
this._body},set_body:function(a){this._body=3Da},get_userContext:function=
(){return =
this._userContext},set_userContext:function(a){this._userContext=3Da},get=
_executor:function(){return =
this._executor},set_executor:function(a){this._executor=3Da;this._executo=
r._set_webRequest(this)},get_timeout:function(){if(this._timeout=3D=3D=3D=
0)return Sys.Net.WebRequestManager.get_defaultTimeout();return =
this._timeout},set_timeout:function(a){this._timeout=3Da},getResolvedUrl:=
function(){return =
Sys.Net.WebRequest._resolveUrl(this._url)},invoke:function(){Sys.Net.WebR=
equestManager.executeRequest(this);this._invokeCalled=3Dtrue}};Sys.Net.We=
bRequest._resolveUrl=3Dfunction(b,a){if(b&&b.indexOf("://")!=3D=3D-1)retu=
rn b;if(!a||a.length=3D=3D=3D0){var =
c=3Ddocument.getElementsByTagName("base")[0];if(c&&c.href&&c.href.length>=
0)a=3Dc.href;else a=3Ddocument.URL}var =
d=3Da.indexOf("?");if(d!=3D=3D-1)a=3Da.substr(0,d);a=3Da.substr(0,a.lastI=
ndexOf("/")+1);if(!b||b.length=3D=3D=3D0)return =
a;if(b.charAt(0)=3D=3D=3D"/"){var =
e=3Da.indexOf("://"),g=3Da.indexOf("/",e+3);return =
a.substr(0,g)+b}else{var f=3Da.lastIndexOf("/");return =
a.substr(0,f+1)+b}};Sys.Net.WebRequest._createQueryString=3Dfunction(d,b)=
{if(!b)b=3DencodeURIComponent;var a=3Dnew =
Sys.StringBuilder,f=3D0;for(var c in d){var e=3Dd[c];if(typeof =
e=3D=3D=3D"function")continue;var =
g=3DSys.Serialization.JavaScriptSerializer.serialize(e);if(f!=3D=3D0)a.ap=
pend("&");a.append(c);a.append("=3D");a.append(b(g));f++}return =
a.toString()};Sys.Net.WebRequest._createUrl=3Dfunction(a,b){if(!b)return =
a;var d=3DSys.Net.WebRequest._createQueryString(b);if(d.length>0){var =
c=3D"?";if(a&&a.indexOf("?")!=3D=3D-1)c=3D"&";return a+c+d}else return =
a};Sys.Net.WebRequest.registerClass("Sys.Net.WebRequest");Sys.Net.WebServ=
iceProxy=3Dfunction(){};Sys.Net.WebServiceProxy.prototype=3D{set_timeout:=
function(a){this._timeout=3Da},get_timeout:function(){return =
this._timeout},set_defaultUserContext:function(a){this._userContext=3Da},=
get_defaultUserContext:function(){return =
this._userContext},set_defaultSucceededCallback:function(a){this._succeed=
ed=3Da},get_defaultSucceededCallback:function(){return =
this._succeeded},set_defaultFailedCallback:function(a){this._failed=3Da},=
get_defaultFailedCallback:function(){return =
this._failed},set_path:function(a){this._path=3Da},get_path:function(){re=
turn =
this._path},_invoke:function(d,e,g,f,c,b,a){if(c=3D=3D=3Dnull||typeof =
c=3D=3D=3D"undefined")c=3Dthis.get_defaultSucceededCallback();if(b=3D=3D=3D=
null||typeof =
b=3D=3D=3D"undefined")b=3Dthis.get_defaultFailedCallback();if(a=3D=3D=3Dn=
ull||typeof =
a=3D=3D=3D"undefined")a=3Dthis.get_defaultUserContext();return =
Sys.Net.WebServiceProxy.invoke(d,e,g,f,c,b,a,this.get_timeout())}};Sys.Ne=
t.WebServiceProxy.registerClass("Sys.Net.WebServiceProxy");Sys.Net.WebSer=
viceProxy.invoke=3Dfunction(k,a,j,d,i,c,f,h){var b=3Dnew =
Sys.Net.WebRequest;b.get_headers()["Content-Type"]=3D"application/json; =
charset=3Dutf-8";if(!d)d=3D{};var =
g=3Dd;if(!j||!g)g=3D{};b.set_url(Sys.Net.WebRequest._createUrl(k+"/"+a,g)=
);var =
e=3Dnull;if(!j){e=3DSys.Serialization.JavaScriptSerializer.serialize(d);i=
f(e=3D=3D=3D"{}")e=3D""}b.set_body(e);b.add_completed(l);if(h&&h>0)b.set_=
timeout(h);b.invoke();function l(d){if(d.get_responseAvailable()){var =
e=3Dd.get_statusCode(),b=3Dnull;try{var =
j=3Dd.getResponseHeader("Content-Type");if(j.startsWith("application/json=
"))b=3Dd.get_object();else =
if(j.startsWith("text/xml"))b=3Dd.get_xml();else =
b=3Dd.get_responseData()}catch(m){}var =
k=3Dd.getResponseHeader("jsonerror"),g=3Dk=3D=3D=3D"true";if(g)b=3Dnew =
Sys.Net.WebServiceError(false,b.Message,b.StackTrace,b.ExceptionType);if(=
e<200||e>=3D300||g){if(c){if(!b||!g)b=3Dnew =
Sys.Net.WebServiceError(false,String.format(Sys.Res.webServiceFailedNoMsg=
,a),"","");b._statusCode=3De;c(b,f,a)}}else if(i)i(b,f,a)}else{var =
h;if(d.get_timedOut())h=3DString.format(Sys.Res.webServiceTimedOut,a);els=
e h=3DString.format(Sys.Res.webServiceFailedNoMsg,a);if(c)c(new =
Sys.Net.WebServiceError(d.get_timedOut(),h,"",""),f,a)}}return =
b};Sys.Net.WebServiceProxy._generateTypedConstructor=3Dfunction(a){return=
 function(b){if(b)for(var c in =
b)this[c]=3Db[c];this.__type=3Da}};Sys.Net.WebServiceError=3Dfunction(c,d=
,b,a){this._timedOut=3Dc;this._message=3Dd;this._stackTrace=3Db;this._exc=
eptionType=3Da;this._statusCode=3D-1};Sys.Net.WebServiceError.prototype=3D=
{get_timedOut:function(){return =
this._timedOut},get_statusCode:function(){return =
this._statusCode},get_message:function(){return =
this._message},get_stackTrace:function(){return =
this._stackTrace},get_exceptionType:function(){return =
this._exceptionType}};Sys.Net.WebServiceError.registerClass("Sys.Net.WebS=
erviceError");Type.registerNamespace("Sys.Services");Sys.Services._Profil=
eService=3Dfunction(){Sys.Services._ProfileService.initializeBase(this);t=
his.properties=3D{}};Sys.Services._ProfileService.DefaultWebServicePath=3D=
"";Sys.Services._ProfileService.prototype=3D{_defaultFailedCallback:null,=
_defaultLoadCompletedCallback:null,_defaultSaveCompletedCallback:null,_pa=
th:"",_timeout:0,get_defaultFailedCallback:function(){return =
this._defaultFailedCallback},set_defaultFailedCallback:function(a){this._=
defaultFailedCallback=3Da},get_defaultLoadCompletedCallback:function(){re=
turn =
this._defaultLoadCompletedCallback},set_defaultLoadCompletedCallback:func=
tion(a){this._defaultLoadCompletedCallback=3Da},get_defaultSaveCompletedC=
allback:function(){return =
this._defaultSaveCompletedCallback},set_defaultSaveCompletedCallback:func=
tion(a){this._defaultSaveCompletedCallback=3Da},get_path:function(){retur=
n =
this._path},set_path:function(a){if(!a||!a.length)a=3D"";this._path=3Da},=
get_timeout:function(){return =
this._timeout},set_timeout:function(a){this._timeout=3Da},load:function(b=
,d,e,f){var =
c=3D{},a;if(!b)a=3D"GetAllPropertiesForCurrentUser";else{a=3D"GetProperti=
esForCurrentUser";c=3D{properties:this._clonePropertyNames(b)}}this._invo=
ke(this._get_path(),a,false,c,Function.createDelegate(this,this._onLoadCo=
mplete),Function.createDelegate(this,this._onLoadFailed),[d,e,f])},save:f=
unction(d,a,c,e){var =
b=3Dthis._flattenProperties(d,this.properties);this._invoke(this._get_pat=
h(),"SetPropertiesForCurrentUser",false,{values:b},Function.createDelegat=
e(this,this._onSaveComplete),Function.createDelegate(this,this._onSaveFai=
led),[a,c,e])},_clonePropertyNames:function(e){var c=3D[],d=3D{};for(var =
b=3D0;b<e.length;b++){var =
a=3De[b];if(!d[a]){Array.add(c,a);d[a]=3Dtrue}}return =
c},_flattenProperties:function(a,h,i){var =
b=3D{},e,d;if(a&&a.length=3D=3D=3D0)return b;for(var c in =
h){e=3Dh[c];d=3Di?i+"."+c:c;if(Sys.Services.ProfileGroup.isInstanceOfType=
(e)){var g=3Dthis._flattenProperties(a,e,d);for(var f in g){var =
j=3Dg[f];b[f]=3Dj}}else =
if(!a||Array.indexOf(a,d)!=3D=3D-1)b[d]=3De}return =
b},_get_path:function(){var =
a=3Dthis.get_path();if(!a.length)a=3DSys.Services._ProfileService.Default=
WebServicePath;if(!a||!a.length)throw =
Error.invalidOperation(Sys.Res.servicePathNotSet);return =
a},_onLoadComplete:function(a,f,g){if(typeof a!=3D=3D"object")throw =
Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,=
g,"Object"));var d=3Dthis._unflattenProperties(a);for(var b in =
d)this.properties[b]=3Dd[b];var =
c=3Df[0],e=3Dc?c:this._defaultLoadCompletedCallback;if(e)e(a.length,f[2],=
"Sys.Services.ProfileService.load")},_onLoadFailed:function(d,c){var =
a=3Dc[1],b=3Da?a:this._defaultFailedCallback;if(b)b(d,c[2],"Sys.Services.=
ProfileService.load")},_onSaveComplete:function(d,c,f){if(typeof =
d!=3D=3D"number")throw =
Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,=
f,"Number"));var =
a=3Dc[0],e=3Dc[2],b=3Da?a:this._defaultSaveCompletedCallback;if(b)b(d,e,"=
Sys.Services.ProfileService.save")},_onSaveFailed:function(e,c){var =
a=3Dc[1],d=3Dc[2],b=3Da?a:this._defaultFailedCallback;if(b)b(e,d,"Sys.Ser=
vices.ProfileService.save")},_unflattenProperties:function(e){var =
c=3D{},d,f,h=3D0;for(var a in =
e){h++;f=3De[a];d=3Da.indexOf(".");if(d!=3D=3D-1){var =
g=3Da.substr(0,d);a=3Da.substr(d+1);var =
b=3Dc[g];if(!b||!Sys.Services.ProfileGroup.isInstanceOfType(b)){b=3Dnew =
Sys.Services.ProfileGroup;c[g]=3Db}b[a]=3Df}else =
c[a]=3Df}e.length=3Dh;return =
c}};Sys.Services._ProfileService.registerClass("Sys.Services._ProfileServ=
ice",Sys.Net.WebServiceProxy);Sys.Services.ProfileService=3Dnew =
Sys.Services._ProfileService;Sys.Services.ProfileGroup=3Dfunction(a){if(a=
)for(var b in =
a)this[b]=3Da[b]};Sys.Services.ProfileGroup.registerClass("Sys.Services.P=
rofileGroup");Sys.Services._AuthenticationService=3Dfunction(){Sys.Servic=
es._AuthenticationService.initializeBase(this)};Sys.Services._Authenticat=
ionService.DefaultWebServicePath=3D"";Sys.Services._AuthenticationService=
.prototype=3D{_defaultFailedCallback:null,_defaultLoginCompletedCallback:=
null,_defaultLogoutCompletedCallback:null,_path:"",_timeout:0,_authentica=
ted:false,get_defaultFailedCallback:function(){return =
this._defaultFailedCallback},set_defaultFailedCallback:function(a){this._=
defaultFailedCallback=3Da},get_defaultLoginCompletedCallback:function(){r=
eturn =
this._defaultLoginCompletedCallback},set_defaultLoginCompletedCallback:fu=
nction(a){this._defaultLoginCompletedCallback=3Da},get_defaultLogoutCompl=
etedCallback:function(){return =
this._defaultLogoutCompletedCallback},set_defaultLogoutCompletedCallback:=
function(a){this._defaultLogoutCompletedCallback=3Da},get_isLoggedIn:func=
tion(){return this._authenticated},get_path:function(){return =
this._path},set_path:function(a){if(!a||!a.length)a=3D"";this._path=3Da},=
get_timeout:function(){return =
this._timeout},set_timeout:function(a){this._timeout=3Da},login:function(=
c,b,a,h,f,d,e,g){this._invoke(this._get_path(),"Login",false,{userName:c,=
password:b,createPersistentCookie:a},Function.createDelegate(this,this._o=
nLoginComplete),Function.createDelegate(this,this._onLoginFailed),[c,b,a,=
f,d,e,g])},logout:function(c,a,b,d){this._invoke(this._get_path(),"Logout=
",false,{},Function.createDelegate(this,this._onLogoutComplete),Function.=
createDelegate(this,this._onLogoutFailed),[c,a,b,d])},_get_path:function(=
){var =
a=3Dthis.get_path();if(!a.length)a=3DSys.Services._AuthenticationService.=
DefaultWebServicePath;if(!a||!a.length)throw =
Error.invalidOperation(Sys.Res.servicePathNotSet);return =
a},_onLoginComplete:function(f,c,g){if(typeof f!=3D=3D"boolean")throw =
Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,=
g,"Boolean"));var =
b=3Dc[3],d=3Dc[4],e=3Dc[6],a=3Dd?d:this._defaultLoginCompletedCallback;if=
(f){this._authenticated=3Dtrue;if(a)a(true,e,"Sys.Services.Authentication=
Service.login");if(typeof =
b!=3D=3D"undefined"&&b!=3D=3Dnull)window.location.href=3Db}else =
if(a)a(false,e,"Sys.Services.AuthenticationService.login")},_onLoginFaile=
d:function(d,c){var =
a=3Dc[5],b=3Da?a:this._defaultFailedCallback;if(b)b(d,c[6],"Sys.Services.=
AuthenticationService.login")},_onLogoutComplete:function(g,a,f){if(g!=3D=
=3Dnull)throw =
Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,=
f,"null"));var =
c=3Da[0],b=3Da[1],e=3Da[3],d=3Db?b:this._defaultLogoutCompletedCallback;t=
his._authenticated=3Dfalse;if(d)d(null,e,"Sys.Services.AuthenticationServ=
ice.logout");if(!c)window.location.reload();else =
window.location.href=3Dc},_onLogoutFailed:function(d,c){var =
a=3Dc[2],b=3Da?a:this._defaultFailedCallback;if(b)b(d,c[3],"Sys.Services.=
AuthenticationService.logout")},_setAuthenticated:function(a){this._authe=
nticated=3Da}};Sys.Services._AuthenticationService.registerClass("Sys.Ser=
vices._AuthenticationService",Sys.Net.WebServiceProxy);Sys.Services.Authe=
nticationService=3Dnew =
Sys.Services._AuthenticationService;Type.registerNamespace("Sys.Serializa=
tion");Sys.Serialization.JavaScriptSerializer=3Dfunction(){};Sys.Serializ=
ation.JavaScriptSerializer.registerClass("Sys.Serialization.JavaScriptSer=
ializer");Sys.Serialization.JavaScriptSerializer._stringRegEx=3Dnew =
RegExp('["\b\f\n\r\t\\\\\x00-\x1F]',"i");Sys.Serialization.JavaScriptSeri=
alizer._serializeWithBuilder=3Dfunction(b,a,h){var c;switch(typeof =
b){case =
"object":if(b)if(Array.isInstanceOfType(b)){a.append("[");for(c=3D0;c<b.l=
ength;++c){if(c>0)a.append(",");Sys.Serialization.JavaScriptSerializer._s=
erializeWithBuilder(b[c],a)}a.append("]")}else{if(Date.isInstanceOfType(b=
)){a.append('"\\/Date(');a.append(b.getTime());a.append(')\\/"');break}va=
r e=3D[],i=3D0;for(var g in =
b){if(g.startsWith("$"))continue;e[i++]=3Dg}if(h)e.sort();a.append("{");v=
ar j=3Dfalse;for(c=3D0;c<i;c++){var f=3Db[e[c]];if(typeof =
f!=3D=3D"undefined"&&typeof f!=3D=3D"function"){if(j)a.append(",");else =
j=3Dtrue;Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(e[c=
],a,h);a.append(":");Sys.Serialization.JavaScriptSerializer._serializeWit=
hBuilder(f,a,h)}}a.append("}")}else a.append("null");break;case =
"number":if(isFinite(b))a.append(String(b));else throw =
Error.invalidOperation(Sys.Res.cannotSerializeNonFiniteNumbers);break;cas=
e =
"string":a.append('"');if(Sys.Browser.agent=3D=3D=3DSys.Browser.Safari||S=
ys.Serialization.JavaScriptSerializer._stringRegEx.test(b)){var =
k=3Db.length;for(c=3D0;c<k;++c){var d=3Db.charAt(c);if(d>=3D" =
"){if(d=3D=3D=3D"\\"||d=3D=3D=3D'"')a.append("\\");a.append(d)}else =
switch(d){case "\b":a.append("\\b");break;case =
"\f":a.append("\\f");break;case "\n":a.append("\\n");break;case =
"\r":a.append("\\r");break;case =
"\t":a.append("\\t");break;default:a.append("\\u00");if(d.charCodeAt()<16=
)a.append("0");a.append(d.charCodeAt().toString(16))}}}else =
a.append(b);a.append('"');break;case =
"boolean":a.append(b.toString());break;default:a.append("null");break}};S=
ys.Serialization.JavaScriptSerializer.serialize=3Dfunction(b){var =
a=3Dnew =
Sys.StringBuilder;Sys.Serialization.JavaScriptSerializer._serializeWithBu=
ilder(b,a,false);return =
a.toString()};Sys.Serialization.JavaScriptSerializer.deserialize=3Dfuncti=
on(data){if(data.length=3D=3D=3D0)throw =
Error.argument("data",Sys.Res.cannotDeserializeEmptyString);try{var =
exp=3Ddata.replace(new =
RegExp('(^|[^\\\\])\\"\\\\/Date\\((-?[0-9]+)\\)\\\\/\\"',"g"),"$1new =
Date($2)");return eval("("+exp+")")}catch(a){throw =
Error.argument("data",Sys.Res.cannotDeserializeInvalidJson)}};Sys.Culture=
Info=3Dfunction(c,b,a){this.name=3Dc;this.numberFormat=3Db;this.dateTimeF=
ormat=3Da};Sys.CultureInfo.prototype=3D{_getDateTimeFormats:function(){if=
(!this._dateTimeFormats){var =
a=3Dthis.dateTimeFormat;this._dateTimeFormats=3D[a.MonthDayPattern,a.Year=
MonthPattern,a.ShortDatePattern,a.ShortTimePattern,a.LongDatePattern,a.Lo=
ngTimePattern,a.FullDateTimePattern,a.RFC1123Pattern,a.SortableDateTimePa=
ttern,a.UniversalSortableDateTimePattern]}return =
this._dateTimeFormats},_getMonthIndex:function(a){if(!this._upperMonths)t=
his._upperMonths=3Dthis._toUpperArray(this.dateTimeFormat.MonthNames);ret=
urn =
Array.indexOf(this._upperMonths,this._toUpper(a))},_getAbbrMonthIndex:fun=
ction(a){if(!this._upperAbbrMonths)this._upperAbbrMonths=3Dthis._toUpperA=
rray(this.dateTimeFormat.AbbreviatedMonthNames);return =
Array.indexOf(this._upperMonths,this._toUpper(a))},_getDayIndex:function(=
a){if(!this._upperDays)this._upperDays=3Dthis._toUpperArray(this.dateTime=
Format.DayNames);return =
Array.indexOf(this._upperDays,this._toUpper(a))},_getAbbrDayIndex:functio=
n(a){if(!this._upperAbbrDays)this._upperAbbrDays=3Dthis._toUpperArray(thi=
s.dateTimeFormat.AbbreviatedDayNames);return =
Array.indexOf(this._upperAbbrDays,this._toUpper(a))},_toUpperArray:functi=
on(c){var b=3D[];for(var =
a=3D0,d=3Dc.length;a<d;a++)b[a]=3Dthis._toUpper(c[a]);return =
b},_toUpper:function(a){return a.split("\u00A0").join(" =
").toUpperCase()}};Sys.CultureInfo._parse=3Dfunction(b){var =
a=3DSys.Serialization.JavaScriptSerializer.deserialize(b);return new =
Sys.CultureInfo(a.name,a.numberFormat,a.dateTimeFormat)};Sys.CultureInfo.=
registerClass("Sys.CultureInfo");Sys.CultureInfo.InvariantCulture=3DSys.C=
ultureInfo._parse('{"name":"","numberFormat":{"CurrencyDecimalDigits":2,"=
CurrencyDecimalSeparator":".","IsReadOnly":true,"CurrencyGroupSizes":[3],=
"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":"=
,","CurrencySymbol":"\u00A4","NaNSymbol":"NaN","CurrencyNegativePattern":=
0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePa=
ttern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberD=
ecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","=
CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveS=
ign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentG=
roupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"\u2030","NativeD=
igits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"=
dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"=
@-62135568000000@","MaxSupportedDateTime":"@253402300799999@","AlgorithmT=
ype":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":tr=
ue},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDate=
TimePattern":"dddd, dd MMMM yyyy HH:mm:ss","LongDatePattern":"dddd, dd =
MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"MMMM =
dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy =
HH\':\'mm\':\'ss =
\'GMT\'","ShortDatePattern":"MM/dd/yyyy","ShortTimePattern":"HH:mm","Sort=
ableDateTimePattern":"yyyy\'-\'MM\'-\'dd\'T\'HH\':\'mm\':\'ss","TimeSepar=
ator":":","UniversalSortableDateTimePattern":"yyyy\'-\'MM\'-\'dd =
HH\':\'mm\':\'ss\'Z\'","YearMonthPattern":"yyyy =
MMMM","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"=
ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunda=
y","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"Abbrev=
iatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","=
Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","=
May","June","July","August","September","October","November","December","=
"],"IsReadOnly":true,"NativeCalendarName":"Gregorian =
Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May",=
"Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["Janu=
ary","February","March","April","May","June","July","August","September",=
"October","November","December",""]}}');if(typeof =
__cultureInfo=3D=3D=3D"undefined")var =
__cultureInfo=3D'{"name":"en-US","numberFormat":{"CurrencyDecimalDigits":=
2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":=
[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparato=
r":",","CurrencySymbol":"$","NaNSymbol":"NaN","CurrencyNegativePattern":0=
,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePat=
tern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDe=
cimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","C=
urrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSi=
gn":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGr=
oupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"\u2030","NativeDi=
gits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"d=
ateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"@=
-62135568000000@","MaxSupportedDateTime":"@253402300799999@","AlgorithmTy=
pe":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":fal=
se},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDate=
TimePattern":"dddd, MMMM dd, yyyy h:mm:ss tt","LongDatePattern":"dddd, =
MMMM dd, yyyy","LongTimePattern":"h:mm:ss tt","MonthDayPattern":"MMMM =
dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy =
HH\':\'mm\':\'ss =
\'GMT\'","ShortDatePattern":"M/d/yyyy","ShortTimePattern":"h:mm =
tt","SortableDateTimePattern":"yyyy\'-\'MM\'-\'dd\'T\'HH\':\'mm\':\'ss","=
TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\'-\'MM\'-\'dd=
 HH\':\'mm\':\'ss\'Z\'","YearMonthPattern":"MMMM, =
yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"=
ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunda=
y","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"Abbrev=
iatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","=
Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","=
May","June","July","August","September","October","November","December","=
"],"IsReadOnly":false,"NativeCalendarName":"Gregorian =
Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May",=
"Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["Janu=
ary","February","March","April","May","June","July","August","September",=
"October","November","December",""]}}';Sys.CultureInfo.CurrentCulture=3DS=
ys.CultureInfo._parse(__cultureInfo);delete =
__cultureInfo;Sys.UI.Point=3Dfunction(a,b){this.x=3Da;this.y=3Db};Sys.UI.=
Point.registerClass("Sys.UI.Point");Sys.UI.Bounds=3Dfunction(c,d,b,a){thi=
s.x=3Dc;this.y=3Dd;this.height=3Da;this.width=3Db};Sys.UI.Bounds.register=
Class("Sys.UI.Bounds");Sys.UI.DomElement=3Dfunction(){};Sys.UI.DomElement=
.registerClass("Sys.UI.DomElement");Sys.UI.DomElement.addCssClass=3Dfunct=
ion(a,b){if(!Sys.UI.DomElement.containsCssClass(a,b))if(a.className=3D=3D=
=3D"")a.className=3Db;else a.className+=3D" =
"+b};Sys.UI.DomElement.containsCssClass=3Dfunction(b,a){return =
Array.contains(b.className.split(" =
"),a)};Sys.UI.DomElement.getBounds=3Dfunction(a){var =
b=3DSys.UI.DomElement.getLocation(a);return new =
Sys.UI.Bounds(b.x,b.y,a.offsetWidth||0,a.offsetHeight||0)};var =
$get=3DSys.UI.DomElement.getElementById=3Dfunction(f,e){if(!e)return =
document.getElementById(f);if(e.getElementById)return =
e.getElementById(f);var c=3D[],d=3De.childNodes;for(var =
b=3D0;b<d.length;b++){var =
a=3Dd[b];if(a.nodeType=3D=3D1)c[c.length]=3Da}while(c.length){a=3Dc.shift=
();if(a.id=3D=3Df)return =
a;d=3Da.childNodes;for(b=3D0;b<d.length;b++){a=3Dd[b];if(a.nodeType=3D=3D=
1)c[c.length]=3Da}}return null};switch(Sys.Browser.agent){case =
Sys.Browser.InternetExplorer:Sys.UI.DomElement.getLocation=3Dfunction =
Sys$UI$DomElement$getLocation(a){if(a.self||a.nodeType=3D=3D=3D9)return =
new Sys.UI.Point(0,0);var d=3Da.getClientRects();if(!d||!d.length)return =
new Sys.UI.Point(0,0);var =
e=3Da.ownerDocument.parentWindow,g=3De.screenLeft-top.screenLeft-top.docu=
ment.documentElement.scrollLeft+2,h=3De.screenTop-top.screenTop-top.docum=
ent.documentElement.scrollTop+2,c=3De.frameElement||null;if(c){var =
b=3Dc.currentStyle;g+=3D(c.frameBorder||1)*2+(parseInt(b.paddingLeft)||0)=
+(parseInt(b.borderLeftWidth)||0)-a.ownerDocument.documentElement.scrollL=
eft;h+=3D(c.frameBorder||1)*2+(parseInt(b.paddingTop)||0)+(parseInt(b.bor=
derTopWidth)||0)-a.ownerDocument.documentElement.scrollTop}var =
f=3Dd[0];return new Sys.UI.Point(f.left-g,f.top-h)};break;case =
Sys.Browser.Safari:Sys.UI.DomElement.getLocation=3Dfunction(c){if(c.windo=
w&&c.window=3D=3D=3Dc||c.nodeType=3D=3D=3D9)return new =
Sys.UI.Point(0,0);var g=3D0,h=3D0,j=3Dnull,f=3Dnull,b;for(var =
a=3Dc;a;j=3Da,(f=3Db,a=3Da.offsetParent)){b=3DSys.UI.DomElement._getCurre=
ntStyle(a);var =
e=3Da.tagName;if((a.offsetLeft||a.offsetTop)&&(e!=3D=3D"BODY"||(!f||f.pos=
ition!=3D=3D"absolute"))){g+=3Da.offsetLeft;h+=3Da.offsetTop}}b=3DSys.UI.=
DomElement._getCurrentStyle(c);var =
d=3Db?b.position:null,k=3Dd&&d!=3D=3D"static";if(!d||d!=3D=3D"absolute")f=
or(var =
a=3Dc.parentNode;a;a=3Da.parentNode){e=3Da.tagName;if(e!=3D=3D"BODY"&&e!=3D=
=3D"HTML"&&(a.scrollLeft||a.scrollTop)){g-=3Da.scrollLeft||0;h-=3Da.scrol=
lTop||0}b=3DSys.UI.DomElement._getCurrentStyle(a);var =
i=3Db?b.position:null;if(i&&i=3D=3D=3D"absolute")break}return new =
Sys.UI.Point(g,h)};break;case =
Sys.Browser.Opera:Sys.UI.DomElement.getLocation=3Dfunction(b){if(b.window=
&&b.window=3D=3D=3Db||b.nodeType=3D=3D=3D9)return new =
Sys.UI.Point(0,0);var d=3D0,e=3D0,i=3Dnull;for(var =
a=3Db;a;i=3Da,a=3Da.offsetParent){var =
f=3Da.tagName;d+=3Da.offsetLeft||0;e+=3Da.offsetTop||0}var =
g=3Db.style.position,c=3Dg&&g!=3D=3D"static";for(var =
a=3Db.parentNode;a;a=3Da.parentNode){f=3Da.tagName;if(f!=3D=3D"BODY"&&f!=3D=
=3D"HTML"&&(a.scrollLeft||a.scrollTop)&&(c&&(a.style.overflow=3D=3D=3D"sc=
roll"||a.style.overflow=3D=3D=3D"auto"))){d-=3Da.scrollLeft||0;e-=3Da.scr=
ollTop||0}var =
h=3Da&&a.style?a.style.position:null;c=3Dc||h&&h!=3D=3D"static"}return =
new =
Sys.UI.Point(d,e)};break;default:Sys.UI.DomElement.getLocation=3Dfunction=
(d){if(d.window&&d.window=3D=3D=3Dd||d.nodeType=3D=3D=3D9)return new =
Sys.UI.Point(0,0);var e=3D0,f=3D0,i=3Dnull,h=3Dnull,b=3Dnull;for(var =
a=3Dd;a;i=3Da,(h=3Db,a=3Da.offsetParent)){var =
c=3Da.tagName;b=3DSys.UI.DomElement._getCurrentStyle(a);if((a.offsetLeft|=
|a.offsetTop)&&!(c=3D=3D=3D"BODY"&&(!h||h.position!=3D=3D"absolute"))){e+=
=3Da.offsetLeft;f+=3Da.offsetTop}if(i!=3D=3Dnull&&b){if(c!=3D=3D"TABLE"&&=
c!=3D=3D"TD"&&c!=3D=3D"HTML"){e+=3DparseInt(b.borderLeftWidth)||0;f+=3Dpa=
rseInt(b.borderTopWidth)||0}if(c=3D=3D=3D"TABLE"&&(b.position=3D=3D=3D"re=
lative"||b.position=3D=3D=3D"absolute")){e+=3DparseInt(b.marginLeft)||0;f=
+=3DparseInt(b.marginTop)||0}}}b=3DSys.UI.DomElement._getCurrentStyle(d);=
var =
g=3Db?b.position:null,j=3Dg&&g!=3D=3D"static";if(!g||g!=3D=3D"absolute")f=
or(var =
a=3Dd.parentNode;a;a=3Da.parentNode){c=3Da.tagName;if(c!=3D=3D"BODY"&&c!=3D=
=3D"HTML"&&(a.scrollLeft||a.scrollTop)){e-=3Da.scrollLeft||0;f-=3Da.scrol=
lTop||0;b=3DSys.UI.DomElement._getCurrentStyle(a);e+=3DparseInt(b.borderL=
eftWidth)||0;f+=3DparseInt(b.borderTopWidth)||0}}return new =
Sys.UI.Point(e,f)};break}Sys.UI.DomElement.removeCssClass=3Dfunction(d,c)=
{var a=3D" "+d.className+" ",b=3Da.indexOf(" "+c+" =
");if(b>=3D0)d.className=3D(a.substr(0,b)+" =
"+a.substring(b+c.length+1,a.length)).trim()};Sys.UI.DomElement.setLocati=
on=3Dfunction(b,c,d){var =
a=3Db.style;a.position=3D"absolute";a.left=3Dc+"px";a.top=3Dd+"px"};Sys.U=
I.DomElement.toggleCssClass=3Dfunction(b,a){if(Sys.UI.DomElement.contains=
CssClass(b,a))Sys.UI.DomElement.removeCssClass(b,a);else =
Sys.UI.DomElement.addCssClass(b,a)};Sys.UI.DomElement._getCurrentStyle=3D=
function(a){var =
b=3D(a.ownerDocument?a.ownerDocument:a.documentElement).defaultView;retur=
n =
b&&a!=3D=3Db&&b.getComputedStyle?b.getComputedStyle(a,null):a.style};Sys.=
UI.Behavior=3Dfunction(b){Sys.UI.Behavior.initializeBase(this);this._elem=
ent=3Db;var a=3Db._behaviors;if(!a)b._behaviors=3D[this];else =
a[a.length]=3Dthis};Sys.UI.Behavior.prototype=3D{_name:null,get_element:f=
unction(){return this._element},get_id:function(){var =
a=3DSys.UI.Behavior.callBaseMethod(this,"get_id");if(a)return =
a;if(!this._element||!this._element.id)return "";return =
this._element.id+"$"+this.get_name()},get_name:function(){if(this._name)r=
eturn this._name;var =
a=3DObject.getTypeName(this),b=3Da.lastIndexOf(".");if(b!=3D-1)a=3Da.subs=
tr(b+1);if(!this.get_isInitialized())this._name=3Da;return =
a},set_name:function(a){this._name=3Da},initialize:function(){Sys.UI.Beha=
vior.callBaseMethod(this,"initialize");var =
a=3Dthis.get_name();if(a)this._element[a]=3Dthis},dispose:function(){Sys.=
UI.Behavior.callBaseMethod(this,"dispose");if(this._element){var =
a=3Dthis.get_name();if(a)this._element[a]=3Dnull;Array.remove(this._eleme=
nt._behaviors,this);delete =
this._element}}};Sys.UI.Behavior.registerClass("Sys.UI.Behavior",Sys.Comp=
onent);Sys.UI.Behavior.getBehaviorByName=3Dfunction(b,c){var =
a=3Db[c];return =
a&&Sys.UI.Behavior.isInstanceOfType(a)?a:null};Sys.UI.Behavior.getBehavio=
rs=3Dfunction(a){if(!a._behaviors)return [];return =
Array.clone(a._behaviors)};Sys.UI.Behavior.getBehaviorsByType=3Dfunction(=
d,e){var a=3Dd._behaviors,c=3D[];if(a)for(var =
b=3D0,f=3Da.length;b<f;b++)if(e.isInstanceOfType(a[b]))c[c.length]=3Da[b]=
;return c};Sys.UI.VisibilityMode=3Dfunction(){throw =
Error.notImplemented()};Sys.UI.VisibilityMode.prototype=3D{hide:0,collaps=
e:1};Sys.UI.VisibilityMode.registerEnum("Sys.UI.VisibilityMode");Sys.UI.C=
ontrol=3Dfunction(a){Sys.UI.Control.initializeBase(this);this._element=3D=
a;a.control=3Dthis;this._oldDisplayMode=3Dthis._element.style.display;if(=
!this._oldDisplayMode||this._oldDisplayMode=3D=3D"none")this._oldDisplayM=
ode=3D""};Sys.UI.Control.prototype=3D{_parent:null,_visibilityMode:Sys.UI=
.VisibilityMode.hide,get_element:function(){return =
this._element},get_id:function(){if(!this._element)return "";return =
this._element.id},set_id:function(){throw =
Error.invalidOperation(Sys.Res.cantSetId)},get_parent:function(){if(this.=
_parent)return this._parent;else{var =
a=3Dthis._element.parentNode;while(a){if(a.control)return =
a.control;a=3Da.parentNode}return =
null}},set_parent:function(a){this._parent=3Da},get_visibilityMode:functi=
on(){return =
this._visibilityMode},set_visibilityMode:function(a){if(this._visibilityM=
ode!=3D=3Da){this._visibilityMode=3Da;if(this.get_visible()=3D=3D=3Dfalse=
)if(this._visibilityMode=3D=3D=3DSys.UI.VisibilityMode.hide)this._element=
.style.display=3Dthis._oldDisplayMode;else =
this._element.style.display=3D"none"}this._visibilityMode=3Da},get_visibl=
e:function(){return =
this._element.style.visibility!=3D"hidden"},set_visible:function(a){if(a!=
=3Dthis.get_visible()){this._element.style.visibility=3Da?"visible":"hidd=
en";if(a||this._visibilityMode=3D=3D=3DSys.UI.VisibilityMode.hide)this._e=
lement.style.display=3Dthis._oldDisplayMode;else =
this._element.style.display=3D"none"}},addCssClass:function(a){Sys.UI.Dom=
Element.addCssClass(this._element,a)},dispose:function(){Sys.UI.Control.c=
allBaseMethod(this,"dispose");if(this._element){this._element.control=3Du=
ndefined;delete =
this._element}},initialize:function(){Sys.UI.Control.callBaseMethod(this,=
"initialize");var a=3Dthis._element},onBubbleEvent:function(){return =
false},raiseBubbleEvent:function(b,c){var =
a=3Dthis.get_parent();while(a){if(a.onBubbleEvent(b,c))return;a=3Da.get_p=
arent()}},removeCssClass:function(a){Sys.UI.DomElement.removeCssClass(thi=
s._element,a)},toggleCssClass:function(a){Sys.UI.DomElement.toggleCssClas=
s(this._element,a)}};Sys.UI.Control.registerClass("Sys.UI.Control",Sys.Co=
mponent)
Type.registerNamespace('Sys');
Sys.Res=3D{
"argumentInteger":"Value must be an integer.",
"scriptLoadMultipleCallbacks":"The script \u0027{0}\u0027 contains =
multiple calls to Sys.Application.notifyScriptLoaded(). Only one is =
allowed.",
"invokeCalledTwice":"Cannot call invoke more than once.",
"webServiceFailed":"The server method \u0027{0}\u0027 failed with the =
following error: {1}",
"argumentType":"Object cannot be converted to the required type.",
"argumentNull":"Value cannot be null.",
"controlCantSetId":"The id property can\u0027t be set on a control.",
"formatBadFormatSpecifier":"Format specifier was invalid.",
"webServiceFailedNoMsg":"The server method \u0027{0}\u0027 failed.",
"argumentDomElement":"Value must be a DOM element.",
"invalidExecutorType":"Could not create a valid =
Sys.Net.WebRequestExecutor from: {0}.",
"cannotCallBeforeResponse":"Cannot call {0} when responseAvailable is =
false.",
"actualValue":"Actual value was {0}.",
"enumInvalidValue":"\u0027{0}\u0027 is not a valid value for enum {1}.",
"scriptLoadFailed":"The script \u0027{0}\u0027 could not be loaded.",
"parameterCount":"Parameter count mismatch.",
"cannotDeserializeEmptyString":"Cannot deserialize empty string.",
"formatInvalidString":"Input string was not in a correct format.",
"invalidTimeout":"Value must be greater than or equal to zero.",
"cannotAbortBeforeStart":"Cannot abort when executor has not started.",
"argument":"Value does not fall within the expected range.",
"cannotDeserializeInvalidJson":"Cannot deserialize. The data does not =
correspond to valid JSON.",
"invalidHttpVerb":"httpVerb cannot be set to an empty or null string.",
"nullWebRequest":"Cannot call executeRequest with a null webRequest.",
"eventHandlerInvalid":"Handler was not added through the =
Sys.UI.DomEvent.addHandler method.",
"cannotSerializeNonFiniteNumbers":"Cannot serialize non finite =
numbers.",
"argumentUndefined":"Value cannot be undefined.",
"webServiceInvalidReturnType":"The server method \u0027{0}\u0027 =
returned an invalid type. Expected type: {1}",
"servicePathNotSet":"The path to the web service has not been set.",
"argumentTypeWithTypes":"Object of type \u0027{0}\u0027 cannot be =
converted to type \u0027{1}\u0027.",
"cannotCallOnceStarted":"Cannot call {0} once started.",
"badBaseUrl1":"Base URL does not contain ://.",
"badBaseUrl2":"Base URL does not contain another /.",
"badBaseUrl3":"Cannot find last / in base URL.",
"setExecutorAfterActive":"Cannot set executor after it has become =
active.",
"paramName":"Parameter name: {0}",
"cannotCallOutsideHandler":"Cannot call {0} outside of a completed event =
handler.",
"format":"One of the identified items was in an invalid format.",
"assertFailedCaller":"Assertion Failed: {0}\r\nat {1}",
"argumentOutOfRange":"Specified argument was out of the range of valid =
values.",
"webServiceTimedOut":"The server method \u0027{0}\u0027 timed out.",
"notImplemented":"The method or operation is not implemented.",
"assertFailed":"Assertion Failed: {0}",
"invalidOperation":"Operation is not valid due to the current state of =
the object.",
"breakIntoDebugger":"{0}\r\n\r\nBreak into debugger?"
};

if(typeof(Sys)!=3D=3D'undefined')Sys.Application.notifyScriptLoaded();
}
Type.registerNamespace('Flux.Net');

if (typeof(Flux.Net.FlashExecutor) =3D=3D=3D 'undefined') {
	Flux.Net.FlashExecutor =3D function () {
		if (arguments.length !=3D=3D 0) throw Error.parameterCount();

		Flux.Net.FlashExecutor.initializeBase(this);

		var _this =3D this;
		this.webRequest =3D null;
		this.responseAvailable =3D false;
		this.timedOut =3D false;
		this.timer =3D null;
		this.aborted =3D false;
		this.started =3D false;
	=09
		this.responseData =3D null;

		this.clearTimer =3D function () {
			if (_this.timer !=3D null) {
				window.clearTimeout(_this.timer);
				_this.timer =3D null;
			}
		}

		this.onTimeout =3D function () {
			if (!_this.responseAvailable) {
				_this.clearTimer();
				_this.timedOut =3D true;
				_this.webRequest.completed(Sys.EventArgs.Empty);
			}
		}
	}

	Flux.Net.FlashExecutor.prototype =3D {
		get_timedOut: function() {
			return this.timedOut;
		},
	=09
		get_started: function() {
			return this.started;
		},
	=09
		get_responseAvailable: function() {
			return this.responseAvailable;
		},
	=09
		get_aborted: function() {
			return this.aborted;
		},
	=09
		executeRequest: function() {

			this.webRequest =3D this.get_webRequest();

			var timeout =3D this.webRequest.get_timeout();
			if (timeout > 0) {
				this.timer =3D window.setTimeout(Function.createDelegate(this, =
this.onTimeout), timeout);
			}
		=09
			Flux.Core.executePostRequest(this.webRequest.getResolvedUrl(), =
this.webRequest.get_body(),
				Function.createDelegate(this, this.requestCompleteCallback));
			=09
			this.started =3D true;
		},
	=09
		requestCompleteCallback: function(result) {
			this.clearTimer();

			if (result) {
				this.responseData =3D eval(String.format("'{0}'", result));
				this.responseAvailable =3D true;
			} else {
				this.responseAvailable =3D false;
			}

			this.webRequest.completed(Sys.EventArgs.Empty);
		},
	=09
		getResponseHeader: function(header) {
			if (header =3D=3D 'Content-Type') {
				return 'application/json';
			}
		=09
			return '';
		},
	=09
		getAllResponseHeaders: function() {
			return null;
		},
	=09
		get_responseData: function() {
			return this.responseData;
		},

		get_statusCode: function() {
			return 200;
		},

		get_statusText: function() {
			return '';
		},

		abort: function() {
			if (this.aborted || this.responseAvailable || this.timedOut)	{
				return;
			}

			this.aborted =3D true;
			this.clearTimer();

			if (this.responseAvailable) {
				var handler =3D =
this.webRequest._get_eventHandlerList().getHandler("completed");
				if (handler) {
					handler(this, Sys.EventArgs.Empty);
				}
			}
		}
	}

	Flux.Net.FlashExecutor.registerClass('Flux.Net.FlashExecutor', =
Sys.Net.WebRequestExecutor);
}
if (typeof(Flux.API) =3D=3D=3D 'undefined') {
Type.registerNamespace('Flux.API.Services');
Flux.API.Services.Authentication=3Dfunction() {
Flux.API.Services.Authentication.initializeBase(this);
this._timeout =3D 0;
this._userContext =3D null;
this._succeeded =3D null;
this._failed =3D null;
}
Flux.API.Services.Authentication.prototype=3D{
Login:function(info,login,password,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.Authentication.get_path(), =
'Login',false,{info:info,login:login,password:password},succeededCallback=
,failedCallback,userContext); },
Authenticate:function(info,login,password,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.Authentication.get_path(), =
'Authenticate',false,{info:info,login:login,password:password},succeededC=
allback,failedCallback,userContext); },
Logout:function(info,succeededCallback, failedCallback, userContext) {
return this._invoke(Flux.API.Services.Authentication.get_path(), =
'Logout',false,{info:info},succeededCallback,failedCallback,userContext);=
 }}
Flux.API.Services.Authentication.registerClass('Flux.API.Services.Authent=
ication',Sys.Net.WebServiceProxy);
Flux.API.Services.Authentication._staticInstance =3D new =
Flux.API.Services.Authentication();
Flux.API.Services.Authentication.set_path =3D function(value) { =
Flux.API.Services.Authentication._staticInstance._path =3D value; }
Flux.API.Services.Authentication.get_path =3D function() { return =
Flux.API.Services.Authentication._staticInstance._path; }
Flux.API.Services.Authentication.set_timeout =3D function(value) { =
Flux.API.Services.Authentication._staticInstance._timeout =3D value; }
Flux.API.Services.Authentication.get_timeout =3D function() { return =
Flux.API.Services.Authentication._staticInstance._timeout; }
Flux.API.Services.Authentication.set_defaultUserContext =3D =
function(value) { =
Flux.API.Services.Authentication._staticInstance._userContext =3D value; =
}
Flux.API.Services.Authentication.get_defaultUserContext =3D function() { =
return Flux.API.Services.Authentication._staticInstance._userContext; }
Flux.API.Services.Authentication.set_defaultSucceededCallback =3D =
function(value) { =
Flux.API.Services.Authentication._staticInstance._succeeded =3D value; }
Flux.API.Services.Authentication.get_defaultSucceededCallback =3D =
function() { return =
Flux.API.Services.Authentication._staticInstance._succeeded; }
Flux.API.Services.Authentication.set_defaultFailedCallback =3D =
function(value) { =
Flux.API.Services.Authentication._staticInstance._failed =3D value; }
Flux.API.Services.Authentication.get_defaultFailedCallback =3D =
function() { return =
Flux.API.Services.Authentication._staticInstance._failed; }
Flux.API.Services.Authentication.set_path("/Authentication.asmx");
Flux.API.Services.Authentication.Login=3D =
function(info,login,password,onSuccess,onFailed,userContext) =
{Flux.API.Services.Authentication._staticInstance.Login(info,login,passwo=
rd,onSuccess,onFailed,userContext); }
Flux.API.Services.Authentication.Authenticate=3D =
function(info,login,password,onSuccess,onFailed,userContext) =
{Flux.API.Services.Authentication._staticInstance.Authenticate(info,login=
,password,onSuccess,onFailed,userContext); }
Flux.API.Services.Authentication.Logout=3D =
function(info,onSuccess,onFailed,userContext) =
{Flux.API.Services.Authentication._staticInstance.Logout(info,onSuccess,o=
nFailed,userContext); }
var gtc =3D Sys.Net.WebServiceProxy._generateTypedConstructor;
Type.registerNamespace('Flux.API');
if (typeof(Flux.API.RequestInfo) =3D=3D=3D 'undefined') {
Flux.API.RequestInfo=3Dgtc("Flux.API.RequestInfo");
Flux.API.RequestInfo.registerClass('Flux.API.RequestInfo');
}
if (typeof(Flux.API.UserInfoResult) =3D=3D=3D 'undefined') {
Flux.API.UserInfoResult=3Dgtc("Flux.API.UserInfoResult");
Flux.API.UserInfoResult.registerClass('Flux.API.UserInfoResult');
}
if (typeof(Flux.API.InvokeResult) =3D=3D=3D 'undefined') {
Flux.API.InvokeResult=3Dgtc("Flux.API.InvokeResult");
Flux.API.InvokeResult.registerClass('Flux.API.InvokeResult');
}
if (typeof(Flux.API.StatusCode) =3D=3D=3D 'undefined') {
Flux.API.StatusCode =3D function() { throw Error.invalidOperation(); }
Flux.API.StatusCode.prototype =3D {Ok: 0,InvalidParameters: =
1,SystemError: 2,InvalidLocation: 3,InvalidPassword: =
4,IncorrectPassword: 5,InvalidUserName: 6,UserNameTaken: 7,InvalidEmail: =
8,InvalidGender: 9,InvalidBirthDate: 10,InvalidUserType: =
11,AccountNotFound: 12,MessageTemplateNotFound: 13,BadMessageTemplate: =
14,AccountClosed: 15,AccountBanned: 16,Forbidden: 17,ContentNotFound: =
18,ContentQuotaExceeded: 19,ContentFileInvalidFormat: =
20,ContentFileTooLarge: 21,ContentImageUrlInvalid: 22,NotFound: =
23,NotLoggedIn: 24,RatingUnsupportedSystem: 25,RatingIllegal: =
26,RatingIllegalSystem: 27,NotRated: 28,EmailTaken: 29,InvalidLogin: =
30,InvalidZipCode: 31,AlreadyFlagged: 32,InvalidCountry: =
33,InvalidPostalCode: 34,InvalidDisplayName: 35,CommunityBannedUser: =
36,SystemBannedUser: 37,EulaNotAccepted: 38,IncorrectCaptcha: =
39,NotMember: 40,InvalidToken: 41,InvalidFileType: 42,DeactivatedUser: =
43,IneligibleAge: 44,DangerousText: 45,InvalidAccessKey: 46,InvalidCity: =
47,NotSupported: 48}
Flux.API.StatusCode.registerEnum('Flux.API.StatusCode', true);
}

=0A=
Flux.API.Services.Authentication.set_path('http://widgets.flux.com/-/Auth=
entication.asmx');=0A=
=0A=
Flux.API.Services.Authentication.set_defaultFailedCallback(function(error=
) {=0A=
	Sys.Debug.trace(String.format('Error in Authentication service: {0}', =
error.get_message()));=0A=
});=0A=
=0A=
Type.registerNamespace('Flux.API.Services');
Flux.API.Services.Commenting=3Dfunction() {
Flux.API.Services.Commenting.initializeBase(this);
this._timeout =3D 0;
this._userContext =3D null;
this._succeeded =3D null;
this._failed =3D null;
}
Flux.API.Services.Commenting.prototype=3D{
GetCommentCount:function(info,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.Commenting.get_path(), =
'GetCommentCount',false,{info:info},succeededCallback,failedCallback,user=
Context); },
GetComments:function(info,request,viewMode,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.Commenting.get_path(), =
'GetComments',false,{info:info,request:request,viewMode:viewMode},succeed=
edCallback,failedCallback,userContext); },
GetCommentReplies:function(info,commentId,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.Commenting.get_path(), =
'GetCommentReplies',false,{info:info,commentId:commentId},succeededCallba=
ck,failedCallback,userContext); },
PostComment:function(info,parentCommentId,text,captchaUserCode,captchaCry=
ptoCode,succeededCallback, failedCallback, userContext) {
return this._invoke(Flux.API.Services.Commenting.get_path(), =
'PostComment',false,{info:info,parentCommentId:parentCommentId,text:text,=
captchaUserCode:captchaUserCode,captchaCryptoCode:captchaCryptoCode},succ=
eededCallback,failedCallback,userContext); },
UpdateComment:function(info,commentId,text,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.Commenting.get_path(), =
'UpdateComment',false,{info:info,commentId:commentId,text:text},succeeded=
Callback,failedCallback,userContext); },
DeleteComment:function(info,commentId,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.Commenting.get_path(), =
'DeleteComment',false,{info:info,commentId:commentId},succeededCallback,f=
ailedCallback,userContext); },
GenerateCaptcha:function(info,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.Commenting.get_path(), =
'GenerateCaptcha',false,{info:info},succeededCallback,failedCallback,user=
Context); }}
Flux.API.Services.Commenting.registerClass('Flux.API.Services.Commenting'=
,Sys.Net.WebServiceProxy);
Flux.API.Services.Commenting._staticInstance =3D new =
Flux.API.Services.Commenting();
Flux.API.Services.Commenting.set_path =3D function(value) { =
Flux.API.Services.Commenting._staticInstance._path =3D value; }
Flux.API.Services.Commenting.get_path =3D function() { return =
Flux.API.Services.Commenting._staticInstance._path; }
Flux.API.Services.Commenting.set_timeout =3D function(value) { =
Flux.API.Services.Commenting._staticInstance._timeout =3D value; }
Flux.API.Services.Commenting.get_timeout =3D function() { return =
Flux.API.Services.Commenting._staticInstance._timeout; }
Flux.API.Services.Commenting.set_defaultUserContext =3D function(value) =
{ Flux.API.Services.Commenting._staticInstance._userContext =3D value; }
Flux.API.Services.Commenting.get_defaultUserContext =3D function() { =
return Flux.API.Services.Commenting._staticInstance._userContext; }
Flux.API.Services.Commenting.set_defaultSucceededCallback =3D =
function(value) { =
Flux.API.Services.Commenting._staticInstance._succeeded =3D value; }
Flux.API.Services.Commenting.get_defaultSucceededCallback =3D function() =
{ return Flux.API.Services.Commenting._staticInstance._succeeded; }
Flux.API.Services.Commenting.set_defaultFailedCallback =3D =
function(value) { Flux.API.Services.Commenting._staticInstance._failed =
=3D value; }
Flux.API.Services.Commenting.get_defaultFailedCallback =3D function() { =
return Flux.API.Services.Commenting._staticInstance._failed; }
Flux.API.Services.Commenting.set_path("/Commenting.asmx");
Flux.API.Services.Commenting.GetCommentCount=3D =
function(info,onSuccess,onFailed,userContext) =
{Flux.API.Services.Commenting._staticInstance.GetCommentCount(info,onSucc=
ess,onFailed,userContext); }
Flux.API.Services.Commenting.GetComments=3D =
function(info,request,viewMode,onSuccess,onFailed,userContext) =
{Flux.API.Services.Commenting._staticInstance.GetComments(info,request,vi=
ewMode,onSuccess,onFailed,userContext); }
Flux.API.Services.Commenting.GetCommentReplies=3D =
function(info,commentId,onSuccess,onFailed,userContext) =
{Flux.API.Services.Commenting._staticInstance.GetCommentReplies(info,comm=
entId,onSuccess,onFailed,userContext); }
Flux.API.Services.Commenting.PostComment=3D =
function(info,parentCommentId,text,captchaUserCode,captchaCryptoCode,onSu=
ccess,onFailed,userContext) =
{Flux.API.Services.Commenting._staticInstance.PostComment(info,parentComm=
entId,text,captchaUserCode,captchaCryptoCode,onSuccess,onFailed,userConte=
xt); }
Flux.API.Services.Commenting.UpdateComment=3D =
function(info,commentId,text,onSuccess,onFailed,userContext) =
{Flux.API.Services.Commenting._staticInstance.UpdateComment(info,commentI=
d,text,onSuccess,onFailed,userContext); }
Flux.API.Services.Commenting.DeleteComment=3D =
function(info,commentId,onSuccess,onFailed,userContext) =
{Flux.API.Services.Commenting._staticInstance.DeleteComment(info,commentI=
d,onSuccess,onFailed,userContext); }
Flux.API.Services.Commenting.GenerateCaptcha=3D =
function(info,onSuccess,onFailed,userContext) =
{Flux.API.Services.Commenting._staticInstance.GenerateCaptcha(info,onSucc=
ess,onFailed,userContext); }
var gtc =3D Sys.Net.WebServiceProxy._generateTypedConstructor;
Type.registerNamespace('Flux.API');
if (typeof(Flux.API.RequestInfo) =3D=3D=3D 'undefined') {
Flux.API.RequestInfo=3Dgtc("Flux.API.RequestInfo");
Flux.API.RequestInfo.registerClass('Flux.API.RequestInfo');
}
if (typeof(Flux.API.CommentCountResult) =3D=3D=3D 'undefined') {
Flux.API.CommentCountResult=3Dgtc("Flux.API.CommentCountResult");
Flux.API.CommentCountResult.registerClass('Flux.API.CommentCountResult');=

}
if (typeof(Flux.API.ListRequest) =3D=3D=3D 'undefined') {
Flux.API.ListRequest=3Dgtc("Flux.API.ListRequest");
Flux.API.ListRequest.registerClass('Flux.API.ListRequest');
}
if (typeof(Flux.API.CommentListResult) =3D=3D=3D 'undefined') {
Flux.API.CommentListResult=3Dgtc("Flux.API.CommentListResult");
Flux.API.CommentListResult.registerClass('Flux.API.CommentListResult');
}
if (typeof(Flux.API.CommentResult) =3D=3D=3D 'undefined') {
Flux.API.CommentResult=3Dgtc("Flux.API.CommentResult");
Flux.API.CommentResult.registerClass('Flux.API.CommentResult');
}
if (typeof(Flux.API.InvokeResult) =3D=3D=3D 'undefined') {
Flux.API.InvokeResult=3Dgtc("Flux.API.InvokeResult");
Flux.API.InvokeResult.registerClass('Flux.API.InvokeResult');
}
if (typeof(Flux.API.CaptchaResult) =3D=3D=3D 'undefined') {
Flux.API.CaptchaResult=3Dgtc("Flux.API.CaptchaResult");
Flux.API.CaptchaResult.registerClass('Flux.API.CaptchaResult');
}
if (typeof(Flux.API.EntryScope) =3D=3D=3D 'undefined') {
Flux.API.EntryScope =3D function() { throw Error.invalidOperation(); }
Flux.API.EntryScope.prototype =3D {Private: 1,Friends: 2,Restricted: =
3,Public: 4}
Flux.API.EntryScope.registerEnum('Flux.API.EntryScope', true);
}
if (typeof(Flux.API.CommentViewMode) =3D=3D=3D 'undefined') {
Flux.API.CommentViewMode =3D function() { throw =
Error.invalidOperation(); }
Flux.API.CommentViewMode.prototype =3D {Expanded: 0,LatestFirst: =
1,Collapsed: 2}
Flux.API.CommentViewMode.registerEnum('Flux.API.CommentViewMode', true);
}
if (typeof(Flux.API.StatusCode) =3D=3D=3D 'undefined') {
Flux.API.StatusCode =3D function() { throw Error.invalidOperation(); }
Flux.API.StatusCode.prototype =3D {Ok: 0,InvalidParameters: =
1,SystemError: 2,InvalidLocation: 3,InvalidPassword: =
4,IncorrectPassword: 5,InvalidUserName: 6,UserNameTaken: 7,InvalidEmail: =
8,InvalidGender: 9,InvalidBirthDate: 10,InvalidUserType: =
11,AccountNotFound: 12,MessageTemplateNotFound: 13,BadMessageTemplate: =
14,AccountClosed: 15,AccountBanned: 16,Forbidden: 17,ContentNotFound: =
18,ContentQuotaExceeded: 19,ContentFileInvalidFormat: =
20,ContentFileTooLarge: 21,ContentImageUrlInvalid: 22,NotFound: =
23,NotLoggedIn: 24,RatingUnsupportedSystem: 25,RatingIllegal: =
26,RatingIllegalSystem: 27,NotRated: 28,EmailTaken: 29,InvalidLogin: =
30,InvalidZipCode: 31,AlreadyFlagged: 32,InvalidCountry: =
33,InvalidPostalCode: 34,InvalidDisplayName: 35,CommunityBannedUser: =
36,SystemBannedUser: 37,EulaNotAccepted: 38,IncorrectCaptcha: =
39,NotMember: 40,InvalidToken: 41,InvalidFileType: 42,DeactivatedUser: =
43,IneligibleAge: 44,DangerousText: 45,InvalidAccessKey: 46,InvalidCity: =
47,NotSupported: 48}
Flux.API.StatusCode.registerEnum('Flux.API.StatusCode', true);
}

=0A=
Flux.API.Services.Commenting.set_path('http://widgets.flux.com/-/Commenti=
ng.asmx');=0A=
=0A=
Flux.API.Services.Commenting.set_defaultFailedCallback(function(error) {=0A=
	Sys.Debug.trace(String.format('Error in Commenting service: {0}', =
error.get_message()));=0A=
});=0A=
=0A=
Type.registerNamespace('Flux.API.Services');
Flux.API.Services.Commenting2=3Dfunction() {
Flux.API.Services.Commenting2.initializeBase(this);
this._timeout =3D 0;
this._userContext =3D null;
this._succeeded =3D null;
this._failed =3D null;
}
Flux.API.Services.Commenting2.prototype=3D{
PostComment2:function(info,parentCommentId,text,captchaUserCode,captchaCr=
yptoCode,guestName,guestEmail,guestWebUrl,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.Commenting2.get_path(), =
'PostComment2',false,{info:info,parentCommentId:parentCommentId,text:text=
,captchaUserCode:captchaUserCode,captchaCryptoCode:captchaCryptoCode,gues=
tName:guestName,guestEmail:guestEmail,guestWebUrl:guestWebUrl},succeededC=
allback,failedCallback,userContext); }}
Flux.API.Services.Commenting2.registerClass('Flux.API.Services.Commenting=
2',Sys.Net.WebServiceProxy);
Flux.API.Services.Commenting2._staticInstance =3D new =
Flux.API.Services.Commenting2();
Flux.API.Services.Commenting2.set_path =3D function(value) { =
Flux.API.Services.Commenting2._staticInstance._path =3D value; }
Flux.API.Services.Commenting2.get_path =3D function() { return =
Flux.API.Services.Commenting2._staticInstance._path; }
Flux.API.Services.Commenting2.set_timeout =3D function(value) { =
Flux.API.Services.Commenting2._staticInstance._timeout =3D value; }
Flux.API.Services.Commenting2.get_timeout =3D function() { return =
Flux.API.Services.Commenting2._staticInstance._timeout; }
Flux.API.Services.Commenting2.set_defaultUserContext =3D function(value) =
{ Flux.API.Services.Commenting2._staticInstance._userContext =3D value; =
}
Flux.API.Services.Commenting2.get_defaultUserContext =3D function() { =
return Flux.API.Services.Commenting2._staticInstance._userContext; }
Flux.API.Services.Commenting2.set_defaultSucceededCallback =3D =
function(value) { =
Flux.API.Services.Commenting2._staticInstance._succeeded =3D value; }
Flux.API.Services.Commenting2.get_defaultSucceededCallback =3D =
function() { return =
Flux.API.Services.Commenting2._staticInstance._succeeded; }
Flux.API.Services.Commenting2.set_defaultFailedCallback =3D =
function(value) { Flux.API.Services.Commenting2._staticInstance._failed =
=3D value; }
Flux.API.Services.Commenting2.get_defaultFailedCallback =3D function() { =
return Flux.API.Services.Commenting2._staticInstance._failed; }
Flux.API.Services.Commenting2.set_path("/Commenting2.asmx");
Flux.API.Services.Commenting2.PostComment2=3D =
function(info,parentCommentId,text,captchaUserCode,captchaCryptoCode,gues=
tName,guestEmail,guestWebUrl,onSuccess,onFailed,userContext) =
{Flux.API.Services.Commenting2._staticInstance.PostComment2(info,parentCo=
mmentId,text,captchaUserCode,captchaCryptoCode,guestName,guestEmail,guest=
WebUrl,onSuccess,onFailed,userContext); }
var gtc =3D Sys.Net.WebServiceProxy._generateTypedConstructor;
Type.registerNamespace('Flux.API');
if (typeof(Flux.API.RequestInfo) =3D=3D=3D 'undefined') {
Flux.API.RequestInfo=3Dgtc("Flux.API.RequestInfo");
Flux.API.RequestInfo.registerClass('Flux.API.RequestInfo');
}
if (typeof(Flux.API.CommentResult) =3D=3D=3D 'undefined') {
Flux.API.CommentResult=3Dgtc("Flux.API.CommentResult");
Flux.API.CommentResult.registerClass('Flux.API.CommentResult');
}
if (typeof(Flux.API.EntryScope) =3D=3D=3D 'undefined') {
Flux.API.EntryScope =3D function() { throw Error.invalidOperation(); }
Flux.API.EntryScope.prototype =3D {Private: 1,Friends: 2,Restricted: =
3,Public: 4}
Flux.API.EntryScope.registerEnum('Flux.API.EntryScope', true);
}
if (typeof(Flux.API.CommentViewMode) =3D=3D=3D 'undefined') {
Flux.API.CommentViewMode =3D function() { throw =
Error.invalidOperation(); }
Flux.API.CommentViewMode.prototype =3D {Expanded: 0,LatestFirst: =
1,Collapsed: 2}
Flux.API.CommentViewMode.registerEnum('Flux.API.CommentViewMode', true);
}
if (typeof(Flux.API.StatusCode) =3D=3D=3D 'undefined') {
Flux.API.StatusCode =3D function() { throw Error.invalidOperation(); }
Flux.API.StatusCode.prototype =3D {Ok: 0,InvalidParameters: =
1,SystemError: 2,InvalidLocation: 3,InvalidPassword: =
4,IncorrectPassword: 5,InvalidUserName: 6,UserNameTaken: 7,InvalidEmail: =
8,InvalidGender: 9,InvalidBirthDate: 10,InvalidUserType: =
11,AccountNotFound: 12,MessageTemplateNotFound: 13,BadMessageTemplate: =
14,AccountClosed: 15,AccountBanned: 16,Forbidden: 17,ContentNotFound: =
18,ContentQuotaExceeded: 19,ContentFileInvalidFormat: =
20,ContentFileTooLarge: 21,ContentImageUrlInvalid: 22,NotFound: =
23,NotLoggedIn: 24,RatingUnsupportedSystem: 25,RatingIllegal: =
26,RatingIllegalSystem: 27,NotRated: 28,EmailTaken: 29,InvalidLogin: =
30,InvalidZipCode: 31,AlreadyFlagged: 32,InvalidCountry: =
33,InvalidPostalCode: 34,InvalidDisplayName: 35,CommunityBannedUser: =
36,SystemBannedUser: 37,EulaNotAccepted: 38,IncorrectCaptcha: =
39,NotMember: 40,InvalidToken: 41,InvalidFileType: 42,DeactivatedUser: =
43,IneligibleAge: 44,DangerousText: 45,InvalidAccessKey: 46,InvalidCity: =
47,NotSupported: 48}
Flux.API.StatusCode.registerEnum('Flux.API.StatusCode', true);
}

=0A=
Flux.API.Services.Commenting2.set_path('http://widgets.flux.com/-/Comment=
ing2.asmx');=0A=
=0A=
Flux.API.Services.Commenting2.set_defaultFailedCallback(function(error) {=0A=
	Sys.Debug.trace(String.format('Error in Commenting2 service: {0}', =
error.get_message()));=0A=
});=0A=
=0A=
Type.registerNamespace('Flux.API.Services');
Flux.API.Services.Content=3Dfunction() {
Flux.API.Services.Content.initializeBase(this);
this._timeout =3D 0;
this._userContext =3D null;
this._succeeded =3D null;
this._failed =3D null;
}
Flux.API.Services.Content.prototype=3D{
SetContentThumbnail:function(info,imageBytes,contentType,succeededCallbac=
k, failedCallback, userContext) {
return this._invoke(Flux.API.Services.Content.get_path(), =
'SetContentThumbnail',false,{info:info,imageBytes:imageBytes,contentType:=
contentType},succeededCallback,failedCallback,userContext); },
SetContentFlag:function(info,flagType,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.Content.get_path(), =
'SetContentFlag',false,{info:info,flagType:flagType},succeededCallback,fa=
iledCallback,userContext); },
SetCommentFlag:function(info,commentId,flagType,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.Content.get_path(), =
'SetCommentFlag',false,{info:info,commentId:commentId,flagType:flagType},=
succeededCallback,failedCallback,userContext); },
IsUserCanFlagContent:function(info,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.Content.get_path(), =
'IsUserCanFlagContent',false,{info:info},succeededCallback,failedCallback=
,userContext); },
InvalidateContentUriBatch:function(info,contentUris,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.Content.get_path(), =
'InvalidateContentUriBatch',false,{info:info,contentUris:contentUris},suc=
ceededCallback,failedCallback,userContext); },
CreateEmbeddedMedia:function(info,title,description,data,dataMimeType,suc=
ceededCallback, failedCallback, userContext) {
return this._invoke(Flux.API.Services.Content.get_path(), =
'CreateEmbeddedMedia',false,{info:info,title:title,description:descriptio=
n,data:data,dataMimeType:dataMimeType},succeededCallback,failedCallback,u=
serContext); },
GetEmbeddedMedia:function(info,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.Content.get_path(), =
'GetEmbeddedMedia',false,{info:info},succeededCallback,failedCallback,use=
rContext); },
UpdateEmbeddedMedia:function(info,title,description,data,dataMimeType,suc=
ceededCallback, failedCallback, userContext) {
return this._invoke(Flux.API.Services.Content.get_path(), =
'UpdateEmbeddedMedia',false,{info:info,title:title,description:descriptio=
n,data:data,dataMimeType:dataMimeType},succeededCallback,failedCallback,u=
serContext); },
DeleteContent:function(info,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.Content.get_path(), =
'DeleteContent',false,{info:info},succeededCallback,failedCallback,userCo=
ntext); },
UpdateContent:function(info,entry,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.Content.get_path(), =
'UpdateContent',false,{info:info,entry:entry},succeededCallback,failedCal=
lback,userContext); },
GetContent:function(info,succeededCallback, failedCallback, userContext) =
{
return this._invoke(Flux.API.Services.Content.get_path(), =
'GetContent',false,{info:info},succeededCallback,failedCallback,userConte=
xt); },
GetContentList:function(info,request,contentType,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.Content.get_path(), =
'GetContentList',false,{info:info,request:request,contentType:contentType=
},succeededCallback,failedCallback,userContext); },
UploadVideo:function(info,title,description,data,dataMimeType,succeededCa=
llback, failedCallback, userContext) {
return this._invoke(Flux.API.Services.Content.get_path(), =
'UploadVideo',false,{info:info,title:title,description:description,data:d=
ata,dataMimeType:dataMimeType},succeededCallback,failedCallback,userConte=
xt); },
UploadPhoto:function(info,title,description,data,dataMimeType,succeededCa=
llback, failedCallback, userContext) {
return this._invoke(Flux.API.Services.Content.get_path(), =
'UploadPhoto',false,{info:info,title:title,description:description,data:d=
ata,dataMimeType:dataMimeType},succeededCallback,failedCallback,userConte=
xt); },
UploadAudio:function(info,title,description,data,dataMimeType,succeededCa=
llback, failedCallback, userContext) {
return this._invoke(Flux.API.Services.Content.get_path(), =
'UploadAudio',false,{info:info,title:title,description:description,data:d=
ata,dataMimeType:dataMimeType},succeededCallback,failedCallback,userConte=
xt); }}
Flux.API.Services.Content.registerClass('Flux.API.Services.Content',Sys.N=
et.WebServiceProxy);
Flux.API.Services.Content._staticInstance =3D new =
Flux.API.Services.Content();
Flux.API.Services.Content.set_path =3D function(value) { =
Flux.API.Services.Content._staticInstance._path =3D value; }
Flux.API.Services.Content.get_path =3D function() { return =
Flux.API.Services.Content._staticInstance._path; }
Flux.API.Services.Content.set_timeout =3D function(value) { =
Flux.API.Services.Content._staticInstance._timeout =3D value; }
Flux.API.Services.Content.get_timeout =3D function() { return =
Flux.API.Services.Content._staticInstance._timeout; }
Flux.API.Services.Content.set_defaultUserContext =3D function(value) { =
Flux.API.Services.Content._staticInstance._userContext =3D value; }
Flux.API.Services.Content.get_defaultUserContext =3D function() { return =
Flux.API.Services.Content._staticInstance._userContext; }
Flux.API.Services.Content.set_defaultSucceededCallback =3D =
function(value) { Flux.API.Services.Content._staticInstance._succeeded =
=3D value; }
Flux.API.Services.Content.get_defaultSucceededCallback =3D function() { =
return Flux.API.Services.Content._staticInstance._succeeded; }
Flux.API.Services.Content.set_defaultFailedCallback =3D function(value) =
{ Flux.API.Services.Content._staticInstance._failed =3D value; }
Flux.API.Services.Content.get_defaultFailedCallback =3D function() { =
return Flux.API.Services.Content._staticInstance._failed; }
Flux.API.Services.Content.set_path("/Content.asmx");
Flux.API.Services.Content.SetContentThumbnail=3D =
function(info,imageBytes,contentType,onSuccess,onFailed,userContext) =
{Flux.API.Services.Content._staticInstance.SetContentThumbnail(info,image=
Bytes,contentType,onSuccess,onFailed,userContext); }
Flux.API.Services.Content.SetContentFlag=3D =
function(info,flagType,onSuccess,onFailed,userContext) =
{Flux.API.Services.Content._staticInstance.SetContentFlag(info,flagType,o=
nSuccess,onFailed,userContext); }
Flux.API.Services.Content.SetCommentFlag=3D =
function(info,commentId,flagType,onSuccess,onFailed,userContext) =
{Flux.API.Services.Content._staticInstance.SetCommentFlag(info,commentId,=
flagType,onSuccess,onFailed,userContext); }
Flux.API.Services.Content.IsUserCanFlagContent=3D =
function(info,onSuccess,onFailed,userContext) =
{Flux.API.Services.Content._staticInstance.IsUserCanFlagContent(info,onSu=
ccess,onFailed,userContext); }
Flux.API.Services.Content.InvalidateContentUriBatch=3D =
function(info,contentUris,onSuccess,onFailed,userContext) =
{Flux.API.Services.Content._staticInstance.InvalidateContentUriBatch(info=
,contentUris,onSuccess,onFailed,userContext); }
Flux.API.Services.Content.CreateEmbeddedMedia=3D =
function(info,title,description,data,dataMimeType,onSuccess,onFailed,user=
Context) =
{Flux.API.Services.Content._staticInstance.CreateEmbeddedMedia(info,title=
,description,data,dataMimeType,onSuccess,onFailed,userContext); }
Flux.API.Services.Content.GetEmbeddedMedia=3D =
function(info,onSuccess,onFailed,userContext) =
{Flux.API.Services.Content._staticInstance.GetEmbeddedMedia(info,onSucces=
s,onFailed,userContext); }
Flux.API.Services.Content.UpdateEmbeddedMedia=3D =
function(info,title,description,data,dataMimeType,onSuccess,onFailed,user=
Context) =
{Flux.API.Services.Content._staticInstance.UpdateEmbeddedMedia(info,title=
,description,data,dataMimeType,onSuccess,onFailed,userContext); }
Flux.API.Services.Content.DeleteContent=3D =
function(info,onSuccess,onFailed,userContext) =
{Flux.API.Services.Content._staticInstance.DeleteContent(info,onSuccess,o=
nFailed,userContext); }
Flux.API.Services.Content.UpdateContent=3D =
function(info,entry,onSuccess,onFailed,userContext) =
{Flux.API.Services.Content._staticInstance.UpdateContent(info,entry,onSuc=
cess,onFailed,userContext); }
Flux.API.Services.Content.GetContent=3D =
function(info,onSuccess,onFailed,userContext) =
{Flux.API.Services.Content._staticInstance.GetContent(info,onSuccess,onFa=
iled,userContext); }
Flux.API.Services.Content.GetContentList=3D =
function(info,request,contentType,onSuccess,onFailed,userContext) =
{Flux.API.Services.Content._staticInstance.GetContentList(info,request,co=
ntentType,onSuccess,onFailed,userContext); }
Flux.API.Services.Content.UploadVideo=3D =
function(info,title,description,data,dataMimeType,onSuccess,onFailed,user=
Context) =
{Flux.API.Services.Content._staticInstance.UploadVideo(info,title,descrip=
tion,data,dataMimeType,onSuccess,onFailed,userContext); }
Flux.API.Services.Content.UploadPhoto=3D =
function(info,title,description,data,dataMimeType,onSuccess,onFailed,user=
Context) =
{Flux.API.Services.Content._staticInstance.UploadPhoto(info,title,descrip=
tion,data,dataMimeType,onSuccess,onFailed,userContext); }
Flux.API.Services.Content.UploadAudio=3D =
function(info,title,description,data,dataMimeType,onSuccess,onFailed,user=
Context) =
{Flux.API.Services.Content._staticInstance.UploadAudio(info,title,descrip=
tion,data,dataMimeType,onSuccess,onFailed,userContext); }
var gtc =3D Sys.Net.WebServiceProxy._generateTypedConstructor;
Type.registerNamespace('Flux.API');
if (typeof(Flux.API.RequestInfo) =3D=3D=3D 'undefined') {
Flux.API.RequestInfo=3Dgtc("Flux.API.RequestInfo");
Flux.API.RequestInfo.registerClass('Flux.API.RequestInfo');
}
if (typeof(Flux.API.InvokeResult) =3D=3D=3D 'undefined') {
Flux.API.InvokeResult=3Dgtc("Flux.API.InvokeResult");
Flux.API.InvokeResult.registerClass('Flux.API.InvokeResult');
}
if (typeof(Flux.API.EmbeddedMediaEntryResult) =3D=3D=3D 'undefined') {
Flux.API.EmbeddedMediaEntryResult=3Dgtc("Flux.API.EmbeddedMediaEntryResul=
t");
Flux.API.EmbeddedMediaEntryResult.registerClass('Flux.API.EmbeddedMediaEn=
tryResult');
}
if (typeof(Flux.API.ContentEntry) =3D=3D=3D 'undefined') {
Flux.API.ContentEntry=3Dgtc("Flux.API.ContentEntry");
Flux.API.ContentEntry.registerClass('Flux.API.ContentEntry');
}
if (typeof(Flux.API.ContentEntryResult) =3D=3D=3D 'undefined') {
Flux.API.ContentEntryResult=3Dgtc("Flux.API.ContentEntryResult");
Flux.API.ContentEntryResult.registerClass('Flux.API.ContentEntryResult');=

}
if (typeof(Flux.API.ListRequest) =3D=3D=3D 'undefined') {
Flux.API.ListRequest=3Dgtc("Flux.API.ListRequest");
Flux.API.ListRequest.registerClass('Flux.API.ListRequest');
}
if (typeof(Flux.API.ContentFlagType) =3D=3D=3D 'undefined') {
Flux.API.ContentFlagType =3D function() { throw =
Error.invalidOperation(); }
Flux.API.ContentFlagType.prototype =3D {Adult: 1,Hate: 2,Spam: 3,Other: =
4}
Flux.API.ContentFlagType.registerEnum('Flux.API.ContentFlagType', true);
}
if (typeof(Flux.API.ContentEntryType) =3D=3D=3D 'undefined') {
Flux.API.ContentEntryType =3D function() { throw =
Error.invalidOperation(); }
Flux.API.ContentEntryType.prototype =3D {Audio: 1,Video: 2,Photo: =
4,Link: 8,List: 16,Feed: 32,Topic: 256}
Flux.API.ContentEntryType.registerEnum('Flux.API.ContentEntryType', =
true);
}

=0A=
Flux.API.Services.Content.set_path('http://widgets.flux.com/-/Content.asm=
x');=0A=
=0A=
Flux.API.Services.Content.set_defaultFailedCallback(function(error) {=0A=
	Sys.Debug.trace(String.format('Error in Content service: {0}', =
error.get_message()));=0A=
});=0A=
=0A=
Type.registerNamespace('Flux.API.Services');
Flux.API.Services.Content2=3Dfunction() {
Flux.API.Services.Content2.initializeBase(this);
this._timeout =3D 0;
this._userContext =3D null;
this._succeeded =3D null;
this._failed =3D null;
}
Flux.API.Services.Content2.prototype=3D{
GetContentUsage:function(info,commentRequest,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.Content2.get_path(), =
'GetContentUsage',false,{info:info,commentRequest:commentRequest},succeed=
edCallback,failedCallback,userContext); },
GetCategories:function(info,contentType,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.Content2.get_path(), =
'GetCategories',false,{info:info,contentType:contentType},succeededCallba=
ck,failedCallback,userContext); },
SearchContent:function(info,request,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.Content2.get_path(), =
'SearchContent',false,{info:info,request:request},succeededCallback,faile=
dCallback,userContext); },
UploadPhoto2:function(info,title,description,data,dataMimeType,categories=
,succeededCallback, failedCallback, userContext) {
return this._invoke(Flux.API.Services.Content2.get_path(), =
'UploadPhoto2',false,{info:info,title:title,description:description,data:=
data,dataMimeType:dataMimeType,categories:categories},succeededCallback,f=
ailedCallback,userContext); },
UploadAudio2:function(info,title,description,data,dataMimeType,categories=
,succeededCallback, failedCallback, userContext) {
return this._invoke(Flux.API.Services.Content2.get_path(), =
'UploadAudio2',false,{info:info,title:title,description:description,data:=
data,dataMimeType:dataMimeType,categories:categories},succeededCallback,f=
ailedCallback,userContext); },
UploadVideo2:function(info,title,description,data,dataMimeType,categories=
,succeededCallback, failedCallback, userContext) {
return this._invoke(Flux.API.Services.Content2.get_path(), =
'UploadVideo2',false,{info:info,title:title,description:description,data:=
data,dataMimeType:dataMimeType,categories:categories},succeededCallback,f=
ailedCallback,userContext); },
GetContentList:function(info,contentRequest,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.Content2.get_path(), =
'GetContentList',false,{info:info,contentRequest:contentRequest},succeede=
dCallback,failedCallback,userContext); }}
Flux.API.Services.Content2.registerClass('Flux.API.Services.Content2',Sys=
.Net.WebServiceProxy);
Flux.API.Services.Content2._staticInstance =3D new =
Flux.API.Services.Content2();
Flux.API.Services.Content2.set_path =3D function(value) { =
Flux.API.Services.Content2._staticInstance._path =3D value; }
Flux.API.Services.Content2.get_path =3D function() { return =
Flux.API.Services.Content2._staticInstance._path; }
Flux.API.Services.Content2.set_timeout =3D function(value) { =
Flux.API.Services.Content2._staticInstance._timeout =3D value; }
Flux.API.Services.Content2.get_timeout =3D function() { return =
Flux.API.Services.Content2._staticInstance._timeout; }
Flux.API.Services.Content2.set_defaultUserContext =3D function(value) { =
Flux.API.Services.Content2._staticInstance._userContext =3D value; }
Flux.API.Services.Content2.get_defaultUserContext =3D function() { =
return Flux.API.Services.Content2._staticInstance._userContext; }
Flux.API.Services.Content2.set_defaultSucceededCallback =3D =
function(value) { Flux.API.Services.Content2._staticInstance._succeeded =
=3D value; }
Flux.API.Services.Content2.get_defaultSucceededCallback =3D function() { =
return Flux.API.Services.Content2._staticInstance._succeeded; }
Flux.API.Services.Content2.set_defaultFailedCallback =3D function(value) =
{ Flux.API.Services.Content2._staticInstance._failed =3D value; }
Flux.API.Services.Content2.get_defaultFailedCallback =3D function() { =
return Flux.API.Services.Content2._staticInstance._failed; }
Flux.API.Services.Content2.set_path("/Content2.asmx");
Flux.API.Services.Content2.GetContentUsage=3D =
function(info,commentRequest,onSuccess,onFailed,userContext) =
{Flux.API.Services.Content2._staticInstance.GetContentUsage(info,commentR=
equest,onSuccess,onFailed,userContext); }
Flux.API.Services.Content2.GetCategories=3D =
function(info,contentType,onSuccess,onFailed,userContext) =
{Flux.API.Services.Content2._staticInstance.GetCategories(info,contentTyp=
e,onSuccess,onFailed,userContext); }
Flux.API.Services.Content2.SearchContent=3D =
function(info,request,onSuccess,onFailed,userContext) =
{Flux.API.Services.Content2._staticInstance.SearchContent(info,request,on=
Success,onFailed,userContext); }
Flux.API.Services.Content2.UploadPhoto2=3D =
function(info,title,description,data,dataMimeType,categories,onSuccess,on=
Failed,userContext) =
{Flux.API.Services.Content2._staticInstance.UploadPhoto2(info,title,descr=
iption,data,dataMimeType,categories,onSuccess,onFailed,userContext); }
Flux.API.Services.Content2.UploadAudio2=3D =
function(info,title,description,data,dataMimeType,categories,onSuccess,on=
Failed,userContext) =
{Flux.API.Services.Content2._staticInstance.UploadAudio2(info,title,descr=
iption,data,dataMimeType,categories,onSuccess,onFailed,userContext); }
Flux.API.Services.Content2.UploadVideo2=3D =
function(info,title,description,data,dataMimeType,categories,onSuccess,on=
Failed,userContext) =
{Flux.API.Services.Content2._staticInstance.UploadVideo2(info,title,descr=
iption,data,dataMimeType,categories,onSuccess,onFailed,userContext); }
Flux.API.Services.Content2.GetContentList=3D =
function(info,contentRequest,onSuccess,onFailed,userContext) =
{Flux.API.Services.Content2._staticInstance.GetContentList(info,contentRe=
quest,onSuccess,onFailed,userContext); }
var gtc =3D Sys.Net.WebServiceProxy._generateTypedConstructor;
Type.registerNamespace('Flux.API');
if (typeof(Flux.API.RequestInfo) =3D=3D=3D 'undefined') {
Flux.API.RequestInfo=3Dgtc("Flux.API.RequestInfo");
Flux.API.RequestInfo.registerClass('Flux.API.RequestInfo');
}
if (typeof(Flux.API.ListRequest) =3D=3D=3D 'undefined') {
Flux.API.ListRequest=3Dgtc("Flux.API.ListRequest");
Flux.API.ListRequest.registerClass('Flux.API.ListRequest');
}
if (typeof(Flux.API.CumulativeContentInfoResult) =3D=3D=3D 'undefined') =
{
Flux.API.CumulativeContentInfoResult=3Dgtc("Flux.API.CumulativeContentInf=
oResult");
Flux.API.CumulativeContentInfoResult.registerClass('Flux.API.CumulativeCo=
ntentInfoResult');
}
if (typeof(Flux.API.CategoryEntry) =3D=3D=3D 'undefined') {
Flux.API.CategoryEntry=3Dgtc("Flux.API.CategoryEntry");
Flux.API.CategoryEntry.registerClass('Flux.API.CategoryEntry');
}
if (typeof(Flux.API.RequestInfo2) =3D=3D=3D 'undefined') {
Flux.API.RequestInfo2=3Dgtc("Flux.API.RequestInfo2");
Flux.API.RequestInfo2.registerClass('Flux.API.RequestInfo2');
}
if (typeof(Flux.API.ContentSearchRequest) =3D=3D=3D 'undefined') {
Flux.API.ContentSearchRequest=3Dgtc("Flux.API.ContentSearchRequest");
Flux.API.ContentSearchRequest.registerClass('Flux.API.ContentSearchReques=
t');
}
if (typeof(Flux.API.ContentEntry) =3D=3D=3D 'undefined') {
Flux.API.ContentEntry=3Dgtc("Flux.API.ContentEntry");
Flux.API.ContentEntry.registerClass('Flux.API.ContentEntry');
}
if (typeof(Flux.API.ContentEntryResult) =3D=3D=3D 'undefined') {
Flux.API.ContentEntryResult=3Dgtc("Flux.API.ContentEntryResult");
Flux.API.ContentEntryResult.registerClass('Flux.API.ContentEntryResult');=

}
if (typeof(Flux.API.ContentListRequest) =3D=3D=3D 'undefined') {
Flux.API.ContentListRequest=3Dgtc("Flux.API.ContentListRequest");
Flux.API.ContentListRequest.registerClass('Flux.API.ContentListRequest');=

}
if (typeof(Flux.API.ContentFilterType) =3D=3D=3D 'undefined') {
Flux.API.ContentFilterType =3D function() { throw =
Error.invalidOperation(); }
Flux.API.ContentFilterType.prototype =3D {MostPopularPhotos: =
0,MostPopularVideos: 1}
Flux.API.ContentFilterType.registerEnum('Flux.API.ContentFilterType', =
true);
}
if (typeof(Flux.API.ContentEntryType) =3D=3D=3D 'undefined') {
Flux.API.ContentEntryType =3D function() { throw =
Error.invalidOperation(); }
Flux.API.ContentEntryType.prototype =3D {Audio: 1,Video: 2,Photo: =
4,Link: 8,List: 16,Feed: 32,Topic: 256}
Flux.API.ContentEntryType.registerEnum('Flux.API.ContentEntryType', =
true);
}

=0A=
Flux.API.Services.Content2.set_path('http://widgets.flux.com/-/Content2.a=
smx');=0A=
=0A=
Flux.API.Services.Content2.set_defaultFailedCallback(function(error) {=0A=
	Sys.Debug.trace(String.format('Error in Content2 service: {0}', =
error.get_message()));=0A=
});=0A=
=0A=
Type.registerNamespace('Flux.API.Services');
Flux.API.Services.ProfileManagement=3Dfunction() {
Flux.API.Services.ProfileManagement.initializeBase(this);
this._timeout =3D 0;
this._userContext =3D null;
this._succeeded =3D null;
this._failed =3D null;
}
Flux.API.Services.ProfileManagement.prototype=3D{
GetAccount:function(info,succeededCallback, failedCallback, userContext) =
{
return this._invoke(Flux.API.Services.ProfileManagement.get_path(), =
'GetAccount',false,{info:info},succeededCallback,failedCallback,userConte=
xt); },
UpdateAccount:function(info,account,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.ProfileManagement.get_path(), =
'UpdateAccount',false,{info:info,account:account},succeededCallback,faile=
dCallback,userContext); },
UpdatePassword:function(info,currentPassword,newPassword,succeededCallbac=
k, failedCallback, userContext) {
return this._invoke(Flux.API.Services.ProfileManagement.get_path(), =
'UpdatePassword',false,{info:info,currentPassword:currentPassword,newPass=
word:newPassword},succeededCallback,failedCallback,userContext); },
SetUserPicture:function(info,data,contentType,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.ProfileManagement.get_path(), =
'SetUserPicture',false,{info:info,data:data,contentType:contentType},succ=
eededCallback,failedCallback,userContext); },
GetProfileData:function(info,attributeKey,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.ProfileManagement.get_path(), =
'GetProfileData',false,{info:info,attributeKey:attributeKey},succeededCal=
lback,failedCallback,userContext); },
SetProfileData:function(info,data,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.ProfileManagement.get_path(), =
'SetProfileData',false,{info:info,data:data},succeededCallback,failedCall=
back,userContext); },
IsCommunityMember:function(info,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.ProfileManagement.get_path(), =
'IsCommunityMember',false,{info:info},succeededCallback,failedCallback,us=
erContext); },
SendValidationEmail:function(info,userEmail,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.ProfileManagement.get_path(), =
'SendValidationEmail',false,{info:info,userEmail:userEmail},succeededCall=
back,failedCallback,userContext); },
Deactivate:function(info,succeededCallback, failedCallback, userContext) =
{
return this._invoke(Flux.API.Services.ProfileManagement.get_path(), =
'Deactivate',false,{info:info},succeededCallback,failedCallback,userConte=
xt); }}
Flux.API.Services.ProfileManagement.registerClass('Flux.API.Services.Prof=
ileManagement',Sys.Net.WebServiceProxy);
Flux.API.Services.ProfileManagement._staticInstance =3D new =
Flux.API.Services.ProfileManagement();
Flux.API.Services.ProfileManagement.set_path =3D function(value) { =
Flux.API.Services.ProfileManagement._staticInstance._path =3D value; }
Flux.API.Services.ProfileManagement.get_path =3D function() { return =
Flux.API.Services.ProfileManagement._staticInstance._path; }
Flux.API.Services.ProfileManagement.set_timeout =3D function(value) { =
Flux.API.Services.ProfileManagement._staticInstance._timeout =3D value; =
}
Flux.API.Services.ProfileManagement.get_timeout =3D function() { return =
Flux.API.Services.ProfileManagement._staticInstance._timeout; }
Flux.API.Services.ProfileManagement.set_defaultUserContext =3D =
function(value) { =
Flux.API.Services.ProfileManagement._staticInstance._userContext =3D =
value; }
Flux.API.Services.ProfileManagement.get_defaultUserContext =3D =
function() { return =
Flux.API.Services.ProfileManagement._staticInstance._userContext; }
Flux.API.Services.ProfileManagement.set_defaultSucceededCallback =3D =
function(value) { =
Flux.API.Services.ProfileManagement._staticInstance._succeeded =3D =
value; }
Flux.API.Services.ProfileManagement.get_defaultSucceededCallback =3D =
function() { return =
Flux.API.Services.ProfileManagement._staticInstance._succeeded; }
Flux.API.Services.ProfileManagement.set_defaultFailedCallback =3D =
function(value) { =
Flux.API.Services.ProfileManagement._staticInstance._failed =3D value; }
Flux.API.Services.ProfileManagement.get_defaultFailedCallback =3D =
function() { return =
Flux.API.Services.ProfileManagement._staticInstance._failed; }
Flux.API.Services.ProfileManagement.set_path("/ProfileManagement.asmx");
Flux.API.Services.ProfileManagement.GetAccount=3D =
function(info,onSuccess,onFailed,userContext) =
{Flux.API.Services.ProfileManagement._staticInstance.GetAccount(info,onSu=
ccess,onFailed,userContext); }
Flux.API.Services.ProfileManagement.UpdateAccount=3D =
function(info,account,onSuccess,onFailed,userContext) =
{Flux.API.Services.ProfileManagement._staticInstance.UpdateAccount(info,a=
ccount,onSuccess,onFailed,userContext); }
Flux.API.Services.ProfileManagement.UpdatePassword=3D =
function(info,currentPassword,newPassword,onSuccess,onFailed,userContext)=
 =
{Flux.API.Services.ProfileManagement._staticInstance.UpdatePassword(info,=
currentPassword,newPassword,onSuccess,onFailed,userContext); }
Flux.API.Services.ProfileManagement.SetUserPicture=3D =
function(info,data,contentType,onSuccess,onFailed,userContext) =
{Flux.API.Services.ProfileManagement._staticInstance.SetUserPicture(info,=
data,contentType,onSuccess,onFailed,userContext); }
Flux.API.Services.ProfileManagement.GetProfileData=3D =
function(info,attributeKey,onSuccess,onFailed,userContext) =
{Flux.API.Services.ProfileManagement._staticInstance.GetProfileData(info,=
attributeKey,onSuccess,onFailed,userContext); }
Flux.API.Services.ProfileManagement.SetProfileData=3D =
function(info,data,onSuccess,onFailed,userContext) =
{Flux.API.Services.ProfileManagement._staticInstance.SetProfileData(info,=
data,onSuccess,onFailed,userContext); }
Flux.API.Services.ProfileManagement.IsCommunityMember=3D =
function(info,onSuccess,onFailed,userContext) =
{Flux.API.Services.ProfileManagement._staticInstance.IsCommunityMember(in=
fo,onSuccess,onFailed,userContext); }
Flux.API.Services.ProfileManagement.SendValidationEmail=3D =
function(info,userEmail,onSuccess,onFailed,userContext) =
{Flux.API.Services.ProfileManagement._staticInstance.SendValidationEmail(=
info,userEmail,onSuccess,onFailed,userContext); }
Flux.API.Services.ProfileManagement.Deactivate=3D =
function(info,onSuccess,onFailed,userContext) =
{Flux.API.Services.ProfileManagement._staticInstance.Deactivate(info,onSu=
ccess,onFailed,userContext); }
var gtc =3D Sys.Net.WebServiceProxy._generateTypedConstructor;
Type.registerNamespace('Flux.API');
if (typeof(Flux.API.RequestInfo) =3D=3D=3D 'undefined') {
Flux.API.RequestInfo=3Dgtc("Flux.API.RequestInfo");
Flux.API.RequestInfo.registerClass('Flux.API.RequestInfo');
}
if (typeof(Flux.API.UserInfoResult) =3D=3D=3D 'undefined') {
Flux.API.UserInfoResult=3Dgtc("Flux.API.UserInfoResult");
Flux.API.UserInfoResult.registerClass('Flux.API.UserInfoResult');
}
if (typeof(Flux.API.UserInfo) =3D=3D=3D 'undefined') {
Flux.API.UserInfo=3Dgtc("Flux.API.UserInfo");
Flux.API.UserInfo.registerClass('Flux.API.UserInfo');
}
if (typeof(Flux.API.InvokeResult) =3D=3D=3D 'undefined') {
Flux.API.InvokeResult=3Dgtc("Flux.API.InvokeResult");
Flux.API.InvokeResult.registerClass('Flux.API.InvokeResult');
}
if (typeof(Flux.API.ProfileDataResult) =3D=3D=3D 'undefined') {
Flux.API.ProfileDataResult=3Dgtc("Flux.API.ProfileDataResult");
Flux.API.ProfileDataResult.registerClass('Flux.API.ProfileDataResult');
}
if (typeof(Flux.API.ProfileEntry) =3D=3D=3D 'undefined') {
Flux.API.ProfileEntry=3Dgtc("Flux.API.ProfileEntry");
Flux.API.ProfileEntry.registerClass('Flux.API.ProfileEntry');
}
if (typeof(Flux.API.StatusCode) =3D=3D=3D 'undefined') {
Flux.API.StatusCode =3D function() { throw Error.invalidOperation(); }
Flux.API.StatusCode.prototype =3D {Ok: 0,InvalidParameters: =
1,SystemError: 2,InvalidLocation: 3,InvalidPassword: =
4,IncorrectPassword: 5,InvalidUserName: 6,UserNameTaken: 7,InvalidEmail: =
8,InvalidGender: 9,InvalidBirthDate: 10,InvalidUserType: =
11,AccountNotFound: 12,MessageTemplateNotFound: 13,BadMessageTemplate: =
14,AccountClosed: 15,AccountBanned: 16,Forbidden: 17,ContentNotFound: =
18,ContentQuotaExceeded: 19,ContentFileInvalidFormat: =
20,ContentFileTooLarge: 21,ContentImageUrlInvalid: 22,NotFound: =
23,NotLoggedIn: 24,RatingUnsupportedSystem: 25,RatingIllegal: =
26,RatingIllegalSystem: 27,NotRated: 28,EmailTaken: 29,InvalidLogin: =
30,InvalidZipCode: 31,AlreadyFlagged: 32,InvalidCountry: =
33,InvalidPostalCode: 34,InvalidDisplayName: 35,CommunityBannedUser: =
36,SystemBannedUser: 37,EulaNotAccepted: 38,IncorrectCaptcha: =
39,NotMember: 40,InvalidToken: 41,InvalidFileType: 42,DeactivatedUser: =
43,IneligibleAge: 44,DangerousText: 45,InvalidAccessKey: 46,InvalidCity: =
47,NotSupported: 48}
Flux.API.StatusCode.registerEnum('Flux.API.StatusCode', true);
}
if (typeof(Flux.API.EntryScope) =3D=3D=3D 'undefined') {
Flux.API.EntryScope =3D function() { throw Error.invalidOperation(); }
Flux.API.EntryScope.prototype =3D {Private: 1,Friends: 2,Restricted: =
3,Public: 4}
Flux.API.EntryScope.registerEnum('Flux.API.EntryScope', true);
}

=0A=
Flux.API.Services.ProfileManagement.set_path('http://widgets.flux.com/-/P=
rofileManagement.asmx');=0A=
=0A=
Flux.API.Services.ProfileManagement.set_defaultFailedCallback(function(er=
ror) {=0A=
	Sys.Debug.trace(String.format('Error in ProfileManagement service: =
{0}', error.get_message()));=0A=
});=0A=
=0A=
Type.registerNamespace('Flux.API.Services');
Flux.API.Services.Rating=3Dfunction() {
Flux.API.Services.Rating.initializeBase(this);
this._timeout =3D 0;
this._userContext =3D null;
this._succeeded =3D null;
this._failed =3D null;
}
Flux.API.Services.Rating.prototype=3D{
GetContentRating:function(info,mode,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.Rating.get_path(), =
'GetContentRating',false,{info:info,mode:mode},succeededCallback,failedCa=
llback,userContext); },
SetContentRating:function(info,value,mode,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.Rating.get_path(), =
'SetContentRating',false,{info:info,value:value,mode:mode},succeededCallb=
ack,failedCallback,userContext); }}
Flux.API.Services.Rating.registerClass('Flux.API.Services.Rating',Sys.Net=
.WebServiceProxy);
Flux.API.Services.Rating._staticInstance =3D new =
Flux.API.Services.Rating();
Flux.API.Services.Rating.set_path =3D function(value) { =
Flux.API.Services.Rating._staticInstance._path =3D value; }
Flux.API.Services.Rating.get_path =3D function() { return =
Flux.API.Services.Rating._staticInstance._path; }
Flux.API.Services.Rating.set_timeout =3D function(value) { =
Flux.API.Services.Rating._staticInstance._timeout =3D value; }
Flux.API.Services.Rating.get_timeout =3D function() { return =
Flux.API.Services.Rating._staticInstance._timeout; }
Flux.API.Services.Rating.set_defaultUserContext =3D function(value) { =
Flux.API.Services.Rating._staticInstance._userContext =3D value; }
Flux.API.Services.Rating.get_defaultUserContext =3D function() { return =
Flux.API.Services.Rating._staticInstance._userContext; }
Flux.API.Services.Rating.set_defaultSucceededCallback =3D =
function(value) { Flux.API.Services.Rating._staticInstance._succeeded =
=3D value; }
Flux.API.Services.Rating.get_defaultSucceededCallback =3D function() { =
return Flux.API.Services.Rating._staticInstance._succeeded; }
Flux.API.Services.Rating.set_defaultFailedCallback =3D function(value) { =
Flux.API.Services.Rating._staticInstance._failed =3D value; }
Flux.API.Services.Rating.get_defaultFailedCallback =3D function() { =
return Flux.API.Services.Rating._staticInstance._failed; }
Flux.API.Services.Rating.set_path("/Rating.asmx");
Flux.API.Services.Rating.GetContentRating=3D =
function(info,mode,onSuccess,onFailed,userContext) =
{Flux.API.Services.Rating._staticInstance.GetContentRating(info,mode,onSu=
ccess,onFailed,userContext); }
Flux.API.Services.Rating.SetContentRating=3D =
function(info,value,mode,onSuccess,onFailed,userContext) =
{Flux.API.Services.Rating._staticInstance.SetContentRating(info,value,mod=
e,onSuccess,onFailed,userContext); }
var gtc =3D Sys.Net.WebServiceProxy._generateTypedConstructor;
Type.registerNamespace('Flux.API');
if (typeof(Flux.API.RequestInfo) =3D=3D=3D 'undefined') {
Flux.API.RequestInfo=3Dgtc("Flux.API.RequestInfo");
Flux.API.RequestInfo.registerClass('Flux.API.RequestInfo');
}
if (typeof(Flux.API.RatingResult) =3D=3D=3D 'undefined') {
Flux.API.RatingResult=3Dgtc("Flux.API.RatingResult");
Flux.API.RatingResult.registerClass('Flux.API.RatingResult');
}
if (typeof(Flux.API.EntryScope) =3D=3D=3D 'undefined') {
Flux.API.EntryScope =3D function() { throw Error.invalidOperation(); }
Flux.API.EntryScope.prototype =3D {Private: 1,Friends: 2,Restricted: =
3,Public: 4}
Flux.API.EntryScope.registerEnum('Flux.API.EntryScope', true);
}
if (typeof(Flux.API.StatusCode) =3D=3D=3D 'undefined') {
Flux.API.StatusCode =3D function() { throw Error.invalidOperation(); }
Flux.API.StatusCode.prototype =3D {Ok: 0,InvalidParameters: =
1,SystemError: 2,InvalidLocation: 3,InvalidPassword: =
4,IncorrectPassword: 5,InvalidUserName: 6,UserNameTaken: 7,InvalidEmail: =
8,InvalidGender: 9,InvalidBirthDate: 10,InvalidUserType: =
11,AccountNotFound: 12,MessageTemplateNotFound: 13,BadMessageTemplate: =
14,AccountClosed: 15,AccountBanned: 16,Forbidden: 17,ContentNotFound: =
18,ContentQuotaExceeded: 19,ContentFileInvalidFormat: =
20,ContentFileTooLarge: 21,ContentImageUrlInvalid: 22,NotFound: =
23,NotLoggedIn: 24,RatingUnsupportedSystem: 25,RatingIllegal: =
26,RatingIllegalSystem: 27,NotRated: 28,EmailTaken: 29,InvalidLogin: =
30,InvalidZipCode: 31,AlreadyFlagged: 32,InvalidCountry: =
33,InvalidPostalCode: 34,InvalidDisplayName: 35,CommunityBannedUser: =
36,SystemBannedUser: 37,EulaNotAccepted: 38,IncorrectCaptcha: =
39,NotMember: 40,InvalidToken: 41,InvalidFileType: 42,DeactivatedUser: =
43,IneligibleAge: 44,DangerousText: 45,InvalidAccessKey: 46,InvalidCity: =
47,NotSupported: 48}
Flux.API.StatusCode.registerEnum('Flux.API.StatusCode', true);
}
if (typeof(Flux.API.RatingMode) =3D=3D=3D 'undefined') {
Flux.API.RatingMode =3D function() { throw Error.invalidOperation(); }
Flux.API.RatingMode.prototype =3D {FiveStar: 1,Gain: 2,Thumb: 3}
Flux.API.RatingMode.registerEnum('Flux.API.RatingMode', true);
}

=0A=
Flux.API.Services.Rating.set_path('http://widgets.flux.com/-/Rating.asmx'=
);=0A=
=0A=
Flux.API.Services.Rating.set_defaultFailedCallback(function(error) {=0A=
	Sys.Debug.trace(String.format('Error in Rating service: {0}', =
error.get_message()));=0A=
});=0A=
=0A=
Type.registerNamespace('Flux.API.Services');
Flux.API.Services.Registration=3Dfunction() {
Flux.API.Services.Registration.initializeBase(this);
this._timeout =3D 0;
this._userContext =3D null;
this._succeeded =3D null;
this._failed =3D null;
}
Flux.API.Services.Registration.prototype=3D{
CreateAccount:function(info,password,account,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.Registration.get_path(), =
'CreateAccount',false,{info:info,password:password,account:account},succe=
ededCallback,failedCallback,userContext); },
JoinCurrentCommunity:function(info,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.Registration.get_path(), =
'JoinCurrentCommunity',false,{info:info},succeededCallback,failedCallback=
,userContext); },
UnjoinCurrentCommunity:function(info,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.Registration.get_path(), =
'UnjoinCurrentCommunity',false,{info:info},succeededCallback,failedCallba=
ck,userContext); },
IsUserNameAvailable:function(info,userName,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.Registration.get_path(), =
'IsUserNameAvailable',false,{info:info,userName:userName},succeededCallba=
ck,failedCallback,userContext); },
IsUserEmailAvailable:function(info,userEmail,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.Registration.get_path(), =
'IsUserEmailAvailable',false,{info:info,userEmail:userEmail},succeededCal=
lback,failedCallback,userContext); },
SuggestUserNames:function(info,userName,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.Registration.get_path(), =
'SuggestUserNames',false,{info:info,userName:userName},succeededCallback,=
failedCallback,userContext); },
SendForgotPasswordEmail:function(info,userEmail,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.Registration.get_path(), =
'SendForgotPasswordEmail',false,{info:info,userEmail:userEmail},succeeded=
Callback,failedCallback,userContext); },
ValidateEmailAddress:function(info,token,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.Registration.get_path(), =
'ValidateEmailAddress',false,{info:info,token:token},succeededCallback,fa=
iledCallback,userContext); }}
Flux.API.Services.Registration.registerClass('Flux.API.Services.Registrat=
ion',Sys.Net.WebServiceProxy);
Flux.API.Services.Registration._staticInstance =3D new =
Flux.API.Services.Registration();
Flux.API.Services.Registration.set_path =3D function(value) { =
Flux.API.Services.Registration._staticInstance._path =3D value; }
Flux.API.Services.Registration.get_path =3D function() { return =
Flux.API.Services.Registration._staticInstance._path; }
Flux.API.Services.Registration.set_timeout =3D function(value) { =
Flux.API.Services.Registration._staticInstance._timeout =3D value; }
Flux.API.Services.Registration.get_timeout =3D function() { return =
Flux.API.Services.Registration._staticInstance._timeout; }
Flux.API.Services.Registration.set_defaultUserContext =3D =
function(value) { =
Flux.API.Services.Registration._staticInstance._userContext =3D value; }
Flux.API.Services.Registration.get_defaultUserContext =3D function() { =
return Flux.API.Services.Registration._staticInstance._userContext; }
Flux.API.Services.Registration.set_defaultSucceededCallback =3D =
function(value) { =
Flux.API.Services.Registration._staticInstance._succeeded =3D value; }
Flux.API.Services.Registration.get_defaultSucceededCallback =3D =
function() { return =
Flux.API.Services.Registration._staticInstance._succeeded; }
Flux.API.Services.Registration.set_defaultFailedCallback =3D =
function(value) { Flux.API.Services.Registration._staticInstance._failed =
=3D value; }
Flux.API.Services.Registration.get_defaultFailedCallback =3D function() =
{ return Flux.API.Services.Registration._staticInstance._failed; }
Flux.API.Services.Registration.set_path("/Registration.asmx");
Flux.API.Services.Registration.CreateAccount=3D =
function(info,password,account,onSuccess,onFailed,userContext) =
{Flux.API.Services.Registration._staticInstance.CreateAccount(info,passwo=
rd,account,onSuccess,onFailed,userContext); }
Flux.API.Services.Registration.JoinCurrentCommunity=3D =
function(info,onSuccess,onFailed,userContext) =
{Flux.API.Services.Registration._staticInstance.JoinCurrentCommunity(info=
,onSuccess,onFailed,userContext); }
Flux.API.Services.Registration.UnjoinCurrentCommunity=3D =
function(info,onSuccess,onFailed,userContext) =
{Flux.API.Services.Registration._staticInstance.UnjoinCurrentCommunity(in=
fo,onSuccess,onFailed,userContext); }
Flux.API.Services.Registration.IsUserNameAvailable=3D =
function(info,userName,onSuccess,onFailed,userContext) =
{Flux.API.Services.Registration._staticInstance.IsUserNameAvailable(info,=
userName,onSuccess,onFailed,userContext); }
Flux.API.Services.Registration.IsUserEmailAvailable=3D =
function(info,userEmail,onSuccess,onFailed,userContext) =
{Flux.API.Services.Registration._staticInstance.IsUserEmailAvailable(info=
,userEmail,onSuccess,onFailed,userContext); }
Flux.API.Services.Registration.SuggestUserNames=3D =
function(info,userName,onSuccess,onFailed,userContext) =
{Flux.API.Services.Registration._staticInstance.SuggestUserNames(info,use=
rName,onSuccess,onFailed,userContext); }
Flux.API.Services.Registration.SendForgotPasswordEmail=3D =
function(info,userEmail,onSuccess,onFailed,userContext) =
{Flux.API.Services.Registration._staticInstance.SendForgotPasswordEmail(i=
nfo,userEmail,onSuccess,onFailed,userContext); }
Flux.API.Services.Registration.ValidateEmailAddress=3D =
function(info,token,onSuccess,onFailed,userContext) =
{Flux.API.Services.Registration._staticInstance.ValidateEmailAddress(info=
,token,onSuccess,onFailed,userContext); }
var gtc =3D Sys.Net.WebServiceProxy._generateTypedConstructor;
Type.registerNamespace('Flux.API');
if (typeof(Flux.API.RequestInfo) =3D=3D=3D 'undefined') {
Flux.API.RequestInfo=3Dgtc("Flux.API.RequestInfo");
Flux.API.RequestInfo.registerClass('Flux.API.RequestInfo');
}
if (typeof(Flux.API.UserInfo) =3D=3D=3D 'undefined') {
Flux.API.UserInfo=3Dgtc("Flux.API.UserInfo");
Flux.API.UserInfo.registerClass('Flux.API.UserInfo');
}
if (typeof(Flux.API.UserInfoResult) =3D=3D=3D 'undefined') {
Flux.API.UserInfoResult=3Dgtc("Flux.API.UserInfoResult");
Flux.API.UserInfoResult.registerClass('Flux.API.UserInfoResult');
}
if (typeof(Flux.API.InvokeResult) =3D=3D=3D 'undefined') {
Flux.API.InvokeResult=3Dgtc("Flux.API.InvokeResult");
Flux.API.InvokeResult.registerClass('Flux.API.InvokeResult');
}
if (typeof(Flux.API.StatusCode) =3D=3D=3D 'undefined') {
Flux.API.StatusCode =3D function() { throw Error.invalidOperation(); }
Flux.API.StatusCode.prototype =3D {Ok: 0,InvalidParameters: =
1,SystemError: 2,InvalidLocation: 3,InvalidPassword: =
4,IncorrectPassword: 5,InvalidUserName: 6,UserNameTaken: 7,InvalidEmail: =
8,InvalidGender: 9,InvalidBirthDate: 10,InvalidUserType: =
11,AccountNotFound: 12,MessageTemplateNotFound: 13,BadMessageTemplate: =
14,AccountClosed: 15,AccountBanned: 16,Forbidden: 17,ContentNotFound: =
18,ContentQuotaExceeded: 19,ContentFileInvalidFormat: =
20,ContentFileTooLarge: 21,ContentImageUrlInvalid: 22,NotFound: =
23,NotLoggedIn: 24,RatingUnsupportedSystem: 25,RatingIllegal: =
26,RatingIllegalSystem: 27,NotRated: 28,EmailTaken: 29,InvalidLogin: =
30,InvalidZipCode: 31,AlreadyFlagged: 32,InvalidCountry: =
33,InvalidPostalCode: 34,InvalidDisplayName: 35,CommunityBannedUser: =
36,SystemBannedUser: 37,EulaNotAccepted: 38,IncorrectCaptcha: =
39,NotMember: 40,InvalidToken: 41,InvalidFileType: 42,DeactivatedUser: =
43,IneligibleAge: 44,DangerousText: 45,InvalidAccessKey: 46,InvalidCity: =
47,NotSupported: 48}
Flux.API.StatusCode.registerEnum('Flux.API.StatusCode', true);
}

=0A=
Flux.API.Services.Registration.set_path('http://widgets.flux.com/-/Regist=
ration.asmx');=0A=
=0A=
Flux.API.Services.Registration.set_defaultFailedCallback(function(error) =
{=0A=
	Sys.Debug.trace(String.format('Error in Registration service: {0}', =
error.get_message()));=0A=
});=0A=
=0A=
Type.registerNamespace('Flux.API.Services');
Flux.API.Services.Registration2=3Dfunction() {
Flux.API.Services.Registration2.initializeBase(this);
this._timeout =3D 0;
this._userContext =3D null;
this._succeeded =3D null;
this._failed =3D null;
}
Flux.API.Services.Registration2.prototype=3D{
CreateAccount2:function(info,password,account,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.Registration2.get_path(), =
'CreateAccount2',false,{info:info,password:password,account:account},succ=
eededCallback,failedCallback,userContext); }}
Flux.API.Services.Registration2.registerClass('Flux.API.Services.Registra=
tion2',Sys.Net.WebServiceProxy);
Flux.API.Services.Registration2._staticInstance =3D new =
Flux.API.Services.Registration2();
Flux.API.Services.Registration2.set_path =3D function(value) { =
Flux.API.Services.Registration2._staticInstance._path =3D value; }
Flux.API.Services.Registration2.get_path =3D function() { return =
Flux.API.Services.Registration2._staticInstance._path; }
Flux.API.Services.Registration2.set_timeout =3D function(value) { =
Flux.API.Services.Registration2._staticInstance._timeout =3D value; }
Flux.API.Services.Registration2.get_timeout =3D function() { return =
Flux.API.Services.Registration2._staticInstance._timeout; }
Flux.API.Services.Registration2.set_defaultUserContext =3D =
function(value) { =
Flux.API.Services.Registration2._staticInstance._userContext =3D value; =
}
Flux.API.Services.Registration2.get_defaultUserContext =3D function() { =
return Flux.API.Services.Registration2._staticInstance._userContext; }
Flux.API.Services.Registration2.set_defaultSucceededCallback =3D =
function(value) { =
Flux.API.Services.Registration2._staticInstance._succeeded =3D value; }
Flux.API.Services.Registration2.get_defaultSucceededCallback =3D =
function() { return =
Flux.API.Services.Registration2._staticInstance._succeeded; }
Flux.API.Services.Registration2.set_defaultFailedCallback =3D =
function(value) { =
Flux.API.Services.Registration2._staticInstance._failed =3D value; }
Flux.API.Services.Registration2.get_defaultFailedCallback =3D function() =
{ return Flux.API.Services.Registration2._staticInstance._failed; }
Flux.API.Services.Registration2.set_path("/Registration2.asmx");
Flux.API.Services.Registration2.CreateAccount2=3D =
function(info,password,account,onSuccess,onFailed,userContext) =
{Flux.API.Services.Registration2._staticInstance.CreateAccount2(info,pass=
word,account,onSuccess,onFailed,userContext); }
var gtc =3D Sys.Net.WebServiceProxy._generateTypedConstructor;
Type.registerNamespace('Flux.API');
if (typeof(Flux.API.RequestInfo2) =3D=3D=3D 'undefined') {
Flux.API.RequestInfo2=3Dgtc("Flux.API.RequestInfo2");
Flux.API.RequestInfo2.registerClass('Flux.API.RequestInfo2');
}
if (typeof(Flux.API.UserInfo2) =3D=3D=3D 'undefined') {
Flux.API.UserInfo2=3Dgtc("Flux.API.UserInfo2");
Flux.API.UserInfo2.registerClass('Flux.API.UserInfo2');
}
if (typeof(Flux.API.UserInfo2Result) =3D=3D=3D 'undefined') {
Flux.API.UserInfo2Result=3Dgtc("Flux.API.UserInfo2Result");
Flux.API.UserInfo2Result.registerClass('Flux.API.UserInfo2Result');
}
if (typeof(Flux.API.StatusCode) =3D=3D=3D 'undefined') {
Flux.API.StatusCode =3D function() { throw Error.invalidOperation(); }
Flux.API.StatusCode.prototype =3D {Ok: 0,InvalidParameters: =
1,SystemError: 2,InvalidLocation: 3,InvalidPassword: =
4,IncorrectPassword: 5,InvalidUserName: 6,UserNameTaken: 7,InvalidEmail: =
8,InvalidGender: 9,InvalidBirthDate: 10,InvalidUserType: =
11,AccountNotFound: 12,MessageTemplateNotFound: 13,BadMessageTemplate: =
14,AccountClosed: 15,AccountBanned: 16,Forbidden: 17,ContentNotFound: =
18,ContentQuotaExceeded: 19,ContentFileInvalidFormat: =
20,ContentFileTooLarge: 21,ContentImageUrlInvalid: 22,NotFound: =
23,NotLoggedIn: 24,RatingUnsupportedSystem: 25,RatingIllegal: =
26,RatingIllegalSystem: 27,NotRated: 28,EmailTaken: 29,InvalidLogin: =
30,InvalidZipCode: 31,AlreadyFlagged: 32,InvalidCountry: =
33,InvalidPostalCode: 34,InvalidDisplayName: 35,CommunityBannedUser: =
36,SystemBannedUser: 37,EulaNotAccepted: 38,IncorrectCaptcha: =
39,NotMember: 40,InvalidToken: 41,InvalidFileType: 42,DeactivatedUser: =
43,IneligibleAge: 44,DangerousText: 45,InvalidAccessKey: 46,InvalidCity: =
47,NotSupported: 48}
Flux.API.StatusCode.registerEnum('Flux.API.StatusCode', true);
}

=0A=
Flux.API.Services.Registration2.set_path('http://widgets.flux.com/-/Regis=
tration2.asmx');=0A=
=0A=
Flux.API.Services.Registration2.set_defaultFailedCallback(function(error)=
 {=0A=
	Sys.Debug.trace(String.format('Error in Registration2 service: {0}', =
error.get_message()));=0A=
});=0A=
=0A=
Type.registerNamespace('Flux.API.Services');
Flux.API.Services.Reporting=3Dfunction() {
Flux.API.Services.Reporting.initializeBase(this);
this._timeout =3D 0;
this._userContext =3D null;
this._succeeded =3D null;
this._failed =3D null;
}
Flux.API.Services.Reporting.prototype=3D{
GetVisitors:function(info,maxViewers,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.Reporting.get_path(), =
'GetVisitors',false,{info:info,maxViewers:maxViewers},succeededCallback,f=
ailedCallback,userContext); }}
Flux.API.Services.Reporting.registerClass('Flux.API.Services.Reporting',S=
ys.Net.WebServiceProxy);
Flux.API.Services.Reporting._staticInstance =3D new =
Flux.API.Services.Reporting();
Flux.API.Services.Reporting.set_path =3D function(value) { =
Flux.API.Services.Reporting._staticInstance._path =3D value; }
Flux.API.Services.Reporting.get_path =3D function() { return =
Flux.API.Services.Reporting._staticInstance._path; }
Flux.API.Services.Reporting.set_timeout =3D function(value) { =
Flux.API.Services.Reporting._staticInstance._timeout =3D value; }
Flux.API.Services.Reporting.get_timeout =3D function() { return =
Flux.API.Services.Reporting._staticInstance._timeout; }
Flux.API.Services.Reporting.set_defaultUserContext =3D function(value) { =
Flux.API.Services.Reporting._staticInstance._userContext =3D value; }
Flux.API.Services.Reporting.get_defaultUserContext =3D function() { =
return Flux.API.Services.Reporting._staticInstance._userContext; }
Flux.API.Services.Reporting.set_defaultSucceededCallback =3D =
function(value) { Flux.API.Services.Reporting._staticInstance._succeeded =
=3D value; }
Flux.API.Services.Reporting.get_defaultSucceededCallback =3D function() =
{ return Flux.API.Services.Reporting._staticInstance._succeeded; }
Flux.API.Services.Reporting.set_defaultFailedCallback =3D =
function(value) { Flux.API.Services.Reporting._staticInstance._failed =
=3D value; }
Flux.API.Services.Reporting.get_defaultFailedCallback =3D function() { =
return Flux.API.Services.Reporting._staticInstance._failed; }
Flux.API.Services.Reporting.set_path("/Reporting.asmx");
Flux.API.Services.Reporting.GetVisitors=3D =
function(info,maxViewers,onSuccess,onFailed,userContext) =
{Flux.API.Services.Reporting._staticInstance.GetVisitors(info,maxViewers,=
onSuccess,onFailed,userContext); }
var gtc =3D Sys.Net.WebServiceProxy._generateTypedConstructor;
Type.registerNamespace('Flux.API');
if (typeof(Flux.API.RequestInfo) =3D=3D=3D 'undefined') {
Flux.API.RequestInfo=3Dgtc("Flux.API.RequestInfo");
Flux.API.RequestInfo.registerClass('Flux.API.RequestInfo');
}
if (typeof(Flux.API.UserActionInfo) =3D=3D=3D 'undefined') {
Flux.API.UserActionInfo=3Dgtc("Flux.API.UserActionInfo");
Flux.API.UserActionInfo.registerClass('Flux.API.UserActionInfo');
}
if (typeof(Flux.API.StatusCode) =3D=3D=3D 'undefined') {
Flux.API.StatusCode =3D function() { throw Error.invalidOperation(); }
Flux.API.StatusCode.prototype =3D {Ok: 0,InvalidParameters: =
1,SystemError: 2,InvalidLocation: 3,InvalidPassword: =
4,IncorrectPassword: 5,InvalidUserName: 6,UserNameTaken: 7,InvalidEmail: =
8,InvalidGender: 9,InvalidBirthDate: 10,InvalidUserType: =
11,AccountNotFound: 12,MessageTemplateNotFound: 13,BadMessageTemplate: =
14,AccountClosed: 15,AccountBanned: 16,Forbidden: 17,ContentNotFound: =
18,ContentQuotaExceeded: 19,ContentFileInvalidFormat: =
20,ContentFileTooLarge: 21,ContentImageUrlInvalid: 22,NotFound: =
23,NotLoggedIn: 24,RatingUnsupportedSystem: 25,RatingIllegal: =
26,RatingIllegalSystem: 27,NotRated: 28,EmailTaken: 29,InvalidLogin: =
30,InvalidZipCode: 31,AlreadyFlagged: 32,InvalidCountry: =
33,InvalidPostalCode: 34,InvalidDisplayName: 35,CommunityBannedUser: =
36,SystemBannedUser: 37,EulaNotAccepted: 38,IncorrectCaptcha: =
39,NotMember: 40,InvalidToken: 41,InvalidFileType: 42,DeactivatedUser: =
43,IneligibleAge: 44,DangerousText: 45,InvalidAccessKey: 46,InvalidCity: =
47,NotSupported: 48}
Flux.API.StatusCode.registerEnum('Flux.API.StatusCode', true);
}
if (typeof(Flux.API.EntryScope) =3D=3D=3D 'undefined') {
Flux.API.EntryScope =3D function() { throw Error.invalidOperation(); }
Flux.API.EntryScope.prototype =3D {Private: 1,Friends: 2,Restricted: =
3,Public: 4}
Flux.API.EntryScope.registerEnum('Flux.API.EntryScope', true);
}

=0A=
Flux.API.Services.Reporting.set_path('http://widgets.flux.com/-/Reporting=
.asmx');=0A=
=0A=
Flux.API.Services.Reporting.set_defaultFailedCallback(function(error) {=0A=
	Sys.Debug.trace(String.format('Error in Reporting service: {0}', =
error.get_message()));=0A=
});=0A=
=0A=
Type.registerNamespace('Flux.API.Services');
Flux.API.Services.UserFeed=3Dfunction() {
Flux.API.Services.UserFeed.initializeBase(this);
this._timeout =3D 0;
this._userContext =3D null;
this._succeeded =3D null;
this._failed =3D null;
}
Flux.API.Services.UserFeed.prototype=3D{
GetUserFeedList:function(info,request,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.UserFeed.get_path(), =
'GetUserFeedList',false,{info:info,request:request},succeededCallback,fai=
ledCallback,userContext); },
GetFullUserFeedList:function(info,request,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.UserFeed.get_path(), =
'GetFullUserFeedList',false,{info:info,request:request},succeededCallback=
,failedCallback,userContext); },
CreateUserFeed:function(info,title,description,isDefault,uriList,succeede=
dCallback, failedCallback, userContext) {
return this._invoke(Flux.API.Services.UserFeed.get_path(), =
'CreateUserFeed',false,{info:info,title:title,description:description,isD=
efault:isDefault,uriList:uriList},succeededCallback,failedCallback,userCo=
ntext); },
DeleteUserFeed:function(info,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.UserFeed.get_path(), =
'DeleteUserFeed',false,{info:info},succeededCallback,failedCallback,userC=
ontext); },
AddContentToUserFeed:function(info,uriList,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.UserFeed.get_path(), =
'AddContentToUserFeed',false,{info:info,uriList:uriList},succeededCallbac=
k,failedCallback,userContext); },
UpdateUserFeed:function(info,feedEntry,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.UserFeed.get_path(), =
'UpdateUserFeed',false,{info:info,feedEntry:feedEntry},succeededCallback,=
failedCallback,userContext); },
GetUserFeed:function(info,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.UserFeed.get_path(), =
'GetUserFeed',false,{info:info},succeededCallback,failedCallback,userCont=
ext); },
GetUserFeedContentItems:function(info,request,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.UserFeed.get_path(), =
'GetUserFeedContentItems',false,{info:info,request:request},succeededCall=
back,failedCallback,userContext); },
ReorderUserFeedItems:function(info,contentUri,newPosition,succeededCallba=
ck, failedCallback, userContext) {
return this._invoke(Flux.API.Services.UserFeed.get_path(), =
'ReorderUserFeedItems',false,{info:info,contentUri:contentUri,newPosition=
:newPosition},succeededCallback,failedCallback,userContext); },
RemoveContentFromUserFeed:function(info,uriList,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.UserFeed.get_path(), =
'RemoveContentFromUserFeed',false,{info:info,uriList:uriList},succeededCa=
llback,failedCallback,userContext); }}
Flux.API.Services.UserFeed.registerClass('Flux.API.Services.UserFeed',Sys=
.Net.WebServiceProxy);
Flux.API.Services.UserFeed._staticInstance =3D new =
Flux.API.Services.UserFeed();
Flux.API.Services.UserFeed.set_path =3D function(value) { =
Flux.API.Services.UserFeed._staticInstance._path =3D value; }
Flux.API.Services.UserFeed.get_path =3D function() { return =
Flux.API.Services.UserFeed._staticInstance._path; }
Flux.API.Services.UserFeed.set_timeout =3D function(value) { =
Flux.API.Services.UserFeed._staticInstance._timeout =3D value; }
Flux.API.Services.UserFeed.get_timeout =3D function() { return =
Flux.API.Services.UserFeed._staticInstance._timeout; }
Flux.API.Services.UserFeed.set_defaultUserContext =3D function(value) { =
Flux.API.Services.UserFeed._staticInstance._userContext =3D value; }
Flux.API.Services.UserFeed.get_defaultUserContext =3D function() { =
return Flux.API.Services.UserFeed._staticInstance._userContext; }
Flux.API.Services.UserFeed.set_defaultSucceededCallback =3D =
function(value) { Flux.API.Services.UserFeed._staticInstance._succeeded =
=3D value; }
Flux.API.Services.UserFeed.get_defaultSucceededCallback =3D function() { =
return Flux.API.Services.UserFeed._staticInstance._succeeded; }
Flux.API.Services.UserFeed.set_defaultFailedCallback =3D function(value) =
{ Flux.API.Services.UserFeed._staticInstance._failed =3D value; }
Flux.API.Services.UserFeed.get_defaultFailedCallback =3D function() { =
return Flux.API.Services.UserFeed._staticInstance._failed; }
Flux.API.Services.UserFeed.set_path("/UserFeed.asmx");
Flux.API.Services.UserFeed.GetUserFeedList=3D =
function(info,request,onSuccess,onFailed,userContext) =
{Flux.API.Services.UserFeed._staticInstance.GetUserFeedList(info,request,=
onSuccess,onFailed,userContext); }
Flux.API.Services.UserFeed.GetFullUserFeedList=3D =
function(info,request,onSuccess,onFailed,userContext) =
{Flux.API.Services.UserFeed._staticInstance.GetFullUserFeedList(info,requ=
est,onSuccess,onFailed,userContext); }
Flux.API.Services.UserFeed.CreateUserFeed=3D =
function(info,title,description,isDefault,uriList,onSuccess,onFailed,user=
Context) =
{Flux.API.Services.UserFeed._staticInstance.CreateUserFeed(info,title,des=
cription,isDefault,uriList,onSuccess,onFailed,userContext); }
Flux.API.Services.UserFeed.DeleteUserFeed=3D =
function(info,onSuccess,onFailed,userContext) =
{Flux.API.Services.UserFeed._staticInstance.DeleteUserFeed(info,onSuccess=
,onFailed,userContext); }
Flux.API.Services.UserFeed.AddContentToUserFeed=3D =
function(info,uriList,onSuccess,onFailed,userContext) =
{Flux.API.Services.UserFeed._staticInstance.AddContentToUserFeed(info,uri=
List,onSuccess,onFailed,userContext); }
Flux.API.Services.UserFeed.UpdateUserFeed=3D =
function(info,feedEntry,onSuccess,onFailed,userContext) =
{Flux.API.Services.UserFeed._staticInstance.UpdateUserFeed(info,feedEntry=
,onSuccess,onFailed,userContext); }
Flux.API.Services.UserFeed.GetUserFeed=3D =
function(info,onSuccess,onFailed,userContext) =
{Flux.API.Services.UserFeed._staticInstance.GetUserFeed(info,onSuccess,on=
Failed,userContext); }
Flux.API.Services.UserFeed.GetUserFeedContentItems=3D =
function(info,request,onSuccess,onFailed,userContext) =
{Flux.API.Services.UserFeed._staticInstance.GetUserFeedContentItems(info,=
request,onSuccess,onFailed,userContext); }
Flux.API.Services.UserFeed.ReorderUserFeedItems=3D =
function(info,contentUri,newPosition,onSuccess,onFailed,userContext) =
{Flux.API.Services.UserFeed._staticInstance.ReorderUserFeedItems(info,con=
tentUri,newPosition,onSuccess,onFailed,userContext); }
Flux.API.Services.UserFeed.RemoveContentFromUserFeed=3D =
function(info,uriList,onSuccess,onFailed,userContext) =
{Flux.API.Services.UserFeed._staticInstance.RemoveContentFromUserFeed(inf=
o,uriList,onSuccess,onFailed,userContext); }
var gtc =3D Sys.Net.WebServiceProxy._generateTypedConstructor;
Type.registerNamespace('Flux.API');
if (typeof(Flux.API.RequestInfo) =3D=3D=3D 'undefined') {
Flux.API.RequestInfo=3Dgtc("Flux.API.RequestInfo");
Flux.API.RequestInfo.registerClass('Flux.API.RequestInfo');
}
if (typeof(Flux.API.ListRequest) =3D=3D=3D 'undefined') {
Flux.API.ListRequest=3Dgtc("Flux.API.ListRequest");
Flux.API.ListRequest.registerClass('Flux.API.ListRequest');
}
if (typeof(Flux.API.UserFeedEntry) =3D=3D=3D 'undefined') {
Flux.API.UserFeedEntry=3Dgtc("Flux.API.UserFeedEntry");
Flux.API.UserFeedEntry.registerClass('Flux.API.UserFeedEntry');
}
if (typeof(Flux.API.FeedListRequest) =3D=3D=3D 'undefined') {
Flux.API.FeedListRequest=3Dgtc("Flux.API.FeedListRequest");
Flux.API.FeedListRequest.registerClass('Flux.API.FeedListRequest');
}
if (typeof(Flux.API.FullUserFeedEntry) =3D=3D=3D 'undefined') {
Flux.API.FullUserFeedEntry=3Dgtc("Flux.API.FullUserFeedEntry");
Flux.API.FullUserFeedEntry.registerClass('Flux.API.FullUserFeedEntry');
}
if (typeof(Flux.API.UserFeedEntryResult) =3D=3D=3D 'undefined') {
Flux.API.UserFeedEntryResult=3Dgtc("Flux.API.UserFeedEntryResult");
Flux.API.UserFeedEntryResult.registerClass('Flux.API.UserFeedEntryResult'=
);
}
if (typeof(Flux.API.InvokeResult) =3D=3D=3D 'undefined') {
Flux.API.InvokeResult=3Dgtc("Flux.API.InvokeResult");
Flux.API.InvokeResult.registerClass('Flux.API.InvokeResult');
}
if (typeof(Flux.API.ContentEntry) =3D=3D=3D 'undefined') {
Flux.API.ContentEntry=3Dgtc("Flux.API.ContentEntry");
Flux.API.ContentEntry.registerClass('Flux.API.ContentEntry');
}
if (typeof(Flux.API.EntryScope) =3D=3D=3D 'undefined') {
Flux.API.EntryScope =3D function() { throw Error.invalidOperation(); }
Flux.API.EntryScope.prototype =3D {Private: 1,Friends: 2,Restricted: =
3,Public: 4}
Flux.API.EntryScope.registerEnum('Flux.API.EntryScope', true);
}
if (typeof(Flux.API.StatusCode) =3D=3D=3D 'undefined') {
Flux.API.StatusCode =3D function() { throw Error.invalidOperation(); }
Flux.API.StatusCode.prototype =3D {Ok: 0,InvalidParameters: =
1,SystemError: 2,InvalidLocation: 3,InvalidPassword: =
4,IncorrectPassword: 5,InvalidUserName: 6,UserNameTaken: 7,InvalidEmail: =
8,InvalidGender: 9,InvalidBirthDate: 10,InvalidUserType: =
11,AccountNotFound: 12,MessageTemplateNotFound: 13,BadMessageTemplate: =
14,AccountClosed: 15,AccountBanned: 16,Forbidden: 17,ContentNotFound: =
18,ContentQuotaExceeded: 19,ContentFileInvalidFormat: =
20,ContentFileTooLarge: 21,ContentImageUrlInvalid: 22,NotFound: =
23,NotLoggedIn: 24,RatingUnsupportedSystem: 25,RatingIllegal: =
26,RatingIllegalSystem: 27,NotRated: 28,EmailTaken: 29,InvalidLogin: =
30,InvalidZipCode: 31,AlreadyFlagged: 32,InvalidCountry: =
33,InvalidPostalCode: 34,InvalidDisplayName: 35,CommunityBannedUser: =
36,SystemBannedUser: 37,EulaNotAccepted: 38,IncorrectCaptcha: =
39,NotMember: 40,InvalidToken: 41,InvalidFileType: 42,DeactivatedUser: =
43,IneligibleAge: 44,DangerousText: 45,InvalidAccessKey: 46,InvalidCity: =
47,NotSupported: 48}
Flux.API.StatusCode.registerEnum('Flux.API.StatusCode', true);
}

=0A=
Flux.API.Services.UserFeed.set_path('http://widgets.flux.com/-/UserFeed.a=
smx');=0A=
=0A=
Flux.API.Services.UserFeed.set_defaultFailedCallback(function(error) {=0A=
	Sys.Debug.trace(String.format('Error in UserFeed service: {0}', =
error.get_message()));=0A=
});=0A=
=0A=
Type.registerNamespace('Flux.API.Services');
Flux.API.Services.WidgetHelper=3Dfunction() {
Flux.API.Services.WidgetHelper.initializeBase(this);
this._timeout =3D 0;
this._userContext =3D null;
this._succeeded =3D null;
this._failed =3D null;
}
Flux.API.Services.WidgetHelper.prototype=3D{
GetQuickMenuData:function(info,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.WidgetHelper.get_path(), =
'GetQuickMenuData',false,{info:info},succeededCallback,failedCallback,use=
rContext); }}
Flux.API.Services.WidgetHelper.registerClass('Flux.API.Services.WidgetHel=
per',Sys.Net.WebServiceProxy);
Flux.API.Services.WidgetHelper._staticInstance =3D new =
Flux.API.Services.WidgetHelper();
Flux.API.Services.WidgetHelper.set_path =3D function(value) { =
Flux.API.Services.WidgetHelper._staticInstance._path =3D value; }
Flux.API.Services.WidgetHelper.get_path =3D function() { return =
Flux.API.Services.WidgetHelper._staticInstance._path; }
Flux.API.Services.WidgetHelper.set_timeout =3D function(value) { =
Flux.API.Services.WidgetHelper._staticInstance._timeout =3D value; }
Flux.API.Services.WidgetHelper.get_timeout =3D function() { return =
Flux.API.Services.WidgetHelper._staticInstance._timeout; }
Flux.API.Services.WidgetHelper.set_defaultUserContext =3D =
function(value) { =
Flux.API.Services.WidgetHelper._staticInstance._userContext =3D value; }
Flux.API.Services.WidgetHelper.get_defaultUserContext =3D function() { =
return Flux.API.Services.WidgetHelper._staticInstance._userContext; }
Flux.API.Services.WidgetHelper.set_defaultSucceededCallback =3D =
function(value) { =
Flux.API.Services.WidgetHelper._staticInstance._succeeded =3D value; }
Flux.API.Services.WidgetHelper.get_defaultSucceededCallback =3D =
function() { return =
Flux.API.Services.WidgetHelper._staticInstance._succeeded; }
Flux.API.Services.WidgetHelper.set_defaultFailedCallback =3D =
function(value) { Flux.API.Services.WidgetHelper._staticInstance._failed =
=3D value; }
Flux.API.Services.WidgetHelper.get_defaultFailedCallback =3D function() =
{ return Flux.API.Services.WidgetHelper._staticInstance._failed; }
Flux.API.Services.WidgetHelper.set_path("/WidgetHelper.asmx");
Flux.API.Services.WidgetHelper.GetQuickMenuData=3D =
function(info,onSuccess,onFailed,userContext) =
{Flux.API.Services.WidgetHelper._staticInstance.GetQuickMenuData(info,onS=
uccess,onFailed,userContext); }
var gtc =3D Sys.Net.WebServiceProxy._generateTypedConstructor;
Type.registerNamespace('Flux.API');
if (typeof(Flux.API.RequestInfo) =3D=3D=3D 'undefined') {
Flux.API.RequestInfo=3Dgtc("Flux.API.RequestInfo");
Flux.API.RequestInfo.registerClass('Flux.API.RequestInfo');
}
if (typeof(Flux.API.QuickMenuResult) =3D=3D=3D 'undefined') {
Flux.API.QuickMenuResult=3Dgtc("Flux.API.QuickMenuResult");
Flux.API.QuickMenuResult.registerClass('Flux.API.QuickMenuResult');
}
Type.registerNamespace('Flux.Widgets');
if (typeof(Flux.Widgets.GuestEntryVisibility) =3D=3D=3D 'undefined') {
Flux.Widgets.GuestEntryVisibility =3D function() { throw =
Error.invalidOperation(); }
Flux.Widgets.GuestEntryVisibility.prototype =3D {Optional: 0,Requred: =
1,DoNotShow: 2}
Flux.Widgets.GuestEntryVisibility.registerEnum('Flux.Widgets.GuestEntryVi=
sibility', true);
}

=0A=
Flux.API.Services.WidgetHelper.set_path('http://widgets.flux.com/-/Widget=
Helper.asmx');=0A=
=0A=
Flux.API.Services.WidgetHelper.set_defaultFailedCallback(function(error) =
{=0A=
	Sys.Debug.trace(String.format('Error in WidgetHelper service: {0}', =
error.get_message()));=0A=
});=0A=
=0A=
Type.registerNamespace('Flux.API.Services');
Flux.API.Services.UserManagement=3Dfunction() {
Flux.API.Services.UserManagement.initializeBase(this);
this._timeout =3D 0;
this._userContext =3D null;
this._succeeded =3D null;
this._failed =3D null;
}
Flux.API.Services.UserManagement.prototype=3D{
SearchUser:function(info,request,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.UserManagement.get_path(), =
'SearchUser',false,{info:info,request:request},succeededCallback,failedCa=
llback,userContext); },
GetPeopleList:function(info,request,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.UserManagement.get_path(), =
'GetPeopleList',false,{info:info,request:request},succeededCallback,faile=
dCallback,userContext); }}
Flux.API.Services.UserManagement.registerClass('Flux.API.Services.UserMan=
agement',Sys.Net.WebServiceProxy);
Flux.API.Services.UserManagement._staticInstance =3D new =
Flux.API.Services.UserManagement();
Flux.API.Services.UserManagement.set_path =3D function(value) { =
Flux.API.Services.UserManagement._staticInstance._path =3D value; }
Flux.API.Services.UserManagement.get_path =3D function() { return =
Flux.API.Services.UserManagement._staticInstance._path; }
Flux.API.Services.UserManagement.set_timeout =3D function(value) { =
Flux.API.Services.UserManagement._staticInstance._timeout =3D value; }
Flux.API.Services.UserManagement.get_timeout =3D function() { return =
Flux.API.Services.UserManagement._staticInstance._timeout; }
Flux.API.Services.UserManagement.set_defaultUserContext =3D =
function(value) { =
Flux.API.Services.UserManagement._staticInstance._userContext =3D value; =
}
Flux.API.Services.UserManagement.get_defaultUserContext =3D function() { =
return Flux.API.Services.UserManagement._staticInstance._userContext; }
Flux.API.Services.UserManagement.set_defaultSucceededCallback =3D =
function(value) { =
Flux.API.Services.UserManagement._staticInstance._succeeded =3D value; }
Flux.API.Services.UserManagement.get_defaultSucceededCallback =3D =
function() { return =
Flux.API.Services.UserManagement._staticInstance._succeeded; }
Flux.API.Services.UserManagement.set_defaultFailedCallback =3D =
function(value) { =
Flux.API.Services.UserManagement._staticInstance._failed =3D value; }
Flux.API.Services.UserManagement.get_defaultFailedCallback =3D =
function() { return =
Flux.API.Services.UserManagement._staticInstance._failed; }
Flux.API.Services.UserManagement.set_path("/UserManagement.asmx");
Flux.API.Services.UserManagement.SearchUser=3D =
function(info,request,onSuccess,onFailed,userContext) =
{Flux.API.Services.UserManagement._staticInstance.SearchUser(info,request=
,onSuccess,onFailed,userContext); }
Flux.API.Services.UserManagement.GetPeopleList=3D =
function(info,request,onSuccess,onFailed,userContext) =
{Flux.API.Services.UserManagement._staticInstance.GetPeopleList(info,requ=
est,onSuccess,onFailed,userContext); }
var gtc =3D Sys.Net.WebServiceProxy._generateTypedConstructor;
Type.registerNamespace('Flux.API');
if (typeof(Flux.API.RequestInfo2) =3D=3D=3D 'undefined') {
Flux.API.RequestInfo2=3Dgtc("Flux.API.RequestInfo2");
Flux.API.RequestInfo2.registerClass('Flux.API.RequestInfo2');
}
if (typeof(Flux.API.UserSearchRequest) =3D=3D=3D 'undefined') {
Flux.API.UserSearchRequest=3Dgtc("Flux.API.UserSearchRequest");
Flux.API.UserSearchRequest.registerClass('Flux.API.UserSearchRequest');
}
if (typeof(Flux.API.SearchUserInfo) =3D=3D=3D 'undefined') {
Flux.API.SearchUserInfo=3Dgtc("Flux.API.SearchUserInfo");
Flux.API.SearchUserInfo.registerClass('Flux.API.SearchUserInfo');
}
if (typeof(Flux.API.PeopleListRequest) =3D=3D=3D 'undefined') {
Flux.API.PeopleListRequest=3Dgtc("Flux.API.PeopleListRequest");
Flux.API.PeopleListRequest.registerClass('Flux.API.PeopleListRequest');
}
if (typeof(Flux.API.UserInfo2) =3D=3D=3D 'undefined') {
Flux.API.UserInfo2=3Dgtc("Flux.API.UserInfo2");
Flux.API.UserInfo2.registerClass('Flux.API.UserInfo2');
}
if (typeof(Flux.API.GenderInfo) =3D=3D=3D 'undefined') {
Flux.API.GenderInfo =3D function() { throw Error.invalidOperation(); }
Flux.API.GenderInfo.prototype =3D {Unspecified: 0,Male: 1,Female: =
2,Other: 3}
Flux.API.GenderInfo.registerEnum('Flux.API.GenderInfo', true);
}
if (typeof(Flux.API.StatusCode) =3D=3D=3D 'undefined') {
Flux.API.StatusCode =3D function() { throw Error.invalidOperation(); }
Flux.API.StatusCode.prototype =3D {Ok: 0,InvalidParameters: =
1,SystemError: 2,InvalidLocation: 3,InvalidPassword: =
4,IncorrectPassword: 5,InvalidUserName: 6,UserNameTaken: 7,InvalidEmail: =
8,InvalidGender: 9,InvalidBirthDate: 10,InvalidUserType: =
11,AccountNotFound: 12,MessageTemplateNotFound: 13,BadMessageTemplate: =
14,AccountClosed: 15,AccountBanned: 16,Forbidden: 17,ContentNotFound: =
18,ContentQuotaExceeded: 19,ContentFileInvalidFormat: =
20,ContentFileTooLarge: 21,ContentImageUrlInvalid: 22,NotFound: =
23,NotLoggedIn: 24,RatingUnsupportedSystem: 25,RatingIllegal: =
26,RatingIllegalSystem: 27,NotRated: 28,EmailTaken: 29,InvalidLogin: =
30,InvalidZipCode: 31,AlreadyFlagged: 32,InvalidCountry: =
33,InvalidPostalCode: 34,InvalidDisplayName: 35,CommunityBannedUser: =
36,SystemBannedUser: 37,EulaNotAccepted: 38,IncorrectCaptcha: =
39,NotMember: 40,InvalidToken: 41,InvalidFileType: 42,DeactivatedUser: =
43,IneligibleAge: 44,DangerousText: 45,InvalidAccessKey: 46,InvalidCity: =
47,NotSupported: 48}
Flux.API.StatusCode.registerEnum('Flux.API.StatusCode', true);
}
if (typeof(Flux.API.PeopleCategory) =3D=3D=3D 'undefined') {
Flux.API.PeopleCategory =3D function() { throw Error.invalidOperation(); =
}
Flux.API.PeopleCategory.prototype =3D {OnlineMembers: 0}
Flux.API.PeopleCategory.registerEnum('Flux.API.PeopleCategory', true);
}
if (typeof(Flux.API.ImageSize) =3D=3D=3D 'undefined') {
Flux.API.ImageSize =3D function() { throw Error.invalidOperation(); }
Flux.API.ImageSize.prototype =3D {VerySmall: 1,Small: 2,Medium: 4,Large: =
5,VeryLarge: 6}
Flux.API.ImageSize.registerEnum('Flux.API.ImageSize', true);
}

=0A=
Flux.API.Services.UserManagement.set_path('http://widgets.flux.com/-/User=
Management.asmx');=0A=
=0A=
Flux.API.Services.UserManagement.set_defaultFailedCallback(function(error=
) {=0A=
	Sys.Debug.trace(String.format('Error in UserManagement service: {0}', =
error.get_message()));=0A=
});=0A=
=0A=
Type.registerNamespace('Flux.API.Services');
Flux.API.Services.RelationshipManagement=3Dfunction() {
Flux.API.Services.RelationshipManagement.initializeBase(this);
this._timeout =3D 0;
this._userContext =3D null;
this._succeeded =3D null;
this._failed =3D null;
}
Flux.API.Services.RelationshipManagement.prototype=3D{
GetAvailableRelationshipTypes:function(info,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.RelationshipManagement.get_path(), =
'GetAvailableRelationshipTypes',false,{info:info},succeededCallback,faile=
dCallback,userContext); },
GetRelationshipPermissions:function(info,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.RelationshipManagement.get_path(), =
'GetRelationshipPermissions',false,{info:info},succeededCallback,failedCa=
llback,userContext); },
SendFriendRequest:function(info,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.RelationshipManagement.get_path(), =
'SendFriendRequest',false,{info:info},succeededCallback,failedCallback,us=
erContext); },
BecomeFan:function(info,succeededCallback, failedCallback, userContext) =
{
return this._invoke(Flux.API.Services.RelationshipManagement.get_path(), =
'BecomeFan',false,{info:info},succeededCallback,failedCallback,userContex=
t); },
AddRelationship:function(info,typeId,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.RelationshipManagement.get_path(), =
'AddRelationship',false,{info:info,typeId:typeId},succeededCallback,faile=
dCallback,userContext); },
RemoveRelationship:function(info,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.RelationshipManagement.get_path(), =
'RemoveRelationship',false,{info:info},succeededCallback,failedCallback,u=
serContext); },
GetRelations:function(info,request,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.RelationshipManagement.get_path(), =
'GetRelations',false,{info:info,request:request},succeededCallback,failed=
Callback,userContext); },
GetRelations2:function(info,request,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.RelationshipManagement.get_path(), =
'GetRelations2',false,{info:info,request:request},succeededCallback,faile=
dCallback,userContext); }}
Flux.API.Services.RelationshipManagement.registerClass('Flux.API.Services=
.RelationshipManagement',Sys.Net.WebServiceProxy);
Flux.API.Services.RelationshipManagement._staticInstance =3D new =
Flux.API.Services.RelationshipManagement();
Flux.API.Services.RelationshipManagement.set_path =3D function(value) { =
Flux.API.Services.RelationshipManagement._staticInstance._path =3D =
value; }
Flux.API.Services.RelationshipManagement.get_path =3D function() { =
return Flux.API.Services.RelationshipManagement._staticInstance._path; }
Flux.API.Services.RelationshipManagement.set_timeout =3D function(value) =
{ Flux.API.Services.RelationshipManagement._staticInstance._timeout =3D =
value; }
Flux.API.Services.RelationshipManagement.get_timeout =3D function() { =
return =
Flux.API.Services.RelationshipManagement._staticInstance._timeout; }
Flux.API.Services.RelationshipManagement.set_defaultUserContext =3D =
function(value) { =
Flux.API.Services.RelationshipManagement._staticInstance._userContext =
=3D value; }
Flux.API.Services.RelationshipManagement.get_defaultUserContext =3D =
function() { return =
Flux.API.Services.RelationshipManagement._staticInstance._userContext; }
Flux.API.Services.RelationshipManagement.set_defaultSucceededCallback =
=3D function(value) { =
Flux.API.Services.RelationshipManagement._staticInstance._succeeded =3D =
value; }
Flux.API.Services.RelationshipManagement.get_defaultSucceededCallback =
=3D function() { return =
Flux.API.Services.RelationshipManagement._staticInstance._succeeded; }
Flux.API.Services.RelationshipManagement.set_defaultFailedCallback =3D =
function(value) { =
Flux.API.Services.RelationshipManagement._staticInstance._failed =3D =
value; }
Flux.API.Services.RelationshipManagement.get_defaultFailedCallback =3D =
function() { return =
Flux.API.Services.RelationshipManagement._staticInstance._failed; }
Flux.API.Services.RelationshipManagement.set_path("/RelationshipManagemen=
t.asmx");
Flux.API.Services.RelationshipManagement.GetAvailableRelationshipTypes=3D=
 function(info,onSuccess,onFailed,userContext) =
{Flux.API.Services.RelationshipManagement._staticInstance.GetAvailableRel=
ationshipTypes(info,onSuccess,onFailed,userContext); }
Flux.API.Services.RelationshipManagement.GetRelationshipPermissions=3D =
function(info,onSuccess,onFailed,userContext) =
{Flux.API.Services.RelationshipManagement._staticInstance.GetRelationship=
Permissions(info,onSuccess,onFailed,userContext); }
Flux.API.Services.RelationshipManagement.SendFriendRequest=3D =
function(info,onSuccess,onFailed,userContext) =
{Flux.API.Services.RelationshipManagement._staticInstance.SendFriendReque=
st(info,onSuccess,onFailed,userContext); }
Flux.API.Services.RelationshipManagement.BecomeFan=3D =
function(info,onSuccess,onFailed,userContext) =
{Flux.API.Services.RelationshipManagement._staticInstance.BecomeFan(info,=
onSuccess,onFailed,userContext); }
Flux.API.Services.RelationshipManagement.AddRelationship=3D =
function(info,typeId,onSuccess,onFailed,userContext) =
{Flux.API.Services.RelationshipManagement._staticInstance.AddRelationship=
(info,typeId,onSuccess,onFailed,userContext); }
Flux.API.Services.RelationshipManagement.RemoveRelationship=3D =
function(info,onSuccess,onFailed,userContext) =
{Flux.API.Services.RelationshipManagement._staticInstance.RemoveRelations=
hip(info,onSuccess,onFailed,userContext); }
Flux.API.Services.RelationshipManagement.GetRelations=3D =
function(info,request,onSuccess,onFailed,userContext) =
{Flux.API.Services.RelationshipManagement._staticInstance.GetRelations(in=
fo,request,onSuccess,onFailed,userContext); }
Flux.API.Services.RelationshipManagement.GetRelations2=3D =
function(info,request,onSuccess,onFailed,userContext) =
{Flux.API.Services.RelationshipManagement._staticInstance.GetRelations2(i=
nfo,request,onSuccess,onFailed,userContext); }
var gtc =3D Sys.Net.WebServiceProxy._generateTypedConstructor;
Type.registerNamespace('Flux.API');
if (typeof(Flux.API.RequestInfo2) =3D=3D=3D 'undefined') {
Flux.API.RequestInfo2=3Dgtc("Flux.API.RequestInfo2");
Flux.API.RequestInfo2.registerClass('Flux.API.RequestInfo2');
}
if (typeof(Flux.API.RelationshipType) =3D=3D=3D 'undefined') {
Flux.API.RelationshipType=3Dgtc("Flux.API.RelationshipType");
Flux.API.RelationshipType.registerClass('Flux.API.RelationshipType');
}
if (typeof(Flux.API.RelationshipPermissionsResult) =3D=3D=3D =
'undefined') {
Flux.API.RelationshipPermissionsResult=3Dgtc("Flux.API.RelationshipPermis=
sionsResult");
Flux.API.RelationshipPermissionsResult.registerClass('Flux.API.Relationsh=
ipPermissionsResult');
}
if (typeof(Flux.API.InvokeResult) =3D=3D=3D 'undefined') {
Flux.API.InvokeResult=3Dgtc("Flux.API.InvokeResult");
Flux.API.InvokeResult.registerClass('Flux.API.InvokeResult');
}
if (typeof(Flux.API.RelationListRequest) =3D=3D=3D 'undefined') {
Flux.API.RelationListRequest=3Dgtc("Flux.API.RelationListRequest");
Flux.API.RelationListRequest.registerClass('Flux.API.RelationListRequest'=
);
}
if (typeof(Flux.API.UserRelation) =3D=3D=3D 'undefined') {
Flux.API.UserRelation=3Dgtc("Flux.API.UserRelation");
Flux.API.UserRelation.registerClass('Flux.API.UserRelation');
}
if (typeof(Flux.API.RelationListRequest2) =3D=3D=3D 'undefined') {
Flux.API.RelationListRequest2=3Dgtc("Flux.API.RelationListRequest2");
Flux.API.RelationListRequest2.registerClass('Flux.API.RelationListRequest=
2');
}
if (typeof(Flux.API.UserRelation2) =3D=3D=3D 'undefined') {
Flux.API.UserRelation2=3Dgtc("Flux.API.UserRelation2");
Flux.API.UserRelation2.registerClass('Flux.API.UserRelation2');
}
if (typeof(Flux.API.StatusCode) =3D=3D=3D 'undefined') {
Flux.API.StatusCode =3D function() { throw Error.invalidOperation(); }
Flux.API.StatusCode.prototype =3D {Ok: 0,InvalidParameters: =
1,SystemError: 2,InvalidLocation: 3,InvalidPassword: =
4,IncorrectPassword: 5,InvalidUserName: 6,UserNameTaken: 7,InvalidEmail: =
8,InvalidGender: 9,InvalidBirthDate: 10,InvalidUserType: =
11,AccountNotFound: 12,MessageTemplateNotFound: 13,BadMessageTemplate: =
14,AccountClosed: 15,AccountBanned: 16,Forbidden: 17,ContentNotFound: =
18,ContentQuotaExceeded: 19,ContentFileInvalidFormat: =
20,ContentFileTooLarge: 21,ContentImageUrlInvalid: 22,NotFound: =
23,NotLoggedIn: 24,RatingUnsupportedSystem: 25,RatingIllegal: =
26,RatingIllegalSystem: 27,NotRated: 28,EmailTaken: 29,InvalidLogin: =
30,InvalidZipCode: 31,AlreadyFlagged: 32,InvalidCountry: =
33,InvalidPostalCode: 34,InvalidDisplayName: 35,CommunityBannedUser: =
36,SystemBannedUser: 37,EulaNotAccepted: 38,IncorrectCaptcha: =
39,NotMember: 40,InvalidToken: 41,InvalidFileType: 42,DeactivatedUser: =
43,IneligibleAge: 44,DangerousText: 45,InvalidAccessKey: 46,InvalidCity: =
47,NotSupported: 48}
Flux.API.StatusCode.registerEnum('Flux.API.StatusCode', true);
}
if (typeof(Flux.API.RelationStatus) =3D=3D=3D 'undefined') {
Flux.API.RelationStatus =3D function() { throw Error.invalidOperation(); =
}
Flux.API.RelationStatus.prototype =3D {Accepted: 1,RequestSent: =
2,Pending: 3,Declined: 4,Banned: 5,BeingFollowed: 6,IsFollowing: 7}
Flux.API.RelationStatus.registerEnum('Flux.API.RelationStatus', true);
}

=0A=
Flux.API.Services.RelationshipManagement.set_path('http://widgets.flux.co=
m/-/RelationshipManagement.asmx');=0A=
=0A=
Flux.API.Services.RelationshipManagement.set_defaultFailedCallback(functi=
on(error) {=0A=
	Sys.Debug.trace(String.format('Error in RelationshipManagement service: =
{0}', error.get_message()));=0A=
});=0A=
=0A=
Type.registerNamespace('Flux.API.Services');
Flux.API.Services.ProfileManagement2=3Dfunction() {
Flux.API.Services.ProfileManagement2.initializeBase(this);
this._timeout =3D 0;
this._userContext =3D null;
this._succeeded =3D null;
this._failed =3D null;
}
Flux.API.Services.ProfileManagement2.prototype=3D{
GetRoles:function(info,succeededCallback, failedCallback, userContext) {
return this._invoke(Flux.API.Services.ProfileManagement2.get_path(), =
'GetRoles',false,{info:info},succeededCallback,failedCallback,userContext=
); },
GetAccount2:function(info,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.ProfileManagement2.get_path(), =
'GetAccount2',false,{info:info},succeededCallback,failedCallback,userCont=
ext); },
AssignRole:function(info,roleIdList,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.ProfileManagement2.get_path(), =
'AssignRole',false,{info:info,roleIdList:roleIdList},succeededCallback,fa=
iledCallback,userContext); },
RemoveRole:function(info,roleIdList,succeededCallback, failedCallback, =
userContext) {
return this._invoke(Flux.API.Services.ProfileManagement2.get_path(), =
'RemoveRole',false,{info:info,roleIdList:roleIdList},succeededCallback,fa=
iledCallback,userContext); }}
Flux.API.Services.ProfileManagement2.registerClass('Flux.API.Services.Pro=
fileManagement2',Sys.Net.WebServiceProxy);
Flux.API.Services.ProfileManagement2._staticInstance =3D new =
Flux.API.Services.ProfileManagement2();
Flux.API.Services.ProfileManagement2.set_path =3D function(value) { =
Flux.API.Services.ProfileManagement2._staticInstance._path =3D value; }
Flux.API.Services.ProfileManagement2.get_path =3D function() { return =
Flux.API.Services.ProfileManagement2._staticInstance._path; }
Flux.API.Services.ProfileManagement2.set_timeout =3D function(value) { =
Flux.API.Services.ProfileManagement2._staticInstance._timeout =3D value; =
}
Flux.API.Services.ProfileManagement2.get_timeout =3D function() { return =
Flux.API.Services.ProfileManagement2._staticInstance._timeout; }
Flux.API.Services.ProfileManagement2.set_defaultUserContext =3D =
function(value) { =
Flux.API.Services.ProfileManagement2._staticInstance._userContext =3D =
value; }
Flux.API.Services.ProfileManagement2.get_defaultUserContext =3D =
function() { return =
Flux.API.Services.ProfileManagement2._staticInstance._userContext; }
Flux.API.Services.ProfileManagement2.set_defaultSucceededCallback =3D =
function(value) { =
Flux.API.Services.ProfileManagement2._staticInstance._succeeded =3D =
value; }
Flux.API.Services.ProfileManagement2.get_defaultSucceededCallback =3D =
function() { return =
Flux.API.Services.ProfileManagement2._staticInstance._succeeded; }
Flux.API.Services.ProfileManagement2.set_defaultFailedCallback =3D =
function(value) { =
Flux.API.Services.ProfileManagement2._staticInstance._failed =3D value; =
}
Flux.API.Services.ProfileManagement2.get_defaultFailedCallback =3D =
function() { return =
Flux.API.Services.ProfileManagement2._staticInstance._failed; }
Flux.API.Services.ProfileManagement2.set_path("/ProfileManagement2.asmx")=
;
Flux.API.Services.ProfileManagement2.GetRoles=3D =
function(info,onSuccess,onFailed,userContext) =
{Flux.API.Services.ProfileManagement2._staticInstance.GetRoles(info,onSuc=
cess,onFailed,userContext); }
Flux.API.Services.ProfileManagement2.GetAccount2=3D =
function(info,onSuccess,onFailed,userContext) =
{Flux.API.Services.ProfileManagement2._staticInstance.GetAccount2(info,on=
Success,onFailed,userContext); }
Flux.API.Services.ProfileManagement2.AssignRole=3D =
function(info,roleIdList,onSuccess,onFailed,userContext) =
{Flux.API.Services.ProfileManagement2._staticInstance.AssignRole(info,rol=
eIdList,onSuccess,onFailed,userContext); }
Flux.API.Services.ProfileManagement2.RemoveRole=3D =
function(info,roleIdList,onSuccess,onFailed,userContext) =
{Flux.API.Services.ProfileManagement2._staticInstance.RemoveRole(info,rol=
eIdList,onSuccess,onFailed,userContext); }
var gtc =3D Sys.Net.WebServiceProxy._generateTypedConstructor;
Type.registerNamespace('Flux.API');
if (typeof(Flux.API.RequestInfo2) =3D=3D=3D 'undefined') {
Flux.API.RequestInfo2=3Dgtc("Flux.API.RequestInfo2");
Flux.API.RequestInfo2.registerClass('Flux.API.RequestInfo2');
}
if (typeof(Flux.API.RoleInfo) =3D=3D=3D 'undefined') {
Flux.API.RoleInfo=3Dgtc("Flux.API.RoleInfo");
Flux.API.RoleInfo.registerClass('Flux.API.RoleInfo');
}
if (typeof(Flux.API.UserInfo2Result) =3D=3D=3D 'undefined') {
Flux.API.UserInfo2Result=3Dgtc("Flux.API.UserInfo2Result");
Flux.API.UserInfo2Result.registerClass('Flux.API.UserInfo2Result');
}
if (typeof(Flux.API.InvokeResult) =3D=3D=3D 'undefined') {
Flux.API.InvokeResult=3Dgtc("Flux.API.InvokeResult");
Flux.API.InvokeResult.registerClass('Flux.API.InvokeResult');
}
if (typeof(Flux.API.StatusCode) =3D=3D=3D 'undefined') {
Flux.API.StatusCode =3D function() { throw Error.invalidOperation(); }
Flux.API.StatusCode.prototype =3D {Ok: 0,InvalidParameters: =
1,SystemError: 2,InvalidLocation: 3,InvalidPassword: =
4,IncorrectPassword: 5,InvalidUserName: 6,UserNameTaken: 7,InvalidEmail: =
8,InvalidGender: 9,InvalidBirthDate: 10,InvalidUserType: =
11,AccountNotFound: 12,MessageTemplateNotFound: 13,BadMessageTemplate: =
14,AccountClosed: 15,AccountBanned: 16,Forbidden: 17,ContentNotFound: =
18,ContentQuotaExceeded: 19,ContentFileInvalidFormat: =
20,ContentFileTooLarge: 21,ContentImageUrlInvalid: 22,NotFound: =
23,NotLoggedIn: 24,RatingUnsupportedSystem: 25,RatingIllegal: =
26,RatingIllegalSystem: 27,NotRated: 28,EmailTaken: 29,InvalidLogin: =
30,InvalidZipCode: 31,AlreadyFlagged: 32,InvalidCountry: =
33,InvalidPostalCode: 34,InvalidDisplayName: 35,CommunityBannedUser: =
36,SystemBannedUser: 37,EulaNotAccepted: 38,IncorrectCaptcha: =
39,NotMember: 40,InvalidToken: 41,InvalidFileType: 42,DeactivatedUser: =
43,IneligibleAge: 44,DangerousText: 45,InvalidAccessKey: 46,InvalidCity: =
47,NotSupported: 48}
Flux.API.StatusCode.registerEnum('Flux.API.StatusCode', true);
}

=0A=
Flux.API.Services.ProfileManagement2.set_path('http://widgets.flux.com/-/=
ProfileManagement2.asmx');=0A=
=0A=
Flux.API.Services.ProfileManagement2.set_defaultFailedCallback(function(e=
rror) {=0A=
	Sys.Debug.trace(String.format('Error in ProfileManagement2 service: =
{0}', error.get_message()));=0A=
});=0A=
=0A=
Type.registerNamespace('Flux.API.Services');
Flux.API.Services.UserFeed2=3Dfunction() {
Flux.API.Services.UserFeed2.initializeBase(this);
this._timeout =3D 0;
this._userContext =3D null;
this._succeeded =3D null;
this._failed =3D null;
}
Flux.API.Services.UserFeed2.prototype=3D{
GetUserFeedList2:function(info,request,succeededCallback, =
failedCallback, userContext) {
return this._invoke(Flux.API.Services.UserFeed2.get_path(), =
'GetUserFeedList2',false,{info:info,request:request},succeededCallback,fa=
iledCallback,userContext); }}
Flux.API.Services.UserFeed2.registerClass('Flux.API.Services.UserFeed2',S=
ys.Net.WebServiceProxy);
Flux.API.Services.UserFeed2._staticInstance =3D new =
Flux.API.Services.UserFeed2();
Flux.API.Services.UserFeed2.set_path =3D function(value) { =
Flux.API.Services.UserFeed2._staticInstance._path =3D value; }
Flux.API.Services.UserFeed2.get_path =3D function() { return =
Flux.API.Services.UserFeed2._staticInstance._path; }
Flux.API.Services.UserFeed2.set_timeout =3D function(value) { =
Flux.API.Services.UserFeed2._staticInstance._timeout =3D value; }
Flux.API.Services.UserFeed2.get_timeout =3D function() { return =
Flux.API.Services.UserFeed2._staticInstance._timeout; }
Flux.API.Services.UserFeed2.set_defaultUserContext =3D function(value) { =
Flux.API.Services.UserFeed2._staticInstance._userContext =3D value; }
Flux.API.Services.UserFeed2.get_defaultUserContext =3D function() { =
return Flux.API.Services.UserFeed2._staticInstance._userContext; }
Flux.API.Services.UserFeed2.set_defaultSucceededCallback =3D =
function(value) { Flux.API.Services.UserFeed2._staticInstance._succeeded =
=3D value; }
Flux.API.Services.UserFeed2.get_defaultSucceededCallback =3D function() =
{ return Flux.API.Services.UserFeed2._staticInstance._succeeded; }
Flux.API.Services.UserFeed2.set_defaultFailedCallback =3D =
function(value) { Flux.API.Services.UserFeed2._staticInstance._failed =
=3D value; }
Flux.API.Services.UserFeed2.get_defaultFailedCallback =3D function() { =
return Flux.API.Services.UserFeed2._staticInstance._failed; }
Flux.API.Services.UserFeed2.set_path("/UserFeed2.asmx");
Flux.API.Services.UserFeed2.GetUserFeedList2=3D =
function(info,request,onSuccess,onFailed,userContext) =
{Flux.API.Services.UserFeed2._staticInstance.GetUserFeedList2(info,reques=
t,onSuccess,onFailed,userContext); }
var gtc =3D Sys.Net.WebServiceProxy._generateTypedConstructor;
Type.registerNamespace('Flux.API');
if (typeof(Flux.API.RequestInfo2) =3D=3D=3D 'undefined') {
Flux.API.RequestInfo2=3Dgtc("Flux.API.RequestInfo2");
Flux.API.RequestInfo2.registerClass('Flux.API.RequestInfo2');
}
if (typeof(Flux.API.UserFeedListRequest) =3D=3D=3D 'undefined') {
Flux.API.UserFeedListRequest=3Dgtc("Flux.API.UserFeedListRequest");
Flux.API.UserFeedListRequest.registerClass('Flux.API.UserFeedListRequest'=
);
}
if (typeof(Flux.API.UserFeedEntry) =3D=3D=3D 'undefined') {
Flux.API.UserFeedEntry=3Dgtc("Flux.API.UserFeedEntry");
Flux.API.UserFeedEntry.registerClass('Flux.API.UserFeedEntry');
}
if (typeof(Flux.API.StatusCode) =3D=3D=3D 'undefined') {
Flux.API.StatusCode =3D function() { throw Error.invalidOperation(); }
Flux.API.StatusCode.prototype =3D {Ok: 0,InvalidParameters: =
1,SystemError: 2,InvalidLocation: 3,InvalidPassword: =
4,IncorrectPassword: 5,InvalidUserName: 6,UserNameTaken: 7,InvalidEmail: =
8,InvalidGender: 9,InvalidBirthDate: 10,InvalidUserType: =
11,AccountNotFound: 12,MessageTemplateNotFound: 13,BadMessageTemplate: =
14,AccountClosed: 15,AccountBanned: 16,Forbidden: 17,ContentNotFound: =
18,ContentQuotaExceeded: 19,ContentFileInvalidFormat: =
20,ContentFileTooLarge: 21,ContentImageUrlInvalid: 22,NotFound: =
23,NotLoggedIn: 24,RatingUnsupportedSystem: 25,RatingIllegal: =
26,RatingIllegalSystem: 27,NotRated: 28,EmailTaken: 29,InvalidLogin: =
30,InvalidZipCode: 31,AlreadyFlagged: 32,InvalidCountry: =
33,InvalidPostalCode: 34,InvalidDisplayName: 35,CommunityBannedUser: =
36,SystemBannedUser: 37,EulaNotAccepted: 38,IncorrectCaptcha: =
39,NotMember: 40,InvalidToken: 41,InvalidFileType: 42,DeactivatedUser: =
43,IneligibleAge: 44,DangerousText: 45,InvalidAccessKey: 46,InvalidCity: =
47,NotSupported: 48}
Flux.API.StatusCode.registerEnum('Flux.API.StatusCode', true);
}
if (typeof(Flux.API.EntryScope) =3D=3D=3D 'undefined') {
Flux.API.EntryScope =3D function() { throw Error.invalidOperation(); }
Flux.API.EntryScope.prototype =3D {Private: 1,Friends: 2,Restricted: =
3,Public: 4}
Flux.API.EntryScope.registerEnum('Flux.API.EntryScope', true);
}

=0A=
Flux.API.Services.UserFeed2.set_path('http://widgets.flux.com/-/UserFeed2=
.asmx');=0A=
=0A=
Flux.API.Services.UserFeed2.set_defaultFailedCallback(function(error) {=0A=
	Sys.Debug.trace(String.format('Error in UserFeed2 service: {0}', =
error.get_message()));=0A=
});=0A=
=0A=
}
Type.registerNamespace('Flux');

if (typeof(Flux.Context) =3D=3D 'undefined') {
	Flux.Context =3D {
		_checkInitialize: function() {
			if (!this._initialized) {
				throw 'Flux.Context was not initialized';
			}
		},
	=09
		isUserAuthenticated: function() {
			this._checkInitialize();
			return this._isUserAuthenticated;
		},
	=09
		getCommunityUcid: function() {
			this._checkInitialize();
			return this._communityUcid;
		},
	=09
		logout: function() {
			this._checkInitialize();
			Flux.API.Services.Authentication.Logout(new Flux.API.RequestInfo(), =
this._logoutHandler);
		},
	=09
		_logoutHandler: function(result, instance, methodName) {
			if (result.StatusCode =3D=3D Flux.API.StatusCode.Ok) {
				window.location.reload();
			} else {
				Flux.Debug.traceServiceError('Authentication', methodName, result);
			}
		},

		isCommunityMember: function() {
			this._checkInitialize();
			return this._isCommunityMember;
		},

		isCommunityAdmin: function() {
			this._checkInitialize();
			return this._isCommunityAdmin;
		},

		isEmailVerified: function() {
			this._checkInitialize();
			return this._isEmailVerified;
		},
	=09
		redirectToSignInPage: function() {
			this._checkInitialize();
			window.location.href =3D this.getSignInUrl();
		},
	=09
		getNameEntryVisibility: function() {
			this._checkInitialize();
			return this._commentSettings.GuestNameVisibility;
		},
	=09
		getEmailEntryVisibility: function() {
			this._checkInitialize();
			return this._commentSettings.GuestEmailVisibility;
		},
	=09
		getAskForWebsiteUrl: function() {
			this._checkInitialize();
			return this._commentSettings.AskForWebsiteUrl;
		},
	=09
		getDisplayGenericUserImageForGuests: function() {
			this._checkInitialize();
			return this._commentSettings.DisplayImageForGuests;
		},
	=09
		getCommunityName: function() {
			this._checkInitialize();
			return this._communityName;
		},
	=09
		getSignInUrl: function() {
			this._checkInitialize();
			return String.format('{0}?returnPath=3D{1}&communityUcid=3D{2}', =
this._signInUrl,
				encodeURIComponent(window.location.href), this._communityUcid);
		},
	=09
		setSignInUrl: function(url) {
			this._checkInitialize();
			this._signInUrl =3D url;
		},
	=09
		getLoggedUserUcid: function() {
			this._checkInitialize();
			return this._loggedUserUcid;
		},
	=09
		getJoinOrSignUpUrl: function() {
			this._checkInitialize();
		=09
			var url;
			if (this._isUserAuthenticated) {
				url =3D this._joinUrl;
			} else {
				url =3D  this._signUpUrl;
			}
		=09
			return String.format('{0}?returnPath=3D{1}&communityUcid=3D{2}', url,
				encodeURIComponent(window.location.href), this._communityUcid);
		},
	=09
		initialize: function(isUserAuthenticated, isCommunityMember, =
isEmailVerified, cssList, communityUcid, signInUrl,
			communityName, isCommunityAdmin, loggedUserUcid, commentSettings, =
joinUrl, signUpUrl) {
			this._isUserAuthenticated =3D isUserAuthenticated;
			this._isCommunityMember =3D isCommunityMember;
			this._isEmailVerified =3D isEmailVerified;
			this._isCommunityAdmin =3D isCommunityAdmin;
			this._loggedUserUcid =3D loggedUserUcid;
			this._commentSettings =3D commentSettings;
		=09
			if (!this._initialized) {
				this._communityUcid =3D communityUcid;
				this._signInUrl =3D signInUrl;
				this._communityName =3D communityName;
				this._joinUrl =3D joinUrl;
				this._signUpUrl =3D signUpUrl;
			=09
				for (var i =3D 0; i < cssList.length; i++) {
					var head =3D document.getElementsByTagName('head')[0];
					var link =3D document.createElement('link');
					link.setAttribute('href', cssList[i]);
					link.setAttribute('type', 'text/css');
					link.setAttribute('rel', 'stylesheet');
					head.appendChild(link);
				}
			=09
				this._initialized =3D true;
			}
		}
	}
}


Type.registerNamespace('Flux');

if (typeof(Flux.Debug) =3D=3D=3D 'undefined') {
	Flux.Debug =3D {
		traceServiceError: function(serviceName, methodName, result) {
			Sys.Debug.trace(String.format('Error {0} in {1}.{2}: {3}',
				result.StatusCode, serviceName, methodName, result.ErrorText));
		}=09
	}
}

Type.registerNamespace('Flux.Controls');

if (typeof(Flux.Controls.DropDownMenu) =3D=3D 'undefined') {
	Flux.Controls.DropDownMenu =3D function(buttonHolderId, buttonId, =
popupId, autoExpand) {
		var popup =3D $get(popupId);
		var button =3D $get(buttonId);
		var holder =3D $get(buttonHolderId);
		var active =3D false;
		var hideTimer =3D null;
	=09
		if (!popup) {
			return;
		}
	=09
		popup.style.position =3D 'absolute';
=09
		var frameLayer =3D null;
		if (Sys.Browser.agent =3D=3D=3D Sys.Browser.InternetExplorer && =
Sys.Browser.version =3D=3D 6) {
			frameLayer =3D document.createElement('iframe');
			frameLayer.frameBorder =3D 0;
			frameLayer.style.position =3D 'absolute';
			frameLayer.style.display =3D 'none';
			frameLayer.setAttribute('scrolling', 'no');
			popup.parentNode.insertBefore(frameLayer, popup);
		}
	=09
		function startHideTimer() {
			hideTimer =3D window.setTimeout(hide, 500);
		};
	=09
		function stopHideTimer() {
			if (hideTimer) {
				window.clearTimeout(hideTimer);
				hideTimer =3D null;
			}
		};

		function show() {
			if (!active) {
				popup.parentNode.style.position =3D 'relative';
				with (popup.style) {
					display =3D '';
					left =3D  document.all ? '0px' : holder.offsetLeft + 'px';
					top =3D (holder.offsetTop + holder.offsetHeight) + 'px';
			//		width =3D holder.offsetWidth + ' px';
			//		width =3D ((2 * holder.offsetWidth) - popup.offsetWidth) + 'px';
				}
			=09
				if (frameLayer) {
					with (frameLayer.style) {
						display =3D '';
						left =3D popup.style.left;
						top =3D popup.style.top;
						width =3D popup.offsetWidth +'px';
						height =3D popup.offsetHeight + 'px';
					}
				}
			=09
				callOnShowHandlers();
			=09
				active =3D true;
			}
		=09
			return false;
		};
	=09
		function hide() {
			stopHideTimer();
		=09
			if (frameLayer) {
				frameLayer.style.display =3D 'none';
			}
		=09
			popup.style.display =3D 'none';

			popup.parentNode.style.position =3D '';
		=09
			callOnCloseHandlers();

			active =3D false;
		};
	=09
		var onShowHandlers =3D [];	=09
		this.addOnShowHandler =3D function(handler) {
			onShowHandlers.push(handler);
		};
		function callOnShowHandlers() {
			for (var i =3D 0; i < onShowHandlers.length; i++) {
				onShowHandlers[i]();
			}
		};
	=09
		var onCloseHandlers =3D [];
		this.addOnCloseHandler =3D function(handler) {
			onCloseHandlers.push(handler);
		};
		function callOnCloseHandlers() {
			for (var i =3D 0; i < onCloseHandlers.length; i++) {
				onCloseHandlers[i]();
			}
		};
	=09
		if (autoExpand) {
			$addHandler(button, 'mouseover', show);
		} else {
			$addHandler(button, 'click', show);
		}

		//$addHandler(holder, 'mouseover', stopHideTimer);
		//$addHandler(holder, 'mouseout', startHideTimer);
	=09
		$addHandler(popup, 'mouseover', stopHideTimer);
		$addHandler(popup, 'mouseout', startHideTimer);
	}
}

Type.registerNamespace('Flux');

if (typeof(Flux.EventManager) =3D=3D 'undefined') {
	Flux.EventManager =3D {
		_widgets: [],
	=09
		registerWidget: function(instance) {
			this._widgets.push(instance);
		=09
			instance.setBeforeActionHandler(Function.createDelegate(this, =
this._beforeActionHandler));
			instance.setAfterActionHandler(Function.createDelegate(this, =
this._afterActionHandler));
		},
	=09
		_beforeActionHandler: function() {
			if (!Flux.Context.isUserAuthenticated()) {
				return this._callFluxWidgetError('notLoggedIn');
			}

			if (!Flux.Context.isCommunityMember()) {
				return this._callFluxWidgetError('notJoined');
			}

			if (!Flux.Context.isEmailVerified()) {
				return this._callFluxWidgetError('notVerified');
			}
		=09
			return true;
		},
	=09
		_callFluxWidgetError: function(errorCode) {
			if (typeof(fluxWidgetError) =3D=3D 'function') {
				return fluxWidgetError(errorCode);
			} else {
				return true;
			}
		},
	=09
		_afterActionHandler: function(reason) {
			for (var i =3D 0; i < this._widgets.length; i++) {
				var widget =3D this._widgets[i];
				if (widget.dataBind) {
					widget.dataBind(reason);
				}
			}
		},
	=09
		update: function(userInfo) {
			if (userInfo) {
				Flux.Context.initialize(true, userInfo.IsCommunityMember, =
userInfo.IsEmailVerified);
			} else {
				Flux.Context.initialize(false);
			}
		=09
			this._afterActionHandler();
		}
	}
}



/*	SWFObject v2.0 rc1 <http://code.google.com/p/swfobject/>
	Copyright (c) 2007 Geoff Stearns, Michael Williams, and Bobby van der =
Sluis
	This software is released under the MIT License =
<http://www.opensource.org/licenses/mit-license.php>
*/

var swfobject=3Dfunction(){var _1=3D[];var _2=3D[];var _3=3Dnull;var =
_4=3Dnull;var _5=3Dfalse;var _6=3Dfalse;var ua=3Dfunction(){var =
_8=3Dtypeof document.getElementById!=3D"undefined"&&typeof =
document.getElementsByTagName!=3D"undefined"&&typeof =
document.createElement!=3D"undefined"&&typeof =
document.appendChild!=3D"undefined"&&typeof =
document.replaceChild!=3D"undefined"&&typeof =
document.removeChild!=3D"undefined"&&typeof =
document.cloneNode!=3D"undefined";var _9=3D[0,0,0];var =
d=3Dnull;if(typeof navigator.plugins!=3D"undefined"&&typeof =
navigator.plugins["Shockwave =
Flash"]=3D=3D"object"){d=3Dnavigator.plugins["Shockwave =
Flash"].description;if(d){d=3Dd.replace(/^.*\s+(\S+\s+\S+$)/,"$1");_9[0]=3D=
parseInt(d.replace(/^(.*)\..*$/,"$1"),10);_9[1]=3DparseInt(d.replace(/^.*=
\.(.*)\s.*$/,"$1"),10);_9[2]=3D/r/.test(d)?parseInt(d.replace(/^.*r(.*)$/=
,"$1"),10):0;}}else{if(typeof window.ActiveXObject!=3D"undefined"){var =
a=3Dnull;var _c=3Dfalse;try{a=3Dnew =
ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");}catch(e){try{a=3Dnew =
ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");_9=3D[6,0,21];a.AllowScr=
iptAccess=3D"always";}catch(e){if(_9[0]=3D=3D6){_c=3Dtrue;}}if(!_c){try{a=
=3Dnew =
ActiveXObject("ShockwaveFlash.ShockwaveFlash");}catch(e){}}}if(!_c&&typeo=
f a=3D=3D"object"){try{d=3Da.GetVariable("$version");if(d){d=3Dd.split(" =
")[1].split(",");_9=3D[parseInt(d[0],10),parseInt(d[1],10),parseInt(d[2],=
10)];}}catch(e){}}}}var u=3Dnavigator.userAgent.toLowerCase();var =
p=3Dnavigator.platform.toLowerCase();var _f=3D/webkit/.test(u);var =
_10=3D_f?parseFloat(u.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):0;var =
ie=3Dfalse;var win=3Dp?/win/.test(p):/win/.test(u);var =
mac=3Dp?/mac/.test(p):/mac/.test(u);/*@cc_on =
ie=3Dtrue;@if(@_win32)win=3Dtrue;@elif(@_mac)mac=3Dtrue;@end@*/return =
{w3cdom:_8,playerVersion:_9,webkit:_f,webkitVersion:_10,ie:ie,win:win,mac=
:mac};}();var =
_14=3Dfunction(){if(!ua.w3cdom){return;}addDomLoadEvent(main);if(ua.ie&&u=
a.win){try{document.write("<script id=3D__ie_ondomload defer=3Dtrue =
src=3D//:></script>");var =
s=3Ddocument.getElementById("__ie_ondomload");if(s){s.onreadystatechange=3D=
function(){if(this.readyState=3D=3D"complete"){this.parentNode.removeChil=
d(this);callDomLoadFunctions();}};}}catch(e){}}if(ua.webkit&&typeof =
document.readyState!=3D"undefined"){_3=3DsetInterval(function(){if(/loade=
d|complete/.test(document.readyState)){callDomLoadFunctions();}},10);}if(=
typeof =
document.addEventListener!=3D"undefined"){document.addEventListener("DOMC=
ontentLoaded",callDomLoadFunctions,null);}addLoadEvent(callDomLoadFunctio=
ns);}();function =
callDomLoadFunctions(){if(_5){return;}if(ua.ie&&ua.win){var =
s=3Ddocument.createElement("span");try{var =
t=3Ddocument.getElementsByTagName("body")[0].appendChild(s);t.parentNode.=
removeChild(t);}catch(e){return;}}_5=3Dtrue;if(_3){clearInterval(_3);_3=3D=
null;}var dl=3D_1.length;for(var i=3D0;i<dl;i++){_1[i]();}}function =
addDomLoadEvent(fn){if(_5){fn();}else{_1[_1.length]=3Dfn;}}function =
addLoadEvent(fn){if(typeof =
window.addEventListener!=3D"undefined"){window.addEventListener("load",fn=
,false);}else{if(typeof =
document.addEventListener!=3D"undefined"){document.addEventListener("load=
",fn,false);}else{if(typeof =
window.attachEvent!=3D"undefined"){window.attachEvent("onload",fn);}else{=
if(typeof window.onload=3D=3D"function"){var =
_1c=3Dwindow.onload;window.onload=3Dfunction(){_1c();fn();};}else{window.=
onload=3Dfn;}}}}}function main(){var rl=3D_2.length;for(var =
i=3D0;i<rl;i++){var id=3D_2[i].id;if(ua.playerVersion[0]>0){var =
obj=3Ddocument.getElementById(id);if(obj){if(hasPlayerVersion(_2[i].swfVe=
rsion)){if(ua.webkit&&ua.webkitVersion<312){fixParams(obj);}}else{if(_2[i=
].expressInstall&&!_6&&hasPlayerVersion([6,0,65])&&(ua.win||ua.mac)){show=
ExpressInstall(_2[i]);}else{displayAltContent(obj);}}}}createCSS("#"+id,"=
visibility:visible");}}function fixParams(obj){var =
_22=3Dobj.getElementsByTagName("object")[0];if(_22){var =
e=3Ddocument.createElement("embed");var a=3D_22.attributes;if(a){var =
al=3Da.length;for(var =
i=3D0;i<al;i++){if(a[i].nodeName.toLowerCase()=3D=3D"data"){e.setAttribut=
e("src",a[i].nodeValue);}else{e.setAttribute(a[i].nodeName,a[i].nodeValue=
);}}}var c=3D_22.childNodes;if(c){var cl=3Dc.length;for(var =
j=3D0;j<cl;j++){if(c[j].nodeType=3D=3D1&&c[j].nodeName.toLowerCase()=3D=3D=
"param"){e.setAttribute(c[j].getAttribute("name"),c[j].getAttribute("valu=
e"));}}}obj.parentNode.replaceChild(e,obj);}}function =
fixObjectLeaks(){if(ua.ie&&ua.win&&hasPlayerVersion([8,0,0])){window.atta=
chEvent("onunload",function(){var =
o=3Ddocument.getElementsByTagName("object");if(o){var =
ol=3Do.length;for(var =
i=3D0;i<ol;i++){o[i].style.display=3D"none";for(var x in o[i]){if(typeof =
o[i][x]=3D=3D"function"){o[i][x]=3Dfunction(){};}}}}});}}function =
showExpressInstall(_2e){_6=3Dtrue;var =
obj=3Ddocument.getElementById(_2e.id);if(obj){if(_2e.altContentId){var =
ac=3Ddocument.getElementById(_2e.altContentId);if(ac){_4=3Dac;}}else{_4=3D=
abstractAltContent(obj);}var =
w=3D_2e.width?_2e.width:(obj.getAttribute("width")?obj.getAttribute("widt=
h"):0);if(parseInt(w,10)<310){w=3D"310";}var =
h=3D_2e.height?_2e.height:(obj.getAttribute("height")?obj.getAttribute("h=
eight"):0);if(parseInt(h,10)<137){h=3D"137";}var =
pt=3Dua.ie&&ua.win?"ActiveX":"PlugIn";document.title=3Ddocument.title.sli=
ce(0,47)+" - Flash Player Installation";var dt=3Ddocument.title;var =
fv=3D"MMredirectURL=3D"+window.location+"&MMplayerType=3D"+pt+"&MMdoctitl=
e=3D"+dt;var =
el=3Dobj;if(ua.ie&&ua.win&&obj.readyState!=3D4){el=3Ddocument.createEleme=
nt("div");obj.parentNode.insertBefore(el,obj);obj.style.display=3D"none";=
window.attachEvent("onload",function(){obj.parentNode.removeChild(obj);})=
;}createSWF({data:_2e.expressInstall,id:"SWFObjectExprInst",width:w,heigh=
t:h},{flashvars:fv},el);}}function =
displayAltContent(obj){if(ua.ie&&ua.win&&obj.readyState!=3D4){var =
el=3Ddocument.createElement("div");obj.parentNode.insertBefore(el,obj);el=
.parentNode.replaceChild(abstractAltContent(obj),el);obj.style.display=3D=
"none";window.attachEvent("onload",function(){obj.parentNode.removeChild(=
obj);});}else{obj.parentNode.replaceChild(abstractAltContent(obj),obj);}}=
function abstractAltContent(obj){var =
ac=3Ddocument.createElement("div");if(ua.win&&ua.ie){ac.innerHTML=3Dobj.i=
nnerHTML;}else{var =
_3b=3Dobj.getElementsByTagName("object")[0];if(_3b){var =
c=3D_3b.childNodes;if(c){var cl=3Dc.length;for(var =
i=3D0;i<cl;i++){if(!(c[i].nodeType=3D=3D1&&c[i].nodeName.toLowerCase()=3D=
=3D"param")&&!(c[i].nodeType=3D=3D8)){ac.appendChild(c[i].cloneNode(true)=
);}}}}}return ac;}function createSWF(_3f,_40,el){if(ua.ie&&ua.win){var =
att=3D"";for(var i in _3f){if(typeof =
_3f[i]=3D=3D"string"){if(i=3D=3D"data"){_40.movie=3D_3f[i];}else{if(i.toL=
owerCase()=3D=3D"styleclass"){att+=3D" =
class=3D\""+_3f[i]+"\"";}else{if(i!=3D"classid"){att+=3D" =
"+i+"=3D\""+_3f[i]+"\"";}}}}}var par=3D"";for(var j in _40){if(typeof =
_40[j]=3D=3D"string"){par+=3D"<param name=3D\""+j+"\" =
value=3D\""+_40[j]+"\" />";}}el.outerHTML=3D"<object =
classid=3D\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\""+att+">"+par+"</=
object>";fixObjectLeaks();}else{if(ua.webkit&&ua.webkitVersion<312){var =
e=3Ddocument.createElement("embed");e.setAttribute("type","application/x-=
shockwave-flash");for(var k in _3f){if(typeof =
_3f[k]=3D=3D"string"){if(k=3D=3D"data"){e.setAttribute("src",_3f[k]);}els=
e{if(k.toLowerCase()=3D=3D"styleclass"){e.setAttribute("class",_3f[k]);}e=
lse{if(k!=3D"classid"){e.setAttribute(k,_3f[k]);}}}}}for(var l in =
_40){if(typeof =
_40[l]=3D=3D"string"){if(l!=3D"movie"){e.setAttribute(l,_40[l]);}}}el.par=
entNode.replaceChild(e,el);}else{var =
o=3Ddocument.createElement("object");o.setAttribute("type","application/x=
-shockwave-flash");for(var m in _3f){if(typeof =
_3f[m]=3D=3D"string"){if(m.toLowerCase()=3D=3D"styleclass"){o.setAttribut=
e("class",_3f[m]);}else{if(m!=3D"classid"){o.setAttribute(m,_3f[m]);}}}}f=
or(var n in _40){if(typeof =
_40[n]=3D=3D"string"&&n!=3D"movie"){createObjParam(o,n,_40[n]);}}el.paren=
tNode.replaceChild(o,el);}}}function createObjParam(el,_4d,_4e){var =
p=3Ddocument.createElement("param");p.setAttribute("name",_4d);p.setAttri=
bute("value",_4e);el.appendChild(p);}function =
hasPlayerVersion(rv){return =
(ua.playerVersion[0]>rv[0]||(ua.playerVersion[0]=3D=3Drv[0]&&ua.playerVer=
sion[1]>rv[1])||(ua.playerVersion[0]=3D=3Drv[0]&&ua.playerVersion[1]=3D=3D=
rv[1]&&ua.playerVersion[2]>=3Drv[2]))?true:false;}function =
createCSS(sel,_52){if(ua.ie&&ua.mac){return;}var =
h=3Ddocument.getElementsByTagName("head")[0];var =
s=3Ddocument.createElement("style");s.setAttribute("type","text/css");s.s=
etAttribute("media","screen");if(!(ua.ie&&ua.win)&&typeof =
document.createTextNode!=3D"undefined"){s.appendChild(document.createText=
Node(sel+" {"+_52+"}"));}h.appendChild(s);if(ua.ie&&ua.win&&typeof =
document.styleSheets!=3D"undefined"&&document.styleSheets.length>0){var =
ls=3Ddocument.styleSheets[document.styleSheets.length-1];if(typeof =
ls.addRule=3D=3D"object"){ls.addRule(sel,_52);}}}return =
{registerObject:function(_56,_57,_58){if(!ua.w3cdom||!_56||!_57){return;}=
var _59=3D{};_59.id=3D_56;var =
v=3D_57.split(".");_59.swfVersion=3D[parseInt(v[0],10),parseInt(v[1],10),=
parseInt(v[2],10)];_59.expressInstall=3D_58?_58:false;_2[_2.length]=3D_59=
;createCSS("#"+_56,"visibility:hidden");},getObjectById:function(_5b){var=
 r=3Dnull;if(ua.w3cdom&&_5){var =
o=3Ddocument.getElementById(_5b);if(o){var =
n=3Do.getElementsByTagName("object")[0];if(!n||(n&&typeof =
o.SetVariable!=3D"undefined")){r=3Do;}else{if(typeof =
n.SetVariable!=3D"undefined"){r=3Dn;}}}}return =
r;},embedSWF:function(_5f,_60,_61,_62,_63,_64,_65,_66,_67){if(!ua.w3cdom|=
|!_5f||!_60||!_61||!_62||!_63){return;}if(hasPlayerVersion(_63.split(".")=
)){createCSS("#"+_60,"visibility:hidden");var att=3D(typeof =
_67=3D=3D"object")?_67:{};att.data=3D_5f;att.width=3D_61;att.height=3D_62=
;var par=3D(typeof _66=3D=3D"object")?_66:{};if(typeof =
_65=3D=3D"object"){for(var i in _65){if(typeof =
_65[i]=3D=3D"string"){if(typeof =
par.flashvars!=3D"undefined"){par.flashvars+=3D"&"+i+"=3D"+_65[i];}else{p=
ar.flashvars=3Di+"=3D"+_65[i];}}}}addDomLoadEvent(function(){createSWF(at=
t,par,document.getElementById(_60));createCSS("#"+_60,"visibility:visible=
");});}else{if(_64&&!_6&&hasPlayerVersion([6,0,65])&&(ua.win||ua.mac)){cr=
eateCSS("#"+_60,"visibility:hidden");addDomLoadEvent(function(){var =
_6b=3D{};_6b.id=3D_6b.altContentId=3D_60;_6b.width=3D_61;_6b.height=3D_62=
;_6b.expressInstall=3D_64;showExpressInstall(_6b);createCSS("#"+_60,"visi=
bility:visible");});}}},getFlashPlayerVersion:function(){return =
{major:ua.playerVersion[0],minor:ua.playerVersion[1],release:ua.playerVer=
sion[2]};},hasFlashPlayerVersion:function(_6c){return =
hasPlayerVersion(_6c.split("."));},createSWF:function(_6d,_6e,el){if(ua.w=
3cdom&&_5){createSWF(_6d,_6e,el);}},createCSS:function(sel,_71){if(ua.w3c=
dom){createCSS(sel,_71);}},addDomLoadEvent:addDomLoadEvent,addLoadEvent:a=
ddLoadEvent,getQueryParamValue:function(_72){var =
q=3Ddocument.location.search||document.location.hash;if(_72=3D=3Dnull){re=
turn q;}if(q){var _74=3Dq.substring(1).split("&");for(var =
i=3D0;i<_74.length;i++){if(_74[i].substring(0,_74[i].indexOf("=3D"))=3D=3D=
_72){return _74[i].substring((_74[i].indexOf("=3D")+1));}}}return =
"";},expressInstallCallback:function(){if(_6&&_4){var =
obj=3Ddocument.getElementById("SWFObjectExprInst");if(obj){obj.parentNode=
.replaceChild(_4,obj);_4=3Dnull;_6=3Dfalse;}}}};}();

if (typeof(Flux.Core) =3D=3D 'undefined') {
	Flux.Core =3D {
		_flashObjectId: 'FluxHelper',
		_widgetList: {},
		_frameCount: 0,
		_callbackIndex: 0,
	=09
		_getFlashObject: function() {
			return  $get(this._flashObjectId);
		},
	=09
		initialize: function(url) {
			if (swfobject.getFlashPlayerVersion().major >=3D 9) {
				var container  =3D document.createElement('div');
				container.setAttribute('id', this._flashObjectId);
				var body =3D document.getElementsByTagName('body')[0];
				body.insertBefore(container, body.firstChild);
			=09
				if (Sys.Browser.agent =3D=3D Sys.Browser.InternetExplorer) {
					swfobject.embedSWF(url, this._flashObjectId,
						'1', '1', '9.0.0', null, null,
						{allowscriptaccess: 'always', wmode: 'transparent'},
						{id: this._flashObjectId});
				} else {
					swfobject.embedSWF(url, this._flashObjectId,
						'0', '0', '9.0.0', null, null,
						{allowscriptaccess: 'always'},
						{id: this._flashObjectId});
				}
			}
		},
	=09
		getWindowId: function() {
			return this._getFlashObject().getWindowId();
		},
	=09
		generateFrameId: function() {
			return String.format('fluxFrame_{0}', this._frameCount++);
		},
	=09
		_createFlashCallback: function(externalCallback) {
			var internalCallbackName =3D String.format('flashCallback_{0}', =
this._callbackIndex++);

			this[internalCallbackName] =3D function(data) {
				externalCallback(data.replace(/\|/g, '\\u'));
				delete Flux.Core[internalCallbackName];
			}
		=09
			return String.format('Flux.Core.{0}', internalCallbackName);
		},
	=09
		executePostRequest: function(url, data, callback) {
			this._executeWebRequest('POST', url, data, callback);
		},
	=09
		executeGetRequest: function(url, callback) {
			this._executeWebRequest('GET', url, null, callback);
		},
	=09
		_executeWebRequest: function(method, url, postData, callback) {
			this._getFlashObject().executeWebRequest(method, url, postData, =
this._createFlashCallback(callback));
		},

		flashLoadedHandler: function() {
			var object =3D this._getFlashObject();
			if (Sys.Browser.agent =3D=3D Sys.Browser.InternetExplorer) {
				object.style.position =3D 'absolute';
			}

			Sys.Net.WebRequestManager.executeRequest =3D function(webRequest) {
				var executor =3D webRequest.get_executor();
				if(!executor) {
					var failed =3D false;
					try {
						var executorType;
						if(webRequest.get_url().indexOf('.asmx') !=3D -1 &&
							webRequest.get_url().indexOf('flux') !=3D -1) {
							executorType =3D eval('Flux.Net.FlashExecutor');
						} else {
							executorType =3D eval(this._defaultExecutorType);
						}
						executor =3D new executorType();
					} catch(a) {
						failed =3D true
					}
					webRequest.set_executor(executor)
				}
			=09
				if(executor.get_aborted()) {
					return;
				}
				=09
				var evArgs =3D new Sys.Net.NetworkRequestEventArgs(webRequest);
				var handler =3D =
this._get_eventHandlerList().getHandler("invokingRequest");
			=09
				if(handler) {
					handler(this,evArgs);
				}
			=09
				if(!evArgs.get_cancel()) {
					executor.executeRequest();
				}
			};

			Flux.Utils.WidgetsLoader.initialize();
			Flux.Utils.WidgetsLoader2.initialize();
		},
	=09
		registerWidget: function(name, instance) {
			if (!this._widgetList[name]) {
				this._widgetList[name] =3D [];
			}
		=09
			this._widgetList[name].push(instance);
		},
	=09
		getWidgetInstances: function(name) {
			if (this._widgetList[name]) {
				return this._widgetList[name].slice(0);
			} else {
				return [];
			}
		}
	}
=09
	=
Flux.Core.initialize('http://widgets.flux.com/-/ClientRuntime/Flash/FluxH=
elper.swf?ver=3D4');
}
Type.registerNamespace('Flux.Widgets');

if (typeof(Flux.Widgets.BaseWidget) =3D=3D=3D 'undefined') {
	Flux.Widgets.BaseWidget =3D function(containerId) {
		this._containerId =3D containerId;

		if (this._template) {	=09
			this._template2 =3D this._prepareTemplate(this._template);
		}
	=09
		this.prepareTemplate =3D function( template, instId ){
			if( this.template =3D=3D undefined )
				this.template =3D "";
		=09
			var arTplParts =3D template.split("{ITEM}");
			try{
				switch(arTplParts.length){
					case 1: this.template =3D {header: "",item: =
arTplParts[0],separator:"",footer: ""}; break;
					case 2: this.template =3D {header: arTplParts[0],item: =
arTplParts[1],separator:"",footer: ""}; break;
					case 3: this.template =3D {header: arTplParts[0],item: =
arTplParts[1],separator:"",footer: arTplParts[2]}; break;
					case 4: this.template =3D {header: arTplParts[0],item: =
arTplParts[1],separator: arTplParts[2],footer: arTplParts[3]}; break;
					default: this.template =3D {header: "",item:"",separator:"",footer: =
""}; return false; break;
				}
			=09
				if( instId ){
					this.template.header =3D String.format(this.template.header, instId =
);
					this.template.footer =3D String.format(this.template.footer, instId =
);
					this.template.separator =3D String.format(this.template.separator, =
instId );
				}
			}catch(e){
				this.template =3D {header:"",item:"",separator:"",footer: ""};
				return false;
			}
			return true;
		};
	}
=09
	Flux.Widgets.BaseWidget.prototype =3D {
		getContainerId: function() {
			return this._containerId;
		},
	=09
		renderContent: function(html, holder) {
			holder =3D holder?holder:$get( this.getContainerId() );
			if (!holder) {
				return;
			}

			try{
				holder.innerHTML =3D html+"";
			}catch(e){
				try{
					while( holder.firstChild )
						holder.removeChild( holder.firstChild );
					var tempElt =3D document.createElement( "span" );
					tempElt.innerHTML =3D html + "";
					holder.appendChild( tempElt );
				}catch(e){
					return;
				}
			}
		},
	=09
		_prepareTemplate: function(template) {
			var setIdRegexp =3D /id=3D\"(.*?)\"/gm;
			template =3D template.replace(setIdRegexp, =
String.format('id=3D"{0}_$1"', this._containerId));

			this._templateItems =3D {};
		=09
			var extractItemsRegexp =3D /(\{(\D.*)\}((.|\n|\r)*?)\{\/\2\})/gm;
			if(Sys.Browser.agent =3D=3D Sys.Browser.InternetExplorer)
				extractItemsRegexp =3D /(\{(\D.*)\}((.|\n)*?)\{\/\2\})/gm;		=09
		=09
			var m;
			while (m =3D extractItemsRegexp.exec(template)) {
				this._templateItems[m[2]] =3D m[3];
			}
		=09
			return template.replace(extractItemsRegexp, '');
		},

		getTemplateItem: function(name) {
			return this._templateItems[name];
		},

		render2: function() {
			var template =3D this._template2;
		=09
			if (typeof(this._preRender) =3D=3D 'function') {
				template =3D this._preRender(template);
			}
		=09
			$get(this._containerId).innerHTML =3D template;
		},
	=09
		$get: function() {
			var result =3D new Sys.StringBuilder(this._containerId);
			for (var i =3D 0; i < arguments.length; i++) {
				result.append(String.format('_{0}', arguments[i]));
			}
			return $get(result.toString());
		},
	=09
		createRequestInfo: function(params) {
			var cUcid =3D Flux.Context.getCommunityUcid();
		=09
			if (!cUcid)
				throw "Cannot access Flux.API without CommunityUcid!";
		=09
			if (params) {
				return new Flux.API.RequestInfo({communityUcid: cUcid, userUcid: =
params.userUcid,
					contentUri: params.contentUri, contentUcid: params.contentUcid});
			} else {
				return new Flux.API.RequestInfo({communityUcid: cUcid, contentUri: =
location.href});
			}
		},
	=09
		setBeforeActionHandler: function(handler) {
			this._beforeActionHandler =3D handler;
		},
	=09
		setAfterActionHandler: function(handler) {
			this._afterActionHandler =3D handler;
		},
	=09
		onBeforeAction: function() {
			if (typeof(this._beforeActionHandler) =3D=3D 'function') {
				return this._beforeActionHandler();
			} else {
				return true;
			}
		},

		onAfterAction: function(reason) {
			if (typeof(this._afterActionHandler) =3D=3D 'function') {
				return this._afterActionHandler(reason);
			} else {
				return true;
			}
		},
	=09
		getElementsByClassName: function(cl) {
			var retnode =3D [];
			var myclass =3D new RegExp('\\b'+cl+'\\b');
			var elem =3D document.getElementsByTagName('*');
			for (var i =3D 0; i < elem.length; i++) {
				var classes =3D elem[i].className;
				if (myclass.test(classes)) {
					retnode.push(elem[i]);
				}
			}
			return retnode;
		},
	=09
		getJsonData: function(url, callback) {
			Flux.Core.executeGetRequest(url, function(response) {
				var json =3D eval(String.format("'{0}'", response));
				eval(String.format('var obj =3D {0}', json));
				callback(obj);
			});
		}
	}

	Flux.Widgets.BaseWidget.registerClass('Flux.Widgets.BaseWidget');
}
Type.registerNamespace('Flux.Utils');

if (typeof(Flux.Utils.WidgetFactory) =3D=3D 'undefined') {
	Flux.Utils.WidgetFactory =3D function(className, scriptUrl) {
		this._queue =3D [];
		this._instanceCounter =3D 0;
		this._className =3D className;
	=09
		var script =3D document.createElement('script');
		script.setAttribute('src', scriptUrl);
		document.getElementsByTagName('head')[0].appendChild(script);
	}
=09
	Flux.Utils.WidgetFactory.prototype =3D {
		queueInstance: function(parentNode, params) {
			var containerId =3D String.format('{0}_{1}', this._className, =
this._instanceCounter++);
		=09
			var customCss =3D false;
			if (params && params.customCss) {
				customCss =3D true;
			}

			if (customCss) {
				document.write(String.format('<span id=3D"{0}"></span>', =
containerId));
			} else {
				document.write(String.format('<span class=3D"Flux"><span id=3D"{0}" =
class=3D"Widget"></span></span>', containerId));
			}

			setTimeout(Function.createDelegate({instance: this, params: params, =
containerId: containerId},
				this._delayLoadHandler), 30);
		},
		=09
		_delayLoadHandler: function() {
			if (this.instance._queue) {
				this.instance._queue.push([this.containerId, this.params]);
			} else {
				this.instance._createInstance(this.containerId, this.params);
			}
		},
	=09
		scriptLoadedHandler: function() {
			this._isScriptLoaded =3D true;
		},
	=09
		processQueue: function() {
			if (this._queue && this._isScriptLoaded && =
Flux.Utils.WidgetsLoader.isAjaxReady()) {
				for (var i =3D 0; i < this._queue.length; i++) {
					this._createInstance.apply(this, this._queue[i]);
				}
			=09
				this._queue =3D null;
			}
		},
	=09
		_createInstance: function(containerId, params) {
			eval(String.format('var widget =3D new Flux.Widgets.{0}(\'{1}\')', =
this._className, containerId));
		=09
			if (widget._initialize) {
				widget._initialize(params);
			}
		=09
			Flux.Core.registerWidget(this._className, widget);
		}
	}
}
Type.registerNamespace('Flux.Utils');

if (typeof(Flux.Utils.WidgetFactory2) =3D=3D 'undefined') {
	Flux.Utils.WidgetFactory2 =3D function(moduleId) {
		this._queue =3D [];
		this._instanceCounter =3D 0;
		this._moduleId =3D moduleId;
		this._widgetClassName =3D String.format('Flux.Widgets.Widget_{0}', =
this._moduleId);
	=09
		var scriptUrl =3D =
String.format('{0}?moduleId=3D{1}&communityUcid=3D{2}',
			this._widgetHandlerUrl, this._moduleId, =
Flux.Context.getCommunityUcid())

		var script =3D document.createElement('script');
		script.setAttribute('src', scriptUrl);
		document.getElementsByTagName('head')[0].appendChild(script);
	}
=09
	Flux.Utils.WidgetFactory2.prototype =3D {
		_widgetHandlerUrl: 'http://widgets.flux.com/-/Widget.js',
	=09
		queueInstance: function(parentNode, params) {
			var containerId =3D String.format('{0}_{1}', this._moduleId, =
this._instanceCounter++);
		=09
			var customCss =3D false;
			if (params && params.customCss) {
				customCss =3D true;
			}

			if (customCss) {
				document.write(String.format('<span id=3D"{0}"></span>', =
containerId));
			} else {
				document.write(String.format('<span class=3D"Flux"><span id=3D"{0}" =
class=3D"Widget"></span></span>', containerId));
			}

			setTimeout(Function.createDelegate({instance: this, params: params, =
containerId: containerId},
				this._delayLoadHandler), 30);
		},
		=09
		_delayLoadHandler: function() {
			if (this.instance._queue) {
				this.instance._queue.push([this.containerId, this.params]);
			} else {
				this.instance._createInstance(this.containerId, this.params);
			}
		},
	=09
		scriptLoadedHandler: function() {
			this._isScriptLoaded =3D true;
		},

		processQueue: function() {
			if (this._queue && this._isScriptLoaded && =
Flux.Utils.WidgetsLoader2.isAjaxReady()) {
				for (var i =3D 0; i < this._queue.length; i++) {
					this._createInstance.apply(this, this._queue[i]);
				}
			=09
				this._queue =3D null;
			}
		},
	=09
		_createInstance: function(containerId, params) {
			eval(String.format('var widget =3D new {0}(\'{1}\');', =
this._widgetClassName, containerId));
		=09
			if (widget.setConteinerId) {
				widget.setConteinerId(containerId);
			}
		=09
			if (widget._initialize) {
				widget._initialize(params);
			}

			Flux.Core.registerWidget(this._widgetClassName, widget);
		}
	}
}
Type.registerNamespace('Flux.Utils');

if (typeof(Flux.Utils.WidgetsLoader) =3D=3D 'undefined') {
	Flux.Utils.WidgetsLoader =3D {
		_factoryList: {},
		_scriptBaseUrl: 'http://widgets.flux.com/-/ClientRuntime/JS/Widgets',
	=09
		initialize: function() {
			this._isAjaxReady =3D true;

			for (var className in this._factoryList) {
				this._factoryList[className].processQueue();
			}
		},
	=09
		isAjaxReady: function() {
			return this._isAjaxReady;
		},

		getWidgetFactory: function(className, scriptUrl) {
			var factory =3D this._factoryList[className];
			if (!factory) {
				if (!scriptUrl) {
					scriptUrl =3D String.format('{0}/{1}.js?communityUcid=3D{2}',
						this._scriptBaseUrl, className, Flux.Context.getCommunityUcid());
				}

				factory =3D new Flux.Utils.WidgetFactory(className, scriptUrl);
				this._factoryList[className] =3D factory;
			}
			return factory;
		},
	=09
		getCurrentScriptElement: function() {
			var scripts =3D document.getElementsByTagName('script');
			return scripts[scripts.length - 1]
		},
	=09
		createWidget: function(className, params) {
			if (!params) {
				params =3D {};
			}
		=09
			if (params.communityUcid) {
				Flux.Context.initialize(false, false, false, [], =
params.communityUcid, null, null, false, null, {});
			}
		=09
			if (className.length =3D=3D 32) {
				Flux.Utils.WidgetsLoader2.createWidget(className, params);
				return;
			}
		=09
			var factory =3D this.getWidgetFactory(className, params.widgetJsUrl);
			factory.queueInstance(this.getCurrentScriptElement().parentNode, =
params);
		},
	=09
		notifyScriptLoaded: function(fullClassName) {
			var factory =3D =
this.getWidgetFactory(fullClassName.substr(fullClassName.lastIndexOf('.')=
 + 1));
			factory.scriptLoadedHandler();
			factory.processQueue();
		}
	}
}
Type.registerNamespace('Flux.Utils');

if (typeof(Flux.Utils.WidgetsLoader2) =3D=3D 'undefined') {
	Flux.Utils.WidgetsLoader2 =3D {
		_factoryList: {},
	=09
		initialize: function() {
			this._isAjaxReady =3D true;

			for (var moduleId in this._factoryList) {
				this._factoryList[moduleId].processQueue();
			}
		},
	=09
		isAjaxReady: function() {
			return this._isAjaxReady;
		},

		_getWidgetFactory: function(moduleId) {
			var factory =3D this._factoryList[moduleId];
			if (!factory) {
				factory =3D new Flux.Utils.WidgetFactory2(moduleId);
				this._factoryList[moduleId] =3D factory;
			}
			return factory;
		},
	=09
		_getCurrentScriptElement: function() {
			var scripts =3D document.getElementsByTagName('script');
			return scripts[scripts.length - 1]
		},
	=09
		createWidget: function(moduleId, params) {
			var factory =3D this._getWidgetFactory(moduleId);
			factory.queueInstance(this._getCurrentScriptElement().parentNode, =
params);
		},
	=09
		notifyScriptLoaded: function(moduleId) {
			var factory =3D this._getWidgetFactory(moduleId);
			factory.scriptLoadedHandler();
			factory.processQueue();
		}
	}
}
Type.registerNamespace('Flux.DataAccess');

if (typeof(Flux.DataAccess.UrlBuilder) =3D=3D 'undefined') {
	Flux.DataAccess.UrlBuilder =3D {
		_checkInitialize: function() {
			if (!this._initialized) {
				throw 'Flux.DataAccess.UrlBuilder was not initialized';
			}
		},
	=09
		initialize: function(urlList) {
			this._urlList =3D urlList;
			this._initialized =3D true;
		},
	=09
		buildContentUsageUrl: function(permalink) {
			this._checkInitialize();
			return this._urlList['contentUsage'].replace('(permalink)', =
encodeURIComponent(permalink));
		},
	=09
		buildMenuUrl: function() {
			this._checkInitialize();
			return this._urlList['menu'];
		},
	=09
		buildQuickMenuUrl: function() {
			this._checkInitialize();
			return this._urlList['quickMenu'].replace('(UserUcid)', =
Flux.Context.getLoggedUserUcid());
		},
	=09
		buildSimplePhotoUrl: function(count) {
			this._checkInitialize();
			return String.format(
				'{0}?max-results=3D{1}',
				this._urlList['simplePhoto'],
				count
			);
		},
	=09
		buildSimpleVideoUrl: function(count) {
			this._checkInitialize();
			return String.format(
				'{0}?max-results=3D{1}',
				this._urlList['simpleVideo'],
				count
			);
		},
	=09
		buildCommunityMembersUrl: function() {
			this._checkInitialize();
			return this._urlList['communityMembers'];
		}
	}
}


------=_NextPart_000_0013_01C867E3.D97C53A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://widgets.flux.com/-/Context.js?communityUcid=53FBFFFF000C2F9C0002FFFFFB53

Flux.Context.initialize(false, false, false, =
["http://static1.fluxstatic.com/-/Clients/Common/Css/common.css?ce9c27d3"=
,"http://staticll.fluxstatic.com/-/Clients/jackassworld/Css/common.css?15=
640"], "53FBFFFF000C2F9C0002FFFFFB53", =
"http://community.jackassworld.com/-/SignUp.aspx", "jackassworld", =
false, "", =
{"CommentApproval":1,"GuestNameVisibility":0,"GuestEmailVisibility":0,"Di=
splayImageForGuests":true,"CommentMode":0,"CommentStripLevel":1,"AskForWe=
bsiteUrl":true}, "http://community.jackassworld.com/-/JoinInterim.aspx", =
"http://community.jackassworld.com/-/SignUp.aspx");
Flux.DataAccess.UrlBuilder.initialize({"contentUsage":"http://daapi.flux.=
com/1.0/00001/Json/53FBFFFF000C2F9C0002FFFFFB53/Feeds/Content/Usage?q=3D(=
permalink)","quickMenu":"http://daapi.flux.com/1.0/00001/Json/53FBFFFF000=
C2F9C0002FFFFFB53/UI/Menu/0(UserUcid)/QuickMenu","menu":"http://daapi.flu=
x.com/1.0/00001/Json/53FBFFFF000C2F9C0002FFFFFB53/UI/Menu","simplePhoto":=
"http://daapi.flux.com/1.0/00001/Json/53FBFFFF000C2F9C0002FFFFFB53/Feeds/=
Picture","simpleVideo":"http://daapi.flux.com/1.0/00001/Json/53FBFFFF000C=
2F9C0002FFFFFB53/Feeds/Video","communityMembers":"http://daapi.flux.com/1=
.0/00001/Json/53FBFFFF000C2F9C0002FFFFFB53/Feeds/People"});


------=_NextPart_000_0013_01C867E3.D97C53A0--

