From: <Saved by Windows Internet Explorer 7>
Subject: Tourist video shows riot, flames in Tibetan capital - CNN.com
Date: Wed, 19 Mar 2008 13:40:47 -0700
MIME-Version: 1.0
Content-Type: multipart/related;
	type="text/html";
	boundary="----=_NextPart_000_0049_01C889C6.D6BF72A0"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3198

This is a multi-part message in MIME format.

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.cnn.com/2008/WORLD/asiapcf/03/19/tibet.video/index.html

<!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>Tourist video shows riot, flames in Tibetan =
capital - CNN.com</TITLE>
<SCRIPT src=3D"http://i.l.cnn.net/cnn/.element/js/2.0/ad_head0.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT src=3D"http://i.l.cnn.net/cnn/cnn_adspaces/cnn_adspaces.js"=20
type=3Dtext/javascript></SCRIPT>

<META content=3D"Tourist video shows riot, flames in Tibetan capital - =
CNN.com"=20
name=3DTITLE>
<META=20
content=3D"Australian tourist Michael Smith says he was eating lunch in =
a restaurant in Tibet's capital, Lhasa, on Friday when he heard an =
explosion and saw smoke. "=20
name=3Ddescription>
<META content=3D"" name=3DAUTHOR>
<META content=3DWORLD name=3DSECTION>
<META content=3Dasiapcf name=3DSUBSECTION>
<META=20
content=3D"ABC Inc., Australia, Dalai Lama, World Politics, China, =
Chinese Politics, Politics, Michael Smith, Xinhua News Agency, Protests =
and Demonstrations, War and Conflict, Riots, Tibet, Peacekeeping and =
Security"=20
name=3DKEYWORDS>
<SCRIPT language=3Djavascript1.2 type=3Dtext/javascript>var cnnIsIntl =
=3D (location.hostname.indexOf('edition.') > -1) ? true : false;var =
clickID =3D (cnnIsIntl) ? 212106 : 211911;var cnnShareTitle =3D =
encodeURIComponent("Tourist video shows riot, flames in Tibetan =
capital");var cnnShareDesc =3D encodeURIComponent("Australian tourist =
Michael Smith says he was eating lunch in a restaurant in Tibet's =
capital, Lhasa, on Friday when he heard an explosion and saw smoke. =
");</SCRIPT>

<META http-equiv=3Dcontent-type content=3D"text/html; =
charset=3Diso-8859-1"><LINK=20
href=3D"/" rel=3DStart><LINK href=3D"/search/" rel=3DSearch><LINK=20
href=3D"http://i.cdn.turner.com/cnn/.element/css/2.0/common.css" =
type=3Dtext/css=20
rel=3Dstylesheet><LINK=20
href=3D"http://i.cdn.turner.com/cnn/.element/css/2.0/mosaic.css" =
type=3Dtext/css=20
rel=3Dstylesheet><LINK title=3DLargeFont=20
href=3D"http://i.cdn.turner.com/cnn/.element/css/2.0/mosaic-alt.css" =
type=3Dtext/css=20
rel=3D"alternate stylesheet">
<SCRIPT =
src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/scripts/prototype.js" =

type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/scripts/scriptaculous.=
js?load=3Deffects"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/main.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/recommend.js" =

type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/StorageManager.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/statemanager.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/mosaic.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/csiManager.js"></SCRIP=
T>
<!-- Copyright 2001-2006, Clickability, Inc. All rights reserved.-->
<SCRIPT language=3Djavascript1.2=20
src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/cnnCustomButton.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT type=3Dtext/javascript>=0A=
// clickability over-ride for sponsorship=0A=
popWin=3D"width=3D810,height=3D480,resizable=3D1,scrollbars=3D1";=0A=
</SCRIPT>

<SCRIPT language=3DJavaScript type=3Dtext/javascript>var cnnCurrTime =3D =
new Date(1205959179560); var cnnCurrHour =3D 16; var cnnCurrMin =3D 39; =
var cnnCurrDay=3D'Wed';</SCRIPT>

<SCRIPT type=3Dtext/javascript>
// FORMAT: cnnad_register(type,width,height,url);
cnnad_registerAd("article", 336, 850, =
"/cnn_adspaces/2.0/asia/intg_story/rgt.336x850.ad");
cnnad_registerAd("video", 336, 850, =
"/cnn_adspaces/2.0/asia/intg_story/video.336x280_sync.ad");

overrideVideoAd =3D =
'/cnn_adspaces/2.0/asia/intg_story/video.preroll_lg.ad';
overrideSyncAd =3D =
'/cnn_adspaces/2.0/asia/intg_story/video.336x280_sync.ad';

var cnnVideoCmpntAd =3D =
'/cnn_adspaces/2.0/asia/intg_story/lft2.180x150.ad';
var cnnPhotoCmpntAd =3D =
'/cnn_adspaces/2.0/asia/intg_story/lft3.180x150.ad';
var otherTab1Ad =3D '/cnn_adspaces/2.0/asia/intg_story/lft4.180x150.ad';
var otherTab2Ad =3D '/cnn_adspaces/2.0/asia/intg_story/lft5.180x150.ad';

var cnnDefault336Ad =3D =
'/cnn_adspaces/2.0/asia/intg_story/rgt.336x850.ad';
var cnnDefault180Ad =3D =
'/cnn_adspaces/2.0/asia/intg_story/lft.180x150.ad';
</SCRIPT>

<SCRIPT language=3DJavaScript type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://i.l.cnn.net/cnn/.element/js/2.0/blogs.js?siteid=3Dcnninline=
"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT type=3Dtext/javascript>=0A=
	var storage;=0A=
	function cnnRecommendStories()=0A=
	{=0A=
		var topic_array =3D =
[{key:'ABC_Inc',weight:19},{key:'Australia',weight:17},{key:'Dalai_Lama',=
weight:36},{key:'World_Politics',weight:43},{key:'China',weight:68}];=0A=
=0A=
		relatedContent(topic_array);=0A=
	}=0A=
	Event.observe(window, 'load', function()=0A=
	{=0A=
		storage=3DStorageManager.getInstance().getStorage();=0A=
		storage.setOnload( function()=0A=
		{=0A=
			window.setTimeout("cnnRecommendStories()",3000);=0A=
		});=0A=
		storage.load();=0A=
	}); =0A=
	Event.observe(window, 'onpageshow', function(evt)=0A=
	{=0A=
		if(evt.persisted){=0A=
			storage=3DStorageManager.getInstance().getStorage();=0A=
			storage.setOnload( function()=0A=
			{=0A=
				window.setTimeout("cnnRecommendStories()",3000);=0A=
			});=0A=
			storage.load();=0A=
		}=0A=
	});=0A=
</SCRIPT>

<SCRIPT type=3Dtext/javascript>videoJsonUrls =3D new =
Array("/video/world/2008/03/19/vosot.lhasa.riots.ap.json","/video/world/2=
008/03/19/vause.china.tibet.new.video.cnn.json","/video/world/2008/03/19/=
vo.tibet.lhasa.more.abc.json","/video/world/2008/03/19/riminton.china.tib=
et.olympics.cnn.json","/video/world/2008/03/19/chao.china.tibet.riots.ctv=
.json","/video/world/2008/03/19/vanmarsh.uk.tibet.world.reax.cnn.json","/=
video/world/2008/03/19/vo.thailand.demo.ap.json","/video/world/2008/03/18=
/intv.china.olympics.wallechinsky.cnn.json","/video/world/2008/03/18/vaus=
e.china.tibet.cnn.json");</SCRIPT>
<!--[if gte IE 5.5]><![if lt IE 7]><style type=3D"text/css" =
media=3D"screen">@import =
url(http://i.l.cnn.net/cnn/.element/css/2.0/ie_mosaic_video.css);</style>=
<![endif]><![endif]-->
<META content=3D"MSHTML 6.00.6000.16608" name=3DGENERATOR></HEAD>
<BODY><IMG id=3DcookieCrumb style=3D"RIGHT: 0px; BOTTOM: 0px; POSITION: =
absolute"=20
height=3D0 alt=3D"" hspace=3D0 =
src=3D"http://i.l.cnn.net/cnn/images/1.gif" width=3D0=20
border=3D0 name=3DcookieCrumb><A name=3Dtop_of_page></A><A=20
href=3D"http://www.cnn.com/2008/WORLD/asiapcf/03/19/tibet.video/index.htm=
l#ContentArea"><IMG=20
style=3D"DISPLAY: none" height=3D1 alt=3D"Skip to main content" =
hspace=3D0=20
src=3D"http://i.l.cnn.net/cnn/images/1.gif" width=3D10 align=3Dright =
border=3D0></A>=20
<DIV id=3DcnnHeader>
<DIV class=3DcnnHeaderContent>
<DIV class=3DcnnHeaderCeiling><A href=3D"http://www.cnn.com/"><IMG =
height=3D36 alt=3D""=20
src=3D"http://i2.cdn.turner.com/cnn/.element/img/2.0/global/nav/header/he=
ader_cnn_com_logo.gif"=20
width=3D148 border=3D0></A><SPAN class=3DcnnSectName> /asia</SPAN>=20
<DIV class=3DcnnHeadColRight>
<DIV class=3DcnnGlobalHeaderSearch>
<FORM onsubmit=3D"return cnnSearch(this);" =
action=3Dhttp://search.cnn.com/cnn/search=20
method=3Dget><IMG class=3DcnnSrchDomLogo height=3D22 alt=3D""=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/nav/header/header_g=
oogle_logo.gif"=20
width=3D47 border=3D0> <INPUT id=3DcnnHeadSrchType type=3Dhidden =
value=3Dweb=20
name=3DcnnHeadSrchType> <INPUT class=3DcnnHeaderTxtField =
id=3DcnnHeadSrchTxt=20
maxLength=3D40> <INPUT class=3DcnnHeaderSearchBtn type=3Dimage =
alt=3DSubmit=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/nav/header/header_s=
earch_btn.gif">=20
</FORM></DIV></DIV></DIV></DIV>
<DIV class=3DcnnNavStretch>
<DIV class=3DcnnHeaderNav>
<UL class=3DcnnNavigation>
  <LI class=3DcnnNavLeft></LI>
  <LI><A href=3D"http://www.cnn.com/">Home</A> </LI>
  <LI><A class=3DcnnCurPage href=3D"http://www.cnn.com/WORLD/">World</A> =
</LI>
  <LI><A href=3D"http://www.cnn.com/US/">U.S.</A> </LI>
  <LI><A href=3D"http://www.cnn.com/POLITICS/">Politics</A> </LI>
  <LI><A href=3D"http://www.cnn.com/CRIME/">Crime</A> </LI>
  <LI><A href=3D"http://www.cnn.com/SHOWBIZ/">Entertainment</A> </LI>
  <LI><A href=3D"http://www.cnn.com/HEALTH/">Health</A> </LI>
  <LI><A href=3D"http://www.cnn.com/TECH/">Tech</A> </LI>
  <LI><A href=3D"http://www.cnn.com/TRAVEL/">Travel</A> </LI>
  <LI><A href=3D"http://www.cnn.com/LIVING/">Living</A> </LI>
  <LI class=3Doffsite><A =
href=3D"http://money.cnn.com/?cnn=3Dyes">Business</A> </LI>
  <LI class=3Doffsite><A =
href=3D"http://www.cnn.com/si/?cnn=3Dyes">Sports</A> </LI>
  <LI class=3Doffsite><A href=3D"http://www.cnn.com/time/">Time.com</A> =
</LI></UL>
<UL class=3DcnnUtilityNavigation>
  <LI class=3DcnnVideo><A=20
  href=3D"http://www.cnn.com/video/?iref=3Dvideoglobal">Video</A> </LI>
  <LI class=3DcnnIreport><A=20
  href=3D"http://www.cnn.com/exchange/?iref=3Direportglobal">iReport</A> =
</LI>
  <LI class=3DcnnImpact><A=20
  =
href=3D"http://www.cnn.com/SPECIALS/2007/impact/?iref=3Dimpactglobal">Imp=
act</A>=20
  </LI></UL></DIV></DIV>
<DIV class=3DcnnHeaderContent>
<DIV class=3DcnnHeaderBot>
<DIV class=3DcnnGlobalHeaderTopics><SPAN =
class=3DcnnGlobalHeaderHotTopic><A=20
href=3D"http://www.cnn.com/topics">Hot Topics</A> =BB</SPAN> <A=20
href=3D"http://www.cnn.com/money/news/specials/americas_money/2008/">Issu=
e #1:=20
America's Money</A> =95 <A =
href=3D"http://topics.cnn.com/topics/iraq">Iraq</A> =95 <A=20
href=3D"http://www.cnn.com/ELECTION/2008/">Election Center</A> =95 <A=20
href=3D"http://topics.cnn.com/topics/tibet">Tibet</A> =95 <A =
class=3DcnnTopMore=20
href=3D"http://www.cnn.com/topics/">more topics =BB</A></DIV>
<DIV class=3DcnnHeadColRight>
<DIV class=3DcnnHeaderWIntl><SPAN class=3DcnnHeadWeather><SPAN=20
id=3DcnnLWPWeather></SPAN><IMG height=3D19 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/images/1.gif" width=3D1 border=3D0> =
<SPAN=20
class=3DcnnHeadWDivide>&nbsp;</SPAN> <A=20
href=3D"http://edition.cnn.com/">International Edition</A></SPAN></DIV>
<SCRIPT type=3Dtext/javascript>

	var allCookies =3D CNN_getCookies();
	var lwpCookie =3D allCookies[ "lwp.weather" ] || null;
	var unitCookie =3D allCookies[ "default.temp.units" ] || null;
	var lwpLocCode=3D'';
	var lwpZip=3D'';
	var lwpQueryStr =3D '';
	if(lwpCookie)
	{
	        var locationArr=3Dunescape(lwpCookie).split('|');
	        var weatherLocParse =3D locationArr[0];
	        if(lwpCookie.indexOf('~')=3D=3D-1)
	        {
	                weatherLocParse=3DlwpCookie.replace('|','~');
	        }
	        var lwpDataArr =3D locationArr[0].split('~');
	        lwpLocCode=3DlwpDataArr[0];
	        if(lwpDataArr.length>0)
	        {
	                lwpZip=3DlwpDataArr[1];
	        }
	        if(lwpZip)
	        {
	                lwpQueryStr =3D 'weather=3D'+lwpZip+'.'+lwpLocCode;
	        }
	        else
	        {
	                lwpQueryStr =3D 'weather=3D'+escape(lwpCookie);
	        }
	        if (unitCookie && unitCookie =3D=3D "true") {
	        	lwpQueryStr +=3D '&celcius=3Dtrue';
	        } else {
	        	lwpQueryStr +=3D '&celcius=3Dfalse';
	        }
	}

	if (location.host.indexOf('qai.cnn.com') > -1) {
		var cnnLWPWeatherCSIMgr =3D =
CSIManager.getInstance().call('http:/\/svcs.qai.cnn.com/weather/wrapper.j=
sp',lwpQueryStr,'cnnLWPWeather');
	} else if (location.host.indexOf('cnn.com') > -1) {
		var cnnLWPWeatherCSIMgr =3D =
CSIManager.getInstance().call('http:/\/svcs.cnn.com/weather/wrapper.jsp',=
lwpQueryStr,'cnnLWPWeather');
	} else {
		var cnnLWPWeatherCSIMgr =3D =
CSIManager.getInstance().call('/.element/ssi/sect/2.0/MAIN/staticWeatherB=
ox.html',lwpQueryStr,'cnnLWPWeather');
	}
</SCRIPT>

<DIV class=3Dclear><IMG height=3D1 alt=3D"" =
src=3D"http://i.l.cnn.net/cnn/images/1.gif"=20
width=3D1 border=3D0></DIV></DIV></DIV></DIV></DIV>
<DIV id=3DcnnContainer><!--ClickabilityRefresh=3D30m-->
<DIV id=3DcnnContentContainer><!-- Tracking values -->
<SCRIPT language=3Djavascript type=3Dtext/javascript>=0A=
<!--=0A=
var cnnSectionName =3D "World";=0A=
var cnnSubSectionName =3D "Asia Pacific";=0A=
var cnnMosaicDetect =3D "mosaic";=0A=
//--></SCRIPT>
<!-- this is where the breaking news CSI code will go -->
<DIV id=3DcnnBannerContainer></DIV>
<SCRIPT type=3Dtext/javascript>=0A=
CSIManager.getInstance().call('/.element/ssi/www/breaking_news/2.0/banner=
.html','','cnnBannerContainer',cnnRenderDomesticBanner);=0A=
</SCRIPT>

<DIV id=3DcnnSetEditionContainer></DIV>
<DIV id=3DcnnMakeHPContainer></DIV>
<SCRIPT type=3Dtext/javascript>=0A=
if(cnnShow_setPref && (location.hostname.indexOf('.cnn.com') > -1)) { =
cnnSetEditionBox(); }=0A=
</SCRIPT>

<DIV id=3DcnnSnapShot>
<DIV class=3DcnnWCBoxHeader><IMG height=3D4 alt=3D""=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/baseplat=
e/corner_dg_TL.gif"=20
width=3D4 border=3D0></DIV><A name=3DContentArea></A>
<DIV class=3DcnnSnapShotHeader><!--startclickprintinclude-->
<DIV id=3DcnnTimeStamp>
<SCRIPT =
type=3Dtext/javascript>document.write(cnnRenderTimeStamp(1205947046915,['=
March 19, 2008 -- Updated 1717 GMT (0117 HKT)','updated 1:17 p.m. EDT, =
Wed March 19, 2008']));</SCRIPT>
</DIV><!--endclickprintinclude-->
<DIV class=3DcnnStoryTools>
<UL>
  <LI>
  <DIV class=3DcnnOverlayMenuContainer>
  <DIV class=3DcnnOverlayMenu id=3DcnnShareThisStory123>
  <DIV class=3DcnnShareThisBox>
  <DIV class=3DcnnShareBoxHeader>
  <DIV class=3DcnnShareBoxHeaderTL></DIV>
  <DIV class=3DcnnShareBoxHeaderTR></DIV></DIV>
  <DIV class=3DcnnShareBoxContent>
  <DIV class=3DcnnShareContent>
  <DIV id=3DcnnShareThisContent>
  <DIV class=3DcnnShareThisTitle><A=20
  href=3D"javascript:cnnHideOverlay('cnnShareThisStory123')"><IMG =
height=3D12 alt=3D""=20
  =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/icons/btn_close.gif=
"=20
  width=3D12 border=3D0></A>=20
  <H6>Share this on:</H6></DIV>
  <DIV class=3DcnnShareThisItem>
  <SCRIPT type=3Dtext/javascript>=0A=
						document.write('<a =
href=3D"http://digg.com/submit?phase=3D2&url=3D'+encodeURIComponent(locat=
ion.href)+'&title=3D'+cnnShareTitle+'&bodytext=3D'+cnnShareDesc+'" =
target=3D"_blank"><img =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/icons/digg_icon.gif=
" alt=3D"Digg" width=3D"17" height=3D"14">Digg<\/a>');=0A=
					</SCRIPT>
  </DIV>
  <DIV class=3DcnnShareThisItem>
  <SCRIPT type=3Dtext/javascript>=0A=
						document.write('<a =
href=3D"http://www.facebook.com/share.php?u=3D'+encodeURIComponent(locati=
on.href)+'" target=3D"_blank"><img =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/icons/facebook_icon=
.gif" alt=3D"Facebook" width=3D"17" height=3D"14">Facebook<\/a>');=0A=
					</SCRIPT>
  </DIV>
  <DIV class=3DcnnShareThisItem><A=20
  =
onclick=3D"window.open('http://del.icio.us/post?v=3D4&amp;partner=3Dcnn&a=
mp;noui&amp;jump=3Dclose&amp;url=3D'+encodeURIComponent(location.href)+'&=
amp;title=3D'+cnnShareTitle+'delicious','toolbar=3Dno,width=3D700,height=3D=
400'); return false;"=20
  href=3D"http://del.icio.us/post"><IMG height=3D16 alt=3D""=20
  =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/icons/delicious.gif=
"=20
  width=3D16>del.icio.us</A></DIV>
  <DIV class=3DcnnShareThisItem>
  <SCRIPT type=3Dtext/javascript>=0A=
						document.write('<a =
href=3D"http://reddit.com/submit?url=3D'+encodeURIComponent(location.href=
)+'&title=3D'+cnnShareTitle+'" target=3D"_blank"><img =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/icons/reddit_icon.g=
if" alt=3D"reddit" width=3D"17" height=3D"16">reddit<\/a>');=0A=
					</SCRIPT>
  </DIV>
  <DIV class=3DcnnShareThisItem>
  <SCRIPT type=3Dtext/javascript>=0A=
						document.write('<a =
href=3D"http://www.stumbleupon.com/submit?url=3D'+encodeURIComponent(loca=
tion.href)+'&title=3D'+cnnShareTitle+'" target=3D"_blank"><img =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/icons/icon_supon.gi=
f" alt=3D"" width=3D"16" height=3D"16">StumbleUpon<\/a>');=0A=
					</SCRIPT>
  </DIV></DIV><!-- /cnnShareThisContent --></DIV><!-- /cnnShareContent =
--></DIV><!-- /cnnShareBoxContent -->
  <DIV class=3DcnnShareBoxFooter>
  <DIV class=3DcnnShareBoxFooterBL></DIV>
  <DIV class=3DcnnShareBoxFooterBR></DIV></DIV></DIV></DIV></DIV><A=20
  class=3DcnnOverlayLnk onmouseover=3DcnnImgSwap(this,1)=20
  onmouseout=3DcnnImgSwap(this,0)=20
  href=3D"javascript:cnnShowOverlay('cnnShareThisStory123');"><IMG =
height=3D15=20
  alt=3DShare=20
  =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/story_tools/share_b=
tn.gif"=20
  width=3D36 border=3D0></A><BR></LI>
  <LI><A onmouseover=3DcnnImgSwap(this,1) onclick=3Dreturn(ET());=20
  onmouseout=3DcnnImgSwap(this,0)=20
  =
href=3D"http://www.cnn.com/2008/WORLD/asiapcf/03/19/tibet.video/index.htm=
l#"><IMG=20
  height=3D15 alt=3DE-mail=20
  =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/story_tools/email_b=
tn.gif"=20
  width=3D36 border=3D0></A> </LI>
  <LI><A onmouseover=3DcnnImgSwap(this,1) onclick=3Dreturn(ST());=20
  onmouseout=3DcnnImgSwap(this,0)=20
  =
href=3D"http://www.cnn.com/2008/WORLD/asiapcf/03/19/tibet.video/index.htm=
l#"><IMG=20
  height=3D15 alt=3DSave=20
  =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/story_tools/save_bt=
n.gif"=20
  width=3D36 border=3D0></A> </LI>
  <LI class=3DcnnPrintThis><A onmouseover=3DcnnImgSwap(this,1) =
onclick=3Dreturn(PT());=20
  onmouseout=3DcnnImgSwap(this,0)=20
  =
href=3D"http://www.cnn.com/2008/WORLD/asiapcf/03/19/tibet.video/index.htm=
l#"><IMG=20
  height=3D15 alt=3DPrint=20
  =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/story_tools/print_b=
tn.gif"=20
  width=3D36 border=3D0></A> </LI></UL></DIV></DIV>
<DIV id=3DcnnHeaderLeftCol><!--startclickprintinclude--><!-- =
google_ad_section_start -->
<H1>Tourist video shows riot, flames in Tibetan capital</H1><!-- =
google_ad_section_end --><!--endclickprintinclude--></DIV>
<DIV id=3DcnnHeaderRightCol><!--startclickprintinclude-->
<UL>
  <LI class=3DcnnHiliteHeader>Story Highlights<!-- =
google_ad_section_start -->
  <LI>Michael Smith shot video of anti-Chinese rioting in Lhasa, Tibet, =
last=20
  week <BR>
  <LI>The Australian tourist videotaped Tibetans smashing windows, =
setting=20
  fires<BR>
  <LI>Once home, Smith shared his video with Australia's ABC =
News<BR><BR><!-- google_ad_section_end --><!--startclickprintexclude-->
  <LI class=3DcnnNextStory id=3DcnnNextStoryCSI><A=20
  =
href=3D"http://www.cnn.com/2008/WORLD/asiapcf/03/19/tibet.unrest/index.ht=
ml?iref=3Dnextin">Next=20
  Article in World =BB</A>
  <SCRIPT type=3Dtext/javascript>=0A=
if(window.location.pathname.indexOf('/2008/WORLD/asiapcf/03/19/tibet.unre=
st/index.html')!=3D-1){=0A=
var nxtStryCSIMgr =3D =
CSIManager.getInstance().call('/.element/ssi/auto/2.0/sect/WORLD/nextStor=
y0.exclude.html','','cnnNextStoryCSI');}=0A=
					=0A=
						=0A=
if(window.location.pathname.indexOf('/2008/WORLD/europe/03/19/greece.stri=
kes/index.html')!=3D-1){=0A=
var nxtStryCSIMgr =3D =
CSIManager.getInstance().call('/.element/ssi/auto/2.0/sect/WORLD/nextStor=
y1.exclude.html','','cnnNextStoryCSI');}=0A=
					=0A=
						=0A=
if(window.location.pathname.indexOf('/2008/WORLD/meast/03/19/kuwait.parli=
ament/index.html')!=3D-1){=0A=
var nxtStryCSIMgr =3D =
CSIManager.getInstance().call('/.element/ssi/auto/2.0/sect/WORLD/nextStor=
y2.exclude.html','','cnnNextStoryCSI');}=0A=
					=0A=
						=0A=
if(window.location.pathname.indexOf('/2008/WORLD/asiapcf/03/19/pakistan.s=
peaker.ap/index.html')!=3D-1){=0A=
var nxtStryCSIMgr =3D =
CSIManager.getInstance().call('/.element/ssi/auto/2.0/sect/WORLD/nextStor=
y3.exclude.html','','cnnNextStoryCSI');}=0A=
					=0A=
						=0A=
if(window.location.pathname.indexOf('/2008/WORLD/africa/03/19/zimbabwe.vo=
te.ap/index.html')!=3D-1){=0A=
var nxtStryCSIMgr =3D =
CSIManager.getInstance().call('/.element/ssi/auto/2.0/sect/WORLD/nextStor=
y4.exclude.html','','cnnNextStoryCSI');}=0A=
					=0A=
						=0A=
if(window.location.pathname.indexOf('/2008/WORLD/asiapcf/03/19/japan.cart=
oon.ap/index.html')!=3D-1){=0A=
var nxtStryCSIMgr =3D =
CSIManager.getInstance().call('/.element/ssi/auto/2.0/sect/WORLD/nextStor=
y5.exclude.html','','cnnNextStoryCSI');}=0A=
					=0A=
						</SCRIPT>
<!--endclickprintexclude--></LI></UL><!--endclickprintinclude--></DIV>
<DIV class=3Dclear><IMG height=3D1 alt=3D""=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/1x1pixel.gif" =
width=3D1=20
border=3D0></DIV>
<DIV class=3DcnnWCBoxFooter><IMG height=3D4 alt=3D""=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/baseplat=
e/corner_dg_BL.gif"=20
width=3D4 border=3D0></DIV></DIV>
<DIV id=3DcnnTabNav>
<UL>
  <LI id=3DcnnMosaic_tab1><A=20
  =
onclick=3D"s_objectID=3D'Article';CNN_changeMosaicTab('cnnTxtCmpnt','arti=
cle.html');return false;"=20
  =
href=3D"http://www.cnn.com/2008/WORLD/asiapcf/03/19/tibet.video/index.htm=
l#cnnSTCText"><SPAN><IMG=20
  class=3Doff height=3D12 alt=3D""=20
  =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/art_icn.gif" =
width=3D11=20
  border=3D0><IMG class=3Don height=3D12 alt=3D""=20
  =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/art_icn_grayed=
.gif"=20
  width=3D11 border=3D0> Read</SPAN></A> </LI>
  <LI id=3DcnnMosaic_tab2><A=20
  =
onclick=3D"s_objectID=3D'Video';CNN_changeMosaicTab('cnnVideoCmpnt','vide=
o.html');return false;"=20
  =
href=3D"http://www.cnn.com/2008/WORLD/asiapcf/03/19/tibet.video/video.htm=
l#cnnSTCVideo"><SPAN><IMG=20
  class=3Doff height=3D14 alt=3D""=20
  src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/video.gif" =
width=3D16=20
  border=3D0><IMG class=3Don height=3D14 alt=3D""=20
  =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/active/video.g=
if"=20
  width=3D16 border=3D0> VIDEO</SPAN></A> </LI>
  <LI id=3DcnnMosaic_tab3><A=20
  =
onclick=3D"s_objectID=3D'Photos';CNN_changeMosaicTab('cnnPhotoCmpnt','pho=
tos.html');return false;"=20
  =
href=3D"http://www.cnn.com/2008/WORLD/asiapcf/03/19/tibet.video/photos.ht=
ml#cnnSTCPhoto"><SPAN><IMG=20
  class=3Doff height=3D14 alt=3D""=20
  src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/photos.gif" =
width=3D16=20
  border=3D0><IMG class=3Don height=3D14 alt=3D""=20
  =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/active/photos.=
gif"=20
  width=3D16 border=3D0> PHOTOS</SPAN></A> </LI></UL></DIV>
<DIV id=3DcnnMainContent>
<DIV class=3DcnnWCBox>
<DIV class=3DcnnWCBoxHeader><IMG height=3D4 alt=3D""=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/baseplat=
e/corner_dg_TL.gif"=20
width=3D4 border=3D0></DIV>
<DIV class=3DcnnWCBoxContent>
<DIV id=3DcnnLeftCol>
<DIV class=3DcnnMosaicContentCol>
<DIV id=3DcnnHighLightTrigger>
<DIV class=3DcnnContentContainer id=3DcnnTxtCmpnt><!-- =
google_ad_section_start --><!-- CONTENT --><!-- REAP --><!-- PURGE =
--><!-- KEEP --><!--startclickprintinclude-->
<SCRIPT language=3DJavaScript=20
type=3Dtext/javascript>var clickExpire =3D "-1";</SCRIPT>
<!--startclickprintexclude-->
<DIV =
id=3DcnnSCFontButtons><!--endclickprintexclude--><!--startclickprintexclu=
de-->
<DIV id=3DcnnSCFontLabel><IMG height=3D13 alt=3D""=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/story_tools/text_si=
ze.gif"=20
width=3D38> </DIV>
<DIV id=3DcnnSCFontMinusBtn=20
onclick=3D"setActiveStyleSheet('default'); return false;"><IMG=20
class=3DcnnDecreaseFont title=3D"Decrease font" height=3D13 =
alt=3D"Decrease font"=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/story_tools/txt_min=
us.gif"=20
width=3D13 border=3D0> <IMG class=3DcnnIncreaseFont title=3D"Decrease =
font" height=3D13=20
alt=3D"Decrease font"=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/story_tools/txt_min=
us_dn_.gif"=20
width=3D13 border=3D0> </DIV>
<DIV id=3DcnnSCFontPlusBtn=20
onclick=3D"setActiveStyleSheet('LargeFont'); return false;"><IMG=20
class=3DcnnIncreaseFont title=3D"Enlarge font" height=3D13 =
alt=3D"Enlarge font"=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/story_tools/txt_plu=
s.gif"=20
width=3D13 border=3D0> <IMG class=3DcnnDecreaseFont title=3D"Enlarge =
font" height=3D13=20
alt=3D"Enlarge font"=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/story_tools/txt_plu=
s_dn.gif"=20
width=3D13 border=3D0> =
</DIV></DIV><!--endclickprintexclude--><!--startclickprintexclude--><!--e=
ndclickprintexclude-->
<P><B>(CNN)</B> -- Australian tourist Michael Smith says he was eating =
lunch in=20
a restaurant in Tibet's capital, Lhasa, on Friday when he heard an =
explosion and=20
saw smoke. </P><!--startclickprintexclude-->
<DIV id=3DimageChanger1>
<DIV class=3DcnnStoryPhotoBox>
<DIV class=3DcnnImgChngr=20
id=3DcnnImgChngr><!----><!--=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3DIMAGE=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D--><IMG height=3D219=20
alt=3Dart.tibet.aptn.jpg=20
src=3D"http://i.l.cnn.net/cnn/2008/WORLD/asiapcf/03/19/tibet.video/art.ti=
bet.aptn.jpg"=20
width=3D292 =
border=3D0><!--=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D/IMAGE=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D-->
<DIV class=3DcnnStoryPhotoCaptionBox>
<DIV class=3Dcnn3pxTB9pxLRPad>
<P><!--=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3DCAPTION=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D-->Video shot by an Australian tourist shows=20
protesters in the streets of Lhasa, Tibet, last =
week.<!--=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D/CAPTION=3D=3D=3D=3D=3D=3D=3D=3D=
=3D--></P></DIV></DIV>
<DIV class=3DcnnStoryPhotoBoxNavigation>
<DIV class=3DcnnStoryPhotoMoreLnk><A=20
href=3D"javascript:CNN_changeMosaicTab('cnnPhotoCmpnt','photos.html');">m=
ore=20
photos =BB</A> </DIV></DIV>
<DIV class=3DcnnWireBoxFooter><IMG height=3D4 alt=3D""=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/baseplat=
e/corner_wire_BL.gif"=20
width=3D4> </DIV></DIV></DIV></DIV>
<SCRIPT type=3Dtext/javascript>=0A=
	var CNN_ArticleChanger =3D new =
CNN_imageChanger('cnnImgChngr','/2008/WORLD/asiapcf/03/19/tibet.video/img=
Chng/p1-0.init.exclude.html',1,1);=0A=
=0A=
//CNN.imageChanger.load('cnnImgChngr','imgChng/p1-0.exclude.html');=0A=
</SCRIPT>
<!--endclickprintexclude-->
<P>As armored vehicles and trucks carrying Chinese soldiers rushed past, =
Smith=20
started videotaping. </P>
<P>"We're standing here in the middle of Lhasa and the place has just=20
[expletive] exploded," Smith narrated during the rioting.</P>
<P>Smith, who was traveling in Tibet when anti-Chinese rioting broke out =
Friday,=20
returned home this week with dramatic video of the violence in the =
Tibetan=20
capital, Lhasa, which aired on Australian TV on Wednesday. <SPAN=20
class=3DcnnEmbeddedMosLnk><IMG height=3D14 alt=3DVideo=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/video.gif" =
width=3D16=20
border=3D0> <A=20
onclick=3D"CNN_changeMosaicTab('cnnVideoCmpnt','videos.html',true,'/');" =

href=3D"http://www.cnn.com/2008/WORLD/asiapcf/03/19/tibet.video/index.htm=
l#cnnSTCVideo">Watch=20
Smith's video of chaos in streets =BB</A></SPAN></P>
<P>Tibetan exile groups maintain at least 80 people were killed by =
Chinese=20
security forces that day, but Chinese authorities insist they acted with =

restraint and killed no one. Instead, <A class=3DcnnInlineTopic=20
href=3D"http://topics.cnn.com/topics/China">China</A> says 13 "innocent =
people"=20
were killed, some brutally burned, by the Tibetan rioters. </P>
<P>No apparent deaths or injuries were seen on the video, which Smith =
shared=20
with Australia's ABC News, a CNN affiliate.</P>
<P>The video shows Tibetans smashing windows and setting fire to Chinese =
shops=20
and cars, while people are heard cheering. It also shows Chinese =
security=20
forces, but no clashes between them and the rioters.</P>
<P>"It's absolute mayhem on the streets," Smith =
said.</P><!--startclickprintexclude-->
<DIV class=3DcnnStoryElementBox>
<H4>Don't Miss</H4>
<UL class=3DcnnRelated>
  <LI><B class=3Dwool></B><A=20
  =
href=3D"http://www.cnn.com/2008/WORLD/asiapcf/03/19/tibet.unrest/index.ht=
ml?iref=3Dnewssearch">Further=20
  protests in Nepal as Tibet tension spreads</A>=20
  <LI><B class=3Dwool></B><A=20
  =
href=3D"http://www.cnn.com/2008/WORLD/asiapcf/03/19/tibet.reporters/index=
.html?iref=3Dnewssearch">News=20
  of Tibet under scrutiny</A>=20
  <LI><B class=3Dwool></B><A=20
  =
href=3D"http://www.cnn.com/2008/WORLD/asiapcf/03/19/tibet.dalailama/index=
.html?iref=3Dnewssearch">Free=20
  Tibet parties meet Dalai Lama</A>=20
  <LI><B class=3Dwool>TIME.com: </B><A=20
  href=3D"http://www.cnn.com/time/world/article/0,8599,1723265,00.html"=20
  target=3Dnew>The Dalai Lama's dilemma</A> =
</LI></UL></DIV><!--endclickprintexclude-->
<P>Other video released of the rioting was broadcast by the Chinese =
government's=20
CCTV, and it did not include pictures of Chinese security forces.</P>
<P>Smith said as he made his way back to his hotel on Friday, he "met so =
many=20
Tibetan people on the streets, so many young Tibetan boys just screaming =
for <A=20
class=3DcnnInlineTopic =
href=3D"http://topics.cnn.com/topics/Tibet">Tibet</A>'s=20
freedom."</P>
<P>"We don't have any freedoms," one young Tibetan male shouted to =
Smith's=20
camera.</P>
<P>"The Tibetan people are going crazy," Smith said. <SPAN=20
class=3DcnnEmbeddedMosLnk><IMG height=3D14 alt=3DPhoto=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/photos.gif" =
width=3D16=20
border=3D0> <A =
onclick=3D"CNN_changeMosaicTab('cnnPhotoCmpnt','photos.html',true);"=20
href=3D"http://www.cnn.com/2008/WORLD/asiapcf/03/19/tibet.video/index.htm=
l#cnnSTCPhoto">See=20
protests around the world over Tibet =BB</A></SPAN></P>
<P>Many of the businesses targeted by the rioters were operated by Han =
Chinese,=20
China's largest ethnic group. The <A class=3DcnnInlineTopic=20
href=3D"http://topics.cnn.com/topics/Dalai_Lama">Dalai Lama</A>, Tibet's =
spiritual=20
leader, has blamed the violent protests on deep resentment fueled by =
Chinese=20
treatment of Tibetans as "second-class citizens in their own land."</P>
<P>Tibetan activists said an influx of Han Chinese from other provinces =
is=20
threatening their ancient culture.</P>
<P>While many of these "Free Tibet" activists demand independence from =
China,=20
the Dalai Lama said he wants only "genuine autonomy" so that Tibetans =
can=20
preserve their heritage. <SPAN class=3DcnnEmbeddedMosLnk><IMG =
height=3D14 alt=3DVideo=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/video.gif" =
width=3D16=20
border=3D0> <A=20
onclick=3D"CNN_changeMosaicTab('cnnVideoCmpnt','videos.html',true,'/video=
/world/2008/03/19/vause.china.tibet.new.video.cnn');"=20
href=3D"http://www.cnn.com/2008/WORLD/asiapcf/03/19/tibet.video/index.htm=
l#cnnSTCVideo">Watch=20
Tibetans on horseback storm a Chinese town =BB</A></SPAN></P>
<P>Meanwhile, China's state-run Xinhua news agency reported Tuesday that =
more=20
than 100 people surrendered themselves to police and admitted =
involvement in the=20
clashes last week in Lhasa.</P>
<P>Tibet's regional government said 105 people had turned themselves in =
to=20
authorities by 11 p.m. Tuesday (1:15 p.m. ET), Xinhua =
said.</P><!--startclickprintexclude-->
<DIV class=3DcnnStoryElementBox>
<DIV class=3DcnnStoryElementBoxAd>
<DIV class=3DcnnStoryElementBoxAdHead><IMG alt=3Dadvertisement=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/content/ads/advertisement.=
gif"></DIV>
<DIV =
id=3DcnnDefault180Space></DIV></DIV></DIV><!--endclickprintexclude-->
<P>Authorities had urged those who participated in the protests to turn=20
themselves in, offering them leniency if they did.</P>
<P>"Those who surrender and provide information on other lawbreakers =
will be=20
exempt from punishment," Xinhua quoted a police notice as =
saying.<!--startclickprintexclude--><SPAN class=3DcnnEmbeddedMosLnk> <A=20
onclick=3Dreturn(ET());=20
href=3D"http://www.cnn.com/2008/WORLD/asiapcf/03/19/tibet.video/index.htm=
l#">E-mail=20
to a friend</A> <IMG height=3D14 alt=3D"E-mail to a friend"=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/util/email.gif" =
width=3D17=20
border=3D0></SPAN><!--endclickprintexclude--></P>
<P class=3DcnnTopics><B>All About</B> <A=20
href=3D"http://topics.cnn.com/topics/Tibet">Tibet</A> =95 <A=20
href=3D"http://topics.cnn.com/topics/China">China</A> =95 <A=20
href=3D"http://topics.cnn.com/topics/Dalai_Lama">Dalai =
Lama</A></P><!--startclickprintexclude--><!--endclickprintexclude--><!--e=
ndclickprintinclude--><!-- /REAP --><!-- /CONTENT --><!-- =
google_ad_section_end --></DIV>
<DIV class=3DcnnContentContainer id=3DcnnVideoCmpnt></DIV>
<DIV class=3DcnnContentContainer id=3DcnnPhotoCmpnt></DIV>
<SCRIPT type=3Dtext/javascript>if ($('cnnTabNav')) =
{initcnnContentTracker();cnnTabStripLinks();cnnLoadTab();}</SCRIPT>
</DIV>
<DIV class=3DcnnStoryToolsFooter>
<DIV class=3DcnnStoryTools>
<UL>
  <LI>
  <DIV class=3DcnnOverlayMenuContainer>
  <DIV class=3DcnnOverlayMenu id=3DcnnShareThisStory124>
  <DIV class=3DcnnShareThisBox>
  <DIV class=3DcnnShareBoxHeader>
  <DIV class=3DcnnShareBoxHeaderTL></DIV>
  <DIV class=3DcnnShareBoxHeaderTR></DIV></DIV>
  <DIV class=3DcnnShareBoxContent>
  <DIV class=3DcnnShareContent>
  <DIV id=3DcnnShareThisContent>
  <DIV class=3DcnnShareThisTitle><A=20
  href=3D"javascript:cnnHideOverlay('cnnShareThisStory124')"><IMG =
height=3D12 alt=3D""=20
  =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/icons/btn_close.gif=
"=20
  width=3D12 border=3D0></A>=20
  <H6>Share this on:</H6></DIV>
  <DIV class=3DcnnShareThisItem>
  <SCRIPT type=3Dtext/javascript>=0A=
						document.write('<a =
href=3D"http://digg.com/submit?phase=3D2&url=3D'+encodeURIComponent(locat=
ion.href)+'&title=3D'+cnnShareTitle+'&bodytext=3D'+cnnShareDesc+'" =
target=3D"_blank"><img =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/icons/digg_icon.gif=
" alt=3D"Digg" width=3D"17" height=3D"14">Digg<\/a>');=0A=
					</SCRIPT>
  </DIV>
  <DIV class=3DcnnShareThisItem>
  <SCRIPT type=3Dtext/javascript>=0A=
						document.write('<a =
href=3D"http://www.facebook.com/share.php?u=3D'+encodeURIComponent(locati=
on.href)+'" target=3D"_blank"><img =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/icons/facebook_icon=
.gif" alt=3D"Facebook" width=3D"17" height=3D"14">Facebook<\/a>');=0A=
					</SCRIPT>
  </DIV>
  <DIV class=3DcnnShareThisItem><A=20
  =
onclick=3D"window.open('http://del.icio.us/post?v=3D4&amp;partner=3Dcnn&a=
mp;noui&amp;jump=3Dclose&amp;url=3D'+encodeURIComponent(location.href)+'&=
amp;title=3D'+cnnShareTitle+'delicious','toolbar=3Dno,width=3D700,height=3D=
400'); return false;"=20
  href=3D"http://del.icio.us/post"><IMG height=3D16 alt=3D""=20
  =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/icons/delicious.gif=
"=20
  width=3D16>del.icio.us</A></DIV>
  <DIV class=3DcnnShareThisItem>
  <SCRIPT type=3Dtext/javascript>=0A=
						document.write('<a =
href=3D"http://reddit.com/submit?url=3D'+encodeURIComponent(location.href=
)+'&title=3D'+cnnShareTitle+'" target=3D"_blank"><img =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/icons/reddit_icon.g=
if" alt=3D"reddit" width=3D"17" height=3D"16">reddit<\/a>');=0A=
					</SCRIPT>
  </DIV>
  <DIV class=3DcnnShareThisItem>
  <SCRIPT type=3Dtext/javascript>=0A=
						document.write('<a =
href=3D"http://www.stumbleupon.com/submit?url=3D'+encodeURIComponent(loca=
tion.href)+'&title=3D'+cnnShareTitle+'" target=3D"_blank"><img =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/icons/icon_supon.gi=
f" alt=3D"" width=3D"16" height=3D"16">StumbleUpon<\/a>');=0A=
					</SCRIPT>
  </DIV></DIV><!-- /cnnShareThisContent --></DIV><!-- /cnnShareContent =
--></DIV><!-- /cnnShareBoxContent -->
  <DIV class=3DcnnShareBoxFooter>
  <DIV class=3DcnnShareBoxFooterBL></DIV>
  <DIV class=3DcnnShareBoxFooterBR></DIV></DIV></DIV></DIV></DIV><A=20
  class=3DcnnOverlayLnk onmouseover=3DcnnImgSwap(this,1)=20
  onmouseout=3DcnnImgSwap(this,0)=20
  href=3D"javascript:cnnShowOverlay('cnnShareThisStory124');"><IMG =
height=3D15=20
  alt=3DShare=20
  =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/story_tools/share_b=
tn.gif"=20
  width=3D36 border=3D0></A><BR></LI>
  <LI><A onmouseover=3DcnnImgSwap(this,1) onclick=3Dreturn(ET());=20
  onmouseout=3DcnnImgSwap(this,0)=20
  =
href=3D"http://www.cnn.com/2008/WORLD/asiapcf/03/19/tibet.video/index.htm=
l#"><IMG=20
  height=3D15 alt=3DE-mail=20
  =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/story_tools/email_b=
tn.gif"=20
  width=3D36 border=3D0></A> </LI>
  <LI><A onmouseover=3DcnnImgSwap(this,1) onclick=3Dreturn(ST());=20
  onmouseout=3DcnnImgSwap(this,0)=20
  =
href=3D"http://www.cnn.com/2008/WORLD/asiapcf/03/19/tibet.video/index.htm=
l#"><IMG=20
  height=3D15 alt=3DSave=20
  =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/story_tools/save_bt=
n.gif"=20
  width=3D36 border=3D0></A> </LI>
  <LI class=3DcnnPrintThis><A onmouseover=3DcnnImgSwap(this,1) =
onclick=3Dreturn(PT());=20
  onmouseout=3DcnnImgSwap(this,0)=20
  =
href=3D"http://www.cnn.com/2008/WORLD/asiapcf/03/19/tibet.video/index.htm=
l#"><IMG=20
  height=3D15 alt=3DPrint=20
  =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/story_tools/print_b=
tn.gif"=20
  width=3D36 border=3D0></A> </LI></UL></DIV></DIV>
<DIV class=3DcnnUGCBox>
<DIV class=3DcnnUGCBoxHeader><IMG height=3D4 alt=3D""=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/UGC/ugc_=
TL.gif"=20
width=3D4></DIV>
<DIV class=3DcnnBoxContent>
<DIV class=3DcnnUGCHeader>
<H3 class=3DcnnBlogsClosed><A=20
onclick=3D"cnnToggleUGC('cnnBlogContainer',this);cnnImpressionCheck();ret=
urn false"=20
href=3D"javascript:void(0);"><IMG class=3Dopened height=3D11 alt=3D""=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/ugc-open-arrow.gif"=
 width=3D12=20
border=3D0><IMG class=3Dclosed height=3D11 alt=3D""=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/ugc-close-arrow.gif=
"=20
width=3D12 border=3D0>From the Blogs: <SPAN>Controversy, commentary, and =

debate</SPAN></A></H3></DIV>
<DIV id=3DcnnBlogContainer style=3D"DISPLAY: none">
<DIV id=3DcnnBlogsLoad>
<DIV class=3DcnnUGCBox>
<DIV class=3DcnnUGCBoxHeader><IMG height=3D4 alt=3D""=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/UGC/b_ug=
c_TL.gif"=20
width=3D4></DIV>
<DIV class=3DcnnBoxContent>
<H3><IMG alt=3Dloading=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/util/loading.gif"> =
Sit=20
tight, we're getting to the good stuff</H3></DIV>
<DIV class=3DcnnUGCBoxFooter><IMG height=3D4 alt=3D""=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/UGC/b_ug=
c_BL.gif"=20
width=3D4></DIV></DIV></DIV>
<DIV id=3DcnnBlogContainerContent style=3D"DISPLAY: none"></DIV>
<DIV class=3DcnnUGCBoxFooterMeta>
<DIV class=3DcnnPostCommentsLnk>powered by <A=20
onclick=3D"var =
s=3Ds_gi(s_account);s.linkTrackVars=3D'events,products';s.linkTrackEvents=
=3D'event2';s.events=3D'event2';s.products=3D';Sphere:From the =
blogs;;;event2=3D1;evar23=3D'+ cnnSectionName;void(s.tl(this,'o','Sphere =
Blogs Clickthrough'));"=20
href=3D"http://www.sphere.com/" =
target=3D_blank>Sphere</A></DIV></DIV></DIV><!-- /container --></DIV>
<DIV class=3DcnnUGCBoxFooter><IMG height=3D4 alt=3D""=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/UGC/ugc_=
BL.gif"=20
width=3D4></DIV></DIV>
<SCRIPT language=3Djavascript type=3Dtext/javascript>=0A=
	if (typeof cnnExpandBlogModule !=3D "undefined") {=0A=
		var cnnShowExpandedCont =3D =
$('cnnBlogContainer').parentNode.getElementsByTagName('a')[0];=0A=
		cnnToggleUGC('cnnBlogContainer',cnnShowExpandedCont );=0A=
	}	=0A=
</SCRIPT>

<DIV class=3DcnnTopNewsModule>
<DIV class=3DcnnWireBox>
<DIV class=3DcnnWireBoxHeader><IMG height=3D4 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/bas=
eplate/corner_wire_TL.gif"=20
width=3D4></DIV>
<DIV class=3DcnnBoxContent>
<H3>Top News</H3>
<TABLE cellSpacing=3D0 cellPadding=3D0 border=3D0>
  <COLGROUP>
  <COL width=3D135>
  <COL width=3D147>
  <COL width=3D135>
  <COL width=3D148></COLGROUP>
  <TBODY>
  <TR>
    <TD><A=20
      =
href=3D"http://www.cnn.com/money/2008/03/10/news/economy/gas_prices/index=
.htm?iref=3Dtopnews"><IMG=20
      alt=3D""=20
      =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/global/misc/money_125=
x70.gif"=20
      border=3D0></A></TD>
    <TD><A=20
      =
href=3D"http://www.cnn.com/money/2008/03/10/news/economy/gas_prices/index=
.htm?iref=3Dtopnews"><STRONG>Gas=20
      price spike has only just begun</STRONG></A></TD>
    <TD><A=20
      =
href=3D"http://abclocal.go.com/wls/story?section=3Dnews/local&amp;id=3D60=
30058&amp;iref=3Dtopnews"><IMG=20
      alt=3D""=20
      =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/global/misc/125x70.no=
.photo.gif"=20
      border=3D0></A></TD>
    <TD><A=20
      =
href=3D"http://abclocal.go.com/wls/story?section=3Dnews/local&amp;id=3D60=
30058&amp;iref=3Dtopnews"><STRONG>Car=20
      hits pedestrians at auto =
auction</STRONG></A></TD></TR></TBODY></TABLE></DIV>
<DIV class=3DcnnWireBoxFooter><IMG height=3D4 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/bas=
eplate/corner_wire_BL.gif"=20
width=3D4></DIV></DIV></DIV></DIV></DIV>
<DIV id=3DcnnRightCol>
<DIV class=3DcnnRRBox>
<DIV class=3DcnnRRBoxHeader><IMG height=3D4 alt=3D""=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/right_ra=
il/grey_corner_TL.gif"=20
width=3D4 border=3D0></DIV>
<DIV class=3DcnnRRBoxContent>
<DIV class=3DcnnRRad id=3DadHolder>
<DIV id=3DcnnDefault336Space></DIV></DIV>
<DIV id=3DcnnMostPopMosaic>
<DIV class=3DcnnWcLtgBox>
<DIV class=3DcnnBoxHeader>
<DIV></DIV></DIV>
<DIV class=3DcnnBoxContent>
<DIV class=3DcnnPad5TB9LR>
<SCRIPT type=3Dtext/javascript>=0A=
cnnad_registerAd("article", 126, 31, =
"/cnn_adspaces/2.0/most_popular/spon1.126x31.ad");=0A=
cnnad_registerAd("video", 126, 31, =
"/cnn_adspaces/2.0/most_popular/spon1.126x31.ad");=0A=
</SCRIPT>

<DIV id=3DcnnMostPopMod>
<DIV class=3DcnnWireRedBox>
<DIV class=3DcnnWireRedBoxHeader><IMG height=3D4 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/mos=
t_pop/mp_tl.gif"=20
width=3D4></DIV>
<DIV class=3DcnnRedBoxContent>
<DIV class=3DcnnMpHeadAd><!-- ADSPACE: most_popular/spon1.126x31 --><!-- =
CALLOUT|http://ads.cnn.com/html.ng/site=3Dcnn&cnn_position=3D126x31_spon1=
&cnn_rollup=3Dmost_popular&page.allowcompete=3Dyes&params.styles=3Dfs|CAL=
LOUT -->
<DIV id=3Dad-481192=20
style=3D"BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; =
BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: 0px; =
MARGIN: 0px; PADDING-TOP: 0px; BORDER-RIGHT-WIDTH: 0px"=20
align=3Dcenter></DIV>
<SCRIPT type=3Dtext/javascript>
cnnad_createAd("481192","http://ads.cnn.com/html.ng/site=3Dcnn&cnn_positi=
on=3D126x31_spon1&cnn_rollup=3Dmost_popular&page.allowcompete=3Dyes&param=
s.styles=3Dfs","31","126");
cnnad_registerSpace(481192,126,31);
</SCRIPT>
</DIV>
<DIV class=3DcnnMpHead><IMG alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/mos=
t_pop/mp_header.gif"=20
border=3D0></DIV>
<DIV class=3Dclear></DIV></DIV>
<DIV class=3DcnnWireRedBoxFooter><IMG height=3D4 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/mos=
t_pop/mp_bl.gif"=20
width=3D4></DIV></DIV>
<DIV class=3DcnnMpPadTop>
<DIV class=3Dactive id=3DcnnMpStory-head>
<DIV class=3DcnnWireRedBox>
<DIV class=3DcnnWireRedBoxHeader><IMG height=3D4 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/mos=
t_pop/mp_tl.gif"=20
width=3D4></DIV>
<DIV class=3DcnnRedBoxContent>
<DIV class=3DcnnMpCat><A =
href=3D"javascript:cnnToggleMP('cnnMpStory');"><IMG=20
height=3D8 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/mos=
t_pop/stories_up.gif"=20
width=3D59 border=3D0></A></DIV></DIV>
<DIV class=3DcnnWireRedBoxFooter><IMG height=3D4 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/mos=
t_pop/mp_bl.gif"=20
width=3D4></DIV></DIV>
<DIV class=3DcnnWireBox>
<DIV class=3DcnnWireBoxHeader><IMG height=3D4 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/bas=
eplate/corner_wire_TL.gif"=20
width=3D4></DIV>
<DIV class=3DcnnBoxContent>
<DIV class=3DcnnMpCat><IMG height=3D8 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/mos=
t_pop/stories_dwn.gif"=20
width=3D59 border=3D0></DIV></DIV></DIV></DIV><!-- /cnnMpStory-head -->
<DIV id=3DcnnMpStory>
<DIV class=3DcnnWireBox>
<DIV class=3DcnnBoxContent><!-- story content -->
<TABLE cellSpacing=3D0 cellPadding=3D0 width=3D"100%" border=3D0>
  <TBODY>
  <TR class=3DcnnMpTabRow>
    <TD class=3Dactive id=3DcnnMpStoriesTab1><A=20
      href=3D"javascript:cnnMpStories(1);">Most Viewed</A></TD>
    <TD id=3DcnnMpStoriesTab2><A =
href=3D"javascript:cnnMpStories(2);">Most=20
      Emailed</A></TD>
    <TD id=3DcnnMpStoriesTab3><A =
href=3D"javascript:cnnMpStories(3);">Top=20
      Searches</A></TD></TR></TBODY></TABLE>
<DIV id=3DcnnMpStories1>
<DIV class=3DcnnMpStoryContent>
<OL>
  <LI><B>1 </B><A=20
  =
href=3D"http://www.cnn.com/2008/US/03/19/women.veterans/index.html?iref=3D=
mpstoryview">Female=20
  vets suffer mental trauma</A> </LI>
  <LI><B>2 </B><A=20
  =
href=3D"http://www.cnn.com/2008/POLITICS/03/19/clinton.documents/index.ht=
ml?iref=3Dmpstoryview">Clinton=20
  schedule released</A> </LI>
  <LI><B>3 </B><A=20
  =
href=3D"http://www.cnn.com/2008/US/03/18/dupree.girls.gone.wild.ap/index.=
html?iref=3Dmpstoryview">Spitzer=20
  call girl's videos surface</A> </LI>
  <LI><B>4 </B><A=20
  =
href=3D"http://www.cnn.com/2008/TECH/03/19/facebook.cheating.ap/index.htm=
l?iref=3Dmpstoryview">No=20
  expulsion for Facebook cheating</A> </LI>
  <LI><B>5 </B><A=20
  =
href=3D"http://www.cnn.com/2008/POLITICS/03/19/commentary.ashong/index.ht=
ml?iref=3Dmpstoryview">Commentary:=20
  Courageous Obama poses...</A> </LI>
  <LI><B>6 </B><A=20
  =
href=3D"http://www.cnn.com/2008/SHOWBIZ/TV/03/19/people.judygreer.ap/inde=
x.html?iref=3Dmpstoryview">Judy=20
  Greer:I 'was sort of a loser'</A> </LI>
  <LI><B>7 </B><A=20
  =
href=3D"http://www.cnn.com/2008/HEALTH/03/19/mirror.therapy/index.html?ir=
ef=3Dmpstoryview">Unlikely=20
  painkiller for amputees</A> </LI>
  <LI><B>8 </B><A=20
  =
href=3D"http://www.cnn.com/2008/WORLD/asiapcf/03/19/tibet.video/index.htm=
l?iref=3Dmpstoryview">Tourist=20
  video shows Tibet riot</A> </LI>
  <LI><B>9 </B><A=20
  =
href=3D"http://www.cnn.com/2008/SHOWBIZ/TV/03/19/tv.lostreturn.ap/index.h=
tml?iref=3Dmpstoryview">Harold=20
  Perrineau back on 'Lost'</A> </LI>
  <LI><B>10 </B><A=20
  =
href=3D"http://www.cnn.com/2008/US/03/19/severe.weather.ap/index.html?ire=
f=3Dmpstoryview">Rain=20
  blamed for nine deaths</A> </LI></OL>
<DIV class=3DcnnMpMore>&nbsp;<A =
href=3D"http://www.cnn.com/mostpopular/">more most=20
popular =BB</A></DIV></DIV></DIV>
<DIV id=3DcnnMpStories2>
<DIV class=3DcnnMpStoryContent>
<OL>
  <LI><B>1 </B><A=20
  =
href=3D"http://cnn.com/2008/POLITICS/03/18/obama.transcript/index.html?im=
w=3DY&amp;iref=3Dmpstoryemail">Transcript=20
  of Obama's speech</A> </LI>
  <LI><B>2 </B><A=20
  =
href=3D"http://cnn.com/2008/POLITICS/03/19/commentary.ashong/index.html?i=
mw=3DY&amp;iref=3Dmpstoryemail">Commentary:=20
  Courageous Obama poses...</A> </LI>
  <LI><B>3 </B><A=20
  =
href=3D"http://cnn.com/2008/LIVING/personal/03/18/awaken.joy/index.html?i=
mw=3DY&amp;iref=3Dmpstoryemail">Awaken=20
  joy and get more happiness</A> </LI>
  <LI><B>4 </B><A=20
  =
href=3D"http://cnn.com/2008/TECH/ptech/03/19/best.buy.ap/index.html?imw=3D=
Y&amp;iref=3Dmpstoryemail">Those=20
  stuck with HD-DVD players...</A> </LI>
  <LI><B>5 </B><A=20
  =
href=3D"http://cnn.com/2008/HEALTH/03/19/mirror.therapy/index.html?imw=3D=
Y&amp;iref=3Dmpstoryemail">For=20
  amputees, an unlikely painkiller...</A> </LI>
  <LI><B>6 </B><A=20
  =
href=3D"http://cnn.com/2008/US/03/18/dupree.girls.gone.wild.ap/index.html=
?imw=3DY&amp;iref=3Dmpstoryemail">Spitzer=20
  escort's 'Girls Gone Wild'...</A> </LI>
  <LI><B>7 </B><A=20
  =
href=3D"http://cnn.com/2008/TECH/science/03/18/dinosaur.mummy.ap/index.ht=
ml?imw=3DY&amp;iref=3Dmpstoryemail">Mummified=20
  dinosaur unearthed in North...</A> </LI>
  <LI><B>8 </B><A=20
  =
href=3D"http://cnn.com/2008/SHOWBIZ/books/03/18/obit.clarke/index.html?im=
w=3DY&amp;iref=3Dmpstoryemail">Author=20
  Arthur C. Clarke dies</A> </LI>
  <LI><B>9 </B><A=20
  =
href=3D"http://cnn.com/2008/SHOWBIZ/TV/03/19/tv.lostreturn.ap/index.html?=
imw=3DY&amp;iref=3Dmpstoryemail">Why=20
  is Harold Perrineau back on 'Lost'?</A> </LI>
  <LI><B>10 </B><A=20
  =
href=3D"http://cnn.com/2008/LIVING/personal/03/18/divorce.celebrations/in=
dex.html?imw=3DY&amp;iref=3Dmpstoryemail">Divorce=20
  ceremonies for healing .....</A> </LI></OL>
<DIV class=3DcnnMpMore>&nbsp;<A =
href=3D"http://www.cnn.com/mostpopular/">more most=20
popular =BB</A></DIV></DIV></DIV>
<DIV id=3DcnnMpStories3>
<DIV class=3DcnnMpStoryContent>
<OL>
  <LI><B>1 </B><A=20
  href=3D"http://search.cnn.com/search.jsp?query=3Dron =
paul&amp;type=3Dnews&amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpstor=
iessearch">ron=20
  paul</A> </LI>
  <LI><B>2 </B><A=20
  href=3D"http://search.cnn.com/search.jsp?query=3Djena =
6&amp;type=3Dnews&amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpstories=
search">jena=20
  6</A> </LI>
  <LI><B>3 </B><A=20
  =
href=3D"http://search.cnn.com/search.jsp?query=3Dkosovo&amp;type=3Dnews&a=
mp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpstoriessearch">kosovo</A> =

  </LI>
  <LI><B>4 </B><A=20
  href=3D"http://search.cnn.com/search.jsp?query=3Dlunar =
eclipse&amp;type=3Dnews&amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmps=
toriessearch">lunar=20
  eclipse</A> </LI>
  <LI><B>5 </B><A=20
  =
href=3D"http://search.cnn.com/search.jsp?query=3Dlohan&amp;type=3Dnews&am=
p;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpstoriessearch">lohan</A>=20
  </LI>
  <LI><B>6 </B><A=20
  =
href=3D"http://search.cnn.com/search.jsp?query=3Dcastro&amp;type=3Dnews&a=
mp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpstoriessearch">castro</A> =

  </LI>
  <LI><B>7 </B><A=20
  =
href=3D"http://search.cnn.com/search.jsp?query=3Dobama&amp;type=3Dnews&am=
p;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpstoriessearch">obama</A>=20
  </LI>
  <LI><B>8 </B><A=20
  =
href=3D"http://search.cnn.com/search.jsp?query=3Dniu&amp;type=3Dnews&amp;=
sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpstoriessearch">niu</A>=20
  </LI>
  <LI><B>9 </B><A=20
  href=3D"http://search.cnn.com/search.jsp?query=3Dfidel =
castro&amp;type=3Dnews&amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpst=
oriessearch">fidel=20
  castro</A> </LI>
  <LI><B>10 </B><A=20
  href=3D"http://search.cnn.com/search.jsp?query=3Dbritney =
spears&amp;type=3Dnews&amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpst=
oriessearch">britney=20
  spears</A> </LI></OL><!--include =
virtual=3D"/.element/ssi/www/auto/2.0/mostpopular/mp.stories.3.txt" -->
<DIV class=3DcnnMpMore>&nbsp;<A =
href=3D"http://www.cnn.com/mostpopular/">more most=20
popular =BB</A></DIV></DIV></DIV><!-- /story content --></DIV>
<DIV class=3DcnnWireBoxFooter><IMG height=3D4 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/bas=
eplate/corner_wire_BL.gif"=20
width=3D4></DIV></DIV></DIV><!-- /cnnMpStory --></DIV>
<DIV class=3DcnnMpPadTop>
<DIV class=3Dclosed id=3DcnnMpVideo-head>
<DIV class=3DcnnWireRedBox>
<DIV class=3DcnnWireRedBoxHeader><IMG height=3D4 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/mos=
t_pop/mp_tl.gif"=20
width=3D4></DIV>
<DIV class=3DcnnRedBoxContent>
<DIV class=3DcnnMpCat><A =
href=3D"javascript:cnnToggleMP('cnnMpVideo');"><IMG=20
height=3D8 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/mos=
t_pop/videos_up.gif"=20
width=3D59 border=3D0></A></DIV></DIV>
<DIV class=3DcnnWireRedBoxFooter><IMG height=3D4 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/mos=
t_pop/mp_bl.gif"=20
width=3D4></DIV></DIV>
<DIV class=3DcnnWireBox>
<DIV class=3DcnnWireBoxHeader><IMG height=3D4 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/bas=
eplate/corner_wire_TL.gif"=20
width=3D4></DIV>
<DIV class=3DcnnBoxContent>
<DIV class=3DcnnMpCat><IMG height=3D8 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/mos=
t_pop/videos_dwn.gif"=20
width=3D59 border=3D0></DIV></DIV></DIV></DIV><!-- /cnnMpVideo-head -->
<DIV id=3DcnnMpVideo>
<DIV class=3DcnnWireBox>
<DIV class=3DcnnBoxContent><!-- video content -->
<TABLE cellSpacing=3D0 cellPadding=3D0 width=3D"100%" border=3D0>
  <TBODY>
  <TR class=3DcnnMpTabRow>
    <TD class=3Dactive id=3DcnnMpVideosTab1><A=20
      href=3D"javascript:cnnMpVideos(1);">Most Viewed</A></TD>
    <TD id=3DcnnMpVideosTab2><A href=3D"javascript:cnnMpVideos(2);">Most =

      Emailed</A></TD>
    <TD id=3DcnnMpVideosTab3><A href=3D"javascript:cnnMpVideos(3);">Top=20
      Searches</A></TD></TR></TBODY></TABLE>
<DIV id=3DcnnMpVideos1>
<DIV class=3DcnnMpVideoContent>
<OL>
  <LI><B>1 </B><A=20
  =
href=3D"http://www.cnn.com/video/#/video/world/2008/03/19/vosot.lhasa.rio=
ts.ap?iref=3Dmpvideosview">Tourist=20
  films Tibet riots<IMG height=3D45 alt=3D"Tourist films Tibet riots"=20
  =
src=3D"http://i.l.cnn.net/cnn/video/world/2008/03/19/vosot.lhasa.riots.ap=
.60x45.jpg"=20
  width=3D60 border=3D0></A> </LI>
  <LI><B>2 </B><A=20
  =
href=3D"http://www.cnn.com/video/#/video/us/2008/03/18/payne.fl.kid.lunch=
box.bathroom.wesh?iref=3Dmpvideosview">Child=20
  uses lunch box as toilet<IMG height=3D45 alt=3D"Child uses lunch box =
as toilet"=20
  =
src=3D"http://i.l.cnn.net/cnn/video/us/2008/03/18/payne.fl.kid.lunchbox.b=
athroom.wesh.60x45.jpg"=20
  width=3D60 border=3D0></A> </LI>
  <LI><B>3 </B><A=20
  =
href=3D"http://www.cnn.com/video/#/video/us/2008/03/19/von.ca.iraq.protes=
t.kron?iref=3Dmpvideosview">Iraq=20
  protests in San Francisco<IMG height=3D45 alt=3D"Iraq protests in San =
Francisco"=20
  =
src=3D"http://i.l.cnn.net/cnn/video/us/2008/03/19/von.ca.iraq.protest.kro=
n.60x45.jpg"=20
  width=3D60 border=3D0></A> </LI>
  <LI><B>4 </B><A=20
  =
href=3D"http://www.cnn.com/video/#/video/us/2008/03/19/chetry.lotto.winne=
rs.interview.cnn?iref=3Dmpvideosview">Co-workers=20
  win lottery<IMG height=3D45 alt=3D"Co-workers win lottery"=20
  =
src=3D"http://i.l.cnn.net/cnn/video/us/2008/03/19/chetry.lotto.winners.in=
terview.cnn.60x45.jpg"=20
  width=3D60 border=3D0></A> </LI>
  <LI><B>5 </B><A=20
  =
href=3D"http://www.cnn.com/video/#/video/world/2008/03/19/phillips.iraq.c=
atwalk.culture.cnn?iref=3Dmpvideosview">Iraqi=20
  models risk their lives for fashion<IMG height=3D45=20
  alt=3D"Iraqi models risk their lives for fashion"=20
  =
src=3D"http://i.l.cnn.net/cnn/video/world/2008/03/19/phillips.iraq.catwal=
k.culture.cnn.60x45.jpg"=20
  width=3D60 border=3D0></A> </LI></OL>
<DIV class=3DcnnMpMore>&nbsp;<A =
href=3D"http://www.cnn.com/mostpopular/">more most=20
popular =BB</A></DIV></DIV></DIV>
<DIV id=3DcnnMpVideos2>
<DIV class=3DcnnMpVideoContent>
<OL>
  <LI><B>1 </B><A=20
  =
href=3D"http://www.cnn.com/video/?/video/us/2008/03/18/dnt.ca.buzzard.sma=
shes.into.plane.kovr?iref=3Dmpvideosemail">Buzzard=20
  smashes into plane<IMG height=3D45 alt=3D"Buzzard smashes into plane"=20
  =
src=3D"http://i.l.cnn.net/cnn/video/us/2008/03/18/dnt.ca.buzzard.smashes.=
into.plane.kovr.60x45.jpg"=20
  width=3D60 border=3D0></A> </LI>
  <LI><B>2 </B><A=20
  =
href=3D"http://www.cnn.com/video/?/video/us/2008/03/18/payne.fl.kid.lunch=
box.bathroom.wesh?iref=3Dmpvideosemail">Child=20
  uses lunch box as toilet<IMG height=3D45 alt=3D"Child uses lunch box =
as toilet"=20
  =
src=3D"http://i.l.cnn.net/cnn/video/us/2008/03/18/payne.fl.kid.lunchbox.b=
athroom.wesh.60x45.jpg"=20
  width=3D60 border=3D0></A> </LI>
  <LI><B>3 </B><A=20
  =
href=3D"http://www.cnn.com/video/?/video/politics/2008/03/18/sot.obama.sp=
eech.long.cnn?iref=3Dmpvideosemail">Obama=20
  on race and politics<IMG height=3D45 alt=3D"Obama on race and =
politics"=20
  =
src=3D"http://i.l.cnn.net/cnn/video/politics/2008/03/18/sot.obama.speech.=
long.cnn.60x45.jpg"=20
  width=3D60 border=3D0></A> </LI>
  <LI><B>4 </B><A=20
  =
href=3D"http://www.cnn.com/video/?/video/politics/2008/03/18/intv.martin.=
obama.speech.cnn?iref=3Dmpvideosemail">Martin=20
  on Obama's speech<IMG height=3D45 alt=3D"Martin on Obama's speech"=20
  =
src=3D"http://i.l.cnn.net/cnn/video/politics/2008/03/18/intv.martin.obama=
.speech.cnn.60x45.jpg"=20
  width=3D60 border=3D0></A> </LI>
  <LI><B>5 </B><A=20
  =
href=3D"http://www.cnn.com/video/?/video/business/2008/03/18/delacruz.irs=
.checks.cnn?iref=3Dmpvideosemail">Adding=20
  up your rebate<IMG height=3D45 alt=3D"Adding up your rebate"=20
  =
src=3D"http://i.l.cnn.net/cnn/video/business/2008/03/18/delacruz.irs.chec=
ks.cnn.60x45.jpg"=20
  width=3D60 border=3D0></A> </LI></OL>
<DIV class=3DcnnMpMore>&nbsp;<A =
href=3D"http://www.cnn.com/mostpopular/">more most=20
popular =BB</A></DIV></DIV></DIV>
<DIV id=3DcnnMpVideos3>
<DIV class=3DcnnMpStoryContent>
<OL>
  <LI><B>1 </B><A=20
  =
href=3D"http://search.cnn.com/search.jsp?query=3Dvideo&amp;type=3Dnews&am=
p;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpvideossearch">video</A>=20
  </LI>
  <LI><B>2 </B><A=20
  =
href=3D"http://search.cnn.com/search.jsp?query=3Dobama&amp;type=3Dnews&am=
p;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpvideossearch">obama</A>=20
  </LI>
  <LI><B>3 </B><A=20
  =
href=3D"http://search.cnn.com/search.jsp?query=3Dtibet&amp;type=3Dnews&am=
p;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpvideossearch">tibet</A>=20
  </LI>
  <LI><B>4 </B><A=20
  href=3D"http://search.cnn.com/search.jsp?query=3Dobama =
speech&amp;type=3Dnews&amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpvi=
deossearch">obama=20
  speech</A> </LI>
  <LI><B>5 </B><A=20
  =
href=3D"http://search.cnn.com/search.jsp?query=3D2005&amp;type=3Dnews&amp=
;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpvideossearch">2005</A>=20
  </LI>
  <LI><B>6 </B><A=20
  href=3D"http://search.cnn.com/search.jsp?query=3Datlanta =
tornado&amp;type=3Dnews&amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpv=
ideossearch">atlanta=20
  tornado</A> </LI>
  <LI><B>7 </B><A=20
  =
href=3D"http://search.cnn.com/search.jsp?query=3Dchina&amp;type=3Dnews&am=
p;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpvideossearch">china</A>=20
  </LI>
  <LI><B>8 </B><A=20
  =
href=3D"http://search.cnn.com/search.jsp?query=3Dmoos&amp;type=3Dnews&amp=
;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpvideossearch">moos</A>=20
  </LI>
  <LI><B>9 </B><A=20
  href=3D"http://search.cnn.com/search.jsp?query=3Djeanne =
moos&amp;type=3Dnews&amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpvide=
ossearch">jeanne=20
  moos</A> </LI>
  <LI><B>10 </B><A=20
  href=3D"http://search.cnn.com/search.jsp?query=3Dobama race =
speech&amp;type=3Dnews&amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpvi=
deossearch">obama=20
  race speech</A> </LI></OL>
<DIV class=3DcnnMpMore>&nbsp;<A =
href=3D"http://www.cnn.com/mostpopular/">more most=20
popular =BB</A></DIV></DIV></DIV><!-- /video content --></DIV>
<DIV class=3DcnnWireBoxFooter><IMG height=3D4 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/bas=
eplate/corner_wire_BL.gif"=20
width=3D4></DIV></DIV></DIV><!-- /cnnMpVideo --></DIV>
<DIV class=3DcnnMpPadTop>
<DIV class=3Dclosed id=3DcnnMpTopic-head>
<DIV class=3DcnnWireRedBox>
<DIV class=3DcnnWireRedBoxHeader><IMG height=3D4 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/mos=
t_pop/mp_tl.gif"=20
width=3D4></DIV>
<DIV class=3DcnnRedBoxContent>
<DIV class=3DcnnMpCat><A =
href=3D"javascript:cnnToggleMP('cnnMpTopic');"><IMG=20
height=3D8 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/mos=
t_pop/topics_up.gif"=20
width=3D59 border=3D0></A></DIV></DIV>
<DIV class=3DcnnWireRedBoxFooter><IMG height=3D4 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/mos=
t_pop/mp_bl.gif"=20
width=3D4></DIV></DIV>
<DIV class=3DcnnWireBox>
<DIV class=3DcnnWireBoxHeader><IMG height=3D4 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/bas=
eplate/corner_wire_TL.gif"=20
width=3D4></DIV>
<DIV class=3DcnnBoxContent>
<DIV class=3DcnnMpCat><IMG height=3D8 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/mos=
t_pop/topics_dwn.gif"=20
width=3D59 border=3D0></DIV></DIV></DIV></DIV>
<DIV id=3DcnnMpTopic>
<DIV class=3DcnnWireBox>
<DIV class=3DcnnBoxContent><!-- topic content  -->
<DIV class=3DcnnMpTopicContent>
<OL>
  <LI><B>1 </B><A=20
  =
href=3D"http://topics.cnn.com/topics/barack_obama?iref=3Dmptopics">Barack=
=20
  Obama</A> </LI>
  <LI><B>2 </B><A=20
  href=3D"http://www.cnn.com/SPECIALS/2003/iraq/?iref=3Dmptopics">War in =
Iraq</A>=20
  </LI>
  <LI><B>3 </B><A=20
  =
href=3D"http://www.cnn.com/SPECIALS/2008/planet.in.peril/?iref=3Dmptopics=
">Planet=20
  in Peril: Environmental Coverage</A> </LI>
  <LI><B>4 </B><A=20
  =
href=3D"http://www.cnn.com/SPECIALS/2007/planet.in.peril/?iref=3Dmptopics=
">Planet=20
  in Peril: Environmental Coverage</A> </LI>
  <LI><B>5 </B><A=20
  =
href=3D"http://topics.cnn.com/topics/national_archives_and_records_admini=
stration?iref=3Dmptopics">National=20
  Archives and Records Administration</A> </LI></OL>
<DIV class=3DcnnMpMore>&nbsp;<A =
href=3D"http://www.cnn.com/mostpopular/">more most=20
popular =BB</A></DIV></DIV><!-- /topic content  --></DIV>
<DIV class=3DcnnWireBoxFooter><IMG height=3D4 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/bas=
eplate/corner_wire_BL.gif"=20
width=3D4></DIV></DIV></DIV><!-- /cnnMpVideo --></DIV></DIV><!-- =
/cnnMostPopMod -->
<SCRIPT type=3Dtext/javascript> cnnInitMP(); </SCRIPT>
<!--[if IE]>
<SCRIPT type=3Dtext/javascript> var cnnie =3D true; </SCRIPT>
<![endif]--></DIV></DIV><!-- /cnnBoxContent -->
<DIV class=3DcnnBoxFooter>
<DIV></DIV></DIV></DIV><!-- /cnnWcLtgBox --></DIV><!-- /cnnMostPopMosaic =
-->
<SCRIPT type=3Dtext/javascript>
var cnnDefaultContAd =3D =
'/cnn_adspaces/2.0/world/intg_story_article/adlinks.336x280.ad';
var cnnVideoContAd =3D =
'/cnn_adspaces/2.0/world/intg_story_video/adlinks.336x280.ad';
var cnnPhotoContAd =3D =
'/cnn_adspaces/2.0/world/intg_story_photo/adlinks.336x280.ad';
var otherTab1ContAd =3D =
'/cnn_adspaces/2.0/world/intg_story_other/adlinks.336x280.ad';
var otherTab2ContAd =3D =
'/cnn_adspaces/2.0/world/intg_story_other/adlinks.336x280.ad';
</SCRIPT>
<!-- contextual links -->
<DIV class=3DcnnPad9Top>
<DIV class=3DcnnWireAdLtgBox>
<DIV class=3DcnnBoxHeader>
<DIV></DIV></DIV>
<DIV id=3DcnnDefaultContSpace></DIV>
<DIV class=3DcnnBoxFooter>
<DIV></DIV></DIV></DIV></DIV>
<STYLE type=3Dtext/css>#cnnRightCol {
	OVERFLOW: visible
}
</STYLE>

<DIV class=3DcnnPad9Top>
<DIV id=3Dcnn_cb336>
<SCRIPT language=3DJavaScript>
<!--
var cnnPSproducts =3D "Partner Widget:CareerBuilder";
cnnProducts.push(cnnPSproducts);
//--></SCRIPT>
<A name=3DcnnCB></A>
<DIV id=3Dcnn_content>
<DIV id=3Dcnn_mainblock><A=20
onclick=3D"var =
s=3Ds_gi(s_account);s.linkTrackVars=3D'events,products';s.linkTrackEvents=
=3D'event2';s.events=3D'event2';s.products=3D';Partner =
Widget:CareerBuilder;;;event2=3D1;evar23=3D'+ =
cnnSectionName;void(s.tl(this,'o','CareerBuilder Clickthrough'));"=20
href=3D"http://www.careerbuilder.com/JobSeeker/Jobs/jobfindadv.aspx?lr=3D=
cbcnn&amp;siteid=3Dcbcnn_mopt"><IMG=20
height=3D33 alt=3D""=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/content/partners/cb336/cb_=
logo.gif"=20
width=3D139 border=3D0></A>=20
<DIV id=3Dcnn_maintext>=95 <SPAN class=3Dtext><A=20
onclick=3D"var =
s=3Ds_gi(s_account);s.linkTrackVars=3D'events,products';s.linkTrackEvents=
=3D'event2';s.events=3D'event2';s.products=3D';Partner =
Widget:CareerBuilder;;;event2=3D1;evar23=3D'+ =
cnnSectionName;void(s.tl(this,'o','CareerBuilder Clickthrough'));"=20
href=3D"http://part-time.careerbuilder.com/?lr=3Dcbcnn&amp;siteid=3Dcbcnn=
_pt">Part=20
Time Jobs</A></SPAN><BR>=95 <SPAN class=3Dtext><A=20
onclick=3D"var =
s=3Ds_gi(s_account);s.linkTrackVars=3D'events,products';s.linkTrackEvents=
=3D'event2';s.events=3D'event2';s.products=3D';Partner =
Widget:CareerBuilder;;;event2=3D1;evar23=3D'+ =
cnnSectionName;void(s.tl(this,'o','CareerBuilder Clickthrough'));"=20
href=3D"http://sales-marketing.careerbuilder.com/?lr=3Dcbcnn&amp;siteid=3D=
cbcnn_sal">Sales=20
&amp; Marketing Jobs</A></SPAN><BR>=95 <SPAN class=3Dtext><A=20
onclick=3D"var =
s=3Ds_gi(s_account);s.linkTrackVars=3D'events,products';s.linkTrackEvents=
=3D'event2';s.events=3D'event2';s.products=3D';Partner =
Widget:CareerBuilder;;;event2=3D1;evar23=3D'+ =
cnnSectionName;void(s.tl(this,'o','CareerBuilder Clickthrough'));"=20
href=3D"http://customer-service.careerbuilder.com/?lr=3Dcbcnn&amp;siteid=3D=
cbcnn_cs">Customer=20
Service Jobs</A></SPAN><BR></DIV></DIV>
<DIV id=3Dcnn_searchblock>Quick Job Search<BR>
<FORM id=3Dmyform1 =
action=3Dhttp://www.CareerBuilder.com/PLI/QuickSrch.aspx=20
method=3Dget target=3D_top><INPUT type=3Dhidden value=3Dcbcnn160 =
name=3DSiteID> <INPUT=20
type=3Dhidden value=3Dcbcnn name=3Dlr> <INPUT id=3DQSTS type=3Dhidden =
value=3DALL,US=20
name=3DQSSTS> <INPUT id=3DSearchBtn type=3Dhidden value=3DSearch =
name=3DSearchBtn> <INPUT=20
id=3DMXJobSrchCriteria_JobTypes type=3Dhidden =
name=3DMXJobSrchCriteria_JobTypes> <SPAN=20
class=3DcnnCB336Keyword>keyword(s):</SPAN> <INPUT class=3DCBkeywordBox =
id=3Dkeyword=20
maxLength=3D25 name=3DQSKWD><BR><SPAN class=3DcnnCB354CityTxt>enter =
city:</SPAN>=20
<INPUT class=3DCBkeywordBox id=3Dkeyword maxLength=3D15 =
name=3DQSCTY><BR></FORM>
<DIV class=3DcnnPad1Top></DIV>
<DIV id=3Ddd>
<TABLE cellSpacing=3D0 cellPadding=3D0>
  <TBODY>
  <TR>
    <TD>
      <DIV id=3DcnnDDCBState_wrap></DIV>
      <FORM class=3DcnnHidden><SELECT id=3DcnnDDCBState_list=20
      =
onchange=3D"$('QSTS').value=3Dthis.options[this.selectedIndex].value;">=20
        <OPTION value=3DALL,US selected>State</OPTION> <OPTION=20
        disabled>-------</OPTION> <OPTION value=3DAL,US>AL</OPTION> =
<OPTION=20
        value=3DAK,US>AK</OPTION> <OPTION value=3DAZ,US>AZ</OPTION> =
<OPTION=20
        value=3DAR,US>AR</OPTION> <OPTION value=3DCA,US>CA</OPTION> =
<OPTION=20
        value=3DCO,US>CO</OPTION> <OPTION value=3DCT,US>CT</OPTION> =
<OPTION=20
        value=3DDE,US>DE</OPTION> <OPTION value=3DDC,US>DC</OPTION> =
<OPTION=20
        value=3DFL,US>FL</OPTION> <OPTION value=3DGA,US>GA</OPTION> =
<OPTION=20
        value=3DHI,US>HI</OPTION> <OPTION value=3DID,US>ID</OPTION> =
<OPTION=20
        value=3DIL,US>IL</OPTION> <OPTION value=3DIN,US>IN</OPTION> =
<OPTION=20
        value=3DIA,US>IA</OPTION> <OPTION value=3DKS,US>KS</OPTION> =
<OPTION=20
        value=3DKY,US>KY</OPTION> <OPTION value=3DLA,US>LA</OPTION> =
<OPTION=20
        value=3DME,US>ME</OPTION> <OPTION value=3DMD,US>MD</OPTION> =
<OPTION=20
        value=3DMA,US>MA</OPTION> <OPTION value=3DMI,US>MI</OPTION> =
<OPTION=20
        value=3DMN,US>MN</OPTION> <OPTION value=3DMS,US>MS</OPTION> =
<OPTION=20
        value=3DMO,US>MO</OPTION> <OPTION value=3DMT,US>MT</OPTION> =
<OPTION=20
        value=3DNE,US>NE</OPTION> <OPTION value=3DNV,US>NV</OPTION> =
<OPTION=20
        value=3DNH,US>NH</OPTION> <OPTION value=3DNJ,US>NJ</OPTION> =
<OPTION=20
        value=3DNM,US>NM</OPTION> <OPTION value=3DNY,US>NY</OPTION> =
<OPTION=20
        value=3DNC,US>NC</OPTION> <OPTION value=3DND,US>ND</OPTION> =
<OPTION=20
        value=3DOH,US>OH</OPTION> <OPTION value=3DOK,US>OK</OPTION> =
<OPTION=20
        value=3DOR,US>OR</OPTION> <OPTION value=3DPA,US>PA</OPTION> =
<OPTION=20
        value=3DPR,US>PR</OPTION> <OPTION value=3DRI,US>RI</OPTION> =
<OPTION=20
        value=3DSC,US>SC</OPTION> <OPTION value=3DSD,US>SD</OPTION> =
<OPTION=20
        value=3DTN,US>TN</OPTION> <OPTION value=3DTX,US>TX</OPTION> =
<OPTION=20
        value=3DUT,US>UT</OPTION> <OPTION value=3DVT,US>VT</OPTION> =
<OPTION=20
        value=3DVA,US>VA</OPTION> <OPTION value=3DWA,US>WA</OPTION> =
<OPTION=20
        value=3DWV,US>WV</OPTION> <OPTION value=3DWI,US>WI</OPTION> =
<OPTION=20
        value=3DWY,US>WY</OPTION></SELECT> </FORM>
      <SCRIPT type=3Dtext/javascript> =
cnnDD.buildDropdown('cnnDDCBState', 73, 105, 10, "cnnDDWire"); </SCRIPT>
    </TD>
    <TD>
      <DIV class=3DcnnPad5Left id=3DcnnDDCBJob_wrap></DIV>
      <FORM class=3DcnnHidden><SELECT id=3DcnnDDCBJob_list=20
      =
onchange=3D"$('MXJobSrchCriteria_JobTypes').value=3Dthis.options[this.sel=
ectedIndex].value;">=20
        <OPTION value=3D"" selected>Job type</OPTION> <OPTION=20
        disabled>-----------------</OPTION> <OPTION=20
        value=3DJN001>Accounting</OPTION> <OPTION value=3DJN002>Admin =
&amp;=20
        Clerical</OPTION> <OPTION value=3DJN054>Automotive</OPTION> =
<OPTION=20
        value=3DJN038>Banking</OPTION> <OPTION =
value=3DJN053>Biotech</OPTION>=20
        <OPTION value=3DJN047>Broadcast - Journalism</OPTION> <OPTION=20
        value=3DJN019>Business Development</OPTION> <OPTION=20
        value=3DJN043>Construction</OPTION> <OPTION=20
        value=3DJN020>Consultant</OPTION> <OPTION value=3DJN003>Customer =

        Service</OPTION> <OPTION value=3DJN021>Design</OPTION> <OPTION=20
        value=3DJN027>Distribution - Shipping</OPTION> <OPTION=20
        value=3DJN031>Education</OPTION> <OPTION =
value=3DJN004>Engineering</OPTION>=20
        <OPTION value=3DJN022>Entry Level - New Grad</OPTION> <OPTION=20
        value=3DJN018>Executive</OPTION> <OPTION =
value=3DJN017>Facilities</OPTION>=20
        <OPTION value=3DJN005>Finance</OPTION> <OPTION =
value=3DJN006>General=20
        Business</OPTION> <OPTION value=3DJN051>General Labor</OPTION> =
<OPTION=20
        value=3DJN046>Government</OPTION> <OPTION =
value=3DJN055>Grocery</OPTION>=20
        <OPTION value=3DJN023>Healthcare</OPTION> <OPTION =
value=3DJN040>Hotel -=20
        Hospitality</OPTION> <OPTION value=3DJN007>Human =
Resources</OPTION>=20
        <OPTION value=3DJN008>Information Technology</OPTION> <OPTION=20
        value=3DJN056>Installation - Maint - Repair</OPTION> <OPTION=20
        value=3DJN034>Insurance</OPTION> <OPTION =
value=3DJN015>Inventory</OPTION>=20
        <OPTION value=3DJN030>Legal</OPTION> <OPTION value=3DJN041>Legal =

        Admin</OPTION> <OPTION value=3DJN037>Management</OPTION> <OPTION =

        value=3DJN029>Manufacturing</OPTION> <OPTION=20
        value=3DJN009>Marketing</OPTION> <OPTION =
value=3DJN050>Nurse</OPTION>=20
        <OPTION value=3DJN010>Other</OPTION> <OPTION =
value=3DJN049>Pharmacy</OPTION>=20
        <OPTION value=3DJN024>Professional Services</OPTION> <OPTION=20
        value=3DJN016>Purchasing - Procurement</OPTION> <OPTION =
value=3DJN025>QA -=20
        Quality Control</OPTION> <OPTION value=3DJN026>Research</OPTION> =
<OPTION=20
        value=3DJN035>Restaurant - Food Service</OPTION> <OPTION=20
        value=3DJN033>Retail</OPTION> <OPTION =
value=3DJN011>Sales</OPTION> <OPTION=20
        value=3DJN012>Science</OPTION> <OPTION value=3DJN013>Skilled =
Labor -=20
        Trades</OPTION> <OPTION value=3DJN028>Strategy - =
Planning</OPTION> <OPTION=20
        value=3DJN014>Supply Chain</OPTION> <OPTION =
value=3DJN048>Telecomm</OPTION>=20
        <OPTION value=3DJN032>Training</OPTION> <OPTION=20
        value=3DJN044>Transportation</OPTION> <OPTION=20
        value=3DJN045>Warehouse</OPTION></SELECT> </FORM>
      <SCRIPT type=3Dtext/javascript> cnnDD.buildDropdown('cnnDDCBJob', =
90, 240, 10, "cnnDDWire"); </SCRIPT>
    </TD></TR></TBODY></TABLE></DIV></DIV></DIV>
<DIV id=3Dcnn_bottom><SPAN class=3Dmore><A=20
onclick=3D"var =
s=3Ds_gi(s_account);s.linkTrackVars=3D'events,products';s.linkTrackEvents=
=3D'event2';s.events=3D'event2';s.products=3D';Partner =
Widget:CareerBuilder;;;event2=3D1;evar23=3D'+ =
cnnSectionName;void(s.tl(this,'o','CareerBuilder Clickthrough'));"=20
href=3D"http://www.careerbuilder.com/JobSeeker/Jobs/jobfindadv.aspx?lr=3D=
cbcnn&amp;siteid=3Dcbcnn_mopt">more=20
options =BB</A></SPAN> <A=20
onclick=3D"var =
s=3Ds_gi(s_account);s.linkTrackVars=3D'events,products';s.linkTrackEvents=
=3D'event2';s.events=3D'event2';s.products=3D';Partner =
Widget:CareerBuilder;;;event2=3D1;evar23=3D'+ =
cnnSectionName;void(s.tl(this,'o','CareerBuilder =
Clickthrough'));document.getElementById('myform1').submit();"=20
href=3D"http://www.cnn.com/2008/WORLD/asiapcf/03/19/tibet.video/index.htm=
l#cnnCB"><IMG=20
class=3DcnnCBSearchBtn=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/content/partners/cb/btn_se=
arch.gif"=20
border=3D0></A> </DIV></DIV></DIV>
<DIV id=3DrelatedBox style=3D"DISPLAY: none"></DIV>
<DIV id=3DsectionRelateds></DIV></DIV>
<DIV class=3DcnnRRBoxFooter><IMG height=3D4 alt=3D""=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/right_ra=
il/grey_corner_BL.gif"=20
width=3D4 border=3D0></DIV></DIV></DIV>
<DIV class=3Dclear><IMG height=3D1 alt=3D""=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/1x1pixel.gif" =
width=3D1=20
border=3D0></DIV></DIV>
<DIV class=3DcnnWCBoxFooter><IMG height=3D4 alt=3D""=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/baseplat=
e/corner_dg_BL.gif"=20
width=3D4 border=3D0></DIV></DIV></DIV></DIV><!-- /cnnContentContainer =
-->
<DIV id=3DcsiIframe style=3D"VISIBILITY: hidden; WIDTH: 0px; HEIGHT: =
0px"></DIV>
<DIV id=3DcnnFooter>
<DIV class=3DcnnFooterBox>
<DIV class=3DcnnFooterBoxHeader><IMG id=3DcnnFootCnrTL height=3D4 =
alt=3D""=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/nav/footer/corner_f=
ooter_tl.gif"=20
width=3D4 border=3D0></DIV>
<DIV class=3DcnnFooterBoxContent>
<DIV class=3DcnnGFooterBoxLinksTop><A =
href=3D"http://www.cnn.com/">Home</A>=20
&nbsp;|&nbsp; <A href=3D"http://www.cnn.com/WORLD/">World</A> =
&nbsp;|&nbsp; <A=20
href=3D"http://www.cnn.com/US/">U.S.</A> &nbsp;|&nbsp; <A=20
href=3D"http://www.cnn.com/POLITICS/">Politics</A> &nbsp;|&nbsp; <A=20
href=3D"http://www.cnn.com/CRIME/">Crime</A> &nbsp;|&nbsp; <A=20
href=3D"http://www.cnn.com/SHOWBIZ/">Entertainment</A> &nbsp;|&nbsp; <A=20
href=3D"http://www.cnn.com/HEALTH/">Health</A> &nbsp;|&nbsp; <A=20
href=3D"http://www.cnn.com/TECH/">Tech</A> &nbsp;|&nbsp; <A=20
href=3D"http://www.cnn.com/TRAVEL/">Travel</A> &nbsp;|&nbsp; <A=20
href=3D"http://www.cnn.com/LIVING/">Living</A> &nbsp;|&nbsp; <A=20
href=3D"http://www.cnn.com/money/?cnn=3Dyes">Business</A> &nbsp;|&nbsp; =
<A=20
href=3D"http://www.cnn.com/si/?cnn=3Dyes">Sports</A> &nbsp;|&nbsp; <A=20
href=3D"http://www.cnn.com/time/">Time.com</A></DIV>
<DIV class=3DcnnGFooterBoxLinksBot><A=20
href=3D"http://www.cnn.com/tools/index.html">Tools &amp; Widgets</A> =
&nbsp;|&nbsp;=20
<A href=3D"http://www.cnn.com/services/podcasting/">Podcasts</A> =
&nbsp;|&nbsp; <A=20
href=3D"http://www.cnn.com/exchange/blogs/">Blogs</A> &nbsp;|&nbsp; <A=20
href=3D"http://www.cnn.com/togo/">CNN Mobile</A> &nbsp;|&nbsp; <A=20
href=3D"http://audience.cnn.com/services/cnn/regwall/memberprofile.do">Pr=
eferences</A>&nbsp;|&nbsp;=20
<A href=3D"http://www.cnn.com/EMAIL/">Email Alerts</A> &nbsp;|&nbsp; <A=20
href=3D"javascript:CNN_openPopup('/audio/radio/preferences.html','radiopl=
ayer','toolbar=3Dno,location=3Dno,directories=3Dno,status=3Dno,menubar=3D=
no,scrollbars=3Dno,resizable=3Dno,width=3D360,height=3D573');">CNN=20
Radio</A> &nbsp;|&nbsp; <A href=3D"http://www.cnn.com/shop/">CNN =
Shop</A>=20
&nbsp;|&nbsp; <A href=3D"http://www.cnn.com/sitemap/">Site Map</A> =
</DIV>
<DIV class=3DcnnGFooterBoxSearch><IMG class=3DcnnSrchDomLogo height=3D22 =
alt=3D""=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/nav/footer/footer_g=
oogle_logo.gif"=20
width=3D47 border=3D0>=20
<FORM onsubmit=3D"return cnnFootSearch(this);"=20
action=3Dhttp://search.cnn.com/cnn/search method=3Dget><INPUT=20
class=3DcnnGFooterSearchField id=3DcnnFootSrchTxt> <INPUT =
class=3DcnnGFooterSearchBtn=20
type=3Dimage alt=3DSubmit=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/nav/footer/footer_s=
earch_btn.gif"=20
border=3D0> </FORM></DIV>
<DIV class=3DcnnCrumb><IMG height=3D1 alt=3D"" =
src=3D"http://www.cnn.com/cookie.crumb"=20
width=3D1></DIV></DIV><!-- /cnnFooterBoxContent -->
<DIV class=3DcnnFooterBoxFooter><IMG id=3DcnnFootCnrBL height=3D4 =
alt=3D""=20
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/nav/footer/corner_f=
ooter_bl.gif"=20
width=3D4 border=3D0></DIV></DIV><!-- /cnnFooterBox -->
<DIV class=3DcnnFooterSub>
<DIV class=3DcnnFootRight>
<DIV><A href=3D"http://www.cnn.com/espanol/">CNN en Espa&#328;ol</A> =
&nbsp;|&nbsp; <A=20
href=3D"http://arabic.cnn.com/" target=3Dnew>Arabic</A> &nbsp;|&nbsp; <A =

href=3D"http://www.cnn.co.jp/" target=3Dnew>Japanese</A> &nbsp;|&nbsp; =
<A=20
href=3D"http://news.joins.com/cnn" target=3Dnew>Korean</A> &nbsp;|&nbsp; =
<A=20
href=3D"http://www.cnnturk.com/" target=3Dnew>Turkish</A></DIV>
<DIV class=3DcnnPad9Top><A =
href=3D"http://edition.cnn.com/">International=20
Edition</A> &nbsp;|&nbsp; <A =
href=3D"http://www.cnn.com/CNN/Programs/">CNN TV</A>=20
&nbsp;|&nbsp; <A href=3D"http://www.cnn.com/CNNI/">CNN International</A> =

&nbsp;|&nbsp; <A href=3D"http://www.cnn.com/HLN/">Headline News</A> =
&nbsp;|&nbsp;=20
<A href=3D"http://www.cnn.com/TRANSCRIPTS/">Transcripts</A></DIV></DIV>
<DIV class=3DcnnFootLeft>
<DIV>=A9 2008 Cable News Network. <A=20
href=3D"http://www.cnn.com/tbs/index.html">Turner Broadcasting System, =
Inc.</A>=20
All Rights Reserved.</DIV>
<DIV class=3DcnnPad9Top><A =
href=3D"http://www.cnn.com/interactive_legal.html">Terms=20
of service</A> &nbsp;|&nbsp; <A =
href=3D"http://www.cnn.com/privacy.html">Privacy=20
guidelines</A> &nbsp;|&nbsp; <A=20
href=3D"http://www.cnn.com/services/advertise/main.html">Advertise with =
us</A>=20
&nbsp;|&nbsp; <A href=3D"http://www.cnn.com/about/">About us</A> =
&nbsp;|&nbsp; <A=20
href=3D"http://www.cnn.com/feedback/">Contact us</A> &nbsp;|&nbsp; <A=20
href=3D"http://www.cnn.com/help/">Help</A></DIV></DIV>
<DIV class=3Dclear><IMG height=3D1 alt=3D"" =
src=3D"http://i.l.cnn.net/cnn/images/1.gif"=20
width=3D1 border=3D0></DIV></DIV></DIV><!-- /cnnFooter --><IMG =
id=3DTargetImage=20
height=3D1 alt=3D"" src=3D"http://i.l.cnn.net/cnn/1.gif" width=3D1=20
onload=3DgetAdHeadCookie(this) name=3DTargetImage><IMG =
id=3DTargetImageDE height=3D1=20
alt=3D"" src=3D"http://i.l.cnn.net/cnn/1.gif" width=3D1 =
onload=3DgetDEAdHeadCookie(this)=20
name=3DTargetImageDE><IMG id=3DcookieCrumb height=3D0 alt=3D"" =
hspace=3D0=20
src=3D"http://i.l.cnn.net/cnn/images/1.gif" width=3D0 align=3Dright =
border=3D0=20
name=3DcookieCrumb> <!-- SiteCatalyst code -->
<SCRIPT language=3DJavaScript=20
src=3D"http://i.cnn.net/cnn/.element/js/2.0/s_code.js"></SCRIPT>

<SCRIPT language=3DJavaScript>=0A=
<!--=0A=
var cnnWinLoc =3D window.location.pathname;=0A=
var cnnWinExtra =3D window.location.hash;=0A=
var cnnWinLocRegExp =3D /\/$/; =0A=
var cnnWinExtraRegExp =3D /\?/;=0A=
if(cnnWinLocRegExp.test(cnnWinLoc)){cnnWinLoc =3D cnnWinLoc + =
"index.html";}=0A=
if(cnnWinExtra !=3D "undefined") {=0A=
if(cnnWinExtraRegExp.test(cnnWinExtra)){var cnnOmniExtra =3D =
cnnWinExtraRegExp.split(cnnWinExtra);cnnWinLoc =3D cnnWinLoc + =
cnnOmniExtra[0];}=0A=
else {cnnWinLoc =3D cnnWinLoc + cnnWinExtra;}}=0A=
if (typeof(cnnPageName) !=3D "undefined") {s.pageName =3D =
cnnPageName;s.eVar1 =3D cnnPageName;} else {s.pageName =3D =
cnnWinLoc;s.eVar1 =3D cnnWinLoc;}=0A=
if (typeof(cnnSectionName) !=3D "undefined") =
{s.channel=3DcnnSectionName;s.eVar2=3DcnnSectionName;} else =
{s.channel=3D"Nonlabeled";s.eVar2=3D"Nonlabeled";}=0A=
if (typeof(cnnSubSectionName) !=3D "undefined") =
{s.server=3DcnnSubSectionName;s.eVar3=3DcnnSubSectionName;} else =
{s.server=3D"";s.eVar3=3D"";}=0A=
if (typeof(cnnSectionFront) !=3D "undefined") =
{s.prop1=3DcnnSectionFront;} =0A=
if (typeof(cnnContentType) !=3D "undefined") =
{s.prop4=3DcnnContentType;s.prop6=3Ds.pageName;}=0A=
=0A=
/************* DO NOT ALTER ANYTHING BELOW THIS LINE ! **************/=0A=
if (typeof(cnnMosaicDetect) =3D=3D "undefined")=0A=
{var s_code=3Ds.t();if(s_code)document.write(s_code)}//--> </SCRIPT>

<SCRIPT language=3DJavaScript><!--=0A=
if(navigator.appVersion.indexOf('MSIE')>=3D0)document.write(unescape('%3C=
')+'\!-'+'-')=0A=
//--></SCRIPT>
<NOSCRIPT><IMG height=3D1 alt=3D""=20
src=3D"http://metrics.cnn.com/b/ss/cnn2global/1/H.1--NS/0?pageName=3DNo%2=
0Javascript"=20
width=3D1 border=3D0></NOSCRIPT><!--/DO NOT REMOVE/--> <!-- End =
SiteCatalyst code --><NOSCRIPT>
<STYLE type=3Dtext/css>#cnnTxtCmpnt {
	DISPLAY: block
}
#cnnTabNav {
	DISPLAY: none
}
</STYLE>
</NOSCRIPT></DIV>
<SCRIPT type=3Dtext/javascript>cnnInitOverlay();</SCRIPT>

<SCRIPT=20
src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/video/common/primary.j=
s"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/video/xmp/xmp_net.js" =

type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/video/xmp/xmp_util.js"=
=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/video/xmp/xmp_views.js=
"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/video/xmp/xmp_playerap=
i.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/video/xmp/xmp_playerap=
i_native.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/video/xmp/xmp_playlist=
api.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/video/xmp/xmp_services=
.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/video/xmp/xmp_baseplay=
er.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/video/common/cnnplayer=
.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/video/common/trigger_c=
ommands.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/video/common/bvplisten=
ers.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/video/common/playlistm=
anager.js"=20
type=3Dtext/javascript></SCRIPT>
</BODY></HTML>

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/images/1.gif

R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAQAICRAEAOw==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/cnn/.element/img/2.0/global/nav/header/header_cnn_com_logo.gif

R0lGODlhlAAkANUAAP///8oAAgAAAPK/wOWAgX9/f9dAQfzv780QEr+/v+R/gPjf39EgIhAQEN5g
YeufoNtQUe6vsEBAQCAgIOiPkDAwMN/f38/Pz+/v7+FwcdQwMvXP0J+fn/XPz2BgYNQwMa+vr3Bw
cI+Pj1BQUPvv7wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAAAALAAAAACUACQAAAb/QIBw
SCwKB8ikEdBBLp/HQQcqPCQHANKVyu16v2DoIeIwBM7oc1GBSDsW3IMjjVBAB2kAHh3u+/9dCw5t
aYUBQwdmhghYTwsMhgEaB0t7apaHgJqbYQcZkZFDn6AIU0saoJKURZh6eZywsUYdkKmFQgu2AQir
RA+6EEatrbLFsL+FCA4RcE8UaQQbGxBpGUbUZwgRYx9pjUPDr8bjfpi7D0UbV41zZwZE3WimQ4oB
BEO5aBqsecTk/14WEDoDYdUDCANf1btH4N6GNO+I1MPCAAuBNBSIhOMDsCOVegEcCIlQC5SQhQAu
bgAw6gw6emiwBPggpCQvcP3Eedw5BNkZ/5EsdWVCefHdgYEMek0EcCYjJqCu+PjjybNkUgDtkhnY
uvUkGoZNAURIY8frGZm74GQN0GijGqo8x8YE4NPdtidEs1EC2WwpmmBH0UR0mwmux6w0A6PJ+PFr
SjQiBf41y5Ypmghi06AjbHjnQHQX0bxsfAbs3NBnAfhFc7UeL86dAeY7Q6kkVNL2HrOmFC8AA9Vz
C1mTfEYB7NjkLP1+iKYZl7zQADBvujrNStQB6kZ9i3ycAsGZz+zzAt160GyoUhuiCaB3yUNTu8v6
/lN3yC/lwR94H9yQU5PxUWFBAheEMaAFflyQwBMDYrCGY6iV1UV+i4VXCFrJwNFSThxRAf/CCAKE
GGIFBTi4BAYiVCDiiCKYOAQHEsQoAQAWeLBiBSAIgUEBDYjYgAcm0hfAO88QhB+EkdyEjTeWGWJU
QpfoZAQGEqxoZQMcGJHABFauOEGBQxSwIgc9dsnBBVx22UCBlrxjCQJHlmZfekYS198Z72EmF4fc
Talil1ZmOQQIgHa5oBBi+lioAH8CWgETr2hGHpLFgYRFkXdmN9BNIMEnJREgehnjlQjSWKaIFUjQ
aIgNmJioqKdaqWqXBQ6EWVY3PUdpAArM5tteTHojZADDJbRdYUUkYKUIQ1iwaghC2OgjmABcECu0
ALwaIrMAYLCqABOUau2KBQCwpEiYaOD/HF672jGsNdNVxiSdlWF37BPShjhCsivOCICVhw6hrI+I
rugBEYSumOMQIZBrYQBq0aFAL0aUZ8d+5qGGYWWYsNfbvUukGWLAYRZgcrkDj7jEqgtqSzIGVhaR
cIjlAlASYL0JpsDOPCuwoWm8HpFGYrVszE50loBsRMxdaIttEdpm6XIRTAvsMF2SHpCzUHJGOMSS
Afwn71wAKHaGhlF2SIQFXnqhbc1QOzw1EVULkbIAcNOJwEoHgM010BLaiQAc1Bg9BKZDlt2G0kRc
0HbTV8ctYrlzD1E3AHfD3QEdLw2wli6AEzEsYIw0WRlMomXGON0rLqFgArADIILBSzQs/6LUK5L8
b+tEZO5LIRA4NwAFDRVvfPGULCmhEPTqCQeTQ2yOxk1i90mEyAIsTMSpDWD+eBHYF1i5EJf7/nsh
y4QR72hC7yZEXd8IsWEwQtgLAAgxeoBgvgL4O8TsItoXAGIlqEE9bny7ExG/JmeEukAEAseLIAH8
ti4hrIUBBMiAsYqAMcEQYC3vmBm4qmUlIAmBTGMqmI8KiEIGZit3VOOd1VxYhA7Qi2uguA0ioAS8
JewJFBkJlYgWZLt+xYpRQ8AA9gTQAAkccQKugiHrFNi7yDWQPzjUB8WI0AEeyuMJGyrEVaoEQ28t
ilWlEsK4zrimMEnRcjK0mxV9OIgs/mRlizXEIgLYZwTEscYUHFhRqxi2KAmkcQgXICOgDEkEBJZv
jlBYwAB6RklKUqCCTzjAAxTBgDcEIgPpMQAFKMYjRlFLCBYIQaMm4AHtLSEBHhAZK3WHuZMV4JDZ
smURLGDLBAQBADs=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/global/nav/header/header_google_logo.gif

R0lGODlhLwAWAPcAAMEnILLdstmCervD29myr3eM0trb29/c9Z6u0tablvPp6NWsq/j5/DhJue3l
zGmI1M+cG+Tk4+Xq8tzZ1OnIxceNi6SpxNu3sqO03My4fRcwkPv59svL6/Dy9cnT6iY9pzyHO/Pl
5I6dxeXf16khHa7brPz8/HWGw/z6+e7x9vr8/vL19dKTjPTpw0xYpkKNSJ+x2YGNuNTDmbhwbOPT
076UknaKvejq8f39/vj4+ff19KnbppEoJPz+/vr6/PX2+Pjz8+vw++7u8dzj8fHMx83Y7v///76+
vv7+/v7///z8+2mEx83b89zVyOnk9/Ly/+Dn8+jq7uvcsluC1f79/zNYz/q2qsjWyOzx+d/p9NHb
0mR2v8qmp6UMC/nt6tiGhPfy8vHUznua3LG+29ZUVEJu0B9Cpl9qpt3h+aC24KW+7qeoqf/085iq
1cyUkKYsMqVZYff5+7vK5ixOs+vht93Avuzt7S56L+3RzeLMhMFrYN7PpmSAwdPZ6tjf8Pn6+v7+
+ujo6tXKyu/x8uTbuQkVmQoWpCdQrP7+/ysyluCkoOCzreW8UuC/vIvEi+b09P///cSaJur48UNd
wuXAT/v8+2GsYNDR18HI44+ave7DvODRrsitZOnW1tK8YOPr5cbIy/Hv72t8ysxnYuPi2rOVRvT1
8vPg3e3b2f/8z9CjOfDz3fnn5dvFd9DT4tHX7dTZ5d3i7b7Awq7BrqB6HqA5OfTy4eXx6tNzabnN
vt7o+elzYaO55sXQ7L/J6vnlrvj38+fo6fn09Pz494Kb0JKewpeh0cLhwqe42q262KooKc+6iLo+
NsqsXcLI28vN0MjN27LE4vz58f/4911/3D+EQEJSm3SNxHOOzG10raWs0HN+tIyj19Ld8dnPs/Dl
xPTryg9XDsW8oufexn+Vx/L0+eDOlMJkbs+xr9PEoer3+NCwQXmBsdRoX26MxOnl/NLY7JscG/n5
+QsppAAitxMxsv/9+P/+/v78+97h3tvp2Kmy5K/fqNjCw8mcmr3XvSwAAAAALwAWAAAI/wCPCDRC
cKCRIwQPHhwoEOFChA0TJoyocGHBihAVZryocSJHjx0thsxIkuHFiA4dTjT4kGLKjhsffnwpkWZB
lTc9pjSpkSHLlSp/ShxKtKjRo0iTKl2KNAmDbh6KBMHBtGilY5b+mWCKpQ0MDNwK7OtQdei9ACCu
IFkaZAkCP0OKnLAWpezQAHcMLFWBzcaPhEKg+SDoRVMYidJatPiTEAcUUxKelKiWzwg+IkSMlDMQ
IRhjI0mGHLpUNAkFFhdwtQuB5Js5QnkofTOSBRmMMnzeTf7EhgUBAaMMPAMlaxBBHGrMRCiKR08d
IJqYnVvVag8wW4xUkRKTDMqDDwf4Vf+79WVBiAQ8BA2yEygHwR685k1IQlBFB0jDBDBTR1/Amwye
jEDfLxCsUcUARqAxDwf8vDACMwsscgENOhTlBz0x1FcEMVNos4syjxCkSC3NrNMEQalEIk4DLujg
zBlO7PDCBADUoAAYRzEgiiG+EMRAL3MUY0UXXBDkBhx0QLAMQVKUMg4H7DzgDixUyCgJGSSwQtBW
RN1zgwuFFMCELshoYME0M/BAwCIz9KNEBrTIAA4n6aBgxB/U1POKEY6Ek0sn8ZBQQQKnHHWDBdvY
gMAYztwXCjr+XICKEkaY4o0MmziwgRFytCHCBx/Ao88sWvRAQw0VNGLnUSZ0kEI5caxEtaUww0iE
wwYb3GNEGtf08YMdDWQjhAmVECQPEKvatdQkJ9hD0AkxGKfstEYYk8gW0aRBTiyyUmuXD65kIsIA
WHSbVEAAOw==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/images/1.gif

R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAQAICRAEAOw==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/baseplate/corner_dg_TL.gif

R0lGODlhBAAEAKIAAP///9ra2uPj4/b29vT09Ovr6wAAAAAAACH5BAAAAAAALAAAAAAEAAQAAAMJ
GCEUBUBAMGYCADs=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/global/icons/btn_close.gif

R0lGODlhDAAMAMQAAAAAAP////39/fv7+/j4+Pf39/b29vT09PLy8uPj4+Hh4d3d3dra2tnZ2dfX
19TU1M/Pz83NzczMzMrKysfHx////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEA
ABUALAAAAAAMAAwAAAVJYBAIiAJBCiKIwZBQcJwM4zvF1J2QlGQ8MMfhVoItCA8HgQEzxY7L2Cmm
REoVQULjCKSkeoWG0UAUvCS4CGXXeuHWNBHJhFKJQgA7

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/global/icons/delicious.gif

R0lGODlhEAAQAJEAAP///93d3QAA/wAAACH5BAAAAAAALAAAAAAQABAAAAIqhG+iq4jM3IFLJios
wNly/XnYQJZkgKaoaaoqW7opfMoBPdg3reM9bysAADs=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/global/story_tools/share_btn.gif

R0lGODlhJAAPAMQAAP///8oAAubm5ufn5/f39/Ly8vz8/PPz8/n5+f39/e7u7unp6fb29vHx8ejo
6Pj4+O3t7erq6v7+/vv7+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAA
AAAALAAAAAAkAA8AAAWEICAmh7IIaKquLOoUYgwQQ0EYcq7vQNIMjxhBgeAZjzMIozcoIp86xMBQ
OECvuUMjMskFvoCASBwmf81gmWExkMjI47g5LOehdOmzeM5Py+47e3JnZXM7gDGEdHR8g3AxKFZY
kwcCBk2TVwiWAAxEmUgESkI1N6A5CQVAqCUnLa8tLzIhADs=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/global/story_tools/email_btn.gif

R0lGODlhJAAPAMQAAP///+bm5scKC+fn5/f39/Ly8vz8/PPz8/n5+f39/e7u7vb29unp6f7+/vHx
8e3t7ejo6Pj4+Pv7++rq6gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAA
AAAALAAAAAAkAA8AAAWIICAmh8IEaKquLAoVjSgTQ0EYcq7veuIMkZkCwSsac4THApAYEI/QImJg
KByiWN7BMZHoBGCAQDYWl8Hjss7AGMRy6rBcdKYXUTu0eJ+27/87eF9khGh1gDqCcHN2dXp6iQFX
WZQiBwEGTpVZCJgAC0ObUElLIjQ2OKI5CQVAPSUnLbItL28AIQA7

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/global/story_tools/save_btn.gif

R0lGODlhJAAPAMQAAP///+bm5scKC+fn5/f39/Pz8/Ly8vz8/Pn5+f39/e7u7vb29unp6f7+/ujo
6PHx8e3t7fj4+Orq6vv7+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAA
AAAALAAAAAAkAA8AAAWDICAmhcIEaKquLOoYjSgTg0Eccq7vevIMkZkCwSsacwTIApAYEI/QImJw
MBSiWF7hIZkUBWBRGCAQk8e6A2MQ25Vl73KcfEQZx3O5GK2zH+VgenNGfm54ZnR7bzsoV1mPIgUB
B06QWQiTAAtDllBJSyI0NjidOQkGQD0lJy2tLS9tACEAOw==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/global/story_tools/print_btn.gif

R0lGODlhJAAPAMQAAP///+bm5scKC+fn5/f39/Ly8vz8/PPz8/n5+f39/e7u7vb29unp6f7+/vHx
8e3t7ejo6Pj4+Pv7++rq6gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAA
AAAALAAAAAAkAA8AAAWIICAmh8IEaKquLAoVjSgTQ0EYcq7veuIMkZkCwSsac4THApAYEI/QImJg
KByiWN7BMZHoBGARWCAOkwHksc7AGMRy57R4jpajeahd/M7fh/k6eV9/anR7gDmCcIt3aodngQFX
WZQiBwEGTpVZCJgAC0ObUElLIjQ2OKI5CQVAPSUnLbItL28AIQA7

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/global/1x1pixel.gif

R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAQAICRAEAOw==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/baseplate/corner_dg_BL.gif

R0lGODlhBAAEAKIAAP///9ra2uPj4/b29vT09Ovr6wAAAAAAACH5BAAAAAAALAAAAAAEAAQAAAMJ
OLCyEGWFIEgCADs=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/art_icn.gif

R0lGODlhCwAMAMQSAP///6+vr7CwsOzu78wAAPDw8LW1tfb397S0tK+vsNzc3Nvb27a2tvz8/P7+
/rm5udTU1P39/f///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEA
ABIALAAAAAALAAwAAAU6YCCOSCGdAqACTWCYUroCwcKYKaHTAPTKqwDAoXjkdqMAAjgDRASp5AgA
bc6gB6noIEgMvmBwQisNAQA7

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/art_icn_grayed.gif

R0lGODlhCwAMALMIAMDAwP///+zu7/Dw8Pb39/39/fz8/P7+/v///wAAAAAAAAAAAAAAAAAAAAAA
AAAAACH5BAEAAAgALAAAAAALAAwAAAQpEMgJBrog6GCkRdkWTFY2jWMVbtlxvtQqBoWUxuksSkTM
S4KgUOjzRQAAOw==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/video.gif

R0lGODlhEAAOANUAAMwAAc0BAvj297Cur6+trvr6/Pb2+PHx8/Dw8q+vse3u8q6vsfn6/PP09u3u
8Ovv8uru7+nt7vn7+vL08/Dy8e/x8O3v7q6wr62vrvn7+Pj696+vra6urLCvrcwAAMsAAMwCAv//
//7+/v39/fn5+fj4+Pb29vT09PHx8e3t7bCwsK+vr66urv///wAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAC0ALAAAAAAQAA4AAAZuwJZw
SCwaj8aVkrVSKVdFqCpErVJVxKc1JKJCW0qVUzQqk8vP9IqkKUgkjIwEmm6pTAKAxwMylAZgKyxC
KycTHgABHw0TUkpCLCgUBwcIBygVC0tfKykRFgoPDhAWBEJOQysDCRwbFx0YSLKzs0EAOw==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/active/video.gif

R0lGODlhEAAOANUAAAAAAP////Pz9PLy8/Hx8vDx8u7v8Pr7+/X29u7v77q7u/n6+fT19Lq7uvr6
+by7u/7+/v39/fz8/Pv7+/r6+vn5+fj4+Pb29vPz8/Ly8vDw8Ly8vLu7u7q6uoeHh4aGhoWFhf//
/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAACEALAAAAAAQAA4AAAZiwJBw
SCwaj8aNkqNsFjehTWBKnUKHzWoAYhU2lZCIOCz+fikLyeEwcRyg36jF8ql7LJVHdMPxXhh1HyAI
DHBKQhwYGAKMAhgZTUxeGgkaAwUEBhp9e1gPGx0cChwNSKanp0EAOw==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/photos.gif

R0lGODlhEAAOAOYAAM4AAs0AAcwAAdMgI9MgJNAgIul/geV+f+upqvCwseZ9geqoqu2rre2vsvby
8/Px8rGvsLCur//+/7Cusfn3+vf1+PLw8/Lw9fHw9fz8/vn5+/Hx86+vsaurraqqrP7+//Hy9vr7
/fX2+PHy9PDx8/L2+fD096uvsPz///7///L29f3//vn7+q+xsK2vrq6wrfv9+q+wq////fr6+K+v
rbGwrv/+/P79+/b18//9/Oiops0AAM0BAMwAAMsAAMsBAMoBAMwCAtUfHtIgHtAhHtQgH9EfH+WB
ge+vr+uure2wr/////7+/v39/fz8/Pr6+vb29vHx8fDw8LCwsK+vr66urqqqqv///wAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5
BAEAAFcALAAAAAAQAA4AAAe5gFdXVoQeHYKIiVRTiy4xHDU0NBBVVFQRlktLTBKaSyhLKUsyH0sT
U0yeo54BPT0yTC1UoSlKBT1CDSkCPQEySy9Vv0g7Pz1BPwmanUwTs0sEPgY3Rz1FnMtULqNAPCsI
TQI+EikpEjKWGTADPwo2Bz1DTk1NOU4cLk8UDDwArQJJNLCYoSFEjBYORKjQYeQHkQUlcECpAAXK
lCojLETZcIEECCkbMGzY8MDECUsoU6qkUiWRy5dXAgEAOw==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/active/photos.gif

R0lGODlhEAAOANUAAAAAAP////r5+vj3+PTz9PX19vT09fPz9Ly8vfb3+PT19v3+/vr7+/f4+PX2
9ru8vLm6urq7uvz8+/b29bq6ufb19b28vLy7u/7+/v39/fz8/Pv7+/r6+vj4+PPz8/Ly8tnZ2djY
2NbW1tXV1dTU1NLS0sTExMLCwsHBwby8vLu7u7m5ubi4uJWVlZSUlJOTk4eHh4aGhoWFhf///wAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAADMALAAAAAAQAA4AAAaRwNmM
RWSthMhkapmKUJYqlUW1vCwDAQwGG1hks1tEasslB2Jo7SMFDrlirRAGHdtGVFtQTBaDyUBYWxhi
WC0yJhkncFqBTVl8GCMZe1qVSxkShigYKDEuGaAYGU0bAiJ0aCIbDBwbGhQPFQ0OJS4yLyQJEx0D
HR0pKgYEHgcGBwUfxQcHBAoQTNDRTCpJ1dYzQQA7

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/global/story_tools/text_size.gif

R0lGODlhJgANAKIAAPz8/JWVlZaWlpeXl/7+/pmZmf///wAAACH5BAAAAAAALAAAAAAmAA0AAANx
aLpG7EzBSGV089VF8m6g9YlV5okeRnIaMwiF8Q6yQw84NRsFTgiD2EugiBFoCmQgSRpkiAtaLGrz
GYCLaQOSK0KguCkSKmOWQyEk7SjRnnHSjlrXDd5esq6KcuJv/SMTfSOBBgAXfCYrG32DgCQQDgkA
Ow==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/global/story_tools/txt_minus.gif

R0lGODlhDQANAMQYALy8vL6+vv///9ra2tDQ0PPz89HR0e7u7t/f3/39/cXFxcDAwP7+/tXV1c3N
zerq6szMzPLy8tLS0tnZ2b+/v9TU1PHx8enp6f///wAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEA
ABgALAAAAAANAA0AAAU9ICYeRAAsUiGKyQC8cIAwogHf74A9eB85PVzDFIQpboJkErYgFgEKyPNV
uUwBFgzhOWG5cDLaimSiGFSiEAA7

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/global/story_tools/txt_minus_dn_.gif

R0lGODlhDQANALMPAObm5ufn5////+7u7vHx8ezs7Orq6vr6+v7+/vPz8+/v7/v7+/n5+ff39+3t
7f///yH5BAEAAA8ALAAAAAANAA0AAAQ38Ek2AghjSYkI+GCQCNIAnh/xNGh7FC2qWDFonEKeh3QN
GDAfQMESHh6mmurRaYlIG4bDgtFIIgA7

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/global/story_tools/txt_plus.gif

R0lGODlhDQANAMQaALy8vL6+vvr6+tra2tDQ0PPz8/7+/v39/cXFxd/f38DAwPv7+9HR0fn5+e7u
7urq6tXV1dLS0szMzPLy8tTU1L+/v83NzfHx8enp6dnZ2f///wAAAAAAAAAAAAAAAAAAACH5BAEA
ABoALAAAAAANAA0AAAVCoCY6RAAoUSGKxwC8cJAYIgPf76A9eD9ZOAEOYroJbwhjQ7A4noqwBQ4h
wTVwFEwPd9EQtq8My4WT0VYkU4WhEoUAADs=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/global/story_tools/txt_plus_dn.gif

R0lGODlhDQANALMPAObm5ufn5/r6+u7u7vHx8fv7+/n5+ezs7P////7+/vf39+/v7/Pz8+rq6u3t
7f///yH5BAEAAA8ALAAAAAANAA0AAAQ88EkzAgijSJkI+GDAINIAnh/xKGgrHKiALtYpn41tCMV9
1aACqgE7GWaslu1hUgJUj05LRNoYHBaMRhIBADs=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/2008/WORLD/asiapcf/03/19/tibet.video/art.tibet.aptn.jpg

/9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAEAAAAMgAA/+4ADkFkb2JlAGTAAAAAAf/b
AIQACAYGBgYGCAYGCAwIBwgMDgoICAoOEA0NDg0NEBEMDg0NDgwRDxITFBMSDxgYGhoYGCMiIiIj
JycnJycnJycnJwEJCAgJCgkLCQkLDgsNCw4RDg4ODhETDQ0ODQ0TGBEPDw8PERgWFxQUFBcWGhoY
GBoaISEgISEnJycnJycnJycn/8AAEQgA2wEkAwEiAAIRAQMRAf/EAIoAAAAHAQAAAAAAAAAAAAAA
AAABAgMEBQYHAQEBAQEBAQAAAAAAAAAAAAAAAQIDBAUQAAEEAQMCBAQDBwMDBQEAAAEAEQIDBCES
BTFBUSITBmFxMhSBkUKxUiNDFRYHocEzYnIk0ZJTczQlEQEBAQEAAwEAAgMAAAAAAAAAARECIRID
MVETQTIE/9oADAMBAAIRAxEAPwDQf5Fq/wDKwrPGJ1SeNuojiQpmPrirX3zSLI4cjqW0CqaMadka
LK9BENIFcr+LyrsTDoGfdZAMxOisAAjGN6Fs5D9WqUzLw/S+Xfk0DVGYEh5j0S8dhyO0dNrojTXO
cTKTEHRNYs//AOsYu7RZXhqzwsfcUfJjS+CotzHoGV97kO3Dx5+CxM86wW9dH6LpeXDrlciQSnCi
12bog+KcBWfVJwcJAS47SHITJkhGfZTK16HxXUeoCP0au0QmxIdksTU8sX5m8iuqFUptqBoo2HCG
TROUh5o9yn8iT1TCZ46W2F0emnRa53U9G74SAjhVxA0YLP8AuDBqt5CdkgA4caLRcHIHCqPwCqPc
WmWPiFvrcX1ZqXE0zcgBNDi6y4BB+Ssdx2SCi4sDGzfvcE6rltX0K4HhKcrOnRbOUa4gylIdmVdz
tGLTmNhzlZV0FhB6hXuJGUMycoWelE6TI7goe4xjWY1deGAa4fr7k91vm1LGMkWRxLoTpk7I4x2L
vzdjlYIZNlflAb4pfrSAdyo9gaT+KDyZbTKn4vKXUzaR3R8FYz5/JlFqwBHoxDqgrMYl5ap+Nolp
EKWs3mrjFyI5lhrthHXuAynywhRHfFlnKzKue+B2lWuLyMtu26Qb4qazZVtDJqrjH1azM/AOp2Nn
y3AUUtHxULjczHsyBCBEieo6q+nTF3iNpV0zqqzlOQ44UGGXGMryNIgBwsPOQlqA3wVjzNFx5GyR
BMeyrjEjqCkrrxzZ+miQjhMRKE4lIZbldUn7qLNsi/yQURBXR1b3yTXi4V3YWCJPwLKt4y8Sx5Rj
qAdCrj3xjnI4UN1rkJBZPgbvUx51O1hdvmudXlZzs3kjwSFDplZDJlVZ16qZ3Xh+v+ztyRbV6jSE
mMVAwpvywPzClZInteBYhVWJYY59Mu5ky38nTPDT+6A/F1SHYrBV1C6zaVvvcY3cKJ/ulYXEBla4
XpkcrE+uEhERGrJzzDq6RAz12yYjqnIzuI8xfwS8OnPJJ3N0SQ57p8TyOggJRRxtA0lWB8Vn0b9B
QfxdKdDfCt5S1B8EcJQnrHoVPRLwRMSnCUY+Cj4T/wAYHwU7ygtHvoUJUxx4uOslZw4d+Gu9ukzw
KyevRV3uUNmQ/wC1WHtme7j6z8woHuotl0/GKdc+E5iidIoNRG06F0k26kMmSJRsYROuq5+rdmRd
cNCqfNGrJmPttryKX7gjhvKOC0sYdx4qu47Puw+S2V0+rG2G2WjsrbkIYWPgiEZ77rnlKA7fBWRz
6Ym6EQSQmdoKm5LRkR6b/EKKTHvEj8F15jlTUqgUBXFujpzdFvBHAQJdyFoxHlT4BLqoI6aKRMQH
STpymO4ONFmmI865CLpsQMlZGnt1RDHG5gHBU1fWHeGtqxMqFljRHcrb153F3ASGTGJPisT9qBoY
9VCzcG2UCK5Fh2CsPVvrcTir5mZya5HxcKPLhOMs1jfX+YXM6sabkzukG7bipkIEfz5AeDrS43p9
tYMvptgfxCbn7Tx5fSYrHxnOA/55fmpNd2YQ9WRNvmf/AFVwaD+z4busWQVF9zyn0/czbwcoKDp3
uOG/irI/Bc94zHsjXviDG2EiW8V0bmdcCXwWSjHbNwGWeqvKqx8ueRyko2R2mMVZ+PzVJnetDkTd
SNYjVS8DOtyKjOfYsWXm74tduUzIurqh5u6ot8fuapw0G8K9qyIHJ9PZvG09dVSX65MXDD1On4rX
Ex1n41fOjd7clJc/xjIREgug8q8/blo8AFgcaJ+lemOXVWGNY4LDzJ+JmIeYSGvRlHxYHzDoeykE
WAMZuFp2+d8EmRBBhM69QnfLZHbOTR8UkERI3dEY9OQmLPmFK7QuMI1k7f4m0PHugSZbZyHpv+kB
kivd0od9vUJcvUMYGZJPRZwwZjXCG+FnmdyE3kXmZriU5EwhLdZEmHdkzfZj3XR+3BEQO608n0nl
r/a03xNvaJKj+7B/Gx5N2OqX7TINE49xIo/dzD7cgeOqz0zxPLLlupHdW+LRCRjZOLjaqcEOAVe0
EfbOD+lZxvuIuHbfRy+3FERGUTufwSuRnA2yjsaTuZeJUHFtIzhZLrqp9wF89yY41R3x1LDqoxj4
hWttJ1APRRp1ADpqrGMQdkX6BOQjHwCE4kFHCBPRaDVtMCXZ07RQ8dwTpx5SDnRScCoSJrYO/dZq
wxsk+qmYGIL7xEqRlY9uMIx2xIIcEKRxNchkQke6yp6zjfTLbdeyYtwAYl46kKz5/lr+JrhOnHF5
OhBWYv8AfV8Dtt4/aDo4WtGey8X0rpgaByoxrkDop9t5zbJXCG3cX2ps1y8CtaiIBLcAZHVbLjsE
DDgQNT1WRslGogyGvZa3jfcmJjYkKbKJ2TA+oBwtaJH2I3/T2QSv7pwt277WzwbagsmNtysd2BYF
lL4yriJMtdnh8K35LOZERKgN4KWJKzeRMjIlp9cTqkcIYRxcjf1BLJ7kpxAiIjzB3KrcORrpsAP1
Ok5deNqTh58sXIlaYGQLhM32Cy0WgM8wW/FOSnVDCI/mEqKZPWCOxH7VfWPRPxtMsepwVsfGIWGx
4AGXwW5B38Jb/wDWP2LG11kRJ8SrI83d8nawa5xLfV0SpzkNCHKk8hUasfGtGhIZ1WzM9ddVp046
SxCUwG+aVH0rAa5SYqJXI9yR8Uu3ZEj0y8iNSs2O/PSQB6RMaZeb4pyUrqhD1NpJ7u6gCUj3+aSX
fqjerK1yzkMeoChGIhkeXoUVLmwOU5Z5bNx6eK1I8n0vlqvanlFg7blI921bsemwHoVWe2eU42nd
XdkwrsdzGRZ1d81dRlcdCymQnCR0kNVno+f6w56KZVkTFYjE6DRRroiNsoO5BQBkPp6rMjf0wvF1
z4x8QVZgiMyD2KrKJ3nOqO0RPT5q9/o/KXyMoUEg9D0CtjhUC7aZEx7qPOoyV7H25ykm3xjH5lSY
e1s4jW6sDuXUxnWMtoIklUxB0K11vtT/AOXLrB76hJq9sYMfr5CsBPKM56cW/YUzu2Fx1WyhwHCx
Hn5GH5hIs4L2tBzLPiT3aSYMrG2yUQCSW6OrTAkYmMgQCFY/0z2zHSGVul4Rk5SoU+3qZNK4w7+Z
TDSOUhDIph6jFlkOeoxqa42BviHC3wyfa84iFmTEt/1BR8in2DeNmTYCB1O4aq+p7MDwkKb7TGRD
AaBwr4YWOB9AI8VOOR/jHjJvTZITPXbqo0uX9r5M24nJlYT+iXVXDWd5/GqrhCUIgF1Z8NXVLDiZ
RBJ7lQfcRemBHjqp3B//AIwourH0ad30BBOd3QQbDLL4Vr/ulZ2qUbKdpWiy9MK8/wDQf2LnlvKS
qrNdf1dCt4cwvlxXG0QoBnPuAqiVV0NZR2D4pnI523CkBGInOX1EpFOTfnTNt0nB6RCrcvqFt0K9
bJafBKx5Ryw1QkzjUhkrIoBqkYgOA+qoJ8ldXKVcbdjeCLftcdIHJY9HHHFsI80dhLrO3CkAV12m
QOugWZhyG76iZHv3Tks+4DyRJCONtrYSnTm4dWMLtsqvEO6hTxKYPuub4sqnjI3ZEt9k9g/JW32l
Z/UT+KNTqw2Y4kOuQT8oot+AP5k5H5Jw4VXgj+wrbcAjc+lMWW4NI9WVkh8wqPK9xYdNm2qUpEnq
2iX7ol9rRFjs3FlloRnaQI9+5UX+3pt8Pl8S0Ce4hvgoXOcwBQRjykTIt0TnHcfXXjR3l5SHXwUb
mcCqugCF4lM9IjqFdc71bWcNnq9TISd9zroXtL3DCWDVx+U8hT54g6voVhqeLypN5tCrfjcOWBbV
ZKw7YS84b9LdFmxqd4t8n3BTkZVjVmGyRDdE5VzsIHSDqq5bI4oGyWJiEXy/mEuPyVHK3I26Fj3T
kvdrdQ9wbLo3xpeceisbPdnNZJE4XCqv92LLmHr5Y/mEKRRm5cfKbCYq1jXSTyXIZcHnmzH/AG6K
FOWbImP3lxB8ZFZrFzLpRiY2MR1B+C1HEm7NplOQ3t2C52uk42E0Qydl5lfZPbAlzIqhhl2DWyc5
AnpuK1GNizFWY4IJDB+qpsHjbbzYLKZExcgiJTdS/KosMmMiHEv/AHFP27BESgCH+JKa+yyxaYQx
7CH/AHT/ALo7rLK5RptxrZS6AQj3WpjF5s/Vj7dugeXqrI0kWLnT/VPe5DKfMX0SLVwAaI0VFPkT
xeZTfLHsqlHURmGKkZvP4/I58syQ2GcWkD4rXhmpFGNjTYGOnzKsY8Xx865b6wdO5Kp6+RxIgGR/
JOn3ThUjbCsyPR1UjP8AI4NIttlREghwAqjEyZUZcDAbZbwCQrK/kbsvLkY1kQmdWTmLh4eNlQtu
j6kAXI8FG8anmZCeBTb+os5Vh7dD4aicmKcvi4HAhK7UEVw1kFL9tY3IehIWYdsSOxGqzYLjaUE5
6GRv9L7ezdt3M2rOgpg1l/nxLY+MD+xcmzRsla3aRXSp8xhmqdYnrKJHT4LnfMY9tULLJDyyJIK3
G+bIyOVabcoauOivsDaKgFm63lkl/FaPEYRCsZ6up2+BBiSDpqFQ52JgGZlJoFWHp2DJNgHlIZNy
4C7LrnZMt3iEYVVOPiWTbHmJkdQrKqnHDCyWw9wQs9ZgZuDkSspB3A9IrT8bec7GHr1bbYaFxqVF
GRjVMaoymO7JUeRx4aiqT+CP7HNnaDjXRqgOol0UqOMYHbdKqdniCqGBysSNMeY+Kmcdkff3CkQl
U2srJ6BkJyxKQBkWiEepIDqDm2VZmFZDj7SCXBlAkEhF1M9x/wBAppP3dwyLIjyVx11/BZjisQcx
yFVFMRXQ+o8As/kwuonKNw18SXK1ftjl+J4jEsyL5xlky+n4Ia3OT7Z4/GwJQwbN2Ts1BPdcxvFl
OVZj3hrInuthhe9+JszoGyyMIdCTo6ovdWdxWdyE8rjJCUdBIv3QQoXGIYJz1iRqVWxt16p+NmiB
y6MbYEOWVaa2EgD9KkX3tEt+aZhXZfBwNO56KJo64wbUa+KejSCdAkwpOgkeim0xiJRJ+QUtXmbS
Y0yo8w0Mhoujf48ycamq2rIlDeQWdtCshbhWzpjP0/K31K19oVQPJelMdR3XDu5Xv+HGzK6jDExr
YmYjAGQ7AAH8k16FePMECI+Aj/ujgZFq64sI6aI7YWkdST/ose7rflzUfJuG54yET8gq+UcWNv3F
7ER8ziLqdkAExjt1bzFQxtjb6YGh0PddOerXk+/z9UHKz/ZvOWRx8jGuts+kTjWwH4qLkf439vXh
8Wdtb6glmVpl52NhfRCuLaykwBVaf8j+3sd4SlumCxYOF258vJWfzP8AFOUATx2f6h6iNnRZTlfb
fK8FKNPKbHkdJwddKl/kvgx5oCRB8I6LFe9fc2H7jtx54sCPRDPLQFbxIoK7vReMPMfFFG2W55fk
oMpSEjtKTHIIm0yyY1K1HE8vmYF0ZYt5pBLFhu/0XTPbnIZ2f6hy8yc9pAE/TMOv4Lj2JeHjOB1B
BH4Ld8R/lM8fKODymLCdBjtjbEahvFTE1rP6rH+4/sPujt9Lro7v0QXLf7swv7w/qzH7Xf8AS/ZB
MTXQYWQboCqvnSZ4kj+kJI5LHiNC/wAk3mZdORizhF3bopGmEgQMyUfitDh6kfJZu7yZ58HWkw9N
pVRZW0ROPJ5bC2kh2VHGWTCJjXl3Wh2AgB/ur6UozrlE6iQZVGK+NOVUjt1cE9EoqsnZTIHMlfEn
6SzKbiUiEDbjXWnfqQQ6c5GVHIThjGzWJcyZWdMPtqowgTIgdlA3Xx119YnG2c26wlof9FGqMsHI
kacCyw9yfM5VjTlZdct9fkHdw4Ug5eXM7jIadwGRUaP3/JQlT9hGt+84gLLc7kZnF3HDERUw/l91
sDyGU+31X8AFm+exLs+02mQE4jqgyNlk7i8yST1J6ohCO3oEC4lKMvqB1CVDVWJhgwHqx6AdNQpO
E1tnphqQf1dijNUZhvyPgnjEUQrHSXj4hQ1Olx06ALN8Z7v3UqNR/VooYy5ANqU7C6y0iIi3xKqp
EsM3RIhqQmI120w2GXl+Kv8A2pTOfL1VZMvUonEuwVdztX2vKX04h3VCekSOixbjU4t/FcxEtxL/
AAVjx9Mci6Pqy2QiXJfRM4GObpGGS8B2ACv8PhYg/wATWrt2WOu3o+Xwsu40cWs4sY9O2QGon8E9
7dxxG/dXX6lo8rsoGLfjYIhj+if4p2iY8FuOHwsTAlWIzibLQ/bcO64ddbXu54vPO4ucPFthAiYG
6WvyUn7UiLtuJShmVwOw+aR0AQlm1jySIiVPDz3r6W7itzMY1QlaWEfj2WfszaMeuy0kP2cpz3Hy
sxj20VH1rOgiC3Vcys4Hnsuc5/cTqhIkiG4ll1+bl/0Xx5p73RzxtBxMaT22FpEeCoqcSuQEYQj6
jeYnx8VNu9rZWBH7y24WSGpdWnHQptw7bDjjKIid0IlpFd48ipu4+WJULLciBEhoIh1S5MfM3lOr
gxDLSX0HExY3fbnHos+mFmpCzd8hKZkOh8FtMMCLoWY1cpeYsP3kqJS5AyVUnGmKjtJcA6HxU3Io
pvo3lt3YKNTR6s4wloCfq7Kbk4wxgCJ7gR0CJVH6I9X09g69UE96v/ku3lQUwx0rCljTjE7Ru7ur
2GPRKgj04gyDAssNRliiYIk4B6LXY3K48qo7jqBqsxXPuexji582Hd1YcXkQsri8vMFN9x115dht
pD6LN02yxJvLRuy1o14I9PfHsqLO5iiq4xMd0x2TmNzWPskJnaSNB8VQ+lRlZNs77SBI6MiLKrm9
0oxFEd0iA46q25LkbsWiP21f8ScRoFS4/HYFZjIWTkY6hXAyKRt6AxGhkdVBDwJ8jeHyLJQftIaK
z2coNPWjt7MOyj2cljTIqlaH7BSxlxhAb5xAbQlRTfp5I+uwAnuAm7sSew7rSTPQhkqzPiIkidb9
tVCuzZS19ev5MdE1FByvHwwrPKd27uq8E6CI1KvuVnG+EZ+oJkaeUKropErCDF21YKwO4uDdaQW0
KTylE6cmuJ6CLK3wxGIEokgDqCoXMh7IzBJ0VKrI6KZjmUvpUaqq3IlspgZSU3Arj6hhY8ZxLEfF
LCVbcbZm4dgya2aHUHqU/bUc+VmVGyMLS/8ADPeXxUjj5UbfTnAzBJBLOpZ4rhtm00ShMycTg64f
SX/D3/8APzzZtW/A8Zx8MISzTAZJ1kRqrSmHH5m/FquaUX0iA5CpMTCwcWiZpEjbM6kk9lM4ugYk
vWjH+JLqSuF17OfT+Qux8fGuEp7rLK/+OJZ3fqyseFwc2Gd/Usgk+oRtBOgHyU6v+my/jZRBvH0m
LHRVed7kyaLjDHqM649AAsXi7rpO+bMa+VtmRmA1x3CHUBRcwzxTbnZI9OMfprcKq4/3kZY065Yp
qvI8pZU+VbkZthtyDOcpdn0/JdOeHn7vrs8SRS53uY2ZltkccyAJbrqosvddo0jjSfsACtHDDqiG
jH9hTkcSsdYj8gu/HOPn/W7WQv8Ac1+RVKqeJKQlp0Vfi8ll4lhnjVWQfs2hXQhjVD9I/II/Qr/c
H5BdHFi8j3JyOZinEvwN7fTMhZq/HyzutsoNcXXW/RgOkQPwVR7hxq5cbaWAI6EBaHMxolCxuqXZ
TJ4gagsppwIwia7I+YeKof43isnkazPHntA7top59nchbFrMkN4AK/8AaYr+xNUQBKJ1WhEAqOd/
2Ha7/cF/kgui7B4IKYMhH2xQ3/NJSIcJOv8A47pN4Muh18Th1Dywf56p+ONTH6a4/kuWjnJ4XKmG
3Sb/ALVGt9qiwvaJk/CK6mK2/SIgdyiNuPAtOyA+CmjlQ9m4si5ja6VD2NRIvCFzrp8srCj/ADIE
+AZ0weXxw4rEpkaMArKMDX7CnNtptiPiWSrP8cxB3WCy34b1vTyQl9Ncj89EiXJWh9lMY/GUgrqM
EPYuFXMH7OUpDu5Kkz9q1zAjLEMwOgLrWWczOOkrqavmVHnz+LDSzkIA+AUwZuPtHFb/APGB8wlf
21RDQYsAPkra73LhOQcidnwgHCa/uWmI/hY1to7PFgrF1lPcvFRwcasimFZkW8oZUHC4VmXn2xhF
4wiTI+Gi03uzlbc+umE8b7eILsSSSqvht+JK+2OnqhtPBaECvCyPWsiSdgOiiZ/qTtjXJiIDRvgr
q7JFMZWTJAYus7KcrrTMP5j5fxWkrT+yePpyLp23TjAMRqW7JnmeOr43lZ11S312eYSGupVvwWFX
Xhb7KwJS/P4qn52MKuRgIaBgwVRdcBGgUyEi03dmV0wKzvCiUrde3VaQFYvLfPfU/BiA8EoRZE6U
Fn0jX9vX8jAZLHV0kBLbRT0iz69/yWDHwHzQcJtBX1L9LSyyCSgrIzaUgiBQdaxgeig8vUJ4Fz9N
pU5QuT3zwrYR7g9EHN7ajCIPTUADr3Wi9w4wospn0EojXss5buiTHXSWi3vMzrs4sbwNwiNpZUU3
trIFOWaSfLPotqucceduVTYOxXQ6pboRPiHQOd0EHQVDkOdz2Hq0xJ77SnRzmR1GOH+JUIS0Q3Ll
ilZ/JclyFE8eAGOJBt46rOjhOUiSY58j8ZarQOicJis3/bvJ7jP+pWRkf3SwT+Nw3K4dhso5KZMv
q36q9JCLcyuIrZYPLW/83JzbuIBv90g8IJl78u21/GTKzNkR1SfWimCvjwOAPqjKfxkXT0OLwax5
aI/iFJN0AiNsD3TAmNVMNIxjEfABCUY/vD5JEp1P1TUjU7nU9WCYIPK8ffyVtVFEd8o6s4H7VVzx
rse4Y1tZrkNCClc1k5sciGTgGcTDTyuhgc3kzL8njSnYdI2ELQg8thzoos2xNgsHY6j8FTcbjyty
6q7HiH1db8RpyB6ka+vinI4GIJb/AEgJeLKh7HjXVUK49AFnPdFIjdVlRYRZitGKgdACmsjjsbKg
K8mBnEeKGKb27dGVhDO/QrTdVCw+MwcEvjVmJU8QOpA6ogkaPbLwR7SpigCUpEyUIlXAAgyPaR1R
F1DQRpGqLdMHomBzagyR6kx+lD1J/uqocZM5WlFkgHaJ0RmySYuvzYEGmuEx3jLug59mXWAzNlJi
Nx1ZbDkAMnhxOuQIEQ5HyQ5DEyM8B6KqW1IA6qWJX01RhDGhbBm9N2CDB0epC2LCTA6ltF0fAs9T
Grl/0hRr4nIoFVeFCk/qI7p6gW1VxhsAbwQTNEEz6k/3eyCAAoEo20STErKg6DoxFDaiidApQigY
ohGyJ6oenDwS9qUIqhk1x8EPSj4J7agyBj0InsgKIjVk+ggjmiBP0hu6Bxqj/LBbpopCJEMiqI8o
iyUadPinQkysjEgHqeiCJLGytzwvIHaLICjMcH1+nwUwF0aoYMMkhjMfgEXp5Xa0D8FJQBQQzXyA
kCLYkfJSobm8w1Tjo3CBtnSPRDuHB+afcIOmhABZkNpTjhBwgb2sgQnETOhpsh0nanWRsga2BJMP
BPMgyBnYlAJzahtRCAlsEQilMqonDoIbS6CgSOiJkYiUGIUUSDI0bKBKCNGAqCQ1RsgoAiISkGVC
WRMlsiIVNJKIJRCMBAlJlF+yc2oEKIbiGSkYij2qhKMI9qMRQEyPaUbIwgTtKPajdBQEIoIOgqAj
CJBEGWQRMjRQR6IkEC2RMhqgxVA2o9qIOlOgJtUEfdBA12RMjCBKyC2oMjdBATI2QRhAW1Daj3IO
igyDonRMiaMlB0lBiqDcIOksUe1AZKAKSQgEC0HRIBAp0YSEoFAEaJGCgJBkpAkIEmAKG1kboOgJ
kbIOjdAGRI9yHVUBGyDI3QExQ1SklRBuggjRSe6CN9UEFVy9vuCnHhZwGLHInVRl5d+8Pvliig0Y
o/gZG71vVn/Dj6c57fLZBi6bR7kjg8/abDDIA5CXB0V0U2X/APjXX/abKpYkBssrqjFpm6VgkJRl
X+qeEfZIpmyPO4/KzxzGN/EwzDR9xKiML/RhxPr+rKVVUapV2Zh+uIhssGwboy2wfBdISopULDJQ
2pCI/ioHGig0Uz+aV+aodAih5U1r8UWqIcLInCQgil6IOkoIFO6DBJQQHogk/mh+aA0aSh+aBSMJ
ASggNBEggNBEggNBEjQBkYRI1YDdB0AgiDcoOiRoA6DokAoo+6CCCD//2Q==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/baseplate/corner_wire_BL.gif

R0lGODlhBAAEALMAAP///+Hh4fz8/Pr6+urq6vDw8P39/eLi4unp6fHx8QAAAAAAAAAAAAAAAAAA
AAAAACH5BAAAAAAALAAAAAAEAAQAAAQLMBgAUKIjFAEEOREAOw==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/content/ads/advertisement.gif

R0lGODlhOwAFALMAAAAAAP////7+/v39/cDAwL+/v76+vr29vf///wAAAAAAAAAAAAAAAAAAAAAA
AAAAACH5BAEAAAgALAAAAAA7AAUAAARjMBQiAplB1iKmkcSRGUUhYQJJBKoWCGu5fhJIvpypmXA9
ZjqeSzewZCymUm1DWdWCxmenQrhRljofi1cyfZIgb4d7KnWAz99GCaxof1mh6eqD0pJs1rGr990v
J058WTOAd2gRADs=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/util/email.gif

R0lGODlhEQAOANUAAM8AAc4AAs0AAcwAAcsAA8sABP/9/vn3+Nza2//+/7Gvsvb099za3a+us/Tz
+K+vsa6usP7///L29fj6+a+xsK6wr6yxrf7//a6wq/7/+////bCwrq+vrbCvq6+urPr29c0AAM0B
AMwAAMwBAMsAAMsBAMgAAMwCAv////7+/vr6+vn5+fb29vX19fT09Nvb29ra2rCwsK+vr66urv//
/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAADQALAAAAAARAA4AAAZ/QJpw
SCwaj8ZZTMaUxZQzmSdGXKZQWOwVtYEQZSlZdosSWwTDGfahuSQSqEokUSmBhLEtJ4OKPBIgIwAE
JCE0YigIERAKDQYMAwMnhSQiMiovKyoqBxMrK5EgAiYFhzAsLS0OHy4tEgsvFSMiQk0PDxgyEBQd
txwBSMHCw8REQQA7

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/UGC/ugc_TL.gif

R0lGODlhBAAEALMAAP////X6/+7y+O70++Tr9OXs9PX4+/f5/OTs9ePr9PP4/u3z+gAAAAAAAAAA
AAAAACH5BAAAAAAALAAAAAAEAAQAAAQMEABTgEDjJBXICkEEADs=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/global/ugc-open-arrow.gif

R0lGODlhDAALALMAAEF4rleIuFCDtZS004mszujx+WqWwdvn8/H3/bTL4j93rb/T5z11rPX6/wAA
AAAAACH5BAAAAAAALAAAAAAMAAsAAAQusMlJp2I4Z9WI/kRTCB8mFFJSMgllfEZ1ABlwVM2QDXiD
BIwAotdYMBZECZISAQA7

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/global/ugc-close-arrow.gif

R0lGODlhDAALALMAAEF4rleIuFCDtZS004mszujx+WqWwdvn8/H3/bTL4j93rb/T5z11rPX6/wAA
AAAAACH5BAAAAAAALAAAAAAMAAsAAAQosDVFiryYMZFw1oxxeA2oAQPymUywXKz5lrELm6h6ayKp
cSQJxUKKAAA7

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/UGC/b_ugc_TL.gif

R0lGODlhBAAEALMAAP////X6//H3/fH2++/1/PP5/vj6/ezz+u30+/n7/f3+/vP4/gAAAAAAAAAA
AAAAACH5BAAAAAAALAAAAAAEAAQAAAQMMIRCgjhmDQVQAkAEADs=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/util/loading.gif

R0lGODlhHgAeAMQAAP////f39+/v7+bm5t7e3tbW1szMzMXFxb29vbW1ta2traWlpZmZmYyMjISE
hHt7e3Nzc2ZmZmZmZlpaWkpKSjMzM////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C05F
VFNDQVBFMi4wAwEAAAAh+QQJCAAWACwAAAkAGQATAAAFmqAljqR4MA2DBGXbBk4ky9Dg3vCsQ4Ir
JImeiGVB6GSLloBSqVCEpMUR0lo0m0kLUNF47BrEkfWa9eqyNwvTKZ5Cb0DS4BiBKBa2dOlAj6D1
JAUxMg8HgEUyCiQCBW8DBgZ5I3MzhjcCkJBhWjoJaY+ZkhYCOgYiAggqQpiZmxYGDg4IIwkMtp4i
AwWNhxa2v70utbfBL6krNyEAIfkECQgAFgAsAAAFABUAFwAABZ6gJYrINC1jqqZD5VbIKovMWzGz
XNhJLi+uxujAaDAQAd8o4Ig4nZCBkvmsQgTLwyEp4iKqTpQl8HA+uKkFGEKqxiyJhKJRfkIaye/z
XX+KVXUPI2pWWCtaLGAREAoLUj4HihF/PgVNZgczBQwMmSMCBYYyApycBUopBqUMBqhLqwRdBAYE
aCsECgqnIgUGvruuFr7DwbzDwK4Bs7UpIQAh+QQJCAAWACwAAAIAFQAXAAAFm6AljqQ4QBU0lGwZ
VXDUzhZs04bjIOMbz4KIMGIwoVSzxDCSoLEGy4OThRAqRgdGg4EITEUBxzKCdIbHQohgFCgUvGBR
dbwALxiMBZy0GENEBXh4BSIJCQoND0sQDV6BgoQWikt1LHd5I32LayxuJFB+CgsrTgdoEZVTBWJC
D1ItAwYGpCICBZwtAbKyuF+xu7Rfuru9X7YFwTMhACH5BAkIABYALAAAAgAZABMAAAWcoCWOpCgw
ESOUbCs2Udy49Bjf9UgoSjHCstFiMkGUTowkwYRSiRCVaGVAMiSTBhpDWmGQkEmfK8EVjwrJw+jA
aDAQgVd0kQs4bjEINTey428QKywAAgIAfU9/EXQlAAUGBgWHJQt/ECwDkJB7CQkKDQ94EA1xJJma
e6F4jDSPkUKWgjSFpooQCgt7fBYHiou7JAV3MQ9qwEcFsiwhACH5BAkIABYALAQAAgAYABMAAAWX
oCWOooAwiECuLJkwcNLOJGzTo1AUw/jGI4TDYSAFDEiDyhI4IQIiQ2QaWVoGSUNvlqBGZKJj0so6
eLcirHZ0YDRQUItiisAFHN4IBI1j4vN6ZDRxCIALOQkJgisLeRAlFBUVFIKJCg0PXhANUAuSkock
mV6hJJ6fpSKNmouRkywDgBAKC3yJM2aGfSsFfxEPB7stOossIQAh+QQJCAAWACwJAAIAEwAXAAAF
mqAlBoRBBGKqroXhFmucurQst29aKAohkyaUhcAoMgS2lcHIMCRVBSZydWA0GAhhlQFTBRyRcBgy
SH7FaMg0JkSgw4tU4HAQphZvyOgRfgQSCQoNfGIQDShuYgiEYnEriWEIeGlrKYQPFgNvERAKC2Up
dKGbEY5JBWB9B08qAgWVDRUVpqwJsrJdrAy3FQysIgi8oL8LExMIKiEAIfkECQgAFgAsCQAFABMA
FwAABZWgJY6kNRSFUK6jYLxGwK4DbAxz6cJyeTANBqJXu5UCjohSCcHNkMsoRMXqIaLKxSiA6o0W
WIgosGAwFoFEQtF4SBuygtlccEe1Jfm8AJZSSWVnJlgREAoLTiIoIweEEXg5BUlKDwc5OikkCkoI
lySNS4mXCVEJNBAVTSIGUX8jERWxESMIDg4GLLG6nq+6s7wmqKqXIQAh+QQJCAAWACwEAAkAGAAT
AAAFn6AljuLBNAwSkGxrBU4ky9DguvCsQ8LNrhaETrYYAQQCgM+yGEJEgILBUFCSEglF47FrrAbT
qY3E1RVZ4PB41Nz1WFJqazCMQBSLtQV5O9QjZ0skBTEyDweCCxUVDSQCBW8lDAwFg4uLCT4Fk5OR
DJcVDD4GnAwGIwOgCCICDBEMbwSlQCIIExOBDTONIgUKCgSCFkPCLroyvMWOrrCCIQA7

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/UGC/b_ugc_BL.gif

R0lGODlhBAAEALMAAP////X6//H3/fH2++/1/PP5/vj6/ezz+u30+/n7/f3+/vP4/gAAAAAAAAAA
AAAAACH5BAAAAAAALAAAAAAEAAQAAAQMECUA1lAgiGNCKEQEADs=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/UGC/ugc_BL.gif

R0lGODlhBAAEALMAAP////X6/+3z+u/z+Ofu9fj6/Pb5+/L4/ePr9ePq893m8ezy+gAAAAAAAAAA
AAAAACH5BAAAAAAALAAAAAAEAAQAAAQMMIkQDDoBDLUAKEQEADs=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/baseplate/corner_wire_TL.gif

R0lGODlhBAAEALMAAP///+Hh4erq6vz8/P39/eLi4vDw8PHx8fr6+gAAAAAAAAAAAAAAAAAAAAAA
AAAAACH5BAAAAAAALAAAAAAEAAQAAAQKEAxRUDDzABDIjgA7

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/.element/img/2.0/global/misc/money_125x70.gif

R0lGODlhfQBGANUAAP///+Xl5dPT09LS0tTU1Obm5tbW1tfX1+zs7Ovr69XV1fHx8efn5/Dw8PLy
8t3d3eTk5N7e3tjY2Nra2uPj4/n5+e3t7fPz89nZ2e/v7+7u7v7+/tzc3Pj4+PX19dHR0fT09Orq
6vf39/v7+/z8/Pb29ujo6N/f3/39/fr6+unp6dvb2+Li4uHh4eDg4AAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAAAALAAAAAB9AEYAAAb/wIBw
GCgQhwVj8ng0Mp9QovM5RUKrRSFWS0wBvuCwOBwYm8/otHrNbrMLbnE5Tq/b7+t5XY/v+/9pfHGC
gIWGd3wdboSHjY6BYQgVbYyPlpdwYAgIinmXn6AAmV8Jm5NqlaGqfaMACAkJFqdoqau2dHywm5yQ
t754uaW7nWa1v8dnuZulscRyyNCUka+7sbNk0dm9Xw7Ur8LXX8bayHwkFsy6peHj5L+CKBca6psW
zu3ut62D+f34Y//6hdq3SKA7gmxSBDR4KQqXKAwj5lkokZyQihgBUswI7SJHjh4/YgwpUiLJkgxP
ohSocmW+li4tIoypDSbNaDZvltuosyHP/56PcgLV93PoIaFGVSFNCqoIU5xFn/pZKjVo1KqI/l0I
kSRFihAhPIRxUKABGAcMFhRY4CqJ2wBmAVhYsiSuSKdqSDA4YKCvghIYFBhQAOILgr4GWHwxccCB
AjgPBAyYPHnFFwmSKQ+46kvoCAwGImRYQHqEAgoaCEj4MgFDiAcE2O5dYKBMBAICck9WAIAE7syT
Od8SGuFAggygB5dQoEGFCQUqABwIkCD1asYXFJTRcFuABMojMuQmQJmC3RKkL6S5sECEmAqkCzet
JWJ6gr4QGBTwYMCCBAscKDBCbUI8V8Be2WXCgAICPDDABwMswEBuDk7GFgAeHADcARoAcP8BcCAw
OJkFX5AQmWQfHFBYZJRpQIFmdu1Ry14NHDDBCBtsgAJ/FhzAgQUGQHAABM9p8ECQBtA2x4QETDhZ
ARwIMCRlZnnwG3AROjAZhLllhkFvEwyg22QEdMDiZC5qdqEdObkwQQYHIPBFjrRlIIEBKlAgGAQQ
GPAAbX0p+QUDuPU4GQfkQdAClQB0NwAEAZA3AAcgTACcpZTJRQBuCNQ4GQV65nbAAhocAKEB8rFZ
ywkrwKneWQfYaUCsoEFQQF8MBDDrAo8NKgABDbD4WwIBUMaWAZtO0IEIHFC2gZaTsbABBplG8KsA
Djiw6AAHAADBrxKIUIKpH8QoYyATNCD/AR8XGJDBBAfYN6SuGGBwwQQGNGCAgrg1oEGXuYHw4mRm
bUoABBV0UACX2UomwAIbrJBpZFdOltsGIeIGgpYfGKAjMLUkcEAIJ6zrHgAhGKCBBBGcYNwJDFBg
gAMHRKCvoAAQKkAGDpD36wEVDBwhAJsKgHAH3+bmgQNdOrBBs5M1ipsC+YEaAAUjACCBAk0W8GAB
G/SBFxoTTHBBcQdIEK/KGEQwggQYoKUnAC4TS5uCvzYgAoObIlwAihkAwDcHFVRwogAeFq1esx98
0KgAgonQQQYscEDBFwUQoEDZkzmjqhoX2NhAA8SaIASvD+Q8ncAG9Ca6oLBtKkEG1v5q/8GCYxYA
gcEPJN3gBQZv6sCZPyrANQQIaDjA5QBUULRkHIQt9jg12ohBrgWYAFoIX2BwwAl9kWIjvtxTvGkD
f//qQQC//laACMi2jxsBJfTcJQHDd5k6okVPLdYXERDRADQgPTwkgQ0jSEAEvBcvG0EADCUojrvA
EAC1RQCAvyFABtTFsgqw71oCYAAAOlC73ERALEwLXv4o1Js+6e9/X2gAbiaDgj9QRRsegCEdKuAA
MdxPMiUAxA2TciUBzORcWEEDZlQjwkIMMYlCFA4UKSHFKU7Eiqt4IhazssVQaLGLuHjIEprgkIdk
wYxF2EIU1HjGMq5RCm60ghbYKIQgAAA7

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/.element/img/2.0/global/misc/125x70.no.photo.gif

R0lGODlhfQBGALMAAIiIiNbW1sHBwaSkpN3d3evr64+Pj7m5uc/Pz+Tk5JaWlp2dncjIyKurq7Ky
svLy8iH5BAAAAAAALAAAAAB9AEYAAAT/8MlJq7046827/2AojmRpnmiqrmzrvnAsz3Rt33iu73zv
/8CgcEgsGo/IpHLJbDqf0Kh0Sq1ar9isdsvter/gsHhMLk8AAMFEkO6gA2YP2pCQsNWcd9yNHtjb
DwkCAggXbwRwCAIEDwSEBRMBg4wSBYMJiJCNl1JoC213DwxonppnAAEDAA6krJ4PBQoAC7IHjQZz
snCuaAxRbwB0dwnBjKwOFW+qDQ9sAAQJuI4AtgVoDw3UDwhvow0FCQoGpk3XBwANd2y2sAAKyaiq
cAEAfg/yEgQIrg+4mp8BsjkY9MnXk2uxZqUJJeEaBWWoHtCzJ4+ArAHnADxweC/erAEgoQcYdOKQ
HhoBo5AFcgcvVcSJEuRlK7RR4yc1xFCdM5ggADkmHDMKKIBLQICbLfHB7BgQ1DVu9QzgCkDPAAIE
Un8u4ZhQjUVS7B56nFcvJioCuOrJgoSgQQME+BikNUBpSyYU0CgwWCRhbaS6e0pwMyBAVdjAKwIc
wDgSsePHkCNLnky5suXLmDNr3sy5s+fPoEOLHk26tOnTqFOrXs26NY4IADs=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/baseplate/corner_wire_BL.gif

R0lGODlhBAAEALMAAP///+Hh4fz8/Pr6+urq6vDw8P39/eLi4unp6fHx8QAAAAAAAAAAAAAAAAAA
AAAAACH5BAAAAAAALAAAAAAEAAQAAAQLMBgAUKIjFAEEOREAOw==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/right_rail/grey_corner_TL.gif

R0lGODlhBAAEAKIAAPn5+fz8/Pb29v////Ly8gAAAAAAAAAAACH5BAAAAAAALAAAAAAEAAQAAAMJ
OBMyQCRAImYCADs=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/most_pop/mp_tl.gif

R0lGODlhBAAEAKIAANhFRtc/QeR+f/LAwPC3uP///8oAAgAAACH5BAAAAAAALAAAAAAEAAQAAAMJ
WEVRYmZAA2YCADs=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/most_pop/mp_header.gif

R0lGODlhhQAVAPcAAMoAAv///+N3eOeKi9hERd9mZ/G7vPvu7vjd3c0PEdUzNc4RE+qZmtEiJPTM
zNxVVu2qq//9/f309NlKS+aIifTJycoBA9pLTMwKDPzv78wMDssFB88WGNlISdpNTueNjvvt7eJy
c/76+uWDhPC3uNxYWdlGR/vr6/vq6v74+NAdH/rn5+WAgc0ND+R8ffrl5c0OEOaGh+WBgtpMTc8Z
G/zy8vje3v319e6tru+xsvbT0+uen8oCBNhBQt1bXPbV1f/+/uufoNhCQ8sEBtlJSt9jZP77+/bU
1Pni4vPHx9AbHfnh4eR+f9c9P8sGCM4VF9Y4Ovjf3/zw8MsHCd1dXuJ1dvTIyM4SFPng4PbW1tlH
SNhDROBqa80QEs4UFvjb2+6vsP78/NtUVf329tQvMeR7fPfX1/339/nk5Prm5vC5uumTlOylpu6s
reFxcu6rrOBoae6ur84TFffY2M8YGvPFxeqYmddAQe+0tfbS0vPExNhFRvzx8dY8Pv3z8/C4udMt
L+JzdP75+dMpK8sDBdQwMtInKfG9vumWl9EkJtxXWOR/gN5fYOiQkd1aW8wJC/jc3OWEhd5hYvG8
vdEgIuiOj9EhI8wICvfa2tc/QfXNzeugofLCwu2nqPC2t99naNU3OeaFhvG6u9MsLuFub+FtbtU2
ONEjJe2mp/vs7PPDw+ykpd1cXd5iY++ztON4eeeMjeqam/nj4/ro6PK/wNpPUOmXmPLBwemVlvTL
y9Y7Pe2pqtY6PNtSU88aHOiPkOBsbdAeINAcHuaJitxZWt5gYeuhotc+QON5evLAwPfZ2e2oqdIl
J9U0NuiSk+BrbNMqLPXPz9tQUeR9fvXOzuBpauN6e+J0deFvcNY5O9U1N8wLDdpOT+qcnfXR0dIm
KON2d/PGxt9kZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAAAALAAAAACFABUA
AAj/AAkEGBiAAYCDBx0QDICwocOHEA82IECgQUQACxc6ELDgosePHwUMFADyokCCCBouyFiypcgA
JCNmzOigY8ubHl/GxInwJEGbAHwO5Jlz5EWCDgwoPUBwJ9GnOp8ePKkwwAOEIqsydKiAIlCHEys6
jCpzIIGGEAY64OrV4wKKRMki7Erg60MFXQcaUEgBoYEAFAg2FMCUoAEFDQloDYCApFCjDwme7Sn4
IOGFh7GOvBzgwE65GIcCkMtZ7+TQhxEEMHDSAIPVCJkWqAzg9cwDiIPOHPkYJkTJiSvbzojb8kDV
GWOCrkw28O7JapGz1jt7q4KBDSpX90zgwV/GCXkT/7B94K1tBmIjm21oO+V2Ad2/pxyN9AGBtNjp
+0bI3OhK3t4NZFBoAx1gAAWtXRfAWSIdQGB4ARTQEHJX/YQQA0ohBppDBDEgwIffFQRAVRIiRKF+
5fll1HKiRaWAUgPqBhuBENjUGgBMkfQaBA9m19lYAuJYIATwfbVhQ7sRdEADPjo4WJAv8ahZADyy
uNWGEwlQlQEHEZSbjFz+xaNqJAl2Y3CwVZcRAxbp5xSHSWZ2JmWwgXajlcbttwADhWHWpWhT6UXf
kuuZKSiaXAYFQZ8FdnQkf+K1FeiMdHJpp6B4ugkhAhQIUF2itIEp40t/MtQkkCI2pIAA+Pn2aKmn
gf1VIKoGvRSjfrVCBsB/Vxr1wKGiPljprsfNWBlyJR6E7EnzHeQcSa8SGKtDyE44kIQvpajsikEe
pGae0OpqG6iABqtVX8K+F99xBxUGgX0FVHVVlOnBueBF6gYInn4BOGAffin6BF9p4KJo33DkbjVp
osNdJWxtuxUHgJo05akrkutdNNxCEmc7U7LILYRcwT5qdGioZ6rZZqilrfYlAA+E3BkDNi2g1Zuw
hsRoZuA611myACgQMgIEfFcwzIV5VnKF5Up1EF12IRTWy3NR1KbTQUs6JUlvTVs11R5pjfXYZJMd
bdlop622Sxev7fbbcG8d99x0p03Ah17X7VBAADs=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/most_pop/mp_bl.gif

R0lGODlhBAAEAKIAAPTJyeeNjssDBfPDw9pLTP///8oAAgAAACH5BAAAAAAALAAAAAAEAAQAAAMJ
SLazVkG8AkgCADs=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/most_pop/stories_up.gif

R0lGODlhOwAIALMAAMoAAv////G7vON3eNhERfvu7tEiJN9mZ/jd3dUzNc4RE/TMzO2qq+aIidxV
VgAAACH5BAAAAAAALAAAAAA7AAgAAAS4EMhJpxnjSMI7UEemSEmXkGfZGcCVVVIAWwUiBAsQ7LxR
FILf6cZjAASCIy8w8NlwsN0MMAiMCILTMQlgFEaKghEpqWKT5En1mq3wZgfcgEBJBxqThixdNZAF
CBhNcQtzM0twRAgsWzEDantLj39ASCcHiowTbzAGdAAOTBJpNhOARwscCwWNaRKeEqGPFFJwTARV
Go1Ut1WTXFWtqRwJcXO5blNlCAEFs7tUzIGjwFZ/S0kDzM4UEQA7

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/most_pop/stories_dwn.gif

R0lGODlhOwAIALMAAP///8oAAvG7vOaIidhEReqZms4RE9EiJPjd3fvu7tUzNfTMzNxVVu2qq+N3
eN9mZyH5BAAAAAAALAAAAAA7AAgAAAS+EMhJKxqjSME7SEWWSEu3SIkwdtx4ZVVsGQcRKECg74hh
EL6TbccACAKC3A7Zq91k0EFgRTgBCAQJwzBKGIpYiZSDzA0oUupiuZMVboPkJJxzTByBaxYgRRyT
AQQYZ28KcRNsUAAFQwcIEnQBZ2J5Qzpnfzk1dIw6jhJtUH4SDZKQezVzB1cKHAoGRmWmE6MApZM5
iouSAlIaepRxUmd0UrGADx0Ib8IBv7oTAwcBBrh0fNMHk8VTmWxn0tRnEQA7

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/most_pop/videos_up.gif

R0lGODlhOwAIALMAAMoAAv///+N3eNhERfG7vPvu7tEiJNxVVtUzNd9mZ/jd3c4RE/TMzOaIieqZ
mu2qqyH5BAAAAAAALAAAAAA7AAgAAAS8EMhJJUJzGDMAGuAiceCAAYYgHFMqJFUsBbLU0F5wCDQR
/AUY7xcgAA4BhY+xMBSUAUaN8qshdABBIdszLh5bXqVgBAwCqoBoQDhNiTVFA8BwcAGEMnLAUwlA
WBIMBAlRf1NUcDENCgZYYnkSZ3xFeQmTE5EJPkkGiACKMVdaEpBlhSk4I2gSCwUOHBJIAp9VUwqv
pT0MAwdkXCUdYJcPAQiFfzwwiKo1Nyx3nEUiQ3ALDgVR0AIKAQW0UxEAOw==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/most_pop/videos_dwn.gif

R0lGODlhOwAIALMAAP///8oAAuaIifG7vNhERc4RE+2qq/jd3eqZmvTMzPvu7tUzNdEiJN9mZ+N3
eNxVViH5BAAAAAAALAAAAAA7AAgAAAS6EMhJaUpznDNAGqAiceCAAYcgGFMqIFUsV04gJYEh2ETg
F7CdL0AAGAKM3kJxKCQDi5m0gmMJCoAdgFBUPLBaSqEIGARUAdGAcKoM3zOGA7BoZHnk42CnEoBy
EwsECFB+U282Mw4MB4BaXBJme0RcCJITkAg9SAdSQ1M4VxKPZIQpiSNnEgoFDRwSRwKHUxIMraM8
CwMGY3clHV+WDwEJhH47MLS0NSx3W0MEIkKfCg0FUM0CDAEFsjIRADs=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/video/world/2008/03/19/vosot.lhasa.riots.ap.60x45.jpg

/9j/4AAQSkZJRgABAQEASABIAAD//gAMQXBwbGVNYXJrCv/bAIQAAQEBAQEBAQEBAQICAQICAwIC
AgICAwMDAgMEBAQEBAQEBAQFBgUEBQYFBAQFBwUGBgYHBwcEBQcIBwcIBgcHBwECAgICAgIDAgID
BwUEBQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcH/8QB
ogAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoLAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ
CgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJ
ChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeI
iYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq
8fLz9PX29/j5+hEAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMz
UvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3
eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna
4uPk5ebn6Onq8vP09fb3+Pn6/8AAEQgALQA8AwEhAAIRAQMRAf/aAAwDAQACEQMRAD8A7DS/B/gf
49+BfEM2h/CXxfam2dZbnStQ8PPq8EW5GZP+PEXUYX91O483axWNuMpz8+/EP9mbW/C2j+E/G/hv
4f6raRa3rCeHtLX+x7rT7O4knaSM+WbhY7VHBjRHWPDnncp2cfC4bM8urRUqFe6t0UrW27epFLgD
xPwNeeTYrA80nanyurRunNe6leabbumla7R8+eKfBPi/w3r/AIx8JXGgXMms6BrN5oerG3gklSK8
tCIpIw0anIV9x3gkEOhBAHPPXcP2a1itr6E2lw7qoWdcGUtwF2uBuJOBtPqPpXqKvSjVcFNX00/r
yPESxFDD08PXp+7vda9TofFWu6NrmhfD3Qp3nl8TWC3Ye4MM9y81qGhMFsnlbptoCSABdqqjEHqM
ew2emfCXQfg9p3i3xlL4hh8VrrI02W2s7WLyYoWjmkjmjhudjSMPs/lPE9xGytkkBdgfppyk4+41
u/xPZorD1aKc5WfZ6M9y+IP7c3wz8ET+E9Xi/Zvt/EOma/Zz60VvbuKC4Ja9urZvNAtrtI3LW0jh
dzjZIh6kiuU0f/goJ8LRbSiX9i9TH5zmLb4kt1AjJyAFbSW2gZIABAAHAr04QdZKlSjeo+i1vbV/
gT9RxdSTdCm5LyTZ8e+EP+Cgnj3RPEXg/wAKfDiLSorfXtd07Smm1bQ7OWe3EjBGZZpZJWt8LcMy
yIAA6RuVLRIw/Rya/wBU8P8AxT0HXPFWvrMYtdgudSaa2sfJacPCrAh4+WKeYyYwwaOJ0IdFYfE4
ThvA4PE0aDi0mpPdbrbW1+r+Tsj9FzLxT4qrSnmanD2snG75ZJbW0SlZX5Vsldq+50H7SKJJ8VPj
X4IWRrbxJ/b/AIu1kwWYIZ7ZhrF3BOCWKl8qmfu4bcSuMFvOP2fdZntvjT8IXnlma0l8WaRH5blC
ysbqBCCy8HAOcjHOPbPdTwFPEVatSqre/p6WX+T/ABPn8JgqOJwXNU3jTbXybZ83fFz4enxj4d8O
XVlZI80Oo3LT3Fuh8xluVs3SKRl5bYVIHJA3EDGSKxvEOi+OPBHwe0/RL6BdY0LVblr6709rXUXm
s7W1iSW4k+2WjLBHEstxE0kMxch1RxGpjYjpw0PY0adBvZ/8E8HF4CisVNSj8L09V6Hi37SeraXp
fxB8K/CrQfDOrx/8I7oNnYR+ZdQ3D3guzc6uJD9pFrLDhb1lMTxEp5YBYlgK+fY/HPhjT2ls/Ece
oW+pIRlYLa1mDKVU5Je5jIbJKkbSPl4JzX02S4v6ljqWKmuZLm09U1+p9Hl+d0sBSVB03Jrttq7n
BeBruWTxv+z34W+WLSofHGlXsMB82R7e6uBYiZxC8pjG4QW6EeWGfyV3uAgr9sPjj8LPGnjDx5b3
vg5Jm0Aaej3MjSwpm8jlnIEhaWKTIUoxI8xCWPDEHHj4i31ujPtGX6Hy9Sl7bCulDe6evzOC/bE+
MvjfxP8AtGfFzXPhrq9rbW638OmQXVxb7nvrHU7V1liMe7aHC304EmN6KJtuXMQX8+fid8ZLPwRr
F/pmi/FrVtI8c6fZQz6aNKjuIzLcy3cJSe01CeGGS0MUMd1Lv2Lh2t/LaUuxh3hb3UlZ7/qdccXV
gvZwlaPLy/J3v+N9T7T/AOCdcHxZ/a8+O3iXwX4+8T6rZeF0sr/XIr7QbC3tLjSZGiM8ErSq0aMj
JzGziYZERAxyPLv2jf2v/Hng1NJ+FS/tLeMvGnwj1nXrifX9P0vxDd29hfaYkqLDDDf/AGyaHUS8
M8gmaTTVhhuLWIRm7VCTx0pwqY6ph4xXupO/m+n3WN8ZhpvB0cwqP3qkpad10l9918jzrwJ8XIPj
/wDtz/FXxd4Q8MzyQ312ml+CrmVcwKsLrBam8CRl0mOjw3Us+3LCa1kChY8Qr87/ALbXhvxN8Bvj
OvhTVbvw9fX97pcesu9lpJ2wefPcKI2DbGDARggNvO1kyx6D1aMHS5b7HEqlP2UWtJ3d/S0bfqff
4/YdutM8Z+HPFIAun05v7Q0vydWtraDT9TgkjuLaSSMiRhCPJEBULKSJ2+7tDj7D8E+Cr7XUN58S
9HvtOvZN6smn6Rod6kD4VhIm7UkQNu3BG2bsAlscA+fFyl70l00GmrWiijq/7HPwQ8Sz+FrrWPip
8S/PsYYbOZbP/hH9M+0QQGY27ymNLsXDR+e6bHTa6qivuCjHxL8bf2IvCVz4z0F/D2k6xeeEYZoI
9RvdR1LSfMj0z7ZavK5eCwsltmS3jujhTctls7hnDbUvaOSc1oZyi3qfol+zFbX/AMNfhxpWmaJq
EsN3PoMek6rEl2l4tv5luq3FvG+ZFh+8T+5I5Csp4Q14F+1D8G/C/ie/+D+saR8MBq+p6d4oGo6h
bxaRJOLy0WH99FcEptdZTBaQkSEgjacFUOJoYGlQr1MRDebu/wCux3YrMsTjcNhsNXatRjyxtpp5
93pv1O7+Hn7O3hjwX+01qGs+Bvh6+lfD25t9P8SRXukx2dhbaZqtpDPp0mmx2sUKzLbzQXC3ch+R
XmR+X3Oi/e+uR6LeXUL6n4TS+mWIIszW1vJtXJO0GQg4yScDj5q9CytueTbW+55TBpdggjYAkhSN
wY9wOwI6Y64/mc6X2e0+ZkYRyMeBtIC57c5/X0rljHTY29oklYtx6XZMWIKhcqWI2DJ/EjPX1p01
jF5mApEYPUTL29wa1jHS4pS0NK3WNYxtkII6fOxA/LANXoLeNz86hwem5T/hWqVk2RdWOhtLdIWi
lhtijYwzCJWwB/vD0rp1sRcIkqLLtI4/cx/40nqmS3rofhta/wDBSmaDOP8Agmp+1uYv+yWX5/8A
clgVtr/wU51eSBEX/gmV+1iyYxuHwYJP/fRuyT35PNfzd/xMYkv+TX8U/wDho/8Avg/nD/iY7RL/
AIhhxT/4aP8A74Ftv+CnrxjzD/wTX/a0ZvRvg1vUY7f8fo/lWkn/AAVD1KREdf8Agml+1qyAYCp8
EyE/P7car/iY5W/5NfxT/wCGj/74D/iY7/q2HFP/AIaP/vglj/4KoyCERt/wTT/a2KbvmI+DrAf+
l3b+lXJP+Cp15JAxg/4JoftezZxhW+DrIDyP41vCRgZxweePel/xMdbbww4p/wDDR/8AfAf8TGpq
3/EMOKf/AA0f/fBUT/grPrQnhX/h17+1cbItiRx8K2LqvqAZTuPtuX611i/8FY1ZVMH/AATA/a5M
eOv/AApuQ5/EX4FJ/SN0f/Gr+Kf/AA0f/fBP/Exnbww4p/8ADR/98H//2Q==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/video/us/2008/03/18/payne.fl.kid.lunchbox.bathroom.wesh.60x45.jpg

/9j/4AAQSkZJRgABAQEASABIAAD//gAMQXBwbGVNYXJrCv/bAIQAAQEBAQEBAQEBAQICAQICAwIC
AgICAwMDAgMEBAQEBAQEBAQFBgUEBQYFBAQFBwUGBgYHBwcEBQcIBwcIBgcHBwECAgICAgIDAgID
BwUEBQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcH/8QB
ogAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoLAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ
CgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJ
ChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeI
iYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq
8fLz9PX29/j5+hEAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMz
UvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3
eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna
4uPk5ebn6Onq8vP09fb3+Pn6/8AAEQgALQA8AwEhAAIRAQMRAf/aAAwDAQACEQMRAD8A/C/4VfBb
4y292l38PdCe51c3+pXBijtPKuLlf7P1++/0SbyGnMjSaQyW0CM3n3n2OJDJuVTq6N+yH468SeDv
hB+0P42sinw28WWWq3+k3sH225uLVtOuniubW8V4sI7XMd40W2SdWRyXaPZIV+bqUKssK6bjpfe1
9NG0vx9bW10NZ1acanJHyX37f1/wT9Cf2Mvh34z+F/xX+HPx7vvhr4h1Dwhomr2GosUsLGd7OISS
y25RLuJ9ssjJE8Png4khGDGU+X+n7w9/wWG+FXhLxtD4I8VeGPiDc6bqcrS2viu68GfadH0JGXKQ
3n2WK0u1IY7f3VteKAMtcY5rLKcw/smFWlP3eaV9t7aevz26dDPH5PHMVDmjdwXe1r/h+p7p4W/4
K6/s03esW/wzvfif4Xu/jN5JuHs5Jb3R7O6TfhVguHivLWWcpgi1iu55ieCiHIH0g3/BRv8AZli/
t77H4hlvxo4jXW/7LvNIuW0WWQqIobuFbzz4JpC2EieJXYjbtDEA/S0c1oYiPutN+TX9I8N5HUw0
r7LzWv8AXmfJfjz/AILh+AvBt8f7K/Zx8Waj4WN/a2yavcXENgsNpPnbfXNpOn22CFcFWUW7y78K
qNnNfang3/gqD+xB4z0K21+H466ZYW8wVo4NSEkM5VkV8tFgvERuKmOURyKyMGRcVjCssRWcIQad
7erSvovTX0PYhhqqjGPxNq+mp+WP/BvZ8BdQ8PfA344fEvxBHpE2la/rljotlbQWssjuml/arpLy
WaaWUzecNWjaPJZlEWWdydw9k/4LBfA/4X/BL/gm38VLT4WfCzQ9K0lPE1v4ilNto08osb6V3DXi
GG3mSByDHaCS4aGCO3cW6sQIbaW6ShPCRjUXvNOyfS/6X123OSrSl/aLcG7XjfztbfXU/CfxB4q0
HwPp2neHtLu7rTZ7ybTbPSbnRrL7RFaGFp7hElSZo2W0kFqLV2cx4Fwod4s7080b46eIR8M9O1vU
viXb6fbRWGl6/f3+p6YsVyuhajPA0NwIrazvIvPAinslhGQTM8rFfLjMnyuJpxqTk6lNN3eqduu1
u2uh9JRcopNSt8vJG5qfjD4n6/rviuLTrX4e6r4TtfEtr4WtbVYNTt9Slv4WtZNSt5BeNFAzi1N9
dRtEzqFgjX98WJHyv8bNJ8Jz2GnXXhTwroekfEi3Fs99Poeq6V9t02RsiVmiiZ5JI1U+Ydu9yrqV
VipI540KCtKlKSku6vr6rsbupN6NJp/11PkHQfEv7T/hbUfiH4N8IePtWtrldZludcFpfz2cOrXK
3EqwSTx25QyuIoUYysSztJtyEV0k7/w/+1r+1D4WtrnwxqtloMl3YSiH7Vrei6ZqV7eho45PNlvL
y1kubg5kK75ZJGwmN2AFHt5HUqYnNKGEk2+ZNv15ZP8ATuaf2dGcrWtpdW7H9H3/AARi/bqg+CX7
POp/Ab4g+K9Fs/Cvh3xReWfh3T9U07UInNndxWuplre5srOaOZWu7+8QmaR5N67FCIihrX/BVP8A
bh1b9oX4cN8OvC+NN+EsOr6aJ/sczynXZFvogZ2Z442FuFGY4Sin5jI+WKLFEsU4UFSum9OvvLZ7
W7de1meM8JH2yr20e3a+29+5+TXhr9r6y0fxEbzRPBA1DRr/AFafwu8b6rBHc2E9gtxIXkW3NwuW
8qfMDbJNtxbs3lmN4n9U1b9sG0bT7iF/g0965Vl+zG7LCYMNrD97bpGQwJBy6jHBOK8TEUuaak5f
1v8AqfW4PK3OjdVFffa+t2rXvb7JP4H+OPws0TwpZaXe/Cv7DdSyR3t+mm6TYQJdX7KiSzmKNwok
bGCdzkAAb2AFfJvxs/ad/wCCaa+I/FXgr4t6DFB4xXa+qI2nCG6HnQxMHM1vMJBvRozkMMkIfvAY
VKniZSaw8n8r7f1YjEZb7CkqmIlFLTfv8k/zPK9G+KXwK0TXtf8AH2p+PbTTfh34iuIZtE1HWrxk
+2o26SIb5nZ3kMTBiWbceSSTzUviKT4c/ELWr/xT4C8SWOr+HZisaXunzpLC7xoqOu5eMqykEdiM
V9Fw3RrLPsLUcbaSV9tVTlc3jG1SCjJaQXVX9bN3t5n2p8ENX1q2+B2tzR6RdXEem20g0SzMJjmu
Y3s4bkCIKGZxLczzvG3zlhICOCAPmX4s/HHxVdw+CPCur/C7VNPS71rT7f7ZfW88McrqZHWBWlhV
nciEnaM8EnnmvIpx5K1Zxvqor8E9z568J0Y88rb2031+48r8L+GJrLU7TUI9N1S1ivvH+ra4V1Ox
Nv5onsrkeZCdx8+3YnMcwC7h/D8uT728KfKruoc5CcjkrgkDnnAIJHvWeI+O3p/6Sj7DKnCnhlzS
Wl9f+356jXsmmCru+UMGxgdAQccHv0r8N/26fgVrHiT9qXxT4ytvhj40u7KS504nVrDRZJ9JCx20
CsWmVT8ibP3jfw4YZ4rqyuSjibvTT/I5uIrSwFk+qPd/2kfht/wkX7GnwD0zRvDHiHU9R0vxOrG0
8OaUb+8t4oLSNEeeIENHDn5S/TdgV7L+x54b1DR/g8mmSaLd27RancHyL2zeGeLescmJEOSrfPyP
XP1r6TKGvrWHcna05t/OMvu6HkV5Qjj43lZeyj+h+sPwz0bxDZfsteJ4tCv5YfFElpqP9n3AfD2k
5keK3YF0YKUIjIGxgu0DBAxX4+3XwS+NlpZaTpF/4wsbGxsNVt9dSK21NpLV9Qt9zxaiq+Qm24UP
IAUIUE8BOcfI+0jSm2276f8ApETzlT5qcbvb/NntE0f7QCa5Z+JNQ+MVxfW1pAy27ayzatHbSu24
ALckxvERsXyShz5a/MduKxtC+GE03iTTPHesfE/Wb7xxb6imoean2Y27XKb/AJws8bzA790m55nB
bDdhjKeKjvq/6+8XJFWu20fRfhzV/F/hzSE0nSfF/iOW1gaSVftGv3ck3JyW8xZMnJw2CVGXyeSW
rXu/iT42SPybTxlr4ccE/wBt3pC8EAEs5zz2wOnbvhPFVpPm52vTT8rGc3F7R/MktPif8RvIihfx
5reGJO9dcuRkEgDhmIJGfXpz3zWVqXi3xVq9ybnUNV1G6uANnmzXbSNgEnALBiBknjPf3yfRyWrU
nmdGNSTa97rf7MjK1N9GfnrF/wAFBfGMUP2bT/2f/wBpO00hkULZWXguSK3GMDhReY5+8TjqTxzx
r6v+3/c6/rA1W+/Y4+PL/KQyr8NhkHJO1n+1bpAM8bj04xiv5xj4/wAqsvZ0fDXiWUn0/sq7dl5V
77fgfzxP6T0alKnTfhTxUuTtk2+2/wDtOuxlR/t8OoXy/wBj346tanhYj8N1IZPvFGY3R3rnjGBw
c5yAK2W/b+jme+nT9iv4+JdSNkOnw/DKCORlTcdjnAzxweelYx8ePbTUKXhtxM5Posqu+7tauc//
ABMvF6f8Qr4r/wDDP/8AfBgzft5wy2pgi/Yw+O7xMcqJPAWQ2cBuftHPGMYHYA5oT9ueWESpp/7G
nx2jViN7f8K33OTgBvm+1AgnA59icZY1cPHt1Zezp+GvE0pPosqu/wD0+35h/wATLRf/ADaziv8A
8M//AN8GRH+28qCH7P8AsgfHgJuMu5fh+4LPjCsGF5kkZxkkkgAVfT9t55gWl/Y/+Pu/PRPhzkL3
IyLsZwc8kZP6V2ZV9IT2GPpVF4a8TStfSOVXb91rRe387+hD+krfbws4r/8ADP8A/fB//9k=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/video/us/2008/03/19/von.ca.iraq.protest.kron.60x45.jpg

/9j/4AAQSkZJRgABAQEASABIAAD//gAMQXBwbGVNYXJrCv/bAIQAAQEBAQEBAQEBAQICAQICAwIC
AgICAwMDAgMEBAQEBAQEBAQFBgUEBQYFBAQFBwUGBgYHBwcEBQcIBwcIBgcHBwECAgICAgIDAgID
BwUEBQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcH/8QB
ogAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoLAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ
CgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJ
ChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeI
iYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq
8fLz9PX29/j5+hEAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMz
UvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3
eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna
4uPk5ebn6Onq8vP09fb3+Pn6/8AAEQgALQA8AwEhAAIRAQMRAf/aAAwDAQACEQMRAD8A/nV8X240
qzk1KLQ44L6/E0sipBGCgCuz7AMAbd3TJ4GMDjPceEvhFpPjGHwTb2vjrRtE169S3lF94l1GC0sr
OB1md53a4/eyEMmz9wk3zDaqsc7fnlTmnF83vNq3p1/P7kzfBU4OtOMkk5Rsm3ZJtxV23ZJXaX39
j6/uf2E/D2mfDTxL41vv2hfhdr+g20MK6nc6D4mmurhnBJihjjksS8crRwzFdyrkqfQKfjzWvhnN
PJ4n0zwpocV34d0LTbaa5vILK52SGV9izqs2XBeZ4rcttCM8oKqqlRXW/wB5P3bpLst9977aW27H
TUoRfutpzdlFprZNafpd7Xa7W7rSv2adc8UXEU1j4els9IvL9LG0uLy50+OK4nfzXMcUryIscLfa
bcswEgjYncNuwn0D4y/sieI/hppk3jbxHqXw9vrC1hhvNUsvDmq3mq6npWms8dok12IwLVFDuluh
a4iEsq7EOdxEqNSzm3a3b8vutf03OeqoQiqiS5nbSSejTurLz1VrdNbXPQPGHwu/YX8PwatfXM/x
F1S30vw9qWsR6bYCBrHU9VthYpp9jA8mmn7LZzfaL1pLq6EbwrZSnbK8sW78/viF4j8NzeMNavYf
hhoE1jO6S2i3E17FLbW+xViicQzRxMVVQAY441xtGxSCK3w/LKrScqXdtSem2zcXdtN3umlp8jbF
UMFQqfupQrqV2rOoko9PijTd+3S17pWR976f+yZ8QfjJa23hwJPpXiKfURDpirpEt2NYMlpJJKIX
iO2XKSwjEfmZ/fZ2tCA3A/Fj9k9/ge9jpfjz4n32g+JYp4bO80mTQrgvbIIVkSTZNc/aFlkizcvE
0UUaiWMRsyt8gqSlSdSTV10vr6/n+ZxYjkqTbV/h9xLdxuve9L/e7vRK5ieNvEHw91Lwe3iXR/HQ
NybK7sJ9B0vSE0+OeX980d7IyOSUCLGgj++kjnbJtdg3a/C3QPg58XvEGhJ438YHSLeG9khspNLg
s7eI273EzwE7pIpnO5vKaWYx7POwvBU1lOTb572trf8AF7fO3pc1ppOpG8eeLs3p0Uk3btZ7NdX8
j7W8c+JvhD8MtO8ReC/GegiHxabTVrNZNUtTcvpd1bm6WBbixmDW0d000McBaETIJnMbygIZl5yH
SW+MXia4u/ir8LNLs7bT7VtM03wvpfjbStLtPB99LHBChnXWL5rmBpJ9LeOC0tpYFB0y9EaytcXM
r1SlGtLkqJxb0d9E3e90rt35rJu22mqu36uZc2OdaEJ2k4vdq/LZNPmsk5xVlorKN+VX5nLzL4+W
/wAPPAPiT4d22kaZajwpq9sl/r7WGteG9fiksIVFi7PJoEaPmXyxttzJMhdZ3RrdWKN4Jonhf9nz
7PeLq3hp59SF3P5k97dwRPIrSM0eBK6PtWNo0+ZQcoQeQaeAdGeNpUaq/dXls9bWdlrdqz01vovP
TmjLDY9Rr4uNuWMY2V027W5nJxs3Llu22pSbu00rnhc/xH+IOieJl0zWnS/WWSHU7m3025hura7J
VZI4GeCSQzAfuQyGR3Upsk2EFEyYvHHiLxPa3tprckEEUU9zNYwz2jNFcyzi4aSGOAR4ZpHlKq0m
fKEigLzmso3jzO6Z59LEc1SMlZKSSvaySaT0Vtl2etrnTX+t3OkTaXPc6g39l3oit7tzCLmHTLZZ
ZIo4o4pYo0YxwsbgQi5VSDHuGFZm6Lxh4m8PY8At8P8ATtSj1DzbjT4bh7OPTgYWFuLSRYrOaVIr
gruSeTcFkVQQvAWNe66bUVd6Xvr036232W/3HbOpKlWkozS9m5clu17vVdbpNafC2umvFaz4j1Xx
k11qVlpQup3EFqVRlAeTa20DYAEZ/wB6xXfuZ4UIAyQcGDxjrPh/WLZ/D2lztq6eX9lglMszIxdX
LNE67MPJOwwRywD7izFniNPlqr2btH/Lb53+70Kx2YUMT7XEzp/vWk73ldz91Sb1abaTb00cr3Pt
/wDZi8AeING8K+M/EfidJtJ8X37iztm1a0gRopI9gil/0iRMmV5nQI4X5kVSwL709Ih/Zy+GmsSX
mp+IXdtcnnee7exVUheaQ75GXGoMDlmY/KxUZ2jhQB6mVxxLzGOIwNFVquqUHHnXwu/u6p9XtpZd
kaZfPHcieW4ZVqmrqQlDns2/iUddLJK9vdbavaSR8Z33i1tBs/GNjDpc9n4Dv/FtoPt2nWRhg1GW
0aQzWkxu4FF0he6t7h7QxOYUkQBYwyeXe1H4wfD/AFJLl7C20+yVBqVzbW+l/DvQGa232k0ens1z
IoklNtLNHcs8ksizixZCIxK5k86LvGL5GvK+219t9flufPxV43nP3r9+99PPz6drlzQPil8PLzS7
0a54t1Y6YNJGkXGk6RYnSdH1SdzIYLu4sbXfaG7HmXUsEcsUscJeUeY4jgkh8k0DUpLNb9JfE2n3
kFppdtdpdz7pY7S9fyTCrRy7lMkaqwKqpVmDKTwpVL2kqk+aPLGyafd9U/Sy+TXmKnWnKtJTvLaz
XZ2ve/Z+Vn16nlraja+HpF0yyI/teWbNvco8UaIjAqFkPCj5mbc7tkBwCAF2t9M/s4abb65rdzqH
jXTJDfQvHcW3mx+VBBMJlmEiSNIEhm3DY3ypEsO7eVc7hSi53l1f5a/5lTfsMQoRXwuz83f8tLab
n0F4m8XeFX+Kun6PH4EvfFmp3MEWnaPp9sdQ+z3V/JOsebe0i/eSeYjSRiFRvYtDK5XyTGfmXXPi
/wCNr/WNQ1Dwv8Wr3StIndZI7Gx8U6tHFbjaqqoWJnQFVVVwGONuMnFdOCzDG5diI4rAYmVGtDWM
6cnCaunF2nG0ldOzs9m07ps9enj8yyuhHNMlrV8PNfuqtalUnBNzvOMOaHLa6g5crk+ZwctOWy9o
i+DPgDxD4y+JvjDwTYahH4A1ea4bwncaPcMllpt2wF1cRLc2UUcIlhjuT5MUkZWKLy1ePAKC9r/g
ax8W61png+L4YWzeAorO71fU7EXemaVd6Ld3ZMsFxcXf2t/NluI5zNFGZ7rfaxQyraTJamNa5FSk
pTvHRuPW6vq/yuu9u+vz+Eo18XRqV8PFzjTaU2k+WN2klJ7Ru5JLVJ3sevp+zBpHgrxF40+KXxM1
C/8AEbXGuWXjh4oLh2F6sd1LPNPcLNAq3LS5nDTNbcJcSH5WyJPmb9r7Rfhh4VuPCPizwRDdJe+I
rEHULadbRdPsJIrKzjj+xWtvDH9m2o0nylriP/SmMZjZF3XKlUpUVTi04uzlvp2tr+a69joXs4Un
NNpx16b/AHf1a/kvAPgZ8LdQ+I/i3U5Hgh+waXcJcz2zu4YNN5nl7EIIb5olBViCB1yRtr7g+Gvi
WwuviF4z8LfELw1pKaJosohtIpJHs4r9vLUnM9sIk2qksMmxTlWaIBirHfyTuotJ2tttr/w+xnSn
KUva93/m+z/rrodD8XPC/wAK/GVppmjeAtP0/S7mO6W9mmt9WN/NORlTCFkuIwinK4fBcFD83asF
fgF8Ar63trvx5pniGLxJIHkmj0LVtPtLJFaR2URx3dtdzZAPzM1xJubcc81hS5XWhK/ff0+X5m7c
VTStp5/0v66Hlej/APBZr49W9hBpMfw9/aTnu44wiRWWj6haoAOFVUGoSlAAMcZ6dBivm74lft5/
HHx/8VPDXxK8U/Az9oDUJdKiEOl6brvhG4vrWyt5MJcL5dzM5lLqp+ZWiDZKOHTaF/naP0i1yqP/
ABDLift/yKF/80L8j+W6P0gKtGSk/DPim3/Ypfy/5iDxu/8A2wPHWsfFWTxLb/sufFGbw6JWtrfT
W8Fzs0diXfB8sTHM+1ydxkOGwuSor2L42ftg3nxQ8PvYaj+yP8b/AO37i+F150/w+khWwieTfK0H
+lyGWRiAA0gIGxcfMN1E/pH13HkpeGnE65mub/hJ6XvK3+0bvXtvc9On9IqmnUeJ8MOKmuWSillG
jk17vN/tK0Wje7drdblP4dftl+GvAuh2WhaD+yt8bpdUAC3LL4FQPekZ2mYrdFpQu5lRCMKB/Fxt
6zXf26/EOkeGdQi8D/scfGS08b312lxdz6h8PGEM8YURjJSfexCIoXgAEHnrm39I7mVl4ZcUX/7F
P/3wYR+kTKmrrww4pWn/AEKfL/sI7HzEf2ufixqGqrcJ+zb8U3uxKZglt4b1eJ1kcncU2Xh8snLD
KjvXqGn/ALbfxj0e2S11D9jP4sXdyTvNxqnhnULm4kB6Zkmy7AY2jJOAAB0rD/iYdOSa8MuKL/8A
Yp8un+0afIVT6RVeUFGXhnxTyra+Uuyv2/2jr17n/9k=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/video/us/2008/03/19/chetry.lotto.winners.interview.cnn.60x45.jpg

/9j/4AAQSkZJRgABAQEASABIAAD//gAMQXBwbGVNYXJrCv/bAIQAAQEBAQEBAQEBAQICAQICAwIC
AgICAwMDAgMEBAQEBAQEBAQFBgUEBQYFBAQFBwUGBgYHBwcEBQcIBwcIBgcHBwECAgICAgIDAgID
BwUEBQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcH/8QB
ogAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoLAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ
CgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJ
ChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeI
iYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq
8fLz9PX29/j5+hEAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMz
UvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3
eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna
4uPk5ebn6Onq8vP09fb3+Pn6/8AAEQgALQA8AwEhAAIRAQMRAf/aAAwDAQACEQMRAD8A6O/+J/xD
sJfA/wAJ/EmseINc8Z+JbV9P0i+sZLWCya5ZhBEha+1FZYZA81ogMlyvmyzxpHJ5j7F5n4j/ALSE
Hws/4Qjwh8Q9E8W6R4+8TJE+iiHQtOuotVdY4JMwWtnfPdG2uTI0cTLcZkkiuIIbhpraVU+KpZdK
tRcotLp5p2Wu3+fl1PooYzB08R9alhuaM6sayhKS5VThOrzUJcsVJ8/urmi6ei+B3i4/bWseHfFW
i2tpf3GvaomraVps1rqGmGKyl1K+miUM6QrFIlh9rkliVGYpNH1W3MCySO/kvwj+LHhf4x6z42v/
AAx4+8Q2k+gQxG7tNRtrJbi/tJWuBZXEKRmS2gjna3vAbee2g1JHt0Ey26bI5uVwp07Rc7ybVtNX
ZK+yWmj7ay2eiOypicNjVWx9LCKlToxqR9nFxt+/lX9nLmlCTl7GVSmkpKVSUYL95BKPJJ4q/aK8
AfCz4xeAPh94k1jxLqN34qtrCKG6GjNLZaU95dNbWIupYWihtQ8yzR4Fq8pZl82UIkSj1yy8NXPh
ldP09fGur6rHLchYzHHHPHbRoETE00yPKAVG93kmLPI0nlhVKRJcYKU+eEm3F6x2vdJ2d7bLbb82
/Xo0sNPm4erUsPR9onBYqpJuMZUKlaTnGUOayraU5fxE7RcGo2hHj5vC2r6LZaP4SfxbqzlLaSOP
U7eBJt21pDGJZLxLl2l2Mu6SVtrtGuANxSq9lo82mWsdlc3yzyxlh5gE5yu47QTNJLIxC4BZnYkj
PGcD1sjtQzShL2akoc2krtSvB72kpaX7rVbtaPgzHM6DpzxcMJQ/2txqezjFpUPZutT5EoyTXtE1
UaU4x2/dpclvDfAdnZeE7LSPFNj4oni0+z0WUw+MF1eC3fTbSaN2laJIY47SCBY4rYjYgiKqCy4i
Bf1a4vNcvtalT4galqiaLaQmO38bat4mgmeWdhYLETZzg2yNPNPcJ5RhEO6zTEZE0ap5kp1aMb05
Pl2fvcto21l8vK3UeChSxOMq1cXCMcQ5Oqk6M698TGdb2eEcXf3a+nMpqre0VL/l4jjPi03hDXPH
Wg248W66fEi6bdWGn2um6w41TVJUVmDWzXCzPJKkrRTzSZXzhEvntMY4Ur5a8U/C++1nxB8a/H/h
PxPqlt4A0PwJDpup+GntXhvbLWLD7RPM0l+UhkNtFBLFIEWT98+obzGpiwFh3ga2YQy+cX7Zxcoz
e10rJaPVySk23e3KrXbsufF18/jltTN3FUsO1Kk4Ri4KUalSrJ8sfhjCFSo4RVPlgrSTScZuXyT4
E/aO8f8AxB+Ih8A/DfwDDeeMry/tl8M2eo6n9sDS2bJdyLeNeMxcEWn2iMQTW4gdDIA77pq/Tv8A
ZIv9OuvC1vaeI7fUtP8AHcWoSWWr6V9s1C0t9Mu4AB5S2g8uJBs8o+X5fO7MjSyNJI3nwlCOKvGL
c5apXavok09bbJuz6rQ/Us9yjKcq4ay/LqmKmqeKp0qlSt7KE4wp8k5U1GK5Z88qyUW4uLlCTdTm
kkz2u18G6OujaJ4e0O61C78Hf2ckdjqen641jG1rMZ3RIItNMEYEafZ1ilRFJjkQhyyMTlaNDY+F
9G0nRbTWXv7GK3X7NdPFax74DkxKq2kUUCoqbUQRxqoRV69T9Jk1ONPGUFDaKfLs9HF900/y7apH
5lnOLx9eOIr4mL9rWqRliE4NKnWjKvCMGpLl5nDmk3NOq2pPmv7S/wA4+H9f8CaNdxz2kWnC2Wza
SWQG4l11rna29AgU3Rl2EdzNuUoEJII9E0H+xItf1KyA0A+FhbmGzk0q4vD4hW4k+yxI0tzEfOEn
mm+8yYPvw0LMylZWbzKkE2uTl0snd3fJpfzv2vf8WdeVznPFum1UeInP3XRVKNsw9pW9g1JtxdPX
31TdNXs7NQg5fnTqv7YX7NmuftQaV8FPEGm6fZRwXl5oOpeMfEEMcOm6JeRQzpbhBIjjCXEs1t9r
miEVuJrhl3QzPKPJPi1/wUo8GeHF+JnwL+D+maXfeG7zZZweK7fT1aLVZJbT7LcmSKSKAOBEzWYk
kikV0ClFjjRS2+FwVaGb0cXGCdP2fxO+jvsknu0+1rOXVI8/G5lXr5DisvzGrL26rO8bJTbblKTm
3FuX7xtyu+ZSUVdLQ8z/AGMvg34m8UfFj4S+KdZ8X6R4faXVL6TSWv71rRHSa3vLS0T7QpV4Jpbi
e3W38oOxaWHafMIiX9Zr/wACWH7Nfxl1zQfF/ifT77UfEGoS+JbeSG0xZ6Qkm3Foj3LmRcGDcQSE
2iDbGhJLYTynFUc0wUaEOZ1aXPFtWS0k3G9nrZK3S8ku59Rj+LMqz/IJfXaUoUMAqeHcYyi6kuT3
KVTVJJOUlzR10pyad2rfReq6bpa6BdW2pPpz/CKTR5Rqd7rWoXt5fyW8gu2uY5Lu6lLRxKGgdZHl
fYsc0e1AI2H4Tf8ABQ/9srx5+zP8YfB3w8+A/j6S28Ey+GRqUqAW2ps9/JqmqR3Re4vFnmZxJCVZ
Wk+VkIwCCK9TLKcI4ukvhik7brTl73+7r8j43N62JrKrLFVP3kpp12+VP2ylXUVFrVQ9m9Iw9zTb
3YW6LTv+Civwd8S6Lo8Hhj4feKx4cmia0TSJfDcKxXChlWTy3tpZo2Lq8ipAdiloG8x4lZWf6Et/
2h/DZtL7RZrC+n8CyWz2cPhu50fTktQqrbLAnmK7kQqYJmClGI+18jESKOevQ9nNR59uyW1l7uu3
fp087a4HMoKE5VqUqkpQldupKL9vzTlTxF425pU1OyU3K/vXklKy/Nb45/8ABOb45+FWuPiN8INc
tvi98O9TRNRg1rwm4udTeKXyf3txpyyTTvvlmc+ZbvdLtXzJGj3YrzL4bfsA/tKeP9Yun8bfDnXf
AXgKzhmbUfE/izSZdNtLST7LdS2yKt61vJP5ktuImMAkaIP5jLtHNUM7wiwcqlb93UhdOm3711ok
tLyu7WaXXWzTSjEcO46GNhShL2lGo42rLWDU38UndpPum7t2te6b+tfCPi66tPDXgmxms7bUfB+o
+H7SzR52JS4uZcw3Fq0ALZzGF/deWCQHBLAMUi8H+NdBjl+HmkeDYLCz0y2RtWNxYpDDDdCGBlec
wxqsUn7yWEsu5txZCQw+av0fDQofVaGmqgrd0rL/AIB+ZY1zWKxCT053e2z1dv1t16n3h/w1LaWV
pcWVlrZj8MCAk2P9gblzly5Ecc5aUvuB4dNpjI2SGQFfwU/bk+MPw2+L3xc0XxB4QltL/TrXQ1sp
2Gh3unG3uTe31xMjQzMrFy9wZGcDBaU5JINfC5ZSjPERbs7X0t5dvX16H3+NrSrUoQbb5/eqXTfP
VU6rU3eUrtQqKN7R+1pduTu+EP2gdc8NeHtLgtNA0M3/ANgizdPp5jkZNpIXEMiRouIwNiIq/KDj
PNfv38K/+Ca8P7QHwX+GXinxZ+1rZ+GV8e+ELPWoLG3+GNxeTwC7tGnmtwBrYmO1Irp45/IEc0MD
zIQVdI/osx4dwWEwsK8JTbl3a7X7NvY8jKsXjMxqYqiuWPsqcp7bqDV1ve/Ld6RlZrVKPNKOj4a/
4N3n8K6rp/jDwF+334y8M+LoUDxX2kfBzWLa+tty4ePzrfV12nDMh2uRyeSCa9k+MH/BE74h/HNr
O08f/wDBRvxEui2emJoWn2sfwT1Cws7GzISNo3WLUoYWWRI4BLI/LeRArMI4IkTwquFpVq9KvUgn
KF7fNW1010vv3OvD5xj6GBq4GhK1OryuWuzi72XZttXtvZI8O8O/8Ewf2bfD/wAMX8S6p/wUWstX
+Bk+nxzS6M3wj1eK7XTzdNprSKlnq6ajGr3RMLylSjPIFI2yhX9z139gH9jDWPB/wE8C/A39rHw5
4Y0e/ex03y9M+GWo3ur+Ibm+dJbaXVHGoR3NoZguEe+XYEDD7kZC/UyybiNYqhWWHlGNKbp2suXm
cnTV5bWU1y81+XmVr3R89hs64dWAxeGm4VK1eMakJ875oxjarJxha7coWenvKL2aevyZ+3/+x4P2
I/gF4b+OOg/Hmx8Z2994vtPCcumyeDbnRns3uLK7vVld5NQmcEJbJhDEu4TqwYYw34maz4u8OeNL
3+29e+G/hu41FkWNppYbne4HI3FJ13HB6kE4wM4Ax4eGwdPD4KpnEJ39k7cve9o7+XN26Hp5jmNf
Lq/1bE4f37Jtc211dbJ9GmfIfxA8MftI/DPw8niP4lfsd/F3w34XM8WjLqOu+AtTsLUXbxSTx24m
uI0QytCTIsedxQMwBAzX9I37Ov8AwcG/s5/CH4LfC34eeI/2b/2gNU1fw54O0TwkP7P8K6ZZ28kd
npOn2FxKs6amJ94lgu5IZMB0WVQpiMsufwbHfSc+u4RSXhbxSoQavL+yPdTty7/WLLV/l1en8z4b
6Rs8oxFRVvDHimM5RlFxlk61U4yWqliOnNGcXZ2aTVnaS+rf2j/+DgHxH8PPg/f6zoH7CX7THgbx
Et5bQ6brXjD4OW1pojajFNFfw6NN5+oH5L6zS4t5rlHE8UJNxb2+8gx/Ktj/AMHNmp61afETw345
+APxGn0TUYSuj6po/wANLSCSxZrCAiOawudZuEltxexTQyp9q82a3vGmjntJIo4K8z/iYuLo+1Xh
dxV7NaOX9kaX2tf29lulZs1rfSPjhZ+yr+F/FVOateMsos9ddniE9U7o7jT/APgrJ8KfhjPrnxM/
a6/4JpftCaN4Li1WPw54asrb4Iz6Vo9lDAk8mlGebU/ELQyam1nPct5SRIIY5ZEhZ0MjyefaF/wX
g/YLtdU8deKJP2Afi7H4k1DULJrAjwXZ3ljb22mssOnym1fWo1ilW1luXWKIhYZCI1kkWRpF9Ol9
KTMYUK1T/iG3Ffs52U5LKFZyVTnUpN4h3mpNtTb502knZWfnYnx5y2lWhTxfhPxRCVP4VLKLOCcI
wcYxeJXLCUFZ00lB3u027v54/wCCpf7edz8XP2ZNN8E2n7Cf7SnhOyj8f6RdyeIPiL8P720tblrb
TtZWG2W5ub64aOdory3kist7hY4Z3DtvJb8C5PjR4iHljTfgv4tMAUbjLoExJbuflkAA6Vwr6R0F
kuIw8PC/iu0mvfeUuSjaUXZzeI1e618ttjqz36SGKx2OlXx3hhxPSqtK8f7GjStaKS9yNeKV4pNt
JXbb63P/2Q==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/video/world/2008/03/19/phillips.iraq.catwalk.culture.cnn.60x45.jpg

/9j/4AAQSkZJRgABAQEASABIAAD//gAMQXBwbGVNYXJrCv/bAIQAAQEBAQEBAQEBAQICAQICAwIC
AgICAwMDAgMEBAQEBAQEBAQFBgUEBQYFBAQFBwUGBgYHBwcEBQcIBwcIBgcHBwECAgICAgIDAgID
BwUEBQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcH/8QB
ogAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoLAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ
CgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJ
ChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeI
iYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq
8fLz9PX29/j5+hEAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMz
UvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3
eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna
4uPk5ebn6Onq8vP09fb3+Pn6/8AAEQgALQA8AwEhAAIRAQMRAf/aAAwDAQACEQMRAD8A/DPwtY/C
3xV8E/gPYad8M4rDx9pmhSW/iLXYvEshj1uaa9juoJfsSW4Nv5Ns89uU3y+dIwO4FmhG+NP1K3ca
HrRuTb2luILa+lmuIiEQ7mDkqDdxgr5YVyr4dlDKqsh+InySm5U/x7/d+B9dCc4x5KqV1pptpZa3
e/nsch4y8I+LdPgkfSPEMLaZ58thDc3tvNdE7VGT5c0I3fu5FYqzAguu4ASkDf8AglbfEf4h+LpP
hn4o8WadozJ4fv8AxFNrHhPwxf3epxrbPG5hRW/cwSzGdkM1xH5a7nVsPJurakqEv4id9WtraJvX
yM5Up1q1KELJOSTdrvV2089djx7x54c8WaR8QPHnw88etbalqfh27FrNcGwbzNUidHkhn8qbaIXk
hdi9vuDKxkQKAFEWJbIqxQaSIC2m3DZX5SyRFfmLSRSKdvLMxZePnkYffWpnBXvFaOz+/X8DaV6N
SdGe8W1ro9G1qjpvDUUFzBq/hIQynSrdQRFPMfs0zYXaF3jbG5dIlxgfNJIOO3054H8JNL4Y0yXw
fb6vbaUU2mGFi6qy/Ip3AHdmNYznjqBjivQ4clP+38NGSvH3+38ku5onBrWN/u/Ut/Dz/gnDnRdP
1/4WftoW4vABNdaFqtlY2cqedCk0D20Z1CX7UjiUHfGpjGCFlcqRX2n8O/2Rf2rvhl4o8N3erab4
cvG07ydRAvrDzreV45d0XnWksU9rNCWiOYpCI3wA6kHB8eUqeIlZr2c0tG1o7d/1udONy+WD5ZUa
irQl0i1zJ77Jt97Pr5HqPjj9mPTNa0KfWtb8K6po/jKVZEaXQbKzudPuJrq5nlnnMbywJalY54Uh
hhVhiI7QpZVP5dfDa+8V/D39ri38d/CvVftHwi8OWMMPiTVbi8itNOvLG5Rpbix8y4mt4nkkikQR
20kkAW9SJDukRUlqkqtGo1UtKKi27b32287320va1km8MLQrVa1BUaclKVSMY3i9ZNrl1162VtW9
11SwPHXwf+JH7Qn7V/xFu/hxq1jEJbWPVW0PXr1LPWbC3VWhEE1vbCWNLiJ7SMtDuHlC8to3CMSF
+aPEkXiHwzrev+G/E2nmDWtMna2vbWRDm3ZGOeY8gDJOPmB/iQjPJh6ntKMUlqkk/kt/mtvR9md/
E2U1MrzWtSry3baauk03um0rp7rrZptK6RgnXdJmEc7eKBa2vCp581yiMgyPlZY8ALubsHA3BEYt
k+7ade+K7KxtILXxF4hW08tTEbXTPEbRuu0YZfLsmAHYAnIAHGMV7ORU5RzajVcHFe971u8X8/I+
flUgkk6lj68/Y30cTfES+X7LsEelTN5e3Hl/vIxtxxjGcY7dK/ql+B/ge7X4S+GfEt7p1kdOuba1
srG9tcpL5cZjZ45UHdZ0uBvDDdu5RSu+Xy8RKEcRyOO8ml5bv7tD0cI4xdaTdpKHu2788Pu92+q9
Nmzz742aFpekeGfH99JfTjesKiLdI/mJJPDbt5hHziMrMVfbltrEKCxAr8yvj5+zL8K/hZ+xt8Wv
Beo32map4rn1+61cBUkg1GNpPEek2TrdRi5LSwxkah+8mEDmeOJXAG2SWIWw9HES5rRlCSt3dr/L
ZeT2um0fRcPReI4m4erVJKTp4zDycG370Y1YqdklqlCU3JtpJR5rPlafxV+yZ+ztF4S1P/hfVp4N
0+bT7e//AOEQ0+382QHULy5ge5uVdF1BZ4xDbpEwcDymNzzJ+7aJ+Y/4KHfs56fe/B7QP2krXV4I
/G+kxxR+Pf7Ntwr68L1rWKzkZnKK0ls/7nmBXljmVsokMcdebgIS+sUa038Vla+lm5QbfmpNW9Gf
Z+OEsDieOcfhMv8AcWEpUqcoxvaU/ZqvfXS/LOMGk7+6mz8CfEkFi+qQHTZruSJo1kc3ltFCQzE5
wInYEcdeDx0r+mvwppOm6V4U8MWrWkTXLafBcTSCNQJnlQS7gMHHyuo69Qa+8oU3QhVj1jFP75R/
SR/PWNqv6vCcd2/8zxH9hj4Wa38T/wBprxJ4C8O2+s3et394umWcelteuY4mFm7ybIWVFRAZZpJH
ZERFZ5HRBuH9bP7LHw1u9L+Alv4P1621iHxbY2F7ZS2V9M/2eK5t9TuLsTx78tI0llfRS+duZXjt
YduOrfL4mFV1lUjG8HKSvfVO11p5q930t5n2VH6v7OylaooKVujj9q76NO1tNb3voyG08Pf29rsm
lRxKupz2Mk0cz+Y32ea2khuoSyLl5E823j3xgMWQsu1uAcr9of4F2mu/Ar4lfCTxN4pju7+XQb+z
0y71Vo5ZtH1O/mjhsp5LlUja/ee/kspUjz+7e8ihjZhEWbKUaNelXpVZJWjdNpN9XpfezitO7va6
R2YWCrYvK6VCk5V4V4zi0pO0bODT5dmnJSpu11JNc0YSqKf5b/GTw7H4I/ZS/Zf1WC30mJdIfV9A
nt7iSeKOeaSSRrqaOW5up1gSWeO8k2lFOLuAKyiNI1+Tv2qfCE+s/sR/F/wFdXit4nb+zLy4ulE1
wjM+p6fNLOA6Ql1y6xnbwruOWGC3mZfiXOrhoRl7SPuWs7qC57zj/wBu1OfRdNdW9fa4vx8c0zfN
s4hho0VWrYiTu3zT5uaVOclbd03Clo2lyLVfDH+YfxvayyeJ59JM2nzxadDFZrc6dC8STFc794Ms
n7xX3o2CMFCCARiv6X7rRY7XQ/AkaJ5Z/sGzBUDIG1Sg/IKB+FfpUpuqsXNqz5IfhKmvyPxzFwlH
BUOV9Zfi/wCkfpR/wQ0bwv4Y+EXxU8T3UMcWtalrck816vlxy3ccOnWRS3kl+/sXc0qLyFeR25BI
P7P/AARtLqb4gwt4y0O4/tm7udUuNUbT582wilRLCKI7SHuDLbx2uCys2LeMSYeGIV81iVL6lQrU
XaXO07dff1f/AIDdflqfS4fE1aOZ1qcl7sqbj12cLWVvP1/I87+GWlWni+88Z/EXw9rVlLoaieLS
NQljkSxmjkmEr3BZyhRIrfMvzlQpXa5HfyL9pnxJpfiDxt+yn8J9O+JZ1/SviJ8ZNGvb9devFvYZ
NHsNQtbvy9PmRPJjRTpNogiJzI187LuLOV8evKjRw9aDacpR5LNNtWaacWk+STel+sW11Z9zkGDx
64lyfMaFCbeCxMa0oxaStCFRyjV6Sg4OpNQ1vOkpL4T8o/itotz8Xfhn4g8HeH/GWqWvxA0zxBcJ
b6jH4ovpIbCW4FzOkzQPvms7lZjGoI8tyl1cMobZEsHyZ+3f8R/Cfwr8A6f4N1vRLqfRpptGtBaa
azQXX2K3nTz2gBgljkdflhVcfedSA4V0KyiaxOZ0KSowhBRglyaOX2m5r+dSlKPnGMXtY+axmFq4
HB4xVcTUnKrUlVftn8DlGKjGm7fwrJTjZPWcr+9dH813iTwbp3hTxrqmmaPbvA0oS6uYXlZ/Iume
VZkBIyFDJtGcn5ck5Jr+mrxBrPhqzn03S9R8SadZT2lhbQCK7iBZ18sOGX94vyneR06g1+nZtRw9
DMMwpYZctNRp2WvX2b6tvfXU+QzGNOFGFKDfKp1FG+/KptK/na3f1Z8GfsM/8Fzvgf8AskfD+2+H
nxC/Zc+PU/iWC+e8uI9P8E6fi3drWOwlC+bqUMmGWKRWDLyRg9xX0h8QP+DgHxinilv7D/Zo/aw0
DSVv572DT4/B0tj5cEttYxRjyI9TCfetppO4zO7A/vGFfyfHx/q0KcMPW8LeKU4PmknlDuk5KS3r
9V3te5/O9f6TMfazrPwt4rjzJpXyi2ys/wDmJ6M8p8Ef8HB/w/8ACvxv8aeKviV8Df2jdS0e48Ia
j4ettOm8KxtPYz3qWwmDQXmtSlIvtME7tslRWeONlhhUCCK38b/+C2Uep/Gz9lLxP4T/AGIP2i9M
8J+ALHTPt1vqnw6gtdQlm8yOS+e1UXcq7JFtrUJudPMXzVOzdurwcV42Y9VK8f8AiF/E8XzOVnlE
k4qTTjde200enytoftGS/TZ4XyaWDdTwi4vUaeFVGSWSUkp1VRxVOc/99V+apXjKTfvP3m1e1/iG
7/4K6eGtL8ceM9ej+Bnxr07xDf6tp95eW48CWKNdQwR3cM0UqPf5hZZ5I5UYBiWtzG23cWHJ/tJ/
t7eLvjH8V9Vv/Fv7Fvxrg+HiQ20Om6RcfD64tLp7aVFlvGuQbl18x5pJY0ljKgwxW5Kq4cnbLvG/
F4DF+1xvhhxQpQgk0sod02lZtOurJptrveJ+c8UfSxwma4enSw3hTxZDSEW55OlrCMYu1sU76xt0
03sz85fFf7RVxqPjTUta1T4CfEa31+6toP7St5PCxRo7xWlExVDLuCbuBuwcq2QDxX6q/ET/AIKC
W+o+JXu7z9ir4+20zW1uvk3vw7aCRQsaqDtF3ypxuDd819rmn0k1Wx+Oqrws4ripqGksns42Ud19
Ze9tO6aPlcx+knGvyuPhbxVBXlvk/S+3+8brZ+Z//9k=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/video/us/2008/03/18/dnt.ca.buzzard.smashes.into.plane.kovr.60x45.jpg

/9j/4AAQSkZJRgABAQEASABIAAD//gAMQXBwbGVNYXJrCv/bAIQAAQEBAQEBAQEBAQICAQICAwIC
AgICAwMDAgMEBAQEBAQEBAQFBgUEBQYFBAQFBwUGBgYHBwcEBQcIBwcIBgcHBwECAgICAgIDAgID
BwUEBQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcH/8QB
ogAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoLAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ
CgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJ
ChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeI
iYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq
8fLz9PX29/j5+hEAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMz
UvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3
eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna
4uPk5ebn6Onq8vP09fb3+Pn6/8AAEQgALQA8AwEhAAIRAQMRAf/aAAwDAQACEQMRAD8A/tgsL+6k
toNsQUlACVJP8+O/tXRQ6hMWRmiPGM8jn16V704Ra0ep8NGSWiiacV9K2covXryf61dS7YkDYMnp
2rlklcrnuvhX4kiTkt8q8DvVkOTzgf41MrJFqLZMuOciljeJlzu/LvXm5mufBVIry/NG0aUmj+Hv
4U/t9ftV/EPwVpWv/sj/ABz1/WPEdhHbJ4m+GPipdEfXUlNuHmvtMltYrY6xpySRyJI0ZjvYABJP
b+Tm4H074C/4LY/tPeGBFqvxg8P+C7vR40/1cSalp3mtxuQzLFcxvMoD/IrqSVbAav0ahS+uQr0c
xwyniKLfM6futxd+SotdpJfavaUZxu+Vt9lfL8NOqquHk4Qnt1s+qa237W0afU+zPh//AMF2fhXq
2naM3i/4aagmtahC13bxaPKJoordTIjtI0wjkYI0M+5kjICxlgCOa99+MX/BcH9hX9nPX/hL4f8A
jd4r1nQ7jxbZT30UsmkG4XRoEjs5YpL6CF2vI47hbzEEqW8iM1pdxsUeFlr5+vhMLKtGlha755Np
RmrPS92pRutLPdR087IX9nYinFzmlKKSd1pv5O34Nn2d8CP2/v2P/wBpLwYvxA+Dvx20XVfCZ+0E
XczS6fhbd2jmcx3yQyBFZGHmFQpxkEjmvqbTPGXhXWLhrTS9fs7m6VBIY7e5jkdVPQkKScHsfauT
EZbmWHhz1sNJRsne11be91dE06mEU3TjUSl2bSf3Oz9DV1rWtL0DRdW8Qarc+XpVhay3tzJgny4Y
lLu2BycKpP4VW8L+H7fwx4Z8PeGra6nmt9PsYLFJrqUyTTLFGsYeRzy7kLlmPUkmvIrtVMPOn1bX
4HoRwzbVtrf5H86vxN/Z0+GMGoeHvin4Bm8IReLZZo9Tvl0G2F/dWl0kqi1u4X0y1kuDIxj80syB
klR2WR8/L8lftHfDL4NeKdHn1744R+FNE+NFxcXbWXi3xN4pbQ9G1G58iZoptYtFmhvI90oVWubS
2M0xmKzR5llvI/37FxjVwUMW8JyYjDyqXjKMYOtD7VOUW1Jc6UeWbtGNSMZOXJzRl8hgcVKlUhgP
auSmopSXvKD6Pr8Oqa/lut7Nfj58b/2YP2jvGfhT9lH4ap8Wfgz4N8L3ej3Gsa5qGq/GDwFYpo+r
vr2uIkkN+NSm1We0i0o6OFitXubcuqs6tP5z1+rHwt+Bv7Lnxl0z9i/44ftvf8FcfhrqHj/wZ8Pr
jwX4x0SfxZpd/P4lWLU9Xuoo7rUZr6KWRIo7u0t5He2lMosBNDOryJcV+TQw1XDy+t4PDVpVIVZy
vyTSUZKoocrcdkuRtLTZu8m2fcyn7SCpVZxScUt09Vy30T7369/I+o/B3jf/AIIX/s2JFpXwx/aY
8I2dvc3cepxDw54c13xB5s0KeVA6T2wumbykcrGvmERqzBQoJrtPBnwB/wCCU/xX1Ww1v4Ua7qfn
z3UUcVx4d+FXjjTbOORiFUM1tbwwQJ90tkogChmwFBH01PiHOIUJQnlajTjdyvUjTvJpKTdlG8nZ
LRdEuiR81V4fUq/t/wC0Zcz0XuXSV27Wu1bff9TzfwtqXwC8S6z8QrK5/ar+K/wjGn+JpvDOi2Xi
nxP4w8Nat4pUC1aK7tdF1e7ndbKZrkR2ySIrybwr28LAI31z4A/aO+LHw28OxeGNM+OV/wCN9Njl
eS31zxpo98+qMhOBFI1td6aCq7TtL2287smR8gjzuMq0cRwli8yp5d7KpCFCSnzJy9+pTWsklKzU
mlZJO3XVnmSnjMrqSoxre0SbV1enfbovd+716n4TeC/+Chv7M/hP+wbTW/iXa64kV9ANQluvBRk1
S6trVlWAy6rJpksl23lkgeb5nzjc5dSAn1z8HPix/wAEI/jfqPhG3+MXjMW3jCW+fbB4v8A6TZ2R
v7kiW4ujc2uji0to5JgWaaeSEkgF+1fS5pLHZPgZxyTCwxcnKV/ayqylaXL7yvOPM009Oa1mlGGh
7OEjh8RWc8XUlRdkly8sY6XsrJNLddPO51E3jH9mnw34S+Onh/8AZ/8Ai5cpplz8SZgdT0LxO0Wg
6hpVuuyCxB02SGON18i2uIriFgxBBy0BeGXjvCfi34H+MLnxBZ+L/FGov4pB8y5tb7xzrEr3aytJ
uljZrw/aYnKF9wyQrr5ixvuRfrOGK0cPgqdfEwowqV4U7J0oqUF7Kmpxmpxcv4kal09tE9b283M4
TnOUKc5yUG9eZu75nZq2nwtam14b+H/7Ffg63tbt7OzvdXiEYke91mef7QP4nkiMnkh8ncyrGo+Y
4XHFcJ8Wf2vv2XfBSXOi+CbHwxpmoEHDW9tZwveBdvHyKGYjcPX71fQ47PsdCPNXx7cF9iDSUtt4
wst77rseTQy5zqJuD9X/AMHyPyf+Mv7Q3hPxP8fPhx8VvCIt4tc8PRxuvhe80uWG31i4kOpt/ac9
zG6IFtmjsoEgKxEjy2Vmd55G9qtf29P2o54I7i18E+EpLVxujePSdTlVh04db7Dcg9K/IeO69atw
dm0KzbVV0rttt2jWg4pPZW0Vmn+p6uIoU6kYRlpb0X6H4X6Fp8uq6vHENGurk3KP9m03TbkxSeYR
8mwvHOzKGxlfmYjI3Lwa/bjxB+z3/wAE1/D/AMANY1JPH7D4o6JYrqK29145trXVdZu2hM0GmXsM
qCKwaUvHGW+zRPDlXfhXDfTZZiqGIxVXDYutGNoOSu1F6OKdr+Tb20t1R0YyjiKVGFTDw5ndJrV6
fofkR4t+Jmi67JpWk6r8QNMs/Dunm8OmaJbyajdadoCTTtPJb237u4+V3YtvEszORullZyWPllr8
U/BlpFqEg+1pfDd5CQQR+XPk5O9t6lB16I/pgVxRxk8WlL2bS6c1tr7dX96v5nd9WhTSW78j0P4U
/GfwjrvxA8H+GPEXwv0mSx1K/s9PbWb+7SGPQXZ44Re/6hmfauHdPNgTcpcNGzu9fttqf/BMzxJq
fhy6+IWkftE6NF46tILi526lpBt9KeBliMce6SacWwUpM8kzK6vvQlE2Fm9bKstWLlWlKyULNJLW
V77rTZ9b9fI83H1vq0Yyim29/wDgfI/GoCOLS7HxVa+N2fxFqEl5p99pENvNH9ntUNrNFLJLxHIs
zvKBGo+T7KS331A0LPVr5IcBuM9jJ6D+6wFfK+IMFHg7Mkuvsv8A07T9exzVFeza/q7Pzy1f9pHx
t4puFv8AxH8HfirqOoFdpnu/D89xIQP9t5iccfpXKv8AEeW5vY9Sf9mr4jvdqCBN/wAIg5YZz0Pm
ehxX8w4j6UuCweHlVxPg5xhTpLdyyNRiruyu3ikld2S87I/EP+JjOv8AxDjia/8A2Kv/AL4J/wDh
bskuw/8ADPHxJcY/6FRjn/yJSx/E6diX/wCGcfiWQeMr4Pfj8fNrSt9KujgaDr4rwg4xp047ylkn
LFXdldvFJK7aS11bsTL6Rd/+bb8Tf+Gr/wC+BsfxZfcGh+AfxN2nsvhNuf8AyLXU6J8dde0aG7tr
D4JfF5NNuG3XNpD4cuVtrk9MyQi4EchxjllJ/Kt630sKODpPE4zwi4yp042vKWScsVdpK8nikldu
2r1vbrYzf0iL3/41txL/AOGpf/Lzr7L9p9YkUf8ADPXxRbuAnhEY/D9/9a6O2/aogSPA/Zt+K5Ge
q+DeP0uK8rjL6UjzDhrGYNeEXGFHm5Pfq5JyQjapB+9L6y7XtZaatpdTjn4/yfw+HHEv/hq/+7n/
2Q==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/video/politics/2008/03/18/sot.obama.speech.long.cnn.60x45.jpg

/9j/4AAQSkZJRgABAQEASABIAAD//gAMQXBwbGVNYXJrCv/bAIQAAQEBAQEBAQEBAQICAQICAwIC
AgICAwMDAgMEBAQEBAQEBAQFBgUEBQYFBAQFBwUGBgYHBwcEBQcIBwcIBgcHBwECAgICAgIDAgID
BwUEBQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcH/8QB
ogAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoLAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ
CgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJ
ChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeI
iYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq
8fLz9PX29/j5+hEAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMz
UvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3
eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna
4uPk5ebn6Onq8vP09fb3+Pn6/8AAEQgALQA8AwEhAAIRAQMRAf/aAAwDAQACEQMRAD8A/FXwz4ZE
nh/41/23H9v0GDSbix3659m1fRrs6PY6PEtvpniTTXFzseXVpR/Z0Dx29vDcWLyTTYMkXwx+1hoW
raJ8fdY0zU1kEkGlaLZokniTTdfWJbfTLO32RX+nolrLApiIhRN5ii8uFpJXjaRv0/gjlnx7UUY6
VMNhZO8bbVMUtV0bsrry8meLjKklw9heZu/tK66WvyYZ6de+/dWN2zsWMXg+7jiAR4ygZcDlxFjn
vgZNdxb6RMNMXVrq2ePTJNRurFbt4JTAZ1dG8reqkBtpDYOAMjkZGf7jhneTcG8K43iHO/dwtCNO
UmoczbmqcIxikt5TcYq7UU2nJpJyX5i8Di82zLD5dglepUc0rvTRSbb8kk29G7LRPY+d9f8ADGs+
G7qfTdWtfJlIWVADlJY3VSjoRwVYc5/A8jFfoT8GvhZHofh7Svhf8TvDvhaP4iReM7FJNEu9dj8H
6+mlWltqNy80Gu6hZNotpZ3gvLcm5nmluJZbawMULxkGvxnxJzXJs+4JybOMtanSxFWNSm425klG
caila65oOTjUjdtOMor3kfS4fDYrA43EYPEK04Lll26NW8no0/Pscr+0JYa58TPBFvrPiH4kXvij
xL4V8NaJK+n3+kT/AGvSYNXudT1e9vBeQSut7AJ9QsWlvb7bK02vJAiFII5H+SvDOjC50xZfIXO8
5474B/rX45niwq8DeOZUuVVISwt+XtLH4VJ+TbhJNd0+hx577aFGjWk3yy0Xqkm152Tj8rH7O/s0
fsVa1JrH7Rfwi0nW7fT/AIr6HYT+D7e0tLm5S9+IMN3fQXkeoTxm9eG2MdrHZ2Jt7dBEsdzbeawl
Ejv5d/wVGg+E3jP9n79g34j/AA58Jadomv6doGo+DvEem2MHk+Rc20kV0itGgEIZjczXJK5Ym9+Z
3IO34zgzM51/E7Cqk58ko0admvtc9eeui0UZSUfLq27n9AYjgmWF8PMbmOOw96lGUcRGfMrfV8RQ
lGDSvq/bwpKWl4tW2vf87PD7pP4R8MZOLiPULZOVOdoUkgH6bT36Hjmv2E/ZQ1DT7f8AZ8g8NaD4
60VNcudd1W/1DTNQSSdtP86SaEvHAbhfLuZ4LJTHOqbQlnJujYxlq/pn6Qf1yh4M5nQw8HKnJ4B1
dbctN1m77Wfvwpp3096/Q/I/DVUXx3gp1JqM0sR7O+zm6fKl/wCAuT0fQ/L39pPwx4Tk+J1nofw4
8STeIdevJPInsLKwbbZ3Ulw4htIpFlc3cxVo2cKiBXl8v5mDY/dz486F8M/ix8K/2e/24PAHhnTd
Ql07Qf8AhBfiroZsrNI7qGa2bTDdQs/2p7S6USlLS5nNxPHFPpkwjH2fafw/GYjH5R4S+HuHzGi4
yqUMxq8l1eSlXhVoyTi3bno1OddVz2aTTR+mYfhTDcScQcR/U6ztTxmX0XUteNOFeNWnVlJNxv7O
vGnBq6Ttvrdcx46+Fnhf4T+I5774deL7j/hlf44/D3/hCrbXNYeTGnwnT2tNK1K6idbWOFYoprS4
Bk+crFqmFTJVfwD8IQww6OiyMd288kHngDt9K8mvifbeCPijUcpSv/ZE4uX8tTFxkkvJaq3kfIeL
+V/2ZkPDFRunGpBYrC1adO3u1cLWalKTW8qkasJN9fi2kkf1D/CvxuvhzwD+yl/wUQW2W91I6RZ6
B45RNOFs19efaoFme2iMieZMba1uVEjuIwUsTkAutfA3/BWD4W2GjeLfHXiXwtHptx8O/iFDe+KP
D14skckNrqFu6X1z5UvmHaJbeK5KhBhv7QtYlGFJX4zhfFLAcV0MxniG1ThgMQ7K+kak6Na76btv
7ujP6CxeDp4zJa+VRw05QVPM8BJt25ZwlLH4TlT+K9OCjHz28/wxsPFWuJc+GfBfhTw/JqOvXFzb
i0tYIZJJ7i9kHlRwxxIN0jNuUBQMszAD3/of/wCCUPwI+FXxg+DGm6p8Rtdvbv4kXvxqk8MSeG9N
vrEadrWjW+m2V9eAXlvayzh/tEghWQXEdqxuIVV8SPKP1bxV4+z3i3E5jwQmqOAjOFCUIW5qv1eb
UZVJu/u86c1GKUfhUlJxUj+c+G8HhcllSz+C5q8Yuab15VUi7qKuvsXTd772a5rH5K/F74k/APSP
25fGPxT+GkEk/wAF7H4s32v6MNO3ompaNBrM1xbLD9o+dC9qsMYd+jLuZS2a/d/9nLx38Kbz4s6j
4Y8Nahexfsg/HfRrrUPDyagsmmw6VflZba809vM8mGLZMt1ZbLYXBY/2XsmcYevj8XxVic34eyDJ
sbSio5O+WNTvhpOlR5GtdYJRjzJvnjZyXNFyn+h8H4NV81z3KbVKtTNMNVUacXZPFUk8TTm9rrmp
yS7Ob+zJ27n4TeE7H4jfDv48/wDBO7xpqdnqHj/wTpuj3fg3VmgSKP7Ake2G4aRIpDFD58zvJuLy
+VrEqJwpCfzReJfCV74J8V+LfCGtaVNYarpuqXNlPZXFt5Mlo8chRo2iODGVIIKEArjBHFfO4rF4
mj4Z8Z5fGblS+pYdT0suahm2AVF/+C68/l6HmeN1fBz4adWdGnSlicVhMbQipc0+XF4OssX73WMa
+HppppNS9bL9rvg/qKfDHxX8Wf2G7yCwb4f69e3Gs6JqRRJZJJJYXU/ZWkiJmMcSwtHsQp59g7KS
zEp8y/ts+NtT8B/sZ3fwk+J1q2u6voF9a29pqk1zFF/Z92Ly4R5ISdhugY5JrdIVdyiwRSfZ4kST
bxcQuvlWPqRhFU7VIUHFW5nSr+0qRvv0Tt8nvc/UJZxTq4GOMqS9tOtTwuYJXfs4VsNSVCsnazvK
S5Wl0vd6I/n7hmd5BbQvI8kMG6SQk8jJHHcAYxjtX7Uf8E7v2hr/AOBv7Mn7TPj/AMOreab488Bu
dT0fW7NorqRb3XYbSzsNtpdYghW2vtOtLmSYF2lVtpjfyESTsy6p7LMqdbE391Obvvblcru+91qn
13PwrHqUsJOFJ2btFfOSX6n5A6rPJZ/JIG86aZQzEleW689jtB/Sv6Gv2J9f0/8AaK/Yf0L4NeHI
00748fCy9v8AVPD16t3DFc6jDcXbXjGNiPNVWadoDsMaJPBYyO/zYrPLlCrWnhZtJVYyp6q/vSXu
u3fn5WvvPfybHYjLM3wmb0IzlPDzjV5YO0pRpvnqxv2dJTUr6crd7q6PoPU/Efiu7+H3wS/a70GZ
bv45fCyaHwz40DWSQtcxRTyLdRyGcGMPA2pyWzNbR3Hyaqreaht+Pzh/4KVy+GdU/aau/i74Na0h
8C/ETQdN8baPFaRRxssc0bWlwbhIsoty93ZXckwDMfMdtxL7qwoZlQr8MZrl9aTlTzHCYeO2idLE
4abd+7eHj5+9sj6LxK4awWLyHDRqUqdOGCxVairT5pSp4hfXMO+toxjVqxWtrrdu9vaJ/H2mfEf4
FfBn9pW3/cfEvw5v0rTyYYRM7WDxXLsYoUBkRkQ3ToM4j1Ofd8iB6+Nfjp8Cf2kv2qLb4QeP/iJ8
RPDeoeDr9AsV1ollqM+r3G4Oks97AlokSzgQGMosiQrJkhjJPJLL0ZtGrisXicxhTvSeFpTvLWdW
thI1oVFH+84TjJaWd733O7G5diJYShl1OoqUaWJlh4pLX2OKl7anKdnflvdaqzei+FmX4z/YL1JN
a1bTvAN1qcHgeMPHpSax4f1A38cbmJ8y+VBsVwyOMru3KeSCxrJsP2Nv2gtL8PeI/CWn6nZDwpqO
qWOozLLo+tpNdSWUV1DbsD9hbZ8t5cbk3EElOTtBr47PvE3IsdmEcVhKNVQ9hhqWqje9HC0qEvta
3lTdn1TvoceH8NM1hSdGpiaTXPKV7ze9RzX2FtdGhef8E6viFr3hB/sCXz/EVdRF79uFnqg0/wCy
rAymza3+w+YzmWTf9p80BVXb5BLbl+mP2Y/hr8Xv2IdP0P40eKftTXGk6vKdc09bXV4rPUNDuGs7
eOCJmihSS4ErXE2JnjhDrp7je6uiebheOsuq4inChGpGo5R5Xy39665evc93JOB8Tgs1p1cxqQnQ
calOahKSk41aVSm94pK3OuvofdHw61Xwb8Bf2lvDUmr6il78EfjP4WtRq6wglBqtzatFLFvTfLPb
yzXEjsEMEAbVWYcWw2/MPjK7u/2d/EWo/CLxl8MvDHiqy0pz/YGoa9b305h0mYmeCK1MNxFGkG6S
WQxquFnluMndkD9R8LqOFy7MMho8QTiqdCH732tvZpVcJe0m7xdq0Uk9nJxs7n3+WY/I6OfVMVnF
HD0cJiaUofvZJ/vsBiJ4eN+ZWTlRqJpWulGy0Wvxr4j/AGw/A2m/EW3n8OfsP/Hiw+Efii4mvtK0
q78BCN7wXdlNbGOzhjuVhuIS922xY2A8tkXDd1+HH7ckf7Oln4++HWtfsb/HeHRL+/g1PQBrfgUL
qFpaed8wkWWVCVkjRWGxtgliyAQzY/mSr9J2nDEYjF0fC3iyTlXlVjz5MlGnSrUoQlCKWJaS5ouU
Oj5r6XaP4bxH0qoQoOGZ+EvGFNVcPRpTm8l96WJwdRXkpSxUbq11U+3CTUeXS79g13/gpJpRuvC0
1x+xj8fIItXjjbSfO+HSIdUDbfLa1zd/vw29cFN2dy4zmp/EP/BSnRfCrxaN4l/Yw+PemamyrcpB
qPw5igkMTH5XCy3YYqSuN2MHB561+EPxNzrku/DLiXSz/wCRTPZ6p/xOvTv0Prq30ysFg4xlifCH
jKCblFc2SRjeUHaaV8WruD0kt4vR2Z0+nf8ABUXQtAGgnVf2Lfj+kmtxxtpLP8OIl/tUOEVTbbr0
eeG3LgpuzuXHUVi/Eb/gploax2/gjxr+xt+0Fpmk6lHPBrMN18Pksr9tMuLS6iEloWvBiVpmhUl1
MbReep3Z2n0Mp8VcwweZYXFY3ww4mlQhOnOaWUzu4cybteqleUb8t2k31W5yZx9MWjDLq1OPhHxj
SqzVSEJTyRRj7SPutXeL+xNpTSTcdmr6Hzan7Z19dfsyaB8BviH+yT8dY9UuNUOs+CL+DwDJ5d4J
oPKVIg11EZ9wlaNJVE+1LjhG2oK+wbH/AIKcfBpfDnhKw/a4/wCCe3x0u/i7Z6etq88nwuslWa0E
srRSJ9ruo5P3haSV8IqeZJLt45r9Wl9JHnw6pVfDDizl9moSf9jK1lU56crfWVvHTVryufKcT/Se
wOOweKws/B7i6hGri3Xpznkvvc3slTxVNt4pLStGMrRu1tNRaSP/2Q==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/video/politics/2008/03/18/intv.martin.obama.speech.cnn.60x45.jpg

/9j/4AAQSkZJRgABAQEASABIAAD//gAMQXBwbGVNYXJrCv/bAIQAAQEBAQEBAQEBAQICAQICAwIC
AgICAwMDAgMEBAQEBAQEBAQFBgUEBQYFBAQFBwUGBgYHBwcEBQcIBwcIBgcHBwECAgICAgIDAgID
BwUEBQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcH/8QB
ogAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoLAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ
CgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJ
ChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeI
iYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq
8fLz9PX29/j5+hEAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMz
UvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3
eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna
4uPk5ebn6Onq8vP09fb3+Pn6/8AAEQgALQA8AwEhAAIRAQMRAf/aAAwDAQACEQMRAD8A/Mb9hL9n
j9nnxZ+xF+zv4q8VfAPwVq3iq/i103up6j4U026urox6xfRx+bNJbu8m2NERdzDaqgA4Ffof4N/Z
D/ZCudJ1Kaf9lf4bPINMlZGk8DaK5EgikIYZt2Oc45yfxxXzuIr1ouolNr3pdX3Z0U0nKN10X5Ff
Uv2Q/wBkMeJLm1j/AGVfhr5Cy5AXwPpC8b8YwIlBAAPGK8L+Mfif/gl5+zn4ht/CPiv9j7wX4i8a
wQwXeoaL4X+Gnh68n0y3kiaVZLqS5ENvF8qqTEZTLtmik8sxyBzlCtiJqyqvz1Zaoyq1OSnG79D0
L4J+Gv8Agmh+0lo1jrHwf/Zt+GNyLK4soNX026+HWj299pUsluriK6jktjuyRIPNjeWJ3ilCSuUY
1+lfhT9if9g+88LeHzN+xP8ACKS7k062lklPw48OMzExpkn/AETcSc5yT1PPXNXOriYJJ1Hf1f8A
mYTi4SlGS1Pnf4j/ALF/7GGj6lqrWn7HnwxW38qTakXgDQl2HaQCALfjGQeBX8RH7YPhXwv4X/a2
/ak8M+G/Den6d4d074jeJbDT7Czs4YLeytodTuo4Yooo1CRRoiqqooAUKABgV04GtVliGpzbXK9G
2+qM27Ruf0b/ALAl8qfsHfszRFVLRxeIQdyq2M61fHujY6+1foj4I10f2L4gVinlrps/TbziGU8/
Lj/x0j27Vx4j3pVbd5fn/XmdMHyyj6L8kOvtchbxffRStEds7oDtH/PUdzAeef73X1618nfsE+F/
2cPB+gND8btI0eX493+kzX2sL4o1RDfzXEjv/aNw8crZKrM0hMwAXAy5I5HkY+dRYTlpSd21e27i
k2/ltc+s4SpUnmspYiF4xjpdaKTlFR+e9vmedfCbUPhZ4Z/bjsLj4Zalp8XhXW/DV9aWi6VcJJaa
k6y2V3ZMDDmOQ/Zo750kP8Ik2n5jn99PA2tsuheFC0w40uzO3BPIiTPbjua68M6iwdFVb8yVnffd
79djzeJadP8Atis6NlB2attt0+48f+N+qvYXV1dwxtL8jArliOQARnGDy3r2r+Dj9uAg/tp/tfFj
83/C0fFWdoOM/wBrXfvXqZd/vVn/ACv84nzzS5Lvufu9/wAE+7xD+xh8CoC+0JJrcZJ/7Cd0/GXQ
n73YnrX374R1iPT/ALS0960VtJbO0nmQJsKESqVy8qgZ2MoLHbll5PNcuK/i1V5v82dMNOX0X5G5
4r8Y/DXwHe6lqnjnxraaVbreS28t7fXNvbwvMsh3qm+7DMxCO4jVNxCNhc5WvjT4DfGP4J/FS78a
TfCvwBpV/wDF2SbWrDQL3UbMQolgTPxOktzALbzYzCEIcSt+7iYbU/d+XisPVq4Zyp3UVo2rr3Wr
Pp29T63hnEKjmyjUs1JaJ2tzqV49e9+3c8r+FHxZ/Z3sP2ofDXhfRV0TRdeaC8upN8CaZ/aXiCaW
3tZZo4pZpCk1zvn8q2WRzsfC5JOf3t8Ca0JdH8MLHeQsyadZgqs8WVbyoztI4x8rA49CPWumhRqU
sLT9o732b10vZa6X0t0PO4lrU62bzcIpWik0rWvu9r63bvrv1uc38dS6W0l8Z41jXYMmWIy4ZgvE
Zbc3UdAe5PAzX8Lf7bwz+2h+10WjYMfif4pJBxkZ1W76816eWtSxi/wy/OJ89OK5Pmv1P2I/YZ8X
W8X7Inwu0q3vkF9ZXmqCZDN5bJHLfSbSqtgS5ZxlVDkBSSoGSNb9sT49fET4X23w88PeBvEUOmaj
qljdC+a2VJbmO3B8uMIWysKv9omPmqituj+R12NmfZqpi3TlqnJv8zaC2emyPyp13xLrvirXX1Xx
Hrt5qXiK4XN1e6hdyXNxMiAKu+WRmdsZUDJ7Yr9N/wBk34aeAvil+xX+0lbaH4V8S+FP2g/BfiKL
X9I+Mvh3XtOtba2sb3S76Wbw9q1jNPDdX63A0GdrIWwYpcTSSPNbojw33bjHHDYGvONNSUYtqPR/
3fnsevk+GeOzfBYT2jh7SrCLktXFSlZyV7Xavdd9j8+P2ovgFbfs/wD7RPxG+C114oXXfGvgu/l8
PeK9eR7h49T8SWx2ax5BnVHMEN759nFKY4zNFaRzFFMpUe4/Aj/goJ+0N+zrJb6DpfiefWvAqyQu
uj6peXBNskcEdskdrcK3mW6CGKKNYvniQRrtj652lSp1aKptWjbTpZbpfI82aUpTk976vXV7N666
7s/WH4e/tPeH/jL4bk+IFxqusRx6wZWe1vZDMxME20KcO3R4Nq/O2Fxxnhf5tf21WRv2yP2tHDbg
3xM8UNuVsBs6pdHPIrhwMZU8w5H0jL8HE5p6U3Z9f8z9iv8Agnl4Re+/Zk8CaimsKPNudRYWptri
ZUkW7lBZh8sSEhIzu3EnCjHBr4l/bD8ZR6z8b/EFtpcdomh6JFHo0BtUmiEc0a5uFk+0MzOwnaaH
eD92GP7wBcvDWlmdRSekb/5fqbJSjRi4+R806TdG7ku79yCCcQgD7i4XIJ9dwPT+tfoX+w38RovB
tn+0nfeIfGF5a+B9J8FL4x/sVL+6h0/XNe0zUbKDRherbKzP5c2ozLEcKVknBEkZ+devNabqZbi4
0rubpyUVre7i/wBT2uGMTDDcRZXiK7Spxr0nJtqyiqkbt+SR8L+J9b1TxP4k8S+Ita8SXusa1qWo
XWoX+r6tM817qs08jyvcXLySSM88pbzJGaSQlmbLMTuPkE2ozmKUwRPLOJJl3nIVFEjIhZsEcD0+
bgYBzxvBJJRWiR5FWc5N1Z7t3fq9z9V/2IJ0v/hx4Tj0/TZbqbS9Ru7a7t7i3jljef7QblFKsCJ1
ImiYoy4JJUrgba/KT9q+9utT/ak/aS1HUVA1Cfx94gmnVQQFkbUblmABORyTwea46S/4U5J9Ivbz
cX/kccpJ05R81+TPsf8AZl/az/4Rn9nOx+HOj/s0/FPW/Ftk9/HFeaN4BS9t0vJJpJ4o/tJuSyjE
sQdfIJG7IViFNfBXir493Vlruv2viH4eeL4PGUN3PBqMGoaSIZre7EhWdZo2fekiuG3IQpDAg7T0
/m/D/SG9niqzl4Y8Ucz1SWU3aXW6+sK3Tufzn/xMtDkSXhdxVdaP/hHW/wD4Umr4C1/x5rtoW8L/
AAB+ImrWyTG3Mml+Fbm5USgLmMlGb5sMp2kk/MPXNUr39oG78JX3ifwzfeBPGmm6kGfTdW06fTGt
pFkimVnt7mEzA4SaCNjE6/LJECRuUEdn/Ex8XN04+GPFPNvb+ydenT6x5/iiY/SVjaz8LeKtN/8A
hI/++DptA8XeNPF9gx8F/AD4katCsptmlsvCtxcjzsAlC0LEB/nUlf8AaXAAIFeM3nxI/wCEdvNZ
8PeJPh14rs/ENtfT299a3GkmG4spVcq8To8gZJEcOrIy7lYtypBFNfSPjzOl/wAQx4p5u39k69On
1jz/ABQS+krF7eF3FWm//CR/98H6M/sg/tO23gb4e6toFt+zb8XNZu21uaZJ/DvgwXkKs0NsojZh
OpWQFM7AOjIe+K/O/wCPHxSl8UfHH4y+Jbr4feLbC61DxXq17LY6vpJiv7N5buaRorqMuSk6Ftsi
kkhwwzxXLD6RLWZTrPwx4ofu2t/ZPvfZ6fWNtPxRg/pIfHy+F3FW6/5lHZPf/aD/2Q==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/video/business/2008/03/18/delacruz.irs.checks.cnn.60x45.jpg

/9j/4AAQSkZJRgABAQEASABIAAD//gAMQXBwbGVNYXJrCv/bAIQAAQEBAQEBAQEBAQICAQICAwIC
AgICAwMDAgMEBAQEBAQEBAQFBgUEBQYFBAQFBwUGBgYHBwcEBQcIBwcIBgcHBwECAgICAgIDAgID
BwUEBQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcH/8QB
ogAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoLAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ
CgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJ
ChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeI
iYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq
8fLz9PX29/j5+hEAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMz
UvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3
eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna
4uPk5ebn6Onq8vP09fb3+Pn6/8AAEQgALQA8AwEhAAIRAQMRAf/aAAwDAQACEQMRAD8A/o1b4k/B
fwWhNj4QjV3XzJdWvoljjeXG0b5MM27sASCegzyK8N1T486j8Q/C3jO0iGl6jYRTTxWsVwsvlIIw
ShjaMxuCQRjlx068iv8AKyjw5jJKWJxydkloteqVm/Tp+R/VeX8OZji3VzPM60pOCi4uLT9nJTik
k3pdK1lytJWurNM/IXxh8e9bsP7T0m60KxurkhWj+0GQx20isDtZVYE8ZDEMpUnj7p3fEf7SX/BT
/wCDvhPV4LbQ9Nu9W+NFjJLBrEGn6vbWFjDMolR44buVnm875UDQLDMo81kZ0KkV+ycNcA4zNMbh
8PlNS32qrlZxjSsozkorWc2+TkjdJ3cZOMffj+j8TZzR4Nwss5r8lSnf2UabTTnKotufWMVaLlKT
05U7Jy5Yy+YNR8UfCz9pjSpvFafDJvDfjGK8+162ulQRpe2mxYoklmsQIba6hysO14ks5CXkdzKC
jt7H+0v+z/8AEj4f6l4ejtGtrzw7b6TaQQz24cKcRDPysAwycnkA+tfrVWvPII4bJs5r+1hCoo0q
neLptRbu22moWi2201KLcuVTn89wlnv9o1Y1sHT9n7WMrqTu4SjUlN0+ayvyus7S3lFxb1cj5F/4
Q7X76R5rgRicAKq9jj613Fppni6G3jjWOHAAHA9K/e/o74inW8ZeG6OD+NfWuX/wixDf4XP0zC4H
NKdSeJja89/0P7Jfil8KIviH4buPD63YtIyN0cggSQx45/i5GeMkEHjrXgPiqPxb8KfA9re3WiR3
NhpVvHDIIEeRbx/urmQ/NCB94lkI4AzzX8JUpRqUlhJaXknf5Wt+R+U5RmNGpQWCrya966fdtWt5
a6re+2h+R3xB8MeKvHt1448eaVpiW8ESyX06qwiiHBOA2MMxxz3JycV5n+w38GP2Vz8OL74f/EDw
zp+rfFXT9Hh1DxbHqNtHqNzG09slzLEywGV4lJkfZBKqO+x3Cv8AM5/bODH7PK8wo4Vv21FUFKSV
moNVL69LuMeq6LVtJ83GDhLHZJSxmtGXtuWL1TqL2Sg2m1dqLnbST1b0SbPlLWvh94J8EftLfss+
Nf2Yb5dR+BWufESLQtRtbe+sLy38OKdsl7HbGKZwlpc6c97/AKO2DGYldI1ZlV/0y+JHxO0HXfiB
4l0a8sg/h+G5aGAgZGxeB+grn8RMG8SssqyXLiVGo6l9JXg4ezve3/Pycr/alKbvqHhjl08bjc0h
QdsIrSo2aaTlpO3K2vsJJbKMYrSzS+MfiB4XhuPEl3qPh/SyNIyGLIhIHNc1Fpo8tf3Z/L/69fs3
0S6sqnjdwjCrK81HFqXr9QxR+8ZFip1Y1cFiVapSdteq6M/bTQP+Cgt1f3cC6zptrp+lkfvJNUuV
tp3448uEZLk+mc819Gj9obwV478NW1ugiutGu4CZJIJFkSUOMEEjkccFTyDmv4xzDAYrL4xnL34P
RyS92+9k38Wi1fR6H5TV4TpqUHhG4yvfllvZbPTbX/M/MP8Aaf8A2gfDngq307wr4eOl6ha2tyHW
CEyKyxgENFcIPlYnPLAnJHKiuL+Gvxps5vB3hS80rRNLXxOtsyXV2YNLV7iKGMqGuLi8vrGP92rY
KM7c84xtNfrnAOCxX1KrVk3H6w1J30dlotV9lqTeqfRLbXzOI5wgqDq61KfNFLfWVpSst21yJRSd
9+u3D/F348eF4fjV8APhSPDtrb3mrrf39hBYwQ2x0VLaA3ck0yx7lSSWISwBVJVlluPnOMN4rpvi
ey1LXL+W4c/vZ3O4n/aNe1xJgayVFt3fJJ6u97za/OP3ep6fh/mlB4jGOEOW04xfbSnB6dPtPXXW
66H2D8J9N0u+FzDPbxS2kq7XVh1GKTWf2cobnUJ7jRrtVsHO5V/uZ6jrXt/RcxmKpfSO4cwkZW9o
sX8nHAYp3+5NH6jnMJfWIVsM+WTjq+6f/DI53wV+ytBqbaj4v1PQ7zR9c2yQ2tneTC6jWQp98kjJ
GWBXa3GPwrxTwX4C+I3wW+Ktna69bm2tNS3oLtJT5NwpJwySDodwHBwfUV+K4HinCZlisbk9esp3
pclOUVaM2ouT93ZS29eWz6Hl1KGEeIpRwaStNSevNe6V1fqoq+mu77Hjn7XXi/8AZ8+GSeKNT8Xe
LpG8forSHS9MuRc3LTHy2xJHykJIlRwJHj3BvlzxX5gfB/8AbD8X6J4y8QWvgbWLjSrnxFdWYXy2
guEtpoYEj3eTLGys5JKNPtiYhIQpdUOz9i8OMrzPGZF9dzGnyUuWPsVZpyjo+ZrT3WklF6Np8y0U
W/w7xR4iyrCZtSyzJJ89VT5q0k01CWq5FdP3023O2kbcju3NR3/i9+1bqq/FTw74p0eeSPV/C32+
JLzUoXm/tm8uk8u7L/KD+8TZGhBTy1U4P73936p8L/2ofAfiPTYb/WrxtM1JMi6glJkEUwJyi7Rv
bsynYAQQPvAqPrM0yCeNyujXoa1Yx0XRxbclHe11zWv8m7Wa+V4X4shk2c1qGLv7Ccveet4zSUXL
bVOz5lq9Lxu9H+oHwo8YM8dhNY3we1mRZIpo33LIrDKkEcEEcgjgg19laR4iu/sSebdKWz1Y84qP
oyYBUvpOcKU6sLSTxya7NZfjLp+jP68yyrh8zyuhiYNSi0nGS2cWrpryd7n1npN7p8FksF9GuVyV
BGf5556ivNfjz4x8HeGvgj8VfH3iHwnBq2leGfD2pa8dPlYRG4+xW0tx5ay7XMLMI9ocKSpOcHGK
/wA9v9qo4hYmhNxcWpJp6p91Y+CqQxEKrrU5tJNNO/U/gj1Tx9f+L7rUdd12/mu9XuLh7y7uJpGl
aWZ3Zmd2PJYlixJ6k896ufCrXB4M+IPhbxSbkvY2GqWWpm0VmaPUkgmVzBtCsNzA7QzABQS2eMH/
AFFw+Go4PDwwlCCjTglGMVokoq0Uu1krLsfxpisbXx+Inj8RUcqs5OUpbtyk25Pzbbd+9z6N/bp0
4237Q/j06PbTReHvPtI7QR24jgcixtJJAjqf3km6RS5IJAkQZwSK+R5dSu9OthNdR7bsuuWVyWkV
QeGHQNz9ea58tS/s/DJrXkh8/dR05jKUcxxU1tzT8rau1v62+8/b3/gnN8VZfG/wtuPDut3bTa34
cvVsw5Zmc2Ui77YszE5wVmjAHRYVFfsLpN/BJYwnzz0xzS8CcLTwv0sOHY017nNjJfOeWYqUv/Jp
P02P7I8IMxq43grL54mV5KLh8qc5U4/+SxXru9z4i8Nf8F3fgJ49S7Hgb9kT9oXWBa7Bcf2X4A06
7EBfds8zydTbZu2tjOM7Tjoa+eP25P8AgpX4+/aF/Zu8T/Bn4H/sN/tDadq+u3MNtql5rXwzkhib
TRueaNHtrmdt7ukCEbQDG0oLdAf8y+GMZxNiOLMtyuXh3n2Jre1hOWFo5ZWqV6kKb9rUjCkmpyfs
oyl0tFOTaim1/D1b6Z1TPMlxKyPwO47m6lOcadSHD3PBTs4p80cXJWjLeydmnpfQ/nA8EXnxQ8YX
F9/whnwJ8d65YQqqXiaV4au7o2zMSYmbydwUkIwG7GdnGcGvcPDPhn9orRri7nj/AGQPjC9pNbvC
0UfgTVlSU5V03eWFJCukcgySoeNGZXClG/rnC/SMhmma08hyzwx4orY6ony0KeU89aTUXUfLTjiH
N2ppzdou0E5fCj+est8dOJMfh1iMB4K8Z1qbb5ZU8gqTi0nZ6xrtOzTTs99N0U9W+MPxS/aC1TUv
E+hfADx/qXiVhbjWG0HwzdXkMTCPyosbC7puWNyA7HOWA5Us2ddfD/8AaHvbSRLP9kD4uL12kfD3
Um8wnGSz7f0Arnyn6QlPFZlR4cyvwy4or42WkKFPKeevNQp8ztSjiHOTVOLnK0dIpy0irrpoePvE
2dUfruC8FOM6sZ3tKnkNWcL3admq7W91vo7rdH0V+wJ+1Hrnwt8Q+P7gfs6/E/xH4bvLW2S6j8K+
EG1Ca2uY3cwGT96gjUo9yOuSVXg4JH67af8A8FFhFbBV/YP/AGkmGeCnwvyO3f7XXV4cfSMpZR49
8P8AE9Dwx4oxEqMK6lhaGU+0xlSUsHiYXpUPrC5lGE4zl7ytTjOdnbX9q8KvpiYzI+HPqlbwP46x
MXObhPD8PupDldrrm+tR1U1O9rpbXvov/9k=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/most_pop/topics_up.gif

R0lGODlhOwAIALMAAMoAAv///+N3ePG7vNhERdUzNdEiJO2qq99mZ84RE/TMzPjd3eaIidxVVuqZ
mvvu7iH5BAAAAAAALAAAAAA7AAgAAAS1EMhJZSEYJ1CEKJKRGRYIGB4pNWnlSsErDUFdE0ygKIED
CLaAADAYABA6HgKQGywCDRmlJv3FOEIJsHM9PIjGx2G2AAQYEge6aqbKgNrABpAQwpmxIgFaWTwc
CCpsQW9XdzAeAUUBY3oBBBUGDk9Zg24vd0iQAHsIQB4IG0UGAUs/YwQkBgdXVZeYVwkLCg0NCgsJ
hzNGAw8NCA9osw0Et2xmbIcFrIwgumB0DjUMG8s1AyYyEQA7

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/most_pop/topics_dwn.gif

R0lGODlhOwAIALMAAP///8oAAuaIidhERfG7vPTMzPjd3dUzNdxVVvvu7tEiJOqZmu2qq+N3eN9m
Z84REyH5BAAAAAAALAAAAAA7AAgAAASzEMhJaSEYJ1CEKJKRGVIBAoZHSoxavXA1BDRNNMFxBA4g
1AEBYDAALHK7BQA3UAQYsSjsVwpKfp2ABPEYFh8ISRMQaEgcZhiwFqX6AhtAIujGeQnPiuLhWKxi
a1JubhJ0AUQBYUR4BBUGDk5WUWyCWkYBjQB4Cz8eCxtEBgFKPmEEJAYIlpNSV5YJCgcMDAcKCYRi
RQMPDAsPZrEMBLWtxW8TBaqJILhecg40DRvJNAMnLxEAOw==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/content/partners/cb336/cb_logo.gif

R0lGODlhiwAhAPcAAAAAXfj4+wAAUgEBYv9ZAP/28Ovr8/9UABoac9PT5IODs/T0+f97K/Hw9gAA
VQwMa/Ly8v+YV/9uE2tqpcPD2//CmuPj7gAAWf7+/v/Ho/9pDf9fAMjI3TQzgysqe//79//cxP/+
/UNDjM7O4f/x5v/07f+ve8rK3/++lH19sP/hzPv7/f39//+HPP+rdXNzqf/9+//RtP9xF/9lCf/5
9Hp6ra2tzf9PAC4uf5ubwv/Vuv9jAv/r3khIkPr6/P9+Mv+MQv+eYe3t7dfX59vb6mJinv95JP/l
001Nj7i305CPuunp6f/8+gYGZxUVcL6+2P/p1yQkeTAwe/z8/VdXl3d3rDY3hv9cAIGBrxAQaUhI
iyAgdru71j8+hP+QSf+lakBAh5OTvqGhxv+3ibOz0jk5gvHx8fn5+efn5//+/g8PbBMTbpCPvAkJ
Yfzs4v9dAImIt//Yvjo6iP92I/7///9gBY2Nufr6+vv7+ysrdP39/gcHWAAASv///n2Ct/9eCDQ4
if9dAaenyggHYv9eA9jZ6P91K+bm5v///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAiwAhAAAI/wARCUQk
ZMmhgwgTKlzIsKHDhxAjSpxIkeESIQMHCkFj5gyGjCBDihxJsqTJkyhTqjSJ4YwZNBgFFryzsqbN
mzhz4rxzUSAaPDqDCh1KFCUeNATNFF3KtGlOMwXPOJ1KtSrIMwY/Wt3KlSiGg13DisUJduxKrWar
lk2LMkCZJiNMQgES4YMCB1UynmiyxQBbkGv/lgwgZUDckhluEIDiR8ALvQCc+BUsMDBlkQE6GDZZ
4suYECkc6x2AYDJly5dBZh6QQGXoxwNHkDYtGLVKEhlQHBGYBgSKCrsRkVBRQAcP4RkqqMjoO0MJ
RCGgHCERZ4FmCmS4rEBk4YTfQicWLP8YMQTRa0RTuJB5MhvRCg42Do+3QIQCV9sooRg5cEADCEQV
1MHfDBkgYsIfQBzgHAN1aECICYjA4EIgGrzBgBsw/KCBERq4AUgTOFxwgQKIVLEHHIhYsccTJ7Qh
xRQKiBaGiDg8UFoASAyyRhtFIMJBG1YgIMJ9h+D0xQFBHBlEHy0c4IIJBBgRggsE7NACFC7cMAYJ
MmhQwhEbGEECCjeggAgDV8wQRAlWXDBBDgDggMgLApCIgwNccABAFCzEmJcVAOQwAQAILJCDAEhY
0AMACchGqB1E3kTDHBLQQMIVLcDQggQ8FLCDBAWYgKRAQBAQAyItEKCCDgREgIgKBAT/EQIDBFSA
SGYAUNDAA04sUIMDJLb5hJ4e9ClADQusoUYAJxC6wAQChGGeAGIkMIATRHSFH2cS/AADDRXEQMdw
IFSwgwyhHmBmCKnqgIgXB+jAqqtHtAoDAxvEcatmCVjwQBYGpAAsIiJcQAGxxtawqxoGWItAA9BC
ioUAbCQAgBxhbVtSAd1+QMdAMcxxxRvnpltgCEBc4UIGDBwQgw5X/FABlRHcu8F/qw3hL8ACk1jw
wQAUG6PCDzzQMGkQO0BFElQ4UDEAPQx0QmsNPGHBAglQMITVFlBgQU4ak8TxDx8MVIARBHg2A7qi
ngzEBjPMoMEM8m6www5xB2Ezzprp//xvwAP/jPDQuxrtMMQADKA4AE9HjUgYUXhwAhJ5iGADAlFs
4UEPRChgA9hF2jQ2E30U8AGYXiBSgAagtg1dqRXwQAIJTMRAABA85F7CB/jyPYDfPAdu8ODHFn70
wxM4MMEQQxCxgJ5Rr1BGDlhgIQUFWijRhRhg5LDFCmjdFPZIHDMgHANBqPCGC4hA8anJr5uKyBct
qGC7qzy0YAITve/L2s6AQxEYhhe0hBmgaMeDmABQZAMkkGEEUEOED7qQBD1QoAxEQIIStEAGLYgh
Cj4IyvhEwjsNFEAFB/ACmCJAAxQQgG0KEogX5MeAG4AgDgRInQpuEIFZ3WxfAPBOE/+cEIAqOOAF
DdhCroiHLCc0oQEWKxS0sFAiPoTBYlHDAAUbkAQMalALNvAgCEUYOpu44AAtaBkKaCCBK3BoA6DK
kq0QkaUIVEADXuIB3lAQhBvYag4EwNmdivACB1gBEXfhCwCGdwE+YYEPjxHBEYvggDUYSgA4sEEH
ADCCEzhABAsgQheUUIQUSOEJYFACGGwgghwgIIQ6GaFI3BABGcggAiWgAwoYYIQxRKAFBUCBIU6F
iBLUUgIMmGMFfiCBW5YABhH4wXJ8QAU5UAEBHvjcEOTgBCQUAQcjSIAUqMCCHORBCYhIggcQQIUu
iKABz0KAGhBQA0SIswpJmIAgcCCMAgtMoANF4EJAJ2CDHmwnlmWUFA0y8oGywYAJEfpACDJCA9Nl
hAkFWCgi0sCED6RBID7YzgICMJAVNEAgAcAABgIQwikEYAooXYB7fKCVBcBTICtdwQpI2gCSIsIA
elipS10qFFmm5qhFTShSl9oUozL1qSpxKlSnWhKpUvWqgFEqVreKEqty9aqHCAgAOw==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/content/partners/cb/btn_search.gif

R0lGODlhMwARAMQAAPLAwOugofng4NEgItQwMuFwcfXQ0Pzw8M0QEu+wseiQkd5gYdtQUfPFxfG6
uswGCPPHx8sJC9AbHfC2t8oCBNMsLt9lZ95iZN5hYt9kZddAQeWAgf///8oAAgAAAAAAACH5BAAA
AAAALAAAAAAzABEAAAXOIMdNUmeeaKqu7Bo5Ipe1dG2nFgfdfL/uvqCwNRgMTQjCEYUQiAAdQAza
SXA0HU3sgLVyBIMNx8TZ+AplsQZg0GiUA1EgyymgE4u6ghMQk809WgIBC1EHAACFaAEHdAFWDAEC
JgQEYohlQRoKBxwLAAIbG1gGgxwMWgadkZMdlWKimT1qextsbhpxBgAHAVpvHApoBQF8fh2yPE0i
YFIxYkbFvx27USIGCMfJKRRESkcD3zcUD0vmKg8V5+smFQ3s6w0cGPBLFzEk9T4vIiEAOw==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/right_rail/grey_corner_BL.gif

R0lGODlhBAAEAKIAAPn5+fz8/Pb29v////Ly8gAAAAAAAAAAACH5BAAAAAAALAAAAAAEAAQAAAMJ
KLSxNGCNEUQCADs=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/global/nav/footer/corner_footer_tl.gif

R0lGODlhBQAFAKIAAOTk5Nvb29zc3OPj4+rq6uDg4Nra2uvr6yH5BAAAAAAALAAAAAAFAAUAAAMM
aBqjRceUQwWl4J4EADs=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/global/nav/footer/footer_google_logo.gif

R0lGODlhLwAWAOYAAObm5unp6eLi4uHh4ZOTk+Pj4+rq6oGBgXBwcLq6usLCwujo6Ht7e9ra2tjY
2MzMzKqqqtDQ0L+/v+Xl5aurq7S0tNvb28nJydbW1sbGxo6OjnFxceDg4M3NzX19fdzc3ISEhMHB
wYODg7CwsLi4uJKSksvLy56enouLi52dnZWVldnZ2X5+fpCQkImJiWlpaXl5ecXFxbm5ubGxsbOz
s9/f33Jycr29veTk5IWFhW9vb76+vsDAwMrKytHR0XR0dHNzc5eXl8TExGtra62trYqKiufn587O
znh4eJ+fn2pqaoaGho2Njd3d3XZ2dsjIyNXV1VdXV4+Pj4eHh4CAgJaWltLS0rKyspmZmdTU1Fpa
WtPT01BQUJqamru7u6Ojo21tbampqZubm1lZWby8vLW1tX9/f5SUlGRkZJycnGFhYZiYmIyMjLa2
tpGRkWxsbM/Pz6ampnp6el9fX6SkpKCgoKKiouvr6wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5
BAAAAAAALAAAAAAvABYAAAf/gHaCd4SDd3aEh4eDgoiLiI2JiZGKi4WVkIqZl5qTnJ6dlqGZpIyX
kY6Ok4aPlKmdm4+fr5K0haq3nqmmmoysq6q/ksPExcbHyMnKy8zNyQEAAc4fGUImAM7EDWZOA8wA
SVUUFBowXwbZiRwbB98sKgWEAARp6YkGLCLMEAjeiQLS7jiQ0UZBwAEZ4uwwQsiIiRhPOjRhoG9B
BxkJJliIsGKYjRLGHpS4IOFAlwJHWsQQ4qJFAQ4qwhDQEqTAjyUB7FTwoYHABx4XJAkAQ6CYADkK
CGVAkADEFUINflAQA+JOABtuarwo0kMDhy1YCAwAgC3Rgg1UFiSC0qMDDwQR4AgN8GAHyQhCBqS4
QAIC3YkDH5QwGaEhwQwHx+xECXrHQgU2Gyo4uUEowAE6DIoSaoEigRoKDjyQwPEChQQEJpI12aAj
LqEUQzBMQYHjDoYDD9YoiVsgR4U7ZFLMgXCHA5ocAoCcEXBnQrxiGDwMOUHjBpMlArIUCaKgTtIa
KgiEgEBELYAQXBg0mMCABZwEFE9A8FdsgQIaM3asCAjgwREB6NxhAAY+WIAOCS4QMQICQFggwADe
rBBCBhPYo8wFOjxAiANvSGChPSSM4eEdDRxgxYfpFFACDEmUkYIXzAQCADs=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
Content-Location: http://www.cnn.com/cookie.crumb

R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/global/nav/footer/corner_footer_bl.gif

R0lGODlhBQAFAKIAANvb2+Xl5dzc3OPj4+Dg4Nra2uvr6wAAACH5BAAAAAAALAAAAAAFAAUAAAML
GLYmbIWwEhctYCQAOw==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/1.gif

R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAQAICRAEAOw==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
Content-Location: http://metrics.cnn.com/b/ss/cnn2global/1/H.1--NS/0?pageName=No%20Javascript

R0lGODlhAgACAIAAAP///wAAACH5BAEAAAAALAAAAAACAAIAAAIChFEAOw==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/global/nav/header/header_search_btn.gif

R0lGODlhQgAWANUAAPLAwNAeINEgIs0QEvng4NQwMt5gYeFwcfzw8PXQ0OugoeiQke+wsdtQUcwM
Ds0PEeBpat1dXtMtL/bS0ssDBcsGCPnh4dY8Pvjb2/je3uWEhdtUVfTJydpLTOmWl8wJC+ufoM8Y
Gu6ur9MqLNpOT9dAQeWAgf///8oAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAAAALAAAAABCABYAAAb/wNNp
EhmhjsikcslsOp+oAiQjPHkq0Kx2+3SIThwKd0zeOiydsnrNhDzYcLYkTi8HtoVB/Vhi36ENBEIJ
egBVJwBHBUICR4cEfQMLCCcIBigmJ30lJyZQf08EBA0LnSiGJqmXKApCB44EJqUJp4iTJwOZm6ZP
oE4IBAYDJQW1JceNKAgJJ7QoiCgDJwTSCHwmBZkHJQe8Tr5NmUIAfYZVng0nBwwnjZUAlAaciUni
559aAuvQhsclja0UoHoWixm2ZkcE/NPGzVsTcEukARgwQJQxf9IePUskUdkJAwKYCdCFgpOnXlla
3TNXxcCJBUfYLaKH0GUVBZg0lXTIBCKTQ2wHiqEwkKpoCRPJjh5ddeDkUWzXGo3sg3KPVXxXs/Z8
o7XrEQkXvHqNAECM2KsfMJzQcNZqBRBVAJAI0dbPhglCggAAOw==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/global/nav/footer/footer_search_btn.gif

R0lGODlhQgAWANUAAPLAwM4cHevr680QEtEgIvng4OFwcfzw8NQwMt5gYfXQ0OiQkeugoe+wsdtQ
UeXCwtApK8wLDcoDBeOxscsGB8wOENZWV9hhYuS5utAsLubKytI3Oc0WGMsICtRISeGgoefNzc8n
KN2Ki9t6e+fP0NRFR9VNT9+Tk9dAQeWAgf///8oAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAAAALAAAAABCABYAAAb/QIHg
YQmtjsikcslsOp+rzAUkFIgo0Kx2+4x8BBgJd0zeRkilsnrNvFTYcDYkTi8HtohB/Yhi36EOBSoq
CnoAg4MARwiDBEeIKgV9AwsHKgcJKykqfSgqKVB/TwUFDgufK4cpq5krDIMGjwUppwqpKgCVKgOb
nahPok4HBQkDKAi3KMqOKwcKhI+KA5HTB3wpCJsGKAa/TsFNm4l9h4igDioGDSqOlwCWCZ6KSeLm
oVoE6rjJy64qDKpWRErxDBu0FQRQENDGzVsTcEumARgwgBQ/ZdMgFRAobR88As8WclrhCRSwLK/s
lUOUQMWCI+sYzYPWEhEDTSNL3suSzQCyQBUJVglFkYIZUaKtDJgkiu2ao4V9Tu6ZupOq1SUB3lzd
egTCBq5cLUwQA5ZqBw0CRpSdSuFElQkeOKz1Y+KBkCAAOw==

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/css/2.0/common.css

BODY {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: #dadada; =
PADDING-BOTTOM: 0px; MARGIN: 0px; COLOR: #000; PADDING-TOP: 0px
}
BODY {
	FONT: 12px/1.25em arial, sans-serif
}
TD {
	FONT: 12px/1.25em arial, sans-serif
}
TH {
	FONT: 12px/1.25em arial, sans-serif
}
TEXTAREA {
	FONT: 12px/1.25em arial, sans-serif
}
SELECT {
	FONT: 12px/1.25em arial, sans-serif
}
H2 {
	FONT: 12px/1.25em arial, sans-serif
}
H3 {
	FONT: 12px/1.25em arial, sans-serif
}
H4 {
	FONT: 12px/1.25em arial, sans-serif
}
H5 {
	FONT: 12px/1.25em arial, sans-serif
}
H6 {
	FONT: 12px/1.25em arial, sans-serif
}
P {
	MARGIN: 12px 0px
}
A {
	COLOR: #004276; TEXT-DECORATION: none
}
A:visited {
	COLOR: #5c7996
}
A:hover {
	COLOR: #ca0002
}
A:focus {
	outline: none
}
.clear {
	CLEAR: both
}
.cnnAlignCenter {
	TEXT-ALIGN: center
}
.cnnHidden {
	DISPLAY: none
}
.cnnT1wool {
	FONT-WEIGHT: bold; COLOR: #949494
}
.cnnWOOL {
	FONT-WEIGHT: bold; COLOR: #949494
}
.cnnLiveWOOL {
	FONT-WEIGHT: bold; COLOR: #ca0002
}
.cnnVerticalBar {
	COLOR: #dadada
}
.cnnHeadLnk A {
	COLOR: #000
}
.cnnHeadLnk A:hover {
	COLOR: #000
}
.cnnHeadLnk A:visited {
	COLOR: #000
}
.cnnHeadLnk A SPAN {
	COLOR: #004276
}
.cnnHeadLnk A:hover SPAN {
	COLOR: #ca0002
}
.cnnHeaderLnk A SPAN {
	COLOR: #000
}
.cnnHeaderLnk A:visited SPAN {
	COLOR: #000
}
.cnnHeaderLnk A:hover SPAN {
	COLOR: #ca0002
}
H1 {
	FONT-SIZE: 30px; MARGIN: 18px; LINE-HEIGHT: 1.25em
}
UL {
	MARGIN-TOP: 0px
}
.cnnPad1Top {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 1px
}
.cnnPad2Top {
	PADDING-TOP: 2px
}
.cnnPad3Top {
	PADDING-TOP: 3px
}
.cnnPad3T {
	PADDING-TOP: 3px
}
.cnnPad4Top {
	PADDING-TOP: 4px
}
.cnnPad5Top {
	PADDING-TOP: 5px
}
.cnnPad6Top {
	PADDING-TOP: 6px
}
.cnnPad7Top {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 7px
}
.cnnPad8Top {
	PADDING-TOP: 8px
}
.cnnPad9Top {
	PADDING-TOP: 9px
}
.cnnPad12Top {
	PADDING-TOP: 12px
}
.cnnPad13Top {
	PADDING-TOP: 13px
}
.cnnPad14Top {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 14px
}
.cnnPad16Top {
	PADDING-TOP: 16px
}
.cnnPad16T {
	PADDING-TOP: 16px
}
.cnnPad18Top {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 18px
}
.cnnPad30Top {
	PADDING-TOP: 30px
}
.cnnPad156Top {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 156px
}
.cnnPad5 {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 5px
}
.cnnPad9 {
	PADDING-RIGHT: 9px; PADDING-LEFT: 9px; PADDING-BOTTOM: 9px; =
PADDING-TOP: 9px
}
.cnnPad8 {
	PADDING-RIGHT: 8px; PADDING-LEFT: 8px; PADDING-BOTTOM: 8px; =
PADDING-TOP: 8px
}
.cnnPad10 {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; =
PADDING-TOP: 10px
}
.cnnPad12 {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; PADDING-BOTTOM: 12px; =
PADDING-TOP: 12px
}
.cnnPad18 {
	PADDING-RIGHT: 18px; PADDING-LEFT: 18px; PADDING-BOTTOM: 18px; =
PADDING-TOP: 18px
}
.cnnPad5Left {
	PADDING-LEFT: 5px
}
.cnnPad6Left {
	PADDING-LEFT: 6px
}
.cnnPad9Left {
	PADDING-LEFT: 9px
}
.cnnPad8Left {
	PADDING-LEFT: 8px
}
.cnnPad12Left {
	PADDING-LEFT: 12px
}
.cnnPad18Left {
	PADDING-RIGHT: 0px; PADDING-LEFT: 18px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
.cnnPad5TB9LR {
	PADDING-RIGHT: 9px; PADDING-LEFT: 9px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 5px
}
.cnnPad5T9LR {
	PADDING-RIGHT: 9px; PADDING-LEFT: 9px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 5px
}
.cnnPad12LR {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
.cnnPad12L9R {
	PADDING-RIGHT: 9px; PADDING-LEFT: 12px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
.cnnPad5TB12LR {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 5px
}
.cnnPad8TB12LR {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; PADDING-BOTTOM: 8px; =
PADDING-TOP: 8px
}
.cnnPad7TB12LR {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; PADDING-BOTTOM: 7px; =
PADDING-TOP: 7px
}
.cnnPad9TB12LR {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; PADDING-BOTTOM: 9px; =
PADDING-TOP: 9px
}
.cnnPad10TB12LR {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; PADDING-BOTTOM: 10px; =
PADDING-TOP: 10px
}
.cnnPad14TB18LR {
	PADDING-RIGHT: 18px; PADDING-LEFT: 18px; PADDING-BOTTOM: 14px; =
PADDING-TOP: 14px
}
.cnnPad10T18LR {
	PADDING-RIGHT: 18px; PADDING-LEFT: 18px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 10px
}
.cnnPad5TB {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 5px
}
.cnnPad5B {
	PADDING-BOTTOM: 5px
}
.cnnPad4Bot {
	PADDING-BOTTOM: 4px
}
.cnnPad9Bot {
	PADDING-BOTTOM: 9px
}
.cnnPad3T11B {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 11px; =
PADDING-TOP: 3px
}
.cnnPad18TL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 18px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 18px
}
.cnnPad9T4B {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 4px; =
PADDING-TOP: 9px
}
.cnnPad18TR {
	PADDING-RIGHT: 18px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 18px
}
.cnnPad18BL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 18px; PADDING-BOTTOM: 18px; =
PADDING-TOP: 0px
}
.cnnPad18LR {
	PADDING-RIGHT: 18px; PADDING-LEFT: 18px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
.cnnPad18TRL {
	PADDING-RIGHT: 18px; PADDING-LEFT: 18px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 18px
}
.cnnPad18TBLR {
	PADDING-RIGHT: 18px; PADDING-LEFT: 18px; PADDING-BOTTOM: 18px; =
PADDING-TOP: 18px
}
.cnnPad18TRL14B {
	PADDING-RIGHT: 18px; PADDING-LEFT: 18px; PADDING-BOTTOM: 14px; =
PADDING-TOP: 18px
}
.cnnPad18TRL13B {
	PADDING-RIGHT: 18px; PADDING-LEFT: 18px; PADDING-BOTTOM: 13px; =
PADDING-TOP: 18px
}
.cnnPad8T5B12LR {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 8px
}
.cnnPad9T25L {
	PADDING-RIGHT: 0px; PADDING-LEFT: 25px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 9px
}
.cnnPad14T5B18LR {
	PADDING-RIGHT: 18px; PADDING-LEFT: 18px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 14px
}
.cnnPad18T14B18L {
	PADDING-RIGHT: 0px; PADDING-LEFT: 18px; PADDING-BOTTOM: 14px; =
PADDING-TOP: 18px
}
.cnnPad18RBL {
	PADDING-RIGHT: 18px; PADDING-LEFT: 18px; PADDING-BOTTOM: 18px; =
PADDING-TOP: 0px
}
.cnnPad7T18LR {
	PADDING-RIGHT: 18px; PADDING-LEFT: 18px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 7px
}
.cnnPad7Top18Left {
	PADDING-RIGHT: 0px; PADDING-LEFT: 18px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 7px
}
.cnnPad9T18L {
	PADDING-RIGHT: 0px; PADDING-LEFT: 18px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 9px
}
.cnnPad18TLR {
	PADDING-RIGHT: 18px; PADDING-LEFT: 18px; PADDING-BOTTOM: 12px; =
PADDING-TOP: 18px
}
.cnnPad18T8B18R {
	PADDING-RIGHT: 0px; PADDING-LEFT: 18px; PADDING-BOTTOM: 8px; =
PADDING-TOP: 18px
}
.cnnPad18TBL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 18px; PADDING-BOTTOM: 18px; =
PADDING-TOP: 18px
}
.cnnPad18T25L {
	PADDING-RIGHT: 0px; PADDING-LEFT: 25px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 18px
}
.cnn10pxTB12pxLRPad {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; PADDING-BOTTOM: 10px; =
PADDING-TOP: 10px
}
.cnnPad7T12BLR {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; PADDING-BOTTOM: 12px; =
PADDING-TOP: 7px
}
.cnnPad9T18L12B {
	PADDING-RIGHT: 0px; PADDING-LEFT: 18px; PADDING-BOTTOM: 12px; =
PADDING-TOP: 9px
}
.cnnPad9TRL6B {
	PADDING-RIGHT: 9px; PADDING-LEFT: 9px; PADDING-BOTTOM: 6px; =
PADDING-TOP: 9px
}
.cnnPad4T9RL6B {
	PADDING-RIGHT: 9px; PADDING-LEFT: 9px; PADDING-BOTTOM: 6px; =
PADDING-TOP: 4px
}
.cnnPad9R18L {
	PADDING-RIGHT: 9px; PADDING-LEFT: 18px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
.cnnPad18TL9R {
	PADDING-RIGHT: 9px; PADDING-LEFT: 18px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 18px
}
.cnnPad16T18RBL {
	PADDING-RIGHT: 18px; PADDING-LEFT: 18px; PADDING-BOTTOM: 18px; =
PADDING-TOP: 16px
}
.cnnPad9T18RL {
	PADDING-RIGHT: 18px; PADDING-LEFT: 18px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 9px
}
.cnnPad9TR14B18L {
	PADDING-RIGHT: 9px; PADDING-LEFT: 18px; PADDING-BOTTOM: 14px; =
PADDING-TOP: 9px
}
.cnnPad4T9RL6B {
	PADDING-RIGHT: 9px; PADDING-LEFT: 9px; PADDING-BOTTOM: 6px; =
PADDING-TOP: 4px
}
.cnnPad9T12LBR {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; PADDING-BOTTOM: 12px; =
PADDING-TOP: 9px
}
.cnnMar9Left {
	MARGIN-LEFT: 9px
}
.cnnMar9Right {
	MARGIN-RIGHT: 9px
}
.cnnMar14TB18LR {
	MARGIN: 14px 18px
}
.cnn14pxTxt {
	FONT-SIZE: 14px
}
#cnnLeftCol {
	FLOAT: left
}
#cnnRightCol {
	FLOAT: left
}
#cnnHeaderContent {
	MARGIN: 0px auto; TEXT-ALIGN: left
}
#cnnContentContainer {
	MARGIN: 0px auto; TEXT-ALIGN: left
}
#cnnContainer {
	MARGIN: 0px auto; TEXT-ALIGN: left
}
#cnnContainer {
	WIDTH: 1002px
}
#cnnContentContainer {
	WIDTH: 984px
}
IMG.cnnVidIcon {
	MARGIN: 2px 2px 0px 4px
}
IMG.cnnPicIcon {
	MARGIN: 0px 2px 0px 4px
}
.cnn728Container {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: #fff; =
PADDING-BOTTOM: 9px; PADDING-TOP: 9px; BORDER-BOTTOM: #e6e6e6 1px solid
}
.cnn728Ad {
	BACKGROUND: #fff; MARGIN: 0px auto; WIDTH: 1002px; TEXT-ALIGN: center
}
.cnnWCBox {
=09
}
.cnnWCBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/basepl=
ate/corner_dg_TR.gif) #fff no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: =
4px
}
.cnnWCBoxContent {
	BACKGROUND: #fff
}
.cnnWCBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/basepl=
ate/corner_dg_BR.gif) #fff no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: =
4px
}
.cnnRRBox {
=09
}
.cnnRRBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/grey_corner_TR.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: =
4px
}
.cnnRRBoxContent {
	PADDING-RIGHT: 9px; PADDING-LEFT: 9px; BACKGROUND: #f2f2f2; =
PADDING-BOTTOM: 5px; PADDING-TOP: 5px
}
.cnnRRBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/grey_corner_BR.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: =
4px
}
.cnnWireBox .cnnBoxContent {
	BORDER-RIGHT: #dfdfdf 1px solid; BORDER-LEFT: #dfdfdf 1px solid; =
BACKGROUND-COLOR: #fff
}
.cnnWireBox .cnnWireBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/basepl=
ate/corner_wire_TR_bg.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: =
4px
}
.cnnWireBox .cnnWireBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/basepl=
ate/corner_wire_BR._bg.gif) no-repeat 100% 0px; OVERFLOW: hidden; =
HEIGHT: 4px
}
.cnnWireAdBox .cnnWireAdBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/adv_li=
nks/corner_dg_wht_tr.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: =
4px
}
.cnnWireAdBox .cnnAdBoxContent {
	BORDER-RIGHT: #cdcdcd 1px solid; BORDER-LEFT: #cdcdcd 1px solid; =
BACKGROUND-COLOR: #fff
}
.cnnWireAdBox .cnnWireAdBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/adv_li=
nks/corner_dg_wht_br.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: =
4px
}
.cnnWireLtgBox {
=09
}
.cnnWireLtgBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/adv_li=
nks/corner_ltg_TR.gif) #fff no-repeat 100% 0px; OVERFLOW: hidden; =
HEIGHT: 4px
}
.cnnWireLtgBox .cnnBoxContent {
	BORDER-LEFT-COLOR: #e6e6e6; BORDER-BOTTOM-COLOR: #e6e6e6; =
BORDER-TOP-COLOR: #e6e6e6; BORDER-RIGHT-COLOR: #e6e6e6
}
.cnnWireLtgBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/adv_li=
nks/corner_ltg_BR.gif) #fff no-repeat 100% 0px; OVERFLOW: hidden; =
HEIGHT: 4px
}
.cnnWcLtgBox {
=09
}
.cnnWcLtgBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/corner_lg_TR.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnWcLtgBoxContent {
	BACKGROUND-COLOR: #fff
}
.cnnWcLtgBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/corner_lg_BR.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnWireAdLtgBox {
=09
}
.cnnWireAdLtgBox .cnnWireAdLtgBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/corner_adv_ltg_tr.gif) no-repeat 100% 0px; OVERFLOW: hidden; =
HEIGHT: 4px
}
.cnnWireAdLtgBox .cnnAdBoxContent {
	BORDER-RIGHT: #cdcdcd 1px solid; BACKGROUND: #fff; BORDER-LEFT: #cdcdcd =
1px solid
}
.cnnWireAdLtgBox .cnnWireAdLtgBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/corner_adv_ltg_br.gif) no-repeat 100% 0px; OVERFLOW: hidden; =
HEIGHT: 4px
}
.cnnWireSPBox {
=09
}
.cnnWireSPBox .cnnWireSPBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/specia=
ls/corner_sp_tr.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnWireSPBox .cnnSPBoxContent {
	BORDER-RIGHT: #b8b8b8 1px solid; BORDER-LEFT: #b8b8b8 1px solid; =
BACKGROUND-COLOR: #fff
}
.cnnWireSPBox .cnnWireSPBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/specia=
ls/corner_sp_br.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnWireRedBox .cnnWireRedBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/most_p=
op/mp_tr.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnWireRedBox .cnnRedBoxContent {
	COLOR: #fff; BACKGROUND-COLOR: #ca0002
}
.cnnWireRedBox .cnnWireRedBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/most_p=
op/mp_br.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnWireSeBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/set_edition/corne=
r_se_tr_bg.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
#cnnBoxSeContent {
	BORDER-RIGHT: #afafaf 2px solid; BORDER-TOP: #afafaf 0px solid; =
BORDER-LEFT: #afafaf 2px solid; BORDER-BOTTOM: #afafaf 0px solid
}
#cnnBoxSeContent {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/set_edition/set_e=
dition_bg.gif); BACKGROUND-REPEAT: repeat-x
}
.cnnWireSeBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/set_edition/corne=
r_se_br_bg.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
#cnn_POLITICS .cnnWireSeBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/set_edition/corne=
r_se_tr.elex.gif) repeat-x 100% 0px
}
#cnn_POLITICS .cnnWireSeBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/set_edition/corne=
r_se_br.elex.gif) no-repeat 100% 0px
}
.cnnRRTVBox .cnnRRTVBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/corner_tv_tr.gif) repeat-x 100% 0pt; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnRRTVBox .cnnRRTVBoxContent {
	BORDER-RIGHT: #e6e6e6 1px solid; BACKGROUND: #f2f2f2; BORDER-LEFT: =
#e6e6e6 1px solid
}
.cnnRRTVBox .cnnRRTVBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/corner_tv_br.gif) repeat-x 100% 0pt; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnUGCBox .cnnBoxContent {
	BORDER-RIGHT: #dde6f1 1px solid; BORDER-TOP: #dde6f1 0px solid; =
BACKGROUND: #f5faff; BORDER-LEFT: #dde6f1 1px solid; BORDER-BOTTOM: =
#dde6f1 0px solid
}
.cnnUGCBox .cnnUGCBoxContent {
	BORDER-RIGHT: #dde6f1 1px solid; BORDER-TOP: #dde6f1 0px solid; =
BACKGROUND: #f5faff; BORDER-LEFT: #dde6f1 1px solid; BORDER-BOTTOM: =
#dde6f1 0px solid
}
.cnnUGCBox .cnnUGCBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC/ug=
c_TR_bg.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnUGCBox .cnnUGCBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC/ug=
c_BR_bg.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnWireBlackBox {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/ireport_box/i-re=
port_tr.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnBlackBoxContent {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; BACKGROUND: #000; =
PADDING-BOTTOM: 8px; PADDING-TOP: 5px
}
.cnnFooterBox .cnnFooterBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/footer/corner=
_footer_tr.gif) #fff no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnFooterBox .cnnFooterBoxContent {
	BACKGROUND: #ebebeb
}
.cnnFooterBox .cnnFooterBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/footer/corner=
_footer_br.gif) #fff no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnWCBox .cnnBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/basepl=
ate/corner_dg_TR.gif) #fff no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: =
4px
}
.cnnWCBox .cnnBoxHeader DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/basepl=
ate/corner_dg_TL.gif) #fff no-repeat 0px 0px; OVERFLOW: hidden; WIDTH: =
4px; HEIGHT: 4px
}
.cnnWCBox .cnnBoxContent {
	BACKGROUND: #fff
}
.cnnWCBox .cnnBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/basepl=
ate/corner_dg_BR.gif) #fff no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: =
4px
}
.cnnWCBox .cnnBoxFooter DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/basepl=
ate/corner_dg_BL.gif) #fff no-repeat 0px 0px; OVERFLOW: hidden; WIDTH: =
4px; HEIGHT: 4px
}
.cnnWCAdBox .cnnBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/basepl=
ate/corner_dg_TR.gif) #fff no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: =
4px
}
.cnnWCAdBox .cnnBoxHeader DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/basepl=
ate/corner_dg_TL.gif) #fff no-repeat 0px 0px; OVERFLOW: hidden; WIDTH: =
4px; HEIGHT: 4px
}
.cnnWCAdBox .cnnBoxContent {
	BACKGROUND: #fff
}
.cnnWCAdBox .cnnBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/basepl=
ate/corner_br_ad9.gif) #fff no-repeat 100% 0px; OVERFLOW: hidden; =
HEIGHT: 9px
}
.cnnWCAdBox .cnnBoxFooter DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/basepl=
ate/corner_bl_ad9.gif) #fff no-repeat 0px 0px; OVERFLOW: hidden; WIDTH: =
9px; HEIGHT: 9px
}
.cnnWireBox .cnnBoxContent {
	BORDER-RIGHT: #dfdfdf 1px solid; BACKGROUND: #fff; BORDER-LEFT: #dfdfdf =
1px solid
}
.cnnWireBox .cnnBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/basepl=
ate/corner_wire_TR_bg.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: =
4px
}
.cnnWireBox .cnnBoxHeader DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/basepl=
ate/corner_wire_TL.gif) #fff no-repeat 0px 0px; WIDTH: 4px; HEIGHT: 4px
}
.cnnWireBox .cnnBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/basepl=
ate/corner_wire_BR._bg.gif) no-repeat 100% 0px; OVERFLOW: hidden; =
HEIGHT: 4px
}
.cnnWireBox .cnnBoxFooter DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/basepl=
ate/corner_wire_BL.gif) #fff no-repeat 0px 0px; WIDTH: 4px; HEIGHT: 4px
}
.cnnWireSnBox .cnnBoxContent {
	BORDER-RIGHT: #dfdfdf 1px solid; BACKGROUND: #fff; BORDER-LEFT: #dfdfdf =
1px solid
}
.cnnWireSnBox .cnnBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/basepl=
ate/corner_wire_TR_bg.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: =
4px
}
.cnnWireSnBox .cnnBoxHeader DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/basepl=
ate/corner_wire_TL.gif) #fff no-repeat 0px 0px; WIDTH: 4px; HEIGHT: 4px
}
.cnnWireSnBox .cnnBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/basepl=
ate/corner_wire_sn_BR_bg.gif) no-repeat 100% 0px; OVERFLOW: hidden; =
HEIGHT: 4px
}
.cnnWireSnBox .cnnBoxFooter DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/basepl=
ate/corner_wire_BL.gif) #fff no-repeat 0px 0px; WIDTH: 4px; HEIGHT: 4px
}
.cnnRRBox .cnnBoxContent {
	BACKGROUND: #f2f2f2
}
.cnnRRBox .cnnBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/grey_corner_TR.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: =
4px
}
.cnnRRBox .cnnBoxHeader DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/grey_corner_TL.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: =
4px
}
.cnnRRBox .cnnBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/grey_corner_BR.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: =
4px
}
.cnnRRBox .cnnBoxFooter DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/grey_corner_BL.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: =
4px
}
.cnnWireLtgBox .cnnBoxContent {
	BORDER-RIGHT: #e6e6e6 1px solid; BACKGROUND: #fff; BORDER-LEFT: #e6e6e6 =
1px solid
}
.cnnWireLtgBox .cnnBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/adv_li=
nks/corner_ltg_TR.gif) #fff no-repeat 100% 0px; OVERFLOW: hidden; =
HEIGHT: 4px
}
.cnnWireLtgBox .cnnBoxHeader DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/adv_li=
nks/corner_ltg_TL.gif) #fff no-repeat 0px 0px; WIDTH: 4px; HEIGHT: 4px
}
.cnnWireLtgBox .cnnBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/adv_li=
nks/corner_ltg_BR.gif) #fff no-repeat 100% 0px; OVERFLOW: hidden; =
HEIGHT: 4px
}
.cnnWireLtgBox .cnnBoxFooter DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/adv_li=
nks/corner_ltg_BL.gif) #fff no-repeat 0px 0px; WIDTH: 4px; HEIGHT: 4px
}
.cnnWireAdLtgBox .cnnBoxContent {
	BORDER-RIGHT: #cdcdcd 1px solid; BACKGROUND: #fff; BORDER-LEFT: #cdcdcd =
1px solid
}
.cnnWireAdLtgBox .cnnBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/corner_adv_ltg_tr.gif) no-repeat 100% 0px; OVERFLOW: hidden; =
HEIGHT: 4px
}
.cnnWireAdLtgBox .cnnBoxHeader DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/corner_adv_ltg_tl.gif) no-repeat 0px 0px; OVERFLOW: hidden; HEIGHT: =
4px
}
.cnnWireAdLtgBox .cnnBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/corner_adv_ltg_br.gif) no-repeat 100% 0px; OVERFLOW: hidden; =
HEIGHT: 4px
}
.cnnWireAdLtgBox .cnnBoxFooter DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/corner_adv_ltg_bl.gif) no-repeat 0px 0px; OVERFLOW: hidden; HEIGHT: =
4px
}
.cnnRRTVBox .cnnBoxContent {
	BORDER-RIGHT: #e6e6e6 1px solid; BACKGROUND: #f2f2f2; BORDER-LEFT: =
#e6e6e6 1px solid
}
.cnnRRTVBox .cnnBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/corner_tv_tr.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnRRTVBox .cnnBoxHeader DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/corner_tv_tl.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnRRTVBox .cnnBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/corner_tv_br.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnRRTVBox .cnnBoxFooter DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/corner_tv_bl.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnLiveVideoBox .cnnBoxContent {
	BORDER-RIGHT: #dc595a 2px solid; BACKGROUND: #fff; BORDER-LEFT: #dc595a =
2px solid
}
.cnnLiveVideoBox .cnnBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/video_box/live_v=
ideo_red_tr.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnLiveVideoBox .cnnBoxHeader DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/video_box/live_v=
ideo_red_tl.gif) #fff no-repeat 0px 0px; WIDTH: 4px; HEIGHT: 4px
}
.cnnLiveVideoBox .cnnBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/video_box/live_v=
ideo_red_br.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnLiveVideoBox .cnnBoxFooter DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/video_box/live_v=
ideo_red_bl.gif) #fff no-repeat 0px 0px; WIDTH: 4px; HEIGHT: 4px
}
.cnnRedBox .cnnBoxContent {
	BORDER-RIGHT: #c00 1px solid; BACKGROUND: #c00; BORDER-LEFT: #c00 1px =
solid
}
.cnnRedBox .cnnBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/most_p=
op/mp_tr.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnRedBox .cnnBoxHeader DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/most_p=
op/mp_tl.gif) #fff no-repeat 0px 0px; WIDTH: 4px; HEIGHT: 4px
}
.cnnRedBox .cnnBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/most_p=
op/mp_br.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnRedBox .cnnBoxFooter DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/most_p=
op/mp_bl.gif) #fff no-repeat 0px 0px; WIDTH: 4px; HEIGHT: 4px
}
.cnnWireSPBox .cnnBoxContent {
	BORDER-RIGHT: #b8b8b8 1px solid; BORDER-LEFT: #b8b8b8 1px solid; =
BACKGROUND-COLOR: #fff
}
.cnnWireSPBox .cnnBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/specia=
ls/corner_sp_tr.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnWireSPBox .cnnBoxHeader DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/specia=
ls/corner_sp_tl.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnWireSPBox .cnnBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/specia=
ls/corner_sp_br.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnWireSPBox .cnnBoxFooter DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/specia=
ls/corner_sp_bl.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnUGCBox .cnnBoxContent {
	BORDER-RIGHT: #dde6f1 1px solid; BORDER-TOP: #dde6f1 0px solid; =
BACKGROUND: #f5faff; BORDER-LEFT: #dde6f1 1px solid; BORDER-BOTTOM: =
#dde6f1 0px solid
}
.cnnUGCBox .cnnBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC/ug=
c_TR_bg.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnUGCBox .cnnBoxHeader DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC/ug=
c_TL.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnUGCBox .cnnBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC/ug=
c_BR_bg.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnUGCBox .cnnBoxFooter DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC/ug=
c_BL.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnIrptBox .cnnBoxContent {
	BORDER-RIGHT: #dde6f1 1px solid; BORDER-TOP: #dde6f1 0px solid; =
BACKGROUND: #f5faff; BORDER-LEFT: #dde6f1 1px solid; BORDER-BOTTOM: =
#dde6f1 0px solid
}
.cnnIrptBox .cnnBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/ireport_box/i-re=
port_tr.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnIrptBox .cnnBoxHeader DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/ireport_box/i-re=
port_tl.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnIrptBox .cnnBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC/ug=
c_BR_bg.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnIrptBox .cnnBoxFooter DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC/ug=
c_BL.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnIrptBox .cnnIrptHead {
	PADDING-RIGHT: 0px; PADDING-LEFT: 12px; BACKGROUND: #000; =
PADDING-BOTTOM: 8px; PADDING-TOP: 5px
}
.cnnIrptBox .cnnBoxHead {
	PADDING-RIGHT: 0px; PADDING-LEFT: 12px; BACKGROUND: #000; =
PADDING-BOTTOM: 8px; PADDING-TOP: 5px
}
.cnnWcLtgBox .cnnBoxContent {
	BACKGROUND: #fff
}
.cnnWcLtgBox .cnnBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/corner_lg_TR.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnWcLtgBox .cnnBoxHeader DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/corner_lg_TL.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnWcLtgBox .cnnBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/corner_lg_BR.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnWcLtgBox .cnnBoxFooter DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_=
rail/corner_lg_BL.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnFooterBox .cnnBoxContent {
	BACKGROUND: #ebebeb
}
.cnnFooterBox .cnnBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/footer/corner=
_footer_tr.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnFooterBox .cnnBoxHeader DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/footer/corner=
_footer_tl.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnFooterBox .cnnBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/footer/corner=
_footer_br.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnFooterBox .cnnBoxFooter DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/footer/corner=
_footer_bl.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnMoPoBoxContent {
	BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/global/dropdowns/shdw_center.pn=
g); OVERFLOW: hidden; WIDTH: 100%
}
.cnnMoPoBoxHeader {
	BACKGROUND: none transparent scroll repeat 0% 0%; OVERFLOW: hidden; =
WIDTH: 100%; POSITION: relative; HEIGHT: 9px
}
.cnnMoPoBoxHeader .cnnMoPoBoxHeaderTL {
	BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/global/dropdowns/shdw_TL.png) =
no-repeat 0px 0px; MARGIN-RIGHT: 9px; HEIGHT: 9px
}
.cnnMoPoBoxHeader .cnnMoPoBoxHeaderTR {
	RIGHT: 0px; BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/global/dropdowns/shdw_TR.png) =
no-repeat 0px 0px; WIDTH: 9px; POSITION: absolute; TOP: 0px; HEIGHT: 9px
}
.cnnMoPoBoxFooter {
	BACKGROUND: none transparent scroll repeat 0% 0%; OVERFLOW: hidden; =
WIDTH: 100%; POSITION: relative; HEIGHT: 9px
}
.cnnMoPoBoxFooter .cnnMoPoBoxFooterBL {
	BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/global/dropdowns/shdw_BL.png) =
no-repeat 0px 0px; MARGIN-RIGHT: 9px; HEIGHT: 9px
}
.cnnMoPoBoxFooter .cnnMoPoBoxFooterBR {
	RIGHT: 0px; BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/global/dropdowns/shdw_BR.png) =
no-repeat 0px 0px; WIDTH: 9px; POSITION: absolute; TOP: 0px; HEIGHT: 9px
}
* HTML .cnnMoPoBoxContent {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cnn.ne=
t/cnn/.element/img/2.0/global/dropdowns/shdw_center.png', =
sizingMethod=3D'scale')
}
* HTML .cnnMoPoBoxHeader .cnnMoPoBoxHeaderTL {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cnn.ne=
t/cnn/.element/img/2.0/global/dropdowns/shdw_TL.png', =
sizingMethod=3D'crop')
}
* HTML .cnnMoPoBoxHeader .cnnMoPoBoxHeaderTR {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cnn.ne=
t/cnn/.element/img/2.0/global/dropdowns/shdw_TR.png', =
sizingMethod=3D'crop')
}
* HTML .cnnMoPoBoxFooter .cnnMoPoBoxFooterBL {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cnn.ne=
t/cnn/.element/img/2.0/global/dropdowns/shdw_BL.png', =
sizingMethod=3D'crop')
}
* HTML .cnnMoPoBoxFooter .cnnMoPoBoxFooterBR {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cnn.ne=
t/cnn/.element/img/2.0/global/dropdowns/shdw_BR.png', =
sizingMethod=3D'crop')
}
.cnnShareThisBox {
	WIDTH: 138px
}
#cnnShareThisContent {
	PADDING-RIGHT: 9px; PADDING-LEFT: 8px; FONT-WEIGHT: bold; FONT-SIZE: =
10px; BACKGROUND: #ffffff; PADDING-BOTTOM: 3px; MARGIN: 0px; =
PADDING-TOP: 9px
}
#cnnShareThisContent .cnnShareThisTitle H6 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 10px; PADDING-BOTTOM: =
9px; MARGIN: 0px; COLOR: #949494; PADDING-TOP: 0px
}
.cnnShareThisTitle IMG {
	FLOAT: right
}
.cnnShareThisItem {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 9px; =
PADDING-TOP: 0px
}
.cnnShareThisItem IMG {
	PADDING-RIGHT: 8px; 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
}
.cnnShareBoxContent .cnnShareContent {
	BORDER-RIGHT: #cbcbcb 1px solid; BORDER-TOP: #cbcbcb 1px solid; =
BACKGROUND: #fff; MARGIN: 0px 9px; BORDER-LEFT: #cbcbcb 1px solid; =
BORDER-BOTTOM: #cbcbcb 1px solid
}
.cnnShareBoxContent {
	BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/global/dropdowns/shdw_center.pn=
g); OVERFLOW: hidden; WIDTH: 100%
}
.cnnShareBoxHeader {
	BACKGROUND: none transparent scroll repeat 0% 0%; OVERFLOW: hidden; =
WIDTH: 100%; POSITION: relative; HEIGHT: 9px
}
.cnnShareBoxHeader .cnnShareBoxHeaderTL {
	BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/global/dropdowns/shdw_TL.png) =
no-repeat 0px 0px; MARGIN-RIGHT: 9px; HEIGHT: 9px
}
.cnnShareBoxHeader .cnnShareBoxHeaderTR {
	RIGHT: 0px; BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/global/dropdowns/shdw_TR.png) =
no-repeat 0px 0px; WIDTH: 9px; POSITION: absolute; TOP: 0px; HEIGHT: 9px
}
.cnnShareBoxFooter {
	BACKGROUND: none transparent scroll repeat 0% 0%; OVERFLOW: hidden; =
WIDTH: 100%; POSITION: relative; HEIGHT: 9px
}
.cnnShareBoxFooter .cnnShareBoxFooterBL {
	BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/global/dropdowns/shdw_BL.png) =
no-repeat 0px 0px; MARGIN-RIGHT: 9px; HEIGHT: 9px
}
.cnnShareBoxFooter .cnnShareBoxFooterBR {
	RIGHT: 0px; BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/global/dropdowns/shdw_BR.png) =
no-repeat 0px 0px; WIDTH: 9px; POSITION: absolute; TOP: 0px; HEIGHT: 9px
}
* HTML .cnnShareBoxContent {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cnn.ne=
t/cnn/.element/img/2.0/global/dropdowns/shdw_center.png', =
sizingMethod=3D'scale')
}
* HTML .cnnShareBoxHeader .cnnShareBoxHeaderTL {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cnn.ne=
t/cnn/.element/img/2.0/global/dropdowns/shdw_TL.png', =
sizingMethod=3D'crop')
}
* HTML .cnnShareBoxHeader .cnnShareBoxHeaderTR {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cnn.ne=
t/cnn/.element/img/2.0/global/dropdowns/shdw_TR.png', =
sizingMethod=3D'crop')
}
* HTML .cnnShareBoxFooter .cnnShareBoxFooterBL {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cnn.ne=
t/cnn/.element/img/2.0/global/dropdowns/shdw_BL.png', =
sizingMethod=3D'crop')
}
* HTML .cnnShareBoxFooter .cnnShareBoxFooterBR {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cnn.ne=
t/cnn/.element/img/2.0/global/dropdowns/shdw_BR.png', =
sizingMethod=3D'crop')
}
DIV#cnnHeader {
	MIN-WIDTH: 1002px; BACKGROUND: #fff; MARGIN-BOTTOM: 12px; WIDTH: auto; =
BORDER-BOTTOM: #c00 6px solid; FONT-FAMILY: Arial; HEIGHT: 125px
}
* HTML DIV#cnnHeader {
=09
}
DIV.cnnHeaderContent {
	BACKGROUND: #fff; MARGIN: 0px auto; TEXT-ALIGN: left
}
.cnnNavStretch {
	BORDER-RIGHT: #e6e6e6 0px solid; BORDER-TOP: #e6e6e6 1px solid; =
BORDER-LEFT: #e6e6e6 0px solid; BORDER-BOTTOM: #e6e6e6 1px solid
}
.cnnHeaderNav {
	MIN-WIDTH: 984px; MARGIN: 0px auto; POSITION: relative; HEIGHT: 27px
}
.cnnHeaderNav LI {
	FONT-WEIGHT: bold; FONT-SIZE: 10px
}
.cnnHeaderNav LI A {
	TEXT-TRANSFORM: uppercase; COLOR: #ca0002; LINE-HEIGHT: 25px; =
TEXT-DECORATION: none
}
.cnnHeaderNav LI A:visited {
	TEXT-TRANSFORM: uppercase; COLOR: #ca0002; LINE-HEIGHT: 25px; =
TEXT-DECORATION: none
}
.cnnHeaderNav LI A:hover {
	BACKGROUND: #ca0002; COLOR: #fff
}
.cnnHeaderNav LI A.cnnCurPage {
	BACKGROUND: #ca0002; COLOR: #fff
}
.cnnHeaderNav LI A.cnnCurPage:visited {
	COLOR: #fff
}
.cnnHeaderNav UL.cnnUtilityNavigation {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px; WHITE-SPACE: nowrap; LIST-STYLE-TYPE: none; =
POSITION: absolute
}
.cnnHeaderNav UL.cnnNavigation {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px; WHITE-SPACE: nowrap; LIST-STYLE-TYPE: none; =
POSITION: absolute
}
.cnnHeaderNav UL.cnnNavigation {
	LEFT: 0px
}
.cnnHeaderNav UL.cnnNavigation LI {
	BORDER-RIGHT: #e6e6e6 1px solid; BORDER-TOP: #e6e6e6 0px solid; FLOAT: =
left; BORDER-LEFT: #e6e6e6 0px solid; BORDER-BOTTOM: #e6e6e6 0px solid
}
.cnnHeaderNav UL.cnnNavigation LI A {
	PADDING-RIGHT: 6px; DISPLAY: block; PADDING-LEFT: 6px; PADDING-BOTTOM: =
0px; MARGIN: 1px; VERTICAL-ALIGN: middle; WIDTH: auto; PADDING-TOP: 0px; =
HEIGHT: 25px
}
* HTML .cnnHeaderNav UL.cnnNavigation LI A {
	WIDTH: 25px
}
.cnnHeaderNav UL.cnnNavigation LI.offsite {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/header/gray_a=
rrow.gif) #fff no-repeat 50% 100%
}
.cnnHeaderNav UL.cnnNavigation LI.offsite A {
	COLOR: #7b7b7b
}
.cnnHeaderNav UL.cnnNavigation LI.offsite A:hover {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #ca0002
}
.cnnHeaderNav UL.cnnNavigation LI.cnnNavLeft {
	WIDTH: 9px; HEIGHT: 27px
}
.cnnHeaderNav UL.cnnUtilityNavigation {
	RIGHT: 0px
}
.cnnHeaderNav UL.cnnUtilityNavigation LI {
	FLOAT: left; MARGIN-LEFT: 5px
}
.cnnHeaderNav UL.cnnUtilityNavigation LI A {
	PADDING-RIGHT: 12px; PADDING-LEFT: 9px; PADDING-BOTTOM: 0px; WIDTH: =
auto; PADDING-TOP: 0px
}
.cnnHeaderNav UL.cnnUtilityNavigation LI A:hover {
	COLOR: #ca0002; BACKGROUND-COLOR: transparent
}
.cnnHeaderNav UL.cnnUtilityNavigation LI.cnnMostPopular {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/header/header=
_most_popular_btn.gif) #fff no-repeat 0px 50%
}
.cnnHeaderNav UL.cnnUtilityNavigation LI.cnnMostPopular A {
	PADDING-LEFT: 25px
}
.cnnHeaderNav UL.cnnUtilityNavigation LI.cnnIreport {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/header/irepor=
t_icon.gif) #fff no-repeat 0px 50%
}
.cnnHeaderNav UL.cnnUtilityNavigation LI.cnnIreport A {
	PADDING-LEFT: 18px
}
.cnnHeaderNav UL.cnnUtilityNavigation LI.cnnRSS {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/header/header=
_rss_btn.gif) #fff no-repeat 0px 50%
}
.cnnHeaderNav UL.cnnUtilityNavigation LI.cnnRSS A {
	PADDING-LEFT: 17px
}
.cnnHeaderNav UL.cnnUtilityNavigation LI.cnnVideo {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/header/header=
_video_btn.gif) #fff no-repeat 0px 50%
}
.cnnHeaderNav UL.cnnUtilityNavigation LI.cnnVideo A {
	PADDING-LEFT: 21px
}
.cnnHeaderNav UL.cnnUtilityNavigation LI.cnnMobile {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/header/header=
_mobile_btn.gif) #fff no-repeat 0px 50%
}
.cnnHeaderNav UL.cnnUtilityNavigation LI.cnnMobile A {
	PADDING-LEFT: 14px
}
.cnnHeaderNav UL.cnnUtilityNavigation LI.cnnImpact {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/header/header=
_impact_btn.gif) #fff no-repeat 0px 50%
}
.cnnHeaderNav UL.cnnUtilityNavigation LI.cnnImpact A {
	PADDING-LEFT: 17px
}
.cnnHeaderNav UL.cnnUtilityNavigation LI.cnnOnTV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/header/header=
_tv_btn.gif) #fff no-repeat 0px 50%
}
.cnnHeaderNav UL.cnnUtilityNavigation LI.cnnOnTV A {
	PADDING-LEFT: 19px
}
* HTML .cnnHeaderNav LI {
	FONT-SIZE: 11px
}
* HTML .cnnHeaderNav UL.cnnNavigation LI A {
	PADDING-RIGHT: 4px; PADDING-LEFT: 5px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
* HTML .cnnHeaderNav UL.cnnUtilityNavigation LI A {
	PADDING-RIGHT: 12px; PADDING-LEFT: 7px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
.cnnHeaderContent .cnnHeaderCeiling {
	MARGIN: 0px 9px; PADDING-TOP: 12px; POSITION: relative; HEIGHT: 46px
}
.cnnHeaderContent .cnnHeadColRight {
	RIGHT: 0px; POSITION: absolute; TOP: 24px
}
.cnnHeaderContent .cnnHeaderBot {
	MARGIN: 0px 12px 2px 9px; POSITION: relative; HEIGHT: 36px
}
.cnnHeaderContent .cnnHeaderBot .cnnGlobalHeaderTopics {
	POSITION: absolute; TOP: 10px
}
.cnnHeaderContent .cnnHeaderBot .cnnHeadColRight {
	Z-INDEX: 1; POSITION: absolute; TOP: 6px
}
.cnnHeaderContent .cnnSectName {
	FONT-WEIGHT: bold; FONT-SIZE: 30px; COLOR: #ca0002
}
.cnnHeaderContent .cnnGlobalHeaderSections {
	PADDING-LEFT: 2px; FONT-SIZE: 11px; COLOR: #dadada
}
.cnnHeaderContent .cnnGlobalHeaderSections .cnnSearchLabel {
	COLOR: #949494
}
.cnnHeaderContent A {
	FONT-WEIGHT: bold
}
.cnnHeaderContent .cnnGlobalHeaderTopics {
	FONT-WEIGHT: bold; FONT-SIZE: 11px; Z-INDEX: 2; COLOR: #949494
}
.cnnHeaderContent .cnnGlobalHeaderTopics A {
	TEXT-DECORATION: underline
}
.cnnHeaderContent .cnnGlobalHeaderTopics .cnnGlobalHeaderHotTopic {
	COLOR: #ca0002
}
.cnnHeaderContent .cnnGlobalHeaderTopics .cnnGlobalHeaderHotTopic A {
	COLOR: #ca0002
}
.cnnHeaderContent .cnnGlobalHeaderTopics A.cnnTopMore {
	FONT-WEIGHT: normal; FONT-SIZE: 10px; TEXT-DECORATION: none
}
.cnnGlobalHeaderSearch FORM {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.cnnGlobalHeaderSearch INPUT {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.cnnHeaderContent .cnnGlobalHeaderSearch {
	MARGIN-TOP: 2px
}
.cnnGlobalHeaderSearch IMG {
	VERTICAL-ALIGN: middle; MARGIN-RIGHT: 4px
}
.cnnGlobalHeaderSearch INPUT {
	VERTICAL-ALIGN: middle; MARGIN-RIGHT: 4px
}
.cnnGlobalHeaderSearch .cnnHeaderTxtField {
	BORDER-RIGHT: #d9d9d9 2px solid; PADDING-RIGHT: 0px; BORDER-TOP: =
#646464 2px solid; PADDING-LEFT: 3px; FONT-WEIGHT: bold; FONT-SIZE: =
11px; PADDING-BOTTOM: 0px; BORDER-LEFT: #646464 2px solid; WIDTH: 435px; =
PADDING-TOP: 3px; BORDER-BOTTOM: #d9d9d9 2px solid; HEIGHT: 15px; =
BACKGROUND-COLOR: #ffffff
}
.cnnGlobalHeaderSearch INPUT.cnnHeaderSearchBtn {
	MARGIN-BOTTOM: 2px
}
IMG.cnnSrchDomLogo {
	MARGIN-TOP: 2px
}
.cnnHeaderContent .cnnHeaderWIntl {
	MARGIN-TOP: 5px; FONT-WEIGHT: bold; FONT-SIZE: 11px; FLOAT: right; =
COLOR: #949494
}
.cnnHeaderContent .cnnHeaderWIntl .cnnHeadWDivide {
	PADDING-RIGHT: 0px; MARGIN-TOP: 1px; PADDING-LEFT: 24px; FONT-SIZE: =
11px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px; TEXT-ALIGN: right
}
.cnnHeaderContent .cnnHeadWeather A {
	CURSOR: pointer
}
.cnnHeaderContent .cnnHeadWeather A.cnnHeadWCond {
	COLOR: #949494
}
.cnnHeaderContent .cnnHeadWeather A.cnnHeadWCond:hover {
	COLOR: #c00
}
.cnnHeadWeather IMG {
	FLOAT: left
}
.cnnHeaderContent .cnnHeadWeather IMG {
	MARGIN-BOTTOM: -5px
}
.cnnHeaderContent .cnnHeadWeather B {
	FLOAT: left
}
.cnnWeatherIcon {
	FLOAT: left; MARGIN: -1px 3px 0px; WIDTH: 21px; HEIGHT: 17px
}
#cnnWi01 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/01.png) =
no-repeat 0px 0px
}
* HTML #cnnWi01 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/01.png', =
sizingMethod=3D'scale')
}
#cnnWi02 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/02.png) =
no-repeat 0px 0px
}
* HTML #cnnWi02 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/02.png', =
sizingMethod=3D'scale')
}
#cnnWi03 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/03.png) =
no-repeat 0px 0px
}
* HTML #cnnWi03 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/03.png', =
sizingMethod=3D'scale')
}
#cnnWi04 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/04.png) =
no-repeat 0px 0px
}
* HTML #cnnWi04 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/04.png', =
sizingMethod=3D'scale')
}
#cnnWi05 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/05.png) =
no-repeat 0px 0px
}
* HTML #cnnWi05 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/05.png', =
sizingMethod=3D'scale')
}
#cnnWi06 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/06.png) =
no-repeat 0px 0px
}
* HTML #cnnWi06 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/06.png', =
sizingMethod=3D'scale')
}
#cnnWi07 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/07.png) =
no-repeat 0px 0px
}
* HTML #cnnWi07 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/07.png', =
sizingMethod=3D'scale')
}
#cnnWi08 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/08.png) =
no-repeat 0px 0px
}
* HTML #cnnWi08 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/08.png', =
sizingMethod=3D'scale')
}
#cnnWi11 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/11.png) =
no-repeat 0px 0px
}
* HTML #cnnWi11 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/11.png', =
sizingMethod=3D'scale')
}
#cnnWi12 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/12.png) =
no-repeat 0px 0px
}
* HTML #cnnWi12 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/12.png', =
sizingMethod=3D'scale')
}
#cnnWi13 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/13.png) =
no-repeat 0px 0px
}
* HTML #cnnWi13 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/13.png', =
sizingMethod=3D'scale')
}
#cnnWi14 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/14.png) =
no-repeat 0px 0px
}
* HTML #cnnWi14 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/14.png', =
sizingMethod=3D'scale')
}
#cnnWi15 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/15.png) =
no-repeat 0px 0px
}
* HTML #cnnWi15 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/15.png', =
sizingMethod=3D'scale')
}
#cnnWi16 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/16.png) =
no-repeat 0px 0px
}
* HTML #cnnWi16 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/16.png', =
sizingMethod=3D'scale')
}
#cnnWi17 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/17.png) =
no-repeat 0px 0px
}
* HTML #cnnWi17 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/17.png', =
sizingMethod=3D'scale')
}
#cnnWi18 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/18.png) =
no-repeat 0px 0px
}
* HTML #cnnWi18 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/18.png', =
sizingMethod=3D'scale')
}
#cnnWi19 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/19.png) =
no-repeat 0px 0px
}
* HTML #cnnWi19 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/19.png', =
sizingMethod=3D'scale')
}
#cnnWi20 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/20.png) =
no-repeat 0px 0px
}
* HTML #cnnWi20 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/20.png', =
sizingMethod=3D'scale')
}
#cnnWi21 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/21.png) =
no-repeat 0px 0px
}
* HTML #cnnWi21 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/21.png', =
sizingMethod=3D'scale')
}
#cnnWi22 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/22.png) =
no-repeat 0px 0px
}
* HTML #cnnWi22 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/22.png', =
sizingMethod=3D'scale')
}
#cnnWi23 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/23.png) =
no-repeat 0px 0px
}
* HTML #cnnWi23 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/23.png', =
sizingMethod=3D'scale')
}
#cnnWi24 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/24.png) =
no-repeat 0px 0px
}
* HTML #cnnWi24 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/24.png', =
sizingMethod=3D'scale')
}
#cnnWi25 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/25.png) =
no-repeat 0px 0px
}
* HTML #cnnWi25 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/25.png', =
sizingMethod=3D'scale')
}
#cnnWi26 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/26.png) =
no-repeat 0px 0px
}
* HTML #cnnWi26 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/26.png', =
sizingMethod=3D'scale')
}
#cnnWi29 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/29.png) =
no-repeat 0px 0px
}
* HTML #cnnWi29 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/29.png', =
sizingMethod=3D'scale')
}
#cnnWi30 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/30.png) =
no-repeat 0px 0px
}
* HTML #cnnWi30 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/30.png', =
sizingMethod=3D'scale')
}
#cnnWi31 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/31.png) =
no-repeat 0px 0px
}
* HTML #cnnWi31 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/31.png', =
sizingMethod=3D'scale')
}
#cnnWi32 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/32.png) =
no-repeat 0px 0px
}
* HTML #cnnWi32 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/32.png', =
sizingMethod=3D'scale')
}
#cnnWi33 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/33.png) =
no-repeat 0px 0px
}
* HTML #cnnWi33 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/33.png', =
sizingMethod=3D'scale')
}
#cnnWi34 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/34.png) =
no-repeat 0px 0px
}
* HTML #cnnWi34 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/34.png', =
sizingMethod=3D'scale')
}
#cnnWi35 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/35.png) =
no-repeat 0px 0px
}
* HTML #cnnWi35 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/35.png', =
sizingMethod=3D'scale')
}
#cnnWi36 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/36.png) =
no-repeat 0px 0px
}
* HTML #cnnWi36 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/36.png', =
sizingMethod=3D'scale')
}
#cnnWi37 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/37.png) =
no-repeat 0px 0px
}
* HTML #cnnWi37 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/37.png', =
sizingMethod=3D'scale')
}
#cnnWi38 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/38.png) =
no-repeat 0px 0px
}
* HTML #cnnWi38 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/38.png', =
sizingMethod=3D'scale')
}
#cnnWi39 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/39.png) =
no-repeat 0px 0px
}
* HTML #cnnWi39 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/39.png', =
sizingMethod=3D'scale')
}
#cnnWi40 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/40.png) =
no-repeat 0px 0px
}
* HTML #cnnWi40 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/40.png', =
sizingMethod=3D'scale')
}
#cnnWi41 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/41.png) =
no-repeat 0px 0px
}
* HTML #cnnWi41 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/41.png', =
sizingMethod=3D'scale')
}
#cnnWi42 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/42.png) =
no-repeat 0px 0px
}
* HTML #cnnWi42 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/42.png', =
sizingMethod=3D'scale')
}
#cnnWi43 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/43.png) =
no-repeat 0px 0px
}
* HTML #cnnWi43 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/43.png', =
sizingMethod=3D'scale')
}
#cnnWi44 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/weather/01/44.png) =
no-repeat 0px 0px
}
* HTML #cnnWi44 {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cdn.tu=
rner.com/cnn/.element/img/2.0/weather/01/44.png', =
sizingMethod=3D'scale')
}
#cnnFooter .cnnFooterBox {
	MARGIN: 12px 9px
}
#cnnFooter .cnnGFooterBoxLinksTop {
	FONT-SIZE: 10px; COLOR: #aaa; PADDING-TOP: 11px; TEXT-ALIGN: center
}
#cnnFooter .cnnGFooterBoxLinksBot {
	FONT-SIZE: 10px; PADDING-BOTTOM: 18px; COLOR: #aaa; PADDING-TOP: 8px; =
BORDER-BOTTOM: #dadada 1px solid; TEXT-ALIGN: center
}
#cnnFooter .cnnGFooterBoxSearch {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 12px; =
PADDING-TOP: 12px; TEXT-ALIGN: center
}
#cnnFooter .cnnGFooterBoxSearch FORM {
	PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px
}
#cnnFooter .cnnGFooterBoxSearch INPUT {
	VERTICAL-ALIGN: middle; MARGIN-RIGHT: 4px
}
#cnnFooter .cnnGFooterBoxSearch IMG {
	VERTICAL-ALIGN: middle; MARGIN-RIGHT: 4px
}
#cnnFooter .cnnGFooterBoxSearch INPUT.cnnGFooterSearchField {
	BORDER-RIGHT: #d9d9d9 2px solid; PADDING-RIGHT: 0px; BORDER-TOP: =
#646464 2px solid; PADDING-LEFT: 3px; FONT-WEIGHT: bold; FONT-SIZE: =
11px; PADDING-BOTTOM: 0px; BORDER-LEFT: #646464 2px solid; WIDTH: 435px; =
PADDING-TOP: 3px; BORDER-BOTTOM: #d9d9d9 2px solid; HEIGHT: 15px; =
BACKGROUND-COLOR: #ffffff
}
#cnnFooter .cnnGFooterBoxSearch INPUT.cnnGFooterSearchBtn {
	MARGIN-BOTTOM: 2px
}
.cnnFooterSub {
	FONT-SIZE: 10px; MARGIN: 0px 9px 56px; COLOR: #727272
}
.cnnFooterSub .cnnFootRight {
	FLOAT: right; TEXT-ALIGN: right
}
.cnnCrumb {
	LEFT: 0px; BOTTOM: 0px; POSITION: absolute
}
.cnnContentHeader {
	PADDING-RIGHT: 18px; PADDING-LEFT: 18px; PADDING-BOTTOM: 9px; =
PADDING-TOP: 5px; BORDER-BOTTOM: #dfdfdf 1px solid
}
.cnnContentHeader .cnnDate {
	FONT-WEIGHT: bold; FONT-SIZE: 11px; FLOAT: left; COLOR: #949494; =
LINE-HEIGHT: 14px
}
.cnnContentHeader .cnnCHLnks {
	FONT-WEIGHT: bold; FONT-SIZE: 11px; FLOAT: right; COLOR: #ccc; =
LINE-HEIGHT: 14px
}
.cnnStoryTools {
=09
}
.cnnStoryToolsFooter {
	BORDER-RIGHT: #e8e8e8 0px solid; BORDER-TOP: #e8e8e8 1px solid; MARGIN: =
27px 0px 15px; BORDER-LEFT: #e8e8e8 0px solid; BORDER-BOTTOM: #e8e8e8 =
1px solid; POSITION: relative; HEIGHT: 36px
}
.cnnStoryToolsFooter .cnnStoryTools {
	RIGHT: 0px; TOP: 10px
}
.cnnStoryTools UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px; LIST-STYLE-TYPE: none
}
.cnnStoryTools UL LI {
	FLOAT: left; MARGIN-LEFT: 6px
}
.cnnStoryToolsFooter .cnnActivityMeta {
	LEFT: 0px; POSITION: absolute; TOP: 11px
}
.cnnActivityMeta UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 10px; PADDING-BOTTOM: =
0px; MARGIN: 7px 0px 0px; COLOR: #949494; PADDING-TOP: 0px; =
LIST-STYLE-TYPE: none
}
.cnnStoryToolsFooter .cnnActivityMeta UL {
	MARGIN: 0px
}
.cnnHtPromoHead {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: =
14px; PADDING-BOTTOM: 6px; COLOR: #ca0002; PADDING-TOP: 0px
}
.cnnHtPromoImg {
	DISPLAY: block; FLOAT: left; MARGIN: 0px 4px 4px 0px
}
.cnnHtPromoTxt {
	FONT-SIZE: 11px; COLOR: #949494; LINE-HEIGHT: 12px
}
.cnnHtPromoMore {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 10px; PADDING-BOTTOM: =
0px; PADDING-TOP: 4px
}
.cnnHtPromoIcons {
	FLOAT: right; MARGIN: 4px 4px 0px 0px
}
.cnnHtPromoContent {
	PADDING-BOTTOM: 6px; BORDER-BOTTOM: #f1f1f1 1px solid
}
#cnnRelatedList {
	MARGIN: 9px 0px 0px
}
#cnn_HT #cnnRelatedList {
	MARGIN: 0px
}
#cnnWeatherRightCol #cnnRelatedList {
	MARGIN: 0px
}
#cnnRelatedList OL {
	PADDING-RIGHT: 0px; BORDER-TOP: #e6e6e6 1px solid; PADDING-LEFT: 0px; =
FONT-WEIGHT: bold; FONT-SIZE: 14px; PADDING-BOTTOM: 0px; MARGIN: 0px; =
WIDTH: 100%; COLOR: #c4c4c4; PADDING-TOP: 0px; LIST-STYLE-TYPE: none
}
#cnnRelatedList OL LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; VERTICAL-ALIGN: top; OVERFLOW: hidden; PADDING-TOP: 0px; =
BORDER-BOTTOM: #e6e6e6 1px solid; POSITION: relative; HEIGHT: 20px
}
#cnnRelatedList OL LI A.cnnRTopic {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 12px; FONT-WEIGHT: =
bold; FONT-SIZE: 11px; PADDING-BOTTOM: 3px; OVERFLOW: hidden; =
PADDING-TOP: 3px; HEIGHT: 20px; TEXT-DECORATION: none
}
#cnnRelatedList OL LI A.cnnRrss {
	RIGHT: 11px; POSITION: absolute; TOP: 4px
}
#cnnRelatedList OL LI A:hover {
	BACKGROUND: #fefde8
}
#cnnRelatedList .cnnMpMore {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 12px; FONT-SIZE: =
10px; PADDING-BOTTOM: 1px; LINE-HEIGHT: 11px; PADDING-TOP: 4px
}
.cnnRelatedListHead {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; FONT-WEIGHT: bold; FONT-SIZE: =
16px; PADDING-BOTTOM: 5px; LINE-HEIGHT: 19px; PADDING-TOP: 3px
}
* HTML #cnnRelatedList OL LI {
	MARGIN: 0px; HEIGHT: 21px
}
.cnnIreportTitleMod {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; FONT-WEIGHT: bold; FONT-SIZE: =
16px; PADDING-BOTTOM: 6px; COLOR: #000; PADDING-TOP: 9px
}
.cnnIreportContentMod {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; FONT-SIZE: 11px; =
MARGIN-BOTTOM: 0px; PADDING-BOTTOM: 14px; COLOR: #949494; LINE-HEIGHT: =
12px; PADDING-TOP: 0px
}
.cnnIreportMore {
	PADDING-RIGHT: 0px; BORDER-TOP: #dde6f1 1px solid; PADDING-LEFT: 0px; =
PADDING-BOTTOM: 3px; MARGIN: 0px 12px; PADDING-TOP: 4px
}
.cnnIreportMore A {
	FONT-SIZE: 10px
}
.cnnIreportContentMod A {
	FONT-WEIGHT: bold
}
.cnnIreportContentMod UL {
	CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px; LIST-STYLE-TYPE: none
}
.cnnIreportContentMod UL LI {
	PADDING-LEFT: 8px; FONT-WEIGHT: normal; FONT-SIZE: 10px; BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/red_bull.gif) =
no-repeat 1px 4px; MARGIN: 1px 0px
}
.cnnIreportContentMod UL LI A {
	FONT-WEIGHT: bold
}
.cnnUGCBox .cnnBlackBoxContent {
	POSITION: relative
}
.cnnIrptBox .cnnIrptHead {
	POSITION: relative
}
.cnnUGCBox .cnnBlackBoxContent .cnnIreptAd {
	DISPLAY: inline; RIGHT: 5px; POSITION: absolute; TOP: -1px
}
.cnnIrptBox .cnnIrptHead .cnnIreptAd {
	DISPLAY: inline; RIGHT: 5px; POSITION: absolute; TOP: -1px
}
* HTML .cnnUGCBox .cnnBlackBoxContent .cnnIreptAd {
	RIGHT: 14px; TOP: 0px
}
.cnniReportBox {
	POSITION: relative
}
.cnniReportBox .cnnBoxContent {
	BORDER-RIGHT: #dde6f1 1px solid; BORDER-TOP: #dde6f1 0px solid; =
BACKGROUND: #f5faff; BORDER-LEFT: #dde6f1 1px solid; BORDER-BOTTOM: =
#dde6f1 0px solid
}
.cnniReportBox .cnniReportSwf {
	BORDER-RIGHT: #dde6f1 1px solid; BORDER-TOP: #dde6f1 0px solid; =
BACKGROUND: #f5faff; BORDER-LEFT: #dde6f1 1px solid; BORDER-BOTTOM: =
#dde6f1 0px solid
}
.cnniReportBoxPad {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; PADDING-BOTTOM: 6px; =
PADDING-TOP: 8px
}
.cnniReportBox .cnniReportSwf {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 12px
}
.cnniReportBox .cnnBoxTopper {
	BACKGROUND: #00a1ff; HEIGHT: 13px
}
.cnniReportBox .cnnBoxTitle {
	BORDER-RIGHT: #dde6f1 1px solid; BORDER-TOP: #dde6f1 0px solid; =
BORDER-LEFT: #dde6f1 1px solid; BORDER-BOTTOM: #dde6f1 0px solid; =
HEIGHT: 23px
}
.cnniReportBox .cnnBoxTitle .cnniReportAd {
	RIGHT: 6px; OVERFLOW: hidden; WIDTH: 126px; POSITION: absolute; TOP: =
0px; HEIGHT: 31px
}
.cnniReportBox .cnnBoxTitle IMG {
	LEFT: 20px; POSITION: absolute; TOP: 6px
}
.cnniReportBox .cnnBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/sect/ireport/int_tr.gif)=
 repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnniReportBox .cnnBoxHeader DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/sect/ireport/int_tl.gif)=
 repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnniReportBox .cnnBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC/ug=
c_BR_bg.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnniReportBox .cnnBoxFooter DIV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC/ug=
c_BL.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
#cnn_CRIME .cnniReportBox .cnnBoxTitle {
	BACKGROUND: #fff
}
#cnn_CRIME .cnniReportBox .cnnBoxHeader {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/sect/ireport/blue_tr.gif=
)
}
#cnn_CRIME .cnniReportBox .cnnBoxHeader DIV {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/sect/ireport/blue_tl.gif=
)
}
#cnn_CRIME .cnniReportBox .cnnBoxFooter {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/sect/ireport/blue_br.gif=
)
}
#cnn_CRIME .cnniReportBox .cnnBoxFooter DIV {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/sect/ireport/blue_bl.gif=
)
}
#cnn_CRIME .cnniReportBox .cnnBoxTitle {
	BORDER-LEFT-COLOR: #bfcbda; BORDER-BOTTOM-COLOR: #bfcbda; =
BORDER-TOP-COLOR: #bfcbda; BORDER-RIGHT-COLOR: #bfcbda
}
#cnn_CRIME .cnniReportBox .cnnBoxContent {
	BORDER-LEFT-COLOR: #bfcbda; BORDER-BOTTOM-COLOR: #bfcbda; =
BORDER-TOP-COLOR: #bfcbda; BORDER-RIGHT-COLOR: #bfcbda
}
#cnn_CRIME .cnniReportBox .cnniReportSwf {
	BORDER-LEFT-COLOR: #bfcbda; BORDER-BOTTOM-COLOR: #bfcbda; =
BORDER-TOP-COLOR: #bfcbda; BORDER-RIGHT-COLOR: #bfcbda
}
.cnniReportBox H3 {
	FONT-WEIGHT: bold; FONT-SIZE: 16px; PADDING-BOTTOM: 3px; MARGIN: 0px; =
LINE-HEIGHT: 18px
}
.cnniReportBox H4 {
	FONT-WEIGHT: bold; FONT-SIZE: 10px; MARGIN: 0px; LINE-HEIGHT: 12px
}
.cnniReportBox P {
	FONT-SIZE: 10px; PADDING-BOTTOM: 14px; MARGIN: 0px; COLOR: #949494; =
LINE-HEIGHT: 12px
}
.cnniReportBox .cnniReportMore {
	PADDING-RIGHT: 0px; BORDER-TOP: #bfcbd9 1px solid; PADDING-LEFT: 0px; =
FONT-SIZE: 10px; PADDING-BOTTOM: 1px; LINE-HEIGHT: 12px; PADDING-TOP: =
7px
}
.cnniReportBox .cnniReportMoreMain {
	PADDING-RIGHT: 0px; BORDER-TOP: #bfcbd9 1px solid; PADDING-LEFT: 0px; =
FONT-SIZE: 10px; PADDING-BOTTOM: 1px; LINE-HEIGHT: 12px; PADDING-TOP: =
7px
}
.cnniReportBox .cnniReportMoreMain {
	BORDER-RIGHT: #dde6f1 1px solid; PADDING-RIGHT: 12px; BORDER-TOP: =
#dde6f1 0px solid; PADDING-LEFT: 12px; BACKGROUND: #f5faff; =
PADDING-BOTTOM: 3px; BORDER-LEFT: #dde6f1 1px solid; PADDING-TOP: 0px; =
BORDER-BOTTOM: #dde6f1 0px solid
}
.cnniReportBox .cnniReportMoreMain A {
	BORDER-TOP: #dde6f1 1px solid; DISPLAY: block; PADDING-TOP: 5px
}
.cnniReportBox UL {
	CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: =
8px; MARGIN: 0px; PADDING-TOP: 0px; LIST-STYLE-TYPE: none
}
.cnniReportBox UL LI {
	PADDING-LEFT: 8px; FONT-WEIGHT: normal; FONT-SIZE: 11px; BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/red_bull.gif) =
no-repeat 1px 5px; MARGIN: 1px 0px; LINE-HEIGHT: 13px
}
.cnniReportBox UL LI A {
	FONT-WEIGHT: bold
}
.cnnAdLinksRR {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; FONT-SIZE: 11px; =
PADDING-BOTTOM: 29px; COLOR: #000; PADDING-TOP: 6px
}
.cnnHtAdvertLnks {
	PADDING-TOP: 17px
}
.cnnHtAdvertHead {
	FONT-WEIGHT: bold; COLOR: #000
}
.cnnHtAdvertHead A {
	PADDING-LEFT: 4px; FONT-WEIGHT: normal; FONT-SIZE: 11px
}
.cnnHtAdvertLnks A {
	FONT-WEIGHT: bold; TEXT-DECORATION: underline
}
#cnnAdvLinks3Ads .cnnAdLinksRR {
	BACKGROUND: #fff
}
#cnnAdvLinks2Ads .cnnAdLinksRR {
	BACKGROUND: #fff
}
#cnnAdvLinks1Ad .cnnAdLinksRR {
	BACKGROUND: #fff
}
#cnnAdvLinks3Ads .cnnHtAdvertLnks B {
	FONT-SIZE: 11px
}
#cnnAdvLinks3Ads .cnnHtAdvertLnks A {
	FONT-WEIGHT: normal; TEXT-DECORATION: none
}
#cnnAdvLinks2Ads .cnnHtAdvertLnks A {
	FONT-WEIGHT: normal; TEXT-DECORATION: none
}
#cnnAdvLinks1Ad .cnnHtAdvertLnks A {
	FONT-WEIGHT: normal; TEXT-DECORATION: none
}
#cnnAdvLinks2Ads .cnnHtAdvertLnks {
	PADDING-TOP: 43px
}
#cnnAdvLinks1Ad .cnnHtAdvertLnks B {
	FONT-SIZE: 14px
}
#cnnAdvLinks1Ad .cnnHtAdvertLnks {
	FONT-SIZE: 12px; PADDING-TOP: 70px; TEXT-ALIGN: center
}
#cnnSnCnnTv .cnnSnCnnTvHead {
	PADDING-RIGHT: 0px; PADDING-LEFT: 12px; FONT-WEIGHT: bold; FONT-SIZE: =
22px; PADDING-BOTTOM: 8px; LINE-HEIGHT: 24px; PADDING-TOP: 5px; =
LETTER-SPACING: -1px
}
#cnnSnCnnTv .cnnMpMore {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 12px; FONT-WEIGHT: =
normal; FONT-SIZE: 10px; PADDING-BOTTOM: 1px; LINE-HEIGHT: 13px; =
PADDING-TOP: 3px
}
#cnnSnCnnTv OL {
	PADDING-RIGHT: 0px; BORDER-TOP: #e6e6e6 1px solid; PADDING-LEFT: 0px; =
PADDING-BOTTOM: 0px; MARGIN: 0px; WIDTH: 100%; PADDING-TOP: 0px; =
LIST-STYLE-TYPE: none
}
#cnnSnCnnTv OL LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px; BORDER-BOTTOM: #e6e6e6 1px solid; POSITION: =
relative
}
#cnnSnCnnTv OL LI A {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 12px; FONT-WEIGHT: =
bold; FONT-SIZE: 12px; PADDING-BOTTOM: 0px; OVERFLOW: hidden; =
LINE-HEIGHT: 27px; PADDING-TOP: 0px; HEIGHT: 57px
}
#cnnSnCnnTv OL LI A SPAN {
	DISPLAY: block; FONT-WEIGHT: normal; FONT-SIZE: 10px; LEFT: 12px; =
COLOR: #949494; LINE-HEIGHT: 13px; POSITION: absolute; TOP: 21px
}
#cnnSnCnnTv OL LI A IMG {
	BORDER-RIGHT: #fff 1px solid; BORDER-TOP: #fff 1px solid; RIGHT: 11px; =
BORDER-LEFT: #fff 1px solid; BORDER-BOTTOM: #fff 1px solid; POSITION: =
absolute; TOP: 5px
}
#cnnSnCnnTv OL LI A:hover {
	BACKGROUND: #fefde8
}
#cnnSnCnnTv OL LI A:hover IMG {
	BORDER-RIGHT: #c00 1px solid; BORDER-TOP: #c00 1px solid; BORDER-LEFT: =
#c00 1px solid; BORDER-BOTTOM: #c00 1px solid
}
.cnnSR1 .cnnSR1Head {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; FONT-WEIGHT: bold; FONT-SIZE: =
16px; FLOAT: left; PADDING-BOTTOM: 12px; PADDING-TOP: 7px
}
.cnnSR1 .cnnSR1ad {
	FLOAT: right
}
.cnnSR1 .cnnSR1ad IMG {
	PADDING-RIGHT: 4px; PADDING-LEFT: 0px; PADDING-BOTTOM: 1px; =
VERTICAL-ALIGN: middle; PADDING-TOP: 1px
}
.cnnSR1 .cnnSR1Photo {
	FLOAT: left; MARGIN: 0px 9px 5px 0px
}
* HTML .cnnSR1 .cnnSR1Photo {
	MARGIN: 0px 5px 6px 0px
}
.cnnSR1 .cnnSR1Blurb {
	PADDING-RIGHT: 12px; PADDING-LEFT: 0px; FONT-SIZE: 10px; =
PADDING-BOTTOM: 8px; LINE-HEIGHT: 12px; PADDING-TOP: 0px
}
.cnnSR1 .cnnSR1Title {
	FONT-WEIGHT: bold; FONT-SIZE: 14px; PADDING-BOTTOM: 2px
}
.cnnSR1 .cnnSR1Content {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; PADDING-BOTTOM: 2px; =
PADDING-TOP: 0px
}
.cnnQV FORM {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.cnnQV INPUT {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.cnnQVTop {
=09
}
.cnnQVHead {
	PADDING-RIGHT: 9px; PADDING-LEFT: 9px; FONT-WEIGHT: bold; FONT-SIZE: =
16px; FLOAT: left; PADDING-BOTTOM: 6px; LINE-HEIGHT: 19px; PADDING-TOP: =
8px
}
.cnnQVad {
=09
}
.cnnQVTop IMG {
	PADDING-RIGHT: 4px; PADDING-LEFT: 0px; PADDING-BOTTOM: 1px; =
VERTICAL-ALIGN: middle; PADDING-TOP: 1px
}
.cnnQVBody {
	PADDING-RIGHT: 9px; PADDING-LEFT: 12px; PADDING-BOTTOM: 9px; =
PADDING-TOP: 0px
}
.cnnQVQuest {
	FONT-WEIGHT: bold; FONT-SIZE: 14px; PADDING-BOTTOM: 10px
}
.cnnQVAns {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11px; PADDING-BOTTOM: =
2px; PADDING-TOP: 2px
}
.cnnQVAns INPUT {
	MARGIN: 0px 6px 0px 0px; VERTICAL-ALIGN: middle
}
.cnnQVBtns {
	FONT-SIZE: 10px; PADDING-TOP: 14px
}
.cnnQVBtns IMG {
	VERTICAL-ALIGN: bottom; MARGIN-RIGHT: 4px
}
.cnnQVResult .cnnTop {
=09
}
.cnnQVResult .cnnQVHead {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; FONT-WEIGHT: bold; FONT-SIZE: =
16px; FLOAT: left; PADDING-BOTTOM: 0px; PADDING-TOP: 8px
}
.cnnQVResult .cnnQVad {
	DISPLAY: none
}
.cnnQVResult .cnnQVTop IMG {
	PADDING-RIGHT: 4px; PADDING-LEFT: 0px; PADDING-BOTTOM: 1px; =
VERTICAL-ALIGN: middle; PADDING-TOP: 1px
}
.cnnQVResult .cnnQVQuest {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; FONT-WEIGHT: bold; FONT-SIZE: =
14px; PADDING-BOTTOM: 9px; PADDING-TOP: 8px
}
.cnnQVResult TABLE {
	WIDTH: 100%; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
.cnnQVResult .cnnQVAns {
	BACKGROUND: #f2f2f2
}
.cnnQVResult .cnnQVcell {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; FONT-SIZE: 11px; =
PADDING-BOTTOM: 1px; WIDTH: 200px; PADDING-TOP: 1px
}
* HTML .cnnQVResult .cnnQVcell {
	WIDTH: 176px
}
.cnnQVResult .cnnQVpercent {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11px; PADDING-BOTTOM: =
1px; WIDTH: 20px; PADDING-TOP: 1px; TEXT-ALIGN: right
}
.cnnQVResult .cnnQVTotal {
	PADDING-RIGHT: 12px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: =
10px; PADDING-BOTTOM: 1px; COLOR: #949494; PADDING-TOP: 1px; TEXT-ALIGN: =
right
}
.cnnQVResult .cnnQVTotalSum {
	PADDING-RIGHT: 12px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: =
10px; PADDING-BOTTOM: 1px; COLOR: #949494; PADDING-TOP: 1px; TEXT-ALIGN: =
right
}
.cnnQVResult .cnnQVFoot {
	PADDING-RIGHT: 12px; BORDER-TOP: #f1f1f1 1px solid; MARGIN-TOP: 5px; =
PADDING-LEFT: 12px; PADDING-BOTTOM: 0px; PADDING-TOP: 4px
}
.cnnQVResult .cnnQVRelated {
	FONT-SIZE: 10px; FLOAT: right
}
.cnnQVResult .cnnQVNote {
	FONT-SIZE: 10px; COLOR: #949494
}
.cnnTopper {
	PADDING-RIGHT: 0px; PADDING-LEFT: 18px; PADDING-BOTTOM: 9px; =
PADDING-TOP: 5px; BORDER-BOTTOM: #dfdfdf 1px solid
}
.cnnTopper .cnnTimestamp {
	FONT-WEIGHT: bold; FONT-SIZE: 11px; COLOR: #ca0002; LINE-HEIGHT: 14px
}
.cnnTopper .cnnTopBtn {
	FLOAT: right
}
.cnnTopper IMG.cnnHnTopBtns {
	PADDING-LEFT: 10px; VERTICAL-ALIGN: middle
}
.cnnGryTmeStmp {
	COLOR: #949494
}
.cnnHtTopper {
	PADDING-RIGHT: 0px; PADDING-LEFT: 18px; PADDING-BOTTOM: 9px; =
PADDING-TOP: 5px; BORDER-BOTTOM: #dfdfdf 1px solid
}
.cnnHtTimestamp {
	FONT-WEIGHT: bold; FONT-SIZE: 11px; COLOR: #ca0002; LINE-HEIGHT: 14px
}
.cnnhnTopBtn {
	FLOAT: right
}
IMG.cnnhnTopBtns {
	PADDING-LEFT: 10px; VERTICAL-ALIGN: middle
}
#cnnPagination A {
	BORDER-RIGHT: #cdddee 1px solid; PADDING-RIGHT: 6px; BORDER-TOP: =
#cdddee 1px solid; PADDING-LEFT: 6px; BACKGROUND: #fff; PADDING-BOTTOM: =
2px; BORDER-LEFT: #cdddee 1px solid; COLOR: #004276; PADDING-TOP: 2px; =
BORDER-BOTTOM: #cdddee 1px solid; TEXT-DECORATION: none
}
TABLE.cnnCenterPagination {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; WIDTH: 100%; PADDING-TOP: 0px; TEXT-ALIGN: center
}
TABLE.cnnPagination {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
TABLE.cnnPagination A {
	BORDER-RIGHT: #cdddee 1px solid; PADDING-RIGHT: 6px; BORDER-TOP: =
#cdddee 1px solid; DISPLAY: block; PADDING-LEFT: 6px; FONT-SIZE: 0.8em; =
BACKGROUND: #fff; PADDING-BOTTOM: 2px; BORDER-LEFT: #cdddee 1px solid; =
COLOR: #004276; PADDING-TOP: 2px; BORDER-BOTTOM: #cdddee 1px solid; =
TEXT-DECORATION: none
}
TABLE.cnnPagination A:hover {
	BORDER-RIGHT: #004276 1px solid; BORDER-TOP: #004276 1px solid; =
BORDER-LEFT: #004276 1px solid; COLOR: #fff; BORDER-BOTTOM: #004276 1px =
solid; BACKGROUND-COLOR: #004276
}
TABLE.cnnPagination A.cnnSearchCurrentPage {
	BORDER-RIGHT: white 1px solid; PADDING-RIGHT: 6px; BORDER-TOP: white =
1px solid; DISPLAY: block; PADDING-LEFT: 6px; BACKGROUND: #fff; =
PADDING-BOTTOM: 2px; BORDER-LEFT: white 1px solid; CURSOR: default; =
COLOR: #a8a8a8; PADDING-TOP: 2px; BORDER-BOTTOM: white 1px solid; =
WHITE-SPACE: nowrap; TEXT-DECORATION: none
}
TABLE.cnnPagination A.cnnSearchCurrentPage:hover {
	BORDER-RIGHT: white 1px solid; PADDING-RIGHT: 6px; BORDER-TOP: white =
1px solid; DISPLAY: block; PADDING-LEFT: 6px; BACKGROUND: #fff; =
PADDING-BOTTOM: 2px; BORDER-LEFT: white 1px solid; CURSOR: default; =
COLOR: #a8a8a8; PADDING-TOP: 2px; BORDER-BOTTOM: white 1px solid; =
WHITE-SPACE: nowrap; TEXT-DECORATION: none
}
TABLE.cnnPagination A.cnnSearchPreviousPage {
	BORDER-RIGHT: #dcdcdc 1px solid; PADDING-RIGHT: 6px; BORDER-TOP: =
#dcdcdc 1px solid; PADDING-LEFT: 6px; BACKGROUND: #fff; PADDING-BOTTOM: =
2px; BORDER-LEFT: #dcdcdc 1px solid; CURSOR: default; COLOR: #a8a8a8; =
PADDING-TOP: 2px; BORDER-BOTTOM: #dcdcdc 1px solid; WHITE-SPACE: nowrap; =
TEXT-DECORATION: none
}
TABLE.cnnPagination A.cnnSearchPreviousPage:hover {
	BORDER-RIGHT: #dcdcdc 1px solid; PADDING-RIGHT: 6px; BORDER-TOP: =
#dcdcdc 1px solid; PADDING-LEFT: 6px; BACKGROUND: #fff; PADDING-BOTTOM: =
2px; BORDER-LEFT: #dcdcdc 1px solid; CURSOR: default; COLOR: #a8a8a8; =
PADDING-TOP: 2px; BORDER-BOTTOM: #dcdcdc 1px solid; WHITE-SPACE: nowrap; =
TEXT-DECORATION: none
}
TABLE.cnnPagination A.cnnSearchNextPage {
	BORDER-RIGHT: #dcdcdc 1px solid; PADDING-RIGHT: 6px; BORDER-TOP: =
#dcdcdc 1px solid; PADDING-LEFT: 6px; BACKGROUND: #fff; PADDING-BOTTOM: =
2px; BORDER-LEFT: #dcdcdc 1px solid; CURSOR: default; COLOR: #a8a8a8; =
PADDING-TOP: 2px; BORDER-BOTTOM: #dcdcdc 1px solid; WHITE-SPACE: nowrap; =
TEXT-DECORATION: none
}
TABLE.cnnPagination A.cnnSearchNextPage:hover {
	BORDER-RIGHT: #dcdcdc 1px solid; PADDING-RIGHT: 6px; BORDER-TOP: =
#dcdcdc 1px solid; PADDING-LEFT: 6px; BACKGROUND: #fff; PADDING-BOTTOM: =
2px; BORDER-LEFT: #dcdcdc 1px solid; CURSOR: default; COLOR: #a8a8a8; =
PADDING-TOP: 2px; BORDER-BOTTOM: #dcdcdc 1px solid; WHITE-SPACE: nowrap; =
TEXT-DECORATION: none
}
.cnnArrows {
	LINE-HEIGHT: 10px
}
#cnnPagination UL {
	MARGIN: 0px 0px 5px; TEXT-ALIGN: center
}
#cnnPagination LI {
	PADDING-RIGHT: 1px; DISPLAY: inline; PADDING-LEFT: 1px; FONT-SIZE: =
0.8em; PADDING-BOTTOM: 1px; LINE-HEIGHT: 1.4em; PADDING-TOP: 1px; =
FONT-FAMILY: helvetica,arial
}
#cnnPagination A:hover {
	BORDER-RIGHT: #004276 1px solid; BORDER-TOP: #004276 1px solid; =
BORDER-LEFT: #004276 1px solid; COLOR: #fff; BORDER-BOTTOM: #004276 1px =
solid; BACKGROUND-COLOR: #004276
}
#cnnPagination A.cnnPaginationPrev {
	BORDER-RIGHT: #dcdcdc 1px solid; PADDING-RIGHT: 6px; BORDER-TOP: =
#dcdcdc 1px solid; PADDING-LEFT: 6px; BACKGROUND: #fff; PADDING-BOTTOM: =
2px; BORDER-LEFT: #dcdcdc 1px solid; CURSOR: default; COLOR: #a8a8a8; =
PADDING-TOP: 2px; BORDER-BOTTOM: #dcdcdc 1px solid
}
#cnnPagination A.cnnPaginationPrev:hover {
	BORDER-RIGHT: #dcdcdc 1px solid; PADDING-RIGHT: 6px; BORDER-TOP: =
#dcdcdc 1px solid; PADDING-LEFT: 6px; BACKGROUND: #fff; PADDING-BOTTOM: =
2px; BORDER-LEFT: #dcdcdc 1px solid; CURSOR: default; COLOR: #a8a8a8; =
PADDING-TOP: 2px; BORDER-BOTTOM: #dcdcdc 1px solid
}
#cnnPagination A.cnnPaginationCurr {
	BORDER-RIGHT: white 1px solid; PADDING-RIGHT: 6px; BORDER-TOP: white =
1px solid; PADDING-LEFT: 6px; BACKGROUND: #fff; PADDING-BOTTOM: 2px; =
BORDER-LEFT: white 1px solid; CURSOR: default; COLOR: #a8a8a8; =
PADDING-TOP: 2px; BORDER-BOTTOM: white 1px solid; WHITE-SPACE: nowrap
}
#cnnPagination A.cnnPaginationCurr:hover {
	BORDER-RIGHT: white 1px solid; PADDING-RIGHT: 6px; BORDER-TOP: white =
1px solid; PADDING-LEFT: 6px; BACKGROUND: #fff; PADDING-BOTTOM: 2px; =
BORDER-LEFT: white 1px solid; CURSOR: default; COLOR: #a8a8a8; =
PADDING-TOP: 2px; BORDER-BOTTOM: white 1px solid; WHITE-SPACE: nowrap
}
#cnnBannerTopic {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
0px; MARGIN: 0px; WIDTH: 211px; PADDING-TOP: 0px
}
#cnnBannerHeader {
	WIDTH: 211px; HEIGHT: 73px
}
.tall #cnnBannerHeader {
	HEIGHT: 122px
}
#cnnBannerHeaderTxt {
	FONT-WEIGHT: bold; FONT-SIZE: 22px; MARGIN-LEFT: 12px; OVERFLOW: =
hidden; LINE-HEIGHT: 25px; PADDING-TOP: 8px; HEIGHT: 53px
}
#cnnBannerBoxContent .cnnBnEmailLnk {
	PADDING-LEFT: 17px; FONT-WEIGHT: bold; FONT-SIZE: 12px
}
#cnnBannerBoxContent .cnnBnEmailLnk A {
	TEXT-DECORATION: underline
}
#cnnBannerBox {
	FLOAT: left; WIDTH: 773px
}
#cnnBannerBoxContent {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 5px; MARGIN: =
0px; OVERFLOW: hidden; PADDING-TOP: 6px; HEIGHT: 62px
}
#cnnBannerBoxContent A {
	TEXT-DECORATION: none
}
#cnnBannerHeadline {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: =
22px; PADDING-BOTTOM: 4px; MARGIN: 0px 52px 0px 10px; LINE-HEIGHT: 25px; =
PADDING-TOP: 2px
}
.small#cnnBannerHeadline {
	FONT-SIZE: 16px; LINE-HEIGHT: 17px
}
#cnnBannerBoxContent IMG.cnnCloseBtn {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: =
0px; BORDER-TOP-STYLE: none; MARGIN-RIGHT: 6px; PADDING-TOP: 0px; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: =
none
}
#cnnBannerBoxContent IMG.cnnBannerPhoto {
	FLOAT: left; MARGIN: 6px 12px 0px; BORDER-TOP-STYLE: none; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: =
none
}
#cnnBannerBoxAlert {
	PADDING-RIGHT: 0px; PADDING-LEFT: 12px; FONT-WEIGHT: bold; FONT-SIZE: =
12px; PADDING-BOTTOM: 0px; MARGIN: 0px; OVERFLOW: hidden; PADDING-TOP: =
6px; HEIGHT: 51px
}
#cnnBannerBoxInputs {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 6px =
0px 0px; PADDING-TOP: 0px
}
#cnnBannerBoxInputs #BreakingNewsTextBox {
	BORDER-RIGHT: #ffffff 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: =
#ffffff 1px solid; PADDING-LEFT: 2px; FONT-WEIGHT: bold; FONT-SIZE: =
12px; BACKGROUND: #ffffff; FLOAT: left; PADDING-BOTTOM: 0px; MARGIN: 0px =
6px 0px 0px; BORDER-LEFT: #ffffff 1px solid; WIDTH: 200px; COLOR: =
#000000; PADDING-TOP: 3px; BORDER-BOTTOM: #ffffff 1px solid; HEIGHT: =
15px
}
#cnnBannerBoxInputs #BreakingNewsBtn {
	WIDTH: 63px; HEIGHT: 21px
}
.cnnRed {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/banner=
_red_br.gif) #ca0002 no-repeat right bottom
}
#cnn_POLITICS .cnnRed {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/elex/b=
anner_red_br.gif) #ca0002 no-repeat right bottom
}
.cnnRed #cnnBannerBoxContent {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/banner=
_red_tr.gif) no-repeat right top; COLOR: #ffffff
}
#cnn_POLITICS .cnnRed #cnnBannerBoxContent {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/elex/b=
anner_red_tr.gif) no-repeat right top; COLOR: #ffffff
}
.cnnRed #cnnBannerBoxContent A {
	COLOR: #ffffff
}
.cnnYellow {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/banner=
_yellow_br.gif) #fff500 no-repeat right bottom
}
#cnn_POLITICS .cnnYellow {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/elex/b=
anner_yellow_br.gif) #fff500 no-repeat right bottom
}
.cnnYellow #cnnBannerBoxContent {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/banner=
_yellow_tr.gif) no-repeat right top; COLOR: #000000
}
#cnn_POLITICS .cnnYellow #cnnBannerBoxContent {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/elex/b=
anner_yellow_tr.gif) no-repeat right top; COLOR: #000000
}
.cnnYellow #cnnBannerBoxContent A {
	COLOR: #000000
}
.cnnBlue {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/banner=
_blue_br.gif) #6e9fcc no-repeat right bottom
}
#cnn_POLITICS .cnnBlue {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/elex/b=
anner_blue_br.gif) #6e9fcc no-repeat right bottom
}
.cnnBlue #cnnBannerBoxContent {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/banner=
_blue_tr.gif) no-repeat right top; COLOR: #c9e5ff
}
#cnn_POLITICS .cnnBlue #cnnBannerBoxContent {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/elex/b=
anner_blue_tr.gif) no-repeat right top; COLOR: #c9e5ff
}
.cnnBlue #cnnBannerBoxContent A {
	COLOR: #c9e5ff
}
.cnnDrkBlue {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/live_e=
lex/banner_blue_br.gif) #426d8f no-repeat right bottom
}
#cnn_POLITICS .cnnDrkBlue {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/live_e=
lex/drk_banner_blue_br.gif) #426d8f no-repeat right bottom
}
.cnnDrkBlue #cnnBannerBoxContent {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/live_e=
lex/banner_blue_tr.gif) no-repeat right top; COLOR: #ffffff
}
#cnn_POLITICS .cnnDrkBlue #cnnBannerBoxContent {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/live_e=
lex/drk_banner_blue_tr.gif) no-repeat right top; COLOR: #ffffff
}
.cnnDrkBlue #cnnBannerBoxContent A {
	COLOR: #ffffff
}
.cnnBlack {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/banner=
_black_br.gif) #000000 no-repeat right bottom
}
#cnn_POLITICS .cnnBlack {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/elex/b=
anner_black_br.gif) #000000 no-repeat right bottom
}
.cnnBlack #cnnBannerBoxContent {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/banner=
_black_tr.gif) no-repeat right top; COLOR: #ffffff
}
#cnn_POLITICS .cnnBlack #cnnBannerBoxContent {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/elex/b=
anner_black_tr.gif) no-repeat right top; COLOR: #ffffff
}
.cnnBlack #cnnBannerBoxContent A {
	COLOR: #ffffff
}
.cnnBlackElex #cnnBannerHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/live_e=
lex/live_coverage.gif) #000000 no-repeat left top
}
#cnn_POLITICS .cnnBlackElex #cnnBannerHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/live_e=
lex/drk_live_coverage.gif) #000000 no-repeat left top
}
.tall .cnnBlackElex #cnnBannerHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/live_e=
lex/live_coverage.gif) #000000 no-repeat left top
}
#cnn_POLITICS .tall .cnnBlackElex #cnnBannerHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/live_e=
lex/drk_live_coverage.gif) #000000 no-repeat left top
}
.cnnBlackElex #cnnBannerHeaderTxt {
	COLOR: #ffffff
}
.cnnRed #cnnBannerHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/banner=
_red_left.gif) #ca0002 no-repeat left top
}
#cnn_POLITICS .cnnRed #cnnBannerHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/elex/b=
anner_red_left.gif) #ca0002 no-repeat left top
}
.cnnRed #cnnBannerHeaderTxt {
	COLOR: #ffffff
}
.cnnYellow #cnnBannerHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/banner=
_yellow_left.gif) #fff500 no-repeat left top
}
#cnn_POLITICS .cnnYellow #cnnBannerHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/elex/b=
anner_yellow_left.gif) #fff500 no-repeat left top
}
.cnnYellow #cnnBannerHeaderTxt {
	COLOR: #000000
}
.cnnBlue #cnnBannerHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/banner=
_blue_left.gif) #6e9fcc no-repeat left top
}
#cnn_POLITICS .cnnBlue #cnnBannerHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/elex/b=
anner_blue_left.gif) #6e9fcc no-repeat left top
}
.cnnBlue #cnnBannerHeaderTxt {
	COLOR: #c9e5ff
}
.cnnBlack #cnnBannerHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/banner=
_black_l.gif) #000000 no-repeat left top
}
#cnn_POLITICS .cnnBlack #cnnBannerHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/elex/b=
anner_black_l.gif) #000000 no-repeat left top
}
.tall .cnnBlack #cnnBannerHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/banner=
_black_l2.gif) #000000 no-repeat left top
}
#cnn_POLITICS .tall .cnnBlack #cnnBannerHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/elex/b=
anner_black_l2.gif) #000000 no-repeat left top
}
.cnnBlack #cnnBannerHeaderTxt {
	COLOR: #ffffff
}
#cnnBannerBoxContent #cnnBannerWatchNow {
	FONT-WEIGHT: bold; FONT-SIZE: 14px
}
#cnnBannerBoxContent #cnnBannerWatchNow A {
	FONT-WEIGHT: bold; FONT-SIZE: 14px; COLOR: #6699cc; TEXT-DECORATION: =
none
}
#cnnBannerBoxContent #cnnBannerWatchNow A:visited {
	COLOR: #97b8d9
}
#cnnBannerBoxContent #cnnBannerWatchNow A:hover {
	FONT-WEIGHT: bold; FONT-SIZE: 14px; COLOR: #ca0002; TEXT-DECORATION: =
none
}
#cnnBannerBoxContent #cnnBannerWatchNow .cnnBlueTxt {
	COLOR: #3d75ac
}
#cnnBannerBoxContent #cnnBannerWatchNow .cnnGreyTxt {
	FONT-WEIGHT: normal; FONT-SIZE: 14px; COLOR: #cccccc
}
.cnnOverlayMenuContainer {
	Z-INDEX: 1; WIDTH: 0px; POSITION: relative; HEIGHT: 0px
}
.cnnOverlayMenu {
	DISPLAY: none; Z-INDEX: 3; POSITION: absolute
}
.cnnStoryTools .cnnOverlayMenu {
	RIGHT: -45px; TOP: -9px
}
.cnnDDBoxContainer {
	Z-INDEX: 3; POSITION: relative
}
.cnnDDBox {
	DISPLAY: none; FONT-WEIGHT: bold; FONT-SIZE: 11px; RIGHT: 13px; WIDTH: =
100%; POSITION: absolute; TOP: -9px
}
.cnnDDOvrBoxContainer {
	Z-INDEX: 3; POSITION: relative
}
.cnnDDOvrBox {
	DISPLAY: none; FONT-WEIGHT: bold; FONT-SIZE: 11px; WIDTH: 100%; =
POSITION: absolute
}
.cnnDDWire .cnnDDBtn {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/dropdowns/btn_wir=
e_right.gif) no-repeat 100% 0px
}
.cnnDDWire .cnnDDBtn .cnnDDBtnLeft {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/dropdowns/btn_wir=
e_left.gif) #fff no-repeat 0px 0px
}
.cnnDDWire .cnnWireBox .cnnBoxContent {
	BORDER-RIGHT: #e6e6e6 1px solid; BACKGROUND: #fff; BORDER-LEFT: #e6e6e6 =
1px solid
}
.cnnDDWire .cnnWireBox .cnnBoxHeader {
	BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/baseplate/cor=
ner_wire_TR_bg.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnDDWire .cnnWireBox .cnnBoxHeader DIV {
	BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/baseplate/cor=
ner_wire_TL.gif) #fff no-repeat 0px 0px; WIDTH: 4px; HEIGHT: 4px
}
.cnnDDWire .cnnWireBox .cnnBoxFooter {
	BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/baseplate/cor=
ner_wire_BR._bg.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnDDWire .cnnWireBox .cnnBoxFooter DIV {
	BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/baseplate/cor=
ner_wire_BL.gif) #fff no-repeat 0px 0px; WIDTH: 4px; HEIGHT: 4px
}
#cnnRightCol .cnnDDWire .cnnWireBox .cnnBoxContent {
	BORDER-LEFT-COLOR: #e6e6e6; BORDER-BOTTOM-COLOR: #e6e6e6; =
BORDER-TOP-COLOR: #e6e6e6; BORDER-RIGHT-COLOR: #e6e6e6
}
.cnnDDWireLtg .cnnDDBtn {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/dropdowns/btn_ltg=
_right.gif) no-repeat 100% 0px
}
.cnnDDWireLtg .cnnDDBtn .cnnDDBtnLeft {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/dropdowns/btn_ltg=
_left.gif) #fff no-repeat 0px 0px
}
.cnnDDWireLtg .cnnWireBox .cnnBoxContent {
	BORDER-RIGHT: #e6e6e6 1px solid; BACKGROUND: #fff; BORDER-LEFT: #e6e6e6 =
1px solid
}
.cnnDDWireLtg .cnnWireBox .cnnBoxHeader {
	BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/adv_links/cor=
ner_ltg_TR.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnDDWireLtg .cnnWireBox .cnnBoxHeader DIV {
	BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/adv_links/cor=
ner_ltg_TL.gif) #fff no-repeat 0px 0px; WIDTH: 4px; HEIGHT: 4px
}
.cnnDDWireLtg .cnnWireBox .cnnBoxFooter {
	BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/adv_links/cor=
ner_ltg_BR.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnDDWireLtg .cnnWireBox .cnnBoxFooter DIV {
	BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/adv_links/cor=
ner_ltg_BL.gif) #fff no-repeat 0px 0px; WIDTH: 4px; HEIGHT: 4px
}
#cnnRightCol .cnnDDWireLtg .cnnWireBox .cnnBoxContent {
	BORDER-LEFT-COLOR: #e6e6e6; BORDER-BOTTOM-COLOR: #e6e6e6; =
BORDER-TOP-COLOR: #e6e6e6; BORDER-RIGHT-COLOR: #e6e6e6
}
.cnnDDContainer .cnnDDBtn {
	OVERFLOW: hidden; CURSOR: pointer; HEIGHT: 23px
}
.cnnDDContainer .cnnDDBtn .cnnDDBtnLeft {
	WIDTH: 4px; HEIGHT: 23px
}
.cnnDDContainer .cnnDDBtn IMG {
	PADDING-RIGHT: 4px; DISPLAY: block; PADDING-LEFT: 15px; PADDING-BOTTOM: =
1px; PADDING-TOP: 1px
}
.cnnDDContainer .cnnDDBtn .cnnDDValueContainer {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 4px
}
.cnnDDContainer .cnnDDBtn .cnnDDValue {
	FONT-WEIGHT: bold; FONT-SIZE: 11px; OVERFLOW: hidden; COLOR: #004276; =
LINE-HEIGHT: 14px; HEIGHT: 14px
}
.cnnDDContainer .cnnWireBox {
	OVERFLOW: hidden; CURSOR: pointer
}
.cnnDDContainer .cnnWireBox .cnnBoxContent {
	Z-INDEX: 1; POSITION: relative; HEIGHT: 15px
}
.cnnDDContainer .cnnWireBox .cnnBoxContent .cnnDDValue {
	FONT-WEIGHT: bold; FONT-SIZE: 11px; LEFT: 8px; OVERFLOW: hidden; COLOR: =
#004276; LINE-HEIGHT: 14px; POSITION: absolute; TOP: 0px; HEIGHT: 14px
}
.cnnDDContainer .cnnWireBox .cnnBoxContent IMG {
	Z-INDEX: 2; RIGHT: 6px; WIDTH: 30px; POSITION: absolute; TOP: -4px; =
HEIGHT: 23px
}
#cnnRightCol .cnnDDContainer .cnnWireBox {
	MARGIN: 0px
}
.cnnDDBoxContent .cnnDDContent {
	BORDER-RIGHT: #cbcbcb 1px solid; BORDER-TOP: #cbcbcb 1px solid; =
BACKGROUND: #fff; MARGIN: 0px 9px; BORDER-LEFT: #cbcbcb 1px solid; =
BORDER-BOTTOM: #cbcbcb 1px solid
}
.cnnDDBoxContent .cnnDDOvrCloseContainer {
	POSITION: relative
}
.cnnDDBoxContent .cnnDDOvrClose {
	Z-INDEX: 4; RIGHT: 17px; WIDTH: 12px; CURSOR: pointer; COLOR: #000; =
POSITION: absolute; TOP: 7px; HEIGHT: 12px
}
.cnnDDBoxContent .cnnDDOvrTitle {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; PADDING-BOTTOM: 4px; OVERFLOW: =
hidden; PADDING-TOP: 10px
}
.cnnDDBoxContent .cnnDDContent .cnnDDList {
	OVERFLOW: auto
}
.cnnDDBoxContent .cnnDDContent UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; OVERFLOW: hidden; PADDING-TOP: 0px
}
.cnnDDBoxContent .cnnDDContent LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; OVERFLOW: hidden; LINE-HEIGHT: 17px; PADDING-TOP: 0px; =
LIST-STYLE-TYPE: none; HEIGHT: 17px
}
.cnnDDBoxContent .cnnDDContent LI A {
	PADDING-RIGHT: 12px; DISPLAY: block; PADDING-LEFT: 12px; =
PADDING-BOTTOM: 0px; MARGIN: 0px; COLOR: #004276; LINE-HEIGHT: 17px; =
PADDING-TOP: 0px; HEIGHT: 17px
}
.cnnDDBoxContent .cnnDDContent LI A:visited {
	COLOR: #004276
}
.cnnDDBoxContent .cnnDDContent LI A:hover {
	BACKGROUND: #fefde8; COLOR: #ca0002
}
.cnnDDBoxContent .cnnDDContent .cnnDDSeparator SPAN {
	PADDING-RIGHT: 12px; DISPLAY: block; PADDING-LEFT: 12px; =
PADDING-BOTTOM: 0px; MARGIN: 0px; COLOR: #c5c5c5; PADDING-TOP: 1px; =
HEIGHT: 17px
}
.cnnDDBoxContent {
	BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/global/dropdowns/shdw_center.pn=
g); OVERFLOW: hidden; WIDTH: 100%
}
.cnnDDBoxHeader {
	BACKGROUND: none transparent scroll repeat 0% 0%; OVERFLOW: hidden; =
WIDTH: 100%; POSITION: relative; HEIGHT: 9px
}
.cnnDDBoxHeader .cnnDDBoxHeaderTL {
	BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/global/dropdowns/shdw_TL.png) =
no-repeat 0px 0px; MARGIN-RIGHT: 9px; HEIGHT: 9px
}
.cnnDDBoxHeader .cnnDDBoxHeaderTR {
	RIGHT: 0px; BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/global/dropdowns/shdw_TR.png) =
no-repeat 0px 0px; WIDTH: 9px; POSITION: absolute; TOP: 0px; HEIGHT: 9px
}
.cnnDDBoxFooter {
	BACKGROUND: none transparent scroll repeat 0% 0%; OVERFLOW: hidden; =
WIDTH: 100%; POSITION: relative; HEIGHT: 9px
}
.cnnDDBoxFooter .cnnDDBoxFooterBL {
	BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/global/dropdowns/shdw_BL.png) =
no-repeat 0px 0px; MARGIN-RIGHT: 9px; HEIGHT: 9px
}
.cnnDDBoxFooter .cnnDDBoxFooterBR {
	RIGHT: 0px; BACKGROUND: =
url(http://i.cnn.net/cnn/.element/img/2.0/global/dropdowns/shdw_BR.png) =
no-repeat 0px 0px; WIDTH: 9px; POSITION: absolute; TOP: 0px; HEIGHT: 9px
}
* HTML .cnnDDBoxContent {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cnn.ne=
t/cnn/.element/img/2.0/global/dropdowns/shdw_center.png', =
sizingMethod=3D'scale')
}
* HTML .cnnDDBoxHeader .cnnDDBoxHeaderTL {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cnn.ne=
t/cnn/.element/img/2.0/global/dropdowns/shdw_TL.png', =
sizingMethod=3D'crop')
}
* HTML .cnnDDBoxHeader .cnnDDBoxHeaderTR {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cnn.ne=
t/cnn/.element/img/2.0/global/dropdowns/shdw_TR.png', =
sizingMethod=3D'crop')
}
* HTML .cnnDDBoxFooter .cnnDDBoxFooterBL {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cnn.ne=
t/cnn/.element/img/2.0/global/dropdowns/shdw_BL.png', =
sizingMethod=3D'crop')
}
* HTML .cnnDDBoxFooter .cnnDDBoxFooterBR {
	BACKGROUND: none transparent scroll repeat 0% 0%; FILTER: =
progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'http://i.cnn.ne=
t/cnn/.element/img/2.0/global/dropdowns/shdw_BR.png', =
sizingMethod=3D'crop')
}
#cnnMostPopMod {
	DISPLAY: none; OVERFLOW: hidden; HEIGHT: 459px
}
#cnnMostPopMod .cnnMpPadTop {
	PADDING-TOP: 6px
}
#cnnMostPopMod .cnnRedBoxContent .cnnMpCat IMG {
	PADDING-RIGHT: 9px; PADDING-LEFT: 10px; PADDING-BOTTOM: 3px; =
PADDING-TOP: 3px
}
#cnnMostPopMod .cnnBoxContent .cnnMpCat IMG {
	PADDING-RIGHT: 9px; PADDING-LEFT: 9px; PADDING-BOTTOM: 7px; =
PADDING-TOP: 4px
}
#cnnMostPopMod .cnnRedBoxContent .cnnMpHead {
	PADDING-RIGHT: 9px; PADDING-LEFT: 12px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 8px
}
#cnnMostPopMod .cnnMpHeadAd {
	DISPLAY: inline; FLOAT: right; MARGIN: 3px 5px 0px 0px
}
#cnnMostPopMod .cnnMpCat A {
	DISPLAY: block
}
.cnnMpMore {
	PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 8px; FONT-SIZE: =
10px; PADDING-BOTTOM: 0px; PADDING-TOP: 6px
}
#cnnMostPopMod .cnnMpMore {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 11px; FONT-WEIGHT: =
normal; FONT-SIZE: 10px; PADDING-BOTTOM: 0px; LINE-HEIGHT: 13px; =
PADDING-TOP: 3px
}
#cnnMostPopMod .cnnMpTopicContent .cnnMpMore {
	PADDING-BOTTOM: 1px
}
#cnnMpStories2 {
	DISPLAY: none
}
#cnnMpStories3 {
	DISPLAY: none
}
#cnnMpVideos2 {
	DISPLAY: none
}
#cnnMpVideos3 {
	DISPLAY: none
}
#cnnMostPopMod TR.cnnMpTabRow TD {
	BORDER-TOP: #e6e6e6 1px solid; FONT-SIZE: 11px; BORDER-BOTTOM: #e6e6e6 =
1px solid; TEXT-ALIGN: center
}
#cnnMostPopMod TR.cnnMpTabRow TD#cnnMpStoriesTab1 {
	BORDER-RIGHT: #e6e6e6 1px solid
}
#cnnMostPopMod TR.cnnMpTabRow TD#cnnMpVideosTab1 {
	BORDER-RIGHT: #e6e6e6 1px solid
}
#cnnMostPopMod TR.cnnMpTabRow TD#cnnMpStoriesTab2 {
	BORDER-RIGHT: #e6e6e6 1px solid
}
#cnnMostPopMod TR.cnnMpTabRow TD#cnnMpVideosTab2 {
	BORDER-RIGHT: #e6e6e6 1px solid
}
#cnnMostPopMod TR.cnnMpTabRow TD A {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; FONT-WEIGHT: =
bold; FONT-SIZE: 11px; PADDING-BOTTOM: 3px; COLOR: #cb0003; LINE-HEIGHT: =
14px; PADDING-TOP: 3px; TEXT-DECORATION: none
}
#cnnMostPopMod TR.cnnMpTabRow TD A:hover {
	BACKGROUND: #fefde8
}
#cnnMostPopMod TR.cnnMpTabRow TD.active A {
	CURSOR: default; COLOR: #999
}
#cnnMostPopMod TR.cnnMpTabRow TD.active A:hover {
	BACKGROUND: #fff; COLOR: #999
}
#cnnMostPopMod TR.cnnMpTabRow TD A.visited {
=09
}
#cnnMostPopMod TD.cnnMpContent A {
	DISPLAY: block
}
#cnnMostPopMod .cnnMpStoryContent OL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 14px; PADDING-BOTTOM: =
0px; MARGIN: 0px; COLOR: #c4c4c4; PADDING-TOP: 0px; LIST-STYLE-TYPE: =
none
}
#cnnMostPopMod .cnnMpStoryContent OL LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; OVERFLOW: hidden; PADDING-TOP: 0px; BORDER-BOTTOM: #e6e6e6 1px =
solid; POSITION: relative; HEIGHT: 28px
}
#cnnMostPopMod .cnnMpStoryContent OL LI A {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 36px; FONT-WEIGHT: =
bold; FONT-SIZE: 11px; PADDING-BOTTOM: 7px; LINE-HEIGHT: 14px; =
PADDING-TOP: 7px; HEIGHT: 14px; TEXT-DECORATION: none
}
#cnnMostPopMod .cnnMpStoryContent OL LI B {
	FONT-WEIGHT: bold; FONT-SIZE: 16px; LEFT: 12px; LINE-HEIGHT: 19px; =
POSITION: absolute; TOP: 5px
}
* HTML #cnnMostPopMod .cnnMpStoryContent OL LI A {
	HEIGHT: 28px
}
*:first-child + HTML #cnnMostPopMod .cnnMpStoryContent OL LI A {
	HEIGHT: 28px
}
#cnnMostPopMod .cnnMpStoryContent OL LI A:hover {
	BACKGROUND: #fefde8
}
#cnnMostPopMod .cnnMpStoryContent OL LI A:hover IMG {
	BORDER-RIGHT: #c00 1px solid; BORDER-TOP: #c00 1px solid; BORDER-LEFT: =
#c00 1px solid; BORDER-BOTTOM: #c00 1px solid
}
.cnnMpTopicContent OL {
	PADDING-RIGHT: 0px; BORDER-TOP: #e6e6e6 1px solid; PADDING-LEFT: 0px; =
FONT-WEIGHT: bold; FONT-SIZE: 16px; PADDING-BOTTOM: 0px; MARGIN: 0px; =
COLOR: #c4c4c4; LINE-HEIGHT: 19px; PADDING-TOP: 0px; LIST-STYLE-TYPE: =
none
}
.cnnMpTopicContent OL LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; OVERFLOW: hidden; PADDING-TOP: 0px; BORDER-BOTTOM: #e6e6e6 1px =
solid; POSITION: relative; HEIGHT: 61px
}
.cnnMpTopicContent OL LI A {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 30px; PADDING-BOTTOM: =
21px; PADDING-TOP: 21px; HEIGHT: 19px; TEXT-DECORATION: underline
}
.cnnMpTopicContent OL LI B {
	LEFT: 12px; POSITION: absolute; TOP: 21px
}
.cnnMpTopicContent OL LI IMG {
	BORDER-RIGHT: #fff 1px solid; BORDER-TOP: #fff 1px solid; RIGHT: 8px; =
BORDER-LEFT: #fff 1px solid; BORDER-BOTTOM: #fff 1px solid; POSITION: =
absolute; TOP: 5px
}
* HTML cnnMpTopicContent OL LI A {
	HEIGHT: 61px
}
*:first-child + HTML cnnMpTopicContent OL LI A {
	HEIGHT: 61px
}
.cnnMpTopicContent OL LI A:hover {
	BACKGROUND: #fefde8
}
.cnnMpTopicContent OL LI A:hover IMG {
	BORDER-RIGHT: #c00 1px solid; BORDER-TOP: #c00 1px solid; BORDER-LEFT: =
#c00 1px solid; BORDER-BOTTOM: #c00 1px solid
}
.cnnMpVideoContent OL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; COLOR: #c4c4c4; PADDING-TOP: 0px; LIST-STYLE-TYPE: none
}
.cnnMpVideoContent OL LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; OVERFLOW: hidden; PADDING-TOP: 0px; BORDER-BOTTOM: #e6e6e6 1px =
solid; POSITION: relative; HEIGHT: 57px
}
.cnnMpVideoContent OL LI A {
	PADDING-RIGHT: 78px; DISPLAY: block; PADDING-LEFT: 30px; FONT-WEIGHT: =
bold; FONT-SIZE: 11px; PADDING-BOTTOM: 22px; LINE-HEIGHT: 14px; =
PADDING-TOP: 21px; HEIGHT: 14px; TEXT-DECORATION: none
}
.cnnMpVideoContent OL LI B {
	FONT-WEIGHT: bold; FONT-SIZE: 16px; LEFT: 12px; LINE-HEIGHT: 19px; =
POSITION: absolute; TOP: 19px
}
.cnnMpVideoContent OL LI IMG {
	BORDER-RIGHT: #fff 1px solid; BORDER-TOP: #fff 1px solid; RIGHT: 8px; =
BORDER-LEFT: #fff 1px solid; BORDER-BOTTOM: #fff 1px solid; POSITION: =
absolute; TOP: 5px
}
* HTML cnnMpVideoContent OL LI A {
	HEIGHT: 57px
}
*:first-child + HTML cnnMpVideoContent OL LI A {
	HEIGHT: 57px
}
.cnnMpVideoContent OL LI A:hover {
	BACKGROUND: #fefde8
}
.cnnMpVideoContent OL LI A:hover IMG {
	BORDER-RIGHT: #c00 1px solid; BORDER-TOP: #c00 1px solid; BORDER-LEFT: =
#c00 1px solid; BORDER-BOTTOM: #c00 1px solid
}
#cnnMostPopMod .active .cnnWireRedBox {
	DISPLAY: none
}
#cnnMostPopMod .closed .cnnWireBox {
	DISPLAY: none
}
#cnnMostPopMod .closed .cnnWireRedBox {
	DISPLAY: block
}
#cnnMostPopMod .active .cnnWireBox {
	DISPLAY: block
}
TABLE#cnnRR336ad {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: =
0px; BORDER-RIGHT-WIDTH: 0px
}
TABLE#cnnRR336ad TD {
	MIN-HEIGHT: 280px; BACKGROUND: #e6e6e6; WIDTH: 336px; HEIGHT: 280px; =
TEXT-ALIGN: center
}
* HTML TABLE#cnnRR336ad TD {
	HEIGHT: 280px
}
.cnnAdvertTxt336B {
	PADDING-RIGHT: 1px; PADDING-LEFT: 0px; PADDING-BOTTOM: 2px; =
PADDING-TOP: 2px; TEXT-ALIGN: right
}
#cnn_cb354 INPUT {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#cnn_cb354 {
	FONT-SIZE: 10px; WIDTH: 354px; HEIGHT: 170px; BACKGROUND-COLOR: #ffffff
}
#cnn_cb354 #cnn_outer_tl {
	FLOAT: left; WIDTH: 4px; HEIGHT: 4px
}
#cnn_cb354 #cnn_outer_t {
	OVERFLOW: hidden; WIDTH: 300px; HEIGHT: 4px
}
#cnn_cb354 #cnn_outer_tr {
	FLOAT: right; WIDTH: 4px; HEIGHT: 4px
}
#cnn_cb354 #cnn_outer_bl {
	FLOAT: left; WIDTH: 4px; HEIGHT: 4px
}
#cnn_cb354 #cnn_outer_b {
	OVERFLOW: hidden; WIDTH: 346px; HEIGHT: 4px
}
#cnn_cb354 #cnn_outer_br {
	FLOAT: right; WIDTH: 4px; HEIGHT: 4px
}
#cnn_cb354 #cnn_content {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/partners/cb/topc=
orners.gif); MARGIN: 5px 9px 0px; WIDTH: 336px; BORDER-BOTTOM: #e6e6e6 =
1px solid; HEIGHT: 121px
}
#cnn_cb354 #cnn_mainblock {
	FLOAT: left; BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/partners/cb/main=
block.gif); MARGIN: 10px 9px 0px 5px; WIDTH: 139px; HEIGHT: 102px
}
HTML > BODY #cnn_cb354 #cnn_mainblock {
	MARGIN: 9px 9px 10px 10px
}
#cnn_cb354 #cnn_maintext {
	PADDING-RIGHT: 8px; PADDING-LEFT: 7px; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 0px; MARGIN: 8px 0px 0px; COLOR: #ca0002; PADDING-TOP: =
0px
}
#cnn_cb354 #cnn_mainblock .text {
=09
}
#cnn_cb354 #cnn_searchblock {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FLOAT: left; =
PADDING-BOTTOM: 0px; WIDTH: 170px; PADDING-TOP: 7px
}
#cnn_cb354 #cnn_searchblock FORM {
	MARGIN: 0px 2px 8px 0px; COLOR: #949494; TEXT-ALIGN: right
}
#cnn_cb354 #cnn_searchblock INPUT {
	BORDER-TOP-WIDTH: 1px; PADDING-RIGHT: 0px; MARGIN-TOP: 7px; =
PADDING-LEFT: 2px; BORDER-LEFT-WIDTH: 1px; BORDER-BOTTOM-WIDTH: 1px; =
PADDING-BOTTOM: 0px; WIDTH: 85px; PADDING-TOP: 2px; HEIGHT: 16px; =
BORDER-RIGHT-WIDTH: 1px
}
#cnn_cb354 #cnn_searchblock IMG {
	FLOAT: left
}
#cnn_cb354 #cnn_bottom {
	PADDING-RIGHT: 7px; PADDING-LEFT: 7px; BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/partners/cb/bott=
omcorners.gif); PADDING-BOTTOM: 7px; MARGIN: 0px 9px 5px; WIDTH: 322px; =
PADDING-TOP: 7px; HEIGHT: 16px
}
#cnn_cb354 #cnn_bottom .more {
	PADDING-RIGHT: 2px; FONT-WEIGHT: normal; FLOAT: right; MARGIN: 1px 0px =
0px 25px
}
#cnn_cb354 INPUT.CBkeywordBox {
	FONT-WEIGHT: bold; FONT-SIZE: 11px; COLOR: #000
}
#cnn_cb354 .cnnCB336Keyword {
	MARGIN-RIGHT: 16px
}
#cnn_cb354 .cnnCB354CityTxt {
	MARGIN-RIGHT: 25px
}
#cnn_cb354 .cnnCBSearchBtn {
	MARGIN-TOP: -1px; FLOAT: right; MARGIN-RIGHT: 23px
}
#cnn_cb336 INPUT {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#cnn_cb336 {
	FONT-SIZE: 10px; WIDTH: 336px; HEIGHT: 152px
}
#cnn_cb336 #cnn_outer_tl {
	FLOAT: left; WIDTH: 4px; HEIGHT: 4px
}
#cnn_cb336 #cnn_outer_t {
	OVERFLOW: hidden; WIDTH: 300px; HEIGHT: 4px
}
#cnn_cb336 #cnn_outer_tr {
	FLOAT: right; WIDTH: 4px; HEIGHT: 4px
}
#cnn_cb336 #cnn_outer_bl {
	FLOAT: left; WIDTH: 4px; HEIGHT: 4px
}
#cnn_cb336 #cnn_outer_b {
	OVERFLOW: hidden; WIDTH: 346px; HEIGHT: 4px
}
#cnn_cb336 #cnn_outer_br {
	FLOAT: right; WIDTH: 4px; HEIGHT: 4px
}
#cnn_cb336 #cnn_content {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/partners/cb336/c=
b_gray.gif); WIDTH: 336px; BORDER-BOTTOM: #e6e6e6 1px solid; HEIGHT: =
121px
}
#cnn_cb336 #cnn_mainblock {
	FLOAT: left; BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/partners/cb336/m=
ainblock.gif); MARGIN: 10px 9px 0px 5px; WIDTH: 139px; HEIGHT: 102px
}
HTML > BODY #cnn_cb336 #cnn_mainblock {
	MARGIN: 9px 9px 10px 10px
}
#cnn_cb336 #cnn_maintext {
	PADDING-RIGHT: 8px; PADDING-LEFT: 7px; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 0px; MARGIN: 8px 0px 0px; COLOR: #ca0002; PADDING-TOP: =
0px
}
#cnn_cb336 #cnn_mainblock .text {
=09
}
#cnn_cb336 #cnn_searchblock {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FLOAT: left; =
PADDING-BOTTOM: 0px; WIDTH: 170px; PADDING-TOP: 7px
}
#cnn_cb336 #cnn_searchblock FORM {
	MARGIN: 0px 2px 8px 0px; COLOR: #949494; TEXT-ALIGN: right
}
#cnn_cb336 #cnn_searchblock INPUT {
	BORDER-TOP-WIDTH: 1px; PADDING-RIGHT: 0px; MARGIN-TOP: 7px; =
PADDING-LEFT: 2px; BORDER-LEFT-WIDTH: 1px; FONT-SIZE: 10px; =
BORDER-BOTTOM-WIDTH: 1px; BORDER-BOTTOM-COLOR: #dadada; PADDING-BOTTOM: =
0px; WIDTH: 85px; PADDING-TOP: 2px; HEIGHT: 16px; BORDER-RIGHT-WIDTH: =
1px; BORDER-RIGHT-COLOR: #cccccc
}
#cnn_cb336 #cnn_searchblock IMG {
	FLOAT: left
}
#cnn_cb336 #cnn_bottom {
	PADDING-RIGHT: 7px; PADDING-LEFT: 7px; BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/partners/cb336/c=
b_gray.gif) no-repeat left bottom; PADDING-BOTTOM: 7px; WIDTH: 322px; =
PADDING-TOP: 7px; HEIGHT: 16px
}
#cnn_cb336 #cnn_bottom .more {
	PADDING-RIGHT: 2px; FONT-WEIGHT: normal; FLOAT: right; MARGIN: 1px 0px =
0px 25px
}
#cnn_cb336 INPUT.cnnCBkeywordBox {
	FONT-WEIGHT: bold; FONT-SIZE: 11px; COLOR: #000
}
#cnn_cb336 .cnnCB336Keyword {
	MARGIN-RIGHT: 16px
}
#cnn_cb336 .cnnCB354CityTxt {
	MARGIN-RIGHT: 25px
}
#cnn_cb336 .cnnCBSearchBtn {
	MARGIN-TOP: -1px; FLOAT: right; MARGIN-RIGHT: 23px
}
#cnnCnetTodayRecentPR #cnnCnetLogoHeader {
	WIDTH: 336px; BORDER-BOTTOM: #cc0000 2px solid; HEIGHT: 31px
}
#cnnCnetTodayRecentPR #cnnCnetLogoHeaderB {
	WIDTH: 336px; BORDER-BOTTOM: #cc0000 2px solid; HEIGHT: 31px
}
#cnnCnetTodayRecentPR #cnnCnetLogoHeader {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/partners/cnet/lo=
go_cnet.gif)
}
#cnnCnetTodayRecentPR #cnnCnetLogoHeaderB {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/partners/cnet/lo=
go_cnet_gray.gif)
}
#cnnCnetTodayRecentPR #cnnCnetContentBox {
	BORDER-RIGHT: #cdcdcd 1px solid; PADDING-RIGHT: 9px; PADDING-LEFT: 9px; =
FONT-SIZE: 10px; PADDING-BOTTOM: 9px; BORDER-LEFT: #cdcdcd 1px solid; =
WIDTH: 316px; LINE-HEIGHT: 13px; PADDING-TOP: 9px; BACKGROUND-COLOR: =
#f2f2f2
}
#cnnCnetTodayRecentPR #cnnCnetFeature {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-WEIGHT: bold; =
BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/partners/cnet/fe=
ature.gif); MARGIN-BOTTOM: 9px; PADDING-BOTTOM: 7px; WIDTH: 296px; =
COLOR: #949494; PADDING-TOP: 7px; HEIGHT: 64px
}
#cnnCnetTodayRecentPR #cnnCnetFeature IMG {
	FLOAT: left; MARGIN: 3px 6px 2px 0px; BORDER-TOP-STYLE: none; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: =
none
}
#cnnCnetTodayRecentPR #cnnCnetRecent {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-WEIGHT: bold; =
BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/partners/cnet/re=
cent.gif); PADDING-BOTTOM: 7px; WIDTH: 296px; COLOR: #949494; =
PADDING-TOP: 7px; HEIGHT: 168px
}
#cnnCnetTodayRecentPR .cnnCnetPRName {
	FONT-WEIGHT: bold; FLOAT: left; WIDTH: 126px; COLOR: #000000; =
PADDING-TOP: 6px
}
#cnnCnetTodayRecentPR .cnnCnetPRContent {
	PADDING-RIGHT: 0px; PADDING-LEFT: 18px; FONT-WEIGHT: bold; FLOAT: =
right; PADDING-BOTTOM: 0px; WIDTH: 83px; COLOR: #949494; PADDING-TOP: =
6px
}
#cnnCnetTodayRecentPR .cnnCnetPRImg {
	FLOAT: left; MARGIN: 3px 9px 3px 0px
}
#cnnCnetPRDDFooter {
	PADDING-RIGHT: 9px; PADDING-LEFT: 9px; BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/partners/cnet/bo=
ttom.gif) no-repeat left bottom; PADDING-BOTTOM: 9px; WIDTH: 318px; =
PADDING-TOP: 10px; HEIGHT: 25px
}
#cnnCnetPRDDFooter .cnnCnetMore {
	FONT-WEIGHT: normal; FONT-SIZE: 10px; FLOAT: right; MARGIN: 4px 0px 0px
}
.cnnCnetDivider {
	CLEAR: both; BORDER-TOP: #e6e6e6 1px solid; OVERFLOW: hidden; HEIGHT: =
0px
}
.cnnCnetPRHead {
	FONT-WEIGHT: bold; FONT-SIZE: 18px; COLOR: #000; LETTER-SPACING: -1px
}
.cnnCnetPRIntro {
	FONT-WEIGHT: bold; FONT-SIZE: 12px; COLOR: #000; LINE-HEIGHT: 16px
}
.cnnCnetPRName {
	FONT-WEIGHT: bold; FONT-SIZE: 12px; COLOR: #000; LINE-HEIGHT: 16px
}
.cnnCnetPRName {
	WIDTH: 128px
}
.cnnCnetPRLink {
	FONT-WEIGHT: bold; FONT-SIZE: 11px; LINE-HEIGHT: 14px
}
.cnnCnetPRRating {
	FONT-WEIGHT: bold; FONT-SIZE: 11px; COLOR: #949494
}
.cnnCnetPad {
	PADDING-RIGHT: 9px; PADDING-LEFT: 12px; PADDING-BOTTOM: 9px; =
PADDING-TOP: 6px
}
.cnnCnetPRMenu {
	FLOAT: right; WIDTH: 110px
}
.cnnCnetPRImgContainer {
	WIDTH: 100%; POSITION: relative
}
.cnnCnetPRImg {
	RIGHT: 0px; BOTTOM: 0px; POSITION: absolute
}
#cnnCNETLogoHeaderA {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/partners/cnet/lo=
go_cnet.gif) no-repeat; BORDER-BOTTOM: #cc0000 2px solid; HEIGHT: 31px
}
#cnnCNETContentA {
	BORDER-RIGHT: #cdcdcd 1px solid; PADDING-RIGHT: 9px; PADDING-LEFT: 9px; =
FONT-SIZE: 10px; PADDING-BOTTOM: 9px; BORDER-LEFT: #cdcdcd 1px solid; =
PADDING-TOP: 9px; BACKGROUND-COLOR: #f3f2f2
}
#cnnCNETFeatureA {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-WEIGHT: bold; =
BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/partners/cnet/fe=
ature_316.gif); MARGIN-BOTTOM: 9px; PADDING-BOTTOM: 7px; COLOR: #949494; =
PADDING-TOP: 7px; HEIGHT: 64px
}
#cnnCNETRecentA {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-WEIGHT: bold; =
BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/partners/cnet/re=
cent_316.gif); PADDING-BOTTOM: 7px; COLOR: #949494; PADDING-TOP: 7px; =
HEIGHT: 168px
}
.cnnCNETProductName {
	FONT-WEIGHT: bold; FLOAT: left; WIDTH: 110px; COLOR: #000000; =
LINE-HEIGHT: 12px; PADDING-TOP: 6px
}
.cnnCNETScore {
	COLOR: #949494
}
.cnnCNETReviewImg {
	FLOAT: left; MARGIN: 3px 9px 3px 0px; BORDER-TOP-STYLE: none; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: =
none
}
.cnnCNETFeaturedImg {
	FLOAT: left; MARGIN: 3px 6px 2px 0px; BORDER-TOP-STYLE: none; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: =
none
}
.cnnCNETSelectMore {
	PADDING-LEFT: 9px
}
* HTML .cnnCNET2Pad {
	PADDING-RIGHT: 2px; PADDING-LEFT: 2px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
#cnnCNETbottomA {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/partners/cnet/bo=
ttom.gif) no-repeat left top; PADDING-BOTTOM: 9px; PADDING-TOP: 9px; =
HEIGHT: 25px
}
#cnnCNETbottomA .cnnCNETmore {
	PADDING-RIGHT: 11px; MARGIN-TOP: 5px; FONT-WEIGHT: normal; FONT-SIZE: =
10px; FLOAT: right
}
#cnnCNETItem {
	BORDER-TOP: #e6e6e6 1px solid
}
#cnnCNETLogoHeaderB {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/partners/cnet/lo=
go_cnet_gray.gif); MARGIN: 0px 9px; WIDTH: 316px; BORDER-BOTTOM: #cc0000 =
2px solid; HEIGHT: 31px
}
#cnnCNETContentB {
	BORDER-RIGHT: #e6e6e6 1px solid; PADDING-RIGHT: 9px; PADDING-LEFT: 9px; =
FONT-SIZE: 10px; PADDING-BOTTOM: 9px; MARGIN: 0px; BORDER-LEFT: #e6e6e6 =
1px solid; PADDING-TOP: 9px; BACKGROUND-COLOR: #ffffff
}
#cnnCNETFeatureB {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-WEIGHT: bold; =
BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/partners/cnet/fe=
ature_296.gif); MARGIN-BOTTOM: 9px; PADDING-BOTTOM: 7px; COLOR: #949494; =
PADDING-TOP: 7px; HEIGHT: 64px
}
#cnnCNETRecentB {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-WEIGHT: bold; =
BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/partners/cnet/re=
cent_296.gif); PADDING-BOTTOM: 7px; COLOR: #949494; PADDING-TOP: 7px; =
HEIGHT: 168px
}
.cnnCNETProductName {
	FONT-WEIGHT: bold; FLOAT: left; WIDTH: 110px; COLOR: #000000; =
LINE-HEIGHT: 12px; PADDING-TOP: 6px
}
.cnnCNETContent {
	PADDING-RIGHT: 0px; PADDING-LEFT: 18px; FONT-WEIGHT: bold; FONT-SIZE: =
10px; FLOAT: right; PADDING-BOTTOM: 0px; WIDTH: 73px; COLOR: #ca0002; =
LINE-HEIGHT: 12px; PADDING-TOP: 6px
}
.cnnPad9LR {
	PADDING-RIGHT: 9px; PADDING-LEFT: 9px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
#cnnCNETbottomB {
	BORDER-RIGHT: #e6e6e6 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: =
#e6e6e6 1px solid; PADDING-LEFT: 0px; PADDING-BOTTOM: 5px; MARGIN: 0px; =
BORDER-LEFT: #e6e6e6 1px solid; PADDING-TOP: 9px; BORDER-BOTTOM: #e6e6e6 =
0px solid
}
#cnnCNETbottomB .cnnCNETmore {
	PADDING-RIGHT: 9px; MARGIN-TOP: 5px; FONT-WEIGHT: normal; FLOAT: right
}
.cnnCNETmore A {
	FONT-SIZE: 10px
}
.cnnWireAdBoxHeader {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/adv_li=
nks/corner_str_gr_wht_tr.gif)
}
.cnnWireSeBoxHeader {
	BACKGROUND: =
url(http://i.a.cnn.net/cnn/.element/img/2.0/global/set_edition/corner_se_=
tr_bg.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
#cnn_POLITICS .cnnWireSeBoxHeader {
	BACKGROUND: =
url(http://i.a.cnn.net/cnn/.element/img/2.0/global/set_edition/corner_se_=
tr.elex.gif) repeat-x 100% 0px
}
#cnnBoxSeContent {
	BORDER-RIGHT: #afafaf 2px solid; BORDER-TOP: #afafaf 0px solid; =
BORDER-LEFT: #afafaf 2px solid; BORDER-BOTTOM: #afafaf 0px solid
}
#cnnBoxSeContent {
	BACKGROUND-IMAGE: =
url(http://i.a.cnn.net/cnn/.element/img/2.0/global/set_edition/se_bg.gif)=
; BACKGROUND-REPEAT: repeat-x
}
.cnnWireSeBoxFooter {
	BACKGROUND: =
url(http://i.a.cnn.net/cnn/.element/img/2.0/global/set_edition/corner_se_=
br_bg.gif) no-repeat 100% 0px; PADDING-BOTTOM: 12px; OVERFLOW: hidden; =
HEIGHT: 4px
}
#cnn_POLITICS .cnnWireSeBoxFooter {
	BACKGROUND: =
url(http://i.a.cnn.net/cnn/.element/img/2.0/global/set_edition/corner_se_=
br.elex.gif) no-repeat 100% 0px
}
.cnnWireBox2Header IMG {
	DISPLAY: block
}
.cnnWireBox2Footer IMG {
	DISPLAY: block
}
#cnnBoxSeContent {
	FONT-SIZE: 16px; FONT-FAMILY: Helvetica,Arial; TEXT-ALIGN: center
}
TABLE.cnnSetEdition TD {
	FONT-SIZE: 16px; FONT-FAMILY: Helvetica,Arial
}
TABLE.cnnSetEdition TD.setEdText {
	PADDING-BOTTOM: 0px
}
TABLE.cnnSetEdition TD.cnnRightAlign {
	VERTICAL-ALIGN: middle; TEXT-ALIGN: right
}
#cnnBoxSeContent FORM {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 8px; MARGIN: =
0px; PADDING-TOP: 8px
}
#cnnBoxSeContent IMG.cnnEditionBoxBtn {
	MARGIN-TOP: 1px; MARGIN-LEFT: 17px
}
#cnnBoxSeContent IMG.cnnEditionCloseBtn {
	PADDING-RIGHT: 10px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: =
0px; BORDER-TOP-STYLE: none; PADDING-TOP: 13px; BORDER-RIGHT-STYLE: =
none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
TABLE.cnnSetEdition TD.cnnEditionRadioTD {
	PADDING-RIGHT: 3px; PADDING-LEFT: 12px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
TABLE.cnnSetEdition TD.cnnEditionRadioTD INPUT {
	MARGIN: 0px
}
#cnn_POLITICS .cnn728Container {
	BACKGROUND: #1e1e1e; BORDER-BOTTOM: #000 1px solid
}
#cnn_POLITICS .cnn728Ad {
	BACKGROUND: #1e1e1e
}
#cnn_POLITICS .cnnHeaderContent .cnnGlobalHeaderTopics A {
	COLOR: #97d1ff
}
#cnn_POLITICS .cnnHeaderContent .cnnGlobalHeaderTopics A:visited {
	COLOR: #5c7996
}
#cnn_POLITICS .cnnHeaderContent .cnnGlobalHeaderTopics A:hover {
	COLOR: #ca0002
}
#cnn_POLITICS DIV#cnnHeader {
	BACKGROUND: #1e1e1e
}
#cnn_POLITICS DIV.cnnHeaderContent {
	BACKGROUND: #1e1e1e
}
#cnn_POLITICS .cnnNavStretch {
	BORDER-LEFT-COLOR: #000; BORDER-BOTTOM-COLOR: #000; BORDER-TOP-COLOR: =
#000; BORDER-RIGHT-COLOR: #000
}
#cnn_POLITICS .cnnHeaderNav UL.cnnNavigation LI {
	BORDER-LEFT-COLOR: #000; BORDER-BOTTOM-COLOR: #000; BORDER-TOP-COLOR: =
#000; BORDER-RIGHT-COLOR: #000
}
#cnn_POLITICS .cnnHeaderNav UL.cnnUtilityNavigation LI.cnnVideo {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/header/header=
_video_btn_drk.gif) #1e1e1e no-repeat 0px 50%
}
#cnn_POLITICS .cnnHeaderNav UL.cnnUtilityNavigation LI.cnnIreport {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/header/irepor=
t_icon_drk.gif) #1e1e1e no-repeat 0px 50%
}
#cnn_POLITICS .cnnHeaderNav UL.cnnUtilityNavigation LI.cnnRSS {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/header/header=
_rss_btn_drk.gif) #1e1e1e no-repeat 0px 50%
}
#cnn_POLITICS .cnnHeaderNav UL.cnnNavigation LI.offsite {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/header/gray_a=
rrow.gif) #1e1e1e no-repeat 50% 100%
}
#cnn_POLITICS .cnnHeaderNav UL.cnnUtilityNavigation LI.cnnMobile {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/header/header=
_mobile_btn.gif) #1e1e1e no-repeat 0px 50%
}
#cnn_POLITICS .cnnHeaderNav UL.cnnUtilityNavigation LI.cnnImpact {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/header/header=
_impact_btn_drk.gif) #1e1e1e no-repeat 0px 50%
}
#cnn_POLITICS .cnnHeaderNav UL.cnnUtilityNavigation LI.cnnOnTV {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/header/header=
_tv_btn.gif) #1e1e1e no-repeat 0px 50%
}
#cnn_POLITICS .cnnHeaderBot A {
	COLOR: #97d1ff
}
#cnn_POLITICS .cnnHeaderBot A:hover {
	COLOR: #ca0002
}
#cnn_POLITICS .cnnHeaderContent .cnnGlobalHeaderTopics =
.cnnGlobalHeaderHotTopic {
	COLOR: #ca0002
}
#cnn_POLITICS .cnnHeaderContent .cnnGlobalHeaderTopics =
.cnnGlobalHeaderHotTopic A {
	COLOR: #ca0002
}
#cnn_POLITICS .cnnHeaderContent .cnnHeaderBot .cnnGlobalHeaderTopics {
	VERTICAL-ALIGN: text-top; TOP: 6px
}
#cnn_POLITICS IMG.cnnElectionCenterStar {
	MARGIN: 0px 4px
}
#cnn_POLITICS .cnnHeaderElexTopics {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
0px; PADDING-TOP: 4px
}
#cnn_POLITICS .cnnHeaderElexLnk {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 35px; BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/sect/politics/two_balloo=
ns.gif) #333 no-repeat 1px 1px; FLOAT: left; PADDING-BOTTOM: 5px; WIDTH: =
126px; PADDING-TOP: 5px
}

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/css/2.0/mosaic.css

#cnnMainContent {
	BACKGROUND: #fff
}
#cnnLeftCol {
	MARGIN-TOP: 2px; BACKGROUND: #fff; MARGIN-BOTTOM: -2px; OVERFLOW: =
hidden; WIDTH: 603px; MARGIN-RIGHT: 18px
}
#cnnLeftCol .cnnMosaicContentCol {
	PADDING-RIGHT: 0px; PADDING-LEFT: 18px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 12px
}
#cnnRightCol {
	BACKGROUND: #f2f2f2; MARGIN: 5px 0px 6px; OVERFLOW: hidden; WIDTH: =
354px
}
.cnnRRBoxContent {
	PADDING-TOP: 4px
}
#cnnLeftCol P:first-child {
	MARGIN-TOP: 0px
}
#cnnHighLightTrigger {
	BACKGROUND: #fff
}
.cnnFirstTabActive .cnnWCBoxHeader IMG {
	DISPLAY: none
}
#cnnHighLightTrigger {
	MIN-HEIGHT: 400px
}
* HTML #cnnHighLightTrigger {
	HEIGHT: 400px
}
#cnnTxtCmpnt {
	DISPLAY: none
}
.cnnMosaicSubContentCol {
	MARGIN-TOP: 14px; FLOAT: left
}
.cnnMosaicSubElementCol {
	MARGIN-TOP: 14px; FLOAT: left
}
.cnnMosaicSubContentCol {
	MARGIN-LEFT: 198px; OVERFLOW: hidden; WIDTH: 370px
}
.cnnMosaicSubElementCol {
	MARGIN-LEFT: -568px; OVERFLOW: hidden; WIDTH: 180px
}
* HTML .cnnMosaicSubContentCol {
	MARGIN-LEFT: 99px
}
.cnnMosaicSubElementCol .cnnStoryElementBox {
	FLOAT: none; MARGIN-BOTTOM: 15px; MARGIN-RIGHT: 0px
}
.cnnMosaicSubElementCol .cnnStoryElementBox H4 {
	MARGIN-TOP: -1px
}
.cnnMosaicSubContentCol H3 {
	FONT-WEIGHT: bold; FONT-SIZE: 12px; MARGIN: 0px; LINE-HEIGHT: 15px; =
PADDING-TOP: 1px
}
.cnnMosaicSubContentCol P {
	MARGIN-TOP: 3px
}
#cnnSnapShot {
	BACKGROUND: #fff; MARGIN-BOTTOM: 6px
}
.cnnSnapShotHeader {
	BORDER-BOTTOM: #e1e1e1 1px solid; POSITION: relative; HEIGHT: 28px
}
#cnnTimeStamp {
	FONT-WEIGHT: bold; FONT-SIZE: 11px; LEFT: 18px; COLOR: #ca0002; =
LINE-HEIGHT: 14px; POSITION: absolute; TOP: 5px
}
.cnnGryTmeStmp {
	COLOR: #949494
}
#cnnBrandingBanner {
	MARGIN-BOTTOM: -6px
}
#cnnBrandingBanner .cnnStoryTools {
	DISPLAY: none
}
* HTML #cnnBrandingBanner {
	MARGIN-BOTTOM: -3px
}
.cnnSnapShotHeader#cnnBrandingBanner {
	BORDER-BOTTOM-WIDTH: 0px; WIDTH: 984px; TOP: -4px; HEIGHT: 55px
}
#cnnBrandingBanner #cnnTimeStamp {
	TOP: 45px
}
#cnnHeaderLeftCol {
	DISPLAY: inline; FLOAT: left; MARGIN: 10px 18px 15px; WIDTH: 432px
}
#cnnHeaderRightCol {
	MARGIN-TOP: 12px; DISPLAY: inline; FLOAT: left; WIDTH: 504px
}
#cnnHeaderRightCol UL {
	MARGIN-BOTTOM: 9px
}
#cnnHeaderRightCol LI {
	COLOR: #000
}
#cnnHeaderRightCol LI.cnnHiliteHeader {
	FONT-WEIGHT: bold; TEXT-TRANSFORM: uppercase; LIST-STYLE-TYPE: none
}
#cnnHeaderRightCol LI.cnnNextStory {
	FONT-WEIGHT: bold; FONT-SIZE: 10px; MARGIN: 0px; LINE-HEIGHT: 12px; =
PADDING-TOP: 12px; LIST-STYLE-TYPE: none
}
#cnnHeaderRightCol LI B {
	COLOR: #ca0002
}
H1 {
	FONT-SIZE: 28px; MARGIN: 0px; LINE-HEIGHT: 31px; LETTER-SPACING: -1px
}
.cnnContentBtn {
	MARGIN: -6px 0px 7px
}
* HTML .cnnContentBtn {
	MARGIN: -12px 0px 7px
}
.cnnStoryTools {
	RIGHT: 9px; POSITION: absolute; TOP: 5px
}
.cnnStoryToolsFooter {
	CLEAR: both; BORDER-RIGHT: #e8e8e8 0px solid; BORDER-TOP: #e8e8e8 1px =
solid; MARGIN: 27px 0px 8px; BORDER-LEFT: #e8e8e8 0px solid; =
BORDER-BOTTOM: #e8e8e8 1px solid; POSITION: relative; HEIGHT: 33px
}
* HTML .cnnStoryToolsFooter {
	MARGIN-TOP: 24px
}
.cnnStoryToolsFooter .cnnStoryTools {
	RIGHT: 0px; TOP: 9px
}
#cnnTabNav {
	CLEAR: both
}
#cnnTabNav UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px; LIST-STYLE-TYPE: none; HEIGHT: 29px
}
#cnnTabNav LI {
	DISPLAY: block; BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/tabs_bg.gray.gif)=
 #fff no-repeat 0px 0px; FLOAT: left; OVERFLOW: hidden; TEXT-TRANSFORM: =
uppercase; WIDTH: 123px; MARGIN-RIGHT: 6px; HEIGHT: 23px
}
#cnnTabNav LI A {
	DISPLAY: block; FONT-WEIGHT: bold; FONT-SIZE: 10px; BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/tabs_bg.gray.gif)=
 no-repeat 0px 0px; COLOR: #ca0002; POSITION: relative; HEIGHT: 23px; =
TEXT-DECORATION: none
}
#cnnTabNav LI.currentLeft A {
	COLOR: #949494
}
#cnnTabNav LI.currentRight A {
	COLOR: #949494
}
#cnnTabNav LI.current A {
	COLOR: #949494
}
#cnnTabNav LI A IMG {
	VERTICAL-ALIGN: -4px; MARGIN-RIGHT: 4px
}
#cnnTabNav LI A SPAN {
	LEFT: 10px; CURSOR: pointer; POSITION: absolute; TOP: 4px
}
#cnnTabNav LI.currentLeft A SPAN {
	LEFT: 15px
}
#cnnTabNav LI.currentRight A SPAN {
	LEFT: 15px
}
#cnnTabNav LI.current A SPAN {
	LEFT: 15px
}
#cnnTabNav LI A SPAN.cnnArticleTab {
	PADDING-LEFT: 20px; BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/icn_article.gif) =
no-repeat 0px 0px; PADDING-TOP: 2px; TOP: 3px; HEIGHT: 16px
}
#cnnTabNav LI.currentLeft SPAN.cnnArticleTab {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/icn_article_graye=
d.gif) no-repeat 0px 0px
}
#cnnTabNav LI.currentRight SPAN.cnnArticleTab {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/icn_article_graye=
d.gif) no-repeat 0px 0px
}
#cnnTabNav LI.current SPAN.cnnArticleTab {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/icn_article_graye=
d.gif) no-repeat 0px 0px
}
#cnnTabNav LI A SPAN.cnnVideoTab {
	PADDING-LEFT: 20px; BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/icn_videos.gif) =
no-repeat 0px 1px
}
#cnnTabNav LI.currentLeft SPAN.cnnVideoTab {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/icn_videos_grayed=
.gif) no-repeat 0px 1px
}
#cnnTabNav LI.currentRight SPAN.cnnVideoTab {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/icn_videos_grayed=
.gif) no-repeat 0px 1px
}
#cnnTabNav LI.current SPAN.cnnVideoTab {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/icn_videos_grayed=
.gif) no-repeat 0px 1px
}
#cnnTabNav LI A SPAN.cnnPhotoTab {
	PADDING-LEFT: 22px; BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/icn_photos.gif) =
no-repeat 0px 0px
}
#cnnTabNav LI.currentLeft SPAN.cnnPhotoTab {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/icn_photos_grayed=
.gif) no-repeat 0px 0px
}
#cnnTabNav LI.currentRight SPAN.cnnPhotoTab {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/icn_photos_grayed=
.gif) no-repeat 0px 0px
}
#cnnTabNav LI.current SPAN.cnnPhotoTab {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/icn_photos_grayed=
.gif) no-repeat 0px 0px
}
#cnnTabNav LI A:hover {
	BACKGROUND-POSITION: 0px -25px
}
#cnnTabNav LI.current {
	HEIGHT: 29px
}
#cnnTabNav LI.currentLeft {
	HEIGHT: 29px
}
#cnnTabNav LI.currentRight {
	HEIGHT: 29px
}
#cnnTabNav LI.current A {
	HEIGHT: 29px
}
#cnnTabNav LI.currentLeft A {
	HEIGHT: 29px
}
#cnnTabNav LI.currentRight A {
	HEIGHT: 29px
}
#cnnTabNav LI.current A {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/bg_tab_current_le=
ft.gif) no-repeat left top
}
#cnnTabNav LI.current A:hover {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/bg_tab_current_le=
ft.gif) no-repeat left top
}
#cnnTabNav LI.current {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/bg_tab_current_ri=
ght.gif) #fff no-repeat right top
}
#cnnTabNav LI.currentLeft A {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/bg_tab_current_fi=
rst.gif) no-repeat left top
}
#cnnTabNav LI.currentLeft A:hover {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/bg_tab_current_fi=
rst.gif) no-repeat left top
}
#cnnTabNav LI.currentLeft {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/bg_tab_current_ri=
ght.gif) #fff no-repeat right top
}
#cnnTabNav LI.currentRight A {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/bg_tab_current_le=
ft.gif) no-repeat left top
}
#cnnTabNav LI.currentRight A:hover {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/bg_tab_current_le=
ft.gif) no-repeat left top
}
#cnnTabNav LI.currentRight {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/lnk/tabs_current_=
last_lnk.bg.gif) #fff no-repeat right top
}
#cnnTabNav LI IMG.off {
	DISPLAY: inline
}
#cnnTabNav LI IMG.on {
	DISPLAY: none
}
#cnnTabNav LI.current IMG.on {
	DISPLAY: inline
}
#cnnTabNav LI.currentLeft IMG.on {
	DISPLAY: inline
}
#cnnTabNav LI.currentRight IMG.on {
	DISPLAY: inline
}
#cnnTabNav LI.current IMG.off {
	DISPLAY: none
}
#cnnTabNav LI.currentLeft IMG.off {
	DISPLAY: none
}
#cnnTabNav LI.currentRight IMG.off {
	DISPLAY: none
}
* HTML #cnnTabNav UL LI {
	POSITION: relative
}
#cnnTabNav UL LI .tabDefaultBG {
	BORDER-TOP-WIDTH: 0px; DISPLAY: none; BORDER-LEFT-WIDTH: 0px; =
BORDER-BOTTOM-WIDTH: 0px; POSITION: absolute; BORDER-RIGHT-WIDTH: 0px
}
#cnnTabNav UL LI .leftCornerFirst {
	BORDER-TOP-WIDTH: 0px; DISPLAY: none; BORDER-LEFT-WIDTH: 0px; =
BORDER-BOTTOM-WIDTH: 0px; POSITION: absolute; BORDER-RIGHT-WIDTH: 0px
}
#cnnTabNav UL LI .leftCorner {
	BORDER-TOP-WIDTH: 0px; DISPLAY: none; BORDER-LEFT-WIDTH: 0px; =
BORDER-BOTTOM-WIDTH: 0px; POSITION: absolute; BORDER-RIGHT-WIDTH: 0px
}
#cnnTabNav UL LI .rightCorner {
	BORDER-TOP-WIDTH: 0px; DISPLAY: none; BORDER-LEFT-WIDTH: 0px; =
BORDER-BOTTOM-WIDTH: 0px; POSITION: absolute; BORDER-RIGHT-WIDTH: 0px
}
#cnnTabNav UL LI .rightCornerLast {
	BORDER-TOP-WIDTH: 0px; DISPLAY: none; BORDER-LEFT-WIDTH: 0px; =
BORDER-BOTTOM-WIDTH: 0px; POSITION: absolute; BORDER-RIGHT-WIDTH: 0px
}
* HTML #cnnTabNav UL LI .tabDefaultBG {
	DISPLAY: block
}
* HTML #cnnTabNav UL LI.current .leftCorner {
	DISPLAY: block
}
* HTML #cnnTabNav UL LI.current .rightCorner {
	DISPLAY: block
}
* HTML #cnnTabNav UL LI.currentLeft .leftCornerFirst {
	DISPLAY: block
}
* HTML #cnnTabNav UL LI.currentLeft .rightCorner {
	DISPLAY: block
}
* HTML #cnnTabNav UL LI.currentRight .leftCorner {
	DISPLAY: block
}
* HTML #cnnTabNav UL LI.currentRight .rightCornerLast {
	DISPLAY: block
}
* HTML #cnnTabNav UL LI.current .tabDefaultBG {
	DISPLAY: none
}
* HTML #cnnTabNav UL LI.currentLeft .tabDefaultBG {
	DISPLAY: none
}
* HTML #cnnTabNav UL LI.currentRight .tabDefaultBG {
	DISPLAY: none
}
* HTML #cnnTabNav UL LI .tabDefaultBG {
	LEFT: 0px; TOP: 0px
}
* HTML #cnnTabNav UL LI.current .leftCorner {
	LEFT: 0px; TOP: 0px
}
* HTML #cnnTabNav UL LI.currentLeft .leftCornerFirst {
	LEFT: 0px; TOP: 0px
}
* HTML #cnnTabNav UL LI.current .rightCorner {
	RIGHT: -5px; TOP: 0px
}
* HTML #cnnTabNav UL LI.currentLeft .rightCorner {
	RIGHT: -5px; TOP: 0px
}
* HTML #cnnTabNav UL LI.currentRight .rightCornerLast {
	RIGHT: -5px; TOP: 0px
}
#cnnLeftCol P A:link {
	FONT-WEIGHT: bold
}
#cnnLeftCol P A:visited {
	FONT-WEIGHT: bold
}
.cnnStoryPhotoBox {
	FLOAT: left; MARGIN: 2px 18px 18px 0px; WIDTH: 292px
}
.cnnStoryPhotoBox IMG {
	DISPLAY: block
}
.cnnStoryPhotoCaptionBox {
	BORDER-RIGHT: #e8e8e8 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: =
#e8e8e8 0px solid; PADDING-LEFT: 0px; BACKGROUND: #fff; PADDING-BOTTOM: =
0px; MARGIN: 0px; BORDER-LEFT: #e8e8e8 1px solid; PADDING-TOP: 0px; =
BORDER-BOTTOM: #e8e8e8 0px solid
}
.cnnStoryPhotoCaptionBox P {
	FONT-SIZE: 10px; MARGIN: 0px; COLOR: #666; LINE-HEIGHT: 13px
}
.cnnStoryPhotoBoxNavigation {
	BORDER-RIGHT: #e8e8e8 1px solid; BORDER-TOP: #e8e8e8 1px solid; MARGIN: =
0px; BORDER-LEFT: #e8e8e8 1px solid; BORDER-BOTTOM: #e8e8e8 0px solid; =
POSITION: relative; HEIGHT: 16px
}
.cnnImgChngr .cnnStoryPhotoBoxNavigation {
	HEIGHT: 26px
}
.cnnImgChngr {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/global/pic_changer/imgChngBG.=
gif) #fff no-repeat 0px 0px
}
.cnnStoryPhotoMoreLnk {
	LEFT: 12px; POSITION: absolute; TOP: 3px
}
.cnnImgChngr .cnnStoryPhotoMoreLnk {
	RIGHT: 9px; LEFT: auto; POSITION: absolute; TOP: 7px
}
.cnnImgChngr #cnnImgChngrPrvsLbl {
	POSITION: absolute
}
.cnnImgChngr #cnnImgChngrNxtLbl {
	POSITION: absolute
}
.cnnImgChngr #cnnImgChngrLbl {
	POSITION: absolute
}
.cnnImgChngr #cnnImgChngrPrvsLbl {
	TOP: 5px
}
.cnnImgChngr #cnnImgChngrNxtLbl {
	TOP: 5px
}
.cnnImgChngr #cnnImgChngrLbl {
	TOP: 8px
}
.cnnImgChngr #cnnImgChngrPrvsLbl {
	LEFT: 100px
}
.cnnImgChngr #cnnImgChngrNxtLbl {
	RIGHT: 100px
}
.cnnImgChngr #cnnImgChngrLbl {
	FONT-SIZE: 10px; LEFT: 133px; COLOR: #949494
}
.cnnStoryPhotoBoxNavigation A {
	FONT-SIZE: 10px; COLOR: #3d75ac; TEXT-DECORATION: none
}
.cnnStoryPhotoBoxNavigation A:hover {
	COLOR: #ca0002
}
#cnnTxtCmpnt LI {
	LIST-STYLE-POSITION: outside; MARGIN-LEFT: 15px
}
.cnnStoryPhotoBox {
	CLEAR: left
}
.cnnStoryElementBox {
	CLEAR: left
}
.cnnStoryElementBox {
	FONT-SIZE: 11px; FLOAT: left; MARGIN: 2px 18px 6px 0px; WIDTH: 180px; =
LINE-HEIGHT: 14px
}
.cnnStoryElementBox UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; LIST-STYLE-IMAGE: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/global/red_bull.gif); =
PADDING-BOTTOM: 0px; MARGIN: 2px 0px 0px; PADDING-TOP: 0px
}
.cnnStoryElementBox OL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 2px =
0px 0px; PADDING-TOP: 0px
}
.cnnStoryElementBox A {
	FONT-WEIGHT: bold
}
#cnnTxtCmpnt .storyElementBox LI {
	MARGIN-BOTTOM: 3px; MARGIN-LEFT: 12px
}
.cnnStoryElementBox LI {
	MARGIN-BOTTOM: 3px; MARGIN-LEFT: 12px
}
* HTML #cnnTxtCmpnt .cnnStoryElementBox LI {
	PADDING-LEFT: 0px; MARGIN-LEFT: 16px
}
* HTML .cnnStoryElementBox LI {
	PADDING-LEFT: 0px; MARGIN-LEFT: 16px
}
.cnnStoryElementBox OL LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 6px =
0px 0px 18px; PADDING-TOP: 0px
}
* HTML .cnnStoryElementBox OL LI {
	MARGIN-LEFT: 25px
}
.cnnFacts LI {
	COLOR: #666
}
.cnnCorrectionHead {
	COLOR: #ca0002
}
.cnnStoryElementBox H4 {
	FONT-WEIGHT: bold; FONT-SIZE: 16px; MARGIN: 0px; LINE-HEIGHT: 19px
}
.cnnStoryElementBox .cnnTVPromoBoxFooter A {
	FONT-WEIGHT: normal; FONT-SIZE: 10px
}
P.cnnAttribution {
	FONT-SIZE: 10px; MARGIN: 15px 0px; COLOR: #949494
}
* HTML P.cnnAttribution {
	MARGIN-TOP: -4px
}
P.cnnTopics {
	FONT-WEIGHT: bold; MARGIN: 11px 0px 27px; WORD-SPACING: 6px; COLOR: =
#949494
}
.cnnMosaicSubContentCol P.cnnTopics {
	MARGIN-BOTTOM: 0px; PADDING-BOTTOM: 0px
}
* HTML P.cnnTopics {
	MARGIN-BOTTOM: 0px; PADDING-BOTTOM: 0px
}
P.cnnTopics B {
	WORD-SPACING: 1px; COLOR: #000
}
.cnnMosaicSubContentCol P.cnnTopics B {
	DISPLAY: block
}
P.cnnTopics A {
	WORD-SPACING: 1px; TEXT-DECORATION: underline
}
P.cnnEditorNote {
	FONT-STYLE: italic
}
.cnnEmbeddedMosLnk {
	DISPLAY: inline; FONT-SIZE: 10px; WHITE-SPACE: nowrap
}
.cnnEmbeddedMosLnk IMG {
	PADDING-LEFT: 4px; VERTICAL-ALIGN: -2px
}
.cnnEmbeddedMosLnk A {
	PADDING-RIGHT: 2px; PADDING-LEFT: 2px; PADDING-BOTTOM: 1px; COLOR: =
#ca0002; PADDING-TOP: 2px
}
.cnnEmbeddedMosLnk A:visited {
	PADDING-RIGHT: 2px; PADDING-LEFT: 2px; PADDING-BOTTOM: 1px; COLOR: =
#ca0002; PADDING-TOP: 2px
}
.cnnEmbeddedMosLnk A:hover {
	BACKGROUND: #c90000; COLOR: #fff
}
.cnnUGCBox {
	BACKGROUND: #f5fafe; MARGIN: 9px 0px
}
.cnnUGCBox .cnnUGCBox {
	BACKGROUND: #fff; MARGIN: 3px 18px 9px
}
.cnnUGCBoxFooterMeta {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 12px; MARGIN: =
0px 18px; PADDING-TOP: 6px; HEIGHT: 14px
}
.cnnUGCBoxFooterMeta .cnnPostCommentsLnk {
	FLOAT: right; COLOR: #666
}
.cnnUGCBox .cnnBoxContent {
	BORDER-RIGHT: #e0e6ec 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: =
#e0e6ec 0px solid; PADDING-LEFT: 0px; FONT-SIZE: 11px; BACKGROUND: =
#f5fafe; PADDING-BOTTOM: 0px; MARGIN: 0px; BORDER-LEFT: #e0e6ec 1px =
solid; LINE-HEIGHT: 14px; PADDING-TOP: 0px; BORDER-BOTTOM: #e0e6ec 0px =
solid
}
.cnnUGCBox .cnnUGCBox .cnnBoxContent {
	BORDER-RIGHT: #edf3fb 1px solid; PADDING-RIGHT: 12px; BORDER-TOP: =
#edf3fb 0px solid; PADDING-LEFT: 12px; BACKGROUND: #fff; PADDING-BOTTOM: =
8px; OVERFLOW: hidden; BORDER-LEFT: #edf3fb 1px solid; COLOR: #666; =
PADDING-TOP: 6px; BORDER-BOTTOM: #edf3fb 0px solid
}
.cnnUGCBox .cnnUGCBox .cnnBoxContent .cnnMeta {
	FLOAT: left; OVERFLOW: hidden; WIDTH: 92px; MARGIN-RIGHT: 10px
}
.cnnUGCBox .cnnUGCBox .cnnBoxContent P {
	MARGIN: 0px 0px 0px 103px; WIDTH: 387px
}
.cnnUGCHeader {
	PADDING-RIGHT: 18px; PADDING-LEFT: 11px; PADDING-BOTTOM: 10px; =
PADDING-TOP: 10px
}
.cnnUGCBox .cnnBoxContent H3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 14px; PADDING-BOTTOM: =
0px; MARGIN: 0px; OVERFLOW: hidden; COLOR: #3d75ac; LINE-HEIGHT: 16px; =
PADDING-TOP: 0px; HEIGHT: 26px
}
.cnnUGCBox .cnnBoxContent H4 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.cnnUGCBox .cnnBoxContent H3.cnnBlogsClosed .closed {
	PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; PADDING-BOTTOM: =
0px; MARGIN: 7px 8px 0px 0px; VERTICAL-ALIGN: top; OVERFLOW: hidden; =
PADDING-TOP: 0px
}
.cnnUGCBox .cnnBoxContent H3.cnnBlogs .opened {
	PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; PADDING-BOTTOM: =
0px; MARGIN: 7px 8px 0px 0px; VERTICAL-ALIGN: top; OVERFLOW: hidden; =
PADDING-TOP: 0px
}
.cnnUGCBox .cnnBoxContent H3.cnnIReportClosed .closed {
	PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; PADDING-BOTTOM: =
0px; MARGIN: 7px 8px 0px 0px; VERTICAL-ALIGN: top; OVERFLOW: hidden; =
PADDING-TOP: 0px
}
.cnnUGCBox .cnnBoxContent H3.cnnIReport .opened {
	PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; PADDING-BOTTOM: =
0px; MARGIN: 7px 8px 0px 0px; VERTICAL-ALIGN: top; OVERFLOW: hidden; =
PADDING-TOP: 0px
}
.cnnUGCBox .cnnBoxContent H3.cnnOpinionClosed .closed {
	PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; PADDING-BOTTOM: =
0px; MARGIN: 7px 8px 0px 0px; VERTICAL-ALIGN: top; OVERFLOW: hidden; =
PADDING-TOP: 0px
}
.cnnUGCBox .cnnBoxContent H3.cnnOpinion .opened {
	PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; PADDING-BOTTOM: =
0px; MARGIN: 7px 8px 0px 0px; VERTICAL-ALIGN: top; OVERFLOW: hidden; =
PADDING-TOP: 0px
}
.cnnUGCBox .cnnBoxContent H3.cnnBlogsClosed .opened {
	DISPLAY: none
}
.cnnUGCBox .cnnBoxContent H3.cnnBlogs .closed {
	DISPLAY: none
}
.cnnUGCBox .cnnBoxContent H3.cnnIReportClosed .opened {
	DISPLAY: none
}
.cnnUGCBox .cnnBoxContent H3.cnnIReport .closed {
	DISPLAY: none
}
.cnnUGCBox .cnnBoxContent H3.cnnOpinionClosed .opened {
	DISPLAY: none
}
.cnnUGCBox .cnnBoxContent H3.cnnOpinion .closed {
	DISPLAY: none
}
.cnnUGCBox .cnnBoxContent H3 A {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; FONT-WEIGHT: =
bold; FONT-SIZE: 22px; PADDING-BOTTOM: 0px; MARGIN: 0px; OVERFLOW: =
hidden; LINE-HEIGHT: 26px; PADDING-TOP: 0px; HEIGHT: 26px
}
.cnnUGCBox .cnnBoxContent H3 A {
	COLOR: #3d75ac
}
.cnnUGCBox .cnnBoxContent H3 A:visited {
	COLOR: #3d75ac
}
.cnnUGCBox .cnnBoxContent H3 A:hover {
	COLOR: #3d75ac
}
.cnnUGCBox .cnnBoxContent H3 A SPAN {
	FONT-WEIGHT: normal; FONT-SIZE: 14px; LINE-HEIGHT: 16px
}
.cnnUGCCommentFrm {
	PADDING-RIGHT: 0px; BORDER-TOP: #e8eff7 3px solid; PADDING-LEFT: 7px; =
BACKGROUND: #f5fafe; PADDING-BOTTOM: 21px; MARGIN: 0px 17px 0px 28px; =
PADDING-TOP: 12px
}
.cnnUGCCommentFrm .cnnMeta {
	FLOAT: left
}
.cnnUGCCommentFrm H4 {
	FONT-SIZE: 22px; MARGIN: 0px 0px 12px; COLOR: #959a9f
}
.cnnUGCCommentFrm FORM TEXTAREA {
	WIDTH: 428px; HEIGHT: 99px
}
.cnnUGCCommentFrm FORM DIV {
	PADDING-TOP: 9px
}
.cnnUGCCommentFrm FORM A {
	FONT-WEIGHT: bold; FONT-SIZE: 11px
}
.cnnExtended {
	MARGIN-TOP: 0px
}
.cnnUGCBox .cnnUGCBox .cnnBoxContent .cnnExtended P {
	MARGIN-TOP: 0px
}
.cnnUGCBox .cnnUGCBox .cnnBoxContent H3 {
	MARGIN-BOTTOM: 6px
}
.cnnUGCBox .cnnUGCBox .cnnBoxContent .clear {
	MARGIN: 12px 0px
}
.cnnUGCCommentFrm FORM LABEL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; COLOR: #666; PADDING-TOP: 0px
}
.cnnUGCCommentFrm .cnnLocalCol {
	FLOAT: left; OVERFLOW: hidden; WIDTH: 203px
}
.cnnUGCCommentFrm .cnnNameCol {
	FLOAT: left; OVERFLOW: hidden; WIDTH: 203px
}
.cnnUGCCommentFrm FORM .cnnNameCol {
	MARGIN-RIGHT: 11px
}
.cnnUGCCommentFrm FORM .cnnLocalCol {
	PADDING-TOP: 0px
}
.cnnUGCCommentFrm FORM .cnnNameCol {
	PADDING-TOP: 0px
}
.cnnUGCCommentFrm FORM .cnnCommentCol {
	PADDING-TOP: 0px
}
.cnnUGCCommentFrm FORM .cnnCommentCol {
	CLEAR: both; PADDING-TOP: 6px
}
* HTML .cnnUGCCommentFrm FORM .cnnLocalCol {
	MARGIN-TOP: -6px
}
* HTML .cnnUGCCommentFrm FORM .cnnNameCol {
	MARGIN-TOP: -6px
}
* HTML .cnnUGCCommentFrm FORM .cnnCommentCol {
	MARGIN-TOP: -6px
}
* HTML .cnnUGCCommentFrm FORM .cnnCommentCol {
	MARGIN-TOP: -10px; PADDING-TOP: 0px
}
.cnnContributor {
	FONT-WEIGHT: bold; COLOR: #333
}
.cnnError {
	FONT-WEIGHT: bold; COLOR: #ca0002
}
.cnnUGCBoxHeader {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/UGC/ugc_TR_=
bg.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnUGCBoxFooter {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/UGC/ugc_BR_=
bg.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnUGCBox .cnnUGCBox .cnnUGCBoxHeader {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/UGC/b_ugc_T=
R_bg.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnUGCBox .cnnUGCBox .cnnUGCBoxFooter {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/UGC/b_ugc_B=
R_bg.gif) no-repeat 100% 0px; MARGIN: 0px; OVERFLOW: hidden; HEIGHT: 4px
}
#cnnSCFontButtons {
	MIN-HEIGHT: 15px; POSITION: relative
}
* HTML #cnnSCFontButtons {
	HEIGHT: 15px
}
#cnnSCFontPlusBtn {
	POSITION: absolute; TOP: 0px
}
#cnnSCFontMinusBtn {
	POSITION: absolute; TOP: 0px
}
#cnnSCFontLabel {
	POSITION: absolute; TOP: 0px
}
#cnnSCFontMinusBtn {
	CURSOR: pointer
}
#cnnSCFontPlusBtn {
	CURSOR: pointer
}
#cnnSCFontMinusBtn {
	RIGHT: 19px
}
#cnnSCFontPlusBtn {
	RIGHT: 0px
}
#cnnSCFontPlusBtn .cnnDecreaseFont {
	DISPLAY: none
}
#cnnSCFontMinusBtn .cnnDecreaseFont {
	DISPLAY: none
}
#cnnSCFontLabel {
	RIGHT: 38px
}
#cnnSCByLine {
	FONT-SIZE: 10px; COLOR: #666
}
.cnnMosaic160Container {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/content/ads/adtile.gif=
) #fff 0px 0px; MARGIN-BOTTOM: 9px; PADDING-BOTTOM: 9px; PADDING-TOP: =
9px; TEXT-ALIGN: center
}
.cnnWireBoxHeader {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/baseplate/c=
orner_wire_TR_bg.gif) #fff no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: =
4px
}
.cnnWireBoxFooter {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/baseplate/c=
orner_wire_BR._bg.gif) #fff no-repeat 100% 0px; OVERFLOW: hidden; =
HEIGHT: 4px
}
#cnnRightCol .cnnWireBoxHeader {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/right_rail/=
corner_adv_ltg_tr.gif) #fff no-repeat 100% 0px; OVERFLOW: hidden; =
HEIGHT: 4px
}
#cnnRightCol .cnnWireBoxFooter {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/right_rail/=
corner_adv_ltg_br.gif) #fff no-repeat 100% 0px; OVERFLOW: hidden; =
HEIGHT: 4px
}
.cnnWireBoxHeader IMG {
	DISPLAY: block
}
.cnnWireBoxFooter IMG {
	DISPLAY: block
}
.cnnWireBox .cnnBoxContent {
	BORDER-RIGHT: #e8e8e8 1px solid; BORDER-TOP: #e8e8e8 0px solid; =
BACKGROUND: #fff; BORDER-LEFT: #e8e8e8 1px solid; BORDER-BOTTOM: #e8e8e8 =
0px solid
}
#cnnRightCol .cnnWireBox .cnnBoxContent {
	BORDER-LEFT-COLOR: #d6d6d6; BORDER-BOTTOM-COLOR: #d6d6d6; =
BORDER-TOP-COLOR: #d6d6d6; BORDER-RIGHT-COLOR: #d6d6d6
}
#cnnRightCol .cnnWireBox {
	MARGIN: 6px 0px
}
.cnnRightColBox {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: #fff; =
PADDING-BOTTOM: 0px; MARGIN: 0px 0px 9px; PADDING-TOP: 0px
}
#sectionRelateds .cnnRightColBox {
	MARGIN: 9px 0px
}
#relatedBox .cnnRightColBox {
	MARGIN: 9px 0px 0px
}
.cnnRightColBox .cnnRightColBoxContent {
	PADDING-RIGHT: 9px; PADDING-LEFT: 9px; PADDING-BOTTOM: 6px; =
PADDING-TOP: 4px
}
.cnnRightColWireBox {
	MARGIN: 6px 0px 9px
}
.cnnRightColWireBoxContent {
	BORDER-RIGHT: #e4e4e4 1px solid; BORDER-TOP: #e4e4e4 0px solid; =
BORDER-LEFT: #e4e4e4 1px solid; BORDER-BOTTOM: #e4e4e4 0px solid
}
#cnnRightCol .cnnWireBoxFooter {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/right_rail/=
corner_adv_ltg_br.gif) #fff no-repeat 100% 0px; OVERFLOW: hidden; =
HEIGHT: 4px
}
#cnnRightCol .cnnWireBox .cnnBoxContent {
	FONT-SIZE: 10px; BORDER-LEFT-COLOR: #d6d6d6; BORDER-BOTTOM-COLOR: =
#d6d6d6; COLOR: #4c4c4c; BORDER-TOP-COLOR: #d6d6d6; BORDER-RIGHT-COLOR: =
#d6d6d6
}
#cnnRightCol .cnnWireBox .cnnBoxContent H4 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: =
11px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px
}
#cnnRightCol .cnnWireBox .cnnBoxContent H3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: =
11px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px
}
#cnnRightCol .cnnWireBox .cnnBoxContent H3 {
	COLOR: #000
}
#cnnRightCol .cnnWireBox .cnnBoxContent H4 {
	MARGIN-TOP: 12px
}
#cnnRightCol .cnnWireBox .cnnBoxContent P {
	MARGIN: 0px
}
.cnnImgChngr {
	BACKGROUND: #000
}
.cnnStoryPhotoBoxNavigation {
	BACKGROUND: #fff
}
.cnnStoryPhotoCaptionBox {
	BACKGROUND: #fff
}
.cnn3pxTB9pxLRPad {
	PADDING-RIGHT: 9px; PADDING-LEFT: 9px; PADDING-BOTTOM: 3px; =
PADDING-TOP: 3px
}
.cnn10pxTB12pxLRPad {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; PADDING-BOTTOM: 10px; =
PADDING-TOP: 10px
}
.cnn0pxBMargin {
	MARGIN-BOTTOM: 0px
}
.cnnMosaic160Container {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/content/ads/adtile.gif=
) #fff 0px 0px; MARGIN-BOTTOM: 9px; PADDING-BOTTOM: 9px; PADDING-TOP: =
9px; TEXT-ALIGN: center
}
.cnnMosaic160Ad {
	BACKGROUND: #f2f2f2; MARGIN: 0px 9px; WIDTH: 318px
}
#cnnRightCol .cnnMosaic160Ad .cnnTR {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 9px; =
PADDING-TOP: 9px
}
#cnnArticleMosaic #cnnTxtCmpnt {
	DISPLAY: block
}
#cnnArticleMosaic .cnnRRad {
	DISPLAY: none
}
.cnnMosaic160Container .cnnRRBoxHeader IMG {
	FLOAT: left
}
.cnnMosaic160Container .cnnRRBoxFooter IMG {
	FLOAT: left
}
.cnnPartnerBanner {
	MARGIN: 3px 0px 15px
}
.cnnTopNewsModule {
	MARGIN: 15px 0px
}
.cnnTopNewsModule .cnnWireBox .cnnBoxContent {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 15px; =
PADDING-TOP: 12px
}
.cnnTopNewsModule .cnnWireBox .cnnBoxContent H3 {
	FONT-WEIGHT: bold; FONT-SIZE: 22px; PADDING-BOTTOM: 15px; MARGIN: 0px =
9px; COLOR: #ca0002; LINE-HEIGHT: 22px; BORDER-BOTTOM: #e8e8e8 1px solid
}
.cnnTopNewsModule .cnnWireBox .cnnBoxContent TABLE {
	WIDTH: 565px
}
.cnnTopNewsModule .cnnWireBox .cnnBoxContent TABLE TD {
	PADDING-RIGHT: 0px; PADDING-LEFT: 9px; FONT-WEIGHT: bold; FONT-SIZE: =
14px; PADDING-BOTTOM: 0px; VERTICAL-ALIGN: top; LINE-HEIGHT: 16px; =
PADDING-TOP: 6px
}
.cnnTopNewsModule .cnnWireBox .cnnBoxContent TABLE TD IMG {
	MARGIN-TOP: 3px
}
#cnnBlogContainer H3 {
	VERTICAL-ALIGN: middle; HEIGHT: 30px
}
#cnnBlogContainer H3 IMG {
	DISPLAY: inline; VERTICAL-ALIGN: -10px
}
#cnnPhotoPlayer {
	MARGIN: 0px
}
#cnnPhotos {
	MARGIN-BOTTOM: 0px
}
#cnnPhotoTabs {
	BORDER-LEFT: #e6e6e6 1px solid; BORDER-BOTTOM: #e6e6e6 1px solid
}
#cnnPhotoTabs TABLE#cnnPT {
	WIDTH: 100%
}
#cnnPhotoTabs TABLE#cnnPT TD {
	BORDER-RIGHT: #e6e6e6 1px solid
}
#cnnPhotoTabs TABLE#cnnPT TD A {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; FONT-WEIGHT: =
bold; FONT-SIZE: 10px; PADDING-BOTTOM: 6px; OVERFLOW: hidden; CURSOR: =
pointer; PADDING-TOP: 6px; TEXT-ALIGN: center
}
#cnnPhotoTabs TABLE#cnnPT TD.cnnPTCurrent A {
	BACKGROUND: #f2f2f2; OVERFLOW: hidden; CURSOR: default; COLOR: #949494
}
#cnnPhotoPicker .cnnPPContent {
	BORDER-RIGHT: #e6e6e6 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: =
#e6e6e6 0px solid; PADDING-LEFT: 18px; BACKGROUND: #ebebeb; =
PADDING-BOTTOM: 0px; BORDER-LEFT: #e6e6e6 1px solid; PADDING-TOP: 8px; =
BORDER-BOTTOM: #e6e6e6 1px solid
}
#cnnPhotoPicker .cnnGalTz {
	FLOAT: left; MARGIN: 4px 18px 12px 0px; WIDTH: 170px
}
#cnnPhotoPicker .cnnGalTz .cnnGalTzImg {
	FLOAT: left; MARGIN-RIGHT: 9px; POSITION: relative
}
#cnnPhotoPicker .cnnGalTz .cnnGalTzTxt A {
	FONT-WEIGHT: bold
}
#cnnPhotoPicker .cnnGalTz .cnnGalTzImg A {
	DISPLAY: block; BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/util/tz.bg.gif) =
no-repeat 0px 0px; WIDTH: 62px; HEIGHT: 46px
}
#cnnPhotoPicker .cnnGalTz#cnnCurGal .cnnGalTzImg A {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/util/tz.bg.hover.gif) =
no-repeat 0px 0px
}
#cnnPhotoPicker .cnnGalTz .cnnGalTzImg A IMG {
	LEFT: 6px; POSITION: absolute; TOP: 8px
}
#cnnPhotoPicker .cnnGalTz .cnnGalTzTxt {
	FONT-SIZE: 10px; COLOR: #949494; LINE-HEIGHT: 12px
}
#cnnPhotoPicker .cnnGalTz#cnnCurGal .cnnGalTzTxt A {
	COLOR: #949494
}
#cnnPPSect2 {
	DISPLAY: none
}
#cnnPPSect3 {
	DISPLAY: none
}
#cnnPPSect4 {
	DISPLAY: none
}
#cnnPPSect5 {
	DISPLAY: none
}
TABLE.cnnRRTable {
	WIDTH: 100%
}
TABLE.cnnRRTable TD {
	PADDING-RIGHT: 9px; BORDER-TOP: #e4e4e4 1px solid; PADDING-LEFT: 12px; =
FONT-WEIGHT: bold; FONT-SIZE: 12px; PADDING-BOTTOM: 9px; VERTICAL-ALIGN: =
top; LINE-HEIGHT: 15px; PADDING-TOP: 9px
}
TABLE.cnnRRTable .cnnRRImgCol {
	PADDING-RIGHT: 9px; PADDING-LEFT: 9px; PADDING-BOTTOM: 6px; =
PADDING-TOP: 6px; TEXT-ALIGN: right
}
P.cnnRRRFY {
	FONT-WEIGHT: bold; FONT-SIZE: 10px; MARGIN: 6px 0px 7px 11px; =
LINE-HEIGHT: 12px
}
#cnnMostPopMosaic {
	MARGIN-TOP: 9px
}
#cnnMostPopMosaic #cnnMostPopMod .cnnWireBox {
	MARGIN: 0px
}
#cnnRightCol #cnnMostPopMosaic .cnnWireBox .cnnBoxContent {
	BORDER-RIGHT: #e6e6e6 1px solid; BORDER-LEFT: #e6e6e6 1px solid; =
BACKGROUND-COLOR: #fff
}
#cnnRightCol #cnnMostPopMosaic .cnnWireBox .cnnWireBoxHeader {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/baseplate/c=
orner_wire_TR_bg.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
#cnnRightCol #cnnMostPopMosaic .cnnWireBox .cnnWireBoxFooter {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/base_skins/baseplate/c=
orner_wire_BR._bg.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnBanner {
	MARGIN-BOTTOM: 10px
}
A.cnnInlineTopic {
	TEXT-DECORATION: underline
}
#mosVidContainer {
	MARGIN-BOTTOM: 0px; WIDTH: 576px
}
#mosVidDesc {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-SIZE: 11px; =
PADDING-BOTTOM: 9px; LINE-HEIGHT: 14px; PADDING-TOP: 7px
}
#mosVidPlayList {
	BORDER-TOP: #e9e9e9 1px solid; BORDER-BOTTOM: #e9e9e9 1px solid; =
BACKGROUND-COLOR: #ebebeb
}
#mosVidMore {
	PADDING-RIGHT: 10px; BORDER-TOP: #e9e9e9 1px solid; PADDING-LEFT: 0px; =
FONT-SIZE: 11px; PADDING-BOTTOM: 6px; LINE-HEIGHT: 14px; PADDING-TOP: =
6px; TEXT-ALIGN: right
}
.mos_video_box {
	DISPLAY: inline; FLOAT: left; MARGIN: 9px 10px; FONT: 10px/12px =
Helvetica, arial, sans-serif; OVERFLOW: hidden; WIDTH: 165px; COLOR: =
#9b9b9b; HEIGHT: 45px
}
.mos_video_box_active {
	DISPLAY: inline; FLOAT: left; MARGIN: 9px 10px; FONT: 10px/12px =
Helvetica, arial, sans-serif; OVERFLOW: hidden; WIDTH: 165px; COLOR: =
#9b9b9b; HEIGHT: 45px
}
.mos_video_box .mos_tz_image {
	FLOAT: left; BACKGROUND-IMAGE: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/util/video_background.=
gif); MARGIN: 0px 7px 0px 0px; WIDTH: 58px; HEIGHT: 42px
}
.mos_video_box_active .mos_tz_image {
	FLOAT: left; BACKGROUND-IMAGE: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/util/video_background.=
gif); MARGIN: 0px 7px 0px 0px; WIDTH: 58px; HEIGHT: 42px
}
.mos_video_box .mos_tz_image IMG {
	MARGIN: 6px 0px 0px 6px
}
.mos_video_box_active .mos_tz_image IMG {
	MARGIN: 6px 0px 0px 6px
}
.mos_video_box_active .mos_tz_image {
	BACKGROUND-IMAGE: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/util/video_background_=
active.gif)
}
.mos_video_box_active A {
	COLOR: #9b9b9b
}
.mos_video_box_active A:link {
	COLOR: #9b9b9b
}
.mos_video_box_active A:active {
	COLOR: #9b9b9b
}
.mos_video_box_active A:visited {
	COLOR: #9b9b9b
}
.cnnNoFlashContainer {
	BACKGROUND: #f4f4f4; WIDTH: 585px; POSITION: relative; HEIGHT: 426px
}
.cnnNoFlash {
	FONT-SIZE: 11px; BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/global/noflash/flash_logo.gif=
) #f4f4f4 no-repeat 102px 16px; LEFT: 160px; WIDTH: 265px; COLOR: =
#838383; FONT-FAMILY: arial, sans-serif; POSITION: absolute; TOP: 113px; =
HEIGHT: 200px
}
.cnnNoFlash P {
	MARGIN: 15px 33px 12px; TEXT-ALIGN: center
}
.cnnNoFlash P.cnnTopGraf {
	MARGIN: 0px 33px 15px; PADDING-TOP: 85px
}
.cnnNoFlash .cnnGetBtn {
	MARGIN: 0px 54px
}
.cnnStoryElementBoxAd {
	DISPLAY: none
}
#cnnTxtCmpnt .cnnStoryElementBoxAd {
	DISPLAY: block
}
#otherTab1AdContainer .cnnStoryElementBoxAd {
	DISPLAY: block
}
#otherTab2AdContainer .cnnStoryElementBoxAd {
	DISPLAY: block
}
#cnnPhotoCmpntAdContainer .cnnStoryElementBoxAd {
	DISPLAY: block
}
#cnnVideoCmpntAdContainer .cnnStoryElementBoxAd {
	DISPLAY: block
}
.cnnPartnerI {
	FONT-STYLE: italic
}
.cnnPartnerI A {
	TEXT-TRANSFORM: uppercase; FONT-STYLE: normal
}
.cnnPartnerB {
	FONT-WEIGHT: bold; TEXT-TRANSFORM: uppercase
}
.cnnStoryElementBoxAd {
	BORDER-TOP: #e8e8e8 2px solid; MARGIN: 0px auto; TEXT-ALIGN: center
}
.cnnStoryElementBoxAdHead {
	MARGIN: 2px 0px 18px; TEXT-ALIGN: left
}
.cnnFactBox {
	WIDTH: 180px
}
.cnnFactBox TABLE {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: =
0px; WIDTH: 100%; BORDER-RIGHT-WIDTH: 0px
}
.cnnFactBox TABLE TD {
	FONT-SIZE: 11px; VERTICAL-ALIGN: top; COLOR: #949494; LINE-HEIGHT: 16px
}
.cnnFactBox TABLE TD.cnnFbDots {
	BACKGROUND: =
url(http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/util/dot.gif) #fff =
repeat-x 0px 3px; WIDTH: 90%
}
.cnnFactBox TABLE TD.cnnFbLiRc {
	PADDING-RIGHT: 0px; PADDING-LEFT: 4px; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 0px; PADDING-TOP: 0px; WHITE-SPACE: nowrap
}
.cnnFactBox TABLE TD.cnnFbLiTitle {
	PADDING-RIGHT: 4px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; COLOR: =
#666; PADDING-TOP: 0px; WHITE-SPACE: nowrap
}
.cnnFactBox TABLE.cnnFBDesc TD {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 12px; =
PADDING-TOP: 4px
}

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
Content-Location: http://i.cdn.turner.com/cnn/.element/css/2.0/mosaic-alt.css

#cnnTxtCmpnt P {
	FONT-SIZE: 14px; LINE-HEIGHT: 19px
}
#cnnTxtCmpnt .cnnStoryElementBox H4 {
	FONT-SIZE: 16px; LINE-HEIGHT: 21px
}
#cnnTxtCmpnt .cnnHtPromoHead {
	FONT-SIZE: 16px; LINE-HEIGHT: 21px
}
#cnnTxtCmpnt .cnnHtPromoTxt {
	FONT-SIZE: 12px; LINE-HEIGHT: 16px
}
#cnnTxtCmpnt #cnnSCByLine {
	FONT-SIZE: 12px; LINE-HEIGHT: 16px
}
#cnnTxtCmpnt .cnnStoryPhotoBoxNavigation A {
	FONT-SIZE: 12px; LINE-HEIGHT: 16px
}
#cnnTxtCmpnt P.cnnAttribution {
	FONT-SIZE: 12px; LINE-HEIGHT: 16px
}
#cnnTxtCmpnt .cnnStoryElementBox .cnnTVPromoBoxFooter A {
	FONT-SIZE: 12px; LINE-HEIGHT: 16px
}
#cnnTxtCmpnt .cnnStoryElementBox {
	FONT-SIZE: 12px; LINE-HEIGHT: 16px
}
#cnnTxtCmpnt .cnnTVPromoBox P {
	FONT-SIZE: 12px; LINE-HEIGHT: 16px
}
#cnnTxtCmpnt .cnnStoryPhotoCaptionBox P {
	FONT-SIZE: 12px; LINE-HEIGHT: 16px
}
#cnnSCFontPlusBtn {
	CURSOR: default
}
#cnnSCFontMinusBtn {
	CURSOR: pointer
}
#cnnSCFontPlusBtn .cnnIncreaseFont {
	DISPLAY: none
}
#cnnSCFontMinusBtn .cnnIncreaseFont {
	DISPLAY: none
}
#cnnSCFontPlusBtn .cnnDecreaseFont {
	DISPLAY: block
}
#cnnSCFontMinusBtn .cnnDecreaseFont {
	DISPLAY: block
}

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.l.cnn.net/cnn/.element/js/2.0/ad_head0.js

function CNN_getCookies() {=0A=
	var hash =3D new Array;=0A=
	if ( document.cookie ) {=0A=
		var cookies =3D document.cookie.split( '; ' );=0A=
		for ( var i =3D 0; i < cookies.length; i++ ) {=0A=
			var namevaluePairs =3D cookies[i].split( '=3D' );=0A=
			hash[namevaluePairs[0]] =3D unescape( namevaluePairs[1] ) || null;=0A=
		}=0A=
	}=0A=
	return hash;=0A=
}=0A=
=0A=
function CNN_parseCookieData( cookieDataString ) {=0A=
	var cookieValues =3D new Object();=0A=
	var separatePairs =3D cookieDataString.split( '&' );=0A=
	for ( var i =3D 0; i < separatePairs.length; i++  ) {=0A=
		var separateValues =3D separatePairs[i].split( ':' );=0A=
		cookieValues[separateValues[0]] =3D separateValues[1] || null;=0A=
	}=0A=
	return cookieValues;=0A=
}=0A=
=0A=
// default values=0A=
var adHeadOffset =3D 0;=0A=
var adHeadClass =3D "us.low";=0A=
=0A=
var allCookies =3D CNN_getCookies();=0A=
var adHeadCookie =3D allCookies[ "Target" ] || null;=0A=
var isClassAndOffsetValid =3D false;=0A=
var alreadySwappedTargetImage =3D false;=0A=
var alreadySwappedCookieCrumb =3D false;=0A=
=0A=
if ( adHeadCookie ) {	// got milk?=0A=
	var adHeadHash =3D CNN_parseCookieData( adHeadCookie );=0A=
	//alert("o=3D" +  adHeadHash[ "o" ] + "\nclass=3D" + adHeadHash[ =
"class"]);=0A=
	if ( adHeadHash[ "o" ] && adHeadHash[ "class" ] ) {=0A=
		var validClassesAndOffsets =3D [ 'us.low', 0, 'us.high', 1, 'intl', 2, =
'intl', 3, 'us.edu', 0, 'us.gov', 0, 'us.mil', 0, 'us.org', 0 ];=0A=
		for ( var i =3D 0; i < validClassesAndOffsets.length; i+=3D2 ) {=0A=
			if ( validClassesAndOffsets[i] =3D=3D adHeadHash[ "class" ] && =
validClassesAndOffsets[i+1] =3D=3D adHeadHash[ "o" ] ) {=0A=
				isClassAndOffsetValid =3D true;=0A=
				break;=0A=
			}=0A=
		}=0A=
	}=0A=
	if ( isClassAndOffsetValid ) {=0A=
		adHeadOffset =3D adHeadHash[ "o" ];=0A=
		adHeadClass =3D adHeadHash[ "class" ];=0A=
	}=0A=
}=0A=
=0A=
document.adoffset =3D adHeadOffset;=0A=
=0A=
//alert( "GLOBAL\nalreadySwappedTargetImage=3D" + =
alreadySwappedTargetImage + "\nisClassAndOffsetValid=3D" + =
isClassAndOffsetValid );=0A=
=0A=
function getAdHeadCookie( imageRef ) {=0A=
	//alert( "isClassAndOffsetValid=3D" + isClassAndOffsetValid + =
"\nadHeadOffset=3D" + adHeadOffset + "\nadHeadClass=3D" + adHeadClass);=0A=
	var newSrc =3D "http://cnn.dyn.cnn.com/1.gif?" + new Date().getTime();=0A=
	if ( !alreadySwappedTargetImage && !isClassAndOffsetValid && (typeof =
WM_browserAcceptsCookies !=3D "undefined") && WM_browserAcceptsCookies() =
) {=0A=
		//alert( "getAdHeadCookie\nalreadySwappedTargetImage=3D" + =
alreadySwappedTargetImage + "\nisClassAndOffsetValid=3D" + =
isClassAndOffsetValid );=0A=
		imageRef.src =3D newSrc;=0A=
		alreadySwappedTargetImage =3D true;=0A=
	}=0A=
}=0A=
=0A=
var alreadySwappedDETargetImage =3D false;=0A=
var cnnDEadDEonCookie =3D false;=0A=
var cnnU_Country =3D '';=0A=
var cnnAdDE_UVal =3D 'R00';=0A=
=0A=
function WM_readCookie( name ) {=0A=
	if ( document.cookie =3D=3D '' ) { // there's no cookie, so go no =
further=0A=
	    return false;=0A=
	} else { // there is a cookie=0A=
	    var firstChar, lastChar;=0A=
		var theBigCookie =3D document.cookie;=0A=
		firstChar =3D theBigCookie.indexOf(name);	// find the start of 'name'=0A=
		var NN2Hack =3D firstChar + name.length;=0A=
		if ( (firstChar !=3D -1) && (theBigCookie.charAt(NN2Hack) =3D=3D =
'=3D') ) { // if you found the cookie=0A=
			firstChar +=3D name.length + 1; // skip 'name' and '=3D'=0A=
			lastChar =3D theBigCookie.indexOf(';', firstChar); // Find the end of =
the value string (i.e. the next ';').=0A=
			if (lastChar =3D=3D -1) lastChar =3D theBigCookie.length;=0A=
			return unescape( theBigCookie.substring(firstChar, lastChar) );=0A=
		} else { // If there was no cookie of that name, return false.=0A=
			return false;=0A=
		}=0A=
	}	=0A=
} // WM_readCookie=0A=
=0A=
function getDEAdHeadCookie( imageRef ) {=0A=
	//if (typeof(WM_readCookie) !=3D "undefined") {=0A=
		cnnDEadDEonCookie =3D allCookies['adDEon'];=0A=
	//}=0A=
	var newSrc =3D "http://gdyn.cnn.com/1.1/1.gif?" + new Date().getTime();=0A=
	if ( !alreadySwappedDETargetImage && !cnnDEadDEonCookie) {=0A=
		imageRef.src =3D newSrc;=0A=
		alreadySwappedDETargetImage =3D true;=0A=
	}=0A=
	else if((alreadySwappedDETargetImage || WM_readCookie('adDEmas')) && =
!cnnUserEd_Pref) {=0A=
=0A=
		if(WM_readCookie('adDEmas')) { cnnU_Country =3D =
WM_readCookie('adDEmas').split('&')[0]; }=0A=
=0A=
		if(cnnU_Country && (cnnU_Country !=3D cnnAdDE_UVal) && (cnnU_Country =
!=3D '-')) {=0A=
			CNN_setCookie('SelectedEdition', 'edition', 854400, '/', '.cnn.com');=0A=
			if(cnnOn_Dom_Flag) { =
document.getElementById('cnnsetPref_Form').edition[1].checked =3D true; }=0A=
			else { document.getElementById('cnnsetPref_Form').edition[0].checked =
=3D true; }=0A=
		}=0A=
		else {=0A=
			CNN_setCookie('SelectedEdition', 'www', 854400, '/', '.cnn.com');=0A=
			if(cnnOn_Dom_Flag) { =
document.getElementById('cnnsetPref_Form').edition[0].checked =3D true; }=0A=
			else { document.getElementById('cnnsetPref_Form').edition[1].checked =
=3D true; }=0A=
		}=0A=
		=0A=
	}=0A=
=0A=
}=0A=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.l.cnn.net/cnn/cnn_adspaces/cnn_adspaces.js

var cnnad_tileID =3D cnnad_getID();=0A=
var cnnad_enabled =3D true;=0A=
var cnnad_adIframes =3D new Array();=0A=
var cnnad_adVault =3D new Array();=0A=
var cnnad_adCache =3D new Array();=0A=
=0A=
// flag for geo targetting image=0A=
var alreadySwappedDETargetImage =3D false;=0A=
var cnnDEadDEonCookie =3D false;=0A=
=0A=
// document domain security issues=0A=
var cnnDocDomain =3D cnnad_getTld(location.hostname);=0A=
if(cnnDocDomain) {document.domain =3D cnnDocDomain;}=0A=
=0A=
function cnnad_reverseString (input)=0A=
{=0A=
	// convert everything to a string=0A=
	input =3D "" + input;=0A=
	var output =3D '';=0A=
=0A=
	if (input.length)=0A=
	{=0A=
		var i;=0A=
		for (i =3D input.length; i > 0; i--)=0A=
		{=0A=
			output +=3D input.charAt(i-1);=0A=
		}=0A=
	}=0A=
	return(output);=0A=
}=0A=
=0A=
function cnnad_getID() {=0A=
	return (cnnad_reverseString(new Date().getTime()));=0A=
}=0A=
=0A=
function cnnad_renderAd(cnnad_url) {=0A=
	if(cnnad_enabled =3D=3D true) {=0A=
		document.write("<script type=3D\"text/javascript\"");=0A=
		document.write(" =
src=3D\""+cnnad_url+"&tile=3D"+cnnad_tileID+"\"></scr");=0A=
		document.write("ipt>");=0A=
	}=0A=
}=0A=
=0A=
function cnnad_preview(cnnad_adstring) {=0A=
	if ( location.host.indexOf("turner.com") > -1) {=0A=
		// we are on preview (or on local subnet, so we have to use internal =
names)=0A=
		cnnad_adstring =3D cnnad_adstring.replace(new =
RegExp("ads\..*?\.com","gi"),"ads.turner.com");=0A=
	}=0A=
	return cnnad_adstring;=0A=
}=0A=
=0A=
function cnnad_createIframe (id, url)=0A=
{=0A=
	var iframe =3D document.createElement('iframe');=0A=
	iframe.id =3D id;=0A=
	iframe.name =3D id;=0A=
	iframe.width =3D 0;=0A=
	iframe.height =3D 0;=0A=
	iframe.style.visibility =3D 'hidden';=0A=
	iframe.style.position =3D 'absolute';=0A=
	iframe.marginWidth =3D 0;=0A=
	iframe.marginHeight =3D 0;=0A=
	iframe.frameBorder =3D 0;=0A=
	iframe.scrolling =3D "no";=0A=
	iframe.allowTransparency =3D 'true';=0A=
	iframe.src =3D url;=0A=
=0A=
	return iframe;=0A=
}=0A=
=0A=
function =
cnnad_createAdNoTileId(adId,cnnad_url,cnnad_height,cnnad_width,target) {=0A=
	var d =3D document.getElementById('ad-' + adId);=0A=
	cnnad_url =3D cnnad_preview(cnnad_url);=0A=
=0A=
	if (d)=0A=
	{=0A=
		cnnad_url +=3D '&domId=3D' + adId;=0A=
		if (! document.getElementById(adId))=0A=
		{=0A=
			d.appendChild(cnnad_createIframe(adId, cnnad_url));=0A=
		}=0A=
	}=0A=
	else=0A=
	{=0A=
		if (!target) {=0A=
			document.write('<iframe ALLOWTRANSPARENCY=3D"true" hspace=3D"0" =
vspace=3D"0" marginHeight=3D"0" marginWidth=3D"0" src=3D"' + cnnad_url + =
'&page.allowcompete=3Dyes&domId=3D' + adId + '" border=3D"0" =
frameBorder=3D"0" height=3D"0" width=3D"0" scrolling=3D"no"  =
id=3D"'+adId+'" style=3D"position: absolute; visibility: hidden;" =
></iframe>');=0A=
		} else {=0A=
			document.getElementById(target).innerHTML =3D '<iframe =
ALLOWTRANSPARENCY=3D"true" hspace=3D"0" vspace=3D"0" marginHeight=3D"0" =
marginWidth=3D"0" src=3D"' + cnnad_url + =
'&page.allowcompete=3Dyes&domId=3D' + adId + '" border=3D"0" =
frameBorder=3D"0" height=3D"0" width=3D"0" scrolling=3D"no"  =
id=3D"'+adId+'" style=3D"position: absolute; visibility: hidden;" =
></iframe>';=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
function cnnad_createAd(adId,cnnad_url,cnnad_height,cnnad_width,target) {=0A=
	var d =3D document.getElementById('ad-' + adId);=0A=
	cnnad_url =3D cnnad_preview(cnnad_url);=0A=
=0A=
	if (d)=0A=
	{=0A=
		cnnad_url +=3D '&tile=3D' + cnnad_tileID + '&domId=3D' + adId;=0A=
		if (! document.getElementById(adId))=0A=
		{=0A=
			d.appendChild(cnnad_createIframe(adId, cnnad_url));=0A=
		}=0A=
	}=0A=
	else=0A=
	{=0A=
		if (!target) {=0A=
			document.write('<iframe ALLOWTRANSPARENCY=3D"true" hspace=3D"0" =
vspace=3D"0" marginHeight=3D"0" marginWidth=3D"0" src=3D"' + cnnad_url + =
'&tile=3D' + cnnad_tileID + '&page.allowcompete=3Dyes&domId=3D' + adId + =
'" border=3D"0" frameBorder=3D"0" height=3D"0" width=3D"0" =
scrolling=3D"no"  id=3D"'+adId+'" style=3D"position: absolute; =
visibility: hidden;" ></iframe>');=0A=
		} else {=0A=
			document.getElementById(target).innerHTML =3D '<iframe =
ALLOWTRANSPARENCY=3D"true" hspace=3D"0" vspace=3D"0" marginHeight=3D"0" =
marginWidth=3D"0" src=3D"' + cnnad_url + '&tile=3D' + cnnad_tileID + =
'&page.allowcompete=3Dyes&domId=3D' + adId + '" border=3D"0" =
frameBorder=3D"0" height=3D"0" width=3D"0" scrolling=3D"no"  =
id=3D"'+adId+'" style=3D"position: absolute; visibility: hidden;" =
></iframe>';=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
function cnnad_writeAd(cnnad_callid,cnnad_url) {=0A=
        if(cnnad_enabled =3D=3D true) {=0A=
                document.write("<script id=3D\"" + cnnad_callid + "\" =
type=3D\"text/javascript\" onload=3D\"cnnSendData();\"");=0A=
                document.write(" =
src=3D\""+cnnad_url+"&tile=3D"+cnnad_tileID+"\"></scr");=0A=
                document.write("ipt>");=0A=
        }=0A=
}=0A=
=0A=
function cnnad_showAd(cnnad_id) {=0A=
	if (document.getElementById(cnnad_id))=0A=
	{=0A=
		document.getElementById(cnnad_id).style.position =3D 'relative';=0A=
		document.getElementById(cnnad_id).style.visibility =3D 'visible';=0A=
	}=0A=
	else =0A=
	{=0A=
		// alert("Error displaying ad component: " + cnnad_id);	=0A=
		// just do not display the ad. -sg=0A=
	}=0A=
}=0A=
=0A=
function cnnad_setAdSize(docId,height,width) {=0A=
	var i =3D document.getElementById(docId);=0A=
=0A=
        if (i)=0A=
	{=0A=
                i.height =3D height;=0A=
                i.width =3D width;=0A=
        }=0A=
	else =0A=
	{=0A=
		// alert("Error displaying ad component: " + cnnad_id);	=0A=
		// just do not display the ad. -sg=0A=
	}=0A=
}=0A=
=0A=
function cnnad_readCookie( name ) {=0A=
        if ( document.cookie =3D=3D '' ) { // there is no cookie, so go =
no further=0A=
            return false;=0A=
        } else { // there is a cookie=0A=
            var firstChar, lastChar;=0A=
                var theBigCookie =3D document.cookie;=0A=
                firstChar =3D theBigCookie.indexOf(name); // find the =
start of 'name'=0A=
                var NN2Hack =3D firstChar + name.length;=0A=
                if ( (firstChar !=3D -1) && =
(theBigCookie.charAt(NN2Hack) =3D=3D '=3D') ) { // if you found the =
cookie=0A=
                        firstChar +=3D name.length + 1; // skip 'name' =
and '=3D'=0A=
                        lastChar =3D theBigCookie.indexOf(';', =
firstChar); // Find the end of the value string (i.e. the next ';').=0A=
                        if (lastChar =3D=3D -1) lastChar =3D =
theBigCookie.length;=0A=
                        return unescape( =
theBigCookie.substring(firstChar, lastChar) );=0A=
                } else { // If there was no cookie of that name, return =
false.=0A=
                        return false;=0A=
                }=0A=
        }=0A=
}=0A=
=0A=
function cnnad_getTld (hostname)=0A=
{=0A=
	var data =3D hostname.split(".");=0A=
	if (data.length >=3D 2)=0A=
	{=0A=
		return (data[data.length-2] + "." + data[data.length-1]);=0A=
	}=0A=
	return(null);=0A=
}=0A=
=0A=
function cnnad_refreshAds (type)=0A=
{=0A=
    if (! cnnad_adIframes)=0A=
    {=0A=
        return;=0A=
    }=0A=
=0A=
	var debug =3D document.getElementById("debugUrl");=0A=
=0A=
	if (debug)=0A=
	{=0A=
		debug.innerHTML =3D "";=0A=
	}=0A=
=0A=
    for (var i =3D 0; i < cnnad_adIframes.length; i++)=0A=
    {=0A=
		var targetAd =3D cnnad_adIframes[i];=0A=
		var newAdLoc =3D =
cnnad_findAd(type,targetAd.getWidth(),targetAd.getHeight());=0A=
		cnnad_swapAd(targetAd.getId(), newAdLoc, debug);=0A=
    }=0A=
}=0A=
=0A=
function cnnad_swapAd (id, newAdLoc, debug)=0A=
{=0A=
=0A=
	var elem =3D document.getElementById(id);=0A=
	if (elem)=0A=
	{=0A=
		elem.width =3D 0;=0A=
		elem.height =3D 0;=0A=
		elem.style.position =3D 'absolute';=0A=
		elem.style.visibility =3D 'hidden';=0A=
=0A=
		// if we find our ad in the cache, then use it=0A=
		if (cnnad_adCache[newAdLoc])=0A=
		{=0A=
			//alert("found ad via cache: " + cnnad_adCache[newAdLoc]);=0A=
			//elem.src =3D cnnad_adCache[newAdLoc];=0A=
=0A=
		for (var j =3D 0; j < window.frames.length; j++) {=0A=
			try {=0A=
					if (window.frames[j].location.href.indexOf('domId=3D'+id) > -1) {=0A=
						window.frames[j].location.replace(cnnad_adCache[newAdLoc]);=0A=
					}=0A=
 		} catch(e) {}=0A=
		}		=0A=
=0A=
			return;=0A=
		}=0A=
=0A=
		// if not in cache, we fetch it using an Ajax call=0A=
		// first we try Prototype=0A=
		if ((typeof Ajax !=3D 'undefined') && (typeof Ajax.Request !=3D =
'undefined'))=0A=
		{=0A=
			var temp =3D new Ajax.Request(=0A=
								newAdLoc,=0A=
								{=0A=
									method:'get',=0A=
									onSuccess: function (req) {=0A=
										var newLoc =3D cnnad_parseResponse(req.responseText,id);=0A=
										newLoc =3D cnnad_preview(newLoc);=0A=
										if (newLoc)=0A=
										{=0A=
											if (debug) { debug.innerHTML +=3D "<br>Updated " + elem.id + =
" with " + newLoc; }=0A=
											cnnad_adCache[newAdLoc] =3D newLoc;=0A=
											//elem.src =3D newLoc;=0A=
		for (var j =3D 0; j < window.frames.length; j++) {=0A=
			try {=0A=
					if (window.frames[j].location.href.indexOf('domId=3D'+id) > -1) {=0A=
						window.frames[j].location.replace(newLoc);=0A=
					}=0A=
 		} catch(e) {}=0A=
		}		=0A=
=0A=
			return;=0A=
										}=0A=
									}=0A=
								});=0A=
		}=0A=
		// next try Dojo=0A=
		else if (typeof dojo !=3D 'undefined')=0A=
		{=0A=
			if (typeof dojo.io =3D=3D 'undefined')=0A=
			{=0A=
				dojo.require("dojo.io.*");=0A=
			}=0A=
=0A=
			dojo.io.bind({=0A=
				url: newAdLoc,=0A=
				load: function (type, data, evt) {=0A=
							var newLoc =3D cnnad_parseResponse(data,id);=0A=
							newLoc =3D cnnad_preview(newLoc);=0A=
							if (newLoc)=0A=
							{=0A=
								if (debug) { debug.innerHTML +=3D "<br>Updated " + elem.id + " =
with " + newLoc; }=0A=
								cnnad_adCache[newAdLoc] =3D newLoc;=0A=
								elem.src =3D newLoc;=0A=
							}=0A=
					}=0A=
			});=0A=
=0A=
		}=0A=
		// neither worked, we just give up and not do anything=0A=
		else=0A=
		{=0A=
			// do nothing =0A=
			// alert("No way to fetch " + newAdLoc);=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
function cnnad_parseResponse (resp, id)=0A=
{=0A=
	// chop off everything before callout marker=0A=
	var startMarker =3D "<!-- CALLOUT|";=0A=
	var endMarker =3D "|CALLOUT -->";=0A=
	var start =3D resp.indexOf(startMarker);=0A=
	var end =3D resp.indexOf(endMarker);=0A=
	var loc =3D null;=0A=
	=0A=
	if (start >=3D 0 && end > start)=0A=
	{=0A=
		loc =3D resp.substring(start + startMarker.length ,end);=0A=
	}=0A=
=0A=
	if (loc)=0A=
	{=0A=
		return(loc + "&domId=3D" + id + "&page.allowcompete=3Dyes");=0A=
	}=0A=
	else=0A=
	{=0A=
		//alert("Parsing failed!");=0A=
		return null;=0A=
	}=0A=
}=0A=
=0A=
function cnnad_findAd (type, width, height)=0A=
{=0A=
	var ret =3D null;=0A=
	for (var i =3D 0; i < cnnad_adVault.length; i++)=0A=
	{=0A=
		var ad =3D cnnad_adVault[i];=0A=
		if (ad.getType() =3D=3D type && ad.getHeight() =3D=3D height && =
ad.getWidth() =3D=3D width)=0A=
		{=0A=
			ret =3D ad.getUrl();=0A=
			break;=0A=
		}=0A=
	}=0A=
	return ret;=0A=
}=0A=
=0A=
function cnnad_getDEAdHeadCookie( imageRef ) {=0A=
	if (typeof(cnnad_readCookie) !=3D "undefined") {=0A=
		cnnDEadDEonCookie =3D cnnad_readCookie( 'adDEon' );=0A=
	}=0A=
	var newSrc =3D "http://gdyn." + cnnad_getTld(location.hostname) + =
"/1.1/1.gif?" + new Date().getTime();=0A=
	if ( !alreadySwappedDETargetImage && !cnnDEadDEonCookie) {=0A=
		imageRef.src =3D newSrc;=0A=
		alreadySwappedDETargetImage =3D true;=0A=
	}=0A=
}=0A=
=0A=
function cnnad_registerAd (type, width, height, url)=0A=
{=0A=
	var ad =3D new cnnad_AdObject (null, width, height, type, url);=0A=
	cnnad_adVault[cnnad_adVault.length] =3D ad;=0A=
}=0A=
=0A=
function cnnad_registerSpace (id, width, height)=0A=
{=0A=
	var ad =3D new cnnad_AdObject(id, width, height, null, null);=0A=
	cnnad_adIframes[cnnad_adIframes.length] =3D ad;=0A=
}=0A=
=0A=
=0A=
// ----- THE CNN ADS OBJECT ----- //=0A=
function cnnad_AdObject (id,width,height,type,url)=0A=
{=0A=
	this.id =3D id;=0A=
	this.width =3D width;=0A=
	this.height =3D height;=0A=
	this.type =3D type;=0A=
	this.url =3D url;=0A=
=0A=
	this.getId =3D function () { return this.id; };=0A=
	this.setId =3D function (id) { this.id =3D id };=0A=
=0A=
	this.getWidth =3D function () { return this.width; };=0A=
	this.setWidth =3D function (width) { this.width =3D width; };=0A=
=0A=
	this.getHeight =3D function () { return this.height; };=0A=
	this.setHeight =3D function (height) { this.height =3D height; };=0A=
=0A=
	this.getType =3D function () { return this.type; };=0A=
	this.setType =3D function (type) { this.type =3D type; };=0A=
=0A=
	this.getUrl =3D function () { return this.url; };=0A=
	this.setUrl =3D function (url) { this.url =3D url; };=0A=
=0A=
	this.toString =3D function () { return "[AD|ID=3D" + this.id + =
"|WIDTH=3D" + this.width + "|HEIGHT=3D" + this.height + "]"; };=0A=
}=0A=
// ------ /CNN ADS OBJECT ----- //=0A=
=0A=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/scripts/prototype.js

/*  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=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_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/scripts/scriptaculous.js?load=effects

// script.aculo.us scriptaculous.js v1.7.0, Fri Jan 19 19:16:36 CET 2007=0A=
=0A=
// Copyright (c) 2005, 2006 Thomas Fuchs (http://script.aculo.us, =
http://mir.aculo.us)=0A=
// =0A=
// Permission is hereby granted, free of charge, to any person obtaining=0A=
// a copy of this software and associated documentation files (the=0A=
// "Software"), to deal in the Software without restriction, including=0A=
// without limitation the rights to use, copy, modify, merge, publish,=0A=
// distribute, sublicense, and/or sell copies of the Software, and to=0A=
// permit persons to whom the Software is furnished to do so, subject to=0A=
// the following conditions:=0A=
// =0A=
// The above copyright notice and this permission notice shall be=0A=
// included in all copies or substantial portions of the Software.=0A=
//=0A=
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,=0A=
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF=0A=
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND=0A=
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE=0A=
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION=0A=
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION=0A=
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.=0A=
//=0A=
// For details, see the script.aculo.us web site: http://script.aculo.us/=0A=
=0A=
var Scriptaculous =3D {=0A=
  Version: '1.7.0',=0A=
  require: function(libraryName) {=0A=
    // inserting via DOM fails in Safari 2.0, so brute force approach=0A=
    document.write('<script type=3D"text/javascript" =
src=3D"'+libraryName+'"></script>');=0A=
  },=0A=
  load: function() {=0A=
    if((typeof Prototype=3D=3D'undefined') || =0A=
       (typeof Element =3D=3D 'undefined') || =0A=
       (typeof Element.Methods=3D=3D'undefined') ||=0A=
       parseFloat(Prototype.Version.split(".")[0] + "." +=0A=
                  Prototype.Version.split(".")[1]) < 1.5)=0A=
       throw("script.aculo.us requires the Prototype JavaScript =
framework >=3D 1.5.0");=0A=
    =0A=
    $A(document.getElementsByTagName("script")).findAll( function(s) {=0A=
      return (s.src && s.src.match(/scriptaculous\.js(\?.*)?$/))=0A=
    }).each( function(s) {=0A=
      var path =3D s.src.replace(/scriptaculous\.js(\?.*)?$/,'');=0A=
      var includes =3D s.src.match(/\?.*load=3D([a-z,]*)/);=0A=
      (includes ? includes[1] : =
'builder,effects,dragdrop,controls,slider').split(',').each(=0A=
       function(include) { Scriptaculous.require(path+include+'.js') });=0A=
    });=0A=
  }=0A=
}=0A=
=0A=
Scriptaculous.load();
------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/main.js

var cnnLockToggle =3D false;=0A=
=0A=
function CNN_getCookies() {=0A=
	var hash =3D new Array;=0A=
	if ( document.cookie ) {=0A=
		var cookies =3D document.cookie.split( '; ' );=0A=
		for ( var i =3D 0; i < cookies.length; i++ ) {=0A=
			var namevaluePairs =3D cookies[i].split( '=3D' );=0A=
			hash[namevaluePairs[0]] =3D unescape( namevaluePairs[1] ) || null;=0A=
		}=0A=
	}=0A=
	return hash;=0A=
}=0A=
=0A=
function CNN_parseCookieData( cookieDataString ) {=0A=
	var cookieValues =3D new Object();=0A=
	var separatePairs =3D cookieDataString.split( '&' );=0A=
	for ( var i =3D 0; i < separatePairs.length; i++  ) {=0A=
		var separateValues =3D separatePairs[i].split( ':' );=0A=
		cookieValues[separateValues[0]] =3D separateValues[1] || null;=0A=
	}=0A=
	return cookieValues;=0A=
}=0A=
=0A=
function CNN_setCookie( name, value, hours, path, domain, secure ) {=0A=
		var numHours =3D 0;=0A=
=0A=
		if ( hours) {=0A=
			if ( (typeof(hours) =3D=3D 'string') && Date.parse(hours) ) { // =
already a Date string=0A=
				numHours =3D hours;=0A=
			} else if ( typeof(hours) =3D=3D 'number' ) { // calculate Date from =
number of hours=0A=
				numHours =3D ( new Date((new Date()).getTime() + hours*3600000) =
).toGMTString();=0A=
			}=0A=
		}=0A=
=0A=
		document.cookie =3D name + '=3D' + escape(value) + =
((numHours)?(';expires=3D' + numHours):'') + ((path)?';path=3D' + =
path:'') + ((domain)?';domain=3D' + domain:'') + ((secure && (secure =
=3D=3D true))?'; secure':''); // Set the cookie, adding any parameters =
that were specified.=0A=
=0A=
}=0A=
=0A=
=0A=
function CNN_killCookie( name, path, domain ) {=0A=
	var allCookies =3D CNN_getCookies();=0A=
=0A=
	var theValue =3D allCookies[ name ] || null; // We need the value to =
kill the cookie=0A=
	if ( theValue ) {=0A=
		document.cookie =3D name + '=3D' + theValue + '; expires=3DFri, =
13-Apr-1970 00:00:00 GMT' + ((path)?';path=3D' + path:'') + =
((domain)?';domain=3D' + domain:''); // set an already-expired cookie=0A=
	}=0A=
}=0A=
=0A=
=0A=
var allCookies =3D CNN_getCookies();=0A=
var cnnDomainArray =3D location.hostname.split( '.' );=0A=
var cnnCurrDomain =3D ( cnnDomainArray.length > 1 ) ? '.' + =
cnnDomainArray[cnnDomainArray.length-2] + '.' + =
cnnDomainArray[cnnDomainArray.length-1] : '';=0A=
=0A=
var pagetypeTS=3D"";=0A=
=0A=
function cnnRenderTimeStamp(date,timeString) {=0A=
	var cnnIsIntl =3D (location.hostname.indexOf('edition.') > -1) ? true : =
false;=0A=
	cnnStoryPublishTime =3D (date) ? new Date(date) : cnnStoryPublishTime;=0A=
	var days =3D new Array('Sun','Mon','Tue','Wed','Thur','Fri','Sat');=0A=
	var months =3D new Array('January', 'February', 'March', 'April', =
'May', 'June', 'July', 'August', 'September', 'October', 'November', =
'December');=0A=
=0A=
    var cnnTimeStampDiff =3D cnnCurrTime.getTime() - =
cnnStoryPublishTime.getTime();=0A=
=0A=
    var daysDifference =3D Math.floor(cnnTimeStampDiff/1000/60/60/24);=0A=
=0A=
    cnnTimeStampDiff -=3D daysDifference*1000*60*60*24=0A=
=0A=
    var hoursDifference =3D Math.floor(cnnTimeStampDiff/1000/60/60);=0A=
=0A=
    cnnTimeStampDiff -=3D hoursDifference*1000*60*60=0A=
=0A=
    var minutesDifference =3D Math.floor(cnnTimeStampDiff/1000/60);=0A=
=0A=
    cnnTimeStampDiff -=3D minutesDifference*1000*60=0A=
=0A=
	var cnnDays =3D (daysDifference > 1) ? "days" : "day";=0A=
	var cnnHours =3D (hoursDifference > 1) ? "hours" : "hour";=0A=
	var cnnMinutes =3D (minutesDifference > 1) ? "minutes" : "minute";=0A=
	var cnnHPMinutes =3D "min";=0A=
	var cnnCMSTimeString =3D '';=0A=
	var cnnBlankString =3D "";=0A=
=0A=
	if (timeString) {=0A=
		cnnCMSTimeString =3D (cnnIsIntl) ? timeString[0] : timeString[1];=0A=
	}	else { //for legacy support=0A=
		cnnCMSTimeString =3D "updated " + (!cnnIsIntl ? =
days[cnnStoryPublishTime.getUTCDay()] : '') + " " + =
months[cnnStoryPublishTime.getUTCMonth()] + " " + =
cnnStoryPublishTime.getUTCDate() + ", " + =
cnnStoryPublishTime.getUTCFullYear();=0A=
	}=0A=
=0A=
=0A=
	if (hoursDifference > 4 && daysDifference >=3D 0 || daysDifference >=3D =
1) {=0A=
		switch(pagetypeTS) {=0A=
			case "homepage": //t2 formatted=0A=
				return cnnBlankString;=0A=
			break;=0A=
			case "mosaic":=0A=
				return "<div class=3D\"cnnGryTmeStmp\">" + cnnCMSTimeString + =
"<\/div>";=0A=
			break;=0A=
			case "section":=0A=
			default:=0A=
				if (pagetypeTS =3D=3D 'section' && cnnIsIntl) {=0A=
					return "<div class=3D\"cnnGryTmeStmp\">" + cnnCMSTimeString + =
"<\/div>";=0A=
				} else {=0A=
					return "<div class=3D\"cnnGryTmeStmp\">updated " + (!cnnIsIntl ? =
days[cnnStoryPublishTime.getUTCDay()] : '') + " " + =
months[cnnStoryPublishTime.getUTCMonth()] + " " + =
cnnStoryPublishTime.getUTCDate() + ", " + =
cnnStoryPublishTime.getUTCFullYear() + "<\/div>";=0A=
				}=0A=
		}=0A=
	} else if( hoursDifference <=3D 4 && hoursDifference >=3D 1) {=0A=
		switch(pagetypeTS) {=0A=
			case "homepage": //t2 formatted=0A=
				return cnnBlankString;=0A=
			break;=0A=
			case "mosaic":=0A=
			default:=0A=
				if (minutesDifference > 0) {=0A=
					return "<div class=3D\"cnnGryTmeStmp\">updated " + hoursDifference =
+ " "+cnnHours+", " + minutesDifference + " "+cnnMinutes+" ago<\/div>";=0A=
				} else {=0A=
					return "<div class=3D\"cnnGryTmeStmp\">updated " + hoursDifference =
+ " "+cnnHours+" ago<\/div>";=0A=
				}=0A=
		}=0A=
	} else {=0A=
		switch(pagetypeTS) {=0A=
			case "homepage": //t2 formatted=0A=
				if(hoursDifference < 1 && minutesDifference > 0){=0A=
					return '<span>' + minutesDifference + " min<\/span>";=0A=
				} else {=0A=
					return "<span>1 min<\/span>";=0A=
				}=0A=
			break;=0A=
			case "mosaic":=0A=
			default:=0A=
				if(hoursDifference < 1 && minutesDifference > 0){=0A=
					return "updated " + minutesDifference + " "+cnnMinutes+" ago";=0A=
				} else {=0A=
					return "updated 1 minute ago";=0A=
				}=0A=
		}=0A=
=0A=
	}=0A=
}=0A=
=0A=
=0A=
function cnnRenderT1TimeStamp(date,useLongFormat) {=0A=
=0A=
	cnnStoryPublishTime =3D (date) ? new Date(date) : cnnStoryPublishTime;=0A=
	var cnnTimeStampString;=0A=
	var nullString=3D"";=0A=
=0A=
=0A=
=0A=
    var cnnTimeStampDiff =3D cnnCurrTime.getTime() - =
cnnStoryPublishTime.getTime();=0A=
=0A=
    var daysDifference =3D Math.floor(cnnTimeStampDiff/1000/60/60/24);=0A=
=0A=
    cnnTimeStampDiff -=3D daysDifference*1000*60*60*24=0A=
=0A=
    var hoursDifference =3D Math.floor(cnnTimeStampDiff/1000/60/60);=0A=
=0A=
    cnnTimeStampDiff -=3D hoursDifference*1000*60*60=0A=
=0A=
    var minutesDifference =3D Math.floor(cnnTimeStampDiff/1000/60);=0A=
=0A=
    cnnTimeStampDiff -=3D minutesDifference*1000*60=0A=
=0A=
    var secondsDifference =3D Math.floor(cnnTimeStampDiff/1000);=0A=
=0A=
=0A=
	var cnnDays =3D (daysDifference > 1) ? "days" : "day";=0A=
	var cnnHours =3D (hoursDifference > 1) ? "hours" : "hour";=0A=
	var cnnMinutes =3D (minutesDifference > 1) ? "minutes" : "minute";=0A=
	var cnnSeconds =3D (secondsDifference > 1) ? "seconds" : "second";=0A=
	var cnnHPMinutes =3D (minutesDifference > 1) ? "minutes" : "minute";=0A=
	var cnnHPSeconds =3D (secondsDifference > 1) ? "secs" : "sec";=0A=
=0A=
	if (pagetypeTS=3D=3D'homepage') {=0A=
=0A=
			cnnTimeStampString =3D 'updated ';=0A=
=0A=
		if(hoursDifference < 1 && minutesDifference > 0){=0A=
			cnnTimeStampString +=3D minutesDifference + " =
"+(useLongFormat?cnnMinutes:cnnHPMinutes)+" ago";=0A=
		} else if(hoursDifference < 1 && minutesDifference < 1) {=0A=
			cnnTimeStampString +=3D secondsDifference + " =
"+(useLongFormat?cnnSeconds:cnnHPSeconds)+" ago";=0A=
		} else if(hoursDifference >=3D 1) {=0A=
			return nullString;=0A=
		}=0A=
		return '<span>'+cnnTimeStampString+'</span>';=0A=
	}=0A=
=0A=
}=0A=
=0A=
=0A=
function CNN_submitUserComment(form) {=0A=
var cnnSubmitForm =3D true;=0A=
=0A=
if(typeof(cnnThread) !=3D "undefined") {=0A=
	$(form).threadName.value =3D cnnThread;=0A=
}=0A=
if(typeof(cnnForum) !=3D "undefined") {=0A=
  $(form).forumName.value  =3D cnnForum;=0A=
}=0A=
=0A=
var errorDivs =3D $('cnnROCSubFrm').getElementsByClassName('cnnError');=0A=
for (var i =3D 0; i<errorDivs.length; i++) {=0A=
	errorDivs[i].remove();=0A=
}=0A=
=0A=
allFormEls =3D Form.getElements(form);=0A=
for(i =3D 0; i < allFormEls.length; i++) {=0A=
    //do something to each form field=0A=
    allFormEls[i].value =3D =
allFormEls[i].value.strip().stripScripts().stripTags();=0A=
    if (allFormEls[i].value =3D=3D "") {=0A=
    		if (allFormEls[i].name =3D=3D "name") {=0A=
    			new Insertion.Before('cnnUserResponseName',' <span =
id=3D"cnnUserResponseNameError" class=3D"cnnError">&raquo;<\/span>');=0A=
    		}=0A=
    		if (allFormEls[i].name =3D=3D "location") {=0A=
    			new Insertion.Before('cnnUserResponseLocation',' <span =
id=3D"cnnUserResponseNameError" class=3D"cnnError">&raquo;<\/span>');=0A=
    		}=0A=
    		if (allFormEls[i].name =3D=3D "body") {=0A=
    			new Insertion.Before('cnnUserResponseComment',' <span =
id=3D"cnnUserResponseNameError" class=3D"cnnError">&raquo;<\/span>');=0A=
    		}=0A=
    	cnnSubmitForm =3D false;=0A=
	}=0A=
}=0A=
=0A=
	if (cnnSubmitForm) {=0A=
=0A=
			new Effect.Opacity('cnnROCFrm',=0A=
					{=0A=
						duration:1.0,=0A=
						from:1.0,=0A=
						to:0,=0A=
						beforeStart:function() {=0A=
					  		document.cnnROCSubFrm.submit();=0A=
						},=0A=
						afterFinish: function(obj)=0A=
							{=0A=
							Form.reset(form);					      		$('cnnROCFrmComplete').innerHTML =
=3D "Thank you for contributing. Comments are moderated by CNN and will =
not appear on this story until after they have been reviewed and deemed =
appropriate for posting. Unfortunately, due to the volume of comments we =
receive, not all comments can be posted.<br><br><a =
href=3D\"javascript:void(0);\" =
onclick=3D\"CNN_toggleSubmissionForm('cnnROCFrm','cnnROCFrmComplete')\">P=
ost another comment<\/a>";=0A=
									new Effect.Opacity('cnnROCFrmComplete',=0A=
										{=0A=
											duration:1.0,=0A=
											from:0,=0A=
											to:1.0,=0A=
											beforeUpdate:function(obj) {=0A=
												$('cnnROCFrm').hide();=0A=
												obj.element.show();=0A=
											}=0A=
										}=0A=
									);=0A=
							}=0A=
=0A=
					}=0A=
				);=0A=
	}=0A=
}=0A=
=0A=
function CNN_toggleSubmissionForm(show,hide) {=0A=
=0A=
new Effect.Opacity(hide,=0A=
					{=0A=
						duration:1.0,=0A=
						from:1.0,=0A=
						to:0,=0A=
						afterFinish: function(obj)=0A=
							{=0A=
								new Effect.Opacity(show,=0A=
										{=0A=
											duration:1.0,=0A=
											from:0,=0A=
											to:1.0,=0A=
											beforeUpdate:function(obj) {=0A=
												$(hide).hide();=0A=
												obj.element.show();=0A=
											}=0A=
										}=0A=
									);=0A=
							}=0A=
					}=0A=
				)=0A=
=0A=
=0A=
}=0A=
=0A=
function cnnShowExtendedComments(el) {=0A=
	var block =3D =
document.getElementsByClassName('cnnExtended',el.parentNode.parentNode);=0A=
	if (block && block.length > 0) {=0A=
		cnnToggleUGC(block[0],el);=0A=
		el.style.display =3D "none";=0A=
	}=0A=
}=0A=
=0A=
function cnnHideExtendedComments(el) {=0A=
	var block =3D el.parentNode.parentNode;=0A=
	var blockLinks =3D block.parentNode.getElementsByTagName('a');=0A=
	if (block) {=0A=
		cnnToggleUGC(block,el);=0A=
			for (var i=3D0; i < blockLinks.length; i++) {=0A=
				blockLinks[i].style.display =3D "inline";=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
function cnnShowMore(el) {=0A=
	var block =3D =
document.getElementsByClassName('cnnExtended',el.parentNode.parentNode);=0A=
	var initialGraph =3D el.parentNode.getElementsByTagName('p');=0A=
	if (block && block.length > 0) {=0A=
el.parentNode.hide();=0A=
block[0].show();=0A=
	}=0A=
}=0A=
=0A=
function cnnShowLess(el) {=0A=
	var block =3D el.parentNode.parentNode;=0A=
	var blockLinks =3D block.parentNode.getElementsByTagName('p');=0A=
=0A=
	block.hide();=0A=
	blockLinks[0].show();=0A=
=0A=
}=0A=
=0A=
function cnnToggleUGC(el,lnk) {=0A=
	if (cnnLockToggle) {=0A=
		return;=0A=
	}=0A=
=0A=
	cnnLockToggle =3D true;=0A=
	var cnnToggleClass =3D (lnk.parentNode.className.indexOf('Closed') > =
-1) ? true : false;=0A=
=0A=
		Effect.toggle(el,'blind',=0A=
		{=0A=
			beforeStart:function(obj) {=0A=
				try {=0A=
					lnk.blur();=0A=
				} catch(e) {};=0A=
				if (cnnToggleClass) {=0A=
				switch(lnk.parentNode.className) {=0A=
					case 'cnnOpinionClosed':=0A=
						lnk.parentNode.className =3D 'cnnOpinion';=0A=
					break;=0A=
					case 'cnnIReportClosed':=0A=
						lnk.parentNode.className =3D 'cnnIReport';=0A=
					break;=0A=
					case 'cnnBlogsClosed':=0A=
						lnk.parentNode.className =3D 'cnnBlogs';=0A=
						Sphere.Widget.search();=0A=
					break;=0A=
					default:=0A=
				}=0A=
				}=0A=
=0A=
			},=0A=
			afterFinish:function(obj) {=0A=
				if (!cnnToggleClass) {=0A=
				switch(lnk.parentNode.className) {=0A=
					case 'cnnOpinion':=0A=
						lnk.parentNode.className =3D 'cnnOpinionClosed';=0A=
					break;=0A=
					case 'cnnIReport':=0A=
						lnk.parentNode.className =3D 'cnnIReportClosed';=0A=
					break;=0A=
					case 'cnnBlogs':=0A=
						lnk.parentNode.className =3D 'cnnBlogsClosed';=0A=
					break;=0A=
					default:=0A=
				}=0A=
				}=0A=
				cnnLockToggle =3D false;=0A=
			}=0A=
		}=0A=
	);=0A=
}=0A=
=0A=
function cnnToggleNestedContent(el,lnk,num,desc) {=0A=
if (cnnLockToggle) {=0A=
	return;=0A=
}=0A=
=0A=
cnnLockToggle =3D true;=0A=
var cnnLnkTxt =3D "Last 3 comments only";=0A=
		Effect.toggle(el,'blind',=0A=
		{=0A=
			duration:0.5,=0A=
			afterFinish: function() {=0A=
				if(!desc) {=0A=
					if (lnk.innerHTML =3D=3D cnnLnkTxt) {=0A=
						lnk.innerHTML =3D "See all " + num + " comments";=0A=
					} else {=0A=
						lnk.innerHTML =3D cnnLnkTxt;=0A=
					}=0A=
				}=0A=
				cnnLockToggle =3D false;=0A=
			},=0A=
			beforeStart: function() {=0A=
				if(desc) {=0A=
					$(lnk).style.display =3D "none";=0A=
				}=0A=
=0A=
			}=0A=
		}=0A=
=0A=
		);=0A=
=0A=
=0A=
}=0A=
=0A=
=0A=
function CNN_displayBlogContent(widgetLoading,widgetContent) {=0A=
	if (!$(widgetLoading) || !$(widgetContent)) {=0A=
		return;=0A=
	}=0A=
=0A=
			Effect.BlindUp(widgetLoading,=0A=
				{=0A=
					afterFinish:function(obj) {=0A=
						$(obj.element.id).remove();=0A=
					}=0A=
				}=0A=
			);=0A=
			Effect.BlindDown(widgetContent);=0A=
}=0A=
=0A=
=0A=
var cnnHasOpenPopup =3D 0;=0A=
// this is for opening pop-up windows=0A=
function CNN_openPopup( url, name, widgets, openerUrl )=0A=
{=0A=
	var host =3D location.hostname;=0A=
	if (window =3D=3D top) { window.top.name =3D "opener"; }=0A=
	var popupWin =3D window.open( url, name, widgets );=0A=
	if(popupWin) {cnnHasOpenPopup =3D 1;}=0A=
	if ( popupWin && popupWin.opener ) {=0A=
		if ( openerUrl )=0A=
		{=0A=
			popupWin.opener.location =3D openerUrl;=0A=
		}=0A=
	}=0A=
	if ( popupWin) {=0A=
		popupWin.focus();=0A=
	}=0A=
}=0A=
=0A=
function cnnImgSwap( strId, intSwap ) {=0A=
	// assumes 2 images: image.gif and image_over.gif=0A=
	var imgObj =3D (typeof(strId) =3D=3D "object") ? =
strId.getElementsByTagName('img')[0] : document.getElementById( strId );=0A=
	var strTemp =3D imgObj.src;=0A=
	var intStrLength =3D strTemp.length;=0A=
	var intChop, strEnd;=0A=
=0A=
	if ( intSwap ) {=0A=
		if (strTemp.indexOf('_over.gif') =3D=3D -1) {=0A=
			intChop =3D intStrLength - 4;=0A=
			strEnd =3D '_over.gif';=0A=
		}=0A=
	} else {=0A=
		if (strTemp.indexOf('_over.gif') > -1) {=0A=
			intChop =3D intStrLength - 9;=0A=
			strEnd =3D '.gif';=0A=
		}=0A=
	}=0A=
=0A=
	if (typeof(intChop) !=3D "undefined") {=0A=
		strTemp =3D strTemp.substring( 0, intChop );=0A=
	}=0A=
=0A=
	if (typeof(strEnd) !=3D "undefined") {=0A=
		imgObj.src =3D strTemp + strEnd;=0A=
	}=0A=
}=0A=
=0A=
/*=0A=
=0A=
Flash Detect and Render=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=0A=
=0A=
The CNN_FlashObject takes a few required arguments...=0A=
=0A=
	name ......... the id/name of the object/embed=0A=
	src .......... the URL of the swf=0A=
	width ........ (i think this should be required)=0A=
	height ....... (i think this should be required)=0A=
=0A=
...and some optional arguments...=0A=
=0A=
	parameters ... this is a "hash" of keys and values=0A=
		{ menu: "true", play: "false", loop: "false" }=0A=
		(or set this to null or an empty string to skip)=0A=
=0A=
	flashVars .... this is a hash or a string=0A=
		{ cs_url: "/football/nfl/scoreboards/today/" }=0A=
		- or -=0A=
		"cs_url=3D/football/nfl/scoreboards/today/"=0A=
=0A=
=0A=
Sample Usage:=0A=
if ( new CNN_FlashDetect().detectVersion( 6 ) ) {=0A=
=0A=
	var cnn_Scoreboard =3D new CNN_FlashObject( "cnnScoreboard",=0A=
		"/.element/img/2.0/swf/nfl_scoreboard.swf",=0A=
		420, 85, null, "cs_url=3D/football/nfl/scoreboards/today/" );=0A=
=0A=
	cnn_Scoreboard.writeHtml();=0A=
=0A=
} else {=0A=
	document.write( 'alternate html' );=0A=
}=0A=
=0A=
Of course, if you plan to have Flash in lots of places on a page,=0A=
it might make more sense to make a global variable for the detection.=0A=
You could go as far as creating a session-based cookie...=0A=
=0A=
*/=0A=
=0A=
var VBS_Result =3D false;=0A=
=0A=
function CNN_FlashDetect() { }=0A=
=0A=
CNN_FlashDetect.prototype.maxVersionToDetect =3D 8;=0A=
CNN_FlashDetect.prototype.minVersionToDetect =3D 3;=0A=
=0A=
CNN_FlashDetect.prototype.hasPlugin =3D ( navigator.mimeTypes &&=0A=
		navigator.mimeTypes.length &&=0A=
		navigator.mimeTypes["application/x-shockwave-flash"] &&=0A=
		navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin );=0A=
=0A=
CNN_FlashDetect.prototype.hasActiveX =3D window.ActiveXObject;=0A=
=0A=
CNN_FlashDetect.prototype.hasWinIE =3D ( navigator.userAgent &&=0A=
		( navigator.userAgent.indexOf( "MSIE" ) !=3D -1 ) &&=0A=
		navigator.appVersion &&=0A=
		( navigator.appVersion.indexOf( "Win" ) !=3D -1 ) );=0A=
=0A=
CNN_FlashDetect.prototype.getVersion =3D function () {=0A=
	var versionNum =3D 0;=0A=
	var i =3D 0;=0A=
=0A=
	if ( this.hasActiveX ) {=0A=
		var activeXObject =3D false;=0A=
		for ( i =3D this.maxVersionToDetect; i >=3D this.minVersionToDetect && =
!activeXObject; versionNum =3D ( activeXObject ? i : versionNum ), i-- ) =
{=0A=
			try {=0A=
				activeXObject =3D new ActiveXObject( =
"ShockwaveFlash.ShockwaveFlash." + i );=0A=
			} catch( e ) {=0A=
				// do nothing=0A=
			}=0A=
		}=0A=
	} else if ( this.hasWinIE ) {=0A=
		VBS_Result =3D false;=0A=
		for ( i =3D this.maxVersionToDetect; i >=3D this.minVersionToDetect && =
!VBS_Result; versionNum =3D ( VBS_Result ? i : versionNum ), i-- ) {=0A=
			execScript( 'on error resume next: VBS_Result =3D IsObject( =
CreateObject( "ShockwaveFlash.ShockwaveFlash.' + i + '" ) )', 'VBScript' =
);=0A=
		}=0A=
	} else if ( this.hasPlugin ) {=0A=
		if ( navigator.plugins && navigator.plugins.length && =
navigator.plugins["Shockwave Flash"] ) {=0A=
			var words =3D navigator.plugins["Shockwave Flash"].description.split( =
" " );=0A=
			for ( i =3D 0; i < words.length; ++i ) {=0A=
				if ( isNaN( parseInt( words[i] ) ) )=0A=
					continue;=0A=
				versionNum =3D words[i];=0A=
			}=0A=
		}=0A=
	}=0A=
=0A=
	return ( versionNum );=0A=
}=0A=
=0A=
CNN_FlashDetect.prototype.detectVersion =3D function ( num ) {=0A=
	var isVersionSupported =3D false;=0A=
=0A=
	if ( ! isNaN( num ) ) {=0A=
		isVersionSupported =3D ( this.getVersion() >=3D parseInt( num ) );=0A=
	}=0A=
=0A=
	return ( isVersionSupported );=0A=
}=0A=
=0A=
=0A=
function CNN_FlashObject( p_name, p_src, p_width, p_height, =
p_parameters, p_flashVars ) {=0A=
	this.m_name			=3D p_name;=0A=
	this.m_src			=3D p_src;=0A=
	this.m_width		=3D p_width;=0A=
	this.m_height		=3D p_height;=0A=
	this.m_flashVars	=3D p_flashVars;=0A=
=0A=
// constructor=0A=
	if ( p_parameters )=0A=
	{=0A=
		this.setParams( p_parameters );=0A=
	}=0A=
}=0A=
=0A=
// Declare member properties=0A=
CNN_FlashObject.prototype.m_name =3D '';=0A=
CNN_FlashObject.prototype.m_src =3D '';=0A=
CNN_FlashObject.prototype.m_width =3D '';=0A=
CNN_FlashObject.prototype.m_height =3D '';=0A=
CNN_FlashObject.prototype.m_flashVars =3D '';=0A=
=0A=
CNN_FlashObject.prototype.m_params =3D {=0A=
	menu:		"false",=0A=
	quality:	"high",=0A=
	allowScriptAccess:		"always",=0A=
	wmode:		"transparent"=0A=
=0A=
};=0A=
=0A=
CNN_FlashObject.prototype.setParam =3D function ( p_name, p_value ) {=0A=
	this.m_params[ p_name ] =3D p_value;=0A=
}=0A=
=0A=
CNN_FlashObject.prototype.setParams =3D function ( p_paramHash ) {=0A=
	if ( typeof p_paramHash =3D=3D "object" ) {=0A=
		for ( var param in p_paramHash ) {=0A=
			if ( p_paramHash[param] ) {=0A=
				this.setParam( param, p_paramHash[param] );=0A=
			}=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
CNN_FlashObject.prototype.getParam =3D function ( p_name ) {=0A=
	return ( this.m_params[ p_name ] );=0A=
}=0A=
=0A=
CNN_FlashObject.prototype.getParams =3D function () {=0A=
	return ( this.m_params );=0A=
}=0A=
=0A=
CNN_FlashObject.prototype.getFlashVarsString =3D function () {=0A=
	var flashVarsString =3D '';=0A=
=0A=
	if ( typeof this.m_flashVars =3D=3D "string" ) {=0A=
		flashVarsString =3D this.m_flashVars;=0A=
	} else if ( typeof this.m_flashVars =3D=3D "object" ) {=0A=
		for ( var flashVar in this.m_flashVars ) {=0A=
			if ( flashVarsString !=3D '' ) {=0A=
				flashVarsString +=3D "&";=0A=
			}=0A=
			flashVarsString +=3D flashVar + "=3D" + escape( =
this.m_flashVars[flashVar] );=0A=
		}=0A=
	}=0A=
=0A=
	return ( flashVarsString );=0A=
}=0A=
=0A=
CNN_FlashObject.prototype.getAttributeString =3D function ( p_attr, =
p_value ) {=0A=
	return ( p_value ? ' ' + p_attr + '=3D"' + p_value + '"' : '' );=0A=
}=0A=
=0A=
CNN_FlashObject.prototype.getParamTag =3D function ( p_name, p_value ) {=0A=
	return ( p_value ? '<param name=3D"' + p_name + '" value=3D"' + p_value =
+ '">' : '' );=0A=
}=0A=
=0A=
CNN_FlashObject.prototype.getHtml =3D function () {=0A=
	var htmlString =3D '';=0A=
	var eachParam =3D '';=0A=
	var flashUrl =3D 'http://www.macromedia.com/go/getflashplayer';=0A=
=0A=
// open object=0A=
	htmlString +=3D '<object type=3D"application/x-shockwave-flash" \=0A=
					classid=3D"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"';=0A=
	htmlString +=3D this.getAttributeString( 'pluginspage', flashUrl );=0A=
	htmlString +=3D this.getAttributeString( 'id', this.m_name );=0A=
	htmlString +=3D this.getAttributeString( 'data', this.m_src );=0A=
	htmlString +=3D this.getAttributeString( 'width', this.m_width );=0A=
	htmlString +=3D this.getAttributeString( 'height', this.m_height );=0A=
	htmlString +=3D '>';=0A=
	htmlString +=3D this.getParamTag( 'movie', this.m_src );=0A=
	for ( eachParam in this.getParams() ) {=0A=
		htmlString +=3D this.getParamTag( eachParam, this.getParam( eachParam =
) );=0A=
	}=0A=
	htmlString +=3D this.getParamTag( 'flashVars', =
this.getFlashVarsString() );=0A=
=0A=
// open embed=0A=
	htmlString +=3D '<embed type=3D"application/x-shockwave-flash"';=0A=
	htmlString +=3D this.getAttributeString( 'pluginspage', flashUrl );=0A=
	htmlString +=3D this.getAttributeString( 'name', this.m_name );=0A=
	htmlString +=3D this.getAttributeString( 'src', this.m_src );=0A=
	htmlString +=3D this.getAttributeString( 'width', this.m_width );=0A=
	htmlString +=3D this.getAttributeString( 'height', this.m_height );=0A=
	for ( eachParam in this.getParams() ) {=0A=
		htmlString +=3D this.getAttributeString( eachParam, this.getParam( =
eachParam ) );=0A=
	}=0A=
	htmlString +=3D this.getAttributeString( 'flashVars', =
this.getFlashVarsString() );=0A=
	htmlString +=3D '>';=0A=
=0A=
// close embed=0A=
	htmlString +=3D '<\/embed>';=0A=
=0A=
// close object=0A=
	htmlString +=3D '<\/object>';=0A=
=0A=
	return ( htmlString );=0A=
}=0A=
=0A=
CNN_FlashObject.prototype.writeHtml =3D function () {=0A=
	document.write( this.getHtml() );=0A=
}=0A=
=0A=
CNN_FlashObject.prototype.writeMosaicHtml =3D function (id) {=0A=
	document.getElementById(id).innerHTML =3D  this.getHtml();=0A=
}=0A=
=0A=
=0A=
//   story comments functions=0A=
//=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D START=0A=
=0A=
var commentsWindow =3D 25;=0A=
var currentPage =3D 1;=0A=
var cnnInitialDisplay =3D 3;=0A=
var nextLink =3D false;=0A=
var loadingComments =3D false;=0A=
var firstTimeNested =3D true;=0A=
var getThisMany =3D 0;=0A=
=0A=
//gets next set of comments - of length: commentsWindow*currentPage=0A=
function CNN_getNextComments(){=0A=
	if(loadingComments){ return; }=0A=
	loadingComments=3Dtrue;=0A=
	currentPage++;=0A=
	getThisMany =3D commentsWindow * currentPage;=0A=
	=
CSIManager.getInstance().call('http://comments.cnn.com/comments/rss/rssme=
ssages.jspa','full=3Dtrue&outputType=3DJSON_BOXED&forumName=3D'+cnnForum+=
'&threadName=3D'+cnnThread+'&numItems=3D'+getThisMany,'objectid', =
CNN_loadNextIntoOpinionBox, false, 'cnnComments'+currentPage);=0A=
}=0A=
=0A=
//handler for CNN_getNextComments=0A=
function CNN_loadNextIntoOpinionBox(obj){=0A=
    	var CNN_comment =3D '';=0A=
	hideableComments =3D '';=0A=
	var makeHidden =3D 'visible';=0A=
	for (var xx =3D 0; xx < cnnInitialDisplay; xx++){=0A=
    		var clObject =3D obj.rss.channel.item[xx];=0A=
		hideableComments +=3D CNN_generateACommentDiv(clObject);=0A=
    	}=0A=
    	for (var xx =3D ((currentPage-1) * =
commentsWindow)+cnnInitialDisplay; xx < obj.rss.channel.item.length; =
xx++) {=0A=
		var clObject =3D obj.rss.channel.item[xx];=0A=
		CNN_comment +=3D CNN_generateACommentDiv(clObject);=0A=
    	}=0A=
        if(obj.rss.channel.item.length < getThisMany || =
(obj.rss.channel.item.length-((currentPage-1) * =
commentsWindow))+cnnInitialDisplay < commentsWindow){=0A=
		document.getElementById('nextLink').style.visibility =3D "hidden";=0A=
		nextLink =3D false;=0A=
	}=0A=
	var nextLinkHtmlVisible =3D 'visible';=0A=
	if(!nextLink){=0A=
		nextLinkHtmlVisible=3D'hidden';=0A=
	}=0A=
=0A=
	var cnnShowExpandedLnk =3D =
$('cnnOpinionContainer').getElementsByClassName('cnnExpandCommentsLnk');=0A=
	cnnShowExpandedLnk[0].innerHTML =3D '<a href=3D"javascript:void(0)" =
onclick=3D"CNN_ToggleNestedStoryContent(\'cnnOpinionSubContainer\',this, =
\''+commentsWindow+'\',null);">Last '+cnnInitialDisplay+' comments =
only<\/a><span id=3D"nextLink" =
style=3D"visibility:'+nextLinkHtmlVisible+'"> | <a =
href=3D"javascript:void(0)" onclick=3D"CNN_getNextComments();">Next =
'+commentsWindow+' comments &raquo;</a></span>';=0A=
	loadingComments =3D false;=0A=
	return "<div id=3D'allComments'>"+hideableComments+"<div =
id=3D'cnnOpinionSubContainer'>"+document.getElementById("cnnOpinionSubCon=
tainer").innerHTML+CNN_comment+"</div></div>";=0A=
}=0A=
=0A=
//builds a single comment element=0A=
function CNN_generateACommentDiv(clObject){=0A=
	CNN_comment =3D '';=0A=
        CNN_comment +=3D '                <div class=3D"cnnUGCBox">';=0A=
        CNN_comment +=3D '                        <div =
class=3D"cnnUGCBoxHeader"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC=
/b_ugc_TL.gif" alt=3D"" width=3D"4" height=3D"4"><\/div>';=0A=
        CNN_comment +=3D '                        <div =
class=3D"cnnBoxContent">';=0A=
        CNN_comment +=3D '                                <div =
class=3D"cnnMeta">';=0A=
        CNN_comment +=3D                                  '<span =
class=3D"cnnContributor">'+clObject['jf:author']+'<\/span><br>';=0A=
        CNN_comment +=3D cnnRenderTimeStamp(clObject['pubDate']);=0A=
        CNN_comment +=3D '                                <\/div>';=0A=
        CNN_comment +=3D '                                <p>';=0A=
        CNN_comment +=3D clObject['description'].truncate(300,' ...<a =
href=3D"javascript:void(0);" onclick=3D"cnnShowMore(this);return =
false">more<\/a>');=0A=
        CNN_comment +=3D '                                <\/p>';=0A=
=0A=
        CNN_comment +=3D '                                <div =
class=3D"cnnExtended" style=3D"display:none;"><p>';=0A=
        CNN_comment +=3D clObject['description'];=0A=
        CNN_comment +=3D '                                <a =
href=3D"javascript:void(0);" onclick=3D"cnnShowLess(this);return =
false;">less<\/a><\/p><\/div>';=0A=
=0A=
=0A=
        CNN_comment +=3D '                        <\/div>';=0A=
        CNN_comment +=3D '                        <div =
class=3D"clear"><img src=3D"http://i.cdn.turner.com/cnn/images/1.gif" =
width=3D"1" height=3D"1" border=3D"0" alt=3D""></div><div =
class=3D"cnnUGCBoxFooter"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC=
/b_ugc_BL.gif" alt=3D"" width=3D"4" height=3D"4"><\/div>';=0A=
        CNN_comment +=3D '                <\/div>';=0A=
	return CNN_comment;=0A=
}=0A=
=0A=
//empties the comments=0A=
function CNN_clearOutComments(){=0A=
	currentPage =3D 0;=0A=
	document.getElementById("cnnOpinionSubContainer").innerHTML=3D'';=0A=
}=0A=
=0A=
//shows/hides comments + next link appropraitely=0A=
function CNN_ToggleNestedStoryContent(el,lnk,num,desc) {=0A=
	if (cnnLockToggle) {=0A=
		return;=0A=
	}=0A=
	cnnLockToggle =3D true;=0A=
	var cnnLnkTxt =3D "Last 3 comments only";=0A=
		Effect.toggle(el,'blind',=0A=
		{=0A=
			duration:0.5,=0A=
			afterFinish: function() {=0A=
				if(!desc) {=0A=
					if (lnk.innerHTML =3D=3D cnnLnkTxt) {=0A=
						lnk.innerHTML =3D "Next " + num + " comments &raquo;";=0A=
						nextLink =3D false;=0A=
						currentPage =3D 0;=0A=
						CNN_clearOutComments();=0A=
						document.getElementById('nextLink').style.visibility =3D "hidden";=0A=
					} else {=0A=
						if(!firstTimeNested){=0A=
							CNN_getNextComments();=0A=
						}=0A=
						firstTimeNested =3D false;=0A=
						lnk.innerHTML =3D cnnLnkTxt;=0A=
						nextLink =3D true;=0A=
						document.getElementById('nextLink').style.visibility =3D "visible";=0A=
					}=0A=
				}=0A=
				cnnLockToggle =3D false;=0A=
			},=0A=
			beforeStart: function() {=0A=
				if(desc) {=0A=
					$(lnk).style.display =3D "none";=0A=
				}=0A=
=0A=
			}=0A=
		}=0A=
=0A=
	);=0A=
}=0A=
=0A=
//initial load=0A=
function CNN_loadReaderOpinion(obj) {=0A=
=0A=
	if (typeof cnnFirstPub !=3D "undefined") {=0A=
	    var cnnTimeDiff =3D cnnCurrTime.getTime() - cnnFirstPub.getTime();=0A=
    	var hoursDifference =3D Math.floor(cnnTimeDiff/1000/60/60);=0A=
		if (hoursDifference > 23) {=0A=
			cnnCommentsClosed =3D true;=0A=
		}=0A=
	}=0A=
=0A=
if (typeof cnnExtendCommenting !=3D "undefined" && cnnExtendCommenting) {=0A=
	cnnCommentsClosed =3D false;=0A=
}=0A=
=0A=
=0A=
if (typeof cnnCommentsClosed !=3D "undefined" && cnnCommentsClosed) {=0A=
	if ($('cnnCommentFooter')) {=0A=
		$('cnnCommentFooter').remove();=0A=
	}=0A=
	if ($('cnnROCFrm')) {=0A=
		$('cnnROCFrm').remove();=0A=
	}=0A=
	if ($('cnnROCFrmComplete')) {=0A=
		$('cnnROCFrmComplete').innerHTML =3D "This story is no longer =
available for comments, though you may read comments that were posted =
previously. Browse other stories for new opportunities to comment on the =
latest news.";=0A=
		$('cnnROCFrmComplete').show();=0A=
	}=0A=
}=0A=
=0A=
			var CNN_comment =3D '';=0A=
=0A=
=0A=
		if(!obj || !obj.rss || !obj.rss.channel || !obj.rss.channel.item) {=0A=
    	CNN_comment +=3D '		<div class=3D"cnnUGCBox">';=0A=
    	CNN_comment +=3D '			<div class=3D"cnnUGCBoxHeader"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC=
/b_ugc_TL.gif" alt=3D"" width=3D"4" height=3D"4"><\/div>';=0A=
    	CNN_comment +=3D '			<div class=3D"cnnBoxContent">';=0A=
    	CNN_comment +=3D '<p style=3D"margin-left:6px;">No comments =
yet.<\/p>';=0A=
    	CNN_comment +=3D '			<\/div>';=0A=
    	CNN_comment +=3D '			<div class=3D"clear"><img =
src=3D"http://i.cdn.turner.com/cnn/images/1.gif" width=3D"1" =
height=3D"1" border=3D"0" alt=3D""></div><div =
class=3D"cnnUGCBoxFooter"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC=
/b_ugc_BL.gif" alt=3D"" width=3D"4" height=3D"4"><\/div>';=0A=
    	CNN_comment +=3D '		<\/div>';=0A=
=0A=
			return CNN_comment;=0A=
		}=0A=
=0A=
=0A=
    if (typeof(obj.rss.channel.item.length) =3D=3D "undefined") {=0A=
				var clObject =3D obj.rss.channel.item;=0A=
    	CNN_comment +=3D '		<div id=3D"cnnOpinionSubContainer"><div =
class=3D"cnnUGCBox">';=0A=
    	CNN_comment +=3D '			<div class=3D"cnnUGCBoxHeader"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC=
/b_ugc_TL.gif" alt=3D"" width=3D"4" height=3D"4"><\/div>';=0A=
    	CNN_comment +=3D '			<div class=3D"cnnBoxContent">';=0A=
    	CNN_comment +=3D '				<div class=3D"cnnMeta">';=0A=
    	CNN_comment +=3D 					'<span =
class=3D"cnnContributor">'+clObject['jf:author']+'<\/span><br>';=0A=
    	CNN_comment +=3D cnnRenderTimeStamp(clObject['pubDate']);=0A=
    	CNN_comment +=3D '				<\/div>';=0A=
    	CNN_comment +=3D '				<p>';=0A=
    	CNN_comment +=3D clObject['description'].truncate(300,' ...<a =
href=3D"javascript:void(0);" onclick=3D"cnnShowMore(this);return =
false">more<\/a>');=0A=
    	CNN_comment +=3D '				<\/p>';=0A=
=0A=
      	CNN_comment +=3D '				<div class=3D"cnnExtended" =
style=3D"display:none;"><p>';=0A=
    	CNN_comment +=3D clObject['description'];=0A=
    	CNN_comment +=3D '				<a href=3D"javascript:void(0);" =
onclick=3D"cnnShowLess(this);return false;">less<\/a><\/p><\/div>';=0A=
=0A=
=0A=
    	CNN_comment +=3D '			<\/div>';=0A=
    	CNN_comment +=3D '			<div class=3D"clear"><img =
src=3D"http://i.cdn.turner.com/cnn/images/1.gif" width=3D"1" =
height=3D"1" border=3D"0" alt=3D""></div><div =
class=3D"cnnUGCBoxFooter"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC=
/b_ugc_BL.gif" alt=3D"" width=3D"4" height=3D"4"><\/div>';=0A=
    	CNN_comment +=3D '		<\/div><\/div>';=0A=
=0A=
		return CNN_comment;=0A=
=0A=
    }=0A=
=0A=
=0A=
=0A=
		var cnnShowExpandedCont =3D =
$('cnnOpinionContainer').parentNode.getElementsByTagName('a')[0];=0A=
=0A=
		var cnnShowExpandedLnk =3D =
$('cnnOpinionContainer').getElementsByClassName('cnnExpandCommentsLnk');=0A=
=0A=
=0A=
			var numLength =3D obj.rss.channel.item.length;=0A=
			var displayNum =3D numLength - 1;=0A=
			if (numLength > 3) {=0A=
				cnnShowExpandedLnk[0].innerHTML =3D '<a href=3D"javascript:void(0)" =
onclick=3D"CNN_ToggleNestedStoryContent(\'cnnOpinionSubContainer\',this, =
\''+numLength+'\',null);">Next '+commentsWindow+' comments &raquo;<\/a> =
<span id=3D"nextLink" style=3D"visibility:hidden"> | <a =
href=3D"javascript:void(0)" onclick=3D"CNN_getNextComments()">Next =
'+commentsWindow+' comments &raquo;</a></span>';=0A=
			}=0A=
		if (numLength >=3D 1 && (typeof(cnnReaderOpinions) !=3D "undefined" && =
cnnReaderOpinions)) {=0A=
			cnnToggleUGC('cnnOpinionContainer',cnnShowExpandedCont)=0A=
		}=0A=
=0A=
    for (var xx =3D 0; xx < numLength; xx++) {=0A=
				var clObject =3D obj.rss.channel.item[xx];=0A=
				if(xx =3D=3D 0){=0A=
					CNN_comment+=3D'<div id=3D"allComments">';=0A=
				}=0A=
				if(xx =3D=3D cnnInitialDisplay)=0A=
				{=0A=
					CNN_comment+=3D'<div id=3D"cnnOpinionSubContainer" =
style=3D"display:none;">';=0A=
				}=0A=
=0A=
    	CNN_comment +=3D '		<div class=3D"cnnUGCBox">';=0A=
    	CNN_comment +=3D '			<div class=3D"cnnUGCBoxHeader"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC=
/b_ugc_TL.gif" alt=3D"" width=3D"4" height=3D"4"><\/div>';=0A=
    	CNN_comment +=3D '			<div class=3D"cnnBoxContent">';=0A=
    	CNN_comment +=3D '				<div class=3D"cnnMeta">';=0A=
    	CNN_comment +=3D 					'<span =
class=3D"cnnContributor">'+clObject['jf:author']+'<\/span><br>';=0A=
    	CNN_comment +=3D cnnRenderTimeStamp(clObject['pubDate']);=0A=
    	CNN_comment +=3D '				<\/div>';=0A=
    	CNN_comment +=3D '				<p>';=0A=
    	CNN_comment +=3D clObject['description'].truncate(300,' ...<a =
href=3D"javascript:void(0);" onclick=3D"cnnShowMore(this);return =
false">more<\/a>');=0A=
    	CNN_comment +=3D '				<\/p>';=0A=
=0A=
      	CNN_comment +=3D '				<div class=3D"cnnExtended" =
style=3D"display:none;"><p>';=0A=
    	CNN_comment +=3D clObject['description'];=0A=
    	CNN_comment +=3D '				<a href=3D"javascript:void(0);" =
onclick=3D"cnnShowLess(this);return false;">less<\/a><\/p><\/div>';=0A=
=0A=
=0A=
    	CNN_comment +=3D '			<\/div>';=0A=
    	CNN_comment +=3D '			<div class=3D"clear"><img =
src=3D"http://i.cdn.turner.com/cnn/images/1.gif" width=3D"1" =
height=3D"1" border=3D"0" alt=3D""></div><div =
class=3D"cnnUGCBoxFooter"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC=
/b_ugc_BL.gif" alt=3D"" width=3D"4" height=3D"4"><\/div>';=0A=
    	CNN_comment +=3D '		<\/div>';=0A=
=0A=
				if(xx =3D=3D displayNum)=0A=
				{=0A=
					CNN_comment+=3D'<\/div></div>';=0A=
				}=0A=
    }=0A=
=0A=
	return CNN_comment;=0A=
}=0A=
=0A=
//   story comments functions=0A=
//=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D END=0A=
=0A=
/* main page market box=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D */=0A=
/* called on focus */=0A=
function cnnMbChangeTxtClass( obj ) {=0A=
	if(obj.className =3D=3D 'cnnTxtMBGetQuote') {=0A=
		obj.value =3D '';=0A=
		obj.className =3D 'cnnTxtMBGetQuoteType';=0A=
	}=0A=
}=0A=
=0A=
/* called on blur */=0A=
function cnnMbCheckTxtClass( obj ) {=0A=
	if((obj.className =3D=3D 'cnnTxtMBGetQuoteType') && (obj.value =3D=3D =
'')) {=0A=
		obj.className =3D 'cnnTxtMBGetQuote';=0A=
		obj.value =3D 'enter symbol';=0A=
	}=0A=
}=0A=
/* end main page market box=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D */=0A=
=0A=
=0A=
/* main page more stories [previously 'other news']=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */=0A=
var cnnMpOnCurPage =3D 0;=0A=
var cnnMpOnNumPages =3D 5; // default number of pages - can be =
over-ridden in the page=0A=
=0A=
function cnnMpOnBlur( lnk ) {=0A=
	try {=0A=
		lnk.blur();=0A=
	} catch(e) {};=0A=
}=0A=
=0A=
function cnnMpOnJumpTo( intPage, lnk ) {=0A=
	cnnMpOnBlur(lnk);=0A=
	if(cnnMpOnCurPage !=3D intPage) {=0A=
		var fadeOutId =3D 'cnnOnSects' + cnnMpOnCurPage;=0A=
		var fadeInId =3D 'cnnOnSects' + intPage;=0A=
		cnnMpOnTransition( fadeInId, fadeOutId );=0A=
		cnnMpOnCurPage =3D intPage;=0A=
		cnnMpOnUpdateBtns();=0A=
	}=0A=
}=0A=
=0A=
function cnnMpOnPrev(lnk) {=0A=
	cnnMpOnBlur(lnk);=0A=
	if(cnnMpOnCurPage > 0) {=0A=
		var fadeOutId =3D 'cnnOnSects' + cnnMpOnCurPage;=0A=
		var fadeInId =3D 'cnnOnSects' + (cnnMpOnCurPage - 1);=0A=
		cnnMpOnTransition( fadeInId, fadeOutId );=0A=
		cnnMpOnCurPage--;=0A=
		cnnMpOnUpdateBtns();=0A=
	}=0A=
}=0A=
=0A=
function cnnMpOnNext(lnk) {=0A=
	cnnMpOnBlur(lnk);=0A=
	if(cnnMpOnCurPage < (cnnMpOnNumPages-1)) {=0A=
		var fadeOutId =3D 'cnnOnSects' + cnnMpOnCurPage;=0A=
		var fadeInId =3D 'cnnOnSects' + (cnnMpOnCurPage + 1);=0A=
		cnnMpOnTransition( fadeInId, fadeOutId );=0A=
		cnnMpOnCurPage++;=0A=
		cnnMpOnUpdateBtns();=0A=
	}=0A=
}=0A=
=0A=
=0A=
=0A=
function cnnMpOnTransition( fadeInId, fadeOutId ) {=0A=
	new Effect.Fade(fadeOutId,=0A=
		{ duration: 1.7=0A=
		});=0A=
	new Effect.Appear(fadeInId);=0A=
}=0A=
=0A=
=0A=
function cnnMpOnUpdateBtns() {=0A=
	// left btn=0A=
	if(cnnMpOnCurPage > 0) {=0A=
		$('cnnMpOnL').style.cursor =3D'auto';=0A=
		$('cnnMpOnL').src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/left_re=
d_btn.gif';=0A=
		$('cnnMpOnL').onmouseover =3D function() =
{this.src=3D'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_=
news/left_red_over_btn.gif';}=0A=
		$('cnnMpOnL').onmouseout =3D function() =
{this.src=3D'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_=
news/left_red_btn.gif';}=0A=
	}=0A=
	else {=0A=
		$('cnnMpOnL').style.cursor =3D'default';=0A=
		$('cnnMpOnL').src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/left_gr=
ay_btn.gif';=0A=
		$('cnnMpOnL').onmouseover =3D function() {}=0A=
		$('cnnMpOnL').onmouseout =3D function() {}=0A=
	}=0A=
=0A=
	// move the dot=0A=
	for(i=3D0;i<cnnMpOnNumPages;i++) {=0A=
		$('cnnMpOnDot'+i).src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/gray_st=
atus.gif';=0A=
		$('cnnMpOnDot'+i).onmouseover =3D function() {this.src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/gray_ac=
tive_status.gif';}=0A=
		$('cnnMpOnDot'+i).onmouseout =3D function() {this.src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/gray_st=
atus.gif';}=0A=
	}=0A=
	$('cnnMpOnDot'+cnnMpOnCurPage).src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/gray_ac=
tive_status.gif';=0A=
	$('cnnMpOnDot'+cnnMpOnCurPage).onmouseover =3D function() {}=0A=
	$('cnnMpOnDot'+cnnMpOnCurPage).onmouseout =3D function() {}=0A=
=0A=
	// right btn=0A=
	if(cnnMpOnCurPage < (cnnMpOnNumPages-1)) {=0A=
		$('cnnMpOnR').src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/right_r=
ed_btn.gif';=0A=
		$('cnnMpOnR').onmouseover =3D function() =
{this.src=3D'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_=
news/right_red_over_btn.gif';}=0A=
		$('cnnMpOnR').onmouseout =3D function() =
{this.src=3D'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_=
news/right_red_btn.gif';}=0A=
	}=0A=
	else {=0A=
		$('cnnMpOnR').src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/right_g=
ray_btn.gif';=0A=
		$('cnnMpOnR').onmouseover =3D function() {}=0A=
		$('cnnMpOnR').onmouseout =3D function() {}=0A=
	}=0A=
}=0A=
=0A=
function cnnInitOtherNews() {=0A=
	// must use javascript to initially hide or scriptaculous effect won't =
work=0A=
	for(i=3D0;i<8;i++) { // setting a max possible of 8 pages here=0A=
		if($('cnnOnSects' + i)) {=0A=
			$('cnnOnSects' + i).style.display =3D 'none';=0A=
		}=0A=
	}=0A=
	cnnDrawOnButtons();=0A=
	$('cnnOnSects0').style.display =3D 'block';=0A=
	$('cnnOtherNews').style.display =3D 'block';=0A=
}=0A=
=0A=
function cnnDrawOnButtons() {=0A=
	var str =3D '';=0A=
	str +=3D '<a href=3D"javascript:void(0);" =
onclick=3D"javascript:cnnMpOnPrev(this);return false;"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/l=
eft_gray_btn.gif" alt=3D"" class=3D"cnnONBtn" border=3D"0" height=3D"19" =
width=3D"26" id=3D"cnnMpOnL"></a>';=0A=
	str +=3D '<a href=3D"javascript:void(0);" =
onclick=3D"javascript:cnnMpOnJumpTo(0,this);return false;"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/g=
ray_active_status.gif" class=3D"cnnONStatus" alt=3D"" border=3D"0" =
height=3D"5" width=3D"5" id=3D"cnnMpOnDot0"></a>';=0A=
	for(i=3D1;i<cnnMpOnNumPages;i++) {=0A=
		str +=3D '<a href=3D"javascript:void(0);" =
onclick=3D"javascript:cnnMpOnJumpTo(' + i + ',this);return false;"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/g=
ray_status.gif" =
onmouseover=3D"this.src=3D\'http://i.cdn.turner.com/cnn/.element/img/2.0/=
content/in_the_news/gray_active_status.gif\'" =
onmouseout=3D"this.src=3D\'http://i.cdn.turner.com/cnn/.element/img/2.0/c=
ontent/in_the_news/gray_status.gif\'" class=3D"cnnONStatus" alt=3D"" =
border=3D"0" height=3D"5" width=3D"5" id=3D"cnnMpOnDot'+ i +'"></a>';=0A=
	}=0A=
	str +=3D '<a href=3D"javascript:void(0);" =
onclick=3D"javascript:cnnMpOnNext(this);return false;"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/r=
ight_red_btn.gif" alt=3D"" =
onmouseover=3D"this.src=3D\'http://i.cdn.turner.com/cnn/.element/img/2.0/=
content/in_the_news/right_red_over_btn.gif\'" =
onmouseout=3D"this.src=3D\'http://i.cdn.turner.com/cnn/.element/img/2.0/c=
ontent/in_the_news/right_red_btn.gif\'" class=3D"cnnONBtn" border=3D"0" =
height=3D"19" width=3D"26" id=3D"cnnMpOnR"></a>';=0A=
	$('cnnONBtns').innerHTML =3D str;=0A=
}=0A=
/* end main page more stories=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */=0A=
=0A=
=0A=
/* international home page bullet bins=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */=0A=
=0A=
var cnnIntlMoreNewsLock =3D false;=0A=
var strIntlMoreBtns1 =3D '<img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/l=
eft_gray_btn.gif" width=3D"26" height=3D"19" border=3D"0" =
class=3D"cnnIntlBtnL"><a =
href=3D"javascript:cnnIntlMoreNewsGoToPage(\'2\');"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/r=
ight_red_btn.gif" width=3D"26" height=3D"19" border=3D"0" =
class=3D"cnnIntlBtnR" =
onmouseover=3D"this.src=3D\'http://i.cdn.turner.com/cnn/.element/img/2.0/=
content/in_the_news/right_red_over_btn.gif\'" =
onmouseout=3D"this.src=3D\'http://i.cdn.turner.com/cnn/.element/img/2.0/c=
ontent/in_the_news/right_red_btn.gif\'"></a>';=0A=
var strIntlMoreBtns2 =3D '<a =
href=3D"javascript:cnnIntlMoreNewsGoToPage(\'1\');"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/l=
eft_red_btn.gif" width=3D"26" height=3D"19" border=3D"0" =
class=3D"cnnIntlBtnL" =
onmouseover=3D"this.src=3D\'http://i.cdn.turner.com/cnn/.element/img/2.0/=
content/in_the_news/left_red_over_btn.gif\'" =
onmouseout=3D"this.src=3D\'http://i.cdn.turner.com/cnn/.element/img/2.0/c=
ontent/in_the_news/left_red_btn.gif\'"></a><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/r=
ight_gray_btn.gif" class=3D"cnnIntlBtnR" width=3D"26" height=3D"19" =
border=3D"0">';=0A=
=0A=
function cnnInitIntlBullets() {=0A=
	$('cnnMoreNewsTab1').style.display =3D "block";=0A=
	$('cnnMoreNewsTab2').style.display =3D "none";=0A=
	$('cnnIntlMoreNewsBtns').innerHTML =3D strIntlMoreBtns1;=0A=
	$('cnnIntlMoreNews').style.display =3D "block";=0A=
}=0A=
=0A=
function cnnIntlMoreNewsGoToPage( strPage ) {=0A=
	if(!cnnIntlMoreNewsLock){=0A=
		var gotopage =3D eval('strIntlMoreBtns' + strPage);=0A=
		$('cnnIntlMoreNewsBtns').innerHTML =3D gotopage;=0A=
		switch(strPage) {=0A=
			case '1':=0A=
				fadeInId =3D 'cnnMoreNewsTab' + strPage;=0A=
				fadeOutId =3D 'cnnMoreNewsTab' + '2';=0A=
				cnnIntlMoreNewsLock =3D true;=0A=
				cnnMpOnTransition( fadeInId, fadeOutId );=0A=
				setTimeout("cnnIntlMoreNewsLock =3D false;",1700);=0A=
				break;=0A=
			case '2':=0A=
				fadeInId =3D 'cnnMoreNewsTab' + strPage;=0A=
				fadeOutId =3D 'cnnMoreNewsTab' + '1';=0A=
				cnnIntlMoreNewsLock =3D true;=0A=
				cnnMpOnTransition( fadeInId, fadeOutId );=0A=
				setTimeout("cnnIntlMoreNewsLock =3D false;",1700);=0A=
				break;=0A=
			default:=0A=
				break;=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
/* end international home page bullet bins=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */=0A=
=0A=
=0A=
/* search functions=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */=0A=
=0A=
var cnnStrInvalidSrchMsg =3D 'Please enter a valid search term and try =
again.'+"\n"+'HTML, URLs, and Scripts are not allowed.';=0A=
=0A=
function cnnSearch( frm ) {=0A=
	if($('cnnHeadSrchTxt').value !=3D '') {=0A=
		if(!cnnVerifySearchString($('cnnHeadSrchTxt').value)) =
{alert(cnnStrInvalidSrchMsg);}=0A=
		else {=0A=
			var strSearchLoc =3D cnnGetSearchLoc();=0A=
			strSearchLoc +=3D 'query=3D' + cnnLeftTrim($('cnnHeadSrchTxt').value);=0A=
=0A=
			strSearchLoc +=3D '&';=0A=
			strSearchLoc +=3D 'type=3D' + $('cnnHeadSrchType').value;=0A=
			strSearchLoc +=3D '&';=0A=
			strSearchLoc +=3D 'sortBy=3Ddate';=0A=
			if(location.hostname.indexOf('edition') < 0) {=0A=
				strSearchLoc +=3D '&';=0A=
				strSearchLoc +=3D 'intl=3Dfalse';=0A=
			} else {=0A=
				strSearchLoc +=3D '&';=0A=
				strSearchLoc +=3D 'intl=3Dtrue';=0A=
			}=0A=
			location.href =3D strSearchLoc;=0A=
		}=0A=
	}=0A=
	return false;=0A=
}=0A=
=0A=
function cnnVerifySearchString( srchTerm ) {=0A=
	var htmlRegEx =3D new =
RegExp('[\w*|\W*]*<[[\w*|\W*]*|/[\w*|\W*]]>[\w*|\W*]*');=0A=
=0A=
	if(htmlRegEx.exec(srchTerm) || (srchTerm =3D=3D null) || =
(cnnLeftTrim(srchTerm).length =3D=3D 0) || (srchTerm.indexOf(">") >=3D =
0) || (srchTerm.indexOf(";") >=3D 0) ){=0A=
		return false;=0A=
	}=0A=
	else return true;=0A=
}=0A=
=0A=
function cnnGetSearchLoc() {=0A=
	var strSearchLoc =3D 'http://search.cnn.com/search.jsp?'; // default=0A=
=0A=
	if(location.hostname.indexOf('qai') !=3D -1) {=0A=
		strSearchLoc =3D 'http://search.qai.cnn.com/cnnrelaunch/search.jsp?'=0A=
	}=0A=
	else if(location.hostname.indexOf('beta') !=3D -1) {=0A=
		strSearchLoc =3D 'http://search.cnn.com/search.jsp?'=0A=
	}=0A=
=0A=
	return strSearchLoc;=0A=
}=0A=
=0A=
function cnnLeftTrim(sString) {=0A=
	while (sString.substring(0,1) =3D=3D ' ') {=0A=
		sString =3D sString.substring(1, sString.length);=0A=
	}=0A=
	return sString;=0A=
}=0A=
=0A=
function cnnFootSearch( frm ) {=0A=
	if($('cnnFootSrchTxt').value !=3D '') {=0A=
		if(!cnnVerifySearchString($('cnnFootSrchTxt').value)) =
{alert(cnnStrInvalidSrchMsg);}=0A=
		else {=0A=
=0A=
			var strSearchLoc =3D cnnGetSearchLoc();=0A=
			strSearchLoc +=3D 'query=3D' + cnnLeftTrim($('cnnFootSrchTxt').value);=0A=
			strSearchLoc +=3D '&';=0A=
			strSearchLoc +=3D 'type=3Dweb';=0A=
			strSearchLoc +=3D '&';=0A=
			strSearchLoc +=3D 'sortBy=3Ddate';=0A=
			if(location.hostname.indexOf('edition') < 0) {=0A=
				strSearchLoc +=3D '&';=0A=
				strSearchLoc +=3D 'intl=3Dfalse';=0A=
			} else {=0A=
				strSearchLoc +=3D '&';=0A=
				strSearchLoc +=3D 'intl=3Dtrue';=0A=
			}=0A=
			location.href =3D strSearchLoc;=0A=
		}=0A=
	}=0A=
	return false;=0A=
}=0A=
=0A=
function cnnUpdateSrchType( searchType ) {=0A=
	if($('cnnHeadSrchType')) {=0A=
		$('cnnHeadSrchType').value =3D searchType;=0A=
	}=0A=
	cnnUpdateSrchTypeLnks( searchType );=0A=
}=0A=
=0A=
function cnnUpdateSrchTypeLnks( searchType ) {=0A=
	if($('cnnHeadSrchTypeArea')) {=0A=
		switch(searchType) {=0A=
			case 'web':=0A=
				$('cnnHeadSrchTypeArea').innerHTML =3D '<span =
class=3D"cnnSearchLabel">Web</span> | <a =
href=3D"javascript:cnnUpdateSrchType(\'news\');">CNN News</a> | <a =
href=3D"javascript:cnnUpdateSrchType(\'video\');">CNN Videos</a>';=0A=
				break;=0A=
			case 'news':=0A=
				$('cnnHeadSrchTypeArea').innerHTML =3D '<a =
href=3D"javascript:cnnUpdateSrchType(\'web\');">Web</a> | <span =
class=3D"cnnSearchLabel">CNN News</span> | <a =
href=3D"javascript:cnnUpdateSrchType(\'video\');">CNN Videos</a>';=0A=
				break;=0A=
			case 'video':=0A=
				$('cnnHeadSrchTypeArea').innerHTML =3D '<a =
href=3D"javascript:cnnUpdateSrchType(\'web\');">Web</a> | <a =
href=3D"javascript:cnnUpdateSrchType(\'news\');">CNN News</a> | <span =
class=3D"cnnSearchLabel">CNN Videos</span>';=0A=
				break;=0A=
			default:=0A=
				break;=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
/* end search functions=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */=0A=
=0A=
/* cnn live video popup=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */=0A=
var cnnVidServer =3D '';=0A=
function cnnLiveVideo( strWhich ) {=0A=
	if(!strWhich) {=0A=
		strWhich =3D '1';=0A=
	}=0A=
	var strVidLoc =3D cnnVidServer + =
'/video/live/live.html?stream=3Dstream' + strWhich;=0A=
	=
javascript:CNN_openPopup(strVidLoc,'liveplayer','toolbar=3Dno,location=3D=
no,directories=3Dno,status=3Dno,menubar=3Dno,scrollbars=3Dno,resizable=3D=
yes,width=3D672,height=3D540')=0A=
}=0A=
/* end cnn live video popup=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */=0A=
=0A=
=0A=
function cnnVideo(mode, arg, expiration) {=0A=
	video_url =3D '/video/#' + arg;=0A=
=0A=
	if(mode =3D=3D 'live') { cnnLiveVideo(arg); }=0A=
	else if(top.location =3D=3D self.location) { location.href =3D =
video_url; }=0A=
	else { vid_win =3D window.open(video_url, 'vid_win'); }=0A=
}=0A=
=0A=
=0A=
/* main page video box (domestic & intl)=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */=0A=
var cnnMpVpCurPage =3D 1;=0A=
var cnnMpVpLock =3D false;=0A=
function cnnMpVpBlur( lnk ) {=0A=
	try {=0A=
		lnk.blur();=0A=
	} catch(e) {};=0A=
}=0A=
/*=0A=
 * cnnMpVpNext() and cnnMpVpPrev()=0A=
 * are called from previous and next buttons=0A=
 */=0A=
function cnnMpVpNext( lnk ) {=0A=
	cnnMpVpBlur( lnk );=0A=
	if((cnnMpVpCurPage < 3)&&(!cnnMpVpLock)) {=0A=
		cnnMpVpSlideLeft();=0A=
	}=0A=
}=0A=
=0A=
function cnnMpVpPrev( lnk ) {=0A=
	cnnMpVpBlur( lnk );=0A=
	if((cnnMpVpCurPage > 1)&&(!cnnMpVpLock)) {=0A=
		cnnMpVpSlideRight();=0A=
	}=0A=
}=0A=
=0A=
/*=0A=
 * cnnMpVpPage( intPage )=0A=
 * called from clicking on gray dot icon=0A=
 */=0A=
function cnnMpVpPage( intPage, lnk ) {=0A=
	cnnMpVpBlur( lnk );=0A=
	if((cnnMpVpCurPage !=3D intPage)&&(!cnnMpVpLock)) {=0A=
		if(cnnMpVpCurPage < intPage) {=0A=
			if((intPage - cnnMpVpCurPage) > 1) {=0A=
				cnnMpVpSlideDoubleLeft();=0A=
			}=0A=
			else {=0A=
				cnnMpVpSlideLeft();=0A=
			}=0A=
		}=0A=
		else {=0A=
			if((cnnMpVpCurPage - intPage) > 1) {=0A=
				cnnMpVpSlideDoubleRight();=0A=
			}=0A=
			else {=0A=
				cnnMpVpSlideRight();=0A=
			}=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
function cnnLockMpVp( intDur ) {=0A=
	var cnnLockDur =3D intDur * 100;=0A=
	cnnMpVpLock =3D true;=0A=
	setTimeout(function() { cnnMpVpLock =3D false; },cnnLockDur);=0A=
}=0A=
function cnnMpVpSlideLeft() {=0A=
	cnnLockMpVp(3);=0A=
	new Effect.MoveBy( 'cnnMpVidCtnt0', 0, -336 , {duration: 0.3} );=0A=
	new Effect.MoveBy( 'cnnMpVidCtnt1', 0, -336 , {duration: 0.3} );=0A=
	new Effect.MoveBy( 'cnnMpVidCtnt2', 0, -336 , {duration: 0.3} );=0A=
	cnnMpVpCurPage++;=0A=
	cnnMpVpMoveDot();=0A=
	cnnMpVpUpdateBtns();=0A=
}=0A=
=0A=
function cnnMpVpSlideDoubleLeft() {=0A=
	cnnLockMpVp(6);=0A=
	new Effect.MoveBy( 'cnnMpVidCtnt0', 0, -672 , {duration: 0.6} );=0A=
	new Effect.MoveBy( 'cnnMpVidCtnt1', 0, -672 , {duration: 0.6} );=0A=
	new Effect.MoveBy( 'cnnMpVidCtnt2', 0, -672 , {duration: 0.6} );=0A=
	cnnMpVpCurPage++;=0A=
	cnnMpVpCurPage++;=0A=
	cnnMpVpMoveDot();=0A=
	cnnMpVpUpdateBtns();=0A=
}=0A=
=0A=
function cnnMpVpSlideRight() {=0A=
	cnnLockMpVp(3);=0A=
	new Effect.MoveBy( 'cnnMpVidCtnt0', 0, 336 , {duration: 0.3} );=0A=
	new Effect.MoveBy( 'cnnMpVidCtnt1', 0, 336 , {duration: 0.3} );=0A=
	new Effect.MoveBy( 'cnnMpVidCtnt2', 0, 336 , {duration: 0.3} );=0A=
	cnnMpVpCurPage--;=0A=
	cnnMpVpMoveDot();=0A=
	cnnMpVpUpdateBtns();=0A=
}=0A=
=0A=
function cnnMpVpSlideDoubleRight() {=0A=
	cnnLockMpVp(6);=0A=
	new Effect.MoveBy( 'cnnMpVidCtnt0', 0, 672 , {duration: 0.6} );=0A=
	new Effect.MoveBy( 'cnnMpVidCtnt1', 0, 672 , {duration: 0.6} );=0A=
	new Effect.MoveBy( 'cnnMpVidCtnt2', 0, 672 , {duration: 0.6} );=0A=
	cnnMpVpCurPage--;=0A=
	cnnMpVpCurPage--;=0A=
	cnnMpVpMoveDot();=0A=
	cnnMpVpUpdateBtns();=0A=
}=0A=
=0A=
function cnnMpDotMouseOver( id ) {=0A=
	$(id).src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/gray_ac=
tive_status.gif';=0A=
}=0A=
=0A=
// image change functions=0A=
function cnnMpVpMoveDot() {=0A=
	for(i=3D1;i<4;i++) {=0A=
		$('cnnMpVidDot'+i).src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/gray_st=
atus.gif';=0A=
		$('cnnMpVidDot'+i).onmouseover =3D function() {this.src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/gray_ac=
tive_status.gif';}=0A=
		$('cnnMpVidDot'+i).onmouseout =3D function() {this.src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/gray_st=
atus.gif';}=0A=
	}=0A=
	$('cnnMpVidDot'+cnnMpVpCurPage).src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/gray_ac=
tive_status.gif';=0A=
	$('cnnMpVidDot'+cnnMpVpCurPage).onmouseover =3D function() {}=0A=
	$('cnnMpVidDot'+cnnMpVpCurPage).onmouseout =3D function() {}=0A=
}=0A=
function cnnMpVpUpdateBtns() {=0A=
	if(cnnMpVpCurPage > 1) {=0A=
		$('cnnMpVidBtnL').style.cursor =3D'auto';=0A=
		$('cnnMpVidBtnL').src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/left_re=
d_btn.gif';=0A=
		$('cnnMpVidBtnL').onmouseover =3D function() { =
this.src=3D'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_n=
ews/left_red_over_btn.gif'; }=0A=
		$('cnnMpVidBtnL').onmouseout =3D function() { =
this.src=3D'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_n=
ews/left_red_btn.gif'; }=0A=
	}=0A=
	else {=0A=
		$('cnnMpVidBtnL').style.cursor =3D'default';=0A=
		$('cnnMpVidBtnL').src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/left_gr=
ay_btn.gif';=0A=
		$('cnnMpVidBtnL').onmouseover =3D function() {}=0A=
		$('cnnMpVidBtnL').onmouseout =3D function() {}=0A=
	}=0A=
=0A=
	if(cnnMpVpCurPage < 3) {=0A=
		$('cnnMpVidBtnR').style.cursor =3D'auto';=0A=
		$('cnnMpVidBtnR').src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/right_r=
ed_btn.gif';=0A=
		$('cnnMpVidBtnR').onmouseover =3D function() {this.src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/right_r=
ed_over_btn.gif';}=0A=
		$('cnnMpVidBtnR').onmouseout =3D function() {this.src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/right_r=
ed_btn.gif';}=0A=
	}=0A=
	else {=0A=
		$('cnnMpVidBtnR').style.cursor =3D'default';=0A=
		$('cnnMpVidBtnR').src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/right_g=
ray_btn.gif';=0A=
		$('cnnMpVidBtnR').onmouseover =3D function() {}=0A=
		$('cnnMpVidBtnR').onmouseout =3D function() {}=0A=
	}=0A=
}=0A=
/* end main page video box=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */=0A=
=0A=
=0A=
/* intl market box=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */=0A=
function cnnWbMarkets( intWhich ) {=0A=
	for(i=3D1;i<4;i++) {=0A=
		if(i=3D=3DintWhich) {=0A=
			$('cnnWbMarkets' + i).style.display =3D 'block';=0A=
			$('cnnWbMarketsTab' + i).className =3D 'active';=0A=
		}=0A=
		else {=0A=
			$('cnnWbMarkets' + i).style.display =3D 'none';=0A=
			$('cnnWbMarketsTab' + i).className =3D '';=0A=
		}=0A=
	}=0A=
}=0A=
/* end intl market box=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */=0A=
=0A=
=0A=
=0A=
function cnnMosaicLoadGal( gal, lnk ) {=0A=
var cnn_gallery_config =3D (location.hostname.indexOf('edition.') > -1) =
? 'intl' : 'www';=0A=
if ( new CNN_FlashDetect().detectVersion( 6 ) ) {=0A=
var cnn_Photos =3D new CNN_FlashObject( "cnnPhotos2", =
"http://i.cdn.turner.com/cnn/.element/swf/2.0/gallery/image.gallery.swf",=
 585, 425, null, =
"galleryUrl=3D"+gal+"&configUrl=3Dhttp://i.cdn.turner.com/cnn/.element/ss=
i/"+cnn_gallery_config+"/misc/2.0/omni/config.xml&emailHandler=3DonEmailC=
licked&pageType=3Dmosaic&pageURL=3D"+window.location.pathname);=0A=
cnn_Photos.writeMosaicHtml('cnnPhotoPlayer');=0A=
} else {=0A=
CNN_noFlash();=0A=
}=0A=
=0A=
	// change the id=0A=
	if($('cnnCurGal')) {=0A=
		$('cnnCurGal').id =3D '';=0A=
	}=0A=
	lnk.parentNode.parentNode.id =3D 'cnnCurGal';=0A=
=0A=
}=0A=
=0A=
function cnnMosaicSelGalTab( intTab ) {=0A=
	// change the tabs=0A=
	for(i=3D1;i<7;i++) {=0A=
		if($('cnnPT'+i)) {=0A=
			tabObj =3D $('cnnPT'+i);=0A=
			if(i !=3D intTab) {=0A=
				tabObj.className =3D '';=0A=
			}=0A=
			else {=0A=
				tabObj.className =3D 'cnnPTCurrent';=0A=
			}=0A=
		}=0A=
	}=0A=
=0A=
	// show/hide the sections=0A=
	for(i=3D1;i<7;i++) {=0A=
		if($('cnnPPSect'+i)) {=0A=
			obj =3D $('cnnPPSect'+i);=0A=
			if(i !=3D intTab) {=0A=
				obj.style.display =3D 'none';=0A=
			}=0A=
			else {=0A=
				obj.style.display =3D 'block';=0A=
			}=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
/* minor topic search */=0A=
function cnnUpdateMtSrch(obj){=0A=
	obj.value=3D'';=0A=
	obj.style.color=3D(obj.style.color=3D=3D""?"#000000":"")=0A=
}=0A=
=0A=
/* local box main page */=0A=
function cnnUpdateTxtElem(obj, strTxt) {=0A=
	if(obj.value =3D=3D strTxt) {=0A=
		obj.value=3D'';=0A=
		obj.style.color=3D(obj.style.color=3D=3D""?"#000":"");=0A=
	}=0A=
	else if(obj.value =3D=3D '') {=0A=
		obj.value =3D strTxt;=0A=
		obj.style.color=3D(obj.style.color=3D=3D""?"#ccc":"");=0A=
	}// else user entered something, leave it alone=0A=
}=0A=
=0A=
/* breaking news banners=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */=0A=
function cnnRenderGenericBanner(object,flashURL,leftColor,rightColor)=0A=
{=0A=
	if (allCookies['cnnLastClosedBannerId'] =3D=3D object.id)=0A=
	{=0A=
		// don't render anything if the banner has been closed.=0A=
		return '';=0A=
	}=0A=
=0A=
	var myHtml =3D '<div id=3D"cnnBannerContent"><div id=3D"cnnBannerTopic" =
class=3D"'+leftColor+'">';=0A=
=0A=
	if (!(object.type =3D=3D 'Live Breaking News' || object.type =3D=3D =
'Live Developing Story') || !(new CNN_FlashDetect().detectVersion( 8 )))=0A=
	{=0A=
		myHtml +=3D '<div id=3D"cnnBannerHeader"><div =
id=3D"cnnBannerHeaderTxt">'+object.title+'<\/div><\/div>';=0A=
	}=0A=
	else=0A=
	{=0A=
		leftColor =3D 'cnnTransparent';// put transparency behind swf files=0A=
		myHtml =3D '<div id=3D"cnnBannerContent"><div id=3D"cnnBannerTopic" =
class=3D"'+leftColor+'">';=0A=
		var cnn_AnimatedBanner =3D new CNN_FlashObject( =
"cnnAnimatedBannerTitle", flashURL, 211, 73, null, { bn_title: =
object.title } );=0A=
		myHtml +=3D cnn_AnimatedBanner.getHtml();=0A=
	}=0A=
=0A=
	myHtml +=3D '<\/div><div id=3D"cnnBannerBox" class=3D"'+rightColor+'">';=0A=
	myHtml +=3D '<div id=3D"cnnBannerBoxContent"><a href=3D"#" =
onMouseOver=3D"cnnImgSwap(this,1);" onMouseOut=3D"cnnImgSwap(this,0);" =
onClick=3D"CNN_setCookie(\'cnnLastClosedBannerId\',\''+object.id+'\'); =
$(\'cnnBannerContainer\').hide(); return true;"><img =
class=3D"cnnCloseBtn" name=3D"cnnBannerCloseBtn" =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/content/live_news/ban=
ner_'+rightColor.substring(3).toLowerCase()+'_btn.gif" width=3D"14" =
height=3D"14" alt=3D"" /><\/a>';=0A=
=0A=
	if ((object.type =3D=3D 'Live Breaking News' || object.type =3D=3D =
'Live Developing Story' || object.type =3D=3D 'Live Election Coverage') =
&& object.image.length > 0)=0A=
	{=0A=
		myHtml +=3D '<img class=3D"cnnBannerPhoto" src=3D"'+object.image+'" =
width=3D"87" height=3D"49" alt=3D"" />';=0A=
	}=0A=
	=0A=
	myHtml +=3D '<div id=3D"cnnBannerHeadline"';=0A=
	if (object.size =3D=3D 'small')=0A=
	{=0A=
		myHtml +=3D ' class=3D"small"';=0A=
	}=0A=
	myHtml +=3D '>'+object.content;=0A=
	if((object.options) && (object.options !=3D '') && (object.type =3D=3D =
'Breaking News')) {// email link=0A=
		myHtml +=3D '<span class=3D"cnnBnEmailLnk"><a =
href=3D"http://audience.cnn.com/services/cnn/login.do?iref=3DBNemail&url=3D=
http%3A%2F%2Faudience.cnn.com%2Fservices%2Fcnn%2Fregwall%2Fmembercenter.d=
o ">Get Breaking News by e-mail</a></span>';=0A=
	}=0A=
	myHtml +=3D '<\/div>';=0A=
	if (object.pipe !=3D 0 || object.tv !=3D 0)=0A=
	{=0A=
		myHtml +=3D '<div id=3D"cnnBannerWatchNow">Watch Now: ';=0A=
		if (object.tv !=3D 0)=0A=
		{=0A=
			myHtml +=3D 'on CNN TV';=0A=
			if (object.pipe !=3D 0)=0A=
			{=0A=
				myHtml +=3D ' <span class=3D"cnnGreyTxt">or <\/span>';=0A=
			}=0A=
		}=0A=
		if (object.pipe !=3D 0)=0A=
		{=0A=
			myHtml +=3D '<a =
href=3D"javascript:cnnLiveVideo(\''+object.pipe+'\');">Live on CNN.com =
&raquo;<\/a>';=0A=
		}=0A=
		myHtml +=3D '<\/div>';=0A=
	}=0A=
=0A=
	myHtml +=3D '<\/div><\/div><\/div><div class=3D"cnnPad12Top" =
style=3D"clear:both;"> <\/div>';=0A=
=0A=
	return myHtml;=0A=
}=0A=
=0A=
function cnnRenderDomesticBanner(object){=0A=
	var =
flashURL=3D'http://i.cdn.turner.com/cnn/.element/swf/2.0/breaking_news/bn=
_dom.swf';=0A=
	var leftColor=3D'';=0A=
	var rightColor=3D'';=0A=
	switch (object.type) {=0A=
		case 'Live Breaking =
News':leftColor=3D'cnnRed';rightColor=3D'cnnBlack';break;=0A=
		case 'Breaking =
News':leftColor=3D'cnnBlack';rightColor=3D'cnnRed';break;=0A=
		case 'Live Developing =
Story':leftColor=3D'cnnYellow';rightColor=3D'cnnBlack';flashURL=3D'http:/=
/i.cdn.turner.com/cnn/.element/swf/2.0/breaking_news/bn_dev.swf';break;=0A=
		case 'Developing =
Story':leftColor=3D'cnnBlack';rightColor=3D'cnnYellow';break;=0A=
		case 'Watch Now':leftColor=3D'cnnBlue';rightColor=3D'cnnBlue';break;=0A=
		case 'Live Election =
Coverage':leftColor=3D'cnnBlackElex';rightColor=3D'cnnDrkBlue';break;=0A=
		default:return '';=0A=
	}=0A=
	return cnnRenderGenericBanner(object,flashURL,leftColor,rightColor);=0A=
}=0A=
=0A=
function cnnRenderInternationalBanner(object){=0A=
	var =
flashURL=3D'http://i.cdn.turner.com/cnn/.element/swf/2.0/breaking_news/bn=
_int.swf';=0A=
	var leftColor=3D'';=0A=
	var rightColor=3D'cnnYellow';=0A=
	switch (object.type) {=0A=
		case 'Live Breaking =
News':leftColor=3D'cnnYellow';rightColor=3D'cnnBlack';break;=0A=
		case 'Breaking News':leftColor=3D'cnnBlack';break;=0A=
		case 'Live Developing =
Story':leftColor=3D'cnnYellow';rightColor=3D'cnnBlack';flashURL=3D'http:/=
/i.cdn.turner.com/cnn/.element/swf/2.0/breaking_news/bn_dev.swf';break;=0A=
		case 'Developing Story':leftColor=3D'cnnBlack';break;=0A=
		case 'Watch Now':leftColor=3D'cnnBlue';rightColor=3D'cnnBlue';break;=0A=
		default:return '';=0A=
	}=0A=
	return cnnRenderGenericBanner(object,flashURL,leftColor,rightColor);=0A=
}=0A=
=0A=
/* end breaking news banners=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */=0A=
=0A=
=0A=
/* global event handlers=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */=0A=
function cnnMouseDown(e) {=0A=
	if (cnnDropdownOpen) cnnDD.mouseDownBody(e);=0A=
	if (cnnOverlayMenuOpen) cnnOverlayMouseDownBody(e);=0A=
	return true;=0A=
}=0A=
/* end global event handlers=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */=0A=
=0A=
=0A=
/* styled overlay menus=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */=0A=
var cnnOverlayOpenId =3D "";=0A=
var cnnOverlayClickedId =3D "";=0A=
var cnnOverlayMenuOpen =3D false;=0A=
=0A=
// Map menu id's to button classes, for determining later on if the =
current menu=0A=
// is one with non-default behavior.=0A=
var cnnOverlayClass =3D [];=0A=
=0A=
=0A=
function cnnInitOverlay() {=0A=
	document.body.onmousedown =3D cnnMouseDown;=0A=
=0A=
	// Overlay menus with default behavior=0A=
	cnnAddOverlayEvents("cnnOverlayLnk");=0A=
=0A=
	// Add code here for overlay menus with non-default behavior=0A=
}=0A=
=0A=
=0A=
function cnnShowOverlay(menuId) {=0A=
	if ($(menuId)) {=0A=
		// If the menu is already open, close it=0A=
		if ($(menuId).style.display =3D=3D "block") {=0A=
			$(menuId).style.display =3D "none";=0A=
		}=0A=
		else {=0A=
			$(menuId).style.display =3D "block";=0A=
			cnnOverlayOpenId =3D menuId;=0A=
		    cnnOverlayMenuOpen =3D true;=0A=
			cnnOverlayClickedId =3D "";=0A=
		}=0A=
	}=0A=
=0A=
	// Add code here for overlay menus with non-default behavior=0A=
}=0A=
=0A=
=0A=
function cnnHideOverlay(menuId) {=0A=
	if ($(menuId)) {=0A=
		$(menuId).style.display =3D "none";=0A=
		cnnOverlayOpenId =3D '';=0A=
	    cnnOverlayMenuOpen =3D false;=0A=
	}=0A=
=0A=
	// Add code here for overlay menus with non-default behavior=0A=
}=0A=
=0A=
=0A=
function cnnGetOverlayMenuId(btn) {=0A=
	// Get the id parameter from href=3D"javascript:foo('myId')"=0A=
	return btn.href.substring(btn.href.indexOf("'") + 1, =
btn.href.lastIndexOf("'"));=0A=
}=0A=
=0A=
=0A=
function cnnAddOverlayEvents(btnClass) {=0A=
	var btnArray =3D document.getElementsByClassName(btnClass);=0A=
	for (var i =3D 0; i < btnArray.length; i++) {=0A=
		// button=0A=
		var btn =3D btnArray[i];=0A=
		btn.onmousedown =3D cnnOverlayMouseDownBtn;=0A=
=0A=
		// menu=0A=
		var menuId =3D cnnGetOverlayMenuId(btn);=0A=
		if ($(menuId)) {=0A=
			$(menuId).onmousedown =3D cnnOverlayMouseDownMenu;=0A=
		}=0A=
=0A=
		// Store the button class associated with the menu id=0A=
	    cnnOverlayClass[menuId] =3D btnClass;=0A=
=0A=
		// Mac Safari image-rollover bug=0A=
		if ((navigator.userAgent.indexOf("Safari") !=3D -1)=0A=
		 && (navigator.userAgent.indexOf("Mac") !=3D -1)) {=0A=
			// If cnnImgSwap() is called by the onmouseout event=0A=
			if (btn.onmouseout && btn.onmouseout.toString().indexOf("cnnImgSwap") =
!=3D -1) {=0A=
				// Make onclick call the onmouseout event handler=0A=
				btn.onclick =3D function onclick() { this.onmouseout(); return true; =
};=0A=
			}=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
=0A=
function cnnOverlayMouseDownBtn(e) {=0A=
	// Get the menu id=0A=
	var menuId =3D cnnGetOverlayMenuId(this);=0A=
	cnnOverlayClickedId =3D menuId;=0A=
	return true;=0A=
}=0A=
=0A=
=0A=
function cnnOverlayMouseDownMenu(e) {=0A=
	// Get the menu id=0A=
	cnnOverlayClickedId =3D this.id;=0A=
	return true;=0A=
}=0A=
=0A=
=0A=
function cnnOverlayMouseDownBody(e) {=0A=
	// Close the open overlay menu, unless the mouse is inside the menu=0A=
	// or the menu button.=0A=
	if (cnnOverlayOpenId !=3D cnnOverlayClickedId) {=0A=
		cnnHideOverlay(cnnOverlayOpenId);=0A=
	}=0A=
	cnnOverlayClickedId =3D "";=0A=
	return true;=0A=
}=0A=
/* end styled overlay menus=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */=0A=
=0A=
=0A=
/* styled dropdowns=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */=0A=
var cnnDropdownOpen =3D false;=0A=
=0A=
// CNN dropdown menu (JavaScript object literal)=0A=
var cnnDD =3D {=0A=
	curId: "", // id of currently-open dropdown=0A=
	ignoreMouseDownBody: false,=0A=
	menus: [],=0A=
=0A=
	rowHeight: 17,=0A=
	combinedBorderWidth: 20,=0A=
	scrollbarWidth: 18,=0A=
=0A=
	minMenuWidth: 105,=0A=
	maxMenuWidth: 400,=0A=
	defaultMenuWidth: 205,=0A=
	defaultRowWidth: 150,=0A=
	combinedRowLRPad: 18,=0A=
	scrollbarRPad: 12,=0A=
=0A=
=0A=
	buildDisabledDropdown: function(menuId, buttonWidth, buttonClass, =
hiddenListSuffix) {=0A=
		// default parameters=0A=
		if (!buttonWidth) buttonWidth =3D 140;=0A=
		if (!buttonClass) buttonClass =3D 'cnnDDWireLtg';=0A=
=0A=
		var wrapId =3D menuId + "_wrap";=0A=
		var listId =3D menuId + "_list" + (hiddenListSuffix ? '_' + =
hiddenListSuffix : '');=0A=
=0A=
		if ($(wrapId) && $(listId)) {=0A=
=0A=
			// hide the <select>=0A=
			$(listId).style.display =3D "none";=0A=
=0A=
			// Get the displayed value for the first select option=0A=
			var listItems =3D $(listId).options;=0A=
			var buttonText =3D listItems[0].innerHTML;=0A=
=0A=
			var buttonTextLPad =3D 10;=0A=
			var buttonTextRPad =3D 34;=0A=
			var buttonTextWidth =3D buttonWidth - (buttonTextLPad + =
buttonTextRPad);=0A=
=0A=
			var leftBgStyle =3D 'background:#fff =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/dropdowns/btn_ltg=
_left.gif) 0 0 no-repeat;';=0A=
			var rightBgStyle =3D =
'background:url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/dropd=
owns/btn_ltg_right.gif) 100% 0 no-repeat;';=0A=
=0A=
			switch (buttonClass) {=0A=
				case 'cnnDDWire':=0A=
					leftBgStyle =3D 'background:#fff =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/dropdowns/btn_wir=
e_left.gif) 0 0 no-repeat;';=0A=
					rightBgStyle =3D =
'background:url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/dropd=
owns/btn_wire_right.gif) 100% 0 no-repeat;';=0A=
					break;=0A=
				case 'cnnBlkBgWhtBox':=0A=
					leftBgStyle =3D 'background:#fff =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/dropdowns/btn_blk=
_left.gif) 0 0 no-repeat;';=0A=
					rightBgStyle =3D =
'background:url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/dropd=
owns/btn_blk_right.gif) 100% 0 no-repeat;';=0A=
					break;=0A=
			}=0A=
=0A=
=0A=
			// build content for the button=0A=
			var strContent =3D "\n\n\n\n";=0A=
			strContent +=3D '	<div class=3D"cnnDDContainer" =
style=3D"width:'+buttonWidth+'px;">'+"\n";=0A=
=0A=
			strContent +=3D '		<div class=3D"'+buttonClass+'">'+"\n";=0A=
			strContent +=3D '			<div class=3D"cnnDDBtn" onmousedown=3D"return =
cnnDD.mouseDownBtn(event, \''+menuId+'\');" onclick=3D"return =
cnnDD.open(\''+menuId+'\')" style=3D"'+rightBgStyle+'">'+"\n";=0A=
			strContent +=3D '				<table width=3D"'+buttonWidth+'" border=3D"0" =
cellspacing=3D"0" cellpadding=3D"0">'+"\n";=0A=
			strContent +=3D '					<tr>'+"\n";=0A=
			strContent +=3D '						<td width=3D"'+buttonTextLPad+'"><div =
class=3D"cnnDDBtnLeft" style=3D"'+leftBgStyle+'"></div></td>'+"\n";=0A=
			strContent +=3D '						<td width=3D"'+buttonTextWidth+'">'+"\n";=0A=
			strContent +=3D '							<div class=3D"cnnDDValueContainer">'+"\n";=0A=
			strContent +=3D '								<div id=3D"'+menuId+'_Val" =
class=3D"cnnDDValue" =
style=3D"width:'+buttonTextWidth+'px;color:#c5c5c5;">'+buttonText+'</div>=
'+"\n";=0A=
			strContent +=3D '						</td>'+"\n";=0A=
			strContent +=3D '						<td width=3D"'+buttonTextRPad+'"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/global/dropdowns/btn_=
icon_disabled.gif" alt=3D"" border=3D"0"></td>'+"\n";=0A=
			strContent +=3D '					</tr>'+"\n";=0A=
			strContent +=3D '				</table>'+"\n";=0A=
			strContent +=3D '			</div><!--/cnnDDBtn -->'+"\n\n";=0A=
			strContent +=3D '		</div><!--/'+buttonClass+' -->'+"\n\n";=0A=
=0A=
			strContent +=3D '	</div><!--/cnnDDContainer -->'+"\n";=0A=
			strContent +=3D "\n\n";=0A=
=0A=
			// draw the new content=0A=
			$(wrapId).innerHTML =3D strContent;=0A=
=0A=
			// reset the list=0A=
			$(listId).selectedIndex =3D 0;=0A=
=0A=
		}//else id of select not found [ abort ]=0A=
	},=0A=
=0A=
	buildDropdown: function(menuId, buttonWidth, menuWidth, numVisibleRows, =
buttonClass, hiddenListSuffix) {=0A=
		// default parameters=0A=
		if (!buttonWidth) buttonWidth =3D 140;=0A=
		if (!menuWidth) menuWidth =3D this.defaultMenuWidth;=0A=
		if (!numVisibleRows) numVisibleRows =3D 10;=0A=
		if (!buttonClass) buttonClass =3D 'cnnDDWireLtg';=0A=
=0A=
		if (menuWidth < this.minMenuWidth) menuWidth =3D this.minMenuWidth;=0A=
		if (menuWidth > this.maxMenuWidth) menuWidth =3D this.maxMenuWidth;=0A=
=0A=
		var wrapId =3D menuId + "_wrap";=0A=
		var listId =3D menuId + "_list" + (hiddenListSuffix ? '_' + =
hiddenListSuffix : '');=0A=
=0A=
		this.menus[menuId] =3D new Array();=0A=
		this.menus[menuId].listId =3D listId;=0A=
		this.menus[menuId].updateFirstRow =3D false;=0A=
=0A=
		if ($(wrapId) && $(listId)) {=0A=
			// hide the <select>=0A=
			$(listId).style.display =3D "none";=0A=
=0A=
			var displayedValue =3D new Array();=0A=
			var internalValue =3D new Array();=0A=
			var disabledRow =3D new Array();=0A=
=0A=
			var listItems =3D $(listId).options;=0A=
			for (var i=3D0;i<listItems.length;i++) {=0A=
				displayedValue[i] =3D listItems[i].innerHTML;=0A=
				internalValue[i] =3D listItems[i].value;=0A=
				disabledRow[i] =3D listItems[i].disabled;=0A=
			}=0A=
			var selectedRow =3D $(listId).selectedIndex;=0A=
=0A=
			// If no row was explicitly selected=0A=
			if (selectedRow =3D=3D 0) {=0A=
				// See if the first row matches one of the later rows=0A=
				for (i=3D1;i<displayedValue.length;i++) {=0A=
					if (displayedValue[i] =3D=3D displayedValue[0]) {=0A=
						selectedRow =3D i;=0A=
						this.menus[menuId].updateFirstRow =3D true;=0A=
						break;=0A=
					}=0A=
				}=0A=
			}=0A=
			var buttonText =3D displayedValue[selectedRow];=0A=
			var numRows =3D displayedValue.length;=0A=
=0A=
			var buttonTextLPad =3D 10;=0A=
			var buttonTextRPad =3D 34;=0A=
			var buttonTextWidth =3D buttonWidth - (buttonTextLPad + =
buttonTextRPad);=0A=
=0A=
			// minus left and right borders=0A=
			var fullRowWidth =3D menuWidth - this.combinedBorderWidth;=0A=
=0A=
			// without scrollbar=0A=
			var visibleRowsHeight =3D numRows * this.rowHeight;=0A=
			var rowWidth =3D fullRowWidth;=0A=
=0A=
			// with scrollbar=0A=
			if (numRows > numVisibleRows) {=0A=
				visibleRowsHeight =3D numVisibleRows * this.rowHeight;=0A=
				rowWidth -=3D 10;=0A=
			}=0A=
=0A=
			var leftBgStyle =3D 'background:#fff =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/dropdowns/btn_ltg=
_left.gif) 0 0 no-repeat;';=0A=
			var rightBgStyle =3D =
'background:url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/dropd=
owns/btn_ltg_right.gif) 100% 0 no-repeat;';=0A=
=0A=
			switch (buttonClass) {=0A=
				case 'cnnDDWire':=0A=
					leftBgStyle =3D 'background:#fff =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/dropdowns/btn_wir=
e_left.gif) 0 0 no-repeat;';=0A=
					rightBgStyle =3D =
'background:url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/dropd=
owns/btn_wire_right.gif) 100% 0 no-repeat;';=0A=
					break;=0A=
				case 'cnnBlkBgWhtBox':=0A=
					leftBgStyle =3D 'background:#fff =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/dropdowns/btn_blk=
_left.gif) 0 0 no-repeat;';=0A=
					rightBgStyle =3D =
'background:url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/dropd=
owns/btn_blk_right.gif) 100% 0 no-repeat;';=0A=
					break;=0A=
			}=0A=
=0A=
=0A=
			// build content for the menu=0A=
			var strContent =3D "\n\n\n\n";=0A=
			strContent +=3D '	<div class=3D"cnnDDContainer" =
style=3D"width:'+buttonWidth+'px;">'+"\n";=0A=
=0A=
			strContent +=3D '		<div class=3D"cnnDDBoxContainer">'+"\n";=0A=
			strContent +=3D '		<div class=3D"cnnDDBox" id=3D"'+menuId+'" =
style=3D"width:'+menuWidth+'px;" onmousedown=3D"return =
cnnDD.mouseDown(event, \''+menuId+'\');">'+"\n";=0A=
			strContent +=3D '			<div class=3D"cnnDDBoxHeader"><div =
class=3D"cnnDDBoxHeaderTL"></div><div =
class=3D"cnnDDBoxHeaderTR"></div></div>'+"\n";=0A=
			strContent +=3D '			<div class=3D"cnnDDBoxContent">'+"\n";=0A=
=0A=
			strContent +=3D '				<div class=3D"cnnDDContent" =
style=3D"width:'+fullRowWidth+'px;">'+"\n";=0A=
			strContent +=3D '					<div class=3D"cnnPad6Top"></div>'+"\n";=0A=
			strContent +=3D '					<div class=3D"cnnDDList" =
style=3D"height:'+visibleRowsHeight+'px; width:'+rowWidth+'px;">'+"\n";=0A=
			strContent +=3D '						<ul>'+"\n";=0A=
=0A=
			for (var i=3D0;i<displayedValue.length;i++) {=0A=
				if ((i=3D=3D0) && (this.menus[menuId].updateFirstRow)) {=0A=
					strContent +=3D '						<li id=3D"'+menuId+'_hdnVal"><a =
href=3D"javascript:cnnDD.select('+i+',\''+this.encodeAttr(displayedValue[=
i])+'\',\''+this.encodeAttr(internalValue[i])+'\');">'+displayedValue[i]+=
'</a></li>'+"\n";=0A=
				}=0A=
				else if (disabledRow[i]) {=0A=
					strContent +=3D '						<li =
class=3D"cnnDDSeparator"><span>'+displayedValue[i]+'</span></li>'+"\n";=0A=
				}=0A=
				else {=0A=
					strContent +=3D '						<li><a =
href=3D"javascript:cnnDD.select('+i+',\''+this.encodeAttr(displayedValue[=
i])+'\',\''+this.encodeAttr(internalValue[i])+'\');">'+displayedValue[i]+=
'</a></li>'+"\n";=0A=
				}=0A=
			}=0A=
			strContent +=3D '						</ul>'+"\n";=0A=
			strContent +=3D '					</div>'+"\n";=0A=
			strContent +=3D '					<div class=3D"cnnPad8Top"></div>'+"\n";=0A=
			strContent +=3D '				</div><!-- /cnnDDContent -->'+"\n";=0A=
=0A=
			strContent +=3D '			</div><!-- /cnnDDBoxContent -->'+"\n";=0A=
			strContent +=3D '			<div class=3D"cnnDDBoxFooter"><div =
class=3D"cnnDDBoxFooterBL"></div><div =
class=3D"cnnDDBoxFooterBR"></div></div>'+"\n";=0A=
			strContent +=3D '		</div><!--/cnnDDBox-->'+"\n";=0A=
			strContent +=3D '		</div><!--/cnnDDBoxContainer-->'+"\n";=0A=
=0A=
			strContent +=3D '		<div class=3D"'+buttonClass+'">'+"\n";=0A=
			strContent +=3D '			<div class=3D"cnnDDBtn" onmousedown=3D"return =
cnnDD.mouseDownBtn(event, \''+menuId+'\');" onclick=3D"return =
cnnDD.open(\''+menuId+'\')" style=3D"'+rightBgStyle+'">'+"\n";=0A=
			strContent +=3D '				<table width=3D"'+buttonWidth+'" border=3D"0" =
cellspacing=3D"0" cellpadding=3D"0">'+"\n";=0A=
			strContent +=3D '					<tr>'+"\n";=0A=
			strContent +=3D '						<td width=3D"'+buttonTextLPad+'"><div =
class=3D"cnnDDBtnLeft" style=3D"'+leftBgStyle+'"></div></td>'+"\n";=0A=
			strContent +=3D '						<td width=3D"'+buttonTextWidth+'">'+"\n";=0A=
			strContent +=3D '							<div class=3D"cnnDDValueContainer">'+"\n";=0A=
			strContent +=3D '								<div id=3D"'+menuId+'_Val" =
class=3D"cnnDDValue" =
style=3D"width:'+buttonTextWidth+'px;">'+buttonText+'</div>'+"\n";=0A=
			strContent +=3D '						</td>'+"\n";=0A=
			strContent +=3D '						<td width=3D"'+buttonTextRPad+'"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/global/dropdowns/btn_=
icon.gif" alt=3D"" border=3D"0"></td>'+"\n";=0A=
			strContent +=3D '					</tr>'+"\n";=0A=
			strContent +=3D '				</table>'+"\n";=0A=
			strContent +=3D '			</div><!--/cnnDDBtn -->'+"\n\n";=0A=
			strContent +=3D '		</div><!--/'+buttonClass+' -->'+"\n\n";=0A=
=0A=
			strContent +=3D '	</div><!--/cnnDDContainer -->'+"\n";=0A=
			strContent +=3D "\n\n";=0A=
=0A=
			// draw the new content=0A=
			$(wrapId).innerHTML =3D strContent;=0A=
=0A=
			// capture mousedown=0A=
			document.body.onmousedown =3D cnnMouseDown;=0A=
		}//else id of select not found [ abort ]=0A=
	},=0A=
=0A=
	buildOverlay: function(menuId, menuWidth, numVisibleRows, dx, dy) {=0A=
		// default parameters=0A=
		if (!menuWidth) menuWidth =3D this.defaultMenuWidth;=0A=
		if (!numVisibleRows) numVisibleRows =3D 10;=0A=
=0A=
		if (menuWidth < this.minMenuWidth) menuWidth =3D this.minMenuWidth;=0A=
		if (menuWidth > this.maxMenuWidth) menuWidth =3D this.maxMenuWidth;=0A=
=0A=
		var leftPos =3D -20;=0A=
		var topPos =3D 1;=0A=
		if (dx) leftPos +=3D dx;=0A=
		if (dy) topPos +=3D dy;=0A=
=0A=
		var wrapId =3D menuId + "_wrap";=0A=
		var listId =3D menuId + "_list";=0A=
		var titleId =3D menuId + "_title";=0A=
=0A=
		if ($(wrapId) && $(titleId) && $(listId)) {=0A=
			// hide the list=0A=
			$(listId).style.display =3D "none";=0A=
=0A=
			var title =3D $(titleId).innerHTML;=0A=
=0A=
			// Get the displayed value for each select option=0A=
			var listItems =3D $(listId).getElementsByTagName('li');=0A=
			var displayedList =3D new Array();=0A=
			for (var i=3D0;i<listItems.length;i++) {=0A=
				displayedList[i] =3D listItems[i].innerHTML;=0A=
			}=0A=
=0A=
			var numRows =3D displayedList.length;=0A=
=0A=
			var menuTitleRPad =3D 60;=0A=
			var menuTitleWidth =3D menuWidth - menuTitleRPad;=0A=
=0A=
			// minus left and right borders=0A=
			var fullRowWidth =3D menuWidth - this.combinedBorderWidth;=0A=
=0A=
			// without scrollbar=0A=
			var visibleRowsHeight =3D numRows * this.rowHeight;=0A=
			var rowWidth =3D menuWidth - this.combinedBorderWidth;=0A=
=0A=
			// with scrollbar=0A=
			if (numRows > numVisibleRows) {=0A=
				visibleRowsHeight =3D numVisibleRows * this.rowHeight;=0A=
				rowWidth -=3D 10;=0A=
			}=0A=
=0A=
=0A=
			// build content for the menu=0A=
			var strContent =3D "\n\n\n\n";=0A=
			strContent +=3D ' <div class=3D"cnnDDOvrBoxContainer">'+"\n";=0A=
			strContent +=3D '		<div class=3D"clear"><img =
src=3D"http://i.cdn.turner.com/cnn/images/1.gif" width=3D"1" =
height=3D"1" border=3D"0" alt=3D""></div>'+"\n";=0A=
			strContent +=3D '		<div class=3D"cnnDDOvrBox" id=3D"'+menuId+'" =
style=3D"width:'+menuWidth+'px;left:'+leftPos+'px; top:'+topPos+'px;" =
onmousedown=3D"return cnnDD.mouseDown(event, \''+menuId+'\');">'+"\n";=0A=
			strContent +=3D '			<div class=3D"cnnDDBoxHeader"><div =
class=3D"cnnDDBoxHeaderTL"></div><div =
class=3D"cnnDDBoxHeaderTR"></div></div>'+"\n";=0A=
			strContent +=3D '			<div class=3D"cnnDDBoxContent">'+"\n";=0A=
			strContent +=3D '				<div class=3D"cnnDDOvrCloseContainer"><div =
class=3D"cnnDDOvrClose" onclick=3D"cnnDD.close(); return true;"><img =
src=3D"http://i.cnn.net/cnn/.element/img/2.0/global/dropdowns/overlay_clo=
se.png" width=3D"12" height=3D"12" alt=3D"" =
border=3D"0"></div></div>'+"\n";=0A=
			strContent +=3D '				<div class=3D"cnnDDContent" =
style=3D"width:'+fullRowWidth+'px;">'+"\n";=0A=
			strContent +=3D '					<div class=3D"cnnDDOvrTitle" =
style=3D"width:'+menuTitleWidth+'px;overflow:hidden;">'+title+'</div>'+"\=
n";=0A=
			strContent +=3D '					<div class=3D"cnnDDList" =
style=3D"height:'+visibleRowsHeight+'px;width:'+rowWidth+'px;">'+"\n";=0A=
			strContent +=3D '						<ul>'+"\n";=0A=
=0A=
			for (var i=3D0;i<displayedList.length;i++) {=0A=
				strContent +=3D '					<li>'+displayedList[i]+'</li>'+"\n";=0A=
			}=0A=
			strContent +=3D '						</ul>'+"\n";=0A=
			strContent +=3D '					</div><!-- /cnnDDList -->'+"\n";=0A=
			strContent +=3D '					<div class=3D"cnnPad12Top"></div>'+"\n";=0A=
			strContent +=3D '				</div><!-- /cnnDDContent -->'+"\n";=0A=
			strContent +=3D '			</div><!-- /cnnDDBoxContent -->'+"\n";=0A=
			strContent +=3D '			<div class=3D"cnnDDBoxFooter"><div =
class=3D"cnnDDBoxFooterBL"></div><div =
class=3D"cnnDDBoxFooterBR"></div></div>'+"\n";=0A=
			strContent +=3D '		</div><!--/cnnDDOvrBox-->'+"\n";=0A=
			strContent +=3D ' </div><!--/cnnDDOvrBoxContainer-->'+"\n";=0A=
			strContent +=3D "\n\n";=0A=
			// draw the new content=0A=
			$(wrapId).innerHTML =3D strContent;=0A=
=0A=
			// capture mousedown=0A=
			document.body.onmousedown =3D cnnMouseDown;=0A=
=0A=
		}//else id of select not found [ abort ]=0A=
	},=0A=
=0A=
=0A=
	select: function(index, displayedValue, internalValue) {=0A=
		if ($(this.curId)) {=0A=
			var menuId =3D this.curId;=0A=
=0A=
			// close the dropdown=0A=
			this.close();=0A=
=0A=
			// change the displayed dropdown value (button text)=0A=
			if ($(menuId + '_Val')) {=0A=
				$(menuId + '_Val').innerHTML =3D displayedValue;=0A=
			}=0A=
=0A=
			// set the first row of the menu to the current value=0A=
			if ((this.menus[menuId].updateFirstRow) && $(menuId + '_hdnVal')) {=0A=
				$(menuId+'_hdnVal').innerHTML =3D '<a =
href=3D"javascript:cnnDD.select(' + index + ',\'' + =
this.encodeAttr(displayedValue) + '\',\'' + =
this.encodeAttr(internalValue) + '\')">' + displayedValue + '</a>';=0A=
			}=0A=
=0A=
			var listId =3D this.menus[menuId].listId;=0A=
			if ($(listId)) {=0A=
				// if the value has changed=0A=
				if ($(listId).selectedIndex !=3D index) {=0A=
					// set the index of the selected option for the invisible <select>=0A=
					$(listId).selectedIndex =3D index;=0A=
=0A=
					// If an onchange event handler exists=0A=
					if ($(listId).onchange) {=0A=
						$(listId).onchange();=0A=
					}=0A=
				}=0A=
			}=0A=
=0A=
			// if a callback function exists=0A=
			try {=0A=
				var onChoose =3D eval(menuId + '_OnChoose');=0A=
				if (onChoose) {=0A=
					onChoose();=0A=
				}=0A=
			}=0A=
			catch(err) {=0A=
			}=0A=
		}=0A=
	},=0A=
=0A=
	open: function(id) {=0A=
		if($(id)) {=0A=
			// Was the same menu clicked again?=0A=
			var sameMenu =3D (this.curId =3D=3D id);=0A=
=0A=
			// If a menu is already open=0A=
			this.close();=0A=
=0A=
			// If a different menu was clicked=0A=
			if (!sameMenu) {=0A=
				$(id).style.display =3D "block";=0A=
				this.curId =3D id;=0A=
				cnnDropdownOpen =3D true;=0A=
			}=0A=
		}=0A=
	},=0A=
=0A=
	close: function() {=0A=
		if ($(this.curId)) {=0A=
			$(this.curId).style.display =3D "none";=0A=
			this.curId =3D '';=0A=
			cnnDropdownOpen =3D false;=0A=
		}=0A=
	},=0A=
=0A=
	encodeAttr: function(str) {=0A=
		str=3Dstr.replace(/\\/g,'\\\\');=0A=
		str=3Dstr.replace(/\'/g,'\\\'');=0A=
		str=3Dstr.replace(/\"/g,'&quot;');=0A=
		str=3Dstr.replace(/\0/g,'\\0');=0A=
		return str;=0A=
	},=0A=
=0A=
	mouseDown: function(e, id) {=0A=
		this.ignoreMouseDownBody =3D true;=0A=
		return true;=0A=
	},=0A=
=0A=
	mouseDownBtn: function(e, id) {=0A=
		// True if the same dropdown button was clicked again.=0A=
		this.ignoreMouseDownBody =3D (id && (this.curId =3D=3D id));=0A=
		return true;=0A=
	},=0A=
=0A=
	mouseDownBody: function(e) {=0A=
		if (!this.ignoreMouseDownBody) {=0A=
			this.close();=0A=
		}=0A=
		this.ignoreMouseDownBody =3D false;=0A=
		return true;=0A=
	}=0A=
}=0A=
/* end styled dropdowns=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */=0A=
=0A=
=0A=
/* most popular module=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */=0A=
var cnnMpActiveId =3D 'cnnMpStory';=0A=
var cnnMpLock =3D false;=0A=
var cnnie =3D false;=0A=
function cnnToggleMP(idShow) {=0A=
=0A=
	if (cnnMpActiveId && cnnMpActiveId !=3D idShow) {=0A=
=0A=
		if(!cnnMpLock) {=0A=
			cnnMpLock =3D true;=0A=
=0A=
			if(cnnie) {=0A=
				cnnToggleMPIE(idShow);=0A=
			}=0A=
			else {=0A=
				// hide the old=0A=
				var elHide =3D $(cnnMpActiveId);=0A=
=0A=
				Effect.toggle(elHide,'blind',=0A=
				{=0A=
					duration:0.25,=0A=
					beforeStart:function()=0A=
					{=0A=
						var cnnHideHead =3D idShow + '-head';=0A=
						$(cnnHideHead).className=3D"active";=0A=
					}=0A=
				}=0A=
=0A=
				);=0A=
=0A=
				// display the new=0A=
				var elShow =3D $(idShow);=0A=
=0A=
				Effect.toggle(elShow,'blind',=0A=
				{=0A=
					duration:0.25,=0A=
					beforeStart:function(obj)=0A=
					{=0A=
						var cnnShowHead =3D cnnMpActiveId + '-head';=0A=
						$(cnnShowHead).className =3D "closed";=0A=
					},=0A=
=0A=
					afterFinish:function(obj)=0A=
					{=0A=
						cnnMpActiveId =3D idShow;=0A=
					}=0A=
				}=0A=
				);=0A=
			}// end if cnnie=0A=
=0A=
			// delay the unlock=0A=
			setTimeout("cnnMpLock =3D false;",250);=0A=
=0A=
		}// end if !cnnMpLock=0A=
=0A=
	}// end same id=0A=
}=0A=
=0A=
function cnnToggleMPIE(idShow) {=0A=
=0A=
	var elHide =3D $(cnnMpActiveId);=0A=
	var elShow =3D $(idShow);=0A=
=0A=
	// hide the red header=0A=
	var cnnHideHead =3D idShow + '-head';=0A=
	$(cnnHideHead).className=3D"active";=0A=
=0A=
	new Effect.Parallel(=0A=
	[=0A=
		new Effect.SlideUp(elHide),=0A=
		new Effect.SlideDown(elShow)=0A=
	], {=0A=
		duration: 0.04=0A=
	});=0A=
=0A=
	// show the previously active red header=0A=
	var cnnShowHead =3D cnnMpActiveId + '-head';=0A=
	$(cnnShowHead).className =3D "closed";=0A=
=0A=
	// reset the active id=0A=
	cnnMpActiveId =3D idShow;=0A=
=0A=
}=0A=
=0A=
function cnnToggleMPNoSlide(idShow) {=0A=
=0A=
	if (cnnMpActiveId && cnnMpActiveId !=3D idShow) {=0A=
=0A=
		var elHide =3D $(cnnMpActiveId);=0A=
		var cnnHideHead =3D idShow + '-head';=0A=
		$(cnnHideHead).className=3D"active";=0A=
		elHide.style.display=3D'none';=0A=
=0A=
		var elShow =3D $(idShow);=0A=
		var cnnShowHead =3D cnnMpActiveId + '-head';=0A=
		$(cnnShowHead).className =3D "closed";=0A=
		elShow.style.display=3D'block';=0A=
=0A=
		cnnMpActiveId =3D idShow;=0A=
=0A=
	}=0A=
=0A=
}=0A=
=0A=
/* most popular module tab functions */=0A=
function cnnMpStories( intWhich ) {=0A=
	for(i=3D1;i<4;i++) {=0A=
		if(i=3D=3DintWhich) {=0A=
			$('cnnMpStories' + i).style.display =3D 'block';=0A=
			$('cnnMpStoriesTab' + i).className =3D 'active';=0A=
		}=0A=
		else {=0A=
			$('cnnMpStories' + i).style.display =3D 'none';=0A=
			$('cnnMpStoriesTab' + i).className =3D '';=0A=
		}=0A=
	}=0A=
	$('cnnMpStoriesTab'+ intWhich).blur();=0A=
}=0A=
=0A=
function cnnMpVideos( intWhich ) {=0A=
	for(i=3D1;i<4;i++) {=0A=
		if(i=3D=3DintWhich) {=0A=
			$('cnnMpVideos' + i).style.display =3D 'block';=0A=
			$('cnnMpVideosTab' + i).className =3D 'active';=0A=
		}=0A=
		else {=0A=
			$('cnnMpVideos' + i).style.display =3D 'none';=0A=
			$('cnnMpVideosTab' + i).className =3D '';=0A=
		}=0A=
	}=0A=
	$('cnnMpVideosTab'+ intWhich).blur();=0A=
}=0A=
=0A=
/* most popular module init function */=0A=
function cnnInitMP() {=0A=
	$('cnnMpTopic').style.display =3D 'none';=0A=
	$('cnnMpVideo').style.display =3D 'none';=0A=
	$('cnnMostPopMod').style.display =3D 'block';=0A=
}=0A=
=0A=
/* end most popular module=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */=0A=
=0A=
/* cnn affiliates (us section)=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */=0A=
// Preload the button images=0A=
var cnnAffiliates_GoImage =3D new Array;=0A=
cnnAffiliates_GoImage["off"] =3D new Image();=0A=
cnnAffiliates_GoImage["off"].src =3D =
"http://i.cdn.turner.com/cnn/.element/img/2.0/sect/us/affiliates/go_btn_d=
isabled.gif";=0A=
cnnAffiliates_GoImage["on"] =3D new Image();=0A=
cnnAffiliates_GoImage["on"].src =3D =
"http://i.cdn.turner.com/cnn/.element/img/2.0/sect/us/affiliates/go_btn.g=
if";=0A=
=0A=
function cnnAffiliates_SetGoBtn(url) {=0A=
	var goButtonId =3D 'cnnAffiliatesGoBtn';=0A=
	if ($(goButtonId)) {=0A=
		if (url) {=0A=
			$(goButtonId).innerHTML =3D '<a id=3D"cnnAffiliatesGoLink" =
href=3D"javascript:void(window.open(\''+url+'\'))"><img =
src=3D"'+cnnAffiliates_GoImage["on"].src+'" width=3D"29" height=3D"23" =
border=3D"0" alt=3D""></a>';=0A=
		}=0A=
		else {=0A=
			$(goButtonId).innerHTML =3D '<img =
src=3D"'+cnnAffiliates_GoImage["off"].src+'" width=3D"29" height=3D"23" =
border=3D"0" alt=3D"">';=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
function cnnAffiliates_SelectRegion(selectObj) {=0A=
	var region =3D selectObj.value.toLowerCase();=0A=
		if (region) {=0A=
		var mapId =3D 'cnnAffiliatesMap';=0A=
		if ($(mapId)) {=0A=
			$(mapId).src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/sect/us/affiliates/affiliat=
es_' + region + '.gif';=0A=
		}=0A=
		// reset the list=0A=
		var affiliatesId =3D 'cnnDDAffiliatesCity_list_' + region;=0A=
		if ($(affiliatesId)) {=0A=
			$(affiliatesId).selectedIndex =3D 0;=0A=
		}=0A=
		cnnDD.buildDropdown('cnnDDAffiliatesCity', 252, 270, 10, 'cnnDDWire', =
region);=0A=
		cnnAffiliates_SetGoBtn();=0A=
	}=0A=
	// no region selected=0A=
	else {=0A=
		var mapId =3D 'cnnAffiliatesMap';=0A=
		if ($(mapId)) {=0A=
			$(mapId).src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/sect/us/affiliates/affiliat=
es_default.gif';=0A=
		}=0A=
		cnnDD.buildDisabledDropdown('cnnDDAffiliatesCity', 252, 'cnnDDWire', =
'northeast');=0A=
		cnnAffiliates_SetGoBtn();=0A=
	}=0A=
}=0A=
=0A=
function cnnAffiliates_SelectCity(selectObj) {=0A=
	var url =3D selectObj.value;=0A=
	cnnAffiliates_SetGoBtn(url);=0A=
}=0A=
=0A=
/* end cnn affiliates (us section)=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */=0A=
=0A=
/* cnet product reviews widget=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */=0A=
function cnnSearchCnet() {=0A=
	switch(document.tsearch.nodeid.value) {=0A=
		case "more":=0A=
		=
window.open("http://cnn-cnet.com.com/2001-1_7-0.html?part=3Dcnn-cnet&subj=
=3Dre&tag=3Dsearch");=0A=
		break;=0A=
		case "6500":=0A=
		=
window.open("http://cnn-cnet.com.com/4323-6530_7-6509025.html?part=3Dcnn-=
cnet&subj=3Dre&tag=3Dsearch");=0A=
		break;=0A=
		case "6501":=0A=
		=
window.open("http://cnn-cnet.com.com/4323-6530_7-6509037.html?part=3Dcnn-=
cnet&subj=3Dre&tag=3Dsearch");=0A=
		break;=0A=
		case "3504":=0A=
		=
window.open("http://cnn-cnet.com.com/4323-6525_7-6509098.html?part=3Dcnn-=
cnet&subj=3Dre&tag=3Dsearch");=0A=
		break;=0A=
		case "3000":=0A=
		=
window.open("http://cnn-cnet.com.com/4323-6526_7-6509032.html?part=3Dcnn-=
cnet&subj=3Dre&tag=3Dsearch");=0A=
		break;=0A=
		case "3127":=0A=
		=
window.open("http://cnn-cnet.com.com/4323-6522_7-6509058.html?part=3Dcnn-=
cnet&subj=3Dre&tag=3Dsearch");=0A=
		break;=0A=
		case "6463":=0A=
		=
window.open("http://cnn-cnet.com.com/4323-6531_7-6509125.html?part=3Dcnn-=
cnet&subj=3Dre&tag=3Dsearch");=0A=
		break;=0A=
		case "6450":=0A=
		=
window.open("http://cnn-cnet.com.com/4323-6532_7-6509081.html?part=3Dcnn-=
cnet&subj=3Dre&tag=3Dsearch");=0A=
		break;=0A=
		case "3132":=0A=
		=
window.open("http://cnn-cnet.com.com/4323-6528_7-6509067.html?part=3Dcnn-=
cnet&subj=3Dre&tag=3Dsearch");=0A=
		break;=0A=
		case "3243":=0A=
		=
window.open("http://cnn-cnet.com.com/4323-6523_7-6509031.html?part=3Dcnn-=
cnet&subj=3Dre&tag=3Dsearch");=0A=
		break;=0A=
	}=0A=
	return false;=0A=
}=0A=
/* end cnet product reviews widget=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */=0A=
=0A=
/* partner box output=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */=0A=
function cnnPartnerRand_Asort(){ return (Math.round(Math.random())-0.5); =
}=0A=
=0A=
function cnnPrintPartnerOutput() {=0A=
	var cnnPartner_Data =3D new Array();=0A=
	// name, logo, feed location, subscribe link, logo link=0A=
	cnnPartner_Data[0] =3D new =
Array("Time.com","http://i.cdn.turner.com/cnn/.element/img/2.0/content/pa=
rtners/time_partner.gif","/.element/ssi/auto/2.0/sect/MAIN/ftpartners/par=
tner.time.html", "/linkto/time.main.html", "/time/?cnn=3Dyes");=0A=
	cnnPartner_Data[1] =3D new =
Array("EW.com","http://i.cdn.turner.com/cnn/.element/img/2.0/content/part=
ners/entertainment_partner.gif","/.element/ssi/auto/2.0/sect/MAIN/ftpartn=
ers/partner.ew.html", =
"http://subs.timeinc.net/CampaignHandler/ewlinks?source_id=3D29", =
"/ew/?cnn=3Dyes");=0A=
	cnnPartner_Data[2] =3D new =
Array("People.com","http://i.cdn.turner.com/cnn/.element/img/2.0/content/=
partners/partner_people.gif","/.element/ssi/auto/2.0/sect/MAIN/ftpartners=
/partner.people.html", =
"https://subs.timeinc.net/PE/pe_cntl0407.jhtml?experience_id=3D164491&sou=
rce_id=3D5&_requestid=3D84312", "http://www.people.com/people");=0A=
	cnnPartner_Data[3] =3D new =
Array("CNNMoney.com","http://i.cdn.turner.com/cnn/.element/img/2.0/conten=
t/partners/money_partner.gif","/.element/ssi/auto/2.0/sect/MAIN/ftpartner=
s/partner.money.txt", =
"http://money.cnn.com/services/bridge/contact.us.html", =
"/money/index.html?cnn=3Dyes");=0A=
	cnnPartner_Data[4] =3D new =
Array("CNNSI.com","http://i.cdn.turner.com/cnn/.element/img/2.0/content/p=
artners/si_partner.gif","/.element/ssi/auto/2.0/sect/MAIN/ftpartners/part=
ner.si.txt", =
"https://subs.timeinc.net/CampaignHandler/si_cnnsi?source_id=3D19", =
"/si/?cnn=3Dyes");=0A=
=0A=
	cnnPartner_Data.sort(cnnPartnerRand_Asort);=0A=
=0A=
	for(var i =3D 0;i < 2;i++) {=0A=
=0A=
		var	temp_partner_html =3D '<div class=3D"cnnWireBox"><div =
class=3D"cnnBoxHeader"><div></div></div><div =
class=3D"cnnBoxContent"><div class=3D"cnnPad8TB12LR"><div =
class=3D"cnnPartnerTop">';=0A=
		if(cnnPartner_Data[i][3] !=3D "") {=0A=
			temp_partner_html +=3D '<div class=3D"cnnPartnerSubscribe"><a =
href=3D"' + cnnPartner_Data[i][3] + '" =
onmouseover=3D"cnnImgSwap(this,1)" =
onmouseout=3D"cnnImgSwap(this,0)"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/content/partners/btn_=
subscribe.gif" width=3D"61" height=3D"17" border=3D"0"></a></div>';=0A=
		}=0A=
		temp_partner_html +=3D '<div>';=0A=
		if(cnnPartner_Data[i][4] !=3D "") {=0A=
			temp_partner_html +=3D '<a href=3D"' + cnnPartner_Data[i][4] + '">';=0A=
		}=0A=
		temp_partner_html +=3D '<img src=3D"' + cnnPartner_Data[i][1] + '" =
class=3D"cnnPartLogo" border=3D"0" alt=3D"">';=0A=
		if(cnnPartner_Data[i][4] !=3D "") {=0A=
			temp_partner_html +=3D '</a>';=0A=
		}=0A=
		temp_partner_html +=3D '</div><div class=3D"clear"></div></div><div =
id=3D"cnnPartnerInclude_' + i + '">Loading...</div></div></div><div =
class=3D"cnnBoxFooter"><div></div></div></div>';=0A=
=0A=
		Element.update('randPartner_' + i, temp_partner_html);=0A=
		new Ajax.Updater('cnnPartnerInclude_' + i, cnnPartner_Data[i][2], =
{asynchronous:true, method:'get'});=0A=
=0A=
	}=0A=
}=0A=
=0A=
function cnnMpPartnerRotate() {=0A=
	var intRandom =3D Math.floor(Math.random()*2);=0A=
	switch(intRandom) {=0A=
		case 0:=0A=
			$('cnnMpPartnerEW').style.display =3D "block";=0A=
			break;=0A=
		case 1:=0A=
			$('cnnMpPartnerPeople').style.display =3D "block";=0A=
			break;=0A=
		default:=0A=
			break;=0A=
	}=0A=
}=0A=
/* end partner box output=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */=0A=
=0A=
/* main page most popular overlay=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */=0A=
function cnnShowMoPo() {=0A=
	$('cnnOpacity').style.display =3D "block";=0A=
	$('cnnMoPo').style.display =3D "block";=0A=
}=0A=
=0A=
function cnnHideMoPo() {=0A=
	$('cnnMoPo').style.display =3D "none";=0A=
	new Effect.Opacity('cnnOpacity', {duration:0.1, from:0.5, to:0.0});=0A=
=0A=
	// reset opacity=0A=
	setTimeout("$('cnnOpacity').style.display =3D \"none\";new =
Effect.Opacity('cnnOpacity', {duration:0.1, from:0.0, to:0.8});",500)=0A=
}=0A=
=0A=
/* partner box omniture tracking=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */=0A=
var cnnPSproducts=3D"";=0A=
var cnnProducts =3D new Array();=0A=
/* end partner box output=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */=0A=
=0A=
/* set edition js=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */=0A=
var cnnDomestic_Host =3D 'www.cnn.com';=0A=
var cnnIntl_Host =3D 'edition.cnn.com';=0A=
var cnnUserEd_Pref =3D allCookies['SelectedEdition'];=0A=
var cnnShow_setPref =3D false;=0A=
var cnnUEPHost_Val =3D location.hostname;=0A=
var cnnOn_Dom_Flag;=0A=
=0A=
if(location.hostname.indexOf(cnnDomestic_Host) > -1) { cnnOn_Dom_Flag =
=3D 1; }=0A=
=0A=
var cnnSetPrefBox_HTML =3D '<div id=3D"cnnSetCNNEd"><div =
class=3D"cnnWireSeBox"><div class=3D"cnnWireSeBoxHeader"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/global/set_edition/co=
rner_se_tl.gif" width=3D"4" height=3D"4" alt=3D"" id=3D"cnnSeCnrTL" =
/></div><div id=3D"cnnBoxSeContent"><a =
href=3D"javascript:cnnSetPrefBox_Close();"><img =
class=3D"cnnEditionCloseBtn" =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/global/set_edition/se=
_close_btn.gif" width=3D"14" height=3D"14" alt=3D"" /></a><form =
id=3D"cnnsetPref_Form"><table align=3D"center" class=3D"cnnSetEdition" =
cellpadding=3D"0" cellspacing=3D"0" border=3D"0"><tr><td =
class=3D"setEdText"><b>Set your CNN.com Edition</b></td>';=0A=
=0A=
if(cnnOn_Dom_Flag) { cnnSetPrefBox_HTML +=3D '<td =
class=3D"cnnEditionRadioTD"><input type=3D"radio" id=3D"edition" =
name=3D"edition" class=3D"cnnEditionRadioBtn" checked=3D"checked" =
value=3D"www" /></td><td>CNN U.S.</td><td =
class=3D"cnnEditionRadioTD"><input type=3D"radio" id=3D"edition" =
name=3D"edition" class=3D"cnnEditionRadioBtn" value=3D"edition" =
/></td><td>CNN International</td>'; }=0A=
else { cnnSetPrefBox_HTML +=3D '<td class=3D"cnnEditionRadioTD"><input =
type=3D"radio" id=3D"edition" name=3D"edition" =
class=3D"cnnEditionRadioBtn" checked=3D"checked" value=3D"edition" =
/></td><td>CNN International</td><td class=3D"cnnEditionRadioTD"><input =
type=3D"radio" id=3D"edition" name=3D"edition" =
class=3D"cnnEditionRadioBtn" value=3D"www" /></td><td>CNN U.S.</td>'; }=0A=
=0A=
cnnSetPrefBox_HTML +=3D '<td><a =
href=3D"javascript:cnnSetEdPref_cooKie();"><img =
class=3D"cnnEditionBoxBtn" =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/global/set_edition/se=
_btn.gif" width=3D"84" height=3D"23" alt=3D"" border=3D"0" =
/></a></td></tr></table></form></div><div =
class=3D"cnnWireSeBoxFooter"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/global/set_edition/co=
rner_se_bl.gif" width=3D"4" height=3D"4" alt=3D"" id=3D"cnnSeCnrBL" =
/></div></div></div>';=0A=
=0A=
if(cnnUserEd_Pref) {=0A=
	if(location.hostname =3D=3D "cnn.com") {=0A=
		if(cnnUserEd_Pref =3D=3D 'www') { location.replace('http://' + =
cnnDomestic_Host); }=0A=
		else{ location.replace('http://' + cnnIntl_Host); }=0A=
	}=0A=
}=0A=
else {=0A=
	cnnShow_setPref =3D true;=0A=
}=0A=
=0A=
function cnnSetPrefBox_Close(pref_flag) {=0A=
	if (document.getElementById) { =
document.getElementById('cnnSetEditionContainer').style.display =3D =
'none'; }=0A=
	else if (document.all) { =
document.all['cnnSetEditionContainer'].style.display =3D 'none'; }=0A=
}=0A=
=0A=
function cnnSetEditionBox() {=0A=
=0A=
	Element.update('cnnSetEditionContainer', cnnSetPrefBox_HTML);=0A=
	if (document.getElementById) { =
document.getElementById('cnnSetEditionContainer').style.display =3D =
'block'; }=0A=
	else if (document.all) { =
document.all['cnnSetEditionContainer'].style.display =3D 'block'; }=0A=
	if(!cnnUserEd_Pref) {=0A=
		if(location.hostname.indexOf(cnnIntl_Host) > -1) { =
CNN_setCookie('SelectedEdition', 'edition', 854400, '/', '.cnn.com'); }=0A=
		else { CNN_setCookie('SelectedEdition', 'www', 854400, '/', =
'.cnn.com'); }=0A=
	}=0A=
=0A=
}=0A=
=0A=
function cnnSetEdPref_cooKie() {=0A=
	form_obj =3D document.getElementById('cnnsetPref_Form');=0A=
	cookie_val =3D (form_obj.edition[0].checked) ? =
form_obj.edition[0].value : form_obj.edition[1].value;=0A=
	CNN_setCookie('SelectedEdition', cookie_val, 854400, '/', '.cnn.com');=0A=
	cnnSetPrefBox_Close(1);=0A=
	current_loc =3D "" + document.location + '';=0A=
	if(cookie_val =3D=3D 'www') {=0A=
		if(location.hostname.indexOf(cnnDomestic_Host) < 0) {=0A=
			if(location.hostname.indexOf(cnnIntl_Host) > -1) {=0A=
				current_loc =3D current_loc.replace(/^http:\/\/.+\.com/, 'http://' + =
cnnDomestic_Host);=0A=
				location.replace(current_loc);=0A=
			}=0A=
		}=0A=
	}=0A=
	else {=0A=
		if(location.hostname.indexOf(cnnIntl_Host) < 0) {=0A=
			if(location.hostname.indexOf(cnnDomestic_Host) > -1) {=0A=
				current_loc =3D current_loc.replace(/^http:\/\/.+\.com/, 'http://' + =
cnnIntl_Host);=0A=
				location.replace(current_loc);=0A=
			}=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
/* end set edition js=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */=0A=
=0A=
/* make cnn your home js=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */=0A=
var cnnHPbkmrk =3D "http://www.cnn.com";=0A=
if(location.hostname =3D=3D "edition.cnn.com") {=0A=
	cnnHPbkmrk =3D "http://edition.cnn.com";=0A=
}=0A=
=0A=
var cnnMakeHPBox_HTML =3D '<div id=3D"cnnMakeHPBanner"><div =
class=3D"cnnWireSeBox"><div class=3D"cnnWireSeBoxHeader"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/global/set_edition/co=
rner_se_tl.gif" width=3D"4" height=3D"4" alt=3D"" /></div><div =
id=3D"cnnBoxSeContent"><a href=3D"javascript:cnnMakeHPBox_Close();"><img =
class=3D"cnnEditionCloseBtn" =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/global/set_edition/se=
_close_btn.gif" width=3D"14" height=3D"14" alt=3D"" /></a><form =
id=3D"cnnsetPref_Form"><table align=3D"center" class=3D"cnnSetEdition" =
cellpadding=3D"0" cellspacing=3D"0" border=3D"0"><tr><td =
class=3D"setEdText"><b>Make CNN Your Home Page</b></td><td><a =
href=3D"javascript:void(0);" onclick=3D"if(document.all) { =
this.style.behavior=3D\'url(#default#homepage)\';this.setHomePage(\''+cnn=
HPbkmrk+'\');cnnMakeHPBox_Close(); }"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/global/make_hp/set_bt=
n.gif" width=3D"70" height=3D"23" alt=3D"" border=3D"0" =
class=3D"cnnEditionBoxBtn" /></a></td></tr></table></form></div><div =
class=3D"cnnWireSeBoxFooter"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/global/set_edition/co=
rner_se_bl.gif" width=3D"4" height=3D"4" alt=3D"" /></div></div></div>';=0A=
=0A=
function cnnMakeHPBox_Close() {=0A=
	if (document.getElementById) { =
document.getElementById('cnnMakeHPContainer').style.display =3D 'none'; }=0A=
	else if (document.all) { =
document.all['cnnMakeHPContainer'].style.display =3D 'none'; }=0A=
}=0A=
=0A=
function cnnMakeHPBox() {=0A=
	if(document.all) {=0A=
		Element.update('cnnMakeHPContainer', cnnMakeHPBox_HTML);=0A=
		document.all['cnnMakeHPContainer'].style.display =3D 'block';=0A=
	}=0A=
	else {=0A=
	=
CNN_openPopup('/feedback/help/homepage/frameset.2.0.exclude.html','620x36=
4','toolbar=3Dno,location=3Dno,directories=3Dno,status=3Dno,menubar=3Dno,=
scrollbars=3Dauto,resizable=3Dno,width=3D620,height=3D430');=0A=
	}=0A=
=0A=
}=0A=
=0A=
/* end make cnn your home js=0A=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */=0A=
=0A=
var cnnDocDomain=3D'';=0A=
if(location.hostname.indexOf('cnn.com')>0) { cnnDocDomain=3D'cnn.com'; }=0A=
if(location.hostname.indexOf('turner.com')>0) { =
cnnDocDomain=3D'turner.com'; }=0A=
if(cnnDocDomain) { document.domain =3D cnnDocDomain;}=0A=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/recommend.js

var relatedToInclude =3D new Object();=0A=
var numTimesRelatedReturned =3D 0;=0A=
var MINIMUM_ACCEPTABLE_RELATEDS =3D 2;=0A=
var IMG_HOST =3D 'http://i.cdn.turner.com/cnn';=0A=
=0A=
function relatedContent(storyTopics)=0A=
{=0A=
	var TV_INCREMENT =3D 1;=0A=
	var TV_DECAY =3D .9;=0A=
	var TV_MIN_VIEWED =3D 5;=0A=
	var TV_MAX_TOPICS =3D 20;=0A=
	var DAYS_TO_EXPIRE =3D 30;=0A=
	var topicList =3D new Array();=0A=
	var numVisits =3D 0;=0A=
=0A=
	// Capture cookie contents and remove it=0A=
	if(storage.contains('user_topics'))=0A=
	{=0A=
		var cookieContent =3D storage.get('user_topics');=0A=
		numVisits =3D cookieContent.visits;=0A=
		var cookieTopics =3D cookieContent.tw_array;=0A=
		var position =3D 0;=0A=
=0A=
		while( cookieTopics[position] )=0A=
		{=0A=
			var topicObj =3D new Object();=0A=
			var item =3D cookieTopics[position];=0A=
=0A=
			topicObj.key =3D item.key;=0A=
			topicObj.weight =3D item.weight*TV_DECAY;=0A=
			topicList.push (topicObj);=0A=
			position++;=0A=
		}=0A=
	}=0A=
=0A=
	numVisits++;=0A=
	for(var i=3D0; i<storyTopics.length; i++)=0A=
	{=0A=
		var topic =3D storyTopics[i];=0A=
		var found =3D 0;=0A=
=0A=
		for(var j =3D 0; j<topicList.length; j++)=0A=
		{=0A=
			if(topicList[j].key =3D=3D topic.key)=0A=
			{=0A=
				topicList[j].weight +=3D TV_INCREMENT;=0A=
				found =3D 1;=0A=
				break;=0A=
			}=0A=
		}=0A=
		if(found =3D=3D 0)=0A=
		{=0A=
			var topicObj =3D new Object();=0A=
			topicObj.key =3D topic.key;=0A=
			topicObj.weight =3D TV_INCREMENT;=0A=
			topicList.push( topicObj );=0A=
		}=0A=
	}=0A=
	topicList.sort(=0A=
		function(a,b)=0A=
		{=0A=
			return b.weight - a.weight;=0A=
		}=0A=
	);=0A=
=0A=
	if( topicList.length > TV_MAX_TOPICS )=0A=
	{=0A=
		topicList.splice( TV_MAX_TOPICS, topicList.length - TV_MAX_TOPICS );=0A=
	}=0A=
=0A=
	var myObj =3D { visits : numVisits, tw_array : topicList };=0A=
	var exp_Date =3D new Date();=0A=
	exp_Date.setTime(exp_Date.getTime()+(DAYS_TO_EXPIRE*24*60*60*1000));=0A=
	storage.put( 'user_topics', myObj, exp_Date );=0A=
	storage.save();=0A=
=0A=
	// if less than specified number visited, display section relateds=0A=
	if(numVisits < TV_MIN_VIEWED || topicList.length < 3)=0A=
	{=0A=
		var sectionName=3Dwindow.location.pathname.toString().split("/")[2];=0A=
		=
CSIManager.getInstance().call('/editionssi/sect/2.0/'+sectionName+'/secti=
on.json.html', '', 'sectionRelateds', loadSectionRelateds);=0A=
	}=0A=
	else=0A=
	{=0A=
		var topicsToDisplay =3D new Array();=0A=
		var startingPoint =3D Math.min( 3, topicList.length - 3 );=0A=
=0A=
		for(var i =3D startingPoint; i < startingPoint + 3; i++)=0A=
		{=0A=
			topicsToDisplay.push( topicList[i] );=0A=
		}=0A=
=0A=
		loadRelatedTopics( topicsToDisplay );=0A=
	}=0A=
}=0A=
=0A=
=0A=
function loadRelatedTopics(topicArr)=0A=
{=0A=
	var windowTimeoutDisplay =3D =
window.setTimeout("selectAndShowRelated()",10000); // After 10 seconds =
show the data regardless=0A=
=0A=
	for(var i=3D0; i<topicArr.length; i++)=0A=
	{=0A=
		var myTopicObj =3D topicArr[i];=0A=
		=
CSIManager.getInstance().call('http://recommend.cnn.com/classify/service/=
topic', =
'view=3Drecent_json&tagKey=3D'+myTopicObj.key+'&targetType=3Ddocument&tar=
getSite=3Dcnn%20only&targetSite=3Deveryone', 'relatedBox', =
function(topicObj)=0A=
		{=0A=
			var stories =3D topicObj.assets;=0A=
			for(var storyCounter=3D0; storyCounter<stories.length; storyCounter++)=0A=
			{=0A=
				if( stories[storyCounter].headline &&=0A=
					stories[storyCounter].site !=3D 'moneymag' &&=0A=
					stories[storyCounter].site !=3D 'fort' &&=0A=
					stories[storyCounter].site !=3D 'fsb' &&=0A=
					stories[storyCounter].site !=3D 'biz2' &&=0A=
					stories[storyCounter].siteId &&=0A=
					!isCurrentStory( stories[storyCounter].siteId ) )=0A=
				{=0A=
					relatedToInclude[ stories[storyCounter].siteId ]=3D stories[ =
storyCounter ];=0A=
				}=0A=
			}=0A=
			numTimesRelatedReturned++;=0A=
			if(numTimesRelatedReturned > 2)=0A=
			{=0A=
				return selectAndShowRelated(windowTimeoutDisplay);=0A=
			}=0A=
			else=0A=
			{=0A=
				return '';=0A=
			}=0A=
		},false,escape(myTopicObj.key));=0A=
	}=0A=
}=0A=
=0A=
//Loads related topics, accepts pid of window.setTimeout=0A=
function selectAndShowRelated(pid)=0A=
{=0A=
	var keyArr =3D new Array();=0A=
	for( var key in relatedToInclude )=0A=
	{=0A=
		keyArr.push(key);=0A=
	}=0A=
	if(keyArr.length < MINIMUM_ACCEPTABLE_RELATEDS)=0A=
	{=0A=
		var sectionName=3Dwindow.location.pathname.toString().split("/")[2];=0A=
		=
CSIManager.getInstance().call('/editionssi/sect/2.0/'+sectionName+'/secti=
on.json.html', '', 'sectionRelateds', loadSectionRelateds);=0A=
		return '';=0A=
	}=0A=
=0A=
	var retHTML =3D '<div class=3D"cnnRightColBox cnn0pxBMargin"><div =
class=3D"cnnRightColRnd"><img =
src=3D"'+IMG_HOST+'/.element/img/2.0/mosaic/mostpopular/roundtop.336_5.gi=
f" width=3D"336" height=3D"5" border=3D"0" alt=3D""></div><div =
class=3D"cnnRightColBoxContent"><div><img =
src=3D"'+IMG_HOST+'/.element/img/2.0/mosaic/base_skins/most_pop/RFY/RFY_h=
eader.gif" alt=3D"" width=3D"318" height=3D"42"></div><p =
class=3D"cnnRRRFY">Stories you may be interested in based on past =
browsing</p>';=0A=
	retHTML +=3D '<table cellpadding=3D"0" cellspacing=3D"0" border=3D"0" =
width=3D"100%" class=3D"cnnRRTable">';=0A=
=0A=
	for( var i =3D 0; i<keyArr.length && i < 5; i++ )=0A=
	{=0A=
		var randomNumber =3D Math.floor( Math.random() * keyArr.length );=0A=
		var objectToDisplay =3D relatedToInclude[ keyArr.splice( randomNumber, =
1 ) ];=0A=
		var urlString =3D objectToDisplay.siteId;=0A=
		=0A=
		retHTML +=3D '<tr><td>';=0A=
		if(objectToDisplay.wool !=3D '' && objectToDisplay.wool !=3D 'CNN.com')=0A=
		{=0A=
			retHTML+=3D '<span =
style=3D"color:#949494">'+objectToDisplay.wool+'</span> ';=0A=
		}=0A=
		if(objectToDisplay["site-display-text"] =3D=3D 'CNNMoney' || =
objectToDisplay["site-display-text"] =3D=3D 'SI.com')=0A=
		{=0A=
			urlString =3D objectToDisplay["site-url"] + objectToDisplay.siteId;=0A=
		}=0A=
		else if(objectToDisplay["site-display-text"] =3D=3D 'Time')=0A=
		{=0A=
			urlString =3D objectToDisplay["site-url"] + =
objectToDisplay.siteId.replace(/^\/time\//,'/');=0A=
		}=0A=
=0A=
		if(urlString.indexOf('?') > -1) { urlString +=3D =
'&iref=3Dwerecommend'; }=0A=
		else { urlString +=3D '?iref=3Dwerecommend'; }=0A=
=0A=
		retHTML +=3D '<a =
href=3D"'+urlString+'">'+objectToDisplay.headline+'</a>';=0A=
		if(objectToDisplay.videoAttached =3D=3D 'true')=0A=
		{=0A=
			retHTML +=3D '&nbsp;<img =
src=3D"'+IMG_HOST+'/.element/img/2.0/global/icons/video_icon.gif" =
width=3D"16" height=3D"10" border=3D"0" alt=3D"" class=3D"cnnVidIcon">';=0A=
		}=0A=
		retHTML +=3D '</td><td class=3D"cnnRRImgCol">&nbsp;</td></tr>';=0A=
	}=0A=
	retHTML+=3D'</table>';=0A=
	retHTML +=3D '</div><div class=3D"cnnRightColRnd"><img =
src=3D"'+IMG_HOST+'/.element/img/2.0/mosaic/mostpopular/roundbot.336_5.gi=
f" width=3D"336" height=3D"5" border=3D"0" alt=3D""></div></div>';=0A=
=0A=
	window.clearTimeout(pid);=0A=
	if(document.getElementById('relatedBox') && =
document.getElementById('relatedBox').style && =
document.getElementById('relatedBox').style.display)=0A=
	{=0A=
		document.getElementById('relatedBox').style.display=3D'inline';=0A=
	}=0A=
	document.displayRelatedsBox=3Dtrue;=0A=
	return retHTML;=0A=
}=0A=
=0A=
//loads the top stories from appropriate section from APS-generated JSON=0A=
function loadSectionRelateds(sectObj)=0A=
{=0A=
	var maxStories =3D 5;=0A=
	var retHTML =3D '<div class=3D"cnnRightColBox cnn0pxBMargin"><div =
class=3D"cnnRightColRnd">'=0A=
		+ '<img =
src=3D"'+IMG_HOST+'/.element/img/2.0/mosaic/mostpopular/roundtop.336_5.gi=
f" width=3D"336" height=3D"5" border=3D"0" alt=3D"">'=0A=
		+ '</div><div class=3D"cnnRightColBoxContent"><div>'=0A=
		+ '<img =
src=3D"'+IMG_HOST+'/.element/img/2.0/mosaic/base_skins/most_pop/RFY/RFY_h=
eader.gif" alt=3D"" width=3D"318" height=3D"42">'=0A=
		+ '</div><p class=3D"cnnRRRFY">Stories you may be interested in based =
on past browsing</p>'=0A=
		+ '<table cellpadding=3D"0" cellspacing=3D"0" border=3D"0" =
width=3D"100%" class=3D"cnnRRTable">';=0A=
	for(var i=3D0; i < maxStories; i++)=0A=
	{=0A=
		var story =3D sectObj.stories[i];=0A=
		var urlString =3D story.url;=0A=
		var wool =3D '';=0A=
		if( !isCurrentStory( urlString ) )=0A=
		{=0A=
			if( story.url.match(/^\/money\//) )=0A=
			{=0A=
				wool =3D '<span style=3D"color:#949494">CNNMoney.com:</span> ';=0A=
				urlString =3D =
story.url.replace(/^\/money\//,'http://money.cnn.com/');=0A=
			}=0A=
			else if( story.url.match(/^\/si\//) )=0A=
			{=0A=
				wool =3D '<span style=3D"color:#949494">SI.com:</span> ';=0A=
				urlString =3D =
story.url.replace(/^\/si\//,'http://sportsillustrated.cnn.com/');=0A=
			}=0A=
			else if( story.url.match(/^\/time\//) )=0A=
			{=0A=
				wool =3D '<span style=3D"color:#949494">Time.com:</span> ';=0A=
				urlString =3D story.url.replace(/^\/time\//,'http://www.time.com/');=0A=
			}=0A=
=0A=
			if(urlString.indexOf('?') > -1) { urlString +=3D =
'&iref=3Dwerecommend'; }=0A=
			else { urlString +=3D '?iref=3Dwerecommend'; }=0A=
=0A=
			retHTML +=3D '<tr><td>'+wool+'<a =
href=3D"'+urlString+'">'+story.headline+'</a>';=0A=
			if(story.videoAttached =3D=3D 'true')=0A=
			{=0A=
				retHTML +=3D '&nbsp;<img =
src=3D"'+IMG_HOST+'/.element/img/2.0/global/icons/video_icon.gif" =
width=3D"16" height=3D"10" border=3D"0" alt=3D"" class=3D"cnnVidIcon">';=0A=
			}=0A=
			retHTML +=3D '</td><td class=3D"cnnRRImgCol">&nbsp;</td></tr>';=0A=
		}=0A=
	}=0A=
	retHTML +=3D '</table>';=0A=
	retHTML +=3D '</div><div class=3D"cnnRightColRnd"><img =
src=3D"'+IMG_HOST+'/.element/img/2.0/mosaic/mostpopular/roundbot.336_5.gi=
f" width=3D"336" height=3D"5" border=3D"0" alt=3D""></div></div>';=0A=
=0A=
	return retHTML;=0A=
}=0A=
=0A=
function isCurrentStory( assetURL )=0A=
{	=0A=
	var relPath =3D assetURL.replace(/^http:\/\/[^/]*?\//, '/');=0A=
	relPath =3D relPath.replace(/\/[^/]*?$/, '' );=0A=
	return ( window.location.pathname.toString().indexOf(relPath) > -1 );=0A=
}=0A=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/StorageManager.js

function StorageManager() {=0A=
	if (StorageManager.caller !=3D StorageManager.getInstance) {=0A=
		if((navigator.userAgent.indexOf('Safari')=3D=3D-1) && =
(navigator.userAgent.indexOf('Opera')=3D=3D-1)) {=0A=
			throw new Error("There is no public constructor for StorageManager.");=0A=
		}=0A=
	}=0A=
	this.currentStorageMechanism =3D false;=0A=
	this.getStorage =3D function(cookieOnly) {=0A=
		if (!this.currentStorageMechanism) {=0A=
			if (document.cookie || document.cookie=3D=3D'') {=0A=
				this.currentStorageMechanism =3D new CookieStorageMechanism();=0A=
			}=0A=
			if (window.globalStorage && (window.globalStorage!=3Dnull)) {=0A=
				this.currentStorageMechanism =3D new DOMStorageMechanism();=0A=
			}=0A=
			if (navigator.userAgent.indexOf('MSIE')!=3D-1) {=0A=
				this.currentStorageMechanism =3D new IEStorageMechanism();=0A=
			}=0A=
			this.currentStorageMechanism.initialize();=0A=
		}=0A=
		return this.currentStorageMechanism;=0A=
	}=0A=
}=0A=
=0A=
StorageManager.__instance__ =3D null; // static property=0A=
=0A=
StorageManager.getInstance =3D function () {=0A=
	if (this.__instance__ =3D=3D null) {=0A=
		this.__instance__ =3D new StorageManager();=0A=
	}=0A=
	return this.__instance__;=0A=
}=0A=
=0A=
function AbstractStorageMechanism() {=0A=
	this.name =3D 'AbstractStorage';=0A=
	this.dataObjects =3D new Array();=0A=
	this.keysExpireDates =3D new Array();=0A=
	this.maxCapacity =3D Number.MAX_VALUE;=0A=
	this.singleEntrymaxCapacity =3D Number.MAX_VALUE;=0A=
	this.allKeys =3D new Array();=0A=
	this.onload =3D function(){}=0A=
	this.initialize =3D function() {=0A=
		this.dataObjects =3D new Array();=0A=
		this.allKeys =3D new Array();=0A=
		this.keysExpireDates =3D new Array();=0A=
	}=0A=
	this.setOnload =3D function(func) { =0A=
		this.onload =3D func;=0A=
	}=0A=
	this.put =3D function(key, obj, expirationDate) {=0A=
		if(!this.dataObjects[key]) {=0A=
			if(!expirationDate) { expirationDate=3Dnew Date(new Date().getTime() =
+ 7*24*3600000 ); } // setting default to expire in 7 days=0A=
			this.keysExpireDates[ key ] =3D expirationDate;=0A=
			this.allKeys.push(key);=0A=
		}=0A=
		this.dataObjects[key] =3D obj;=0A=
		return true;=0A=
	}=0A=
	this.get =3D function(key) {=0A=
		return this.dataObjects[key];=0A=
	}=0A=
	this.remove =3D function(key) {=0A=
		if(this.contains( key )) {=0A=
			var newArray =3D new Array();=0A=
			for(var i=3D0;i<this.allKeys.length;i++) {=0A=
				if(this.allKeys[i]!=3Dkey) {=0A=
					newArray.push(this.allKeys[i]);=0A=
				}=0A=
			}=0A=
			this.allKeys =3D newArray;=0A=
			this.dataObjects[key] =3D false;=0A=
		}=0A=
	}=0A=
	this.contains =3Dfunction(key) {=0A=
		if(this.dataObjects[key]) { return true;} else { return false;}=0A=
	}=0A=
	this.getAllKeys =3D function(key) {=0A=
		return this.allKeys;=0A=
	}=0A=
	this.save =3D function() {}=0A=
	this.load =3D function(){this.onload();}	=0A=
	this.clear =3D function() {}=0A=
}=0A=
=0A=
function CookieStorageMechanism() {=0A=
	this.name =3D 'CookieStorage';=0A=
	this.maxCapacity =3D 20480; // 20k=0A=
	this.path =3D '/';=0A=
	this.domain =3D '';=0A=
	this.secure =3D false;	=0A=
	this.createCookie =3D function(key,value,expiration) {=0A=
			document.cookie =3D key + '=3D' + value + =
((expiration)?(';expires=3D' + expiration):'') + ((this.path)?';path=3D' =
+ this.path:'') + ((this.domain)?';domain=3D' + this.domain:'') + =
((this.secure && (this.secure =3D=3D true))?'; secure':'');=0A=
	}=0A=
	this.save =3D function() {=0A=
		this.clear();=0A=
		var allKeys =3D this.getAllKeys();=0A=
		var lengthCount =3D 0;=0A=
		for(var i=3D0;i<allKeys.length;i++) {=0A=
			var currentKey =3D allKeys[i];=0A=
			var value =3D this.get(currentKey);=0A=
			var newObject =3D new Object();=0A=
			newObject.value =3D value;=0A=
			newObject.expireDate =3D (this.keysExpireDates[currentKey]).getTime();=0A=
			dataString =3D escape(JSON.stringify(newObject));=0A=
			if ((lengthCount + dataString.length) > this.maxCapacity)=0A=
				return false;=0A=
			else {=0A=
				lengthCount +=3D dataString.length;=0A=
				=
this.createCookie('js_'+currentKey,dataString,(this.keysExpireDates[curre=
ntKey]).toGMTString());=0A=
			}=0A=
		}	=0A=
		return true;=0A=
	}=0A=
	this.load =3D function() {=0A=
		if ( document.cookie !=3D '' ) {=0A=
			var cookieArr =3D document.cookie.split('; ');=0A=
			for(var i=3D0;i<cookieArr.length;i++) {=0A=
				var key =3D cookieArr[i].substring(0,cookieArr[i].indexOf('=3D'));=0A=
				if(key.indexOf('js_')=3D=3D0) {=0A=
					storedObject =3D =
eval('('+(unescape(cookieArr[i].substring(cookieArr[i].indexOf('=3D')+1))=
)+')');=0A=
					key =3D key.substring(3);=0A=
					this.put(key, storedObject.value, new Date(storedObject.expireDate) =
);=0A=
				}=0A=
			}=0A=
		}=0A=
		this.onload();=0A=
	}=0A=
	this.clear =3D function() {=0A=
		if (document.cookie !=3D '') {=0A=
			var cookieArr =3D document.cookie.split('; ');=0A=
			for (var i =3D 0; i < cookieArr.length; i++) {=0A=
				var key =3D cookieArr[i].substring(0,cookieArr[i].indexOf('=3D'));=0A=
				if (key.indexOf('js_') =3D=3D 0) {=0A=
					toExpireDateString =3D (new Date((new Date()).getTime() - =
(24*60*60*60*1000))).toGMTString();=0A=
					this.createCookie(key,'clear this',toExpireDateString);=0A=
				}=0A=
			}=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
function DOMStorageMechanism() {=0A=
	this.name =3D 'DOMStorage';=0A=
	this.maxCapacity =3D 3145728; // 3M=0A=
	this.save =3D function() {=0A=
		var allKeys =3D this.getAllKeys();=0A=
		var storedObject =3D new Array();=0A=
		for(var i=3D0;i<allKeys.length;i++) {=0A=
			var currentKey =3D allKeys[i];=0A=
			var value =3D this.get(currentKey);=0A=
			var newObject =3D new Object();=0A=
			newObject.key =3D currentKey;=0A=
			newObject.value =3D value;=0A=
			newObject.expireDate =3D =
(this.keysExpireDates[currentKey]).toGMTString();=0A=
			storedObject.push(newObject);=0A=
		}	=0A=
		dataString =3D JSON.stringify(storedObject);=0A=
		if (dataString.length > this.maxCapacity)=0A=
			return false;=0A=
		else=0A=
			window.globalStorage[document.domain].storage =3D dataString;=0A=
		return true;=0A=
	}=0A=
	this.load =3D function() {=0A=
		var storedDataObjectsStr =3D =
window.globalStorage[document.domain].storage+'';=0A=
		if(storedDataObjectsStr)=0A=
		{=0A=
			storedDataObjects =3D eval('('+storedDataObjectsStr+')');=0A=
			if(storedDataObjects && storedDataObjects!=3D'')=0A=
			{=0A=
				for(var i=3D0;i<storedDataObjects.length;i++) =0A=
				{=0A=
					var storedObject =3D storedDataObjects[i];=0A=
					if ((new Date(storedObject.expireDate)).getTime() > (new =
Date().getTime())) =0A=
					{=0A=
						this.put(storedObject.key, storedObject.value, new =
Date(storedObject.expireDate));=0A=
					}					=0A=
				}=0A=
			}=0A=
		}=0A=
		this.onload();=0A=
	}=0A=
	this.clear =3D function() {=0A=
		window.globalStorage[document.domain].storage =3D JSON.stringify(new =
Object());=0A=
	}	=0A=
}=0A=
=0A=
function IEStorageMechanism() {=0A=
	this.name =3D 'IEStorage';=0A=
	this.maxCapacity =3D 65536;=0A=
	this.initialize =3D function() {=0A=
		this.dataObjects =3D new Array();=0A=
		this.allKeys =3D new Array();=0A=
		this.keysExpireDates =3D new Array();=0A=
		this.dataHook =3D false;=0A=
		var newIframeNode =3D document.createElement('iframe');=0A=
		=
newIframeNode.setAttribute('src','/.element/js/2.0/scripts/IEPersistence.=
html');=0A=
		newIframeNode.setAttribute('name','IEPersistence');=0A=
		document.documentElement.appendChild(newIframeNode);=0A=
	}=0A=
	this.load =3D function() {}=0A=
	this.save =3D function () {=0A=
		var allKeys =3D this.getAllKeys();=0A=
		var storedObject =3D new Array();=0A=
		for(var i=3D0;i<allKeys.length;i++) {=0A=
			var currentKey =3D allKeys[i];=0A=
			var value =3D this.get(currentKey);=0A=
			var newObject =3D new Object();=0A=
			newObject.key =3D currentKey;=0A=
			newObject.value =3D value;=0A=
			newObject.expireDate =3D =
(this.keysExpireDates[currentKey]).toGMTString();=0A=
			storedObject.push(newObject);=0A=
		}	=0A=
		dataString =3D JSON.stringify(storedObject);=0A=
		if (dataString.length > this.maxCapacity)=0A=
			return false;=0A=
		else=0A=
			this.dataHook.saveData(JSON.stringify( storedObject ));=0A=
		return true;=0A=
	}=0A=
	this.clear =3D function () {=0A=
		this.dataHook.saveData('');=0A=
	}=0A=
}=0A=
=0A=
CookieStorageMechanism.prototype =3D new AbstractStorageMechanism;=0A=
DOMStorageMechanism.prototype =3D new AbstractStorageMechanism;=0A=
IEStorageMechanism.prototype =3D new AbstractStorageMechanism;=0A=
=0A=
/*=0A=
Copyright (c) 2005 JSON.org=0A=
=0A=
Permission is hereby granted, free of charge, to any person obtaining a =
copy=0A=
of this software and associated documentation files (the "Software"), to =
deal=0A=
in the Software without restriction, including without limitation the =
rights=0A=
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell=0A=
copies of the Software, and to permit persons to whom the Software is=0A=
furnished to do so, subject to the following conditions:=0A=
=0A=
The Software shall be used for Good, not Evil.=0A=
=0A=
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS =
OR=0A=
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,=0A=
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL =
THE=0A=
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER=0A=
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING =
FROM,=0A=
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS =
IN THE=0A=
SOFTWARE.=0A=
*/=0A=
=0A=
Array.prototype.______array =3D '______array';=0A=
=0A=
var JSON =3D {=0A=
    org: 'http://www.JSON.org',=0A=
    copyright: '(c)2005 JSON.org',=0A=
    license: 'http://www.crockford.com/JSON/license.html',=0A=
=0A=
    stringify: function (arg, namedValue) {=0A=
        var c, i, l, s =3D '', v;=0A=
=0A=
        switch (typeof arg) {=0A=
        case 'object':=0A=
            if (arg) {=0A=
                if (arg.______array =3D=3D '______array') {=0A=
                    for (i =3D 0; i < arg.length; ++i) {=0A=
                        v =3D this.stringify(arg[i]);=0A=
                        if (s) {=0A=
                            s +=3D ',';=0A=
                        }=0A=
                        s +=3D v;=0A=
                    }=0A=
                    return '[' + s + ']';=0A=
                } else if (typeof arg.toString !=3D 'undefined') {=0A=
                    for (i in arg) {=0A=
                        v =3D arg[i];=0A=
                        if (typeof v !=3D 'undefined' && typeof v !=3D =
'function') {=0A=
                            v =3D this.stringify(v);=0A=
                            if (s) {=0A=
                                s +=3D ',';=0A=
                            }=0A=
                            s +=3D this.stringify(i, true) + ':' + v;=0A=
                        }=0A=
                    }=0A=
                    return '{' + s + '}';=0A=
                }=0A=
            }=0A=
            return 'null';=0A=
        case 'number':=0A=
            return isFinite(arg) ? String(arg) : 'null';=0A=
        case 'string':=0A=
            l =3D arg.length;=0A=
			if(!namedValue)=0A=
			{=0A=
	            s =3D '"';=0A=
			}=0A=
            for (i =3D 0; i < l; i +=3D 1) {=0A=
                c =3D arg.charAt(i);=0A=
                if (c >=3D ' ') {=0A=
                    if (c =3D=3D '\\' || c =3D=3D '"') {=0A=
                        s +=3D '\\';=0A=
                    }=0A=
                    s +=3D c;=0A=
                } else {=0A=
                    switch (c) {=0A=
                        case '\b':=0A=
                            s +=3D '\\b';=0A=
                            break;=0A=
                        case '\f':=0A=
                            s +=3D '\\f';=0A=
                            break;=0A=
                        case '\n':=0A=
                            s +=3D '\\n';=0A=
                            break;=0A=
                        case '\r':=0A=
                            s +=3D '\\r';=0A=
                            break;=0A=
                        case '\t':=0A=
                            s +=3D '\\t';=0A=
                            break;=0A=
                        default:=0A=
                            c =3D c.charCodeAt();=0A=
                            s +=3D '\\u00' + Math.floor(c / =
16).toString(16) +=0A=
                                (c % 16).toString(16);=0A=
                    }=0A=
                }=0A=
            }=0A=
			if(!namedValue)=0A=
			{=0A=
	            return s + '"';=0A=
			}=0A=
			else=0A=
			{=0A=
            return s;=0A=
			}=0A=
        case 'boolean':=0A=
            return String(arg);=0A=
        default:=0A=
            return 'null';=0A=
        }=0A=
    },=0A=
    parse: function (text) {=0A=
        var at =3D 0;=0A=
        var ch =3D ' ';=0A=
=0A=
        function error(m) {=0A=
            throw {=0A=
                name: 'JSONError',=0A=
                message: m,=0A=
                at: at - 1,=0A=
                text: text=0A=
            };=0A=
        }=0A=
=0A=
        function next() {=0A=
            ch =3D text.charAt(at);=0A=
            at +=3D 1;=0A=
            return ch;=0A=
        }=0A=
=0A=
        function white() {=0A=
            while (ch !=3D '' && ch <=3D ' ') {=0A=
                next();=0A=
            }=0A=
        }=0A=
=0A=
        function str() {=0A=
            var i, s =3D '', t, u;=0A=
=0A=
            if (ch =3D=3D '"') {=0A=
outer:          while (next()) {=0A=
                    if (ch =3D=3D '"') {=0A=
                        next();=0A=
                        return s;=0A=
                    } else if (ch =3D=3D '\\') {=0A=
                        switch (next()) {=0A=
                        case 'b':=0A=
                            s +=3D '\b';=0A=
                            break;=0A=
                        case 'f':=0A=
                            s +=3D '\f';=0A=
                            break;=0A=
                        case 'n':=0A=
                            s +=3D '\n';=0A=
                            break;=0A=
                        case 'r':=0A=
                            s +=3D '\r';=0A=
                            break;=0A=
                        case 't':=0A=
                            s +=3D '\t';=0A=
                            break;=0A=
                        case 'u':=0A=
                            u =3D 0;=0A=
                            for (i =3D 0; i < 4; i +=3D 1) {=0A=
                                t =3D parseInt(next(), 16);=0A=
                                if (!isFinite(t)) {=0A=
                                    break outer;=0A=
                                }=0A=
                                u =3D u * 16 + t;=0A=
                            }=0A=
                            s +=3D String.fromCharCode(u);=0A=
                            break;=0A=
                        default:=0A=
                            s +=3D ch;=0A=
                        }=0A=
                    } else {=0A=
                        s +=3D ch;=0A=
                    }=0A=
                }=0A=
            }=0A=
            error("Bad string");=0A=
        }=0A=
=0A=
        function arr() {=0A=
            var a =3D [];=0A=
=0A=
            if (ch =3D=3D '[') {=0A=
                next();=0A=
                white();=0A=
                if (ch =3D=3D ']') {=0A=
                    next();=0A=
                    return a;=0A=
                }=0A=
                while (ch) {=0A=
                    a.push(val());=0A=
                    white();=0A=
                    if (ch =3D=3D ']') {=0A=
                        next();=0A=
                        return a;=0A=
                    } else if (ch !=3D ',') {=0A=
                        break;=0A=
                    }=0A=
                    next();=0A=
                    white();=0A=
                }=0A=
            }=0A=
            error("Bad array");=0A=
        }=0A=
=0A=
        function obj() {=0A=
            var k, o =3D {};=0A=
=0A=
            if (ch =3D=3D '{') {=0A=
                next();=0A=
                white();=0A=
                if (ch =3D=3D '}') {=0A=
                    next();=0A=
                    return o;=0A=
                }=0A=
                while (ch) {=0A=
                    k =3D str();=0A=
                    white();=0A=
                    if (ch !=3D ':') {=0A=
                        break;=0A=
                    }=0A=
                    next();=0A=
                    o[k] =3D val();=0A=
                    white();=0A=
                    if (ch =3D=3D '}') {=0A=
                        next();=0A=
                        return o;=0A=
                    } else if (ch !=3D ',') {=0A=
                        break;=0A=
                    }=0A=
                    next();=0A=
                    white();=0A=
                }=0A=
            }=0A=
            error("Bad object");=0A=
        }=0A=
=0A=
        function num() {=0A=
            var n =3D '', v;=0A=
            if (ch =3D=3D '-') {=0A=
                n =3D '-';=0A=
                next();=0A=
            }=0A=
            while (ch >=3D '0' && ch <=3D '9') {=0A=
                n +=3D ch;=0A=
                next();=0A=
            }=0A=
            if (ch =3D=3D '.') {=0A=
                n +=3D '.';=0A=
                while (next() && ch >=3D '0' && ch <=3D '9') {=0A=
                    n +=3D ch;=0A=
                }=0A=
            }=0A=
            if (ch =3D=3D 'e' || ch =3D=3D 'E') {=0A=
                n +=3D 'e';=0A=
                next();=0A=
                if (ch =3D=3D '-' || ch =3D=3D '+') {=0A=
                    n +=3D ch;=0A=
                    next();=0A=
                }=0A=
                while (ch >=3D '0' && ch <=3D '9') {=0A=
                    n +=3D ch;=0A=
                    next();=0A=
                }=0A=
            }=0A=
            v =3D +n;=0A=
            if (!isFinite(v)) {=0A=
                error("Bad number");=0A=
            } else {=0A=
                return v;=0A=
            }=0A=
        }=0A=
=0A=
        function word() {=0A=
            switch (ch) {=0A=
                case 't':=0A=
                    if (next() =3D=3D 'r' && next() =3D=3D 'u' && next() =
=3D=3D 'e') {=0A=
                        next();=0A=
                        return true;=0A=
                    }=0A=
                    break;=0A=
                case 'f':=0A=
                    if (next() =3D=3D 'a' && next() =3D=3D 'l' && next() =
=3D=3D 's' &&=0A=
                            next() =3D=3D 'e') {=0A=
                        next();=0A=
                        return false;=0A=
                    }=0A=
                    break;=0A=
                case 'n':=0A=
                    if (next() =3D=3D 'u' && next() =3D=3D 'l' && next() =
=3D=3D 'l') {=0A=
                        next();=0A=
                        return null;=0A=
                    }=0A=
                    break;=0A=
            }=0A=
            error("Syntax error");=0A=
        }=0A=
=0A=
        function val() {=0A=
            white();=0A=
            switch (ch) {=0A=
                case '{':=0A=
                    return obj();=0A=
                case '[':=0A=
                    return arr();=0A=
                case '"':=0A=
                    return str();=0A=
                case '-':=0A=
                    return num();=0A=
                default:=0A=
                    return ch >=3D '0' && ch <=3D '9' ? num() : word();=0A=
            }=0A=
        }=0A=
=0A=
        return val();=0A=
    }=0A=
};=0A=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/statemanager.js

window.EXANIMO=3Dwindow.EXANIMO||{};EXANIMO.namespace=3Dfunction(ns){if(!=
ns||!ns.length){return;}var _2=3Dns.split(".");var _3=3DEXANIMO;for(var =
i=3D(_2[0]=3D=3D"EXANIMO")?1:0;i<_2.length;i++){_3[_2[i]]=3D_3[_2[i]]||{}=
;_3=3D_3[_2[i]];}return =
_3;};EXANIMO.namespace("EXANIMO.utils");EXANIMO.utils.getBrowserInfo=3Dfu=
nction(){if(navigator.appName.indexOf("Microsoft =
Internet")!=3D-1){return =
{browser:"MSIE"};}if(navigator.userAgent.indexOf("Safari")!=3D-1){return =
{browser:"SAFARI"};}else{return =
{browser:"OTHER"};}};EXANIMO.namespace("EXANIMO.utils");EXANIMO.utils.get=
SWFObject=3Dfunction(id){if(window.document[id]){return =
window.document[id];}if(navigator.appName.indexOf("Microsoft =
Internet")=3D=3D-1){if(document.embeds&&document.embeds[id]){return =
document.embeds[id];}else{return =
document.getElementById(id);}}};EXANIMO.namespace("EXANIMO.managers");if(=
!EXANIMO.managers.StateManager){EXANIMO.managers.StateManager=3D{CHECK_RA=
TE:100,stateChangeHandler:null,event:null,_initialized:false,_autoInitInt=
erval:setInterval(function(){if(document.body&&!EXANIMO.managers.StateMan=
ager._initialized){/*EXANIMO.managers.StateManager.initialize();*/}},10),=
_checkInterval:null,_method:null,_swf:null,_oldStateID:null,_refreshPage:=
null,_cancelLoad:false,initialize:function(_6){clearInterval(EXANIMO.mana=
gers.StateManager._autoInitInterval);clearInterval(EXANIMO.managers.State=
Manager._checkInterval);EXANIMO.managers.StateManager._initialized=3Dtrue=
;if(typeof =
_6!=3D"undefined"){EXANIMO.managers.StateManager._swf=3Dtypeof =
(_6)=3D=3D"string"?EXANIMO.utils.getSWFObject(_6):_6||null;}var =
_7=3DEXANIMO.utils.getBrowserInfo();switch(_7.browser){case =
"MSIE":EXANIMO.managers.StateManager._method=3D"IFRAME";break;case =
"SAFARI":EXANIMO.managers.StateManager._method=3D"LINK";break;default:EXA=
NIMO.managers.StateManager._method=3D"HASH";break;}switch(EXANIMO.manager=
s.StateManager._method){case "HASH":var =
_8=3DEXANIMO.managers.StateManager._getStateID();EXANIMO.managers.StateMa=
nager._oldStateID=3D_8=3D=3D"home"?"home":null;var _9=3Dfunction(){var =
_a=3DEXANIMO.managers.StateManager._getStateID();if(_a!=3DEXANIMO.manager=
s.StateManager._oldStateID){EXANIMO.managers.StateManager._oldStateID=3D_=
a;EXANIMO.managers.StateManager._dispatchEvent(_a);}};EXANIMO.managers.St=
ateManager._checkInterval=3DsetInterval(_9,EXANIMO.managers.StateManager.=
CHECK_RATE);break;case =
"IFRAME":EXANIMO.managers.StateManager._refreshPage=3Dfalse;var =
_b=3Ddocument.createElement("iframe");_b.setAttribute("src","about:blank"=
);_b.setAttribute("name","EXANIMO-managers-StateManager-iFrame");_b.setAt=
tribute("id","EXANIMO-managers-StateManager-iFrame");_b.style.visibility=3D=
"hidden";_b.style.width=3D"0";_b.style.height=3D"0";_b.style.position=3D"=
absolute";_b.style.overflow=3D"hidden";document.body.appendChild(_b);var =
_c=3DEXANIMO.managers.StateManager._getStateID();if(_c!=3D"home"){setTime=
out(function(){EXANIMO.managers.StateManager._dispatchEvent(_c);},0);}if(=
_c){window.setTimeout(function() =
{frames['EXANIMO-managers-StateManager-iFrame'].location.href =3D =
'/.element/ssi/story/2.0/history.exclude.html?state=3D'+(_c =3D=3D =
'home' ? '' : =
_c)+'&init=3Dtrue'},500);}else{window.setTimeout(function() =
{frames['EXANIMO-managers-StateManager-iFrame'].location.href =3D =
'/.element/ssi/story/2.0/history.exclude.html'},500);};break;case =
"LINK":document.location.EXANIMO=3Ddocument.location.EXANIMO||{};document=
.location.EXANIMO.managers=3Ddocument.location.EXANIMO.managers||{};docum=
ent.location.EXANIMO.managers.StateManager=3Ddocument.location.EXANIMO.ma=
nagers.StateManager||{};var =
_d=3Ddocument.location.EXANIMO.managers.StateManager;_d.oldHistoryLength =
=3D =
history.length;window.onunload=3Dfunction(){_d.oldHistoryLength=3D-1;};if=
(_d.deepLink&&_d.deepLink!=3D"home"){_d.oldHistoryLength=3D-1;_d.deepLink=
=3Dnull;}if(typeof =
_d.stateList=3D=3D"undefined"){_d.stateList=3D[EXANIMO.managers.StateMana=
ger._getStateID()||"home"];_d.deepLink=3D_d.stateList[0];_d.offset=3Dhist=
ory.length-1;while(_d.offset){_d.stateList.unshift(null);_d.offset--;}del=
ete =
_d.offset;_d.oldHistoryLength=3Ddocument.location.hash?-1:history.length;=
}var _e=3Dfunction(){var =
_f=3Ddocument.location.EXANIMO.managers.StateManager;if(EXANIMO.managers.=
StateManager._cancelLoad){EXANIMO.managers.StateManager._cancelLoad=3Dfal=
se;_f.oldHistoryLength=3Dhistory.length;return;}if(history.length!=3D_f.o=
ldHistoryLength){var =
_10=3D_f.stateList[history.length-1];EXANIMO.managers.StateManager._dispa=
tchEvent(_10);_f.oldHistoryLength=3Dhistory.length;}};EXANIMO.managers.St=
ateManager._checkInterval=3DsetInterval(_e,EXANIMO.managers.StateManager.=
CHECK_RATE);break;}},setState:function(_11,_12){if(_12){EXANIMO.managers.=
StateManager.setTitle(_12);}if(EXANIMO.managers.StateManager.event){retur=
n;}switch(EXANIMO.managers.StateManager._method){case =
"HASH":document.location.hash=3D_11=3D=3D"home"?"#":_11;EXANIMO.managers.=
StateManager._oldStateID=3D_11;break;case =
"IFRAME":EXANIMO.managers.StateManager._setIFrame(_11);break;case =
"LINK":EXANIMO.managers.StateManager._cancelLoad=3Dtrue;var =
a=3Ddocument.createElement("a");a.setAttribute("href",_11=3D=3D"home"?"#"=
:"#"+_11);var =
evt=3Ddocument.createEvent("MouseEvents");evt.initEvent("click",true,true=
);a.dispatchEvent(evt);document.location.EXANIMO.managers.StateManager.st=
ateList.push(_11);break;}EXANIMO.managers.StateManager._dispatchEvent(_11=
,true);},setTitle:function(_15){/*window.document.title=3D_15||" =
";*/},_dispatchEvent:function(_16,_17){_16=3D_16||"home";if((typeof =
EXANIMO.utils.JSInterface!=3D"undefined")&&(EXANIMO.utils.JSInterface.swf=
Object)){EXANIMO.managers.StateManager._swf=3DEXANIMO.managers.StateManag=
er._swf||EXANIMO.utils.JSInterface.swfObject;}if(EXANIMO.managers.StateMa=
nager._swf){if(!_17&&EXANIMO.managers.StateManager._swf.dispatchStateChan=
geEvents){EXANIMO.managers.StateManager._swf.dispatchStateChangeEvents(_1=
6);}}else{EXANIMO.managers.StateManager.event=3D{id:_16};if(EXANIMO.manag=
ers.StateManager.stateChangeHandler){EXANIMO.managers.StateManager.stateC=
hangeHandler(EXANIMO.managers.StateManager.event);}if(_17){if(EXANIMO.man=
agers.StateManager.stateSetHandler){EXANIMO.managers.StateManager.stateSe=
tHandler(EXANIMO.managers.StateManager.event);}}else{if(EXANIMO.managers.=
StateManager.stateRevisitedHandler){EXANIMO.managers.StateManager.stateRe=
visitedHandler(EXANIMO.managers.StateManager.event);}}EXANIMO.managers.St=
ateManager.event=3Dnull;}},_getStateID:function(){return =
document.location.href.split("#")[1]||"home";},_setIFrame:function(_18){E=
XANIMO.managers.StateManager._refreshPage=3Dfalse;var =
_19=3Ddocument.getElementById("EXANIMO-managers-StateManager-iFrame");swi=
tch(EXANIMO.managers.StateManager._method){case =
"IFRAME":window.setTimeout(function() =
{frames['EXANIMO-managers-StateManager-iFrame'].location.href =3D =
'/.element/ssi/story/2.0/history.exclude.html?state=3D'+(_18 =3D=3D =
'home' ? '' : =
_18)+'&delay=3Dtrue'},500);break;}},_updateIFrame:function(_1a){if(EXANIM=
O.managers.StateManager._refreshPage){EXANIMO.managers.StateManager._disp=
atchEvent(_1a);}else{EXANIMO.managers.StateManager._refreshPage=3Dtrue;}}=
};}
------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/mosaic.js

window.StateManager =3D EXANIMO.managers.StateManager;=0A=
=0A=
StateManager.stateChangeHandler =3D function(e)=0A=
{=0A=
	try {=0A=
		=
curcnnContentTracker.cnnChangeMosaicTab(curcnnContentTracker.getReverseSt=
ateHash(e.id),curcnnContentTracker.getStateUrl(e.id));=0A=
		if(e.id.toLowerCase() =3D=3D "cnnstcvideo") {=0A=
			cnnTriggerVideo(1);=0A=
			if (cnnMpActiveId && cnnMpActiveId !=3D 'cnnMpVideo') {=0A=
				if ($('cnnMpVideo')) {=0A=
					cnnToggleMP('cnnMpVideo');=0A=
				}=0A=
			}=0A=
		} else {=0A=
			if (cnnMpActiveId && cnnMpActiveId !=3D 'cnnMpStory') {=0A=
				if ($('cnnMpStory')) {=0A=
					cnnToggleMP('cnnMpStory');=0A=
				}=0A=
			}=0A=
			if (typeof CNNPlayer !=3D "undefined") {=0A=
				CNNPlaylistManager.getInstance().MOSUnload();=0A=
			}=0A=
		}=0A=
	} catch(e) {};=0A=
}  =0A=
=0A=
function swapAd (type) {=0A=
	if (typeof cnnad_refreshAds =3D=3D 'function') { =0A=
		cnnad_refreshAds(type);=0A=
	}=0A=
}=0A=
=0A=
var cnnMosaicDetect=3D true;=0A=
var cnnDefaultTab =3D null;=0A=
var cnnAnimateTabs =3D true;=0A=
var cnnCurrTime =3D new Date();=0A=
var cnnStoryPublishTime =3D new Date();=0A=
var cnnDefaultAdsLoaded =3D false;=0A=
var cnnDefault180AdsLoaded =3D false;=0A=
var cnnDefault336AdsLoaded =3D false;=0A=
pagetypeTS =3D "mosaic";=0A=
=0A=
=0A=
/* _____________________________________________________ Story font =
widget */=0A=
=0A=
var CNN_FONT_COOKIE_NAME =3D "cnnFont";=0A=
var CNN_FONT_COOKIE_PATH =3D "/";=0A=
var CNN_FONT_COOKIE_DOMAIN =3D cnnCurrDomain;=0A=
var CNN_FONT_COOKIE =3D allCookies[ CNN_FONT_COOKIE_NAME ] || null;=0A=
var CNN_CSS_TITLE =3D CNN_FONT_COOKIE ? CNN_FONT_COOKIE : null;=0A=
=0A=
=0A=
=0A=
function setActiveStyleSheet(CNN_CSS_TITLE) {=0A=
  var i, a;=0A=
  for(i=3D0; (a =3D document.getElementsByTagName("link")[i]); i++) {=0A=
    if(a.getAttribute("rel").indexOf("style") !=3D -1 && =
a.getAttribute("title")) {=0A=
      a.disabled =3D true;=0A=
      if(a.getAttribute("title") =3D=3D CNN_CSS_TITLE) a.disabled =3D =
false;=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
function getActiveStyleSheet() {=0A=
  var i, a;=0A=
  for(i=3D0; (a =3D document.getElementsByTagName("link")[i]); i++) {=0A=
    if(a.getAttribute("rel").indexOf("style") !=3D -1 && =
a.getAttribute("title") && !a.disabled) return a.getAttribute("title");=0A=
  }=0A=
  return null;=0A=
}=0A=
=0A=
=0A=
Event.observe(window, 'unload', function(e) {=0A=
  if (getActiveStyleSheet() !=3D null) {=0A=
  	if (getActiveStyleSheet() !=3D CNN_FONT_COOKIE) {=0A=
	  	CNN_setCookie( CNN_FONT_COOKIE_NAME, getActiveStyleSheet(), 24*31, =
CNN_FONT_COOKIE_PATH, CNN_FONT_COOKIE_DOMAIN, '');=0A=
	}=0A=
  } else {=0A=
  	CNN_killCookie( CNN_FONT_COOKIE_NAME, CNN_FONT_COOKIE_PATH, =
CNN_FONT_COOKIE_DOMAIN );=0A=
  }=0A=
});=0A=
=0A=
=0A=
setActiveStyleSheet(CNN_CSS_TITLE);=0A=
=0A=
Event.observe(window, 'load', function() {=0A=
	if ($('cnnTabNav')) {=0A=
		StateManager.initialize();	=0A=
		cnnSetClickability(curcnnContentTracker.cnnActiveTab);=0A=
	} else {=0A=
		cnnSetClickability('cnnTxtCmpnt');	=0A=
		if (typeof cnnDefaultTab =3D=3D 'string') {=0A=
			CNN_omniture.Load.fetchConfigNoTab(cnnDefaultTab);=0A=
		} else {=0A=
			CNN_omniture.Load.fetchConfig('cnnTxtCmpnt');=0A=
		}=0A=
	}=0A=
});=0A=
=0A=
function cnnLoadTab(url) {=0A=
=0A=
	var contentDivs =3D $$('div#cnnHighLightTrigger =
div.cnnContentContainer');=0A=
=0A=
	for (var i =3D 0; i < contentDivs.length; i++) {						=
document.getElementById(contentDivs[i].id).setAttribute('style','display:=
none');=0A=
	}=0A=
=0A=
	var cnnSTCComponent =3D (location.hash !=3D "") ? location.hash : =
'#'+cnnDefaultTab;=0A=
		switch(cnnSTCComponent.toLowerCase()) {=0A=
			case '#cnnstctext':=0A=
curcnnContentTracker.cnnInitialTabLoad('cnnTxtCmpnt','article.html');=0A=
			break;=0A=
			case '#cnnstcvideo':=0A=
curcnnContentTracker.cnnInitialTabLoad('cnnVideoCmpnt','videos.html');=0A=
			break;=0A=
			case '#cnnstcphoto':=0A=
curcnnContentTracker.cnnInitialTabLoad('cnnPhotoCmpnt','photos.html');=0A=
			break;=0A=
			case '#cnnstcother1':=0A=
curcnnContentTracker.cnnInitialTabLoad('otherTab1','other1.html');=0A=
			break;=0A=
			case '#cnnstcother2':=0A=
curcnnContentTracker.cnnInitialTabLoad('otherTab2','other2.html');=0A=
			break;=0A=
			=0A=
			default:=0A=
curcnnContentTracker.cnnInitialTabLoad('cnnTxtCmpnt','article.html');			=0A=
		}	=0A=
}=0A=
=0A=
var defaultVideo =3D "";=0A=
=0A=
function CNN_changeMosaicTab(component,url,scroll,startVideo) {=0A=
	if(startVideo!=3Dnull){=0A=
		defaultVideo =3D startVideo;=0A=
	}else{=0A=
		defaultVideo =3D "";=0A=
	}=0A=
	if (typeof(curcnnContentTracker) !=3D "undefined") {=0A=
		if (scroll) {=0A=
			scrollTo(0,0);=0A=
		}=0A=
		StateManager.setState(curcnnContentTracker.getStateHash(component));=0A=
		CNN_omniture.Load.fetchConfig(component);=0A=
	} else {=0A=
 		return false;=0A=
	}=0A=
}=0A=
=0A=
=0A=
function cnnTabStripLinks() {=0A=
	var links =3D $$('div#cnnTabNav a');=0A=
	for (var i =3D 0; i <links.length; i++ ) {=0A=
		var href =3D links[i].getAttribute("href").toString().split('#');=0A=
		links[i].setAttribute("href","#"+href[1]);=0A=
		if (CNN.detectBrowser.isSafari()) {=0A=
			var currOnclick =3D links[i].getAttribute("onclick");=0A=
			currOnclick =3D currOnclick.replace('return false','return true');=0A=
			links[i].setAttribute("onclick",currOnclick);=0A=
		}=0A=
		=0A=
			if (CNN.detectBrowser.isIE6()) { //ugly hacks to make tab animation =
almost bearable in IE 6=0A=
=0A=
		var ieTabBG =3D document.createElement("img");=0A=
		ieTabBG.setAttribute("src", =
"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/bg_tab.gif");			=0A=
		ieTabBG.setAttribute("width", "123");		=0A=
		ieTabBG.setAttribute("height", "23");		=0A=
		ieTabBG.className =3D "tabDefaultBG";=0A=
=0A=
		var leftCornerFirst =3D document.createElement("img");=0A=
		leftCornerFirst.setAttribute("src", =
"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/bg_tab_current_first=
.gif");		=0A=
		leftCornerFirst.setAttribute("border", "0");		=0A=
		leftCornerFirst.setAttribute("width", "10");		=0A=
		leftCornerFirst.setAttribute("height", "29");		=0A=
		leftCornerFirst.className =3D "leftCornerFirst";				=0A=
			=0A=
		var leftCorner =3D document.createElement("img");=0A=
		leftCorner.setAttribute("src", =
"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/bg_tab_current_left.=
gif");		=0A=
		leftCorner.setAttribute("border", "0");		=0A=
		leftCorner.setAttribute("width", "10");		=0A=
		leftCorner.setAttribute("height", "29");		=0A=
		leftCorner.className =3D "leftCorner";		=0A=
		=0A=
		var rightCorner =3D document.createElement("img");=0A=
		rightCorner.setAttribute("src", =
"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/bg_tab_current_right=
.gif");		=0A=
		rightCorner.setAttribute("border", "0");		=0A=
		rightCorner.setAttribute("width", "10");		=0A=
		rightCorner.setAttribute("height", "29");		=0A=
		rightCorner.className =3D "rightCorner";		=0A=
=0A=
		var rightMostCorner =3D document.createElement("img");=0A=
		rightMostCorner.setAttribute("src", =
"http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/tabs/bg_tab_current_last_=
ie.gif");		=0A=
		rightMostCorner.setAttribute("border", "0");		=0A=
		rightMostCorner.setAttribute("width", "12");		=0A=
		rightMostCorner.setAttribute("height", "29");		=0A=
		rightMostCorner.className =3D "rightCornerLast";=0A=
=0A=
				links[i].parentNode.insertBefore(ieTabBG,links[i]);=0A=
				links[i].appendChild(leftCornerFirst);=0A=
				links[i].appendChild(leftCorner);=0A=
				links[i].appendChild(rightCorner);=0A=
				links[i].appendChild(rightMostCorner);=0A=
			}=0A=
	}=0A=
}=0A=
=0A=
var cnnContentTracker =3D Class.create();=0A=
=0A=
cnnContentTracker.prototype =3D {=0A=
	initialize: function(objName) {	=0A=
		this.cnnTxtCmpnt =3D false //has been loaded, is current tab;=0A=
		this.cnnVideoCmpnt =3D false;=0A=
		this.cnnPhotoCmpnt =3D false;=0A=
		this.otherTab1 =3D false;=0A=
		this.otherTab2 =3D false;=0A=
		this.cnnActiveTab =3D 'cnnTxtCmpnt';=0A=
		this.cnnActiveTabName=3D'cnnMosaic_tab1';=0A=
		this.cnnPrevActiveTabName=3D'cnnMosaic_tab1';		=0A=
		this.objName=3D objName;=0A=
	},=0A=
	setObjName: function(objName){=0A=
		this.objName =3D objName;=0A=
	},=0A=
	setValue: function(id,value) {=0A=
		switch(id) {=0A=
			case 'cnnTxtCmpnt':=0A=
				this.cnnTxtCmpnt =3D value;			=0A=
			break;=0A=
			case 'cnnVideoCmpnt':=0A=
				this.cnnVideoCmpnt =3D value;=0A=
			break;=0A=
			case 'cnnPhotoCmpnt':=0A=
				this.cnnPhotoCmpnt =3D value;=0A=
			break;=0A=
			case 'otherTab1':=0A=
				this.otherTab1 =3D value;=0A=
			break;=0A=
			case 'otherTab2':=0A=
				this.otherTab2 =3D value;=0A=
			break;=0A=
		}=0A=
	},=0A=
	setActiveTab: function(id){=0A=
		this.cnnActiveTab =3D id;=0A=
		switch(id) {=0A=
			case 'cnnTxtCmpnt':=0A=
				this.cnnActiveTabName =3D 'cnnMosaic_tab1';	=0A=
			break;=0A=
			case 'cnnVideoCmpnt':=0A=
				this.cnnActiveTabName =3D 'cnnMosaic_tab2';=0A=
			break;=0A=
			case 'cnnPhotoCmpnt':=0A=
				this.cnnActiveTabName =3D 'cnnMosaic_tab3';=0A=
			break;=0A=
			case 'otherTab1':=0A=
				this.cnnActiveTabName =3D 'cnnMosaic_tab4';=0A=
			break;=0A=
			case 'otherTab2':=0A=
				this.cnnActiveTabName =3D 'cnnMosaic_tab5';=0A=
			break;=0A=
		}=0A=
	},=0A=
	setPrevActiveTab: function(id) {=0A=
		this.cnnPrevActiveTab =3D id;		=0A=
		switch(id) {=0A=
			case 'cnnTxtCmpnt':=0A=
				this.cnnPrevActiveTabName =3D 'cnnMosaic_tab1';			=0A=
			break;=0A=
			case 'cnnVideoCmpnt':=0A=
				this.cnnPrevActiveTabName =3D 'cnnMosaic_tab2';=0A=
			break;=0A=
			case 'cnnPhotoCmpnt':=0A=
				this.cnnPrevActiveTabName =3D 'cnnMosaic_tab3';=0A=
			break;=0A=
			case 'otherTab1':=0A=
				this.cnnPrevActiveTabName =3D 'cnnMosaic_tab4';=0A=
			break;=0A=
			case 'otherTab2':=0A=
				this.cnnPrevActiveTabName =3D 'cnnMosaic_tab5';=0A=
			break;=0A=
		}=0A=
	=0A=
	},=0A=
	getStateHash: function(id){=0A=
	=0A=
		switch(id) {=0A=
			case 'cnnTxtCmpnt':=0A=
				return 'cnnSTCText';=0A=
			break;=0A=
			case 'cnnVideoCmpnt':=0A=
				return 'cnnSTCVideo';=0A=
			break;=0A=
			case 'cnnPhotoCmpnt':=0A=
				return 'cnnSTCPhoto';=0A=
			break;=0A=
			case 'otherTab1':=0A=
				return 'cnnSTCOther1';=0A=
			break;=0A=
			case 'otherTab2':=0A=
				return 'cnnSTCOther2';=0A=
			break;=0A=
			default:=0A=
				return 'cnnSTCText';=0A=
		}=0A=
	},=0A=
	getReverseStateHash: function(id){=0A=
	=0A=
		switch(id) {=0A=
			case 'cnnSTCText':=0A=
				return 'cnnTxtCmpnt';=0A=
			break;=0A=
			case 'cnnSTCVideo':=0A=
				return 'cnnVideoCmpnt';=0A=
			break;=0A=
			case 'cnnSTCPhoto':=0A=
				return 'cnnPhotoCmpnt';=0A=
			break;=0A=
			case 'cnnSTCOther1':=0A=
				return 'otherTab1';=0A=
			break;=0A=
			case 'cnnSTCOther2':=0A=
				return 'otherTab2';=0A=
			break;=0A=
			default:=0A=
				return 'cnnTxtCmpnt';=0A=
=0A=
		}=0A=
	},	=0A=
	getStateUrl: function(id){=0A=
	=0A=
		switch(id) {=0A=
			case 'cnnSTCText':=0A=
				return 'article.html';=0A=
			break;=0A=
			case 'cnnSTCVideo':=0A=
				return 'videos.html';=0A=
			break;=0A=
			case 'cnnSTCPhoto':=0A=
				return 'photos.html';=0A=
			break;=0A=
			case 'cnnSTCOther1':=0A=
				return 'other1.html';=0A=
			break;=0A=
			case 'cnnSTCOther2':=0A=
				return 'other2.html';=0A=
			break;=0A=
			default:=0A=
				return 'article.html';=0A=
		}=0A=
	},=0A=
	cnnChangeAd: function(id,story) {=0A=
		if (cnnDefault336AdsLoaded || !$('cnnDefault336Space')) {=0A=
			if (id =3D=3D 'cnnVideoCmpnt') {		=0A=
				swapAd('video');=0A=
			} else {=0A=
				swapAd('article');=0A=
			}=0A=
			if (story) {=0A=
				if (id =3D=3D 'cnnTxtCmpnt') {=0A=
					curcnnContentTracker.cnnChangeStoryAd(id,1);=0A=
				} else {=0A=
					curcnnContentTracker.cnnChangeStoryAd(id);=0A=
				}=0A=
			}=0A=
		} else {=0A=
			curcnnContentTracker.cnnChangeStoryAd(id,1);=0A=
		}=0A=
	},=0A=
	cnnChangeStoryAd: function(id,initial) {=0A=
		if (initial) {=0A=
			if (id !=3D 'cnnVideoCmpnt') {=0A=
				//fetch 336=0A=
				if ($('cnnDefault336Space') && typeof cnnDefault336Ad !=3D =
'undefined' && !cnnDefault336AdsLoaded) {=0A=
					cnnUpdateAdInDiv('cnnDefault336Space',cnnDefault336Ad);=0A=
					cnnDefault336AdsLoaded =3D true;=0A=
				}=0A=
			}=0A=
			//fetch 180=0A=
			if ($('cnnDefault180Space') && typeof cnnDefault180Ad !=3D =
'undefined') {=0A=
				if (id =3D=3D 'cnnTxtCmpnt') {=0A=
					cnnUpdateAdInDiv('cnnDefault180Space',cnnDefault180Ad);=0A=
					cnnDefault180AdsLoaded =3D true;=0A=
				} else {=0A=
					cnnFindAdInsertSpot(id); //update 180x150=0A=
				}=0A=
			}=0A=
		} else {=0A=
			cnnFindAdInsertSpot(id); //update 180x150=0A=
		}=0A=
		curcnnContentTracker.cnnChangeContextualAd(id);=0A=
	},=0A=
	cnnChangeContextualAd: function(id) {=0A=
			//fetch contextual ad=0A=
			if ($('cnnDefaultContSpace')) {=0A=
				switch(id) {=0A=
					case 'cnnPhotoCmpnt':=0A=
						if (typeof cnnPhotoContAd !=3D "undefined") {=0A=
							cnnUpdateAdInDiv('cnnDefaultContSpace',cnnPhotoContAd);=0A=
						}=0A=
					break;=0A=
					case 'cnnVideoCmpnt':=0A=
						if (typeof cnnVideoContAd !=3D "undefined") {=0A=
							cnnUpdateAdInDiv('cnnDefaultContSpace',cnnVideoContAd);=0A=
						}=0A=
					break;=0A=
					case 'otherTab1':=0A=
						if (typeof otherTab1ContAd !=3D "undefined") {=0A=
							cnnUpdateAdInDiv('cnnDefaultContSpace',otherTab1ContAd);=0A=
						}=0A=
					break;=0A=
					case 'otherTab2':=0A=
						if (typeof otherTab2ContAd !=3D "undefined") {=0A=
							cnnUpdateAdInDiv('cnnDefaultContSpace',otherTab2ContAd);=0A=
						}=0A=
					break;=0A=
					default:=0A=
						if (typeof cnnDefaultContAd !=3D "undefined") {=0A=
							cnnUpdateAdInDiv('cnnDefaultContSpace',cnnDefaultContAd);=0A=
						}=0A=
				}=0A=
			}=0A=
	},=0A=
	cnnChangeMosaicTab: function(id,path){=0A=
			var objVal =3D =
eval(this.objName+'.'+id);//eval('curcnnContentTracker.'+id);=0A=
		if (!objVal && id !=3D curcnnContentTracker.cnnActiveTab) {  //if the =
content hasn't been loaded before=0A=
			Element.hide(id);	=0A=
			curcnnContentTracker.setValue(id,true);=0A=
			=
curcnnContentTracker.setPrevActiveTab(curcnnContentTracker.cnnActiveTab);=0A=
			curcnnContentTracker.setActiveTab(id);=0A=
			if(id !=3D 'cnnTxtCmpnt') {=0A=
				new Ajax.Updater({success: id}, path,=0A=
					{=0A=
						onComplete:function() {=0A=
						if (cnnAnimateTabs) {	=0A=
							curcnnContentTracker.cnnAnimateTab();=0A=
						} else {	=0A=
							curcnnContentTracker.cnnChangeMosaicDisplay();=0A=
						}=0A=
							curcnnContentTracker.cnnChangeAd(id,1);=0A=
						},=0A=
						method:'get',=0A=
						evalScripts:true,=0A=
						asynchronous:true=0A=
					}=0A=
				);=0A=
			} else {=0A=
						if (cnnAnimateTabs) {	=0A=
							curcnnContentTracker.cnnAnimateTab();=0A=
						} else {	=0A=
							curcnnContentTracker.cnnChangeMosaicDisplay();=0A=
						}=0A=
							curcnnContentTracker.cnnChangeAd(id,1);=0A=
=0A=
			}=0A=
		} else if(id !=3D curcnnContentTracker.cnnActiveTab)  { //check for =
active tab, fade it out if it's not the tab clicked, fade requested tab =
in=0A=
			=
curcnnContentTracker.setPrevActiveTab(curcnnContentTracker.cnnActiveTab);=
		=0A=
			curcnnContentTracker.setActiveTab(id);			=0A=
						if (cnnAnimateTabs) {	=0A=
							curcnnContentTracker.cnnAnimateTab();=0A=
						} else {	=0A=
							curcnnContentTracker.cnnChangeMosaicDisplay();=0A=
						}							=0A=
							curcnnContentTracker.cnnChangeAd(id,1);=0A=
=0A=
		}=0A=
		=0A=
		cnnSetClickability(id); //change clickURL and PartnerID for =
clickability buttons=0A=
	},=0A=
	cnnAnimateTab: function() {=0A=
	var cnnFPS =3D ( CNN.detectBrowser.isIE6() ) ? 1 : 1;=0A=
	var myTrack =3D "";=0A=
	var widthDiff;=0A=
				new Effect.Scale( curcnnContentTracker.cnnActiveTabName , 181, =0A=
					{=0A=
						fps:30,=0A=
						duration:.25,=0A=
						scaleY:false,=0A=
						scaleContent:false,=0A=
						scaleFrom:100,=0A=
						scaleMode:=0A=
							{=0A=
								originalWidth: 123=0A=
							},=0A=
						afterUpdate: function(obj) {=0A=
						widthDiff =3D Math.round($(obj.element.id).offsetWidth - 123);=0A=
						=0A=
						$(curcnnContentTracker.cnnPrevActiveTabName).style.width =3D =
Math.round(223 - widthDiff)+"px";=0A=
						if (widthDiff =3D=3D 100) {=0A=
$(curcnnContentTracker.cnnPrevActiveTabName).className =3D '';						=0A=
						}=0A=
						=0A=
						myTrack +=3D $(obj.element.id).offsetWidth;=0A=
							//$('cnnTimeStamp').innerHTML =3D myTrack;=0A=
							=0A=
						},=0A=
						beforeStart: function(obj) =0A=
							{=0A=
								if ((curcnnContentTracker.cnnPrevActiveTab =3D=3D 'otherTab1' || =
curcnnContentTracker.cnnPrevActiveTab =3D=3D 'otherTab2') && =
CNN.detectBrowser.isIE()) {=0A=
									switch(curcnnContentTracker.cnnPrevActiveTab) {=0A=
										case 'otherTab1':=0A=
											if (document.getElementById('cnn_other1ContentSWF')) { 	=0A=
											CNN_unloadFlashMovie('cnn_other1ContentSWF');=0A=
											}=0A=
										break;=0A=
										case 'otherTab2':=0A=
											if (document.getElementById('cnn_other2ContentSWF')) { 	=0A=
											CNN_unloadFlashMovie('cnn_other2ContentSWF');=0A=
											}=0A=
										break;=0A=
									}=0A=
								}=0A=
								Element.hide(curcnnContentTracker.cnnPrevActiveTab);							=0A=
								$(obj.element.id).className =3D cnnCheckTab(obj.element.id);=0A=
								=0A=
							},=0A=
						afterFinish:function(obj)=0A=
							{=0A=
								$(curcnnContentTracker.cnnActiveTab).style.display =3D 'block';=0A=
								=0A=
								if ((curcnnContentTracker.cnnActiveTab =3D=3D 'otherTab1' || =
curcnnContentTracker.cnnActiveTab =3D=3D 'otherTab2') && =
CNN.detectBrowser.isIE()) {=0A=
								=0A=
									switch(curcnnContentTracker.cnnActiveTab) {=0A=
										case 'otherTab1':=0A=
											if (document.getElementById('cnn_other1ContentSWF')) { 	=0A=
											CNN_loadFlashMovie('cnn_other1ContentSWF');=0A=
											}=0A=
										break;=0A=
										case 'otherTab2':=0A=
											if (document.getElementById('cnn_other2ContentSWF')) { 	=0A=
											CNN_loadFlashMovie('cnn_other2ContentSWF');=0A=
											}=0A=
										break;=0A=
									}=0A=
								=0A=
								=0A=
								}=0A=
								=0A=
								=0A=
								if( $(obj.element).id =3D=3D "cnnMosaic_tab2") {=0A=
									cnnToggleMPMod('cnnVideos');=0A=
								}else {=0A=
									cnnToggleMPMod('cnnStories');=0A=
								}=0A=
						}=0A=
					}=0A=
				);					=0A=
	},=0A=
	cnnInitialTabLoad: function(id,path){=0A=
			var objVal =3D =
eval(this.objName+'.'+id);//eval('curcnnContentTracker.'+id); if this =
returns true, don't want XHR=0A=
			Element.hide(id);	=0A=
			curcnnContentTracker.setValue(id,true);=0A=
			=
curcnnContentTracker.setPrevActiveTab(curcnnContentTracker.cnnActiveTab);=0A=
			curcnnContentTracker.setActiveTab(id);=0A=
=0A=
			if(id !=3D 'cnnTxtCmpnt' && !objVal) {=0A=
				new Ajax.Updater({success: id}, path,=0A=
					{=0A=
						onComplete:function() {=0A=
							curcnnContentTracker.cnnChangeMosaicDisplay();=0A=
							Event.observe(window, 'load', function() {=0A=
								curcnnContentTracker.cnnChangeAd(id,1);=0A=
							});=0A=
						},=0A=
						method:'get',=0A=
						evalScripts:true,=0A=
						asynchronous:true=0A=
					}=0A=
				);=0A=
			} else {=0A=
				curcnnContentTracker.cnnChangeMosaicDisplay();=0A=
				=0A=
				Event.observe(window, 'load', function() {=0A=
					curcnnContentTracker.cnnChangeAd(id,1);=0A=
				});=0A=
			}=0A=
Event.observe(window, 'load', function() {=0A=
		CNN_omniture.Load.fetchConfig(id);=0A=
});=0A=
		=0A=
	},=0A=
	cnnChangeMosaicDisplay: function() {=0A=
		$(curcnnContentTracker.cnnPrevActiveTabName).className =3D '';					=0A=
		Element.hide(curcnnContentTracker.cnnPrevActiveTab);=0A=
		$(curcnnContentTracker.cnnActiveTabName).className =3D =
cnnCheckTab(curcnnContentTracker.cnnActiveTabName);=0A=
		$(curcnnContentTracker.cnnPrevActiveTabName).style.width =3D '123px';=0A=
		$(curcnnContentTracker.cnnActiveTabName).style.width =3D '223px';=0A=
		$(curcnnContentTracker.cnnActiveTab).style.display =3D 'block';=0A=
=0A=
if (curcnnContentTracker.cnnActiveTab =3D=3D "cnnVideoCmpnt") {		=0A=
	cnnTriggerVideo();=0A=
}=0A=
		=0A=
	}=0A=
}=0A=
=0A=
=0A=
function cnnTriggerVideo(tabClick) {=0A=
=0A=
vidString =3D 'Default';=0A=
	if (cnnDefaultTab =3D=3D null || cnnDefaultTab !=3D 'cnnSTCVideo')=0A=
		vidString =3D 'NonDefault';=0A=
=0A=
	if (typeof videoJsonUrls !=3D "undefined") {=0A=
		if (videoJsonUrls.length < 2) {=0A=
			vidString =3D 'Single'+vidString;=0A=
		} else {=0A=
			vidString =3D 'Multi'+vidString;=0A=
		}=0A=
	}=0A=
=0A=
if (tabClick) {=0A=
	if(defaultVideo =3D=3D ""){=0A=
		CNNPlaylistManager.getInstance('mos').MOSCLoadFromArray(videoJsonUrls);=0A=
	}else{=0A=
		CNNPlaylistManager.getInstance('mos').MOSCLoadFromArray(videoJsonUrls, =
defaultVideo);=0A=
	}=0A=
} else {=0A=
	Event.observe(window, 'load', function() {=0A=
		if(defaultVideo =3D=3D ""){=0A=
			=
CNNPlaylistManager.getInstance('mos').MOSCLoadFromArray(videoJsonUrls);=0A=
		}else{=0A=
			=
CNNPlaylistManager.getInstance('mos').MOSCLoadFromArray(videoJsonUrls, =
defaultVideo);=0A=
		}=0A=
	});=0A=
}=0A=
=0A=
}=0A=
=0A=
function initcnnContentTracker() {=0A=
	curcnnContentTracker =3D new cnnContentTracker('curcnnContentTracker');=0A=
}=0A=
=0A=
function cnnToggleMPMod(el) {=0A=
	//accordion(document.getElementById(el).getElementsByTagName('h3')[0]);=0A=
}=0A=
=0A=
=0A=
function setPartnerID (id) { //for clickability=0A=
	var cnnPID;=0A=
	var cnnIsIntl =3D (location.hostname.indexOf('edition.') > -1) ? true : =
false;=0A=
		switch(id) {=0A=
			case 'cnnTxtCmpnt':=0A=
				cnnPID =3D (cnnIsIntl) ? 212106 : 211911;=0A=
			break;=0A=
			case 'cnnVideoCmpnt':=0A=
				cnnPID =3D (cnnIsIntl) ? 205026 : 89487;=0A=
			break;=0A=
			case 'cnnPhotoCmpnt':=0A=
				cnnPID =3D (cnnIsIntl) ? 212111 : 211916;=0A=
			break;=0A=
			case 'otherTab1':=0A=
			case 'otherTab2':=0A=
				cnnPID =3D (cnnIsIntl) ? 212126 : 211921;=0A=
			break;=0A=
		}=0A=
			return cnnPID=0A=
	=0A=
	}=0A=
=0A=
function findClickabilityPrintTop(startId)=0A=
{=0A=
	var snapshotBtn =3D document.getElementById(startId);=0A=
	for(var i=3D0;i<snapshotBtn.childNodes.length;i++)=0A=
	{=0A=
		if( (snapshotBtn.childNodes.item(i).nodeType=3D=3D1) && =
(snapshotBtn.childNodes.item(i).nodeName=3D=3D'DIV') && =
(snapshotBtn.childNodes.item(i).className=3D=3D'cnnSnapShotHeader'))=0A=
		{=0A=
			var storyToolsContainerNode =3D snapshotBtn.childNodes.item(i);=0A=
			for(var x=3D0;x<storyToolsContainerNode.childNodes.length;x++)=0A=
			{=0A=
				if( (storyToolsContainerNode.childNodes.item(x).nodeType=3D=3D1) && =
(storyToolsContainerNode.childNodes.item(x).nodeName=3D=3D'DIV') && =
(storyToolsContainerNode.childNodes.item(x).className=3D=3D'cnnStoryTools=
') )=0A=
				{=0A=
					var storyToolsNode =3D storyToolsContainerNode.childNodes.item(x);=0A=
					for(var y=3D0;y<storyToolsNode.childNodes.length;y++)=0A=
					{=0A=
						if( (storyToolsNode.childNodes.item(y).nodeType=3D=3D1) && =
(storyToolsNode.childNodes.item(y).nodeName=3D=3D'UL'))=0A=
						{=0A=
							var ULcontainer =3D storyToolsNode.childNodes.item(y);=0A=
							//now get the LIs=0A=
							for(var z=3D0;x<ULcontainer.childNodes.length;z++)=0A=
							{=0A=
								if((ULcontainer.childNodes.item(z).nodeType=3D=3D1) && =
(ULcontainer.childNodes.item(z).nodeName=3D=3D'LI') && =
(ULcontainer.childNodes.item(z).className=3D=3D'cnnPrintThis'))=0A=
								{=0A=
									return ULcontainer.childNodes.item(z);=0A=
									z =3D ULcontainer.childNodes.length;=0A=
								}=0A=
							}=0A=
							y=3DstoryToolsNode.childNodes.length;=0A=
						}	=0A=
					}=0A=
					x=3DstoryToolsContainerNode.childNodes.length;=0A=
				}	=0A=
			}=0A=
			i=3DsnapshotBtn.childNodes.length;=0A=
		}=0A=
	}=0A=
=0A=
}=0A=
=0A=
function findClickabilityPrintBot(startId)=0A=
{=0A=
	var snapshotBtn =3D document.getElementById(startId).parentNode;=0A=
	for(var i=3D0;i<snapshotBtn.childNodes.length;i++)=0A=
	{=0A=
		if( (snapshotBtn.childNodes.item(i).nodeType=3D=3D1) && =
(snapshotBtn.childNodes.item(i).nodeName=3D=3D'DIV') && =
(snapshotBtn.childNodes.item(i).className=3D=3D'cnnStoryToolsFooter') )=0A=
		{=0A=
			var storyToolsContainerNode =3D snapshotBtn.childNodes.item(i);=0A=
			for(var x=3D0;x<storyToolsContainerNode.childNodes.length;x++)=0A=
			{=0A=
				if( (storyToolsContainerNode.childNodes.item(x).nodeType=3D=3D1) && =
(storyToolsContainerNode.childNodes.item(x).nodeName=3D=3D'DIV') && =
(storyToolsContainerNode.childNodes.item(x).className=3D=3D'cnnStoryTools=
') )=0A=
				{=0A=
					var storyToolsNode =3D storyToolsContainerNode.childNodes.item(x);=0A=
					for(var t=3D0;t<storyToolsNode.childNodes.length;t++)=0A=
					{=0A=
						if( (storyToolsNode.childNodes.item(t).nodeType=3D=3D1) && =
(storyToolsNode.childNodes.item(t).nodeName=3D=3D'UL'))=0A=
						{=0A=
							var ULcontainer =3D storyToolsNode.childNodes.item(t);=0A=
							//now get the LIs=0A=
							for(var z=3D0;z<ULcontainer.childNodes.length;z++)=0A=
							{=0A=
								if((ULcontainer.childNodes.item(z).nodeType=3D=3D1) && =
(ULcontainer.childNodes.item(z).nodeName=3D=3D'LI') && =
(ULcontainer.childNodes.item(z).className=3D=3D'cnnPrintThis'))=0A=
								{=0A=
									return ULcontainer.childNodes.item(z);=0A=
									z =3D ULcontainer.childNodes.length;=0A=
								}=0A=
							}=0A=
							t=3DstoryToolsNode.childNodes.length;=0A=
						}=0A=
					}=0A=
					x=3D storyToolsContainerNode.childNodes.length;=0A=
				}	=0A=
			}=0A=
			i=3DsnapshotBtn.childNodes.length;=0A=
		}	=0A=
	}=0A=
=0A=
}=0A=
=0A=
function cnnSetClickability(component) {=0A=
	var cnnPrintBtns =3D new Array();=0A=
	//get the top button=0A=
	cnnPrintBtns.push( findClickabilityPrintTop('cnnSnapShot') );=0A=
	cnnPrintBtns.push( findClickabilityPrintBot('cnnHighLightTrigger') );=0A=
	=0A=
	if (component.toLowerCase() !=3D 'cnntxtcmpnt') {=0A=
		for (var f =3D 0; f<cnnPrintBtns.length;f++) {=0A=
			if ($(cnnPrintBtns[f])) {=0A=
				$(cnnPrintBtns[f]).hide();=0A=
			}=0A=
		}=0A=
	} else {=0A=
		for (var f =3D 0; f<cnnPrintBtns.length;f++) {=0A=
			if ($(cnnPrintBtns[f])) {=0A=
				$(cnnPrintBtns[f]).show();=0A=
			}=0A=
		}=0A=
	}=0A=
=0A=
	clickURL =3D window.location.href;		=0A=
partnerID =3D setPartnerID(component);=0A=
commonLoc=3D"&fb=3DY&url=3D"+escape(getClickURL())+"&title=3D"+escape(get=
ClickTitle())+"&random=3D"+Math.random()+"&partnerID=3D"+partnerID+"&expi=
re=3D"+escape(getClickExpire());=0A=
=0A=
}=0A=
=0A=
function cnnCheckTab(tabID){=0A=
	var tabs =3D $$('div#cnnTabNav li');=0A=
	var firstTab =3D tabs[0]=0A=
	var lastTab =3D tabs[tabs.length - 1];=0A=
	if (tabID =3D=3D firstTab.id) {=0A=
		$('cnnMainContent').className =3D "cnnFirstTabActive";=0A=
		return "currentLeft";=0A=
	} else if (tabID =3D=3D lastTab.id) {=0A=
		$('cnnMainContent').className =3D "";=0A=
		return "currentRight";=0A=
	} else {=0A=
		$('cnnMainContent').className =3D "";=0A=
		return "current";=0A=
	}=0A=
}=0A=
=0A=
//CNN namespace=0A=
var CNN =3D {};=0A=
=0A=
CNN.detectBrowser =3D function() {=0A=
			var ua=3Dnavigator.userAgent.toLowerCase();=0A=
	return {=0A=
		init: function() {=0A=
		},=0A=
		isOpera: function() {=0A=
			if (ua.indexOf('opera')>-1) {=0A=
				return true;=0A=
			} else {=0A=
				return false;=0A=
			}=0A=
		},=0A=
		isSafari: function() {=0A=
			if (ua.indexOf('safari')>-1) {=0A=
				return true;=0A=
			} else {=0A=
				return false;=0A=
			}=0A=
		},=0A=
		isGecko: function() {=0A=
			if (!this.isOpera() && !this.isSafari() &&ua.indexOf('gecko')>-1) {=0A=
				return true;=0A=
			} else {=0A=
				return false;=0A=
			}=0A=
		},=0A=
		isIE: function() {=0A=
			if(!this.isOpera() && ua.indexOf('msie')>-1) {=0A=
				return true;=0A=
			} else {=0A=
				return false;=0A=
			}=0A=
		},=0A=
		isIE6: function() {=0A=
			if(this.isIE && ua.indexOf('msie 6.') > -1) {=0A=
				return true;=0A=
			} else {=0A=
				return false;=0A=
			}=0A=
		}		=0A=
	}=0A=
} ();=0A=
=0A=
=0A=
function CNN_changeImg(which,flag) {=0A=
	switch(which) {=0A=
		case "cnnImgChngrNxtBtn":=0A=
			switch (flag) {=0A=
				case 1:=0A=
					document.getElementById(which).src =3D =
"http://i.l.cnn.net/cnn/.element/img/2.0/global/pic_changer/next_over.gif=
"=0A=
				break;=0A=
				default:=0A=
					document.getElementById(which).src =3D =
"http://i.l.cnn.net/cnn/.element/img/2.0/global/pic_changer/next.gif"				=0A=
			}=0A=
		=0A=
		break;=0A=
		case "cnnImgChngrPrvsBtn":=0A=
			switch (flag) {=0A=
				case 1:=0A=
					document.getElementById(which).src =3D =
"http://i.l.cnn.net/cnn/.element/img/2.0/global/pic_changer/prev_over.gif=
"=0A=
				break;=0A=
				default:=0A=
					document.getElementById(which).src =3D =
"http://i.l.cnn.net/cnn/.element/img/2.0/global/pic_changer/prev.gif"				=0A=
			}		=0A=
		break;=0A=
		=0A=
		default:=0A=
	}=0A=
}=0A=
=0A=
=0A=
function CNN_imageChanger(id, url,numSlides,chngrPos) {=0A=
	this.id =3D id;=0A=
	this.url =3D url;=0A=
	this.chngrPos =3D chngrPos;=0A=
	this.numSlides =3D numSlides;=0A=
	this.currentSlidePos =3D 0;=0A=
	this.disabledNxtBtn =3D =
'http://i.l.cnn.net/cnn/.element/img/2.0/content/in_the_news/right_gray_b=
tn.gif';=0A=
	this.enabledNxtBtn =3D =
'http://i.l.cnn.net/cnn/.element/img/2.0/global/pic_changer/next.gif';=0A=
	this.disabledPrvsBtn =3D =
'http://i.l.cnn.net/cnn/.element/img/2.0/content/in_the_news/left_gray_bt=
n.gif';=0A=
	this.enabledPrvsBtn =3D =
'http://i.l.cnn.net/cnn/.element/img/2.0/global/pic_changer/prev.gif';=0A=
	this.nxtLnkNode;=0A=
	this.prvsLnkNode;=0A=
	this.nxtLnkActive =3D true;=0A=
	this.prvLnkActive =3D false;=0A=
	=0A=
	this.CNN_navChngInitLoad();=0A=
}=0A=
=0A=
function CNN_navChngInitLoad() { //make initial http request=0A=
=0A=
	var totalImg =3D this.numSlides + 1;=0A=
	var currentImg =3D this.currentSlidePos + 1;=0A=
	=0A=
			new Ajax.Updater({success: this.id}, this.url,=0A=
			{=0A=
				onComplete:function(obj) {=0A=
					$('cnnImgChngrLbl').innerHTML =3D currentImg + " of " + totalImg;=0A=
					CNN_ArticleChanger.CNN_navDisablePrvsBtn();=0A=
				},=0A=
				method:'get',=0A=
				evalScripts:true,=0A=
				asynchronous:true=0A=
				})=0A=
}=0A=
CNN_imageChanger.prototype.CNN_navChngInitLoad =3D CNN_navChngInitLoad;=0A=
=0A=
function CNN_navChngFrwd() {=0A=
	if (this.currentSlidePos < this.numSlides) {=0A=
		this.currentSlidePos++;=0A=
	} else {=0A=
		this.currentSlidePos =3D 0;=0A=
	}=0A=
	this.url =3D =
'imgChng/p'+this.chngrPos+'-'+this.currentSlidePos+'.exclude.html';=0A=
	this.CNN_navChngManage();=0A=
}=0A=
CNN_imageChanger.prototype.CNN_navChngFrwd =3D CNN_navChngFrwd;=0A=
=0A=
function CNN_navChngBack() { //update pos, update url=0A=
=0A=
	if (this.currentSlidePos > 0) {=0A=
		this.currentSlidePos--;=0A=
	} else {=0A=
		this.currentSlidePos =3D this.numSlides;=0A=
	}=0A=
	this.url =3D =
'imgChng/p'+this.chngrPos+'-'+this.currentSlidePos+'.exclude.html';=0A=
	this.CNN_navChngManage();=0A=
}=0A=
CNN_imageChanger.prototype.CNN_navChngBack =3D CNN_navChngBack;=0A=
=0A=
function CNN_navChngManage() { //make http request=0A=
	var url =3D this.url;=0A=
	var id =3D 'cnnImgChngrNested';=0A=
	var totalImg =3D this.numSlides + 1;=0A=
	var currentImg =3D this.currentSlidePos + 1;=0A=
	=0A=
	if(this.currentSlidePos =3D=3D this.numSlides && this.nxtLnkActive) {=0A=
		this.CNN_navDisableNextBtn();=0A=
	} else {=0A=
		if (!this.nxtLnkActive) {=0A=
			this.CNN_navEnableNextBtn();=0A=
		}=0A=
	}=0A=
	=0A=
	if (this.currentSlidePos =3D=3D 0) {=0A=
		this.CNN_navDisablePrvsBtn();=0A=
	} else {=0A=
		if (!this.prvsLnkActive) {=0A=
			this.CNN_navEnablePrvsBtn();=0A=
		}	=0A=
	}=0A=
	=0A=
new Effect.Opacity(id,=0A=
{=0A=
	duration:.5,=0A=
	from:1.0,=0A=
	to:0,=0A=
=0A=
	afterFinish: function() {=0A=
		new Ajax.Updater({success: id}, url,=0A=
		{=0A=
			onComplete:function() {=0A=
						$('cnnImgChngrLbl').innerHTML =3D currentImg + " of " + totalImg;=0A=
			},=0A=
			method:'get',=0A=
			evalScripts:true,=0A=
			asynchronous:true=0A=
		})	=0A=
	}=0A=
})=0A=
=0A=
}=0A=
CNN_imageChanger.prototype.CNN_navChngManage =3D CNN_navChngManage;=0A=
=0A=
function CNN_navEnableNextBtn() {=0A=
var enabledBtn =3D this.enabledNxtBtn;=0A=
this.nxtLnkNode =3D $('cnnImgChngrNxtLbl').getElementsByTagName('a')[0];=0A=
=0A=
	$('cnnImgChngrNxtBtn').src =3D enabledBtn;=0A=
	this.nxtLnkNode.onmouseout =3D function() =
{CNN_changeImg('cnnImgChngrNxtBtn')};=0A=
	this.nxtLnkNode.onmouseover =3D function() =
{CNN_changeImg('cnnImgChngrNxtBtn',1)};=0A=
	this.nxtLnkNode.style.cursor =3D 'pointer';=0A=
	this.nxtLnkNode.onclick =3D function() { =
CNN_ArticleChanger.CNN_navChngFrwd(); return false;};=0A=
	this.nxtLnkActive =3D true;=0A=
}=0A=
CNN_imageChanger.prototype.CNN_navEnableNextBtn =3D CNN_navEnableNextBtn;=0A=
=0A=
=0A=
function CNN_navDisableNextBtn() {=0A=
var disabledBtn =3D this.disabledNxtBtn;=0A=
this.nxtLnkNode =3D $('cnnImgChngrNxtLbl').getElementsByTagName('a')[0];=0A=
=0A=
	$('cnnImgChngrNxtBtn').src =3D disabledBtn;=0A=
	this.nxtLnkNode.onmouseout =3D function() {$('cnnImgChngrNxtBtn').src =
=3D disabledBtn};=0A=
	this.nxtLnkNode.onmouseover =3D function() {};=0A=
	this.nxtLnkNode.style.cursor =3D 'default';=0A=
	this.nxtLnkNode.onclick =3D function() { return false;};=0A=
	this.nxtLnkActive =3D false;=0A=
}=0A=
CNN_imageChanger.prototype.CNN_navDisableNextBtn =3D =
CNN_navDisableNextBtn;=0A=
=0A=
function CNN_navEnablePrvsBtn() {=0A=
var enabledBtn =3D this.enabledPrvsBtn;=0A=
this.prvsLnkNode =3D =
$('cnnImgChngrPrvsLbl').getElementsByTagName('a')[0];=0A=
=0A=
	$('cnnImgChngrPrvsBtn').src =3D enabledBtn;=0A=
	this.prvsLnkNode.onmouseout =3D function() =
{CNN_changeImg('cnnImgChngrPrvsBtn')};=0A=
	this.prvsLnkNode.onmouseover =3D function() =
{CNN_changeImg('cnnImgChngrPrvsBtn',1)};=0A=
	this.prvsLnkNode.style.cursor =3D 'pointer';=0A=
	this.prvsLnkNode.onclick =3D function() { =
CNN_ArticleChanger.CNN_navChngBack(); return false;};=0A=
	this.prvsLnkActive =3D true;=0A=
}=0A=
CNN_imageChanger.prototype.CNN_navEnablePrvsBtn =3D CNN_navEnablePrvsBtn;=0A=
=0A=
=0A=
function CNN_navDisablePrvsBtn() {=0A=
var disabledBtn =3D this.disabledPrvsBtn;=0A=
this.prvsLnkNode =3D =
$('cnnImgChngrPrvsLbl').getElementsByTagName('a')[0];=0A=
=0A=
	$('cnnImgChngrPrvsBtn').src =3D disabledBtn;=0A=
	this.prvsLnkNode.onmouseout =3D function() {$('cnnImgChngrPrvsBtn').src =
=3D disabledBtn};=0A=
	this.prvsLnkNode.onmouseover =3D function() {};=0A=
	this.prvsLnkNode.style.cursor =3D 'default';=0A=
	this.prvsLnkNode.onclick =3D function() { return false;};=0A=
	this.prvsLnkActive =3D false;=0A=
}=0A=
CNN_imageChanger.prototype.CNN_navDisablePrvsBtn =3D =
CNN_navDisablePrvsBtn;=0A=
=0A=
function CNN_loadImg(id) {=0A=
new Effect.Opacity(id,=0A=
				{=0A=
					duration:.5,=0A=
					from:0,=0A=
					to:1.0=0A=
				});=0A=
}=0A=
 =0A=
function CNN_noFlash() {=0A=
	var cnnNoFlashMsg =3D "<div class=3D\"cnnNoFlashContainer\"><div =
class=3D\"cnnNoFlash\"><p class=3D\"cnnTopGraf\">This CNN.com feature is =
optimized for Adobe Flash Player version 8 or higher.<\/p>"=0A=
	=0A=
	if (parseInt(CNN_FlashDetect.prototype.getVersion())) {=0A=
		cnnNoFlashMsg +=3D "<p><b>You are currently using Flash Player " + =
parseInt(CNN_FlashDetect.prototype.getVersion()) + "<\/b><\/p>";=0A=
	} else {=0A=
		cnnNoFlashMsg +=3D "<p><b>You do not currently have the player =
installed.<\/b><\/p>";=0A=
	}=0A=
	=0A=
	cnnNoFlashMsg +=3D "<a =
href=3D\"http://www.adobe.com/go/getflashplayer\" =
target=3D\"blank\"><img =
src=3D\"http://i.l.cnn.net/cnn/.element/img/2.0/global/noflash/install_bt=
n.gif\" class=3D\"cnnGetBtn\" width=3D\"155\" height=3D\"31\" =
alt=3D\"Get Flash Player\" border=3D\"0\"><\/a><\/div><\/div>";=0A=
	try {=0A=
		new Insertion.Top($(curcnnContentTracker.cnnActiveTab), =
cnnNoFlashMsg); =0A=
	} catch(e) {=0A=
		Event.observe(window, 'load', function() {=0A=
			var cnnActiveFlashContainer;	=0A=
			switch(cnnDefaultTab) {=0A=
				case 'cnnSTCVideo':=0A=
					cnnActiveFlashContainer =3D 'cnnVideoCmpnt';=0A=
				break;=0A=
				case 'cnnSTCPhoto':=0A=
					cnnActiveFlashContainer =3D 'cnnPhotoCmpnt';=0A=
				break;=0A=
				case 'cnnSTCOther1':=0A=
					cnnActiveFlashContainer =3D 'otherTab1';=0A=
				break;=0A=
				case 'cnnSTCOther2':=0A=
					cnnActiveFlashContainer =3D 'otherTab2';=0A=
				break;=0A=
				case 'cnnSTCText':=0A=
				default:=0A=
					cnnActiveFlashContainer =3D 'cnnTxtCmpnt';=0A=
=0A=
			}=0A=
			new Insertion.Top($(cnnActiveFlashContainer), cnnNoFlashMsg); =0A=
		});=0A=
	}=0A=
}=0A=
=0A=
function onEmailClicked() {=0A=
	if (typeof ET =3D=3D 'function') {=0A=
		ET();=0A=
	}=0A=
}=0A=
=0A=
function cnnad_refreshAdInDiv(divId)=0A=
{=0A=
	var d =3D document.getElementById(divId);=0A=
	var subDivs =3D d.getElementsByTagName('div');=0A=
	var testString =3D 'ad-';=0A=
=0A=
	for (var i =3D 0; i < subDivs.length; i++)=0A=
	{=0A=
		if (subDivs[i].id.substring(0,testString.length) =3D=3D=0A=
testString)=0A=
		{=0A=
			var iframes =3D=0A=
subDivs[i].getElementsByTagName('iframe');=0A=
			var iframeId =3D=0A=
subDivs[i].id.substring(testString.length);=0A=
=0A=
			for (var k =3D 0; k < iframes.length; k++)=0A=
			{=0A=
				if (iframes[k].id =3D=3D iframeId)=0A=
				{=0A=
	=0A=
iframes[k].contentWindow.location.reload();=0A=
				}=0A=
			}=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
function cnnFindAdInsertSpot(id) {=0A=
var cnnStringComplete =3D 'ds';=0A=
var cnnTriggerAdCall =3D true;=0A=
	var d =3D document.getElementById(id);=0A=
	var subDivs =3D d.getElementsByTagName('div');=0A=
	for (var i =3D 0; i < subDivs.length; i++)=0A=
	{=0A=
		if(subDivs[i].className =3D=3D 'cnnMosaicSubElementCol') {=0A=
			if (!$(id+"AdContainer")) {=0A=
				 new Insertion.Bottom(subDivs[i], "<div =
id=3D\""+id+"AdContainer\"><div class=3D\"cnnStoryElementBox\"><div =
class=3D\"cnnStoryElementBoxAd\"><div =
class=3D\"cnnStoryElementBoxAdHead\"><img =
src=3D\"http://i.l.cnn.net/cnn/.element/img/2.0/content/a"+cnnStringCompl=
ete+"/advertisement.gif\" alt=3D\"advertisement\"></div><div =
id=3D\""+id+"AdContent\"><\/div><\/div><\/div><\/div>");=0A=
			}=0A=
=0A=
	if (id =3D=3D 'cnnPhotoCmpnt') {=0A=
		if (typeof cnnPhotoCmpntAd =3D=3D "undefined") {=0A=
			cnnTriggerAdCall =3D false;=0A=
		}=0A=
		=0A=
	}=0A=
	if (id =3D=3D 'cnnVideoCmpnt') {=0A=
		if (typeof cnnVideoCmpntAd =3D=3D "undefined") {=0A=
			cnnTriggerAdCall =3D false;=0A=
		}=0A=
		=0A=
	}=0A=
	if (id =3D=3D 'otherTab1') {=0A=
		if (typeof otherTab1Ad =3D=3D "undefined") {=0A=
			cnnTriggerAdCall =3D false;=0A=
		}=0A=
		=0A=
	}=0A=
	if (id =3D=3D 'otherTab2') {=0A=
		if (typeof otherTab2Ad =3D=3D "undefined") {=0A=
			cnnTriggerAdCall =3D false;=0A=
		}=0A=
		=0A=
	}=0A=
			if (cnnTriggerAdCall) {=0A=
				cnnUpdateAdInDiv($(id+"AdContent"), eval(id+'Ad'));=0A=
			}=0A=
		}=0A=
	}=0A=
=0A=
	=0A=
}=0A=
=0A=
function cnnUpdateAdInDiv(id,path)=0A=
{=0A=
				new Ajax.Updater({success: id}, path,=0A=
					{=0A=
						onComplete:function() {=0A=
						},=0A=
						method:'get',=0A=
						evalScripts:true,=0A=
						asynchronous:true=0A=
					}=0A=
				);=0A=
=0A=
}=0A=
=0A=
CNN_omniture =3D {};=0A=
=0A=
CNN_omniture.Load =3D new function() { //called when a tab is clicked. =
will need to trigger for default component too I guess=0A=
var configFileURL =3D (location.hostname.indexOf('edition.') =3D=3D -1) =
? "http://i.l.cnn.net/cnn/.element/js/2.0/mosaic_omniture.js" : =
"http://i.l.cnn.net/cnn/.element/js/2.0/intl_mosaic_omniture.js"; //url =
of our config file.=0A=
=0A=
	this.fetchConfigNoTab =3D function(id){=0A=
		var dfltCmpntID;=0A=
		switch(id) {=0A=
			case 'cnnSTCText':=0A=
				dfltCmpntID =3D 'cnnTxtCmpnt';=0A=
			break;=0A=
			case 'cnnSTCVideo':=0A=
				dfltCmpntID =3D 'cnnVideoCmpnt';=0A=
			break;=0A=
			case 'cnnSTCPhoto':=0A=
				dfltCmpntID =3D 'cnnPhotoCmpnt';=0A=
			break;=0A=
			case 'cnnSTCOther1':=0A=
				dfltCmpntID =3D 'otherTab1';=0A=
			break;=0A=
			case 'cnnSTCOther2':=0A=
				dfltCmpntID =3D 'otherTab2';=0A=
			break;=0A=
			default:=0A=
				dfltCmpntID =3D 'cnnTxtCmpnt';=0A=
=0A=
		}=0A=
		=0A=
		this.fetchConfig(dfltCmpntID);=0A=
		=0A=
	}=0A=
=0A=
var cnnQueryParams =3D new Array(); //where we'll stuff values=0A=
 =0A=
this.fetchConfig =3D function(stc) {=0A=
 =0A=
 switch(stc) {=0A=
 			case 'cnnTxtCmpnt':=0A=
 			default: //stuffing content type and url into array based on =
component=0A=
					cnnQueryParams =3D =
[{contentType:'article',contentURL:location.pathname+'%23cnnSTCText',cont=
ainerURL:location.pathname}]=0A=
			break;=0A=
			case 'cnnVideoCmpnt':=0A=
					cnnQueryParams =3D =
[{contentType:'video',contentURL:location.pathname+'%23cnnSTCVideo',conta=
inerURL:location.pathname}]=0A=
			break;=0A=
			case 'cnnPhotoCmpnt':=0A=
					cnnQueryParams =3D =
[{contentType:'photo',contentURL:location.pathname+'%23cnnSTCPhoto',conta=
inerURL:location.pathname}]=0A=
			break;=0A=
			case 'otherTab1':=0A=
					var cnnOtherTab1ContentType =3D ( typeof cnnOtherTab1Label !=3D =
"undefined") ? cnnOtherTab1Label : 'other';=0A=
					cnnQueryParams =3D =
[{contentType:cnnOtherTab1ContentType,contentURL:location.pathname+'%23cn=
nSTCOther1',containerURL:location.pathname}]=0A=
			break;=0A=
			case 'otherTab2':=0A=
					var cnnOtherTab2ContentType =3D ( typeof cnnOtherTab2Label !=3D =
"undefined") ? cnnOtherTab2Label : 'other';=0A=
					cnnQueryParams =3D =
[{contentType:cnnOtherTab2ContentType,contentURL:location.pathname+'%23cn=
nSTCOther2',containerURL:location.pathname}]=0A=
			break;=0A=
 }=0A=
 =0A=
 		requestConfig(); //call function that writes config js to page=0A=
		return false;=0A=
 }=0A=
=0A=
=0A=
	function requestConfig() {=0A=
//	alert(configFileURL);=0A=
=0A=
	=0A=
	if ($('cnn_omnitureScript')) { //if the config script is already =
written to the page, remove it=0A=
		$('cnn_omnitureScript').remove();=0A=
	}=0A=
	=0A=
		//if(location.hostname.indexOf('edition.') =3D=3D -1) {=0A=
	        var script =3D document.createElement('script'); //create =
config script=0A=
	        script.setAttribute('id','cnn_omnitureScript'); //id config =
script=0A=
	        script.src =3D configFileURL + =
'?contentType=3D'+cnnQueryParams[0]['contentType']+'&contentURL=3D'+cnnQu=
eryParams[0]['contentURL']+'&containerURL=3D'+cnnQueryParams[0]['containe=
rURL']; //populate src passing values from array on query string=0A=
	        window.setTimeout( function() {=0A=
	       document.body.appendChild(script); //append as last element in =
the page=0A=
	       }, 1000);=0A=
		//}=0A=
	}=0A=
}=0A=
=0A=
function getFlashMovieObject(movieName) {=0A=
        if (window.document[movieName]) {=0A=
                return window.document[movieName];=0A=
        }=0A=
        if (navigator.appName.indexOf("Microsoft Internet")=3D=3D-1) {=0A=
                if (document.embeds && document.embeds[movieName]) {=0A=
                        return document.embeds[movieName];=0A=
                }=0A=
        } else  {=0A=
                if (document.getElementById(movieName)) {=0A=
                return document.getElementById(movieName);=0A=
                } else {=0A=
                        return null;=0A=
                }=0A=
        }=0A=
}=0A=
=0A=
var cnn_other1ContentSWFString;=0A=
var cnn_other2ContentSWFString;=0A=
=0A=
=0A=
function CNN_unloadFlashMovie(id)=0A=
{=0A=
	var cnnTabFlashObject=3DgetFlashMovieObject(id);=0A=
	switch(id) {=0A=
		case 'cnn_other1ContentSWF':=0A=
			cnn_other1ContentSWFString =3D cnnTabFlashObject.movie;=0A=
		break;=0A=
		case 'cnn_other2ContentSWF':=0A=
			cnn_other2ContentSWFString =3D cnnTabFlashObject.movie;=0A=
		break;=0A=
	}=0A=
	cnnTabFlashObject.movie =3D "about:blank";=0A=
}=0A=
=0A=
function CNN_loadFlashMovie(id)=0A=
{=0A=
	var cnnTabFlashObject=3DgetFlashMovieObject(id);=0A=
	=0A=
	switch(id) {=0A=
		case 'cnn_other1ContentSWF':=0A=
			if (typeof cnn_other1ContentSWFString =3D=3D "string") {=0A=
				cnnTabFlashObject.movie =3D cnn_other1ContentSWFString;=0A=
			}=0A=
		break;=0A=
		case 'cnn_other2ContentSWF':=0A=
			if (typeof cnn_other2ContentSWFString =3D=3D "string") {=0A=
				cnnTabFlashObject.movie =3D cnn_other2ContentSWFString;=0A=
			}=0A=
			break;=0A=
		}=0A=
}=0A=
=0A=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/csiManager.js

function CSIManager()=0A=
{=0A=
	if (CSIManager.caller !=3D CSIManager.getInstance)=0A=
	{=0A=
		if((navigator.userAgent.indexOf('Safari')=3D=3D-1) && =
(navigator.userAgent.indexOf('Opera')=3D=3D-1))=0A=
		{=0A=
			throw new Error("There is no public constructor for CSIManager.");=0A=
		}=0A=
	}=0A=
=0A=
	this.CSIObjects =3D new Array();=0A=
	this.delayedCSIList =3D new Array();=0A=
	this.domIDConfig =3D new Array();=0A=
	this.domOnLoad =3D new Array();=0A=
	this.domOnBeforeLoad =3D new Array();=0A=
	this.useDelayedCSI =3D false;=0A=
	this.numberofRequests =3D 0;=0A=
	var currTime =3D new Date();=0A=
	this.iframeOffset=3D0;=0A=
	this.queueAllCalls =3D false;=0A=
	this.queuedCallArray =3D new Array();=0A=
	=0A=
	var localUserAgent =3D navigator.userAgent.toLowerCase();=0A=
	if((localUserAgent.indexOf('msie')>-1) && =
(localUserAgent.indexOf('mac')>-1))=0A=
	{=0A=
		this.useDelayedCSI =3D true;=0A=
	}=0A=
	=0A=
	this.dojoSupport =3D (typeof dojo=3D=3D"undefined")?false:true;=0A=
	this.prototypeSupport =3D (typeof =
Prototype=3D=3D"undefined")?false:true;=0A=
	this.noFramework =3D (!this.dojoSupport && =
!this.prototypeSupport)?true:false;=0A=
	=0A=
	var csiMgr =3D this;=0A=
	var csiManagerOnLoad =3D function()=0A=
	{=0A=
		csiMgr.initialize();=0A=
	}=0A=
	=0A=
	var csiManagerShow =3D function(evt)=0A=
	{=0A=
		if(evt.persisted)=0A=
		{=0A=
			=
window.setTimeout('CSIManager.getInstance().delayedProcessing();',2000);=0A=
		}=0A=
	}=0A=
	=0A=
	if (this.prototypeSupport) =0A=
	{=0A=
		Event.observe(window, 'load', csiManagerOnLoad);=0A=
		Event.observe(window, 'pageshow', csiManagerShow);=0A=
	}=0A=
	else if (this.dojoSupport) {dojo.addOnLoad(csiManagerOnLoad);}=0A=
	else if (this.noFramework)=0A=
	{=0A=
		if (window.addEventListener) // Firefox/DOm=0A=
		{=0A=
			window.addEventListener("load", csiManagerOnLoad, false);=0A=
			window.addEventListener("pageshow", csiManagerShow, false);=0A=
		}=0A=
		else if (window.attachEvent) // IE=0A=
		{=0A=
			window.attachEvent("onload", csiManagerOnLoad);=0A=
		}=0A=
		else // Older=0A=
		{=0A=
			var tempOnLoad =3D null;=0A=
			if (window.onload) tempOnLoad =3D window.onload;=0A=
			window.onload =3D function() =0A=
			{=0A=
				csiManagerOnLoad();=0A=
				if (tempOnLoad!=3Dnull) tempOnLoad();=0A=
			}=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
CSIManager.prototype.initialize =3D function()=0A=
{=0A=
=0A=
	if(!this.useDelayedCSI)=0A=
	{=0A=
		this.queueAllCalls =3D true;=0A=
		var lastDiv =3D document.createElement("div");=0A=
		lastDiv.setAttribute("id","csimanagerdiv");=0A=
		document.body.appendChild(lastDiv);=0A=
		var lastDiv =3D document.createElement("div");=0A=
		lastDiv.setAttribute("id","csimanagerdivdelayed");=0A=
		document.body.appendChild(lastDiv);=0A=
		this.useDelayedCSI =3D true;=0A=
		this.queueAllCalls =3D false;=0A=
		this.processAnyQueuedCalls();=0A=
		this.queuedCallArray =3D null;=0A=
	}=0A=
}=0A=
=0A=
CSIManager.prototype.processAnyQueuedCalls =3D function ()=0A=
{=0A=
	if(this.queuedCallArray && this.queuedCallArray!=3Dnull)=0A=
	{=0A=
		for(var qCounter=3D0;qCounter<this.queuedCallArray.length;qCounter++)=0A=
		{=0A=
			var queuedObj =3D this.queuedCallArray[qCounter];=0A=
			this.queuedCallArray[qCounter] =3D '';=0A=
			if(queuedObj)=0A=
			{=0A=
				this.call(queuedObj.url, queuedObj.args, queuedObj.domId, =
queuedObj.funcObj, queuedObj.breakCache, queuedObj.overrideID);=0A=
			}=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
CSIManager.__instance__ =3D null;  //define the static property=0A=
=0A=
CSIManager.getInstance =3D function () =0A=
{=0A=
	if (this.__instance__ =3D=3D null) =0A=
	{=0A=
		this.__instance__ =3D new CSIManager();=0A=
	}=0A=
	return this.__instance__;=0A=
}=0A=
=0A=
CSIManager.prototype.addOnLoadById =3D function( id, func)=0A=
{=0A=
	var arr =3D this.domOnLoad[ id ];=0A=
	if(!arr) { arr =3D new Array(); }=0A=
	arr.push(func);=0A=
	this.domOnLoad[ id ] =3D arr;=0A=
}=0A=
=0A=
CSIManager.prototype.addOnBeforeLoadById =3D function( id, func)=0A=
{=0A=
	var arr =3D this.domOnBeforeLoad[ id ];=0A=
	if(!arr) { arr =3D new Array(); }=0A=
	arr.push(func);=0A=
	this.domOnBeforeLoad[ id ] =3D arr;=0A=
}=0A=
=0A=
CSIManager.prototype.setConfigForId =3D function (id, obj)=0A=
{=0A=
	this.domIDConfig[id] =3D obj;=0A=
}=0A=
=0A=
CSIManager.prototype.getConfigForId =3D function (id)=0A=
{=0A=
	var retObj =3D this.domIDConfig[id];=0A=
	if(!retObj) { retObj =3D new Object();}=0A=
	return retObj;=0A=
}=0A=
=0A=
=0A=
CSIManager.prototype.call =3D function (url, args, domId, funcObj, =
breakCache, overrideID)=0A=
{=0A=
	// Let's look to see the documentState is complete but the =
useDelayedCSI flag hasn't been set yet. If so then initialize the manager=0A=
	if((!this.useDelayedCSI)  && (document && document.readyState && =
(document.readyState=3D=3D'complete')))=0A=
	{=0A=
		this.initialize();=0A=
	}=0A=
	if(this.queueAllCalls)=0A=
	{=0A=
		var queuedObj =3D new Object();=0A=
		queuedObj.url =3D url;=0A=
		queuedObj.args =3D args;=0A=
		queuedObj.domId =3D domId;=0A=
		queuedObj.funcObj =3D funcObj;=0A=
		queuedObj.breakCache =3D breakCache;=0A=
		queuedObj.overrideId =3D overrideId;=0A=
		this.queuedCallArray.push(queuedObj)=0A=
	}=0A=
	else=0A=
	{=0A=
		this.numberofRequests++;=0A=
		var internalDomId =3D 'csi'+(this.iframeOffset+this.numberofRequests);=0A=
		if(overrideID)=0A=
		{=0A=
			internalDomId =3D overrideID;=0A=
		}=0A=
		var domList =3D new Array();=0A=
		var functionList =3D new Array();=0A=
		if(url.indexOf(document.domain)=3D=3D-1 && url.indexOf('http') > -1) { =
return false;}=0A=
		if(domId.join)=0A=
		{=0A=
			domList =3D domId;=0A=
		}=0A=
		else=0A=
		{=0A=
			domList.push(domId);=0A=
		}=0A=
		=0A=
		if(funcObj)=0A=
		{=0A=
			if(funcObj.join)=0A=
			{=0A=
				functionList =3D funcObj;=0A=
			}=0A=
			else=0A=
			{=0A=
				functionList.push(funcObj);=0A=
			}=0A=
		}=0A=
		this.CSIObjects[internalDomId] =3D {=0A=
			functionList: functionList,=0A=
			dom: domList,=0A=
			url: url,=0A=
			args: args,=0A=
			csiRequestNum:this.numberofRequests,=0A=
			disableCache: breakCache=0A=
		};=0A=
		=0A=
		var newCSI =3D new Object();=0A=
		newCSI.src =3D url;=0A=
		newCSI.id  =3D internalDomId;=0A=
		newCSI.domId  =3D domList;=0A=
		newCSI.args =3D args;=0A=
		newCSI.breakCache =3D breakCache;=0A=
		newCSI.csiRequestNum=3Dthis.numberofRequests;=0A=
		this.delayedCSIList[this.delayedCSIList.length]=3DnewCSI;=0A=
		=0A=
		var today =3D new Date();=0A=
		var currTime =3D today.getTime()%60;=0A=
		var iframeArgs =3D ( breakCache ) ? 'time=3D'+currTime : '';=0A=
		if (args)=0A=
		{=0A=
			iframeArgs =3D ( iframeArgs ) ? iframeArgs+'&' : '';=0A=
			iframeArgs+=3D args;=0A=
		}=0A=
		=0A=
		try=0A=
		{=0A=
			if (funcObj)=0A=
			{=0A=
				var xhrObject =3D null;=0A=
				if (this.dojoSupport)=0A=
				{=0A=
					try=0A=
					{=0A=
						if (navigator.userAgent.toLowerCase().indexOf("msie 7.0")!=3D-1) =
throw new Error("NoDojoSupport");=0A=
						var bindArgs =3D {=0A=
							url:		url+'?'+iframeArgs+'&csiID=3D'+internalDomId,=0A=
							mimetype:	"text/html",=0A=
							transport:	"IframeTransport"=0A=
						};=0A=
						xhrObject =3D dojo.io.bind(bindArgs);=0A=
					}=0A=
					catch(err)=0A=
					{=0A=
						throw new Error("DojoFailure");=0A=
					}=0A=
				}=0A=
				else if (this.prototypeSupport)=0A=
				{=0A=
					try=0A=
					{=0A=
						if (navigator.userAgent.toLowerCase().indexOf("safari")!=3D-1) =
throw new Error("SafariCrossDomainFailure");=0A=
						var csiMgr =3D this;=0A=
						xhrObject =3D new Ajax.Request(=0A=
							url,=0A=
							{=0A=
								method:		"get",=0A=
								parameters:	iframeArgs+"&csiID=3D"+internalDomId,=0A=
								onComplete: function(response) =0A=
											{=0A=
												// Response must be either text/xml or text/plain.=0A=
												// Using text/plain, and doing string manipulation to=0A=
												// turn into JSON.=0A=
												if(response && response.responseText && =
response.responseText.indexOf('<textarea id=3D"jsCode">')!=3D-1)=0A=
												{=0A=
													var startStr =3D '<textarea id=3D"jsCode">';=0A=
													var startPos =3D =
response.responseText.indexOf(startStr)+startStr.length;=0A=
													var myCode =3D =
response.responseText.slice(startPos,response.responseText.indexOf('</tex=
tarea>'));=0A=
													var obj =3D eval('('+myCode+')');=0A=
													csiMgr.callBackJS(obj,internalDomId);=0A=
												}=0A=
											},=0A=
								onException:function(x,o)=0A=
											{=0A=
												throw new Error("PrototypeException for url ["+url+"]: =
"+o.messageText);=0A=
											},=0A=
								onFailure:	function(x,o)=0A=
											{=0A=
												throw new Error("PrototypeFailure");=0A=
											}=0A=
							}=0A=
						);=0A=
					}=0A=
					catch(err)=0A=
					{=0A=
						throw new Error("PrototypeFailure");=0A=
					}=0A=
				}=0A=
				else =0A=
				{=0A=
					throw new Error("NoXHRFramework");=0A=
				}=0A=
			}=0A=
			else =0A=
			{=0A=
				throw new Error("NoCallBackFunction");=0A=
			}=0A=
		}=0A=
		catch(err)=0A=
		{=0A=
	=0A=
			if (this.useDelayedCSI) =0A=
			{=0A=
				var realIframeUrl=3Durl+"?"+iframeArgs+"&csiID=3D"+internalDomId;=0A=
				var iframeObj =3D document.createElement('iframe');=0A=
				iframeObj.setAttribute('src',realIframeUrl );=0A=
				iframeObj.setAttribute('id','csiDataIframe'+internalDomId );=0A=
				iframeObj.setAttribute('name','csiDataIframe'+internalDomId );=0A=
				iframeObj.setAttribute('width','10');=0A=
				iframeObj.setAttribute('height','10');=0A=
				=
iframeObj.setAttribute('style','visibility:hidden;position:absolute;top:0=
px;left:-100px;');=0A=
				iframeObj.style.top=3D'0px';=0A=
				iframeObj.style.left=3D'-100px';=0A=
				iframeObj.style.position=3D'absolute';=0A=
				var containerDiv =3D document.createElement('div');=0A=
				containerDiv.setAttribute('id','csiIframeObjs'+internalDomId);=0A=
				containerDiv.appendChild(iframeObj);=0A=
				if(document.getElementById("csimanagerdiv"))=0A=
				{=0A=
					document.getElementById("csimanagerdiv").appendChild(containerDiv);=0A=
					// This is a hack to work around IE not wanting to set iframe's src =
reliably after the dom has been loaded=0A=
					if(navigator.userAgent.indexOf('MSIE')!=3D-1)=0A=
					{=0A=
						window.setTimeout("var =
tmpIframObj=3Ddocument.getElementById('csiDataIframe"+internalDomId+"');i=
f(tmpIframObj.readyState=3D=3D'uninitialized'){tmpIframObj.src=3DtmpIfram=
Obj.getAttribute('src');tmpIframObj.position=3D'absolute';tmpIframObj.sty=
le.left=3D'-100px';}",500)=0A=
					}=0A=
				}=0A=
			}=0A=
			else=0A=
			{=0A=
				var iframeHtmlSrc=3D'<div =
id=3D"csiIframeObjs'+internalDomId+'"><iframe =
src=3D"'+url+'?'+iframeArgs+'&csiID=3D'+internalDomId+'" =
name=3D"csiDataIframe'+internalDomId+'" =
id=3D"csiDataIframe'+internalDomId+'" width=3D"10" height=3D"10" =
style=3D"visibility:hidden;position:absolute;top:0px;left:-100px;"></ifra=
me></div>';=0A=
				document.write(iframeHtmlSrc);=0A=
			}=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
CSIManager.prototype.callBackHtml =3D function(html, id)=0A=
{=0A=
	var htmlContainerObj =3D false;=0A=
	if(document.getElementById) =0A=
	{ =0A=
		htmlContainerObj =3D document.getElementById( id ); =0A=
		if(!htmlContainerObj)=0A=
		{=0A=
			if(this.CSIObjects[id] && this.CSIObjects[id].dom)=0A=
			{=0A=
				id =3D this.CSIObjects[id].dom;=0A=
				htmlContainerObj =3D document.getElementById( id ); =0A=
			}=0A=
		}=0A=
	}=0A=
	else if(document.all) =0A=
	{ =0A=
		htmlContainerObj =3D document.all[id];=0A=
		if(!htmlContainerObj)=0A=
		{=0A=
			if(this.CSIObjects[id] && this.CSIObjects[id].dom)=0A=
			{=0A=
				id =3D this.CSIObjects[id].dom;=0A=
				htmlContainerObj =3D document.all[ id]; =0A=
			}=0A=
		}=0A=
	}=0A=
	if(htmlContainerObj)=0A=
	{=0A=
		htmlContainerObj.innerHTML =3D html;=0A=
	}=0A=
	//force a refresh of the content area=0A=
	var htmlContentArea =3D 0;//document.body;=0A=
	if(htmlContentArea)=0A=
	{=0A=
		var previousTopVal =3D htmlContentArea.style.top || '0px';=0A=
		htmlContentArea.style.top =3D '1px';=0A=
		htmlContentArea.style.top =3D previousTopVal;=0A=
	}=0A=
}=0A=
=0A=
CSIManager.prototype.callBackJS =3D function(jsonObj, csiID)=0A=
{=0A=
	if( this.CSIObjects[csiID] )=0A=
	{=0A=
		var functionList =3D this.CSIObjects[csiID].functionList;=0A=
		var domList =3D this.CSIObjects[csiID].dom;=0A=
		if(functionList)=0A=
		{=0A=
			var functionLength =3D functionList.length;=0A=
			var domListLength =3D domList.length;=0A=
			if(functionLength!=3DdomListLength)=0A=
			{=0A=
				if(domListLength<functionLength)=0A=
				{=0A=
					var lastDomID =3D domList[domListLength-1];=0A=
					for(var i=3DdomListLength;i<functionLength;i++)=0A=
					{=0A=
						domList.push(lastDomID);=0A=
					}=0A=
					domListLength =3D domList.length;=0A=
				}=0A=
				else=0A=
				{=0A=
					var lastFunctionObj =3D functionList[functionLength-1];=0A=
					for(var i=3DfunctionLength;i<domListLength;i++)=0A=
					{=0A=
						functionList.push(lastFunctionObj);=0A=
					}=0A=
					functionLength =3D functionList.length;=0A=
				}=0A=
			}=0A=
	=0A=
			for(var fCounter=3D0;fCounter<functionList.length;fCounter++)=0A=
			{=0A=
				var funcCall =3D functionList[ fCounter];=0A=
				if(funcCall)=0A=
				{=0A=
					var configObj =3D this.getConfigForId( domList[fCounter] );=0A=
					var beforeLoadFuncArr =3D this.domOnBeforeLoad [ domList[fCounter] =
];=0A=
					if(beforeLoadFuncArr)=0A=
					{=0A=
						for(var i=3D0;i<beforeLoadFuncArr.length;i++)=0A=
						{=0A=
							var realFunc =3D beforeLoadFuncArr[i];=0A=
							realFunc(jsonObj, domList[fCounter], configObj );=0A=
						}=0A=
					}=0A=
					this.callBackHtml(funcCall(jsonObj, domList[ fCounter], configObj), =
domList[ fCounter] );=0A=
					var onLoadFunctionArr =3D this.domOnLoad [ domList[fCounter] ];=0A=
					if(onLoadFunctionArr)=0A=
					{=0A=
						for(var i=3D0;i<onLoadFunctionArr.length;i++)=0A=
						{=0A=
							var realFunc =3D onLoadFunctionArr[i];=0A=
							realFunc(jsonObj, domList[fCounter], configObj );=0A=
						}=0A=
					}=0A=
				}=0A=
			}=0A=
			this.CSIObjects[csiID]=3D '';=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
CSIManager.prototype.delayedProcessing =3D function()=0A=
{=0A=
	if(document.body && document.body.innerHTML && this.useDelayedCSI)=0A=
	{=0A=
		var iframeOwner =3D document.getElementById( 'csimanagerdivdelayed' ) =
|| document.all[ 'csimanagerdivdelayed' ];=0A=
		var iframeHtmlSrc =3D '';=0A=
		=0A=
		for(var =
incCounter=3D0;incCounter<this.delayedCSIList.length;incCounter++)=0A=
		{=0A=
			var src =3D this.delayedCSIList[incCounter].src;=0A=
			var id =3D this.delayedCSIList[incCounter].id;=0A=
			var today =3D new Date();=0A=
			var breakCache =3D this.delayedCSIList[incCounter].breakCache;=0A=
			var currTime =3D today.getTime() % 60;=0A=
			var args =3D ( breakCache ) ? '&time=3D'+currTime : '';=0A=
			if(this.delayedCSIList[incCounter].args)=0A=
			{=0A=
				args=3Dargs+'&'+this.delayedCSIList[incCounter].args;=0A=
			}=0A=
			=0A=
			iframeHtmlSrc+=3D'<iframe src=3D"'+src+'?csiID=3D'+id+args+'" =
name=3D"csiDataIframe'+id+'" id=3D"csiDataIframe'+id+'" width=3D"10" =
height=3D"10" =
style=3D"visibility:hidden;position:absolute;top:0px;left:-100px;"></ifra=
me>';=0A=
		}=0A=
		if(iframeOwner)=0A=
		{=0A=
			iframeOwner.innerHTML=3DiframeHtmlSrc;=0A=
		=0A=
		}=0A=
	}=0A=
}=0A=
CSIManager.getInstance();=0A=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/cnnCustomButton.js

=0A=
/* Copyright 2000-2006 Clickability Inc.  */=0A=
/* Clickability ButtonServer v4.01         */=0A=
=0A=
document.write('<script language=3D"JavaScript"> \n');=0A=
document.write('window.onerror=3Dfunction(){clickURL=3Ddocument.location.=
href;return true;} \n');=0A=
document.write('if(!self.clickURL) clickURL=3Dparent.location.href; \n');=0A=
document.write('<\/script> \n');=0A=
=0A=
var partnerID =3D 3000;=0A=
if(self.clickID){=0A=
	partnerID =3D clickID;=0A=
}else{=0A=
	alert('No clickID (partnerID) has been set on this page');=0A=
}=0A=
var custom=3D1;=0A=
var popWin=3D"width=3D510,height=3D480,resizable=3D1,scrollbars=3D1";=0A=
var =
commonLoc=3D"&fb=3DY&url=3D"+escape(getClickURL())+"&title=3D"+escape(get=
ClickTitle())+"&random=3D"+Math.random()+"&partnerID=3D"+partnerID+"&expi=
re=3D"+escape(getClickExpire());=0A=
=0A=
var inpop  =3D ( =
(document.domain.indexOf("printthis.clickability.com")>-1)?true:false);=0A=
var _b=3Dnew Image();=0A=
var clickRan=3DMath.random();=0A=
var clickFac =3D 20;=0A=
if(clickFac=3D=3D0)clickFac=3D1;=0A=
if(!inpop && clickRan>(1-(1/clickFac))){=0A=
    var _ti=3D900;=0A=
    var _qb=3D'http://s.clickability.com/s?';=0A=
    _qb+=3D"&7=3D"+partnerID;=0A=
    _qb+=3D"&8=3D"+escape(getClickURL());=0A=
    _qb+=3D"&10=3D"+escape(getClickTitle());=0A=
    _qb+=3D"&19=3D"+_ti;=0A=
    _qb+=3D"&21=3D"+clickFac;=0A=
    _qb+=3D"&18=3D"+Math.random();=0A=
    _b.src=3D_qb;=0A=
=0A=
}=0A=
=0A=
var title_append =3D "&title=3DI+JUST+SAW+IT+ON+CNN.COM%3A ";=0A=
=0A=
/****************Don't Change Below****************/=0A=
=0A=
/*Functions*/=0A=
function ST () {=0A=
	=
window.open('http://www.savethis.clickability.com/st/saveThisApp?clickMap=
=3DsaveThis'+commonLoc,'click',popWin);=0A=
	return false;=0A=
}=0A=
=0A=
function STMouseOver () {=0A=
	window.status=3D'SAVE THIS';=0A=
	return true;=0A=
}=0A=
=0A=
function STMouseOut () {=0A=
	window.status=3D'';=0A=
	return true;=0A=
}=0A=
function ET () {=0A=
=0A=
	//appendedLoc =3D commonLoc.replace(/\&title\=3D/, title_append);=0A=
	//appendedLoc =3D appendedLoc.replace(/\-\%20CNN\.com/, "");=0A=
=0A=
	=
window.open('http://www.emailthis.clickability.com/et/emailThis?clickMap=3D=
create'+commonLoc+'&summary=3D'+escape(getClickSummary())+'&image=3D'+esc=
ape(getClickImage()),'click',popWin);=0A=
	return false;=0A=
	=0A=
}=0A=
=0A=
function ETMouseOver () {=0A=
	window.status=3D'EMAIL THIS';=0A=
	return true;=0A=
}=0A=
=0A=
function ETMouseOut () {=0A=
	window.status=3D'';=0A=
	return true;=0A=
}=0A=
function PT () {=0A=
	=
window.open('http://www.printthis.clickability.com/pt/printThis?clickMap=3D=
printThis'+commonLoc,'click',popWin);=0A=
	return false;=0A=
}=0A=
=0A=
function PTMouseOver () {=0A=
	window.status=3D'PRINT THIS';=0A=
	return true;=0A=
}=0A=
=0A=
function PTMouseOut () {=0A=
	window.status=3D'';=0A=
	return true;=0A=
}=0A=
function MP () {=0A=
		=
window.open('http://www.cnn.com/virtual/2001/code/clickability2/mp_templa=
tes/etmp.html','click',popWin);=0A=
		return false;=0A=
}=0A=
=0A=
function MPMouseOver () {=0A=
	window.status=3D'MOST POPULAR';=0A=
	return true;=0A=
}=0A=
=0A=
function MPMouseOut () {=0A=
	window.status=3D'';=0A=
	return true;=0A=
}=0A=
=0A=
=0A=
function IR () {=0A=
	=
window.open('http://imware.clickability.com/imware/imware?action=3Drss.fe=
eds&button=3DY&destID=3D'+partnerID,'click',popWin);=0A=
	return false;=0A=
}=0A=
=0A=
function IRMouseOver () {=0A=
	window.status=3D'RSS FEEDS';=0A=
	return true;=0A=
}=0A=
=0A=
function IRMouseOut () {=0A=
	window.status=3D'';=0A=
	return true;=0A=
}=0A=
=0A=
=0A=
=0A=
function getClickURL() {=0A=
        if (self.clickURL) return clickURL;=0A=
        return document.location.href;=0A=
}=0A=
=0A=
function getClickTitle() {=0A=
	if (self.clickTitle) return clickTitle;=0A=
	return document.title;=0A=
}=0A=
function getClickExpire() {=0A=
	if (self.clickExpire) return clickExpire; =0A=
	return "";=0A=
}=0A=
=0A=
=0A=
function getClickSummary() {=0A=
	if (self.clickSummary) return clickSummary;=0A=
	return "";=0A=
}=0A=
=0A=
function getClickImage() {=0A=
	if (self.clickImage) return clickImage; =0A=
	return "";=0A=
}=0A=
=0A=
=0A=
window.onresize =3D function () {=0A=
    for (var i=3D0; i<document.links.length; i++) {=0A=
        document.links[i].onclick =3D document.links[i].onclick;=0A=
    }=0A=
}=0A=
=0A=
  =0A=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.l.cnn.net/cnn/.element/js/2.0/blogs.js?siteid=cnninline

Sphere =3D {}=0A=
Sphere.Tracker =3D new function() {=0A=
    this.track =3D function ( ele, site, area ) {=0A=
        if( !ele.href ) return;=0A=
        var trackimg =3D new Image();=0A=
        trackimg.src =3D =
'http://www.sphere.com/widgets/sphereit/tracker?site=3D'+site+'&area=3D'+=
area+'&href=3D'+ele.href;=0A=
    }=0A=
}=0A=
Sphere.Widget =3D new function() {=0A=
=0A=
var cnnBlogSectionID =3D ( typeof cnnSectID !=3D "undefined" ) ? =
cnnSectID : 'cnninline';=0A=
    =0A=
    var CONTENT_URL =3D =
'http://www.sphere.com/widgets/sphereit/content?siteid=3D'+cnnBlogSection=
ID;=0A=
    if(document.characterSet) CONTENT_URL +=3D =
('&cset=3D'+escape(document.characterSet));=0A=
    CONTENT_URL +=3D '&url=3D';=0A=
    var widget; var widgetContent; var widgetLoading;=0A=
    var content;=0A=
    var contentLoaded =3D false;=0A=
    =0A=
    this.search =3D function( source) {=0A=
        if( !content || (source && content.source!=3Dsource ) ) {=0A=
             requestContent( source );=0A=
             if( widget ){ widget.parentNode.removeChild(widget); =
content=3Dnull; widget=3Dnull; }=0A=
        }=0A=
        if( !widget ) draw();=0A=
        =0A=
        return false;=0A=
    }=0A=
    =0A=
    this.close =3D function() {=0A=
        if( widget ) widget.style.display =3D'none';=0A=
    }=0A=
=0A=
    this.processContent =3D function (incomingContent) {=0A=
        content =3D incomingContent;=0A=
        if( !widgetContent ) return;=0A=
        widgetContent.innerHTML =3D content.content;=0A=
        if (!contentLoaded) {=0A=
			CNN_displayBlogContent(widgetLoading,widgetContent); //hides the =
loading message, displays fetched html=0A=
		}=0A=
		=0A=
		contentLoaded =3D true;=0A=
    }=0A=
=0A=
		    function requestContent( local ) {=0A=
			window.setTimeout(function() {=0A=
	        var script =3D document.createElement('script');=0A=
			var auxVars_str =3D ( typeof auxVars !=3D "undefined" ) ? auxVars : =
'';=0A=
	            script.src =3D CONTENT_URL + escape(local || location.href);=0A=
				if(auxVars_str) { script.src +=3D '&auxVars=3D' + auxVars_str; }=0A=
	           document.body.appendChild(script);=0A=
				},2000);=0A=
	    }=0A=
	    =0A=
    =0A=
        =0A=
    function draw() {=0A=
      	widgetContent =3D =
document.getElementById('cnnBlogContainerContent');=0A=
        widgetLoading =3D document.getElementById('cnnBlogsLoad');=0A=
		if( content ) Sphere.Widget.processContent( content );=0A=
    }=0A=
		=0A=
    =0A=
} =0A=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cnn.net/cnn/.element/js/2.0/s_code.js

/* SiteCatalyst code version: H.10.=0A=
Copyright 1997-2007 Omniture, Inc. More info available at=0A=
http://www.omniture.com */=0A=
/************************ ADDITIONAL FEATURES ************************=0A=
     Plugins=0A=
*/=0A=
/* Specify the Report Suite ID(s) to track here */=0A=
var s_account=3D"cnn2global"=0A=
var s=3Ds_gi(s_account)=0A=
/************************** CONFIG SECTION **************************/=0A=
/* You may add or alter any code config here. */=0A=
/* Link Tracking Config */=0A=
s.trackDownloadLinks=3Dtrue=0A=
s.trackExternalLinks=3Dtrue=0A=
s.trackInlineStats=3Dtrue=0A=
s.linkDownloadFileTypes=3D"exe,zip,wav,mp3,mov,mpg,avi,wmv,doc,pdf,xls"=0A=
s.linkInternalFilters=3D"javascript:,cnn"=0A=
s.linkLeaveQueryString=3Dfalse=0A=
s.linkTrackVars=3D"None"=0A=
s.linkTrackEvents=3D"None"=0A=
/* Plugin Config */=0A=
s.usePlugins=3Dtrue=0A=
function s_doPlugins(s) {=0A=
	/* Add calls to plugins here */=0A=
	s.campaign=3Ds.getQueryParam('pks');=0A=
	var url1=3Ds.linkHandler('/time/','e');=0A=
	var url2=3Ds.linkHandler('cnn.com/money/','e');=0A=
	var url3=3Ds.linkHandler('/si/','e');=0A=
	var url4=3Ds.linkHandler('/ew/','e');=0A=
	var url5=3Ds.linkHandler('/lawyers/','e');=0A=
	var url6=3Ds.linkHandler('/popsci/','e');=0A=
	var url7=3Ds.linkHandler('/southernaccents/','e');=0A=
	var url8=3Ds.linkHandler('/parenting/','e');=0A=
	var url9=3Ds.linkHandler('/cookinglight/','e');=0A=
	var url10=3Ds.linkHandler('/budgettravel/','e');=0A=
	var url11=3Ds.linkHandler('/healthmag/','e');=0A=
	var url12=3Ds.linkHandler('/cottageliving/','e');=0A=
	var url13=3Ds.linkHandler('/sunset/','e');=0A=
	var url14=3Ds.linkHandler('/southern/','e');=0A=
	var url15=3Ds.linkHandler('/coastal/','e');=0A=
	var url16=3Ds.linkHandler('/peoplemag/','e');=0A=
	var url17=3Ds.linkHandler('/travelandleisure/','e');=0A=
	var url18=3Ds.linkHandler('/international/','e');=0A=
	var url19=3Ds.linkHandler('/intl/','e');=0A=
	var url20=3Ds.linkHandler('/healthologyvid/','e');=0A=
	var url21=3Ds.linkHandler('/careerbuilder/','e');=0A=
	var url22=3Ds.linkHandler('/fortune/','e');=0A=
	var url23=3Ds.linkHandler('/ewhome/','e');=0A=
	var url24=3Ds.linkHandler('/ewpop/','e');=0A=
	var url25=3Ds.linkHandler('/healthologycom/','e');=0A=
	var url26=3Ds.linkHandler('/healthologynet/','e');=0A=
	var url27=3Ds.linkHandler('/instyle/','e');=0A=
	var url28=3Ds.linkHandler('/mayo/','e');=0A=
	var url29=3Ds.linkHandler('/medpage/','e');=0A=
	var url30=3Ds.linkHandler('/shc/','e');=0A=
	var url31=3Ds.linkHandler('/cnnsi/','e');=0A=
	var url32=3Ds.linkHandler('/sports/','e');=0A=
	var url33=3Ds.linkHandler('/sportstonight/','e');=0A=
	var url34=3Ds.linkHandler('/interactiveworld/','e');=0A=
	var url35=3Ds.linkHandler('/cnet/','e');=0A=
	var url36=3Ds.linkHandler('/cnnfn/','e');=0A=
	var url37=3Ds.linkHandler('/cnni/','e');=0A=
	var url38=3Ds.linkHandler('/newfrontier/','e');=0A=
	var url39=3Ds.linkHandler('edition.cnn.com','e');=0A=
	var url40=3Ds.linkHandler('money.cnn.com','e');=0A=
	var url41=3Ds.linkHandler('sportsillustrated.cnn.com','e');=0A=
	var url42=3Ds.linkHandler('topix.net','e');=0A=
	var url43=3Ds.linkHandler('us.cnn.com/money/','e');=0A=
	var url44=3Ds.linkHandler('edition.cnn.com/money/','e');=0A=
	var url45=3Ds.linkHandler('www.cnn.com/money/','e');=0A=
=0A=
/* Set days since last visit */=0A=
s.prop13=3Ds.getDaysSinceLastVisit();=0A=
s.eVar14 =3D s.prop13;=0A=
/* Set days since last visit on all pages if found */=0A=
s.prop13=3Ds.getAndPersistValue(s.prop13,'s_dslv',0);	=0A=
=0A=
/* Set visit num by month */=0A=
s.prop12=3Ds.getVisitNum();=0A=
s.eVar13 =3D s.prop12;=0A=
=0A=
/* Check for special branding */=0A=
if (typeof(cnnOmniBranding) !=3D "undefined") =
{s.prop16=3DcnnOmniBranding;}=0A=
=0A=
/* Check for query strings */=0A=
s.eVar9 =3D cnnQueryParam('iref');=0A=
s.prop14 =3D cnnQueryParam('pc');=0A=
s.eVar15 =3D s.prop14;=0A=
s.prop15 =3D cnnQueryParam('eref');=0A=
s.eVar16 =3D s.prop15;=0A=
s.eVar24 =3D cnnQueryParam('pks');=0A=
if (s.pageName =3D=3D "CNN Home Page") {=0A=
if (cnnQueryParam('refresh') =3D=3D "1") {s.eVar9 =3D "AutoRefresh";}}=0A=
s.prop17 =3D s.eVar9;=0A=
=0A=
/* Calculate time of day */=0A=
if (typeof(cnnCurrMin) !=3D "undefined") {=0A=
var cnnOmniMint =3D '00';=0A=
if (cnnCurrMin>15&&cnnCurrMin<30) {=0A=
cnnOmniMint=3D'15';=0A=
} if (cnnCurrMin>30&&cnnCurrMin<45) {=0A=
cnnOmniMint=3D'30';=0A=
} if (cnnCurrMin>45&&cnnCurrMin<60) {=0A=
cnnOmniMint=3D'45';=0A=
}}=0A=
if (typeof(cnnCurrHour) !=3D "undefined") {=0A=
if (cnnCurrHour<10) {=0A=
var cnnOmniHour =3D '0' + cnnCurrHour;s.prop20=3DcnnOmniHour;} =0A=
else {cnnOmniHour =3D cnnCurrHour;s.prop20=3DcnnOmniHour;}} =0A=
if (typeof(cnnCurrHour) !=3D "undefined"){var cnnOmniTime =3D =
cnnOmniHour + ":" + cnnOmniMint;}=0A=
if (typeof(cnnOmniTime) !=3D "undefined") {=0A=
s.prop9=3DcnnOmniTime;=0A=
} else {=0A=
s.prop9=3D"";}=0A=
if (typeof(cnnCurrDay) !=3D "undefined") {s.prop10=3DcnnCurrDay;} else =
{s.prop10=3D"";}=0A=
=0A=
/* Check flash version */=0A=
if (typeof(CNN_FlashDetect) !=3D "undefined") {=0A=
s.prop18 =3D parseInt(CNN_FlashDetect.prototype.getVersion());}=0A=
=0A=
}=0A=
s.doPlugins=3Ds_doPlugins=0A=
/************************** PLUGINS SECTION *************************/=0A=
/* You may insert any plugins you wish to use here.                 */=0A=
/*=0A=
 * Script to check duplicate sphere tracking clicks=0A=
 */=0A=
var cnnProdMore =3D 0;=0A=
function cnnImpressionCheck() {=0A=
if (cnnProdMore>0){} else=0A=
{=0A=
cnnProdMore =3D cnnProdMore + 1;=0A=
var =
s=3Ds_gi(s_account);s.linkTrackVars=3D'events,products';s.linkTrackEvents=
=3D'event1';s.events=3D'event1';s.products=3D';Sphere:From the =
blogs;;;event1=3D1;evar23=3D'+ cnnSectionName;void(s.tl(this,'o','Sphere =
Blogs Impression'));}=0A=
}=0A=
=0A=
/*=0A=
 * Script to check for products=0A=
 */=0A=
=0A=
function ProductCheck(arr){=0A=
	var returnStr =3D '';=0A=
	var cnnProductEvent =3D '';=0A=
	for (var i =3D 0; i < arr.length; i++)=0A=
	{=0A=
			if (typeof(cnnSectionName) =3D=3D "undefined")=0A=
			{=0A=
				returnStr +=3D ";"+arr[i]+";;;event1=3D1;"=0A=
				cnnProductEvent =3D "event1";=0A=
				if(i !=3D arr.length-1)=0A=
				{=0A=
				returnStr +=3D ',';=0A=
				}=0A=
			} else =0A=
			{=0A=
				returnStr +=3D ";"+arr[i]+";;;event1=3D1;evar23=3D"+cnnSectionName;=0A=
				cnnProductEvent =3D "event1";=0A=
				if(i !=3D arr.length-1)=0A=
				{=0A=
				returnStr +=3D ',';=0A=
				}=0A=
			}=0A=
	}=0A=
	s.products =3D returnStr;=0A=
	s.events =3D cnnProductEvent;=0A=
}=0A=
=0A=
if (typeof(cnnProducts) !=3D "undefined")=0A=
{=0A=
ProductCheck(cnnProducts);=0A=
} else {}=0A=
=0A=
/*=0A=
 * Plugin: getQueryParam 2.1 - return query string parameter(s)=0A=
 */=0A=
s.getQueryParam=3Dnew Function("p","d","u",""=0A=
+"var =
s=3Dthis,v=3D'',i,t;d=3Dd?d:'';u=3Du?u:(s.pageURL?s.pageURL:s.wd.locati"=0A=
+"on);if(u=3D=3D'f')u=3Ds.gtfs().location;while(p){i=3Dp.indexOf(',');i=3D=
i<0?p"=0A=
+".length:i;t=3Ds.p_gpv(p.substring(0,i),u+'');if(t)v+=3Dv?d+t:t;p=3Dp.su=
bs"=0A=
+"tring(i=3D=3Dp.length?i:i+1)}return v");=0A=
s.p_gpv=3Dnew Function("k","u",""=0A=
+"var =
s=3Dthis,v=3D'',i=3Du.indexOf('?'),q;if(k&&i>-1){q=3Du.substring(i+1);v"=0A=
+"=3Ds.pt(q,'&','p_gvf',k)}return v");=0A=
s.p_gvf=3Dnew Function("t","k",""=0A=
+"if(t){var =
s=3Dthis,i=3Dt.indexOf('=3D'),p=3Di<0?t:t.substring(0,i),v=3Di<0?'T"=0A=
+"rue':t.substring(i+1);if(p.toLowerCase()=3D=3Dk.toLowerCase())return =
s."=0A=
+"epa(v)}return ''");=0A=
=0A=
/*=0A=
 * Plugin: CNN QueryParam 1.0  - return query string parameter(s)=0A=
 */=0A=
function cnnQueryParam(param) {=0A=
	var cnnQueryString =3D window.location.search.substring(1);=0A=
	var returnValue =3D '';=0A=
	var keyValPairs =3D cnnQueryString.split('&');=0A=
    if(!keyValPairs) { keyValPairs =3D new Array();  =0A=
    	keyValPairs[keyValPairs.length]=3DcnnQueryString}=0A=
    		for(var counter=3D0;counter<keyValPairs.length;counter++) {=0A=
				var keyVal =3D keyValPairs[counter].split('=3D');=0A=
					if(keyVal[0]=3D=3Dparam) {=0A=
						returnValue =3D keyVal[1];=0A=
						break; =0A=
					}=0A=
			}=0A=
    return returnValue;=0A=
}=0A=
=0A=
=0A=
/*=0A=
 * Plugin: linkHandler 0.5 - identify and report custom links=0A=
 */=0A=
s.linkHandler=3Dnew Function("p","t",""=0A=
+"var =
s=3Dthis,h=3Ds.p_gh(),i,l;t=3Dt?t:'o';if(!h||(s.linkType&&(h||s.linkN"=0A=
+"ame)))return =
'';i=3Dh.indexOf('?');h=3Ds.linkLeaveQueryString||i<0?h:h."=0A=
+"substring(0,i);l=3Ds.pt(p,'|','p_gn',h.toLowerCase());if(l){s.linkNam"=0A=
+"e=3Dl=3D=3D'[['?'':l;s.linkType=3Dt;return h;}return '';");=0A=
s.p_gn=3Dnew Function("t","h",""=0A=
+"var =
i=3Dt?t.indexOf('~'):-1,n,x;if(t&&h){n=3Di<0?'':t.substring(0,i);x=3D"=0A=
+"t.substring(i+1);if(h.indexOf(x.toLowerCase())>-1)return n?n:'[[';}"=0A=
+"return 0;");=0A=
/*=0A=
 * Utility Function: p_gh=0A=
 */=0A=
s.p_gh=3Dnew Function(""=0A=
+"var s=3Dthis;if(!s.eo&&!s.lnk)return '';var =
o=3Ds.eo?s.eo:s.lnk,y=3Ds.ot("=0A=
+"o),n=3Ds.oid(o),x=3Do.s_oidt;if(s.eo&&o=3D=3Ds.eo){while(o&&!n&&y!=3D'B=
ODY'){"=0A=
+"o=3Do.parentElement?o.parentElement:o.parentNode;if(!o)return =
'';y=3Ds."=0A=
+"ot(o);n=3Ds.oid(o);x=3Do.s_oidt}}return o.href?o.href:'';");=0A=
=0A=
=0A=
/*=0A=
 * Plugin: getAndPersistValue 0.3 - get a value on every page=0A=
 */=0A=
s.getAndPersistValue=3Dnew Function("v","c","e",""=0A=
+"var s=3Dthis,a=3Dnew =
Date;e=3De?e:0;a.setTime(a.getTime()+e*86400000);if("=0A=
+"v)s.c_w(c,v,e?a:0);return s.c_r(c);");=0A=
=0A=
/*=0A=
 * Plugin: Days since last Visit 1.0.H=0A=
 */=0A=
s.getDaysSinceLastVisit=3Dnew Function(""=0A=
+"var s=3Dthis,e=3Dnew =
Date(),cval,ct=3De.getTime(),c=3D's_lastvisit',day=3D24*"=0A=
+"60*60*1000;e.setTime(ct+3*365*day);cval=3Ds.c_r(c);if(!cval){s.c_w(c,"=0A=
+"ct,e);return 'First page view or cookies not supported';}else{var d"=0A=
+"=3Dct-cval;if(d>30*60*1000){if(d>30*day){s.c_w(c,ct,e);return 'More t"=0A=
+"han 30 days';}if(d<30*day+1 && d>7*day){s.c_w(c,ct,e);return 'More "=0A=
+"than 7 days';}if(d<7*day+1 && d>day){s.c_w(c,ct,e);return 'Less tha"=0A=
+"n 7 days';}if(d<day+1){s.c_w(c,ct,e);return 'Less than 1 day';}}els"=0A=
+"e return '';}"=0A=
);=0A=
=0A=
=0A=
/*                                                                  =0A=
 * Plugin: Visit Number By Month 2.0 - Return the user visit number =0A=
 */=0A=
s.getVisitNum=3Dnew Function(""=0A=
+"var s=3Dthis,e=3Dnew =
Date(),cval,cvisit,ct=3De.getTime(),c=3D's_vnum',c2=3D's"=0A=
+"_invisit';e.setTime(ct+30*24*60*60*1000);cval=3Ds.c_r(c);if(cval){var"=0A=
+" =
i=3Dcval.indexOf('&vn=3D'),str=3Dcval.substring(i+4,cval.length),k;}cvis"=0A=
+"it=3Ds.c_r(c2);if(cvisit){if(str){e.setTime(ct+30*60*1000);s.c_w(c2,'"=0A=
+"true',e);return str;}else return 'unknown visit number';}else{if(st"=0A=
+"r){str++;k=3Dcval.substring(0,i);e.setTime(k);s.c_w(c,k+'&vn=3D'+str,e)=
"=0A=
+";e.setTime(ct+30*60*1000);s.c_w(c2,'true',e);return str;}else{s.c_w"=0A=
+"(c,ct+30*24*60*60*1000+'&vn=3D1',e);e.setTime(ct+30*60*1000);s.c_w(c2"=0A=
+",'true',e);return 1;}}"=0A=
);=0A=
=0A=
/*=0A=
 * Function - read combined cookies v 0.2=0A=
 */=0A=
s.c_rr=3Ds.c_r;=0A=
s.c_r=3Dnew Function("k",""=0A=
+"var s=3Dthis,d=3Dnew =
Date,v=3Ds.c_rr(k),c=3Ds.c_rr('s_pers'),i,m,e;if(v)ret"=0A=
+"urn v;k=3Ds.ape(k);i=3Dc.indexOf(' =
'+k+'=3D');c=3Di<0?s.c_rr('s_sess'):c;i=3D"=0A=
+"c.indexOf(' =
'+k+'=3D');m=3Di<0?i:c.indexOf('|',i);e=3Di<0?i:c.indexOf(';'"=0A=
+",i);m=3Dm>0?m:e;v=3Di<0?'':s.epa(c.substring(i+2+k.length,m<0?c.length:=
"=0A=
+"m));if(m>0&&m!=3De)if(parseInt(c.substring(m+1,e<0?c.length:e))<d.get"=0A=
+"Time()){d.setTime(d.getTime()-60000);s.c_w(s.epa(k),'',d);v=3D'';}ret"=0A=
+"urn v;");=0A=
/*=0A=
 * Function - write combined cookies v 0.2=0A=
 */=0A=
s.c_wr=3Ds.c_w;=0A=
s.c_w=3Dnew Function("k","v","e",""=0A=
+"var s=3Dthis,d=3Dnew =
Date,ht=3D0,pn=3D's_pers',sn=3D's_sess',pc=3D0,sc=3D0,pv,sv,"=0A=
+"c,i,t;d.setTime(d.getTime()-60000);if(s.c_rr(k)) s.c_wr(k,'',d);k=3Ds"=0A=
+".ape(k);pv=3Ds.c_rr(pn);i=3Dpv.indexOf(' =
'+k+'=3D');if(i>-1){pv=3Dpv.substr"=0A=
+"ing(0,i)+pv.substring(pv.indexOf(';',i)+1);pc=3D1;}sv=3Ds.c_rr(sn);i=3D=
sv"=0A=
+".indexOf(' =
'+k+'=3D');if(i>-1){sv=3Dsv.substring(0,i)+sv.substring(sv.i"=0A=
+"ndexOf(';',i)+1);sc=3D1;}d=3Dnew =
Date;if(e){if(e.getTime()>d.getTime())"=0A=
+"{pv+=3D' '+k+'=3D'+s.ape(v)+'|'+e.getTime()+';';pc=3D1;}}else{sv+=3D' =
'+k+'"=0A=
+"=3D'+s.ape(v)+';';sc=3D1;}if(sc) =
s.c_wr(sn,sv,0);if(pc){t=3Dpv;while(t&&t"=0A=
+".indexOf(';')!=3D-1){var =
t1=3DparseInt(t.substring(t.indexOf('|')+1,t.i"=0A=
+"ndexOf(';')));t=3Dt.substring(t.indexOf(';')+1);ht=3Dht<t1?t1:ht;}d.set=
"=0A=
+"Time(ht);s.c_wr(pn,pv,d);}return v=3D=3Ds.c_r(s.epa(k));");=0A=
=0A=
=0A=
/* WARNING: Changing the visitor namespace will cause drastic changes=0A=
to how your visitor data is collected.  Changes should only be made=0A=
when instructed to do so by your account manager.*/=0A=
=0A=
s.visitorNamespace=3D"cnn"=0A=
s.trackingServer=3D"metrics.cnn.com"=0A=
s.dc=3D122=0A=
=0A=
/************* DO NOT ALTER ANYTHING BELOW THIS LINE ! **************/=0A=
var s_objectID;function s_c2fe(f){var x=3D'',s=3D0,e,a,b,c;while(1){e=3D=0A=
f.indexOf('"',s);b=3Df.indexOf('\\',s);c=3Df.indexOf("\n",s);if(e<0||(b>=3D=0A=
0&&b<e))e=3Db;if(e<0||(c>=3D0&&c<e))e=3Dc;if(e>=3D0){x+=3D(e>s?f.substrin=
g(s,e):=0A=
'')+(e=3D=3Dc?'\\n':'\\'+f.substring(e,e+1));s=3De+1}else return x=0A=
+f.substring(s)}return f}function s_c2fa(f){var s=3Df.indexOf('(')+1,e=3D=0A=
f.indexOf(')'),a=3D'',c;while(s>=3D0&&s<e){c=3Df.substring(s,s+1);if(c=3D=
=3D',')=0A=
a+=3D'","';else if(("\n\r\t ").indexOf(c)<0)a+=3Dc;s++}return =
a?'"'+a+'"':=0A=
a}function s_c2f(cc){cc=3D''+cc;var fc=3D'var f=3Dnew Function(',s=3D=0A=
cc.indexOf(';',cc.indexOf('{')),e=3Dcc.lastIndexOf('}'),o,a,d,q,c,f,h,x=0A=
fc+=3Ds_c2fa(cc)+',"var s=3Dnew Object;';c=3Dcc.substring(s+1,e);s=3D=0A=
c.indexOf('function');while(s>=3D0){d=3D1;q=3D'';x=3D0;f=3Dc.substring(s)=
;a=3D=0A=
s_c2fa(f);e=3Do=3Dc.indexOf('{',s);e++;while(d>0){h=3Dc.substring(e,e+1);=
if(=0A=
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"'"=0A=
)q=3Dh;if(h=3D=3D'{')d++;if(h=3D=3D'}')d--}if(d>0)e++}c=3Dc.substring(0,s=
)=0A=
+'new Function('+(a?a+',':'')+'"'+s_c2fe(c.substring(o+1,e))+'")'=0A=
+c.substring(e+1);s=3Dc.indexOf('function')}fc+=3Ds_c2fe(c)+';return =
s");'=0A=
eval(fc);return f}function s_gi(un,pg,ss){var c=3D"function s_c(un,pg,s"=0A=
+"s){var s=3Dthis;s.wd=3Dwindow;if(!s.wd.s_c_in){s.wd.s_c_il=3Dnew =
Array;s."=0A=
+"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"=0A=
+"d.s_c_in++;s.m=3Dfunction(m){return =
(''+m).indexOf('{')<0};s.fl=3Dfunct"=0A=
+"ion(x,l){return x?(''+x).substring(0,l):x};s.co=3Dfunction(o){if(!o)r"=0A=
+"eturn o;var n=3Dnew Object,x;for(x in o)if(x.indexOf('select')<0&&x.i"=0A=
+"ndexOf('filter')<0)n[x]=3Do[x];return =
n};s.num=3Dfunction(x){x=3D''+x;for"=0A=
+"(var p=3D0;p<x.length;p++)if(('0123456789').indexOf(x.substring(p,p+1"=0A=
+"))<0)return 0;return 1};s.rep=3Dfunction(x,o,n){var =
i=3Dx.indexOf(o);wh"=0A=
+"ile(x&&i>=3D0){x=3Dx.substring(0,i)+n+x.substring(i+o.length);i=3Dx.ind=
ex"=0A=
+"Of(o,i+n.length)}return x};s.ape=3Dfunction(x){var =
s=3Dthis,h=3D'01234567"=0A=
+"89ABCDEF',i,c=3Ds.charSet,n,l,e,y=3D'';c=3Dc?c.toUpperCase():'';if(x){x=
=3D'"=0A=
+"'+x;if(c=3D=3D'AUTO'&&('').charCodeAt){for(i=3D0;i<x.length;i++){c=3Dx.=
subs"=0A=
+"tring(i,i+1);n=3Dx.charCodeAt(i);if(n>127){l=3D0;e=3D'';while(n||l<4){e=
=3Dh"=0A=
+".substring(n%16,n%16+1)+e;n=3DparseInt(n/16);l++}y+=3D'%u'+e}else =
if(c=3D"=0A=
+"=3D'+')y+=3D'%2B';else =
y+=3Descape(c)}x=3Dy}else{x=3Dx?s.rep(escape(''+x),'+'"=0A=
+",'%2B'):x;if(x&&c&&s.em=3D=3D1&&x.indexOf('%u')<0&&x.indexOf('%U')<0){i=
"=0A=
+"=3Dx.indexOf('%');while(i>=3D0){i++;if(h.substring(8).indexOf(x.substri=
"=0A=
+"ng(i,i+1).toUpperCase())>=3D0)return x.substring(0,i)+'u00'+x.substri"=0A=
+"ng(i);i=3Dx.indexOf('%',i)}}}}return x};s.epa=3Dfunction(x){var =
s=3Dthis;"=0A=
+"return x?unescape(s.rep(''+x,'+',' ')):x};s.pt=3Dfunction(x,d,f,a){va"=0A=
+"r =
s=3Dthis,t=3Dx,z=3D0,y,r;while(t){y=3Dt.indexOf(d);y=3Dy<0?t.length:y;t=3D=
t.s"=0A=
+"ubstring(0,y);r=3Ds.m(f)?s[f](t,a):f(t,a);if(r)return =
r;z+=3Dy+d.length"=0A=
+";t=3Dx.substring(z,x.length);t=3Dz<x.length?t:''}return =
''};s.isf=3Dfunct"=0A=
+"ion(t,a){var =
c=3Da.indexOf(':');if(c>=3D0)a=3Da.substring(0,c);if(t.subst"=0A=
+"ring(0,2)=3D=3D's_')t=3Dt.substring(2);return =
(t!=3D''&&t=3D=3Da)};s.fsf=3Dfuncti"=0A=
+"on(t,a){var =
s=3Dthis;if(s.pt(a,',','isf',t))s.fsg+=3D(s.fsg!=3D''?',':'')"=0A=
+"+t;return 0};s.fs=3Dfunction(x,f){var =
s=3Dthis;s.fsg=3D'';s.pt(x,',','fsf"=0A=
+"',f);return s.fsg};s.c_d=3D'';s.c_gdf=3Dfunction(t,a){var =
s=3Dthis;if(!s."=0A=
+"num(t))return 1;return 0};s.c_gd=3Dfunction(){var =
s=3Dthis,d=3Ds.wd.locat"=0A=
+"ion.hostname,n=3Ds.fpCookieDomainPeriods,p;if(!n)n=3Ds.cookieDomainPeri=
"=0A=
+"ods;if(d&&!s.c_d){n=3Dn?parseInt(n):2;n=3Dn>2?n:2;p=3Dd.lastIndexOf('.'=
);"=0A=
+"if(p>=3D0){while(p>=3D0&&n>1){p=3Dd.lastIndexOf('.',p-1);n--}s.c_d=3Dp>=
0&&s"=0A=
+".pt(d,'.','c_gdf',0)?d.substring(p):d}}return s.c_d};s.c_r=3Dfunction"=0A=
+"(k){var s=3Dthis;k=3Ds.ape(k);var c=3D' '+s.d.cookie,i=3Dc.indexOf(' =
'+k+'=3D"=0A=
+"'),e=3Di<0?i:c.indexOf(';',i),v=3Di<0?'':s.epa(c.substring(i+2+k.length=
"=0A=
+",e<0?c.length:e));return =
v!=3D'[[B]]'?v:''};s.c_w=3Dfunction(k,v,e){var"=0A=
+" =
s=3Dthis,d=3Ds.c_gd(),l=3Ds.cookieLifetime,t;v=3D''+v;l=3Dl?(''+l).toUppe=
rCa"=0A=
+"se():'';if(e&&l!=3D'SESSION'&&l!=3D'NONE'){t=3D(v!=3D''?parseInt(l?l:0)=
:-60"=0A=
+");if(t){e=3Dnew =
Date;e.setTime(e.getTime()+(t*1000))}}if(k&&l!=3D'NONE'"=0A=
+"){s.d.cookie=3Dk+'=3D'+s.ape(v!=3D''?v:'[[B]]')+'; =
path=3D/;'+(e&&l!=3D'SESSI"=0A=
+"ON'?' expires=3D'+e.toGMTString()+';':'')+(d?' =
domain=3D'+d+';':'');ret"=0A=
+"urn s.c_r(k)=3D=3Dv}return 0};s.eh=3Dfunction(o,e,r,f){var =
s=3Dthis,b=3D's_'+"=0A=
+"e+'_'+s._in,n=3D-1,l,i,x;if(!s.ehl)s.ehl=3Dnew =
Array;l=3Ds.ehl;for(i=3D0;i<"=0A=
+"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"=0A=
+" =
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"=0A=
+"}if(x.b){x.o[b]=3Dx.b;return b}return =
0};s.cet=3Dfunction(f,a,t,o,b){va"=0A=
+"r =
s=3Dthis,r;if(s.apv>=3D5&&(!s.isopera||s.apv>=3D7))eval('try{r=3Ds.m(f)?s=
"=0A=
+"[f](a):f(a)}catch(e){r=3Ds.m(t)?s[t](e):t(e)}');else{if(s.ismac&&s.u."=0A=
+"indexOf('MSIE =
4')>=3D0)r=3Ds.m(b)?s[b](a):b(a);else{s.eh(s.wd,'onerror'"=0A=
+",0,o);r=3Ds.m(f)?s[f](a):f(a);s.eh(s.wd,'onerror',1)}}return r};s.gtf"=0A=
+"set=3Dfunction(e){var s=3Dthis;return s.tfs};s.gtfsoe=3Dnew =
Function('e',"=0A=
+"'var s=3Ds_c_il['+s._in+'];s.eh(window,\"onerror\",1);s.etfs=3D1;var =
c=3D"=0A=
+"s.t();if(c)s.d.write(c);s.etfs=3D0;return =
true');s.gtfsfb=3Dfunction(a)"=0A=
+"{return window};s.gtfsf=3Dfunction(w){var =
s=3Dthis,p=3Dw.parent,l=3Dw.locat"=0A=
+"ion;s.tfs=3Dw;if(p&&p.location!=3Dl&&p.location.host=3D=3Dl.host){s.tfs=
=3Dp;r"=0A=
+"eturn s.gtfsf(s.tfs)}return s.tfs};s.gtfs=3Dfunction(){var =
s=3Dthis;if("=0A=
+"!s.tfs){s.tfs=3Ds.wd;if(!s.etfs)s.tfs=3Ds.cet('gtfsf',s.tfs,'gtfset',s.=
"=0A=
+"gtfsoe,'gtfsfb')}return s.tfs};s.mr=3Dfunction(sess,q,ta){var =
s=3Dthis,"=0A=
+"dc=3Ds.dc,t1=3Ds.trackingServer,t2=3Ds.trackingServerSecure,ns=3Ds.visi=
torN"=0A=
+"amespace,unc=3Ds.rep(s.fun,'_','-'),imn=3D's_i_'+s.fun,im,b,e,rs=3D'htt=
p'"=0A=
+"+(s.ssl?'s':'')+'://'+(t1?(s.ssl&&t2?t2:t1):((ns?ns:(s.ssl?'102':un"=0A=
+"c))+'.'+(s.dc?s.dc:112)+'.2o7.net'))+'/b/ss/'+s.un+'/1/H.10-pdvu-2/"=0A=
+"'+sess+'?[AQB]&ndh=3D1'+(q?q:'')+(s.q?s.q:'')+'&[AQE]';if(s.isie&&!s."=0A=
+"ismac){if(s.apv>5.5)rs=3Ds.fl(rs,4095);else =
rs=3Ds.fl(rs,2047)}if(s.d.i"=0A=
+"mages&&s.apv>=3D3&&(!s.isopera||s.apv>=3D7)&&(s.ns6<0||s.apv>=3D6.1)){i=
m=3D"=0A=
+"s.wd[imn];if(!im)im=3Ds.wd[imn]=3Dnew =
Image;im.src=3Drs;if(rs.indexOf('&p"=0A=
+"e=3D')>=3D0&&(!ta||ta=3D=3D'_self'||ta=3D=3D'_top'||(s.wd.name&&ta=3D=3D=
s.wd.name))"=0A=
+"){b=3De=3Dnew Date;while(e.getTime()-b.getTime()<500)e=3Dnew =
Date}return "=0A=
+"''}return '<im'+'g sr'+'c=3D\"'+rs+'\" width=3D1 height=3D1 border=3D0 =
alt=3D"=0A=
+"\"\">'};s.gg=3Dfunction(v){var s=3Dthis;return =
s.wd['s_'+v]};s.glf=3Dfunc"=0A=
+"tion(t,a){if(t.substring(0,2)=3D=3D's_')t=3Dt.substring(2);var =
s=3Dthis,v=3Ds"=0A=
+".gg(t);if(v)s[t]=3Dv};s.gl=3Dfunction(v){var =
s=3Dthis;if(s.pg)s.pt(v,',',"=0A=
+"'glf',0)};s.gv=3Dfunction(v){var s=3Dthis;return =
s['vpm_'+v]?s['vpv_'+v"=0A=
+"]:(s[v]?s[v]:'')};s.havf=3Dfunction(t,a){var =
s=3Dthis,b=3Dt.substring(0,4"=0A=
+"),x=3Dt.substring(4),n=3DparseInt(x),k=3D'g_'+t,m=3D'vpm_'+t,q=3Dt,v=3D=
s.linkTr"=0A=
+"ackVars,e=3Ds.linkTrackEvents;s[k]=3Ds.gv(t);if(s.lnk||s.eo){v=3Dv?v+',=
'+"=0A=
+"s.vl_l:'';if(v&&!s.pt(v,',','isf',t))s[k]=3D'';if(t=3D=3D'events'&&e)s[=
k]"=0A=
+"=3Ds.fs(s[k],e)}s[m]=3D0;if(t=3D=3D'visitorID')q=3D'vid';else =
if(t=3D=3D'pageURL'"=0A=
+"){q=3D'g';s[k]=3Ds.fl(s[k],255)}else =
if(t=3D=3D'referrer'){q=3D'r';s[k]=3Ds.fl("=0A=
+"s[k],255)}else if(t=3D=3D'vmk')q=3D'vmt';else =
if(t=3D=3D'charSet'){q=3D'ce';if("=0A=
+"s[k]&&s[k].toUpperCase()=3D=3D'AUTO')s[k]=3D'ISO8859-1';else =
if(s[k]&&s.e"=0A=
+"m=3D=3D2)s[k]=3D'UTF-8'}else =
if(t=3D=3D'visitorNamespace')q=3D'ns';else if(t=3D=3D'"=0A=
+"cookieDomainPeriods')q=3D'cdp';else =
if(t=3D=3D'cookieLifetime')q=3D'cl';els"=0A=
+"e if(t=3D=3D'variableProvider')q=3D'vvp';else =
if(t=3D=3D'currencyCode')q=3D'cc'"=0A=
+";else if(t=3D=3D'channel')q=3D'ch';else =
if(t=3D=3D'transactionID')q=3D'xact';el"=0A=
+"se if(t=3D=3D'campaign')q=3D'v0';else =
if(s.num(x)){if(b=3D=3D'prop')q=3D'c'+n;e"=0A=
+"lse 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],"=0A=
+"255)}}if(s[k]&&t!=3D'linkName'&&t!=3D'linkType')s.qav+=3D'&'+q+'=3D'+s.=
ape("=0A=
+"s[k]);return ''};s.hav=3Dfunction(){var =
s=3Dthis;s.qav=3D'';s.pt(s.vl_t,'"=0A=
+",','havf',0);return =
s.qav};s.lnf=3Dfunction(t,h){t=3Dt?t.toLowerCase():"=0A=
+"'';h=3Dh?h.toLowerCase():'';var =
te=3Dt.indexOf('=3D');if(t&&te>0&&h.index"=0A=
+"Of(t.substring(te+1))>=3D0)return t.substring(0,te);return =
''};s.ln=3Df"=0A=
+"unction(h){var s=3Dthis,n=3Ds.linkNames;if(n)return =
s.pt(n,',','lnf',h)"=0A=
+";return =
''};s.ltdf=3Dfunction(t,h){t=3Dt?t.toLowerCase():'';h=3Dh?h.toLow"=0A=
+"erCase():'';var =
qi=3Dh.indexOf('?');h=3Dqi>=3D0?h.substring(0,qi):h;if(t&"=0A=
+"&h.substring(h.length-(t.length+1))=3D=3D'.'+t)return 1;return =
0};s.lte"=0A=
+"f=3Dfunction(t,h){t=3Dt?t.toLowerCase():'';h=3Dh?h.toLowerCase():'';if(=
t&"=0A=
+"&h.indexOf(t)>=3D0)return 1;return 0};s.lt=3Dfunction(h){var =
s=3Dthis,lft"=0A=
+"=3Ds.linkDownloadFileTypes,lef=3Ds.linkExternalFilters,lif=3Ds.linkInte=
rn"=0A=
+"alFilters;lif=3Dlif?lif:s.wd.location.hostname;h=3Dh.toLowerCase();if(s=
"=0A=
+".trackDownloadLinks&&lft&&s.pt(lft,',','ltdf',h))return 'd';if(s.tr"=0A=
+"ackExternalLinks&&(lef||lif)&&(!lef||s.pt(lef,',','ltef',h))&&(!lif"=0A=
+"||!s.pt(lif,',','ltef',h)))return 'e';return ''};s.lc=3Dnew Function("=0A=
+"'e','var =
s=3Ds_c_il['+s._in+'],b=3Ds.eh(this,\"onclick\");s.lnk=3Ds.co(th"=0A=
+"is);s.t();s.lnk=3D0;if(b)return this[b](e);return true');s.bc=3Dnew =
Fun"=0A=
+"ction('e','var s=3Ds_c_il['+s._in+'],f;if(s.d&&s.d.all&&s.d.all.cppXY"=0A=
+"ctnr)return;s.eo=3De.srcElement?e.srcElement:e.target;eval(\"try{if(s"=0A=
+".eo&&(s.eo.tagName||s.eo.parentElement||s.eo.parentNode))s.t()}catc"=0A=
+"h(f){}\");s.eo=3D0');s.ot=3Dfunction(o){var =
a=3Do.type,b=3Do.tagName;return"=0A=
+" (a&&a.toUpperCase?a:b&&b.toUpperCase?b:o.href?'A':'').toUpperCase("=0A=
+")};s.oid=3Dfunction(o){var =
s=3Dthis,t=3Ds.ot(o),p=3Do.protocol,c=3Do.onclick,"=0A=
+"n=3D'',x=3D0;if(!o.s_oid){if(o.href&&(t=3D=3D'A'||t=3D=3D'AREA')&&(!c||=
!p||p.to"=0A=
+"LowerCase().indexOf('javascript')<0))n=3Do.href;else =
if(c){n=3Ds.rep(s."=0A=
+"rep(s.rep(s.rep(''+c,\"\\r\",''),\"\\n\",''),\"\\t\",''),' ','');x=3D"=0A=
+"2}else =
if(o.value&&(t=3D=3D'INPUT'||t=3D=3D'SUBMIT')){n=3Do.value;x=3D3}else if"=0A=
+"(o.src&&t=3D=3D'IMAGE')n=3Do.src;if(n){o.s_oid=3Ds.fl(n,100);o.s_oidt=3D=
x}}re"=0A=
+"turn o.s_oid};s.rqf=3Dfunction(t,un){var =
s=3Dthis,e=3Dt.indexOf('=3D'),u=3De>"=0A=
+"=3D0?','+t.substring(0,e)+',':'';return =
u&&u.indexOf(','+un+',')>=3D0?s"=0A=
+".epa(t.substring(e+1)):''};s.rq=3Dfunction(un){var =
s=3Dthis,c=3Dun.indexO"=0A=
+"f(','),v=3Ds.c_r('s_sq'),q=3D'';if(c<0)return =
s.pt(v,'&','rqf',un);retu"=0A=
+"rn s.pt(un,',','rq',0)};s.sqp=3Dfunction(t,a){var =
s=3Dthis,e=3Dt.indexOf("=0A=
+"'=3D'),q=3De<0?'':s.epa(t.substring(e+1));s.sqq[q]=3D'';if(e>=3D0)s.pt(=
t.su"=0A=
+"bstring(0,e),',','sqs',q);return 0};s.sqs=3Dfunction(un,q){var =
s=3Dthis"=0A=
+";s.squ[un]=3Dq;return 0};s.sq=3Dfunction(q){var =
s=3Dthis,k=3D's_sq',v=3Ds.c_r"=0A=
+"(k),x,c=3D0;s.sqq=3Dnew Object;s.squ=3Dnew =
Object;s.sqq[q]=3D'';s.pt(v,'&',"=0A=
+"'sqp',0);s.pt(s.un,',','sqs',q);v=3D'';for(x in s.squ)s.sqq[s.squ[x]]"=0A=
+"+=3D(s.sqq[s.squ[x]]?',':'')+x;for(x in =
s.sqq)if(x&&s.sqq[x]&&(x=3D=3Dq||"=0A=
+"c<2)){v+=3D(v?'&':'')+s.sqq[x]+'=3D'+s.ape(x);c++}return =
s.c_w(k,v,0)};"=0A=
+"s.wdl=3Dnew Function('e','var =
s=3Ds_c_il['+s._in+'],r=3Dtrue,b=3Ds.eh(s.wd,"=0A=
+"\"onload\"),i,o,oc;if(b)r=3Dthis[b](e);for(i=3D0;i<s.d.links.length;i++=
"=0A=
+"){o=3Ds.d.links[i];oc=3Do.onclick?\"\"+o.onclick:\"\";if((oc.indexOf(\"=
"=0A=
+"s_gs(\")<0||oc.indexOf(\".s_oc(\")>=3D0)&&oc.indexOf(\".tl(\")<0)s.eh"=0A=
+"(o,\"onclick\",0,s.lc);}return r');s.wds=3Dfunction(){var =
s=3Dthis;if(s"=0A=
+".apv>3&&(!s.isie||!s.ismac||s.apv>=3D5)){if(s.b&&s.b.attachEvent)s.b."=0A=
+"attachEvent('onclick',s.bc);else if(s.b&&s.b.addEventListener)s.b.a"=0A=
+"ddEventListener('click',s.bc,false);else s.eh(s.wd,'onload',0,s.wdl"=0A=
+")}};s.vs=3Dfunction(x){var =
s=3Dthis,v=3Ds.visitorSampling,g=3Ds.visitorSamp"=0A=
+"lingGroup,k=3D's_vsn_'+s.un+(g?'_'+g:''),n=3Ds.c_r(k),e=3Dnew =
Date,y=3De.ge"=0A=
+"tYear();e.setYear(y+10+(y<1900?1900:0));if(v){v*=3D100;if(!n){if(!s.c"=0A=
+"_w(k,x,e))return 0;n=3Dx}if(n%10000>v)return 0}return =
1};s.dyasmf=3Dfun"=0A=
+"ction(t,m){if(t&&m&&m.indexOf(t)>=3D0)return 1;return =
0};s.dyasf=3Dfunc"=0A=
+"tion(t,m){var s=3Dthis,i=3Dt?t.indexOf('=3D'):-1,n,x;if(i>=3D0&&m){var =
n=3Dt."=0A=
+"substring(0,i),x=3Dt.substring(i+1);if(s.pt(x,',','dyasmf',m))return "=0A=
+"n}return 0};s.uns=3Dfunction(){var =
s=3Dthis,x=3Ds.dynamicAccountSelection"=0A=
+",l=3Ds.dynamicAccountList,m=3Ds.dynamicAccountMatch,n,i;s.un.toLowerCas=
"=0A=
+"e();if(x&&l){if(!m)m=3Ds.wd.location.host;if(!m.toLowerCase)m=3D''+m;l=3D=
"=0A=
+"l.toLowerCase();m=3Dm.toLowerCase();n=3Ds.pt(l,';','dyasf',m);if(n)s.un=
"=0A=
+"=3Dn}i=3Ds.un.indexOf(',');s.fun=3Di<0?s.un:s.un.substring(0,i)};s.sa=3D=
fun"=0A=
+"ction(un){var s=3Dthis;s.un=3Dun;if(!s.oun)s.oun=3Dun;else =
if((','+s.oun+"=0A=
+"',').indexOf(un)<0)s.oun+=3D','+un;s.uns()};s.t=3Dfunction(){var =
s=3Dthis"=0A=
+",trk=3D1,tm=3Dnew =
Date,sed=3DMath&&Math.random?Math.floor(Math.random()*1"=0A=
+"0000000000000):tm.getTime(),sess=3D's'+Math.floor(tm.getTime()/108000"=0A=
+"00)%10+sed,yr=3Dtm.getYear(),vt=3Dtm.getDate()+'/'+tm.getMonth()+'/'+(y=
"=0A=
+"r<1900?yr+1900:yr)+' '+tm.getHours()+':'+tm.getMinutes()+':'+tm.get"=0A=
+"Seconds()+' '+tm.getDay()+' '+tm.getTimezoneOffset(),tfs=3Ds.gtfs(),t"=0A=
+"a=3D'',q=3D'',qs=3D'';s.gl(s.vl_g);s.uns();if(!s.q){var =
tl=3Dtfs.location,a"=0A=
+",o,i,x=3D'',c=3D'',v=3D'',p=3D'',bw=3D'',bh=3D'',j=3D'1.0',k=3Ds.c_w('s=
_cc','true',"=0A=
+"0)?'Y':'N',hp=3D'',ct=3D'',pn=3D0,ps;if(String&&String.prototype){j=3D\=
"1.1"=0A=
+"\";if(j.match){j=3D\"1.2\";if(tm.setUTCDate){j=3D\"1.3\";if(s.isie&&s.i=
"=0A=
+"smac&&s.apv>=3D5)j=3D\"1.4\";if(pn.toPrecision){j=3D\"1.5\";a=3Dnew =
Array;i"=0A=
+"f(a.forEach){j=3D\"1.6\";i=3D0;o=3Dnew Object;eval(\"try{i=3Dnew =
Iterator(o"=0A=
+")}catch(e){}\");if(i&&i.next)j=3D\"1.7\"}}}}}if(s.apv>=3D4)x=3Dscreen.w=
id"=0A=
+"th+'x'+screen.height;if(s.isns||s.isopera){if(s.apv>=3D3){v=3Ds.n.javaE=
"=0A=
+"nabled()?'Y':'N';if(s.apv>=3D4){c=3Dscreen.pixelDepth;bw=3Ds.wd.innerWi=
dt"=0A=
+"h;bh=3Ds.wd.innerHeight;}}s.pl=3Ds.n.plugins}else =
if(s.isie){if(s.apv>=3D"=0A=
+"4){v=3Ds.n.javaEnabled()?'Y':'N';c=3Dscreen.colorDepth;if(s.apv>=3D5){b=
w=3D"=0A=
+"s.d.documentElement.offsetWidth;bh=3Ds.d.documentElement.offsetHeight"=0A=
+";if(!s.ismac&&s.b){eval(\"try{s.b.addBehavior('#default#homePage');"=0A=
+"hp=3Ds.b.isHomePage(tl)?'Y':'N'}catch(e){}\");eval(\"try{s.b.addBehav"=0A=
+"ior('#default#clientCaps');ct=3Ds.b.connectionType}catch(e){}\")}}}el"=0A=
+"se =
r=3D''}if(s.pl)while(pn<s.pl.length&&pn<30){ps=3Ds.fl(s.pl[pn].name,"=0A=
+"100)+';';if(p.indexOf(ps)<0)p+=3Dps;pn++}s.q=3D(x?'&s=3D'+s.ape(x):'')+=
(c"=0A=
+"?'&c=3D'+s.ape(c):'')+(j?'&j=3D'+j:'')+(v?'&v=3D'+v:'')+(k?'&k=3D'+k:''=
)+(b"=0A=
+"w?'&bw=3D'+bw:'')+(bh?'&bh=3D'+bh:'')+(ct?'&ct=3D'+s.ape(ct):'')+(hp?'&=
hp"=0A=
+"=3D'+hp:'')+(p?'&p=3D'+s.ape(p):'')}if(s.usePlugins)s.doPlugins(s);var =
"=0A=
+"l=3Ds.wd.location,r=3Dtfs.document.referrer;if(!s.pageURL)s.pageURL=3Dl=
;i"=0A=
+"f(!s.referrer)s.referrer=3Dr;if(s.lnk||s.eo){var =
o=3Ds.eo?s.eo:s.lnk;if"=0A=
+"(!o)return '';var =
p=3Ds.gv('pageName'),w=3D1,t=3Ds.ot(o),n=3Ds.oid(o),x=3Do.s"=0A=
+"_oidt,h,l,i,oc;if(s.eo&&o=3D=3Ds.eo){while(o&&!n&&t!=3D'BODY'){o=3Do.pa=
rent"=0A=
+"Element?o.parentElement:o.parentNode;if(!o)return =
'';t=3Ds.ot(o);n=3Ds."=0A=
+"oid(o);x=3Do.s_oidt}oc=3Do.onclick?''+o.onclick:'';if((oc.indexOf(\"s_g=
"=0A=
+"s(\")>=3D0&&oc.indexOf(\".s_oc(\")<0)||oc.indexOf(\".tl(\")>=3D0)return=
"=0A=
+" =
''}ta=3Dn?o.target:1;h=3Do.href?o.href:'';i=3Dh.indexOf('?');h=3Ds.linkLe=
a"=0A=
+"veQueryString||i<0?h:h.substring(0,i);l=3Ds.linkName?s.linkName:s.ln("=0A=
+"h);t=3Ds.linkType?s.linkType.toLowerCase():s.lt(h);if(t&&(h||l))q+=3D'&=
"=0A=
+"pe=3Dlnk_'+(t=3D=3D'd'||t=3D=3D'e'?s.ape(t):'o')+(h?'&pev1=3D'+s.ape(h)=
:'')+(l?"=0A=
+"'&pev2=3D'+s.ape(l):'');else =
trk=3D0;if(s.trackInlineStats){if(!p){p=3Ds."=0A=
+"gv('pageURL');w=3D0}t=3Ds.ot(o);i=3Do.sourceIndex;if(s.gg('objectID')){=
n=3D"=0A=
+"s.gg('objectID');x=3D1;i=3D1}if(p&&n&&t)qs=3D'&pid=3D'+s.ape(s.fl(p,255=
))+("=0A=
+"w?'&pidt=3D'+w:'')+'&oid=3D'+s.ape(s.fl(n,100))+(x?'&oidt=3D'+x:'')+'&o=
t=3D"=0A=
+"'+s.ape(t)+(i?'&oi=3D'+i:'')}}if(!trk&&!qs)return '';if(s.p_r)s.p_r()"=0A=
+";var =
code=3D'';if(trk&&s.vs(sed))code=3Ds.mr(sess,(vt?'&t=3D'+s.ape(vt):'"=0A=
+"')+s.hav()+q+(qs?qs:s.rq(s.un)),ta);s.sq(trk?'':qs);s.lnk=3Ds.eo=3Ds.li=
"=0A=
+"nkName=3Ds.linkType=3Ds.wd.s_objectID=3Ds.ppu=3D'';if(s.pg)s.wd.s_lnk=3D=
s.wd."=0A=
+"s_eo=3Ds.wd.s_linkName=3Ds.wd.s_linkType=3D'';return =
code};s.tl=3Dfunction("=0A=
+"o,t,n){var =
s=3Dthis;s.lnk=3Ds.co(o);s.linkType=3Dt;s.linkName=3Dn;s.t()};s."=0A=
+"ssl=3D(s.wd.location.protocol.toLowerCase().indexOf('https')>=3D0);s.d=3D=
"=0A=
+"document;s.b=3Ds.d.body;s.n=3Dnavigator;s.u=3Ds.n.userAgent;s.ns6=3Ds.u=
.ind"=0A=
+"exOf('Netscape6/');var =
apn=3Ds.n.appName,v=3Ds.n.appVersion,ie=3Dv.indexO"=0A=
+"f('MSIE '),o=3Ds.u.indexOf('Opera =
'),i;if(v.indexOf('Opera')>=3D0||o>0)"=0A=
+"apn=3D'Opera';s.isie=3D(apn=3D=3D'Microsoft Internet =
Explorer');s.isns=3D(apn"=0A=
+"=3D=3D'Netscape');s.isopera=3D(apn=3D=3D'Opera');s.ismac=3D(s.u.indexOf=
('Mac')>"=0A=
+"=3D0);if(o>0)s.apv=3DparseFloat(s.u.substring(o+6));else =
if(ie>0){s.apv"=0A=
+"=3DparseInt(i=3Dv.substring(ie+5));if(s.apv>3)s.apv=3DparseFloat(i)}els=
e "=0A=
+"if(s.ns6>0)s.apv=3DparseFloat(s.u.substring(s.ns6+10));else =
s.apv=3Dpar"=0A=
+"seFloat(v);s.em=3D0;if(String.fromCharCode){i=3Descape(String.fromCharC=
"=0A=
+"ode(256)).toUpperCase();s.em=3D(i=3D=3D'%C4%80'?2:(i=3D=3D'%U0100'?1:0)=
)}s.sa"=0A=
+"(un);s.vl_l=3D'visitorID,vmk,ppu,charSet,visitorNamespace,cookieDomai"=0A=
+"nPeriods,cookieLifetime,pageName,pageURL,referrer,currencyCode,purc"=0A=
+"haseID';s.vl_t=3Ds.vl_l+',variableProvider,channel,server,pageType,tr"=0A=
+"ansactionID,campaign,state,zip,events,products,linkName,linkType';f"=0A=
+"or(var =
n=3D1;n<51;n++)s.vl_t+=3D',prop'+n+',eVar'+n+',hier'+n;s.vl_g=3Ds."=0A=
+"vl_t+',trackDownloadLinks,trackExternalLinks,trackInlineStats,linkL"=0A=
+"eaveQueryString,linkDownloadFileTypes,linkExternalFilters,linkInter"=0A=
+"nalFilters,linkNames';s.pg=3Dpg;s.gl(s.vl_g);if(!ss)s.wds()}",=0A=
l=3Dwindow.s_c_il,n=3Dnavigator,u=3Dn.userAgent,v=3Dn.appVersion,e=3Dv.in=
dexOf(=0A=
'MSIE =
'),m=3Du.indexOf('Netscape6/'),a,i,s;if(l)for(i=3D0;i<l.length;i++){=0A=
s=3Dl[i];if(s.oun=3D=3Dun)return s;else =
if(s.fs(s.oun,un)){s.sa(un);return s=0A=
}}if(e>0){a=3DparseInt(i=3Dv.substring(e+5));if(a>3)a=3DparseFloat(i)}=0A=
else if(m>0)a=3DparseFloat(u.substring(m+10));else a=3DparseFloat(v);if(a=0A=
>=3D5&&v.indexOf('Opera')<0&&u.indexOf('Opera')<0){eval(c);return new=0A=
s_c(un,pg,ss)}else s=3Ds_c2f(c);return s(un,pg,ss)}function s_co(o){=0A=
var s=3Ds_gi("^",1,1);return s.co(o)}function s_gs(un){var =
s=3Ds_gi(un,1,1=0A=
);return s.t()}function s_dc(un){var s=3Ds_gi(un,1);return s.t()}=0A=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/video/common/primary.js

var cnnXmpPrimaryJsonObj =3D {type: "system", =0A=
map: [],=0A=
nodes: [=0A=
{name: "PlayerContexts", =0A=
map: [],=0A=
nodes: [=0A=
{name: "BVP", =0A=
map: [=0A=
{key: "omniture account", value: "cnn2global"}],=0A=
nodes: [=0A=
{name: "BasePlayer", =0A=
map: [=0A=
{key: "Ad metering image URL", value: =
"http://i.a.cnn.net/cnn/images/1.gif"}, =0A=
{key: "rule classes relative URL", value: =
"/.element/js/2.0/video/common/RulesImplementations.js"}, =0A=
{key: "rule classes namespace", value: "CNNRules"}],=0A=
nodes: [=0A=
{name: "ad patterns", =0A=
map: [=0A=
{key: "BVP", value: "/.element/js/2.0/video/common/BVPVideo.json"}],=0A=
nodes: []=0A=
}, =0A=
{name: "PlayerSizes", =0A=
map: [=0A=
{key: "001", value: "576x324"}],=0A=
nodes: []=0A=
}, =0A=
{name: "Additional segvars", =0A=
map: [=0A=
{key: "primary", value: "page.allowcompete=3Dyes"}, =0A=
{key: "synch_unit", value: =
"params.styles=3Dfs&page.allowcompete=3Dyes"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "pattern parameters", =0A=
map: [=0A=
{key: "synch_unit_size", value: "336x280"}, =0A=
{key: "ad_size", value: "lg"}],=0A=
nodes: []=0A=
}, =0A=
{name: "invariantRules", =0A=
map: [=0A=
{key: "001", value: "{ id: \'NoAdBeforeSensitiveContentRule\', =
nodeTypes: [\'PreRoll\', \'SponsoredAd\', \'HouseAd\'] }"}, =0A=
{key: "002", value: "{ id: \'NoAdAfterSensitiveContentRule\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "003", value: "{ id: \'NextContentLongEnoughRule\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "004", value: "{ id: \'ContentWasLongEnoughRule\', nodeTypes: =
[\'PostRoll\'] }"},=0A=
{key: "005", value: "{ id: \'SponsoredAdOverridesPreRoll\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "006", value: "{ id: \'SponsoredAdOverridesPostRoll\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "007", value: "{ id: \'CannotHaveTwoSequentialAdsRule\', =
nodeTypes: [\'PreRoll\', \'PostRoll\', \'SponsoredAd\', \'HouseAd\'] =
}"}, =0A=
{key: "008", value: "{ id: \'ContentExistsForNextUpSlate\', nodeTypes: =
[\'NextUpSlate\'] }"},=0A=
{key: "009", value: "{ id: \'OnlyRunStartSlateOncePerPage\', nodeTypes: =
[\'StartSlate\'] }"}],=0A=
nodes: []=0A=
}, =0A=
{name: "NodeTriggers", =0A=
map: [],=0A=
nodes: [=0A=
{name: "Content", =0A=
map: [=0A=
{key: "start", value: "[{type: \'omnitureTrack\', data: \'start\'}, =
{type: \'webstatTrack\', data: \'start\'}]"}, =0A=
{key: "end", value: "[{type: \'omnitureTrack\', data: \'end\'}]"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "TriggerCommands", =0A=
map: [=0A=
{key: "omnitureTrack", value: "CNN.BVPOmnitureTriggerCommand"}, =0A=
{key: "webstatTrack", value: "CNN.WebstatTriggerCommand"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "CNNHotTopic", =0A=
map: [=0A=
{key: "omniture account", value: "cnn2global"}],=0A=
nodes: [=0A=
{name: "BasePlayer", =0A=
map: [=0A=
{key: "Ad metering image URL", value: =
"http://i.a.cnn.net/cnn/images/1.gif"}, =0A=
{key: "rule classes relative URL", value: =
"/.element/js/2.0/video/common/RulesImplementations.js"}, =0A=
{key: "rule classes namespace", value: "CNNRules"}],=0A=
nodes: [=0A=
{name: "ad patterns", =0A=
map: [=0A=
{key: "CNNHotTopic", value: =
"/.element/js/2.0/video/common/CNNHotTopic.json"}],=0A=
nodes: []=0A=
}, =0A=
{name: "PlayerSizes", =0A=
map: [=0A=
{key: "001", value: "384x216"}],=0A=
nodes: []=0A=
}, =0A=
{name: "Additional segvars", =0A=
map: [=0A=
{key: "primary", value: "page.allowcompete=3Dyes"}, =0A=
{key: "synch_unit", value: =
"params.styles=3Dfs&page.allowcompete=3Dyes"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "pattern parameters", =0A=
map: [=0A=
{key: "synch_unit_size", value: "336x280"}, =0A=
{key: "ad_size", value: "lg"}],=0A=
nodes: []=0A=
}, =0A=
{name: "invariantRules", =0A=
map: [=0A=
{key: "001", value: "{ id: \'NoAdBeforeSensitiveContentRule\', =
nodeTypes: [\'PreRoll\', \'SponsoredAd\', \'HouseAd\'] }"}, =0A=
{key: "002", value: "{ id: \'NoAdAfterSensitiveContentRule\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "003", value: "{ id: \'NextContentLongEnoughRule\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "004", value: "{ id: \'ContentWasLongEnoughRule\', nodeTypes: =
[\'PostRoll\'] }"},=0A=
{key: "005", value: "{ id: \'SponsoredAdOverridesPreRoll\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "006", value: "{ id: \'SponsoredAdOverridesPostRoll\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "007", value: "{ id: \'CannotHaveTwoSequentialAdsRule\', =
nodeTypes: [\'PreRoll\', \'PostRoll\', \'SponsoredAd\', \'HouseAd\'] =
}"}, =0A=
{key: "008", value: "{ id: \'ContentExistsForNextUpSlate\', nodeTypes: =
[\'NextUpSlate\'] }"},=0A=
{key: "009", value: "{ id: \'DoNotPlayMe\', nodeTypes: [\'SponsoredAd\'] =
}"},=0A=
{key: "010", value: "{ id: \'OnlyRunStartSlateOncePerPage\', nodeTypes: =
[\'StartSlate\'] }"}],=0A=
nodes: []=0A=
}, =0A=
{name: "NodeTriggers", =0A=
map: [],=0A=
nodes: [=0A=
{name: "Content", =0A=
map: [=0A=
{key: "start", value: "[{type: \'omnitureTrack\', data: \'start\'}, =
{type: \'webstatTrack\', data: \'start\'}]"}, =0A=
{key: "end", value: "[{type: \'omnitureTrack\', data: \'end\'}]"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "TriggerCommands", =0A=
map: [=0A=
{key: "omnitureTrack", value: "CNN.HotTopicOmnitureTriggerCommand"}, =0A=
{key: "webstatTrack", value: "CNN.WebstatTriggerCommand"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "CNNHomePage", =0A=
map: [=0A=
{key: "omniture account", value: "cnn2global"}],=0A=
nodes: [=0A=
{name: "BasePlayer", =0A=
map: [=0A=
{key: "Ad metering image URL", value: =
"http://i.a.cnn.net/cnn/images/1.gif"}, =0A=
{key: "rule classes relative URL", value: =
"/.element/js/2.0/video/common/RulesImplementations.js"}, =0A=
{key: "rule classes namespace", value: "CNNRules"}],=0A=
nodes: [=0A=
{name: "ad patterns", =0A=
map: [=0A=
{key: "CNNHomePage", value: =
"/.element/js/2.0/video/common/CNNHomePage.json"}],=0A=
nodes: []=0A=
}, =0A=
{name: "PlayerSizes", =0A=
map: [=0A=
{key: "001", value: "256x144"}],=0A=
nodes: []=0A=
}, =0A=
{name: "Additional segvars", =0A=
map: [=0A=
{key: "primary", value: "page.allowcompete=3Dyes"}, =0A=
{key: "synch_unit", value: =
"params.styles=3Dfs&page.allowcompete=3Dyes"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "pattern parameters", =0A=
map: [=0A=
{key: "synch_unit_size", value: "336x280"}, =0A=
{key: "ad_size", value: "lg"}],=0A=
nodes: []=0A=
}, =0A=
{name: "invariantRules", =0A=
map: [=0A=
{key: "001", value: "{ id: \'NoAdBeforeSensitiveContentRule\', =
nodeTypes: [\'PreRoll\', \'SponsoredAd\', \'HouseAd\'] }"}, =0A=
{key: "002", value: "{ id: \'NoAdAfterSensitiveContentRule\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "003", value: "{ id: \'NextContentLongEnoughRule\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "004", value: "{ id: \'ContentWasLongEnoughRule\', nodeTypes: =
[\'PostRoll\'] }"},=0A=
{key: "005", value: "{ id: \'SponsoredAdOverridesPreRoll\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "006", value: "{ id: \'SponsoredAdOverridesPostRoll\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "007", value: "{ id: \'CannotHaveTwoSequentialAdsRule\', =
nodeTypes: [\'PreRoll\', \'PostRoll\', \'SponsoredAd\', \'HouseAd\'] =
}"}, =0A=
{key: "008", value: "{ id: \'ContentExistsForNextUpSlate\', nodeTypes: =
[\'NextUpSlate\'] }"},=0A=
{key: "009", value: "{ id: \'OnlyRunStartSlateOncePerPage\', nodeTypes: =
[\'StartSlate\'] }"}],=0A=
nodes: []=0A=
}, =0A=
{name: "NodeTriggers", =0A=
map: [],=0A=
nodes: [=0A=
{name: "Content", =0A=
map: [=0A=
{key: "start", value: "[{type: \'omnitureTrack\', data: \'start\'}, =
{type: \'webstatTrack\', data: \'start\'}]"}, =0A=
{key: "end", value: "[{type: \'omnitureTrack\', data: \'end\'}]"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "TriggerCommands", =0A=
map: [=0A=
{key: "omnitureTrack", value: "CNN.T1OmnitureTriggerCommand"}, =0A=
{key: "webstatTrack", value: "CNN.WebstatTriggerCommand"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "CNNMosaic", =0A=
map: [=0A=
{key: "omniture account", value: "cnn2global"}],=0A=
nodes: [=0A=
{name: "BasePlayer", =0A=
map: [=0A=
{key: "Ad metering image URL", value: =
"http://i.a.cnn.net/cnn/images/1.gif"}, =0A=
{key: "rule classes relative URL", value: =
"/.element/js/2.0/video/common/RulesImplementations.js"}, =0A=
{key: "rule classes namespace", value: "CNNRules"}],=0A=
nodes: [=0A=
{name: "ad patterns", =0A=
map: [=0A=
{key: "CNNMosaicSingleVideoDefault", value: =
"/.element/js/2.0/video/common/CNNMosaicSingleVideoDefault.json"}, =0A=
{key: "CNNMosaicSingleVideoNonDefault", value: =
"/.element/js/2.0/video/common/CNNMosaicSingleVideoNonDefault.json"}, =0A=
{key: "CNNMosaicMultiVideoDefault", value: =
"/.element/js/2.0/video/common/CNNMosaicMultiVideoDefault.json"}, =0A=
{key: "CNNMosaicMultiVideoNonDefault", value: =
"/.element/js/2.0/video/common/CNNMosaicMulitVideoNonDefault.json"}],=0A=
nodes: []=0A=
}, =0A=
{name: "PlayerSizes", =0A=
map: [=0A=
{key: "001", value: "576x324"}],=0A=
nodes: []=0A=
}, =0A=
{name: "Additional segvars", =0A=
map: [=0A=
{key: "primary", value: "page.allowcompete=3Dyes"}, =0A=
{key: "synch_unit", value: =
"params.styles=3Dfs&page.allowcompete=3Dyes"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "pattern parameters", =0A=
map: [=0A=
{key: "synch_unit_size", value: "336x280"}, =0A=
{key: "ad_size", value: "lg"}],=0A=
nodes: []=0A=
}, =0A=
{name: "invariantRules", =0A=
map: [=0A=
{key: "001", value: "{ id: \'NoAdBeforeSensitiveContentRule\', =
nodeTypes: [\'PreRoll\', \'SponsoredAd\', \'HouseAd\'] }"}, =0A=
{key: "002", value: "{ id: \'NoAdAfterSensitiveContentRule\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "003", value: "{ id: \'NextContentLongEnoughRule\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "004", value: "{ id: \'ContentWasLongEnoughRule\', nodeTypes: =
[\'PostRoll\'] }"},=0A=
{key: "005", value: "{ id: \'SponsoredAdOverridesPreRoll\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "006", value: "{ id: \'SponsoredAdOverridesPostRoll\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "007", value: "{ id: \'CannotHaveTwoSequentialAdsRule\', =
nodeTypes: [\'PreRoll\', \'PostRoll\', \'SponsoredAd\', \'HouseAd\'] =
}"}, =0A=
{key: "008", value: "{ id: \'ContentExistsForNextUpSlate\', nodeTypes: =
[\'NextUpSlate\'] }"},=0A=
{key: "009", value: "{ id: \'OnlyRunStartSlateOncePerPage\', nodeTypes: =
[\'StartSlate\'] }"}],=0A=
nodes: []=0A=
}, =0A=
{name: "NodeTriggers", =0A=
map: [],=0A=
nodes: [=0A=
{name: "Content", =0A=
map: [=0A=
{key: "start", value: "[{type: \'omnitureTrack\', data: \'start\'}, =
{type: \'webstatTrack\', data: \'start\'}]"}, =0A=
{key: "end", value: "[{type: \'omnitureTrack\', data: \'end\'}]"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "TriggerCommands", =0A=
map: [=0A=
{key: "omnitureTrack", value: "CNN.MosaicOmnitureTriggerCommand"}, =0A=
{key: "webstatTrack", value: "CNN.WebstatTriggerCommand"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "SAVP", =0A=
map: [=0A=
{key: "omniture account", value: "cnn2global"}],=0A=
nodes: [=0A=
{name: "BasePlayer", =0A=
map: [=0A=
{key: "Ad metering image URL", value: =
"http://i.a.cnn.net/cnn/images/1.gif"}, =0A=
{key: "rule classes relative URL", value: =
"/.element/js/2.0/video/common/RulesImplementations.js"}, =0A=
{key: "rule classes namespace", value: "CNNRules"}],=0A=
nodes: [=0A=
{name: "ad patterns", =0A=
map: [=0A=
{key: "SAVP", value: "/.element/js/2.0/video/common/SAVideo.json"}],=0A=
nodes: []=0A=
}, =0A=
{name: "PlayerSizes", =0A=
map: [=0A=
{key: "001", value: "384x216"}],=0A=
nodes: []=0A=
}, =0A=
{name: "Additional segvars", =0A=
map: [=0A=
{key: "primary", value: "page.allowcompete=3Dyes"}, =0A=
{key: "synch_unit", value: =
"params.styles=3Dfs&page.allowcompete=3Dyes"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "pattern parameters", =0A=
map: [=0A=
{key: "synch_unit_size", value: "336x280"}, =0A=
{key: "ad_size", value: "lg"}],=0A=
nodes: []=0A=
}, =0A=
{name: "invariantRules", =0A=
map: [=0A=
{key: "001", value: "{ id: \'NoAdBeforeSensitiveContentRule\', =
nodeTypes: [\'PreRoll\', \'SponsoredAd\', \'HouseAd\'] }"}, =0A=
{key: "002", value: "{ id: \'NoAdAfterSensitiveContentRule\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "003", value: "{ id: \'NextContentLongEnoughRule\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "004", value: "{ id: \'ContentWasLongEnoughRule\', nodeTypes: =
[\'PostRoll\'] }"},=0A=
{key: "005", value: "{ id: \'SponsoredAdOverridesPreRoll\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "006", value: "{ id: \'SponsoredAdOverridesPostRoll\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "007", value: "{ id: \'CannotHaveTwoSequentialAdsRule\', =
nodeTypes: [\'PreRoll\', \'PostRoll\', \'SponsoredAd\', \'HouseAd\'] =
}"}, =0A=
{key: "008", value: "{ id: \'ContentExistsForNextUpSlate\', nodeTypes: =
[\'NextUpSlate\'] }"},=0A=
{key: "009", value: "{ id: \'PlayAdOnlyIfOverrideExists\', nodeTypes: =
[\'PreRoll\', \'PostRoll\', \'SponsoredAd\'] }"},=0A=
{key: "010", value: "{ id: \'OnlyRunStartSlateOncePerPage\', nodeTypes: =
[\'StartSlate\'] }"}],=0A=
nodes: []=0A=
}, =0A=
{name: "NodeTriggers", =0A=
map: [],=0A=
nodes: [=0A=
{name: "Content", =0A=
map: [=0A=
{key: "start", value: "[{type: \'omnitureTrack\', data: \'start\'}, =
{type: \'webstatTrack\', data: \'start\'}]"}, =0A=
{key: "end", value: "[{type: \'omnitureTrack\', data: \'end\'}]"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "TriggerCommands", =0A=
map: [=0A=
{key: "omnitureTrack", value: "CNN.SpecialsOmnitureTriggerCommand"}, =0A=
{key: "webstatTrack", value: "CNN.WebstatTriggerCommand"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "Global", =0A=
map: [=0A=
{key: "first frame timeout", value: "30000"}],=0A=
nodes: [=0A=
{name: "InternalUserCheck", =0A=
map: [=0A=
{key: "do primary check", value: "false"}, =0A=
{key: "do secondary check", value: "false"}, =0A=
{key: "rel url", value: "/crossdomain.xml"}],=0A=
nodes: []=0A=
}, =0A=
{name: "Media Player", =0A=
map: [=0A=
{key: "Fullscreen Enabled", value: "true"},=0A=
{key: "Stretch To Fit", value: "true"}],=0A=
nodes: []=0A=
}, =0A=
{name: "loaders", =0A=
map: [],=0A=
nodes: [=0A=
{name: "videoCompositeAdMeta", =0A=
map: [],=0A=
nodes: [=0A=
{name: "cfg", =0A=
map: [=0A=
{key: "adServerDataPage", value: =
"http://ads.turner.com/xmp_cnn_adserver_util.html"}, =0A=
{key: "adServerDataFunction", value: "xmp_cnn_updateAdServerData"}, =0A=
{key: "adServerDataInterval", value: "30000"}, =0A=
{key: "adServerDataInitialTimeout", value: "30000"}],=0A=
nodes: []=0A=
}]=0A=
}]=0A=
}, =0A=
{name: "rootUrlMap", =0A=
map: [],=0A=
nodes: [=0A=
{name: "videoContentMeta", =0A=
map: [=0A=
{key: "rootUrl", value: "http://www.cnn.com/video/data/2.0"}],=0A=
nodes: []=0A=
}, =0A=
{name: "videoTracking", =0A=
map: [=0A=
{key: "rootUrl", value: "http://www.cnn.com"}],=0A=
nodes: []=0A=
}, =0A=
{name: "videoPromoMeta", =0A=
map: [=0A=
{key: "rootUrl", value: "http://www.cnn.com/video/data/2.0"}],=0A=
nodes: []=0A=
}, =0A=
{name: "adPolicy", =0A=
map: [=0A=
{key: "rootUrl", value: "http://i.cdn.turner.com/cnn"}],=0A=
nodes: []=0A=
}, =0A=
{name: "ruleClasses", =0A=
map: [=0A=
{key: "rootUrl", value: "http://i.cdn.turner.com/cnn"}],=0A=
nodes: []=0A=
}, =0A=
{name: "adMan", =0A=
map: [=0A=
{key: "rootUrl", value: "http://www.cnn.com"}],=0A=
nodes: []=0A=
}, =0A=
{name: "dhtmlObject", =0A=
map: [=0A=
{key: "rootUrl", value: "http://i.cdn.turner.com/cnn"}],=0A=
nodes: []=0A=
}, =0A=
{name: "controlStreamResource", =0A=
map: [=0A=
{key: "rootUrl", value: =
"http://jcmsdev8.turner.com:82/pipeline/StreamStatus"}],=0A=
nodes: []=0A=
}, =0A=
{name: "video", =0A=
map: [],=0A=
nodes: [=0A=
{name: "Flash", =0A=
map: [],=0A=
nodes: [=0A=
{name: "vod", =0A=
map: [=0A=
{key: "rootUrl", value: "ht.cdn.turner.com/cnn/big"}],=0A=
nodes: []=0A=
}, =0A=
{name: "ad", =0A=
map: [=0A=
{key: "rootUrl", value: "ht.cdn.turner.com/cnn/big"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "WindowsMedia", =0A=
map: [],=0A=
nodes: [=0A=
{name: "vod", =0A=
map: [=0A=
{key: "rootUrl", value: "www.cnn.com/video"}],=0A=
nodes: []=0A=
}, =0A=
{name: "ad", =0A=
map: [=0A=
{key: "rootUrl", value: "audint.cnn.com/pr"}],=0A=
nodes: []=0A=
}, =0A=
{name: "live", =0A=
map: [=0A=
{key: "rootUrl", value: "audint.cnn.com/pr"}],=0A=
nodes: []=0A=
}, =0A=
{name: "control", =0A=
map: [=0A=
{key: "rootUrl", value: "audint.cnn.com/pr"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "QuickTime", =0A=
map: [],=0A=
nodes: [=0A=
{name: "vod", =0A=
map: [=0A=
{key: "rootUrl", value: "i.gametap.com/static/ads/QuickTime"}],=0A=
nodes: []=0A=
}, =0A=
{name: "ad", =0A=
map: [=0A=
{key: "rootUrl", value: "i.gametap.com/static/ads/QuickTime"}],=0A=
nodes: []=0A=
}]=0A=
}]=0A=
}, =0A=
{name: "image", =0A=
map: [=0A=
{key: "rootUrl", value: "http://i.cnn.net"}],=0A=
nodes: []=0A=
}, =0A=
{name: "adVideo", =0A=
map: [=0A=
{key: "rootUrl", value: "http://ht.cdn.turner.com/cnn/big"}],=0A=
nodes: []=0A=
}, =0A=
{name: "swf", =0A=
map: [=0A=
{key: "rootUrl", value: =
"http://i.cdn.turner.com/cnn/.element/js/2.0/video/xmp"}],=0A=
nodes: []=0A=
}, =0A=
{name: "adServer", =0A=
map: [=0A=
{key: "rootUrl", value: "http://ads.cnn.com/html.ng/"}],=0A=
nodes: []=0A=
}, =0A=
{name: "adCompositor", =0A=
map: [=0A=
{key: "rootUrl", value: =
"http://tbs-47c14a0d034.turner.com:81/adcompositor/adcompositor?"}, =0A=
{key: "timeout", value: "120000"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "nodeTypeMap", =0A=
map: [],=0A=
nodes: [=0A=
{name: "PreRoll", =0A=
map: [=0A=
{key: "baseType", value: "Ad"}],=0A=
nodes: []=0A=
}, =0A=
{name: "PostRoll", =0A=
map: [=0A=
{key: "baseType", value: "Ad"}],=0A=
nodes: []=0A=
}, =0A=
{name: "SponsoredAd", =0A=
map: [=0A=
{key: "baseType", value: "Ad"}],=0A=
nodes: []=0A=
}, =0A=
{name: "HouseAd", =0A=
map: [=0A=
{key: "baseType", value: "Ad"}],=0A=
nodes: []=0A=
}, =0A=
{name: "AdInsertNotForSale", =0A=
map: [=0A=
{key: "baseType", value: "Ad"}],=0A=
nodes: []=0A=
}, =0A=
{name: "Promo", =0A=
map: [=0A=
{key: "baseType", value: "Promo"}],=0A=
nodes: []=0A=
}, =0A=
{name: "Content", =0A=
map: [=0A=
{key: "baseType", value: "Content"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "ControlStream", =0A=
map: [=0A=
{key: "Environment Label", value: "DEV"}, =0A=
{key: "Url", value: "/video/live/dev/stream.pipeline.control"}, =0A=
{key: "Reconnect Retries", value: "0"}, =0A=
{key: "Reconnect Retry Interval", value: "60000"}, =0A=
{key: "Start Delay", value: "5000"}],=0A=
nodes: [=0A=
{name: "RefreshInterval", =0A=
map: [=0A=
{key: "Windows", value: "300000"}, =0A=
{key: "Mac", value: "60000"}],=0A=
nodes: []=0A=
}, =0A=
{name: "001", =0A=
map: [=0A=
{key: "name", value: "stream1"}, =0A=
{key: "label", value: "{{environment_label}}_p1"}, =0A=
{key: "webUrl", value: "/stream_1.json"}],=0A=
nodes: []=0A=
}, =0A=
{name: "002", =0A=
map: [=0A=
{key: "name", value: "stream2"}, =0A=
{key: "label", value: "{{environment_label}}_p2"}, =0A=
{key: "webUrl", value: "/stream_2.json"}],=0A=
nodes: []=0A=
}, =0A=
{name: "003", =0A=
map: [=0A=
{key: "name", value: "stream3"}, =0A=
{key: "label", value: "{{environment_label}}_p3"}, =0A=
{key: "webUrl", value: "/stream_3.json"}],=0A=
nodes: []=0A=
}, =0A=
{name: "004", =0A=
map: [=0A=
{key: "name", value: "stream4"}, =0A=
{key: "label", value: "{{environment_label}}_p4"}, =0A=
{key: "webUrl", value: "/stream_4.json"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "ImageRetriever", =0A=
map: [=0A=
{key: "Start Delay", value: "5000"}, =0A=
{key: "Refresh Interval", value: "60000"}],=0A=
nodes: [=0A=
{name: "001", =0A=
map: [=0A=
{key: "name", value: "stream1"}, =0A=
{key: "url", value: "/stream1.jpg"}],=0A=
nodes: []=0A=
}, =0A=
{name: "002", =0A=
map: [=0A=
{key: "name", value: "stream2"}, =0A=
{key: "url", value: "/stream2.jpg"}],=0A=
nodes: []=0A=
}, =0A=
{name: "003", =0A=
map: [=0A=
{key: "name", value: "stream3"}, =0A=
{key: "url", value: "/stream3.jpg"}],=0A=
nodes: []=0A=
}, =0A=
{name: "004", =0A=
map: [=0A=
{key: "name", value: "stream4"}, =0A=
{key: "url", value: "/stream4.jpg"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "PlayingPolicy", =0A=
map: [=0A=
{key: "Strategy", value: "Lazy"}, =0A=
{key: "Failover", value: "true"}],=0A=
nodes: [=0A=
{name: "Bootstrap Media", =0A=
map: [=0A=
{key: "001", value: "Flash"}],=0A=
nodes: []=0A=
}, =0A=
{name: "PlugIns", =0A=
map: [],=0A=
nodes: [=0A=
{name: "TurnerMedia", =0A=
map: [=0A=
{key: "download-url", value: =
"http://i.cdn.turner.com/cnn/services/video/wmvfirefoxpluginsetup_3.1.exe=
"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "MediaTypes", =0A=
map: [],=0A=
nodes: [=0A=
{name: "Flash", =0A=
map: [],=0A=
nodes: [=0A=
{name: "Streaming Modes", =0A=
map: [=0A=
{key: "vod", value: "http://{host}{path}_{size}_dl.flv"}, =0A=
{key: "ad", value: "{path}"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "WindowsMedia", =0A=
map: [],=0A=
nodes: [=0A=
{name: "Streaming Modes", =0A=
map: [=0A=
{key: "vod", value: "http://{host}{path}/video.ws_noads.asx"}, =0A=
{key: "ad", value: "http://{host}{path}.asx"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "QuickTime", =0A=
map: [],=0A=
nodes: [=0A=
{name: "Streaming Modes", =0A=
map: [=0A=
{key: "vod", value: "http://{host}{path}.mov"}, =0A=
{key: "ad", value: "http://{host}{path}.mov"}],=0A=
nodes: []=0A=
}]=0A=
}]=0A=
}]=0A=
}, =0A=
{name: "Instrumentation", =0A=
map: [=0A=
{key: "enabled", value: "true"}, =0A=
{key: "postUrl", value: "http://xmplogs.turner.com/entries/xmp_logs"}],=0A=
nodes: []=0A=
}]=0A=
}]=0A=
}]=0A=
};=0A=
=0A=
var cnnIntlXmpPrimaryJsonObj =3D {type: "system", =0A=
map: [],=0A=
nodes: [=0A=
{name: "PlayerContexts", =0A=
map: [],=0A=
nodes: [=0A=
{name: "BVP", =0A=
map: [=0A=
{key: "omniture account", value: "cnnintl"}],=0A=
nodes: [=0A=
{name: "BasePlayer", =0A=
map: [=0A=
{key: "Ad metering image URL", value: =
"http://i.a.cnn.net/cnn/images/1.gif"}, =0A=
{key: "rule classes relative URL", value: =
"/.element/js/2.0/video/common/RulesImplementations.js"}, =0A=
{key: "rule classes namespace", value: "CNNRules"}],=0A=
nodes: [=0A=
{name: "ad patterns", =0A=
map: [=0A=
{key: "BVP", value: "/.element/js/2.0/video/common/BVPVideo.json"}],=0A=
nodes: []=0A=
}, =0A=
{name: "PlayerSizes", =0A=
map: [=0A=
{key: "001", value: "576x324"}],=0A=
nodes: []=0A=
}, =0A=
{name: "Additional segvars", =0A=
map: [=0A=
{key: "primary", value: "page.allowcompete=3Dyes"}, =0A=
{key: "synch_unit", value: =
"params.styles=3Dfs&page.allowcompete=3Dyes"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "pattern parameters", =0A=
map: [=0A=
{key: "synch_unit_size", value: "336x280"}, =0A=
{key: "ad_size", value: "lg"}],=0A=
nodes: []=0A=
}, =0A=
{name: "invariantRules", =0A=
map: [=0A=
{key: "001", value: "{ id: \'NoAdBeforeSensitiveContentRule\', =
nodeTypes: [\'PreRoll\', \'SponsoredAd\', \'HouseAd\'] }"}, =0A=
{key: "002", value: "{ id: \'NoAdAfterSensitiveContentRule\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "003", value: "{ id: \'NextContentLongEnoughRule\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "004", value: "{ id: \'ContentWasLongEnoughRule\', nodeTypes: =
[\'PostRoll\'] }"},=0A=
{key: "005", value: "{ id: \'SponsoredAdOverridesPreRoll\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "006", value: "{ id: \'SponsoredAdOverridesPostRoll\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "007", value: "{ id: \'CannotHaveTwoSequentialAdsRule\', =
nodeTypes: [\'PreRoll\', \'PostRoll\', \'SponsoredAd\', \'HouseAd\'] =
}"}, =0A=
{key: "008", value: "{ id: \'ContentExistsForNextUpSlate\', nodeTypes: =
[\'NextUpSlate\'] }"},=0A=
{key: "009", value: "{ id: \'OnlyRunStartSlateOncePerPage\', nodeTypes: =
[\'StartSlate\'] }"}],=0A=
nodes: []=0A=
}, =0A=
{name: "NodeTriggers", =0A=
map: [],=0A=
nodes: [=0A=
{name: "Content", =0A=
map: [=0A=
{key: "start", value: "[{type: \'omnitureTrack\', data: \'start\'}, =
{type: \'webstatTrack\', data: \'start\'}]"}, =0A=
{key: "end", value: "[{type: \'omnitureTrack\', data: \'end\'}]"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "TriggerCommands", =0A=
map: [=0A=
{key: "omnitureTrack", value: "CNN.BVPOmnitureTriggerCommand"}, =0A=
{key: "webstatTrack", value: "CNN.WebstatTriggerCommand"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "CNNHotTopic", =0A=
map: [=0A=
{key: "omniture account", value: "cnnintl"}],=0A=
nodes: [=0A=
{name: "BasePlayer", =0A=
map: [=0A=
{key: "Ad metering image URL", value: =
"http://i.a.cnn.net/cnn/images/1.gif"}, =0A=
{key: "rule classes relative URL", value: =
"/.element/js/2.0/video/common/RulesImplementations.js"}, =0A=
{key: "rule classes namespace", value: "CNNRules"}],=0A=
nodes: [=0A=
{name: "ad patterns", =0A=
map: [=0A=
{key: "CNNHotTopic", value: =
"/.element/js/2.0/video/common/CNNHotTopic.json"}],=0A=
nodes: []=0A=
}, =0A=
{name: "PlayerSizes", =0A=
map: [=0A=
{key: "001", value: "384x216"}],=0A=
nodes: []=0A=
}, =0A=
{name: "Additional segvars", =0A=
map: [=0A=
{key: "primary", value: "page.allowcompete=3Dyes"}, =0A=
{key: "synch_unit", value: =
"params.styles=3Dfs&page.allowcompete=3Dyes"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "pattern parameters", =0A=
map: [=0A=
{key: "synch_unit_size", value: "336x280"}, =0A=
{key: "ad_size", value: "lg"}],=0A=
nodes: []=0A=
}, =0A=
{name: "invariantRules", =0A=
map: [=0A=
{key: "001", value: "{ id: \'NoAdBeforeSensitiveContentRule\', =
nodeTypes: [\'PreRoll\', \'SponsoredAd\', \'HouseAd\'] }"}, =0A=
{key: "002", value: "{ id: \'NoAdAfterSensitiveContentRule\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "003", value: "{ id: \'NextContentLongEnoughRule\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "004", value: "{ id: \'ContentWasLongEnoughRule\', nodeTypes: =
[\'PostRoll\'] }"},=0A=
{key: "005", value: "{ id: \'SponsoredAdOverridesPreRoll\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "006", value: "{ id: \'SponsoredAdOverridesPostRoll\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "007", value: "{ id: \'CannotHaveTwoSequentialAdsRule\', =
nodeTypes: [\'PreRoll\', \'PostRoll\', \'SponsoredAd\', \'HouseAd\'] =
}"}, =0A=
{key: "008", value: "{ id: \'ContentExistsForNextUpSlate\', nodeTypes: =
[\'NextUpSlate\'] }"},=0A=
{key: "009", value: "{ id: \'DoNotPlayMe\', nodeTypes: [\'SponsoredAd\'] =
}"},=0A=
{key: "010", value: "{ id: \'OnlyRunStartSlateOncePerPage\', nodeTypes: =
[\'StartSlate\'] }"}],=0A=
nodes: []=0A=
}, =0A=
{name: "NodeTriggers", =0A=
map: [],=0A=
nodes: [=0A=
{name: "Content", =0A=
map: [=0A=
{key: "start", value: "[{type: \'omnitureTrack\', data: \'start\'}, =
{type: \'webstatTrack\', data: \'start\'}]"}, =0A=
{key: "end", value: "[{type: \'omnitureTrack\', data: \'end\'}]"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "TriggerCommands", =0A=
map: [=0A=
{key: "omnitureTrack", value: "CNN.HotTopicOmnitureTriggerCommand"}, =0A=
{key: "webstatTrack", value: "CNN.WebstatTriggerCommand"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "CNNHomePage", =0A=
map: [=0A=
{key: "omniture account", value: "cnnintl"}],=0A=
nodes: [=0A=
{name: "BasePlayer", =0A=
map: [=0A=
{key: "Ad metering image URL", value: =
"http://i.a.cnn.net/cnn/images/1.gif"}, =0A=
{key: "rule classes relative URL", value: =
"/.element/js/2.0/video/common/RulesImplementations.js"}, =0A=
{key: "rule classes namespace", value: "CNNRules"}],=0A=
nodes: [=0A=
{name: "ad patterns", =0A=
map: [=0A=
{key: "CNNHomePage", value: =
"/.element/js/2.0/video/common/CNNHomePage.json"}],=0A=
nodes: []=0A=
}, =0A=
{name: "PlayerSizes", =0A=
map: [=0A=
{key: "001", value: "256x144"}],=0A=
nodes: []=0A=
}, =0A=
{name: "Additional segvars", =0A=
map: [=0A=
{key: "primary", value: "page.allowcompete=3Dyes"}, =0A=
{key: "synch_unit", value: =
"params.styles=3Dfs&page.allowcompete=3Dyes"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "pattern parameters", =0A=
map: [=0A=
{key: "synch_unit_size", value: "336x280"}, =0A=
{key: "ad_size", value: "lg"}],=0A=
nodes: []=0A=
}, =0A=
{name: "invariantRules", =0A=
map: [=0A=
{key: "001", value: "{ id: \'NoAdBeforeSensitiveContentRule\', =
nodeTypes: [\'PreRoll\', \'SponsoredAd\', \'HouseAd\'] }"}, =0A=
{key: "002", value: "{ id: \'NoAdAfterSensitiveContentRule\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "003", value: "{ id: \'NextContentLongEnoughRule\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "004", value: "{ id: \'ContentWasLongEnoughRule\', nodeTypes: =
[\'PostRoll\'] }"},=0A=
{key: "005", value: "{ id: \'SponsoredAdOverridesPreRoll\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "006", value: "{ id: \'SponsoredAdOverridesPostRoll\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "007", value: "{ id: \'CannotHaveTwoSequentialAdsRule\', =
nodeTypes: [\'PreRoll\', \'PostRoll\', \'SponsoredAd\', \'HouseAd\'] =
}"}, =0A=
{key: "008", value: "{ id: \'ContentExistsForNextUpSlate\', nodeTypes: =
[\'NextUpSlate\'] }"},=0A=
{key: "009", value: "{ id: \'OnlyRunStartSlateOncePerPage\', nodeTypes: =
[\'StartSlate\'] }"}],=0A=
nodes: []=0A=
}, =0A=
{name: "NodeTriggers", =0A=
map: [],=0A=
nodes: [=0A=
{name: "Content", =0A=
map: [=0A=
{key: "start", value: "[{type: \'omnitureTrack\', data: \'start\'}, =
{type: \'webstatTrack\', data: \'start\'}]"}, =0A=
{key: "end", value: "[{type: \'omnitureTrack\', data: \'end\'}]"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "TriggerCommands", =0A=
map: [=0A=
{key: "omnitureTrack", value: "CNN.T1OmnitureTriggerCommand"}, =0A=
{key: "webstatTrack", value: "CNN.WebstatTriggerCommand"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "CNNMosaic", =0A=
map: [=0A=
{key: "omniture account", value: "cnnintl"}],=0A=
nodes: [=0A=
{name: "BasePlayer", =0A=
map: [=0A=
{key: "Ad metering image URL", value: =
"http://i.a.cnn.net/cnn/images/1.gif"}, =0A=
{key: "rule classes relative URL", value: =
"/.element/js/2.0/video/common/RulesImplementations.js"}, =0A=
{key: "rule classes namespace", value: "CNNRules"}],=0A=
nodes: [=0A=
{name: "ad patterns", =0A=
map: [=0A=
{key: "CNNMosaicSingleVideoDefault", value: =
"/.element/js/2.0/video/common/CNNMosaicSingleVideoDefault.json"}, =0A=
{key: "CNNMosaicSingleVideoNonDefault", value: =
"/.element/js/2.0/video/common/CNNMosaicSingleVideoNonDefault.json"}, =0A=
{key: "CNNMosaicMultiVideoDefault", value: =
"/.element/js/2.0/video/common/CNNMosaicMultiVideoDefault.json"}, =0A=
{key: "CNNMosaicMultiVideoNonDefault", value: =
"/.element/js/2.0/video/common/CNNMosaicMulitVideoNonDefault.json"}],=0A=
nodes: []=0A=
}, =0A=
{name: "PlayerSizes", =0A=
map: [=0A=
{key: "001", value: "576x324"}],=0A=
nodes: []=0A=
}, =0A=
{name: "Additional segvars", =0A=
map: [=0A=
{key: "primary", value: "page.allowcompete=3Dyes"}, =0A=
{key: "synch_unit", value: =
"params.styles=3Dfs&page.allowcompete=3Dyes"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "pattern parameters", =0A=
map: [=0A=
{key: "synch_unit_size", value: "336x280"}, =0A=
{key: "ad_size", value: "lg"}],=0A=
nodes: []=0A=
}, =0A=
{name: "invariantRules", =0A=
map: [=0A=
{key: "001", value: "{ id: \'NoAdBeforeSensitiveContentRule\', =
nodeTypes: [\'PreRoll\', \'SponsoredAd\', \'HouseAd\'] }"}, =0A=
{key: "002", value: "{ id: \'NoAdAfterSensitiveContentRule\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "003", value: "{ id: \'NextContentLongEnoughRule\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "004", value: "{ id: \'ContentWasLongEnoughRule\', nodeTypes: =
[\'PostRoll\'] }"},=0A=
{key: "005", value: "{ id: \'SponsoredAdOverridesPreRoll\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "006", value: "{ id: \'SponsoredAdOverridesPostRoll\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "007", value: "{ id: \'CannotHaveTwoSequentialAdsRule\', =
nodeTypes: [\'PreRoll\', \'PostRoll\', \'SponsoredAd\', \'HouseAd\'] =
}"}, =0A=
{key: "008", value: "{ id: \'ContentExistsForNextUpSlate\', nodeTypes: =
[\'NextUpSlate\'] }"},=0A=
{key: "009", value: "{ id: \'OnlyRunStartSlateOncePerPage\', nodeTypes: =
[\'StartSlate\'] }"}],=0A=
nodes: []=0A=
}, =0A=
{name: "NodeTriggers", =0A=
map: [],=0A=
nodes: [=0A=
{name: "Content", =0A=
map: [=0A=
{key: "start", value: "[{type: \'omnitureTrack\', data: \'start\'}, =
{type: \'webstatTrack\', data: \'start\'}]"}, =0A=
{key: "end", value: "[{type: \'omnitureTrack\', data: \'end\'}]"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "TriggerCommands", =0A=
map: [=0A=
{key: "omnitureTrack", value: "CNN.MosaicOmnitureTriggerCommand"}, =0A=
{key: "webstatTrack", value: "CNN.WebstatTriggerCommand"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "SAVP", =0A=
map: [=0A=
{key: "omniture account", value: "cnnintl"}],=0A=
nodes: [=0A=
{name: "BasePlayer", =0A=
map: [=0A=
{key: "Ad metering image URL", value: =
"http://i.a.cnn.net/cnn/images/1.gif"}, =0A=
{key: "rule classes relative URL", value: =
"/.element/js/2.0/video/common/RulesImplementations.js"}, =0A=
{key: "rule classes namespace", value: "CNNRules"}],=0A=
nodes: [=0A=
{name: "ad patterns", =0A=
map: [=0A=
{key: "SAVP", value: "/.element/js/2.0/video/common/SAVideo.json"}],=0A=
nodes: []=0A=
}, =0A=
{name: "PlayerSizes", =0A=
map: [=0A=
{key: "001", value: "384x216"}],=0A=
nodes: []=0A=
}, =0A=
{name: "Additional segvars", =0A=
map: [=0A=
{key: "primary", value: "page.allowcompete=3Dyes"}, =0A=
{key: "synch_unit", value: =
"params.styles=3Dfs&page.allowcompete=3Dyes"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "pattern parameters", =0A=
map: [=0A=
{key: "synch_unit_size", value: "336x280"}, =0A=
{key: "ad_size", value: "lg"}],=0A=
nodes: []=0A=
}, =0A=
{name: "invariantRules", =0A=
map: [=0A=
{key: "001", value: "{ id: \'NoAdBeforeSensitiveContentRule\', =
nodeTypes: [\'PreRoll\', \'SponsoredAd\', \'HouseAd\'] }"}, =0A=
{key: "002", value: "{ id: \'NoAdAfterSensitiveContentRule\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "003", value: "{ id: \'NextContentLongEnoughRule\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "004", value: "{ id: \'ContentWasLongEnoughRule\', nodeTypes: =
[\'PostRoll\'] }"},=0A=
{key: "005", value: "{ id: \'SponsoredAdOverridesPreRoll\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "006", value: "{ id: \'SponsoredAdOverridesPostRoll\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "007", value: "{ id: \'CannotHaveTwoSequentialAdsRule\', =
nodeTypes: [\'PreRoll\', \'PostRoll\', \'SponsoredAd\', \'HouseAd\'] =
}"}, =0A=
{key: "008", value: "{ id: \'ContentExistsForNextUpSlate\', nodeTypes: =
[\'NextUpSlate\'] }"},=0A=
{key: "009", value: "{ id: \'PlayAdOnlyIfOverrideExists\', nodeTypes: =
[\'PreRoll\', \'PostRoll\', \'SponsoredAd\'] }"},=0A=
{key: "010", value: "{ id: \'OnlyRunStartSlateOncePerPage\', nodeTypes: =
[\'StartSlate\'] }"}],=0A=
nodes: []=0A=
}, =0A=
{name: "NodeTriggers", =0A=
map: [],=0A=
nodes: [=0A=
{name: "Content", =0A=
map: [=0A=
{key: "start", value: "[{type: \'omnitureTrack\', data: \'start\'}, =
{type: \'webstatTrack\', data: \'start\'}]"}, =0A=
{key: "end", value: "[{type: \'omnitureTrack\', data: \'end\'}]"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "TriggerCommands", =0A=
map: [=0A=
{key: "omnitureTrack", value: "CNN.SpecialsOmnitureTriggerCommand"}, =0A=
{key: "webstatTrack", value: "CNN.WebstatTriggerCommand"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "Global", =0A=
map: [=0A=
{key: "first frame timeout", value: "30000"}],=0A=
nodes: [=0A=
{name: "rootUrlMap", =0A=
map: [],=0A=
nodes: [=0A=
{name: "videoContentMeta", =0A=
map: [=0A=
{key: "rootUrl", value: "http://edition.cnn.com/video/data/2.0"}],=0A=
nodes: []=0A=
}, =0A=
{name: "videoTracking", =0A=
map: [=0A=
{key: "rootUrl", value: "http://edition.cnn.com"}],=0A=
nodes: []=0A=
}, =0A=
{name: "videoPromoMeta", =0A=
map: [=0A=
{key: "rootUrl", value: "http://edition.cnn.com/video/data/2.0"}],=0A=
nodes: []=0A=
}, =0A=
{name: "adPolicy", =0A=
map: [=0A=
{key: "rootUrl", value: "http://i.cdn.turner.com/cnn"}],=0A=
nodes: []=0A=
}, =0A=
{name: "ruleClasses", =0A=
map: [=0A=
{key: "rootUrl", value: "http://i.cdn.turner.com/cnn"}],=0A=
nodes: []=0A=
}, =0A=
{name: "adMan", =0A=
map: [=0A=
{key: "rootUrl", value: "http://edition.cnn.com"}],=0A=
nodes: []=0A=
}, =0A=
{name: "dhtmlObject", =0A=
map: [=0A=
{key: "rootUrl", value: "http://i.cdn.turner.com/cnn"}],=0A=
nodes: []=0A=
}, =0A=
{name: "controlStreamResource", =0A=
map: [=0A=
{key: "rootUrl", value: =
"http://jcmsdev8.turner.com:82/pipeline/StreamStatus"}],=0A=
nodes: []=0A=
}, =0A=
{name: "video", =0A=
map: [],=0A=
nodes: [=0A=
{name: "Flash", =0A=
map: [],=0A=
nodes: [=0A=
{name: "vod", =0A=
map: [=0A=
{key: "rootUrl", value: "ht.cdn.turner.com/cnn/big"}],=0A=
nodes: []=0A=
}, =0A=
{name: "ad", =0A=
map: [=0A=
{key: "rootUrl", value: "ht.cdn.turner.com/cnn/big"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "WindowsMedia", =0A=
map: [],=0A=
nodes: [=0A=
{name: "vod", =0A=
map: [=0A=
{key: "rootUrl", value: "edition.cnn.com/video"}],=0A=
nodes: []=0A=
}, =0A=
{name: "ad", =0A=
map: [=0A=
{key: "rootUrl", value: "audint.cnn.com/pr"}],=0A=
nodes: []=0A=
}, =0A=
{name: "live", =0A=
map: [=0A=
{key: "rootUrl", value: "audint.cnn.com/pr"}],=0A=
nodes: []=0A=
}, =0A=
{name: "control", =0A=
map: [=0A=
{key: "rootUrl", value: "audint.cnn.com/pr"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "QuickTime", =0A=
map: [],=0A=
nodes: [=0A=
{name: "vod", =0A=
map: [=0A=
{key: "rootUrl", value: "i.gametap.com/static/ads/QuickTime"}],=0A=
nodes: []=0A=
}, =0A=
{name: "ad", =0A=
map: [=0A=
{key: "rootUrl", value: "i.gametap.com/static/ads/QuickTime"}],=0A=
nodes: []=0A=
}]=0A=
}]=0A=
}, =0A=
{name: "image", =0A=
map: [=0A=
{key: "rootUrl", value: "http://i.cnn.net"}],=0A=
nodes: []=0A=
}, =0A=
{name: "adVideo", =0A=
map: [=0A=
{key: "rootUrl", value: "http://ht.cdn.turner.com/cnn/big"}],=0A=
nodes: []=0A=
}, =0A=
{name: "swf", =0A=
map: [=0A=
{key: "rootUrl", value: =
"http://edition.cnn.com/.element/js/2.0/video/xmp"}],=0A=
nodes: []=0A=
}, =0A=
{name: "adServer", =0A=
map: [=0A=
{key: "rootUrl", value: "http://ads.cnn.com/html.ng/"}],=0A=
nodes: []=0A=
}, =0A=
{name: "adCompositor", =0A=
map: [=0A=
{key: "rootUrl", value: =
"http://tbs-47c14a0d034.turner.com:81/adcompositor/adcompositor?"}, =0A=
{key: "timeout", value: "120000"}],=0A=
nodes: []=0A=
}]=0A=
}]=0A=
}]=0A=
}]=0A=
};=0A=
=0A=
var cnnUSXmpPrimaryJsonObj =3D {type: "system", =0A=
map: [],=0A=
nodes: [=0A=
{name: "PlayerContexts", =0A=
map: [],=0A=
nodes: [=0A=
{name: "BVP", =0A=
map: [=0A=
{key: "omniture account", value: "cnn2global"}],=0A=
nodes: [=0A=
{name: "BasePlayer", =0A=
map: [=0A=
{key: "Ad metering image URL", value: =
"http://i.a.cnn.net/cnn/images/1.gif"}, =0A=
{key: "rule classes relative URL", value: =
"/.element/js/2.0/video/common/RulesImplementations.js"}, =0A=
{key: "rule classes namespace", value: "CNNRules"}],=0A=
nodes: [=0A=
{name: "ad patterns", =0A=
map: [=0A=
{key: "BVP", value: "/.element/js/2.0/video/common/BVPVideo.json"}],=0A=
nodes: []=0A=
}, =0A=
{name: "PlayerSizes", =0A=
map: [=0A=
{key: "001", value: "576x324"}],=0A=
nodes: []=0A=
}, =0A=
{name: "Additional segvars", =0A=
map: [=0A=
{key: "primary", value: "page.allowcompete=3Dyes"}, =0A=
{key: "synch_unit", value: =
"params.styles=3Dfs&page.allowcompete=3Dyes"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "pattern parameters", =0A=
map: [=0A=
{key: "synch_unit_size", value: "336x280"}, =0A=
{key: "ad_size", value: "lg"}],=0A=
nodes: []=0A=
}, =0A=
{name: "invariantRules", =0A=
map: [=0A=
{key: "001", value: "{ id: \'NoAdBeforeSensitiveContentRule\', =
nodeTypes: [\'PreRoll\', \'SponsoredAd\', \'HouseAd\'] }"}, =0A=
{key: "002", value: "{ id: \'NoAdAfterSensitiveContentRule\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "003", value: "{ id: \'NextContentLongEnoughRule\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "004", value: "{ id: \'ContentWasLongEnoughRule\', nodeTypes: =
[\'PostRoll\'] }"},=0A=
{key: "005", value: "{ id: \'SponsoredAdOverridesPreRoll\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "006", value: "{ id: \'SponsoredAdOverridesPostRoll\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "007", value: "{ id: \'CannotHaveTwoSequentialAdsRule\', =
nodeTypes: [\'PreRoll\', \'PostRoll\', \'SponsoredAd\', \'HouseAd\'] =
}"}, =0A=
{key: "008", value: "{ id: \'ContentExistsForNextUpSlate\', nodeTypes: =
[\'NextUpSlate\'] }"},=0A=
{key: "009", value: "{ id: \'OnlyRunStartSlateOncePerPage\', nodeTypes: =
[\'StartSlate\'] }"}],=0A=
nodes: []=0A=
}, =0A=
{name: "NodeTriggers", =0A=
map: [],=0A=
nodes: [=0A=
{name: "Content", =0A=
map: [=0A=
{key: "start", value: "[{type: \'omnitureTrack\', data: \'start\'}, =
{type: \'webstatTrack\', data: \'start\'}]"}, =0A=
{key: "end", value: "[{type: \'omnitureTrack\', data: \'end\'}]"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "TriggerCommands", =0A=
map: [=0A=
{key: "omnitureTrack", value: "CNN.BVPOmnitureTriggerCommand"}, =0A=
{key: "webstatTrack", value: "CNN.WebstatTriggerCommand"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "CNNHotTopic", =0A=
map: [=0A=
{key: "omniture account", value: "cnn2global"}],=0A=
nodes: [=0A=
{name: "BasePlayer", =0A=
map: [=0A=
{key: "Ad metering image URL", value: =
"http://i.a.cnn.net/cnn/images/1.gif"}, =0A=
{key: "rule classes relative URL", value: =
"/.element/js/2.0/video/common/RulesImplementations.js"}, =0A=
{key: "rule classes namespace", value: "CNNRules"}],=0A=
nodes: [=0A=
{name: "ad patterns", =0A=
map: [=0A=
{key: "CNNHotTopic", value: =
"/.element/js/2.0/video/common/CNNHotTopic.json"}],=0A=
nodes: []=0A=
}, =0A=
{name: "PlayerSizes", =0A=
map: [=0A=
{key: "001", value: "384x216"}],=0A=
nodes: []=0A=
}, =0A=
{name: "Additional segvars", =0A=
map: [=0A=
{key: "primary", value: "page.allowcompete=3Dyes"}, =0A=
{key: "synch_unit", value: =
"params.styles=3Dfs&page.allowcompete=3Dyes"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "pattern parameters", =0A=
map: [=0A=
{key: "synch_unit_size", value: "336x280"}, =0A=
{key: "ad_size", value: "lg"}],=0A=
nodes: []=0A=
}, =0A=
{name: "invariantRules", =0A=
map: [=0A=
{key: "001", value: "{ id: \'NoAdBeforeSensitiveContentRule\', =
nodeTypes: [\'PreRoll\', \'SponsoredAd\', \'HouseAd\'] }"}, =0A=
{key: "002", value: "{ id: \'NoAdAfterSensitiveContentRule\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "003", value: "{ id: \'NextContentLongEnoughRule\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "004", value: "{ id: \'ContentWasLongEnoughRule\', nodeTypes: =
[\'PostRoll\'] }"},=0A=
{key: "005", value: "{ id: \'SponsoredAdOverridesPreRoll\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "006", value: "{ id: \'SponsoredAdOverridesPostRoll\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "007", value: "{ id: \'CannotHaveTwoSequentialAdsRule\', =
nodeTypes: [\'PreRoll\', \'PostRoll\', \'SponsoredAd\', \'HouseAd\'] =
}"}, =0A=
{key: "008", value: "{ id: \'ContentExistsForNextUpSlate\', nodeTypes: =
[\'NextUpSlate\'] }"},=0A=
{key: "009", value: "{ id: \'DoNotPlayMe\', nodeTypes: [\'SponsoredAd\'] =
}"},=0A=
{key: "010", value: "{ id: \'OnlyRunStartSlateOncePerPage\', nodeTypes: =
[\'StartSlate\'] }"}],=0A=
nodes: []=0A=
}, =0A=
{name: "NodeTriggers", =0A=
map: [],=0A=
nodes: [=0A=
{name: "Content", =0A=
map: [=0A=
{key: "start", value: "[{type: \'omnitureTrack\', data: \'start\'}, =
{type: \'webstatTrack\', data: \'start\'}]"}, =0A=
{key: "end", value: "[{type: \'omnitureTrack\', data: \'end\'}]"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "TriggerCommands", =0A=
map: [=0A=
{key: "omnitureTrack", value: "CNN.HotTopicOmnitureTriggerCommand"}, =0A=
{key: "webstatTrack", value: "CNN.WebstatTriggerCommand"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "CNNHomePage", =0A=
map: [=0A=
{key: "omniture account", value: "cnn2global"}],=0A=
nodes: [=0A=
{name: "BasePlayer", =0A=
map: [=0A=
{key: "Ad metering image URL", value: =
"http://i.a.cnn.net/cnn/images/1.gif"}, =0A=
{key: "rule classes relative URL", value: =
"/.element/js/2.0/video/common/RulesImplementations.js"}, =0A=
{key: "rule classes namespace", value: "CNNRules"}],=0A=
nodes: [=0A=
{name: "ad patterns", =0A=
map: [=0A=
{key: "CNNHomePage", value: =
"/.element/js/2.0/video/common/CNNHomePage.json"}],=0A=
nodes: []=0A=
}, =0A=
{name: "PlayerSizes", =0A=
map: [=0A=
{key: "001", value: "256x144"}],=0A=
nodes: []=0A=
}, =0A=
{name: "Additional segvars", =0A=
map: [=0A=
{key: "primary", value: "page.allowcompete=3Dyes"}, =0A=
{key: "synch_unit", value: =
"params.styles=3Dfs&page.allowcompete=3Dyes"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "pattern parameters", =0A=
map: [=0A=
{key: "synch_unit_size", value: "336x280"}, =0A=
{key: "ad_size", value: "lg"}],=0A=
nodes: []=0A=
}, =0A=
{name: "invariantRules", =0A=
map: [=0A=
{key: "001", value: "{ id: \'NoAdBeforeSensitiveContentRule\', =
nodeTypes: [\'PreRoll\', \'SponsoredAd\', \'HouseAd\'] }"}, =0A=
{key: "002", value: "{ id: \'NoAdAfterSensitiveContentRule\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "003", value: "{ id: \'NextContentLongEnoughRule\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "004", value: "{ id: \'ContentWasLongEnoughRule\', nodeTypes: =
[\'PostRoll\'] }"},=0A=
{key: "005", value: "{ id: \'SponsoredAdOverridesPreRoll\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "006", value: "{ id: \'SponsoredAdOverridesPostRoll\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "007", value: "{ id: \'CannotHaveTwoSequentialAdsRule\', =
nodeTypes: [\'PreRoll\', \'PostRoll\', \'SponsoredAd\', \'HouseAd\'] =
}"}, =0A=
{key: "008", value: "{ id: \'ContentExistsForNextUpSlate\', nodeTypes: =
[\'NextUpSlate\'] }"},=0A=
{key: "009", value: "{ id: \'OnlyRunStartSlateOncePerPage\', nodeTypes: =
[\'StartSlate\'] }"}],=0A=
nodes: []=0A=
}, =0A=
{name: "NodeTriggers", =0A=
map: [],=0A=
nodes: [=0A=
{name: "Content", =0A=
map: [=0A=
{key: "start", value: "[{type: \'omnitureTrack\', data: \'start\'}, =
{type: \'webstatTrack\', data: \'start\'}]"}, =0A=
{key: "end", value: "[{type: \'omnitureTrack\', data: \'end\'}]"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "TriggerCommands", =0A=
map: [=0A=
{key: "omnitureTrack", value: "CNN.T1OmnitureTriggerCommand"}, =0A=
{key: "webstatTrack", value: "CNN.WebstatTriggerCommand"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "CNNMosaic", =0A=
map: [=0A=
{key: "omniture account", value: "cnn2global"}],=0A=
nodes: [=0A=
{name: "BasePlayer", =0A=
map: [=0A=
{key: "Ad metering image URL", value: =
"http://i.a.cnn.net/cnn/images/1.gif"}, =0A=
{key: "rule classes relative URL", value: =
"/.element/js/2.0/video/common/RulesImplementations.js"}, =0A=
{key: "rule classes namespace", value: "CNNRules"}],=0A=
nodes: [=0A=
{name: "ad patterns", =0A=
map: [=0A=
{key: "CNNMosaicSingleVideoDefault", value: =
"/.element/js/2.0/video/common/CNNMosaicSingleVideoDefault.json"}, =0A=
{key: "CNNMosaicSingleVideoNonDefault", value: =
"/.element/js/2.0/video/common/CNNMosaicSingleVideoNonDefault.json"}, =0A=
{key: "CNNMosaicMultiVideoDefault", value: =
"/.element/js/2.0/video/common/CNNMosaicMultiVideoDefault.json"}, =0A=
{key: "CNNMosaicMultiVideoNonDefault", value: =
"/.element/js/2.0/video/common/CNNMosaicMulitVideoNonDefault.json"}],=0A=
nodes: []=0A=
}, =0A=
{name: "PlayerSizes", =0A=
map: [=0A=
{key: "001", value: "576x324"}],=0A=
nodes: []=0A=
}, =0A=
{name: "Additional segvars", =0A=
map: [=0A=
{key: "primary", value: "page.allowcompete=3Dyes"}, =0A=
{key: "synch_unit", value: =
"params.styles=3Dfs&page.allowcompete=3Dyes"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "pattern parameters", =0A=
map: [=0A=
{key: "synch_unit_size", value: "336x280"}, =0A=
{key: "ad_size", value: "lg"}],=0A=
nodes: []=0A=
}, =0A=
{name: "invariantRules", =0A=
map: [=0A=
{key: "001", value: "{ id: \'NoAdBeforeSensitiveContentRule\', =
nodeTypes: [\'PreRoll\', \'SponsoredAd\', \'HouseAd\'] }"}, =0A=
{key: "002", value: "{ id: \'NoAdAfterSensitiveContentRule\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "003", value: "{ id: \'NextContentLongEnoughRule\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "004", value: "{ id: \'ContentWasLongEnoughRule\', nodeTypes: =
[\'PostRoll\'] }"},=0A=
{key: "005", value: "{ id: \'SponsoredAdOverridesPreRoll\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "006", value: "{ id: \'SponsoredAdOverridesPostRoll\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "007", value: "{ id: \'CannotHaveTwoSequentialAdsRule\', =
nodeTypes: [\'PreRoll\', \'PostRoll\', \'SponsoredAd\', \'HouseAd\'] =
}"}, =0A=
{key: "008", value: "{ id: \'ContentExistsForNextUpSlate\', nodeTypes: =
[\'NextUpSlate\'] }"},=0A=
{key: "009", value: "{ id: \'OnlyRunStartSlateOncePerPage\', nodeTypes: =
[\'StartSlate\'] }"}],=0A=
nodes: []=0A=
}, =0A=
{name: "NodeTriggers", =0A=
map: [],=0A=
nodes: [=0A=
{name: "Content", =0A=
map: [=0A=
{key: "start", value: "[{type: \'omnitureTrack\', data: \'start\'}, =
{type: \'webstatTrack\', data: \'start\'}]"}, =0A=
{key: "end", value: "[{type: \'omnitureTrack\', data: \'end\'}]"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "TriggerCommands", =0A=
map: [=0A=
{key: "omnitureTrack", value: "CNN.MosaicOmnitureTriggerCommand"}, =0A=
{key: "webstatTrack", value: "CNN.WebstatTriggerCommand"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "SAVP", =0A=
map: [=0A=
{key: "omniture account", value: "cnn2global"}],=0A=
nodes: [=0A=
{name: "BasePlayer", =0A=
map: [=0A=
{key: "Ad metering image URL", value: =
"http://i.a.cnn.net/cnn/images/1.gif"}, =0A=
{key: "rule classes relative URL", value: =
"/.element/js/2.0/video/common/RulesImplementations.js"}, =0A=
{key: "rule classes namespace", value: "CNNRules"}],=0A=
nodes: [=0A=
{name: "ad patterns", =0A=
map: [=0A=
{key: "SAVP", value: "/.element/js/2.0/video/common/SAVideo.json"}],=0A=
nodes: []=0A=
}, =0A=
{name: "PlayerSizes", =0A=
map: [=0A=
{key: "001", value: "384x216"}],=0A=
nodes: []=0A=
}, =0A=
{name: "Additional segvars", =0A=
map: [=0A=
{key: "primary", value: "page.allowcompete=3Dyes"}, =0A=
{key: "synch_unit", value: =
"params.styles=3Dfs&page.allowcompete=3Dyes"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "pattern parameters", =0A=
map: [=0A=
{key: "synch_unit_size", value: "336x280"}, =0A=
{key: "ad_size", value: "lg"}],=0A=
nodes: []=0A=
}, =0A=
{name: "invariantRules", =0A=
map: [=0A=
{key: "001", value: "{ id: \'NoAdBeforeSensitiveContentRule\', =
nodeTypes: [\'PreRoll\', \'SponsoredAd\', \'HouseAd\'] }"}, =0A=
{key: "002", value: "{ id: \'NoAdAfterSensitiveContentRule\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "003", value: "{ id: \'NextContentLongEnoughRule\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "004", value: "{ id: \'ContentWasLongEnoughRule\', nodeTypes: =
[\'PostRoll\'] }"},=0A=
{key: "005", value: "{ id: \'SponsoredAdOverridesPreRoll\', nodeTypes: =
[\'PreRoll\'] }"}, =0A=
{key: "006", value: "{ id: \'SponsoredAdOverridesPostRoll\', nodeTypes: =
[\'PostRoll\'] }"}, =0A=
{key: "007", value: "{ id: \'CannotHaveTwoSequentialAdsRule\', =
nodeTypes: [\'PreRoll\', \'PostRoll\', \'SponsoredAd\', \'HouseAd\'] =
}"}, =0A=
{key: "008", value: "{ id: \'ContentExistsForNextUpSlate\', nodeTypes: =
[\'NextUpSlate\'] }"},=0A=
{key: "009", value: "{ id: \'PlayAdOnlyIfOverrideExists\', nodeTypes: =
[\'PreRoll\', \'PostRoll\', \'SponsoredAd\'] }"},=0A=
{key: "010", value: "{ id: \'OnlyRunStartSlateOncePerPage\', nodeTypes: =
[\'StartSlate\'] }"}],=0A=
nodes: []=0A=
}, =0A=
{name: "NodeTriggers", =0A=
map: [],=0A=
nodes: [=0A=
{name: "Content", =0A=
map: [=0A=
{key: "start", value: "[{type: \'omnitureTrack\', data: \'start\'}, =
{type: \'webstatTrack\', data: \'start\'}]"}, =0A=
{key: "end", value: "[{type: \'omnitureTrack\', data: \'end\'}]"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "TriggerCommands", =0A=
map: [=0A=
{key: "omnitureTrack", value: "CNN.SpecialsOmnitureTriggerCommand"}, =0A=
{key: "webstatTrack", value: "CNN.WebstatTriggerCommand"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "Global", =0A=
map: [=0A=
{key: "first frame timeout", value: "30000"}],=0A=
nodes: [=0A=
{name: "rootUrlMap", =0A=
map: [],=0A=
nodes: [=0A=
{name: "videoContentMeta", =0A=
map: [=0A=
{key: "rootUrl", value: "http://us.cnn.com/video/data/2.0"}],=0A=
nodes: []=0A=
}, =0A=
{name: "videoTracking", =0A=
map: [=0A=
{key: "rootUrl", value: "http://us.cnn.com"}],=0A=
nodes: []=0A=
}, =0A=
{name: "videoPromoMeta", =0A=
map: [=0A=
{key: "rootUrl", value: "http://us.cnn.com/video/data/2.0"}],=0A=
nodes: []=0A=
}, =0A=
{name: "adPolicy", =0A=
map: [=0A=
{key: "rootUrl", value: "http://i.cdn.turner.com/cnn"}],=0A=
nodes: []=0A=
}, =0A=
{name: "ruleClasses", =0A=
map: [=0A=
{key: "rootUrl", value: "http://i.cdn.turner.com/cnn"}],=0A=
nodes: []=0A=
}, =0A=
{name: "adMan", =0A=
map: [=0A=
{key: "rootUrl", value: "http://us.cnn.com"}],=0A=
nodes: []=0A=
}, =0A=
{name: "dhtmlObject", =0A=
map: [=0A=
{key: "rootUrl", value: "http://i.cdn.turner.com/cnn"}],=0A=
nodes: []=0A=
}, =0A=
{name: "controlStreamResource", =0A=
map: [=0A=
{key: "rootUrl", value: =
"http://jcmsdev8.turner.com:82/pipeline/StreamStatus"}],=0A=
nodes: []=0A=
}, =0A=
{name: "video", =0A=
map: [],=0A=
nodes: [=0A=
{name: "Flash", =0A=
map: [],=0A=
nodes: [=0A=
{name: "vod", =0A=
map: [=0A=
{key: "rootUrl", value: "ht.cdn.turner.com/cnn/big"}],=0A=
nodes: []=0A=
}, =0A=
{name: "ad", =0A=
map: [=0A=
{key: "rootUrl", value: "ht.cdn.turner.com/cnn/big"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "WindowsMedia", =0A=
map: [],=0A=
nodes: [=0A=
{name: "vod", =0A=
map: [=0A=
{key: "rootUrl", value: "us.cnn.com/video"}],=0A=
nodes: []=0A=
}, =0A=
{name: "ad", =0A=
map: [=0A=
{key: "rootUrl", value: "audint.cnn.com/pr"}],=0A=
nodes: []=0A=
}, =0A=
{name: "live", =0A=
map: [=0A=
{key: "rootUrl", value: "audint.cnn.com/pr"}],=0A=
nodes: []=0A=
}, =0A=
{name: "control", =0A=
map: [=0A=
{key: "rootUrl", value: "audint.cnn.com/pr"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "QuickTime", =0A=
map: [],=0A=
nodes: [=0A=
{name: "vod", =0A=
map: [=0A=
{key: "rootUrl", value: "i.gametap.com/static/ads/QuickTime"}],=0A=
nodes: []=0A=
}, =0A=
{name: "ad", =0A=
map: [=0A=
{key: "rootUrl", value: "i.gametap.com/static/ads/QuickTime"}],=0A=
nodes: []=0A=
}]=0A=
}]=0A=
}, =0A=
{name: "image", =0A=
map: [=0A=
{key: "rootUrl", value: "http://i.cnn.net"}],=0A=
nodes: []=0A=
}, =0A=
{name: "adVideo", =0A=
map: [=0A=
{key: "rootUrl", value: "http://ht.cdn.turner.com/cnn/big"}],=0A=
nodes: []=0A=
}, =0A=
{name: "swf", =0A=
map: [=0A=
{key: "rootUrl", value: "http://us.cnn.com/.element/js/2.0/video/xmp"}],=0A=
nodes: []=0A=
}, =0A=
{name: "adServer", =0A=
map: [=0A=
{key: "rootUrl", value: "http://ads.cnn.com/html.ng/"}],=0A=
nodes: []=0A=
}, =0A=
{name: "adCompositor", =0A=
map: [=0A=
{key: "rootUrl", value: =
"http://tbs-47c14a0d034.turner.com:81/adcompositor/adcompositor?"}, =0A=
{key: "timeout", value: "120000"}],=0A=
nodes: []=0A=
}]=0A=
}]=0A=
}]=0A=
}]=0A=
};=0A=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/video/xmp/xmp_net.js

// Turner XMP, Release Build, =A9 2007 Turner Broadcasting System, Inc. =
A Time Warner Company.  File: xmp_net, Version: 0.1.524.1663

if(typeof(window)!=3D=3D'undefined'){var deconcept;if(typeof =
deconcept=3D=3D=3D"undefined"){deconcept=3D{};}=0A=
deconcept.hop=3Dfunction(m,k){if(typeof(m.hasOwnProperty)=3D=3D=3D'undefi=
ned'){return true;}=0A=
return m.hasOwnProperty(k);};if(typeof =
deconcept.util=3D=3D=3D"undefined"){deconcept.util=3D{};}=0A=
if(typeof =
deconcept.SWFObjectUtil=3D=3D=3D"undefined"){deconcept.SWFObjectUtil=3D{}=
;}=0A=
deconcept.SWFObject=3Dfunction(_1,id,w,h,_5,c,_7,_8,_9,_a,_b){if(!documen=
t.getElementById){return;}=0A=
this.DETECT_KEY=3D_b?_b:"detectflash";this.skipDetect=3Ddeconcept.util.ge=
tRequestParameter(this.DETECT_KEY);this.params=3D{};this.variables=3D{};t=
his.attributes=3D[];if(_1){this.setAttribute("swf",_1);}=0A=
if(id){this.setAttribute("id",id);}=0A=
if(w){this.setAttribute("width",w);}=0A=
if(h){this.setAttribute("height",h);}=0A=
if(_5){this.setAttribute("version",new =
deconcept.PlayerVersion(_5.toString().split(".")));}=0A=
this.installedVer=3Ddeconcept.SWFObjectUtil.getPlayerVersion();if(c){this=
.addParam("bgcolor",c);}=0A=
var =
q=3D_8?_8:"high";this.addParam("quality",q);this.setAttribute("useExpress=
Install",_7);this.setAttribute("doExpressInstall",false);var =
_d=3D(_9)?_9:window.location;this.setAttribute("xiRedirectUrl",_d);this.s=
etAttribute("redirectUrl","");if(_a){this.setAttribute("redirectUrl",_a);=
}};deconcept.SWFObject.prototype=3D{setAttribute:function(_e,_f){this.att=
ributes[_e]=3D_f;},getAttribute:function(aa){return =
this.attributes[aa];},addParam:function(ba,ca){this.params[ba]=3Dca;},get=
Params:function(){return =
this.params;},addVariable:function(da,ea){this.variables[da]=3Dea;},getVa=
riable:function(fa){return =
this.variables[fa];},getVariables:function(){return =
this.variables;},getVariablePairs:function(){var ga=3D[];var ha;var =
ia=3Dthis.getVariables();for(ha in =
ia){if(deconcept.hop(ia,ha)){ga.push(ha+"=3D"+ia[ha]);}}=0A=
return ga;},getSWFHTML:function(){var =
ja=3D"";if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.le=
ngth){if(this.getAttribute("doExpressInstall")){this.addVariable("MMplaye=
rType","PlugIn");}=0A=
ja=3D"<embed type=3D\"application/x-shockwave-flash\" =
src=3D\""+this.getAttribute("swf")+"\" =
width=3D\""+this.getAttribute("width")+"\" =
height=3D\""+this.getAttribute("height")+"\"";ja+=3D" =
id=3D\""+this.getAttribute("id")+"\" =
name=3D\""+this.getAttribute("id")+"\" ";var =
ka=3Dthis.getParams();for(var la in =
ka){if(deconcept.hop(ka,la)){ja+=3D[la]+"=3D\""+ka[la]+"\" ";}}=0A=
var =
ma=3Dthis.getVariablePairs().join("&");if(ma.length>0){ja+=3D"flashvars=3D=
\""+ma+"\"";}ja+=3D"/>";}else{if(this.getAttribute("doExpressInstall")){t=
his.addVariable("MMplayerType","ActiveX");}=0A=
ja=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")+"\">";ja+=3D"<param =
name=3D\"movie\" value=3D\""+this.getAttribute("swf")+"\" />";var =
na=3Dthis.getParams();for(var oa in =
na){if(deconcept.hop(na,oa)){ja+=3D"<param name=3D\""+oa+"\" =
value=3D\""+na[oa]+"\" />";}}=0A=
var pa=3Dthis.getVariablePairs().join("&");if(pa.length>0){ja+=3D"<param =
name=3D\"flashvars\" value=3D\""+pa+"\" />";}ja+=3D"</object>";}=0A=
return =
ja;},write:function(qa){if(this.getAttribute("useExpressInstall")){var =
ra=3Dnew =
deconcept.PlayerVersion([6,0,65]);if(this.installedVer.versionIsValid(ra)=
&&!this.installedVer.versionIsValid(this.getAttribute("version"))){this.s=
etAttribute("doExpressInstall",true);this.addVariable("MMredirectURL",esc=
ape(this.getAttribute("xiRedirectUrl")));document.title=3Ddocument.title.=
slice(0,47)+" - Flash Player =
Installation";this.addVariable("MMdoctitle",document.title);}}=0A=
if(this.skipDetect||this.getAttribute("doExpressInstall")||this.installed=
Ver.versionIsValid(this.getAttribute("version"))){var n=3D(typeof =
qa=3D=3D=3D"string")?document.getElementById(qa):qa;n.innerHTML=3Dthis.ge=
tSWFHTML();return =
true;}else{if(this.getAttribute("redirectUrl")!=3D=3D""){document.locatio=
n.replace(this.getAttribute("redirectUrl"));}}=0A=
return =
false;}};deconcept.SWFObjectUtil.getPlayerVersion=3Dfunction(){var =
sa;var ta=3Dnew =
deconcept.PlayerVersion([0,0,0]);if(navigator.plugins&&navigator.mimeType=
s.length){var x=3Dnavigator.plugins["Shockwave =
Flash"];if(x&&x.description){ta=3Dnew =
deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/,"").replac=
e(/(\s+r|\s+b[0-9]+)/,".").split("."));}}else{try{sa=3Dnew =
ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");}=0A=
catch(e){try{sa=3Dnew =
ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");ta=3Dnew =
deconcept.PlayerVersion([6,0,21]);sa.AllowScriptAccess=3D"always";}=0A=
catch(e2){if(ta.major=3D=3D=3D6){return ta;}}try{sa=3Dnew =
ActiveXObject("ShockwaveFlash.ShockwaveFlash");}=0A=
catch(e3){}}if(sa!=3D=3Dnull){ta=3Dnew =
deconcept.PlayerVersion(sa.GetVariable("$version").split(" =
")[1].split(","));}}=0A=
return =
ta;};deconcept.PlayerVersion=3Dfunction(ua){this.major=3Dua[0]!=3D=3Dnull=
?parseInt(ua[0],10):0;this.minor=3Dua[1]!=3D=3Dnull?parseInt(ua[1],10):0;=
this.rev=3Dua[2]!=3D=3Dnull?parseInt(ua[2],10):0;};deconcept.PlayerVersio=
n.prototype.versionIsValid=3Dfunction(fv){if(this.major<fv.major){return =
false;}=0A=
if(this.major>fv.major){return true;}=0A=
if(this.minor<fv.minor){return false;}=0A=
if(this.minor>fv.minor){return true;}=0A=
if(this.rev<fv.rev){return false;}return =
true;};deconcept.util=3D{getRequestParameter:function(va){var =
q=3Ddocument.location.search||document.location.hash;if(q){var =
wa=3Dq.substring(1).split("&");for(var =
i=3D0;i<wa.length;i++){if(wa[i].substring(0,wa[i].indexOf("=3D"))=3D=3D=3D=
va){return wa[i].substring((wa[i].indexOf("=3D")+1));}}}=0A=
return"";}};deconcept.SWFObjectUtil.cleanupSWFs=3Dfunction(){if(window.op=
era||!document.all){return;}=0A=
var xa=3Ddocument.getElementsByTagName("OBJECT");for(var =
i=3D0;i<xa.length;i++){xa[i].style.display=3D"none";for(var x in =
xa[i]){if(deconcept.hop(xa[i],x)){if(typeof =
xa[i][x]=3D=3D=3D"function"){xa[i][x]=3Dfunction(){};}}}}};deconcept.SWFO=
bjectUtil.prepUnload=3Dfunction(){__flash_unloadHandler=3Dfunction(){};__=
flash_savedUnloadHandler=3Dfunction(){};if(typeof =
window.onunload=3D=3D=3D"function"){var =
ya=3Dwindow.onunload;window.onunload=3Dfunction(){deconcept.SWFObjectUtil=
.cleanupSWFs();ya();};}else{window.onunload=3Ddeconcept.SWFObjectUtil.cle=
anupSWFs;}};if(typeof window.onbeforeunload=3D=3D=3D"function"){var =
oldBeforeUnload=3Dwindow.onbeforeunload;window.onbeforeunload=3Dfunction(=
){deconcept.SWFObjectUtil.prepUnload();oldBeforeUnload();};}else{window.o=
nbeforeunload=3Ddeconcept.SWFObjectUtil.prepUnload;}=0A=
if(Array.prototype.push=3D=3D=3Dnull){Array.prototype.push=3Dfunction(za)=
{this[this.length]=3Dza;return this.length;};}=0A=
var getQueryParamValue=3Ddeconcept.util.getRequestParameter;var =
FlashObject=3Ddeconcept.SWFObject;var SWFObject=3Ddeconcept.SWFObject;}=0A=
var xmp;if(!xmp){xmp=3D{};}else if(typeof xmp!=3D=3D"object"){throw new =
Error("xmp already exists and is not an object");}=0A=
xmp=3Dfunction(){};xmp._globalNamespace=3Dthis;xmp.getGlobalNamespace=3Df=
unction(){return =
xmp._globalNamespace;};xmp.isBrowserEnvironment=3Dfunction(){return(typeo=
f(window)!=3D=3D'undefined');};xmp.createNamespace=3Dfunction(ns){var =
Aa=3Dns.split(".");var Ba=3Dxmp.getGlobalNamespace();for(var =
i=3D0;i<Aa.length;i++){if(typeof(Ba[Aa[i]])=3D=3D=3D"undefined"){Ba[Aa[i]=
]=3D{};}=0A=
Ba=3DBa[Aa[i]];}};xmp.extractErrorMessage=3Dfunction(e){if(e instanceof =
Error){return('Error name: '+e.name+', Error message: '+e.message);}=0A=
else{return"UNKNOWN =
ERROR";}};xmp.chooseValueOrDefault=3Dfunction(Ca,Da){if(!((arguments.leng=
th=3D=3D=3D2)&&(Da!=3D=3Dnull)&&(typeof Da!=3D=3D'undefined'))){throw =
new xmp.util.internals.InvalidArgsError("Invalid invalid 'defaultValue' =
(undefined or null).");}=0A=
return(typeof Ca=3D=3D=3Dtypeof =
Da)?Ca:Da;};xmp.trimString=3Dfunction(Ea){return =
Ea.replace(/^\s*/,'').replace(/\s*$/,'');};xmp.isNonEmptyString=3Dfunctio=
n(Fa){return((typeof(Fa)=3D=3D=3D'string')&&(Fa!=3D=3Dnull)&&(Fa.length>0=
));};xmp.getNamespacedMethod=3Dfunction(Ga){var =
Ha=3Dxmp.splitMethodAndNamespace(Ga);var =
Ia=3Dxmp.getObjectFromString(Ha.ns);return =
Ia[Ha.method];};xmp.splitMethodAndNamespace=3Dfunction(Ja){var =
Ka=3DJa.lastIndexOf('.');var =
La=3D{};La.method=3DJa;La.ns=3D'';if(Ka!=3D=3D-1){La.method=3DJa.substrin=
g(Ka+1);La.ns=3DJa.substring(0,Ka);}=0A=
return La;};xmp.getObjectFromString=3Dfunction(Ma){var =
Na=3DMa.split('.');var o=3Dxmp.getGlobalNamespace();for(var =
i=3D0;i<Na.length;i++){o=3Do[Na[i]];}=0A=
return o;};xmp.isNumber=3Dfunction(Oa,Pa){var Qa=3D0;for(var =
i=3D0;i<Oa.length;i++){var =
Ra=3DOa.charCodeAt(i);if(Ra>=3D48&&Ra<=3D57){continue;}=0A=
if(Ra=3D=3D=3D45){if(i!=3D=3D0){return false;}=0A=
continue;}=0A=
if(Ra=3D=3D=3D46){if(!Pa){return false;}=0A=
Qa++;if(Qa>1){return false;}=0A=
continue;}=0A=
return false;}=0A=
return true;};xmp.escapeHtml=3Dfunction(Sa,Ta,Ua){var Va=3D'';var =
Wa=3D'@';for(var i=3D0;i<Sa.length;i++){var =
c=3DSa.charAt(i);switch(c){case'&':Va+=3D'&amp;';break;case'<':Va+=3D'&lt=
;';break;case'>':Va+=3D'&gt;';break;case'\"':Va+=3D'&quot;';break;case'\'=
':if(false=3D=3D=3DTa){Va+=3D'&apos;';}break;case' ':if(Ua&&Wa=3D=3D=3D' =
'){Va+=3D'&nbsp;';}=0A=
else{Va+=3Dc;}=0A=
break;default:Va+=3Dc;break;}=0A=
Wa=3Dc;}=0A=
Va=3DVa.replace(/\r/g,'');if(Ua){Va=3DVa.replace(/\n/g,'<br>');Va=3DVa.re=
place(/\t/g,'&nbsp;&nbsp;&nbsp;&nbsp;');}=0A=
return =
Va;};xmp.validateArguments=3Dfunction(Xa,Ya,Za){if((Xa.length>Ya.length)|=
|Xa.length<Ya.length){throw new =
xmp.util.internals.InvalidArgsError("Invalid argument count =
\""+Xa.length+"\" for function/method \""+Za+"\".  Expected count was =
\""+Ya.length+"\".");}=0A=
for(var =
i=3D0;i<Xa.length;i++){if(Ya[i]=3D=3D=3Dxmp.UNKNOWN_TYPE||typeof(Xa[i])=3D=
=3D=3DYa[i]){continue;}=0A=
throw new xmp.util.internals.InvalidArgsError("Invalid \""+Za+"\" =
function/method argument \""+i+"\" data type \""+typeof(Xa[i])+"\".  =
Expected data type was =
\""+Ya[i]+"\".");}};xmp.isDefined=3Dfunction($a){return(typeof($a)!=3D=3D=
xmp.UNDEFINED_TYPE);};xmp.fatalErrorCallback=3Dnull;xmp.handleFatalError=3D=
function(e){if(xmp.fatalErrorCallback!=3D=3Dnull){xmp.fatalErrorCallback.=
call(e);}=0A=
else{xmp.showFatalErrorMessage(e.message);}};xmp.showFatalErrorMessage=3D=
function(ab){xmp.showMessage(ab);};xmp.showMessage=3Dfunction(bb){window.=
alert(bb);};xmp.escapeText=3Dfunction(db){var =
eb=3Ddb.replace(/\"/g,"\\\"");eb=3Deb.replace(/\'/g,"\\\'");return =
eb.replace(/\n/g,"\\n");};xmp.formatTimeString=3Dfunction(fb){xmp.validat=
eArguments(arguments,[xmp.NUMBER_TYPE],"formatTimeString");var =
gb=3D"";if(fb<60){gb=3D"00:";if(fb=3D=3D=3D0){gb+=3D"00";}=0A=
else{if(fb<10){gb+=3D"0"+fb;}=0A=
else{gb+=3Dfb;}}}=0A=
else{var hb=3DMath.floor(fb/60);gb=3D((hb<10)?"0"+hb+":":hb+":");var =
ib=3D(fb-(hb*60));if(ib=3D=3D=3D0){gb+=3D"00";}=0A=
else{if(ib<10){gb+=3D"0"+ib;}=0A=
else{gb+=3Dib;}}}=0A=
return gb;};xmp.getSWFRoot=3Dfunction(){return =
xmp.util.RootUrlProvider.getInstance().getRootUrl('swf')+'/';};xmp.makeSW=
FVersionedFileName=3Dfunction(jb){return =
xmp.util.Version.makeFileVersionString(jb,'swf');};xmp.makeSWFPath=3Dfunc=
tion(kb,lb){var =
mb=3Dxmp.getSWFRoot();if(lb){mb+=3Dxmp.makeSWFVersionedFileName(kb);}=0A=
else{mb+=3D(kb+'.swf');}=0A=
return mb;};xmp.getImageRoot=3Dfunction(){return =
xmp.util.RootUrlProvider.getInstance().getRootUrl('image');};xmp.getBrows=
erVersion=3Dfunction(){return =
xmp.util.internals.BrowserDetect.version;};xmp.isWindowsOS=3Dfunction(){r=
eturn(xmp.util.internals.BrowserDetect.OS=3D=3D=3Dxmp.WINDOWS_PLATFORM);}=
;xmp.isWindowsVistaOS=3Dfunction(){return(navigator.userAgent.toLowerCase=
().indexOf('windows nt =
6.0')!=3D=3D-1);};xmp.isMacOSX=3Dfunction(){return(navigator.userAgent.to=
LowerCase().indexOf("mac os =
x")>=3D0);};xmp.isMacOS=3Dfunction(){return(xmp.util.internals.BrowserDet=
ect.OS=3D=3D=3Dxmp.MAC_PLATFORM);};xmp.isIEBrowser=3Dfunction(){return(na=
vigator.appName.indexOf(xmp.MICROSOFT_BROWSER)!=3D=3D-1);};xmp.isFirefoxB=
rowser=3Dfunction(){return(xmp.util.internals.BrowserDetect.browser=3D=3D=
=3Dxmp.FIREFOX_BROWSER);};xmp.isSafariBrowser=3Dfunction(){return(xmp.uti=
l.internals.BrowserDetect.browser=3D=3D=3Dxmp.SAFARI_BROWSER);};xmp.isOpe=
raBrowser=3Dfunction(){return(navigator.appName.indexOf(xmp.OPERA_BROWSER=
)!=3D=3D-1);};xmp.findDomElement=3Dfunction(nb){var =
el=3D((xmp.isIEBrowser()||xmp.isOperaBrowser())?window[nb]:document[nb]);=
if(!el){el=3Ddocument.getElementById(nb);}=0A=
return el;};xmp.getDomParent=3Dfunction(ob){var =
pb=3D((xmp.isIEBrowser()||xmp.isOperaBrowser())?ob.parentElement:ob.paren=
tNode);return pb;};xmp.getEventDomTarget=3Dfunction(qb){var =
rb=3D(xmp.isIEBrowser()?qb.srcElement:qb.currentTarget);return =
rb;};xmp.findDomAncestorByTagName=3Dfunction(sb,tb){while(sb!=3D=3Dnull){=
if(sb.tagName.toLowerCase()=3D=3D=3Dtb.toLowerCase()){return sb;}=0A=
sb=3Dxmp.getDomParent(sb);}=0A=
return =
null;};xmp.insertDomChildBefore=3Dfunction(ub,vb,wb){wb=3D(wb)?wb:null;if=
(xmp.isIEBrowser()&&(wb=3D=3D=3Dnull)){ub.insertBefore(vb);}=0A=
else{ub.insertBefore(vb,wb);}};xmp.addComboOption=3Dfunction(xb,yb){if(xm=
p.isIEBrowser()){xb.add(yb);}=0A=
else{xb.add(yb,null);}};xmp.addDynamicStyle=3Dfunction(zb,Ab){var =
Bb=3Dfalse;try{if(typeof(document.styleSheets[0].addRule)!=3D=3D'undefine=
d'){document.styleSheets[0].addRule(zb,Ab);Bb=3Dtrue;}=0A=
else =
if(typeof(document.styleSheets[0].insertRule)!=3D=3D'undefined'){document=
.styleSheets[0].insertRule(zb+'  '+Ab,0);Bb=3Dtrue;}}=0A=
catch(e){}=0A=
return Bb;};xmp.getPixelUnits=3Dfunction(Cb){return =
parseInt(Cb,10)+"px";};xmp.DERIVE_CLASS=3Dfunction(Db,Eb){function =
Inheritance(){}=0A=
Inheritance.prototype=3DDb.prototype;Eb.prototype=3Dnew =
Inheritance();Eb.prototype.constructor=3DEb;Eb.ctor=3DDb;Eb.base=3DDb.pro=
totype;};xmp.getQueryArg=3Dfunction(Fb){xmp.getQueryArg._fault();var =
Gb=3Dxmp.getQueryArg._map[Fb];return(Gb)?Gb:null;};xmp.getQueryArgOpt=3Df=
unction(Hb,Ib){var =
Jb=3Dxmp.getQueryArg(Hb);return(Jb)?Jb:Ib;};xmp.getQueryArg._map=3Dnull;x=
mp.getQueryArg._fault=3Dfunction(){if(xmp.getQueryArg._map!=3D=3Dnull){re=
turn;}=0A=
xmp.getQueryArg._map=3D{};var =
Kb=3Dwindow.location.search.substring(1);var Lb=3DKb.split("&");for(var =
i=3D0;i<Lb.length;i++){var Mb=3DLb[i].indexOf('=3D');if(Mb>0){var =
Nb=3DLb[i].substring(0,Mb);var =
Ob=3DdecodeURIComponent(Lb[i].substring(Mb+1));xmp.getQueryArg._map[Nb]=3D=
Ob;}}};xmp.trueTypeOf=3Dfunction(Pb){var =
Qb=3Dtypeof(Pb);if(Pb=3D=3D=3Dnull){Qb=3D'null';}=0A=
try{switch(Qb){case'undefined':case'null':case'string':case'boolean':case=
'number':break;case'object':case'function':switch(Pb.constructor){case =
String:Qb=3D'String';break;case Boolean:Qb=3D'Boolean';break;case =
Number:Qb=3D'Number';break;case Array:Qb=3D'Array';break;case =
RegExp:Qb=3D'RegExp';break;case =
Function:Qb=3D'Function';break;default:var =
m=3DPb.constructor.toString().match(/function\s*([^( =
]+)\(/);if(m){Qb=3Dm[1];}=0A=
break;}=0A=
break;default:break;}}=0A=
finally{Qb=3DQb.substr(0,1).toUpperCase()+Qb.substr(1);return =
Qb;}};xmp.zeroPad=3Dfunction(Rb,Sb){var Tb=3D'';Tb+=3DRb;var =
Ub=3DTb.length;for(var i=3DUb;i<Sb;i++){Tb=3D('0'+Tb);}=0A=
return =
Tb;};xmp.MapIterator=3Dfunction(Vb,Wb){this._map=3DVb;this._keys=3D(Wb)?x=
mp.MapIterator.extractKeysSorted(Vb):xmp.MapIterator.extractKeys(Vb);this=
._current=3D-1;this.first();};xmp.MapIterator.create=3Dfunction(Xb){retur=
n new =
xmp.MapIterator(Xb,false);};xmp.MapIterator.createSorted=3Dfunction(Yb){r=
eturn new =
xmp.MapIterator(Yb,true);};xmp.MapIterator.extractKeys=3Dfunction(Zb){var=
 $b=3D[];if(!Zb){return $b;}=0A=
var ac=3D'';var =
bc=3D(typeof(Zb.hasOwnProperty)!=3D=3D'undefined');for(ac in =
Zb){if((!bc)||(bc&&Zb.hasOwnProperty(ac))){$b.push(ac);}}=0A=
return $b;};xmp.MapIterator.extractKeysSorted=3Dfunction(cc){return =
xmp.MapIterator.extractKeys(cc).sort();};xmp.MapIterator.prototype.first=3D=
function(){this._current=3D0;};xmp.MapIterator.prototype.hasNext=3Dfuncti=
on(){return(!this.isDone());};xmp.MapIterator.prototype.isDone=3Dfunction=
(){return(this._current>=3Dthis._keys.length);};xmp.MapIterator.prototype=
.next=3Dfunction(){this._current++;};xmp.MapIterator.prototype.currentKey=
=3Dfunction(){this._checkDone();return =
this._keys[this._current];};xmp.MapIterator.prototype.currentValue=3Dfunc=
tion(){return =
this._map[this.currentKey()];};xmp.MapIterator.prototype.updateCurrentVal=
ue=3Dfunction(dc){this._map[this.currentKey()]=3Ddc;};xmp.MapIterator.pro=
totype._checkDone=3Dfunction(){if(this.isDone()){throw new =
Error('MapIterator out of =
bounds.');}};xmp.MapIterator.prototype.getKeyArray=3Dfunction(){return =
this._keys;};xmp.MapIterator.prototype.getValueArray=3Dfunction(){var =
ec=3D[];for(var =
i=3D0;i<this._keys.length;i++){ec.push(this._map[this._keys[i]]);}=0A=
return =
ec;};xmp.UNKNOWN_TYPE=3D"unknown";xmp.OBJECT_TYPE=3D"object";xmp.STRING_T=
YPE=3D"string";xmp.BOOLEAN_TYPE=3D"boolean";xmp.NUMBER_TYPE=3D"number";xm=
p.FUNCTION_TYPE=3D"function";xmp.UNDEFINED_TYPE=3D"undefined";xmp.TRUE=3D=
"true";xmp.FALSE=3D"false";xmp.MICROSOFT_BROWSER=3D"Microsoft";xmp.OPERA_=
BROWSER=3D"Opera";xmp.FIREFOX_BROWSER=3D"Firefox";xmp.SAFARI_BROWSER=3D"S=
afari";xmp.WINDOWS_PLATFORM=3D"Windows";xmp.MAC_PLATFORM=3D"Mac";xmp.UNKN=
OWN_ERROR=3D"UnknownError";xmp.ROOT_URL=3D"rootUrl";xmp.NO_DEFAULT_VALUE=3D=
"";xmp.DELIMITER=3D"|";xmp.ID_ATTRIBUTE=3D"id";xmp.NAME_ATTRIBUTE=3D"name=
";xmp.DEFAULT_TIMER_INTERVAL=3D100;xmp.SYNCH_UNIT=3D"SynchUnit";xmp.CONNE=
CTING=3D"Connecting";xmp.CONNECTED=3D"Connected";xmp.OPEN=3D"Open";xmp.BU=
FFERING=3D"Buffering";xmp.FIRST_FRAME_RENDERED=3D"FirstFrameRendered";xmp=
.MONITOR_INTERVAL=3D1000;xmp.DISPLAY_NONE=3D"none";xmp.DISPLAY_BLOCK=3D"b=
lock";xmp.DISPLAY_INLINE=3D"inline";xmp.CONTEXT=3D"context";xmp.VOLUME=3D=
"volume";xmp.MUTE=3D"mute";xmp.BLACK_BACKGROUND_COLOR=3D"#000000";xmp.NO_=
TIME_LIMIT=3D-1;xmp.IS_AVAILABLE=3D"IsAvailable";xmp.GET_POSITION=3D"GetP=
osition";xmp.GET_DURATION=3D"GetDuration";xmp.GET_VOLUME=3D"GetVolume";xm=
p.SET_VOLUME=3D"SetVolume";xmp.GET_MUTE=3D"GetMute";xmp.SET_MUTE=3D"SetMu=
te";xmp.FULLSCREEN=3D"Fullscreen";xmp.GET_FULLSCREEN=3D"GetFullscreen";xm=
p.SET_FULLSCREEN=3D"SetFullscreen";xmp.GET_BUFFERING_PROGRESS=3D"GetBuffe=
ringProgress";xmp.TYPE=3D"type";xmp.ON_DEMAND_STREAMING_MODE=3D"vod";xmp.=
LIVE_STREAMING_MODE=3D"live";xmp.CONTROL_STREAMING_MODE=3D"control";xmp.A=
D_STREAMING_MODE=3D"ad";xmp.WIDTH=3D"width";xmp.HEIGHT=3D"height";xmp.MT_=
PLAYER_BOOTSTRAP=3D"bootstrap";xmp.MT_PLAYER_PLAYLIST_ENDED=3D"playlist_e=
nded";xmp.createNamespace("xmp.net");xmp.net.AbstractTransport=3Dfunction=
(fc,gc,hc,ic,jc){this._requestId=3Dfc;this._loadId=3Dgc;this._callback=3D=
hc;this._cfg=3Dic;this._contentType=3Djc;this._response=3Dnew =
xmp.net.AjaxResponse(gc);this._timer=3Dnull;this._manager=3Dxmp.net.AjaxR=
equestManager.getInstance();this._response.setFullUrl(this._cfg.rootUrl+t=
his._response.getId());};xmp.net.AbstractTransport.prototype.getRequestId=
=3Dfunction(){return =
this._requestId;};xmp.net.AbstractTransport.prototype.getLoadId=3Dfunctio=
n(){return =
this._loadId;};xmp.net.AbstractTransport.prototype.getResponse=3Dfunction=
(){return =
this._response;};xmp.net.AbstractTransport.prototype.getCallback=3Dfuncti=
on(){return =
this._callback;};xmp.net.AbstractTransport.prototype.getConfiguration=3Df=
unction(){return =
this._cfg;};xmp.net.AbstractTransport.prototype.getContentType=3Dfunction=
(){return =
this._contentType;};xmp.net.AbstractTransport.prototype.setLoadedData=3Df=
unction(kc){throw new Error("Not =
supported.");};xmp.net.AbstractTransport.prototype.request=3Dfunction(lc,=
mc){throw new Error("Must =
override.");};xmp.net.AbstractTransport.prototype.makeReport=3Dfunction()=
{var nc=3D'';nc+=3D('Request ID: '+this.getRequestId()+', =
');nc+=3D('Transport Type: =
'+xmp.net.TransportTypes.stringify(this.getConfiguration().transportType)=
+', ');nc+=3D('Load ID: '+this.getLoadId()+', ');nc+=3D('Root URL: =
'+this.getConfiguration().rootUrl+', ');nc+=3D('Content Type: =
'+xmp.net.ContentTypes.stringify(this.getContentType()));return =
nc;};xmp.net.AbstractTransport.prototype._getManager=3Dfunction(){return =
this._manager;};xmp.net.AbstractTransport.prototype._handleTimeout=3Dfunc=
tion(){throw new Error("Must =
override.");};xmp.net.AbstractTransport.prototype._startTimer=3Dfunction(=
){if(this._timer){this._timer.start();}};xmp.net.AbstractTransport.protot=
ype._stopTimer=3Dfunction(){if(this._timer){this._timer.stop();}};xmp.net=
.AbstractTransport.prototype._checkAndCreateTimer=3Dfunction(){if(this._t=
imer){this._timer.stop();}=0A=
var =
oc=3Dthis.getConfiguration().timeout;if(oc!=3D=3D-1){if(this._timer=3D=3D=
=3Dnull){this._timer=3Dnew xmp.util.Timer(this.getRequestId(),oc,1,new =
xmp.util.Callback(this.getRequestId(),this._handleTimer,this));}=0A=
return true;}=0A=
return =
false;};xmp.net.AbstractTransport.prototype._handleTimer=3Dfunction(pc,qc=
){this._stopTimer();this._handleTimeout();};xmp.createNamespace("xmp.net"=
);xmp.net.AbstractTagTransport=3Dfunction(rc,sc,tc,uc,vc){xmp.net.Abstrac=
tTagTransport.ctor.call(this,rc,sc,tc,uc,vc);this._timedOut=3Dfalse;};xmp=
.DERIVE_CLASS(xmp.net.AbstractTransport,xmp.net.AbstractTagTransport);xmp=
.net.AbstractTagTransport.prototype.setLoadedData=3Dfunction(wc){this._co=
mpleteResponse(wc);};xmp.net.AbstractTagTransport.prototype.request=3Dfun=
ction(xc,yc){try{this._timedOut=3Dfalse;this._checkAndCreateTimer();var =
zc=3Dthis.getConfiguration().rootUrl+xc;if(yc!=3D=3Dnull){throw new =
Error("Headers not supported");}=0A=
this._initTag(zc);this._startTimer();}=0A=
catch(e){this._finiTag();this._stopTimer();this.getResponse()._setError(e=
);this._getManager()._handleCompleteRequest(this);}};xmp.net.AbstractTagT=
ransport.prototype._initTag=3Dfunction(Ac){throw new Error("Must =
override this =
method!");};xmp.net.AbstractTagTransport.prototype._finiTag=3Dfunction(){=
throw new Error("Must override this =
method!");};xmp.net.AbstractTagTransport.prototype._makeTagId=3Dfunction(=
){throw new Error("Must override this =
method!");};xmp.net.AbstractTagTransport.prototype._getLogger=3Dfunction(=
){throw new Error("Must override this =
method!");};xmp.net.AbstractTagTransport.prototype._completeResponse=3Dfu=
nction(Bc){try{this._stopTimer();if(this._timedOut){this._getLogger('Drop=
ping data, request timed out.');return;}=0A=
if(this.getContentType()=3D=3D=3Dxmp.net.ContentTypes.TEXT){if(typeof =
Bc!=3D=3D'string'){throw new Error('Requested text but got data of =
type:'+(typeof Bc));}=0A=
this.getResponse()._setText(Bc);}=0A=
else if(this.getContentType()=3D=3D=3Dxmp.net.ContentTypes.JSON){var =
Cc=3Dnull;if(typeof =
Bc=3D=3D=3D'string'){Cc=3Dthis._getManager()._parseJson(Bc);}=0A=
else if(typeof Bc=3D=3D=3D'object'&&Bc!=3D=3Dnull){Cc=3DBc;}=0A=
if(Cc!=3D=3Dnull){this.getResponse()._setJsonObject(Cc);}=0A=
else{throw new Error('Requested JSON but got wrong data type:'+Bc);}}}=0A=
catch(e){this.getResponse()._setError(e);}=0A=
this._finiTag();this._getManager()._handleCompleteRequest(this);};xmp.net=
.AbstractTagTransport.prototype._handleTimeout=3Dfunction(){this._timedOu=
t=3Dtrue;this.getResponse()._setTimedOut();this._finiTag();this._getManag=
er()._handleCompleteRequest(this);};xmp.createNamespace("xmp.net");xmp.ne=
t.AjaxRequestManager=3Dfunction(){this._logger=3Dnew =
xmp.util.internals.CategoryLogger('AjaxRequestManager');this._loggerByTyp=
eMap=3D{};this._DEFAULT_TIMEOUT=3D30000;this._DEFAULT_TRANSPORT_TYPE=3Dxm=
p.net.TransportTypes.stringify(xmp.net.TransportTypes.FLASH_XHR);this._DE=
FAULT_RETRIES=3D1;this._DEFAULT_WAIT_BETWEEN_RETRIES=3D0;this._DEFAULT_RE=
QUEST_VERB=3D'GET';this._requestIdCounter=3D0;this._requestMap=3D{};};xmp=
.net.AjaxRequestManager.POST_FORM_TYPE=3D'post_form';xmp.net.AjaxRequestM=
anager._singeltonInstance=3Dnull;xmp.net.AjaxRequestManager.getInstance=3D=
function(){if(xmp.net.AjaxRequestManager._singeltonInstance=3D=3D=3Dnull)=
{xmp.net.AjaxRequestManager._singeltonInstance=3Dnew =
xmp.net.AjaxRequestManager();}=0A=
return =
xmp.net.AjaxRequestManager._singeltonInstance;};xmp.net.AjaxRequestManage=
r.prototype.init=3Dfunction(Dc){xmp.net.FlashXhrTransportManager.getInsta=
nce().init(Dc);};xmp.net.AjaxRequestManager.handleLoaded=3Dfunction(Ec,Fc=
){xmp.net.AjaxRequestManager.getInstance()._handleLoadedCore(Ec,Fc);};xmp=
.net.AjaxRequestManager.ping=3Dfunction(Gc,Hc){var cb=3Dnew =
xmp.util.Callback('Ping',xmp.net.AjaxRequestManager._pingCallback,null);x=
mp.net.AjaxRequestManager.getInstance().request(Hc,cb,Gc,Hc,xmp.net.Conte=
ntTypes.PING,null);};xmp.net.AjaxRequestManager._pingCallback=3Dfunction(=
Ic,Jc){};xmp.net.AjaxRequestManager.prototype.request=3Dfunction(Kc,Lc,Mc=
,Nc,Oc,Pc){var =
ok=3Dxmp.isNonEmptyString(Kc)&&xmp.isNonEmptyString(Mc)&&xmp.isNonEmptySt=
ring(Nc);if(ok){ok=3D(Lc!=3D=3Dnull)&&(typeof Lc=3D=3D=3D'object');}=0A=
if(ok){Oc=3Dxmp.net.ContentTypes._calc(Oc);ok=3D(Oc!=3D=3Dxmp.net.Content=
Types.INVALID);}=0A=
if(ok){if(!Pc){Pc=3Dnull;}=0A=
ok=3D((Pc=3D=3D=3Dnull)||(typeof Pc=3D=3D=3D'object'));}=0A=
if(!ok){throw new xmp.util.internals.InvalidArgsError('Invalid =
arguments, please read documentation for =
xmp.net.AjaxRequestManager.prototype.request.');}=0A=
var Qc=3Dthis._findConfiguration(Mc);if(!Qc){throw new Error('Could not =
find proper configuration for URL root type: '+Mc);}=0A=
this._requestWithConfiguration(Qc,Kc,Lc,Nc,Oc,Pc);};xmp.net.AjaxRequestMa=
nager.prototype._requestWithConfiguration=3Dfunction(Rc,Sc,Tc,Uc,Vc,Wc){v=
ar =
Xc=3Dthis._createTransport(Rc.transportType,Sc,Tc,Rc,Vc);this._requestMap=
[Xc.getRequestId()]=3DXc;this._logRequestReport(Xc,Uc,Wc);Xc.request(Uc,W=
c);};xmp.net.AjaxRequestManager.prototype._buildRequestReport=3Dfunction(=
Yc,Zc,$c){var ad=3D'Making request =3D ';ad+=3D(Yc.makeReport()+', =
');ad+=3D('Relative URL: '+Zc+', ');ad+=3D('Request Headers: =
');if($c=3D=3D=3Dnull){ad+=3D'NONE';}=0A=
else{for(var i=3D0;i<$c.length;i++){var bd=3D$c[i];ad+=3D(bd.name+' =3D =
'+bd.value);if(i!=3D=3D($c.length-1)){ad+=3D' & ';}}}=0A=
return =
ad;};xmp.net.AjaxRequestManager.prototype._createTransport=3Dfunction(cd,=
dd,ed,fd,gd){var hd=3Dxmp.net.TransportTypes;var =
jd=3Dhd._calc(cd);this._requestIdCounter++;var =
kd=3Dthis._requestIdCounter.toString();switch(jd){case hd.XHR:return new =
xmp.net.XhrTransport(kd,dd,ed,fd,gd);case hd.IFRAME:return new =
xmp.net.IFrameTagTransport(kd,dd,ed,fd,gd);case hd.SCRIPT:return new =
xmp.net.ScriptTagTransport(kd,dd,ed,fd,gd);case hd.FLASH_XHR:return new =
xmp.net.FlashXhrTransport(kd,dd,ed,fd,gd);case hd.MOCK:return new =
xmp.net.MockTransport(kd,dd,ed,fd,gd);default:return =
null;}};xmp.net.AjaxRequestManager.prototype._parseJson=3Dfunction(ld){ld=
=3Dxmp.trimString(ld);return =
this._parseJavaScript('('+ld+')');};xmp.net.AjaxRequestManager.prototype.=
_parseJavaScript=3Dfunction(md){return =
eval(md);};xmp.net.AjaxRequestManager.prototype._handleCompleteRequest=3D=
function(nd){var =
od=3Dnd.getRequestId();if(!this._requestMap[od]){this._logger.debug("Did =
not find transport: "+od);return;}=0A=
delete =
this._requestMap[od];try{if(nd.getResponse().isError()){if(nd.getResponse=
().isTimedOut()||(nd.getResponse().isCriticalOrFatalError())){var =
pd=3Dxmp.CriticalException.createCriticalException(xmp.XmpErrorCodes.CRIT=
ICAL_UNSPECIFIED_AJAX_ERROR,'ARM',this._buildReponseReport(nd));this._log=
ger.debug('ARM transport timeout',pd);}=0A=
else{this._logReponseReport(nd);}}=0A=
else{this._logReponseReport(nd);}=0A=
nd.getCallback().call(nd.getResponse());}=0A=
catch(e){this._logger.trace("Error while calling request =
callback.",e);}};xmp.net.AjaxRequestManager.prototype._getLoggerByType=3D=
function(qd){var rd=3Dthis._loggerByTypeMap[qd];if(!rd){rd=3Dnew =
xmp.util.internals.CategoryLogger('AjaxRequestManager'+'_'+qd);this._logg=
erByTypeMap[qd]=3Drd;}=0A=
return =
rd;};xmp.net.AjaxRequestManager.prototype._logRequestReport=3Dfunction(sd=
,td,ud){var =
vd=3Dthis._getLoggerByType(sd.getConfiguration().rootUrlType);if(vd.isDeb=
ugEnabled()){vd.debug(this._buildRequestReport(sd,td,ud));}};xmp.net.Ajax=
RequestManager.prototype._logReponseReport=3Dfunction(wd){var =
xd=3Dthis._getLoggerByType(wd.getConfiguration().rootUrlType);if(xd.isDeb=
ugEnabled()){xd.debug(this._buildReponseReport(wd));}};xmp.net.AjaxReques=
tManager.prototype._buildReponseReport=3Dfunction(yd){var zd=3D'Request =
complete (Request ID: '+yd.getRequestId()+'), response =3D =
'+yd.getResponse().makeReport();return =
zd;};xmp.net.AjaxRequestManager.prototype._handleLoadedCore=3Dfunction(Ad=
,Bd){try{for(var =
Cd=3Dxmp.MapIterator.create(this._requestMap);Cd.hasNext();Cd.next()){var=
 =
Dd=3DCd.currentValue();if(Dd.getLoadId()=3D=3D=3DAd){Dd.setLoadedData(Bd)=
;return;}}=0A=
this._logger.info("Dropping loaded data, could not find transport for: =
"+Ad);}=0A=
catch(e){this._logger.warn("Error while calling =
_handleLoadedCore.",e);}};xmp.net.AjaxRequestManager.prototype._findConfi=
guration=3Dfunction(Ed){var =
Fd=3Dxmp.util.RootUrlProvider.getInstance().getRootUrl(Ed);if(Fd.length=3D=
=3D=3D0){return null;}=0A=
var Gd=3Dxmp.util.RootUrlProvider.getInstance().getRootUrlNode(Ed);var =
Hd=3Dxmp.net.TransportTypes.fromString(Gd.getString('transportType',this.=
_DEFAULT_TRANSPORT_TYPE));if(Hd=3D=3D=3Dxmp.net.TransportTypes.INVALID){r=
eturn null;}=0A=
var =
Id=3D{};Id.rootUrl=3DFd;Id.rootUrlType=3DEd;Id.transportType=3DHd;Id.time=
out=3DGd.getInt('timeout',this._DEFAULT_TIMEOUT);Id.retries=3DGd.getInt('=
retries',this._DEFAULT_RETRIES);Id.waitBetweenRetries=3DGd.getInt('waitBe=
tweenRetries',this._DEFAULT_WAIT_BETWEEN_RETRIES);Id.requestVerb=3DGd.get=
String('requestVerb',this._DEFAULT_REQUEST_VERB);return =
Id;};xmp.createNamespace("xmp.net");xmp.net.AjaxResponse=3Dfunction(id){t=
his._id=3Did;this._fullUrl=3D"";this._errorObject=3Dnull;this._jsonObject=
=3Dnull;this._text=3D'';this._timedOutError=3Dfalse;this._isCriticalOrFat=
alError=3Dfalse;};xmp.net.AjaxResponse.prototype.getId=3Dfunction(){retur=
n =
this._id;};xmp.net.AjaxResponse.prototype.getFullUrl=3Dfunction(){return =
this._fullUrl;};xmp.net.AjaxResponse.prototype.setFullUrl=3Dfunction(Jd){=
this._fullUrl=3DJd;};xmp.net.AjaxResponse.prototype.isError=3Dfunction(){=
return(this._errorObject!=3D=3Dnull);};xmp.net.AjaxResponse.prototype.isT=
imedOut=3Dfunction(){return =
this._timedOutError;};xmp.net.AjaxResponse.prototype.isCriticalOrFatalErr=
or=3Dfunction(){return =
this._isCriticalOrFatalError;};xmp.net.AjaxResponse.prototype.getErrorObj=
ect=3Dfunction(){return =
this._errorObject;};xmp.net.AjaxResponse.prototype.getJsonObject=3Dfuncti=
on(){this._accessGuard();return =
this._jsonObject;};xmp.net.AjaxResponse.prototype.getText=3Dfunction(){th=
is._accessGuard();return =
this._text;};xmp.net.AjaxResponse.prototype.getErrorMessage=3Dfunction(){=
if(this.isError()){return =
xmp.extractErrorMessage(this.getErrorObject());}=0A=
else{return'No =
Error';}};xmp.net.AjaxResponse.prototype._accessGuard=3Dfunction(){if(thi=
s.isError()){var ex=3Dnew xmp.net.AjaxResponseException('Tried to access =
AjaxResponse while in an error state, see nested =
exception.');ex.message+=3D('\nNESTED ERROR: =
'+xmp.extractErrorMessage(this._errorObject));throw =
ex;}};xmp.net.AjaxResponse.prototype._setError=3Dfunction(Kd){this._setEr=
rorCore(Kd);};xmp.net.AjaxResponse.prototype._setTimedOut=3Dfunction(){th=
is._timedOutError=3Dtrue;this._setErrorCore(new Error("AjaxResponse: =
Request timed =
out."));};xmp.net.AjaxResponse.prototype._setJsonObject=3Dfunction(Ld){th=
is._jsonObject=3DLd;};xmp.net.AjaxResponse.prototype._setText=3Dfunction(=
Md){this._text=3DMd;};xmp.net.AjaxResponse.prototype._setErrorCore=3Dfunc=
tion(Nd){this._isCriticalOrFatalError=3Dfalse;if(Nd instanceof =
Error){this._errorObject=3Dnew =
xmp.net.AjaxResponseException('AjaxResponse, see nested =
exception');this._errorObject.message+=3D('\nNESTED ERROR: =
'+xmp.extractErrorMessage(Nd));if((Nd instanceof =
xmp.FatalException)||(Nd instanceof =
xmp.CriticalException)){this._isCriticalOrFatalError=3Dtrue;}}=0A=
else{this._errorObject=3Dnew =
xmp.net.AjaxResponseException("AjaxResponse: UNKNOWN =
ERROR");}};xmp.net.AjaxResponse.prototype.makeReport=3Dfunction(){var =
Od=3D'';Od+=3D('Response ID: =
'+this.getFullUrl()+'\n');if(this.isError()){Od+=3D('Response Text: =
'+this._text+'\n');Od+=3D('Response JSON: null\n');Od+=3D('ERROR =
Message: '+this.getErrorMessage());}=0A=
else{Od+=3D('Response Text: '+this.getText()+'\n');Od+=3D('Response =
JSON: '+((this.getJsonObject()=3D=3D=3Dnull)?'null':'not =
null')+'\n');Od+=3D'SUCCESS';}=0A=
return =
Od;};xmp.net.AjaxResponseException=3Dfunction(Pd){this.name=3D"AjaxRespon=
seException";this.message=3DPd;};xmp.DERIVE_CLASS(Error,xmp.net.AjaxRespo=
nseException);xmp.createNamespace("xmp.net");xmp.net.ContentTypes=3Dfunct=
ion(){};xmp.net.ContentTypes.INVALID=3D-1;xmp.net.ContentTypes.TEXT=3D0;x=
mp.net.ContentTypes.JSON=3D1;xmp.net.ContentTypes.PING=3D2;xmp.net.Conten=
tTypes._BEGIN=3D-1;xmp.net.ContentTypes._END=3D2;xmp.net.ContentTypes._ca=
lc=3Dfunction(Qd){var Rd=3Dxmp.net.ContentTypes;if((typeof =
Qd!=3D=3D'number')||(Qd<Rd._BEGIN)||(Qd>Rd._END)){return Rd._BEGIN;}=0A=
return Qd;};xmp.net.ContentTypes.stringify=3Dfunction(Sd){var =
Td=3Dxmp.net.ContentTypes;var Ud=3DTd._calc(Sd);switch(Ud){case =
Td.INVALID:return'invalid';case Td.TEXT:return'text';case =
Td.JSON:return'json';case =
Td.PING:return'ping';default:return'invalid';}};xmp.net.ContentTypes.from=
String=3Dfunction(Vd){var =
Wd=3Dxmp.net.ContentTypes;switch(Vd){case'invalid':return =
Wd.INVALID;case'text':return Wd.TEXT;case'json':return =
Wd.JSON;case'ping':return Wd.PING;default:return =
Wd.INVALID;}};xmp.createNamespace("xmp.net");xmp.net.FlashXhrTransport=3D=
function(Xd,Yd,Zd,$d,ae){xmp.net.FlashXhrTransport.ctor.call(this,Xd,Yd,Z=
d,$d,ae);this._FLASH_XML_REQUEST_MIME_TYPE=3D"text/html";this._handle=3D"=
";this._url=3D"";this._flashXhrManager=3Dxmp.net.FlashXhrTransportManager=
.getInstance();this._isIEWin=3D(xmp.isIEBrowser()&&(xmp.util.internals.Br=
owserDetect.OS=3D=3D=3Dxmp.WINDOWS_PLATFORM));this._requestHeaderArray=3D=
null;};xmp.DERIVE_CLASS(xmp.net.AbstractTransport,xmp.net.FlashXhrTranspo=
rt);xmp.net.FlashXhrTransport.prototype._getHandle=3Dfunction(){return =
this._handle;};xmp.net.FlashXhrTransport.prototype._getUrl=3Dfunction(){r=
eturn =
this._url;};xmp.net.FlashXhrTransport.prototype._getRequestVerb=3Dfunctio=
n(){return =
this.getConfiguration().requestVerb;};xmp.net.FlashXhrTransport.prototype=
._getRequestMimeType=3Dfunction(){return =
this._FLASH_XML_REQUEST_MIME_TYPE;};xmp.net.FlashXhrTransport.prototype._=
getFlashXhrManager=3Dfunction(){return =
this._flashXhrManager;};xmp.net.FlashXhrTransport.prototype._getRequestHe=
aders=3Dfunction(){return =
this._requestHeaderArray;};xmp.net.FlashXhrTransport.prototype.request=3D=
function(be,ce){try{this._requestHeaderArray=3Dce;this._url=3Dthis.getCon=
figuration().rootUrl+be;this._handle=3Dthis._getFlashXhrManager().getXhrC=
omponentName()+this.getRequestId();this._getFlashXhrManager().open(this);=
}=0A=
catch(e){this.handleError(e.name,e.message);}};xmp.net.FlashXhrTransport.=
prototype.doRequest=3Dfunction(){this._checkAndCreateTimer();this._getFla=
shXhrManager().doRequest(this);this._startTimer();};xmp.net.FlashXhrTrans=
port.prototype.handleData=3Dfunction(de){this._stopTimer();this.getRespon=
se()._setText(de);if(this.getContentType()=3D=3D=3Dxmp.net.ContentTypes.J=
SON){var =
ee=3Dthis._getManager()._parseJson(de);this.getResponse()._setJsonObject(=
ee);}=0A=
this._getFlashXhrManager().close(this);this._getManager()._handleComplete=
Request(this);};xmp.net.FlashXhrTransport.prototype.handleError=3Dfunctio=
n(fe,ge){this._stopTimer();var he=3D"Type:  "+fe+"\nDescription:  =
"+ge;this._getFlashXhrManager().close(this);var =
ie=3Dthis._extractErrorCode(ge);var =
je=3Dnull;if(this._isIEWin&&(ie=3D=3D=3D0)){je=3Dxmp.CriticalException.cr=
eateCriticalException(xmp.XmpErrorCodes.CRITICAL_UNSPECIFIED_AJAX_ERROR,'=
FlashXhrTransport',ge);}=0A=
else{je=3Dnew Error(he);}=0A=
this.getResponse()._setError(je);this._getManager()._handleCompleteReques=
t(this);};xmp.net.FlashXhrTransport.prototype._extractErrorCode=3Dfunctio=
n(ke){var re=3D/XML\/HTTP Error:\s{2}(\d{1,6}) \w*/;var =
le=3Dke.match(re);if(le!=3D=3Dnull&&le.length>1){return =
parseInt(le[1],0);}=0A=
return-1;};xmp.net.FlashXhrTransport.prototype._handleTimeout=3Dfunction(=
){this._getFlashXhrManager().close(this);this.getResponse()._setTimedOut(=
);this._getManager()._handleCompleteRequest(this);};xmp.createNamespace("=
xmp.net");xmp.net.FlashXhrTransportManager=3Dfunction(){this._logger=3Dne=
w =
xmp.util.internals.CategoryLogger('FlashXhrTransportManager');this._CREAT=
ION_TIMEOUT=3D5000;this._FLASH_DATA_CALLBACK=3D"dataCallback";this._FLASH=
_XML_HTTP_REQUEST_COMPONENT=3D"XMLHttpRequest";this._FLASH_XML_HTTP_REQUE=
ST_COMPONENT_NAME=3D"FlashXMLHttpRequest";this._FLASH_XML_HTTP_REQUEST_CO=
MPONENT_CONTAINER_NAME=3D"FlashXMLHttpRequestContainer";this._initializat=
ionState=3D'None';this._FlashXmlHttpRequestRegistry=3D{};this._create_cb=3D=
null;this._transitionInitializationState('Uninitialized');};xmp.net.Flash=
XhrTransportManager._singeltonInstance=3Dnull;xmp.net.FlashXhrTransportMa=
nager.getInstance=3Dfunction(){if(xmp.net.FlashXhrTransportManager._singe=
ltonInstance=3D=3D=3Dnull){xmp.net.FlashXhrTransportManager._singeltonIns=
tance=3Dnew xmp.net.FlashXhrTransportManager();}=0A=
return =
xmp.net.FlashXhrTransportManager._singeltonInstance;};xmp.net.FlashXhrTra=
nsportManager.prototype.init=3Dfunction(me){try{if(this._getInitializatio=
nState()!=3D=3D'Uninitialized'){throw new =
Error('FlashXhrTransportManager - Already started initialization.');}=0A=
this._transitionInitializationState('Before =
creation');this.createFlashXMLHttpRequest();this._transitionInitializatio=
nState('After creation');this._create_cb=3Dme;var ne=3Dnew =
xmp.util.Callback('FlashXhrTransportManager_init',this._handleInitTimeout=
,this);ne.callAsynchEx(this._CREATION_TIMEOUT,[]);}=0A=
catch(ex){me.call(new =
Error(xmp.extractErrorMessage(ex)));}};xmp.net.FlashXhrTransportManager.p=
rototype._handleInitTimeout=3Dfunction(){var =
oe=3Dthis._create_cb;this._create_cb=3Dnull;if(oe=3D=3D=3Dnull){return;}=0A=
var pe=3Dnew =
xmp.baseplayer.ApplicationError(null,'badInitialFlashObject',null,[{label=
:"Url",text:this._makeSWFPath()}]);this._logger.warn(pe.message,pe);oe.ca=
ll(xmp.FatalException.createFatalException(xmp.XmpErrorCodes.FATAL_PLUGIN=
_INIT,'FlashXhrTransportManager','timed out intializing flash XHR =
SWF'));};xmp.net.FlashXhrTransportManager.prototype.getXhrComponentName=3D=
function(){return =
this._FLASH_XML_HTTP_REQUEST_COMPONENT_NAME;};xmp.net.FlashXhrTransportMa=
nager.prototype._getXhrComponent=3Dfunction(){return =
document.getElementById(this.getXhrComponentName());};xmp.net.FlashXhrTra=
nsportManager.prototype.doRequest=3Dfunction(qe){this._enforceReadyState(=
);var =
se=3Dthis._getXhrComponent();se.xhrOpen(qe._getHandle(),qe._getRequestVer=
b(),qe._getRequestMimeType());if(qe.getContentType()=3D=3D=3Dxmp.net.Cont=
entTypes.PING){se.xhrSetResultData(qe._getHandle(),'ping');}=0A=
var te=3Dqe._getRequestHeaders();if(te){for(var =
i=3D0;i<te.length;i++){var ue=3Dte[i];var =
ve=3Due.name;if(xmp.isNonEmptyString(ue.type)&&(ue.type=3D=3D=3Dxmp.net.A=
jaxRequestManager.POST_FORM_TYPE)){ve=3D'_POST_FORM_VAR_:'+ve;}=0A=
se.xhrAddRequestHeader(qe._getHandle(),ve,ue.value);}}=0A=
se.xhrSend(qe._getHandle(),qe._getUrl());};xmp.net.FlashXhrTransportManag=
er.prototype._makeSWFPath=3Dfunction(){return =
xmp.makeSWFPath(this._FLASH_XML_HTTP_REQUEST_COMPONENT,true);};xmp.net.Fl=
ashXhrTransportManager.prototype.createFlashXMLHttpRequest=3Dfunction(){i=
f(document.getElementById(this._FLASH_XML_HTTP_REQUEST_COMPONENT_CONTAINE=
R_NAME)=3D=3D=3Dnull){var =
we=3Ddocument.createElement("div");we.setAttribute(xmp.ID_ATTRIBUTE,this.=
_FLASH_XML_HTTP_REQUEST_COMPONENT_CONTAINER_NAME);we.setAttribute(xmp.NAM=
E_ATTRIBUTE,this._FLASH_XML_HTTP_REQUEST_COMPONENT_CONTAINER_NAME);xmp.in=
sertDomChildBefore(document.body,we);var xe=3Dnew =
SWFObject(this._makeSWFPath(),this.getXhrComponentName(),1,1,8,"#FFFFFF")=
;xe.addParam(xmp.ALLOW_SCRIPT_ACCESS,xmp.ALWAYS_ACCESS);xe.addVariable(xm=
p.CONTEXT,'create_handle');var =
ye=3D'xmp.net.FlashXhrTransportManager.getInstance().';xe.addVariable(xmp=
.FLASH_INITIALIZATION_CALLBACK,ye+'onInit');xe.addVariable(this._FLASH_DA=
TA_CALLBACK,ye+'onData');xe.addVariable(xmp.FLASH_ERROR_CALLBACK,ye+'onEr=
ror');xe.write(this._FLASH_XML_HTTP_REQUEST_COMPONENT_CONTAINER_NAME);xmp=
.util.FlashUtility.buildFSCommandScript(we,this.getXhrComponentName(),ye+=
"_handleFSCommand(command, =
args);");}};xmp.net.FlashXhrTransportManager.prototype.handleInit=3Dfunct=
ion(){this._logger.debug('In =
handleInit.');if(this._getInitializationState()!=3D=3D'After =
creation'){if(this._getInitializationState()!=3D=3D'Relaying =
handleInit'){var ze=3Dnew =
xmp.util.Callback('FlashXhrTransportManager_relay_handleInit',this.handle=
Init,this);ze.callAsynch([]);this._transitionInitializationState('Relayin=
g handleInit');}=0A=
return;}=0A=
var =
Ae=3Dthis._create_cb;this._create_cb=3Dnull;if(Ae=3D=3D=3Dnull){this.logg=
er.critical("Unexpected: creation callback is null.");return;}=0A=
this._transitionInitializationState('Ready');Ae.call('Ready');};xmp.net.F=
lashXhrTransportManager.prototype.close=3Dfunction(Be){this._getXhrCompon=
ent().xhrClose(Be._getHandle());this._FlashXmlHttpRequestRegistry[Be._get=
Handle()]=3Dnull;delete =
this._FlashXmlHttpRequestRegistry[Be._getHandle()];};xmp.net.FlashXhrTran=
sportManager.prototype.open=3Dfunction(Ce){this._enforceReadyState();this=
._FlashXmlHttpRequestRegistry[Ce._getHandle()]=3DCe;Ce.doRequest();};xmp.=
net.FlashXhrTransportManager.prototype._handleFSCommand=3Dfunction(De,Ee)=
{try{De=3Dxmp.util.FlashUtility.normalizeCommand(De);var =
Fe=3D'xmp.net.FlashXhrTransportManager.getInstance().';var =
Ge=3Dxmp.util.FlashUtility;var He=3Dnull;switch(De){case =
Fe+'onInit':He=3DGe.splitFSCommandData(Ee,2);this.onInit(He[0],He[1]);bre=
ak;case =
Fe+'onData':He=3DGe.splitFSCommandData(Ee,2);this.onData(He[0],He[1]);bre=
ak;case =
Fe+'onError':He=3DGe.splitFSCommandData(Ee,3);this.onError(He[0],He[1],He=
[2]);break;default:this._logger.warn('Unrecognized FSCommand: =
'+De);break;}}=0A=
catch(e){this._logger.warn('Error executing FSCommand: =
'+De,e);}};xmp.net.FlashXhrTransportManager.prototype.onInit=3Dfunction(I=
e,Je){try{this.handleInit();}=0A=
catch(e){this._handleError(e,true);}};xmp.net.FlashXhrTransportManager.pr=
ototype.onData=3Dfunction(Ke,Le){try{var =
Me=3Dthis._getTransport(Ke);try{Me.handleData(xmp.util.FlashUtility.exter=
nalInterfaceDecode(Le));}=0A=
catch(e2){this._handleTransportError(Me,e2,true);}}=0A=
catch(e){this._handleError(e,false);}};xmp.net.FlashXhrTransportManager.p=
rototype.onError=3Dfunction(Ne,Oe,Pe){try{var =
Qe=3Dthis._getTransport(Ne);try{Qe.handleError(Oe,Pe);}=0A=
catch(e2){this._handleTransportError(Qe,e2,false);}}=0A=
catch(e){this._handleError(e,false);}};xmp.net.FlashXhrTransportManager.p=
rototype._getTransport=3Dfunction(Re){var =
Se=3Dthis._findTransport(Re);if(!Se){throw new Error("Could not get =
transport for handle: "+Re);}=0A=
return =
Se;};xmp.net.FlashXhrTransportManager.prototype._findTransport=3Dfunction=
(Te){var =
Ue=3Dthis._FlashXmlHttpRequestRegistry[Te];return(Ue)?Ue:null;};xmp.net.F=
lashXhrTransportManager.prototype._handleError=3Dfunction(Ve,We){if(We){t=
his._logger.critical("Error in FlashXhrTransportManager",Ve);}=0A=
else{this._logger.warn("Error in =
FlashXhrTransportManager",Ve);}};xmp.net.FlashXhrTransportManager.prototy=
pe._handleTransportError=3Dfunction(Xe,Ye,Ze){try{if(Ze){Xe.handleError(Y=
e.name,Ye.message);}=0A=
else{this._handleError(Ye,false);this.close(Xe);}}=0A=
catch(e){var e2=3Dnew Error("Error calling _handleTransportError: =
"+xmp.extractErrorMessage(e)+"\nOriginal error: =
"+xmp.extractErrorMessage(Ye));this._handleError(e2,true);}};xmp.net.Flas=
hXhrTransportManager.prototype._transitionInitializationState=3Dfunction(=
$e){this._logger.debug('Transition init state from =
"'+this._initializationState+'" to =
"'+$e+'".');this._initializationState=3D$e;};xmp.net.FlashXhrTransportMan=
ager.prototype._getInitializationState=3Dfunction(){return =
this._initializationState;};xmp.net.FlashXhrTransportManager.prototype._i=
sInReadyState=3Dfunction(){return(this._getInitializationState()=3D=3D=3D=
'Ready');};xmp.net.FlashXhrTransportManager.prototype._enforceReadyState=3D=
function(){if(!this._isInReadyState()){throw new =
Error("FlashXhrTransportManager is not =
iniitialized!");}};xmp.createNamespace("xmp.net");xmp.net.IFrameTagTransp=
ort=3Dfunction(af,bf,cf,df,ef){xmp.net.IFrameTagTransport.ctor.call(this,=
af,bf,cf,df,ef);this._logger=3Dnew =
xmp.util.internals.CategoryLogger('IFrameTagTransport');};xmp.DERIVE_CLAS=
S(xmp.net.AbstractTagTransport,xmp.net.IFrameTagTransport);xmp.net.IFrame=
TagTransport.prototype._initTag=3Dfunction(ff){var =
gf=3Ddocument.createElement('iframe');gf.id=3Dthis._makeTagId();document.=
body.appendChild(gf);gf.src=3Dff;};xmp.net.IFrameTagTransport.prototype._=
finiTag=3Dfunction(){try{var =
hf=3Ddocument.getElementById(this._makeTagId());if(hf){document.body.remo=
veChild(hf);}}=0A=
catch(e){this._logger.warn('Error removing tag with ID: =
'+this._makeTagId(),e);}};xmp.net.IFrameTagTransport.prototype._makeTagId=
=3Dfunction(){return'IFrameTagTransport'+'_'+this.getRequestId();};xmp.ne=
t.IFrameTagTransport.prototype._getLogger=3Dfunction(){return =
this._logger;};xmp.createNamespace("xmp.net");xmp.net.MockTransport=3Dfun=
ction(jf,kf,lf,mf,nf){xmp.net.MockTransport.ctor.call(this,jf,kf,lf,mf,nf=
);};xmp.DERIVE_CLASS(xmp.net.AbstractTransport,xmp.net.MockTransport);xmp=
.net.MockTransport.prototype.request=3Dfunction(of,pf){this._url=3Dof;thi=
s.doRequest();};xmp.net.MockTransport.prototype.doRequest=3Dfunction(){th=
is._checkAndCreateTimer();this._startTimer();if(this._networkDelayTimer){=
this._networkDelayTimer.stop();}=0A=
this._dataItem=3Dxmp.net.MockTransportData.getInstance().getItem(this._ur=
l);var =
qf=3Dthis._dataItem?this._dataItem.delay:200;this._networkDelayTimer=3Dne=
w xmp.util.Timer(this.getRequestId(),qf,1,new =
xmp.util.Callback(this.getRequestId(),this._handleRequest,this));this._ne=
tworkDelayTimer.start();};xmp.net.MockTransport.prototype._handleRequest=3D=
function(rf,sf){sf.stop();try{if(this._dataItem){this.handleData(this._da=
taItem.data);}=0A=
else{this.handleError("MockTransportError","No mock data found for =
"+this._url);}}=0A=
catch(e){this.handleError(e.nam,e.message);}};xmp.net.MockTransport.proto=
type.handleData=3Dfunction(tf){this._stopTimer();var uf=3Dnull;var =
vf=3Dnull;if(typeof tf=3D=3D=3D'string'){uf=3Dtf;}=0A=
else{vf=3Dtf;uf=3D"";}=0A=
this.getResponse()._setText(uf);if(this.getContentType()=3D=3D=3Dxmp.net.=
ContentTypes.JSON){if(!vf){vf=3Dthis._getManager()._parseJson(uf);}=0A=
this.getResponse()._setJsonObject(vf);}=0A=
this._getManager()._handleCompleteRequest(this);};xmp.net.MockTransport.p=
rototype.handleError=3Dfunction(wf,xf){this._stopTimer();var yf=3D"Type: =
 "+wf+"\nDescription:  "+xf;this.getResponse()._setError(new =
Error(yf));this._getManager()._handleCompleteRequest(this);};xmp.net.Mock=
Transport.prototype._handleTimeout=3Dfunction(){this.getResponse()._setTi=
medOut();this._getManager()._handleCompleteRequest(this);};xmp.createName=
space("xmp.net");xmp.net.MockTransportData=3Dfunction(){this._logger=3Dne=
w =
xmp.util.internals.CategoryLogger('MockTransportData');this._dataMap=3D{}=
;};xmp.net.MockTransportData._singeltonInstance=3Dnull;xmp.net.MockTransp=
ortData.getInstance=3Dfunction(){if(xmp.net.MockTransportData._singeltonI=
nstance=3D=3D=3Dnull){xmp.net.MockTransportData._singeltonInstance=3Dnew =
xmp.net.MockTransportData();}=0A=
return =
xmp.net.MockTransportData._singeltonInstance;};xmp.net.MockTransportData.=
prototype.setDataMap=3Dfunction(zf){this._dataMap=3Dzf;};xmp.net.MockTran=
sportData.prototype.getDataMap=3Dfunction(){return =
this._dataMap;};xmp.net.MockTransportData.prototype.setItem=3Dfunction(Af=
,Bf){var =
Cf=3Dthis._transformUrl(Af);this._dataMap[Cf]=3DBf;};xmp.net.MockTranspor=
tData.prototype.getItem=3Dfunction(Df){this._logger.info("MockTransportDa=
ta.getData for "+Df);var Ef=3Dthis._transformUrl(Df);return =
this._dataMap[Ef];};xmp.net.MockTransportData.prototype._transformUrl=3Df=
unction(Ff){var =
Gf=3Dthis._hasTileId(Ff)?this._removeTileId(Ff):Ff;return =
Gf;};xmp.net.MockTransportData.prototype._hasTileId=3Dfunction(Hf){return=
 =
Hf.match(/tile=3D\d+/);};xmp.net.MockTransportData.prototype._removeTileI=
d=3Dfunction(If){var =
Jf=3DIf.replace(/tile=3D\d+&/,'');if(Jf=3D=3D=3DIf){Jf=3DIf.replace(/&til=
e=3D\d+/,'');}=0A=
return =
Jf;};xmp.createNamespace("xmp.net");xmp.net.ScriptTagTransport=3Dfunction=
(Kf,Lf,Mf,Nf,Of){xmp.net.ScriptTagTransport.ctor.call(this,Kf,Lf,Mf,Nf,Of=
);this._logger=3Dnew =
xmp.util.internals.CategoryLogger('ScriptTagTransport');};xmp.DERIVE_CLAS=
S(xmp.net.AbstractTagTransport,xmp.net.ScriptTagTransport);xmp.net.Script=
TagTransport.prototype._initTag=3Dfunction(Pf){var =
Qf=3Ddocument.createElement('script');Qf.id=3Dthis._makeTagId();document.=
body.appendChild(Qf);Qf.src=3DPf;};xmp.net.ScriptTagTransport.prototype._=
finiTag=3Dfunction(){try{var =
Rf=3Ddocument.getElementById(this._makeTagId());if(Rf){document.body.remo=
veChild(Rf);}}=0A=
catch(e){this._logger.warn('Error removing tag with ID: =
'+this._makeTagId(),e);}};xmp.net.ScriptTagTransport.prototype._makeTagId=
=3Dfunction(){return'ScriptTagTransport'+'_'+this.getRequestId();};xmp.ne=
t.ScriptTagTransport.prototype._getLogger=3Dfunction(){return =
this._logger;};xmp.createNamespace("xmp.net");xmp.net.TransportTypes=3Dfu=
nction(){};xmp.net.TransportTypes.INVALID=3D-1;xmp.net.TransportTypes.XHR=
=3D0;xmp.net.TransportTypes.IFRAME=3D1;xmp.net.TransportTypes.SCRIPT=3D2;=
xmp.net.TransportTypes.FLASH_XHR=3D3;xmp.net.TransportTypes.MOCK=3D4;xmp.=
net.TransportTypes._BEGIN=3D-1;xmp.net.TransportTypes._END=3D4;xmp.net.Tr=
ansportTypes._calc=3Dfunction(Sf){var =
Tf=3Dxmp.net.TransportTypes;if((typeof =
Sf!=3D=3D'number')||(Sf<Tf._BEGIN)||(Sf>Tf._END)){return Tf._BEGIN;}=0A=
return Sf;};xmp.net.TransportTypes.stringify=3Dfunction(Uf){var =
Vf=3Dxmp.net.TransportTypes;var Wf=3DVf._calc(Uf);switch(Wf){case =
Vf.INVALID:return'invalid';case Vf.XHR:return'xhr';case =
Vf.IFRAME:return'iframe';case Vf.SCRIPT:return'script';case =
Vf.FLASH_XHR:return'flash';case =
Vf.MOCK:return'mock';default:return'invalid';}};xmp.net.TransportTypes.fr=
omString=3Dfunction(Xf){var =
Yf=3Dxmp.net.TransportTypes;switch(Xf){case'invalid':return =
Yf.INVALID;case'xhr':return Yf.XHR;case'iframe':return =
Yf.IFRAME;case'script':return Yf.SCRIPT;case'flash':return =
Yf.FLASH_XHR;case'mock':return Yf.MOCK;default:return =
Yf.INVALID;}};xmp.createNamespace("xmp.net");xmp.net.XhrTransport=3Dfunct=
ion(Zf,$f,ag,bg,cg){xmp.net.XhrTransport.ctor.call(this,Zf,$f,ag,bg,cg);t=
his._requestObject=3Dthis._createRequestObject();var =
dg=3Dthis;this._requestObject.onreadystatechange=3Dfunction(){dg._handleS=
tateChange();};};xmp.DERIVE_CLASS(xmp.net.AbstractTransport,xmp.net.XhrTr=
ansport);xmp.net.XhrTransport.prototype.request=3Dfunction(eg,fg){try{thi=
s._checkAndCreateTimer();var =
gg=3Dthis.getConfiguration().rootUrl+eg;this._requestObject.open('GET',gg=
);if(fg!=3D=3Dnull){for(var i=3D0;i<fg.length;i++){var =
hg=3Dfg[i];this._requestObject.setRequestHeader(hg.name,hg.value);}}=0A=
this._requestObject.send(null);this._startTimer();}=0A=
catch(e){this._stopTimer();this.getResponse()._setError(e);this._getManag=
er()._handleCompleteRequest(this);}};xmp.net.XhrTransport.prototype._comp=
leteResponse=3Dfunction(){try{this._stopTimer();if(this._requestObject.st=
atus!=3D=3D200){throw new Error('Status: '+this._requestObject.status);}=0A=
var =
ig=3Dthis._requestObject.responseText;this.getResponse()._setText(ig);if(=
this.getContentType()=3D=3D=3Dxmp.net.ContentTypes.JSON){var =
jg=3Dthis._getManager()._parseJson(ig);this.getResponse()._setJsonObject(=
jg);}}=0A=
catch(e){this.getResponse()._setError(e);}=0A=
this._getManager()._handleCompleteRequest(this);};xmp.net.XhrTransport.pr=
ototype._handleTimeout=3Dfunction(){this._requestObject.abort();this.getR=
esponse()._setTimedOut();this._getManager()._handleCompleteRequest(this);=
};xmp.net.XhrTransport.prototype._handleStateChange=3Dfunction(){if(this.=
_requestObject.readyState=3D=3D=3D4){this._completeResponse();}};xmp.net.=
XhrTransport._factories=3D[function(){return new =
XMLHttpRequest();},function(){return new =
ActiveXObject('Msxml2.XMLHTTP');},function(){return new =
ActiveXObject('Microsoft.XMLHTTP');}];xmp.net.XhrTransport._factory=3Dnul=
l;xmp.net.XhrTransport.prototype._createRequestObject=3Dfunction(){if(xmp=
.net.XhrTransport._factory!=3D=3Dnull){return =
xmp.net.XhrTransport._factory();}=0A=
for(var i=3D0;i<xmp.net.XhrTransport._factories.length;i++){try{var =
kg=3Dxmp.net.XhrTransport._factories[i];var =
lg=3Dkg();if(lg!=3D=3Dnull){xmp.net.XhrTransport._factory=3Dkg;return =
lg;}}=0A=
catch(e){continue;}}=0A=
xmp.net.XhrTransport._factory=3Dfunction(){throw new =
Error('XMLHttpRequest not =
supported.');};xmp.net.XhrTransport._factory();return null;};
------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/video/xmp/xmp_util.js

// Turner XMP, Release Build, =A9 2007 Turner Broadcasting System, Inc. =
A Time Warner Company.  File: xmp_util, Version: 0.1.524.1663

xmp.createNamespace("xmp.util.internals");xmp.util.internals.XMPError=3Df=
unction(aa,ba,ca,da){xmp.util.internals.XMPError.ctor.call(this);this.nam=
e=3Daa;this.context=3Dba;this.rawMessage=3Dca;this.extendedInfo=3Dda;this=
.innerError=3Dnull;this.setMessage();};xmp.DERIVE_CLASS(Error,xmp.util.in=
ternals.XMPError);xmp.util.internals.XMPError.prototype.setInnerError=3Df=
unction(e){this.innerError=3De;this.setMessage();};xmp.util.internals.XMP=
Error.prototype.setMessage=3Dfunction(){this.message=3D"Error Type:  =
"+this.name+((this.context)?"\n\nOccured While:  =
"+this.context:"")+((this.innerError)?"\n\nInner/Nested Error Type:  =
"+this.innerError.name:"")+"\n\nError Text:  "+this.rawMessage;var =
i=3D0;var =
ea=3D0;if(this.extendedInfo){ea=3Dthis.extendedInfo.length;for(i=3D0;i<ea=
;i++){this.message+=3D"\n\n"+this.extendedInfo[i].label+":  =
"+this.extendedInfo[i].text;}}
if(this.innerError&&this.innerError.extendedInfo){ea=3Dthis.innerError.ex=
tendedInfo.length;for(i=3D0;i<ea;i++){this.message+=3D"\n\n"+this.innerEr=
ror.extendedInfo[i].label+":  "+this.innerError.extendedInfo[i].text;}}
var =
fa=3D((this.innerError)?this.innerError:this);if(fa.number){this.message+=
=3D"\n\nError Number:  "+fa.number;}
if(fa.lineNumber){this.message+=3D"\n\nLine Number:  "+fa.lineNumber;}
if(fa.fileName){this.message+=3D"\n\nFile Name:  "+fa.fileName;}
if(fa.stack){this.message+=3D"\n\nStack =
Trace:\n\n"+fa.stack;}};xmp.util.internals.XMPError.prototype.addExtended=
Info=3Dfunction(ga){if(!this.extendedInfo){this.extendedInfo=3D[];}
this.extendedInfo.push(ga);this.setMessage();};xmp.util.internals.XMPErro=
r.prototype.getInnerError=3Dfunction(){return =
this.innerError;};xmp.util.internals.XMPError.prototype.getMessage=3Dfunc=
tion(){return =
this.message;};xmp.util.internals.XMPError.prototype.getContext=3Dfunctio=
n(){return =
this.context;};xmp.util.internals.XMPError.prototype.getExtendedInfo=3Dfu=
nction(){return =
this.extendedInfo;};xmp.createNamespace("xmp.util");xmp.util.PlayableNode=
=3Dfunction(){this._instanceNumber=3Dxmp.util.PlayableNode._instanceNumbe=
rCounter;xmp.util.PlayableNode._instanceNumberCounter++;this._valid=3Dfal=
se;this._init();};xmp.util.PlayableNode._instanceNumberCounter=3D0;xmp.ut=
il.PlayableNode._nodeOfTypeCounterMap=3D{};xmp.util.PlayableNode._staticI=
nit=3Dfunction(){xmp.util.PlayableNode._nodeOfTypeCounterMap=3D{};};xmp.u=
til.PlayableNode.prototype._init=3Dfunction(){this._internalId=3D'';this.=
_mime_type=3D'';this._uri=3D'';this._isUriAbsolute=3Dfalse;this._timeLimi=
tInSeconds=3D-1;this._endedFrame=3D'';this._streamingMode=3D'';this._mime=
Types=3D[];this._sizes=3D[];this._rules=3D[];this._nodeOwnsRules=3Dtrue;t=
his._nodeType=3Dnull;this._patternAddress=3Dnull;this._emptySlot=3Dfalse;=
this._data=3Dnull;this._metadataMap=3Dnull;this._nodeOwnsMetadataMap=3Dfa=
lse;this._metaResourceBundle=3Dnull;this._associatedResourceBundleType=3D=
'primary';this._valid=3Dtrue;};xmp.util.PlayableNode.prototype._clear=3Df=
unction(){var ha=3Dxmp.MapIterator.extractKeys(this._children);for(var =
i=3D0;i<ha.length;i++){var =
ia=3Dha[i];if(ia=3D=3D=3D'_instanceNumber'||ia=3D=3D=3D'_valid'){continue=
;}
if(typeof this[ia]=3D=3D=3D'function'){continue;}
delete this[ia];}
this._valid=3Dfalse;};xmp.util.PlayableNode.prototype.isValid=3Dfunction(=
){return =
this._valid;};xmp.util.PlayableNode.prototype.getNodeTypeName=3Dfunction(=
){return =
this.getNodeType().getTypeName();};xmp.util.PlayableNode.prototype.getNod=
eTypeId=3Dfunction(){return =
this.getNodeType().getId();};xmp.util.PlayableNode.prototype.isContentTyp=
e=3Dfunction(){return =
this.getNodeType().isContentType();};xmp.util.PlayableNode.prototype.isAd=
Type=3Dfunction(){return =
this.getNodeType().isAdType();};xmp.util.PlayableNode.prototype.isPromoTy=
pe=3Dfunction(){return =
this.getNodeType().isPromoType();};xmp.util.PlayableNode.prototype.getMet=
adata=3Dfunction(ja,ka){if(this._metadataMap=3D=3D=3Dnull){return ka;}
return =
this._metadataMap._get(ja,ka);};xmp.util.PlayableNode.prototype.setMetada=
ta=3Dfunction(la,ma){this._swivelMetadataMapReferenceBeforeModification()=
;this._metadataMap._set(la,ma);};xmp.util.PlayableNode.prototype.getMetaR=
esource=3Dfunction(na){return =
this._metaResourceBundle.getMetaResource(na);};xmp.util.PlayableNode.prot=
otype.setMetaResource=3Dfunction(oa){this._metaResourceBundle.setMetaReso=
urce(oa);};xmp.util.PlayableNode.prototype.getMetaResourceBundle=3Dfuncti=
on(){return =
this._metaResourceBundle;};xmp.util.PlayableNode.prototype.reSetMetaResou=
rceBundle=3Dfunction(pa){this._metaResourceBundle=3Dpa;};xmp.util.Playabl=
eNode.prototype.getPlayableData=3Dfunction(){return =
this._data;};xmp.util.PlayableNode.prototype.getBestId=3Dfunction(){var =
id=3Dthis.getPlayableData().getMetaResourceId();if(id.length=3D=3D=3D0){i=
d=3Dthis.getPlayableData().getCompositeMetaResourceId();}
if(id.length=3D=3D=3D0){id=3Dthis._getInternalId();}
return =
id;};xmp.util.PlayableNode.safeGetBestId=3Dfunction(qa){try{if(!qa){retur=
n"NULL/UNDEFINED";}
return qa.getBestId();}
catch(e){return"UNKNOWN/ERROR";}};xmp.util.PlayableNode.prototype.getUniq=
ueId=3Dfunction(){return =
this._getHashKey();};xmp.util.PlayableNode.prototype.getMimeType=3Dfuncti=
on(){return =
this._mime_type;};xmp.util.PlayableNode.prototype.setMimeType=3Dfunction(=
ra){xmp.validateArguments(arguments,[xmp.STRING_TYPE],"PlayableNode.setMi=
meType");if(ra=3D=3D=3Dnull||ra.length=3D=3D=3D0){throw new =
xmp.util.internals.InvalidArgsError("Invalid playable node mime type =
(null or empty).");}
this._mime_type=3Dra;};xmp.util.PlayableNode.prototype.getURI=3Dfunction(=
){return =
this._uri;};xmp.util.PlayableNode.prototype.setURI=3Dfunction(sa){xmp.val=
idateArguments(arguments,[xmp.STRING_TYPE],"PlayableNode.setURI");if(sa=3D=
=3D=3Dnull||sa.length=3D=3D=3D0){throw new =
xmp.util.internals.InvalidArgsError("Invalid playable node uri (null or =
empty).");}
this._uri=3Dsa;};xmp.util.PlayableNode.prototype.setUriAbsolute=3Dfunctio=
n(ta){this._isUriAbsolute=3Dta;};xmp.util.PlayableNode.prototype.isUriAbs=
olute=3Dfunction(){return =
this._isUriAbsolute;};xmp.util.PlayableNode.prototype.getTimeLimitInSecon=
ds=3Dfunction(){return =
this._timeLimitInSeconds;};xmp.util.PlayableNode.prototype.setTimeLimitIn=
Seconds=3Dfunction(ua){xmp.validateArguments(arguments,[xmp.NUMBER_TYPE],=
"PlayableNode.setTimeLimitInSeconds");if(ua<-1){throw new =
xmp.util.internals.InvalidArgsError("Invalid time limit (cannot be less =
than -1).");}
this._timeLimitInSeconds=3Dua;};xmp.util.PlayableNode.prototype.getNodeTy=
pe=3Dfunction(){return =
this._nodeType;};xmp.util.PlayableNode.prototype.getRuleCount=3Dfunction(=
){return =
this._rules.length;};xmp.util.PlayableNode.prototype.getRule=3Dfunction(v=
a){xmp.validateArguments(arguments,[xmp.NUMBER_TYPE],"PlayableNode.getChi=
ld");return =
this._rules[va];};xmp.util.PlayableNode.prototype.addRule=3Dfunction(wa){=
xmp.validateArguments(arguments,[xmp.OBJECT_TYPE],"PlayableNode.addRule")=
;if(wa=3D=3D=3Dnull){throw new =
xmp.util.internals.InvalidArgsError("Invalid rule context (null).");}
this._swivelRuleArrayReferenceBeforeModification();return =
this._rules.push(wa);};xmp.util.PlayableNode.prototype.insertRule=3Dfunct=
ion(xa,ya){xmp.validateArguments(arguments,[xmp.OBJECT_TYPE,xmp.NUMBER_TY=
PE],"PlayableNode.insertRule");if(xa=3D=3D=3Dnull){throw new =
xmp.util.internals.InvalidArgsError("Invalid rule context (null).");}
this._swivelRuleArrayReferenceBeforeModification();this._rules.splice(ya,=
0,xa);return =
this._rules.length;};xmp.util.PlayableNode.prototype.removeRule=3Dfunctio=
n(za){xmp.validateArguments(arguments,[xmp.NUMBER_TYPE],"PlayableNode.rem=
oveRule");this._swivelRuleArrayReferenceBeforeModification();this._rules.=
splice(za,1);return =
this._rules.length;};xmp.util.PlayableNode.prototype._getRuleArrayReferen=
ce=3Dfunction(){return =
this._rules;};xmp.util.PlayableNode.prototype._swivelRuleArrayReferenceBe=
foreModification=3Dfunction(){if(!this._nodeOwnsRules){this._nodeOwnsRule=
s=3Dtrue;this._rules=3D[];if(this.getNodeType()!=3D=3Dnull){this._rules=3D=
this._rules.concat(this.getNodeType()._getRuleContextArray());}}};xmp.uti=
l.PlayableNode.prototype._swivelMetadataMapReferenceBeforeModification=3D=
function(){if(!this._nodeOwnsMetadataMap){this._nodeOwnsMetadataMap=3Dtru=
e;var Aa=3Dthis._metadataMap;this._metadataMap=3Dnew =
xmp.util.internals.MetadataMap(false);if(Aa!=3D=3Dnull){this._metadataMap=
._reInitialize(Aa._getClonedWrappedMetadata());}}};xmp.util.PlayableNode.=
prototype._setNodeType=3Dfunction(Ba){this._internalId=3Dthis._makeIntern=
alId(Ba);this._nodeType=3DBa;this._rules=3Dthis.getNodeType()._getRuleCon=
textArray();this._nodeOwnsRules=3Dfalse;this._metadataMap=3Dthis.getNodeT=
ype()._getMetadataMapRef();this._nodeOwnsMetadataMap=3Dfalse;this._metaRe=
sourceBundle=3Dthis.getNodeType().getMetaResourceBundle().clone();};xmp.u=
til.PlayableNode.prototype._getInstanceNumber=3Dfunction(){return =
this._instanceNumber;};xmp.util.PlayableNode.prototype._getHashKey=3Dfunc=
tion(){return('PlayableNode_'+this._instanceNumber);};xmp.util.PlayableNo=
de.prototype._getPatternAddress=3Dfunction(){return =
this._patternAddress;};xmp.util.PlayableNode.prototype._setPatternAddress=
=3Dfunction(id){this._patternAddress=3Did;};xmp.util.PlayableNode.prototy=
pe._isEmptySlot=3Dfunction(){return =
this._emptySlot;};xmp.util.PlayableNode.prototype._mutateEmptySlot=3Dfunc=
tion(Ca){this._emptySlot=3DCa;};xmp.util.PlayableNode.prototype._getInter=
nalId=3Dfunction(){return =
this._internalId;};xmp.util.PlayableNode.prototype._linkData=3Dfunction(D=
a,Ea){this._data=3DDa._getPlayableData(Ea);};xmp.util.PlayableNode.protot=
ype._setData=3Dfunction(Fa){this._data=3DFa;};xmp.util.PlayableNode.proto=
type._makeInternalId=3Dfunction(Ga){var =
Ha=3Dxmp.util.PlayableNode._getNodeOfTypeCount(Ga.getTypeName());var =
Ia=3D8;var id=3DGa.getTypeName()+'_'+xmp.zeroPad(Ha,Ia);return =
id;};xmp.util.PlayableNode._getNodeOfTypeCount=3Dfunction(Ja){var =
Ka=3Dxmp.util.PlayableNode._nodeOfTypeCounterMap[Ja];if(typeof =
Ka=3D=3D=3D'undefined'){Ka=3D0;}
else{Ka++;}
xmp.util.PlayableNode._nodeOfTypeCounterMap[Ja]=3DKa;return =
Ka;};xmp.util.PlayableNode.prototype.getStreamingMode=3Dfunction(){return=
 =
this._streamingMode;};xmp.util.PlayableNode.prototype.setStreamingMode=3D=
function(La){xmp.validateArguments(arguments,[xmp.STRING_TYPE],"PlayableN=
ode.setStreamingMode");var Ma=3Dxmp.PlayerPolicy.getStreamingModes();var =
Na=3DMa.length;for(var =
i=3D0;i<Na;i++){if(Ma[i]=3D=3D=3DLa){this._streamingMode=3DLa;return;}}
throw new xmp.util.internals.InvalidArgsError("Invalid playable node =
streaming mode \""+La+"\".  Expected "+Ma.join(", =
")+".");};xmp.util.PlayableNode.prototype.getMimeTypes=3Dfunction(){retur=
n =
this._mimeTypes;};xmp.util.PlayableNode.prototype.setMimeTypes=3Dfunction=
(Oa){xmp.validateArguments(arguments,[xmp.OBJECT_TYPE],"PlayableNode.setM=
imeTypes");if(Oa.length=3D=3D=3D0){throw new =
xmp.util.internals.InvalidArgsError("Invalid playable node mime types.  =
Expeced at least 1 mime type.");}
this._mimeTypes=3DOa;};xmp.util.PlayableNode.prototype.getSizes=3Dfunctio=
n(){return =
this._sizes;};xmp.util.PlayableNode.prototype.setSizes=3Dfunction(Pa){xmp=
.validateArguments(arguments,[xmp.OBJECT_TYPE],"PlayableNode.setSizes");i=
f(Pa.length=3D=3D=3D0){throw new =
xmp.util.internals.InvalidArgsError("Invalid playable node mime types.  =
Expeced at least 1 size.");}
this._sizes=3DPa;};xmp.util.PlayableNode.prototype.getAssociatedResourceB=
undleType=3Dfunction(){return =
this._associatedResourceBundleType;};xmp.util.PlayableNode.prototype.setA=
ssociatedResourceBundleType=3Dfunction(Qa){if(!xmp.isNonEmptyString(Qa)){=
throw new xmp.util.internals.InvalidArgsError("Invalid associated =
resource bundle type - must be a non-empty string.");}
this._associatedResourceBundleType=3DQa;};xmp.createNamespace("xmp.util.i=
nternals");xmp.util.internals.InvalidArgsError=3Dfunction(Ra){xmp.util.in=
ternals.InvalidArgsError.ctor.call(this,"InvalidArgsError",null,Ra);};xmp=
.DERIVE_CLASS(xmp.util.internals.XMPError,xmp.util.internals.InvalidArgsE=
rror);xmp.createNamespace("xmp.util");xmp.util.AbstractLoggerListener=3Df=
unction(Sa){this.setLogLevel(Sa);};xmp.util.AbstractLoggerListener.protot=
ype.handleLog=3Dfunction(Ta,Ua,Va,Wa){if(Ta<=3Dthis.getLogLevel()){if(typ=
eof Wa!=3D=3D'undefined'){Va+=3D(" -- Error: =
"+xmp.extractErrorMessage(Wa));}
this.handleLogMessage(Ta,Ua,Va);}};xmp.util.AbstractLoggerListener.protot=
ype.handleLogMessage=3Dfunction(Xa,Ya,Za){throw new Error("Subclass must =
implement =
handleLogMessage");};xmp.util.AbstractLoggerListener.prototype.getLogLeve=
l=3Dfunction(){return =
this._logLevel;};xmp.util.AbstractLoggerListener.prototype.setLogLevel=3D=
function($a){var =
ab=3Dxmp.util.LogLevels._calc($a);this._logLevel=3Dab;xmp.util.Logger.get=
Instance().listenerChanged();};xmp.createNamespace("xmp.util");xmp.util.C=
allback=3Dfunction(id,bb,db){xmp.validateArguments(arguments,[xmp.STRING_=
TYPE,xmp.FUNCTION_TYPE,xmp.OBJECT_TYPE],"Callback.ctor");if(id=3D=3D=3Dnu=
ll||id.length=3D=3D=3D0||bb=3D=3D=3Dnull){throw new =
xmp.util.internals.InvalidArgsError("The 'id' argument must be =
non-empty, and the 'theMethod' argument must be non-null.");}
this._id=3Did;this._theMethod=3Dbb;this._theContextObject=3D(!db)?null:db=
;this._metadataMap=3Dnew =
xmp.util.internals.MetadataMap(false);this._addThisToCallback=3Dtrue;};xm=
p.util.Callback.prototype.setAddThisToCallback=3Dfunction(eb){this._addTh=
isToCallback=3Deb;};xmp.util.Callback.prototype.getId=3Dfunction(){return=
 =
this._id;};xmp.util.Callback.prototype.call=3Dfunction(){this._callCore(t=
his._copyIntrinsicArgs(arguments));};xmp.util.Callback.prototype.callAsyn=
ch=3Dfunction(fb){this.callAsynchEx(5,fb);};xmp.util.Callback.prototype.c=
allAsynchEx=3Dfunction(gb,hb){var ib=3Dnew =
xmp.util.Callback('Callback.callAsynchEx',this._handleAsynchCallTimer,thi=
s);ib.setMetadata('relayCb',this);ib.setMetadata('args',hb);xmp.util.Time=
r.doSimpleCallbackEx(gb,ib);};xmp.util.Callback.prototype.getMetadata=3Df=
unction(jb,kb){return =
this._metadataMap._get(jb,kb);};xmp.util.Callback.prototype.setMetadata=3D=
function(lb,mb){this._metadataMap._set(lb,mb);};xmp.util.Callback.prototy=
pe._copyIntrinsicArgs=3Dfunction(nb){var ob=3D[];for(var =
i=3D0;i<nb.length;i++){ob.push(nb[i]);}
return ob;};xmp.util.Callback.prototype._callCore=3Dfunction(pb){var =
qb=3D[];if(this._addThisToCallback){qb.push(this);}
qb=3Dqb.concat(pb);this._theMethod.apply(this._theContextObject,qb);};xmp=
.util.Callback.prototype._handleAsynchCallTimer=3Dfunction(rb){var =
sb=3Drb.getMetadata('relayCb',xmp.util.internals.MetadataMap.defaultObj);=
var =
tb=3Drb.getMetadata('args',xmp.util.internals.MetadataMap.defaultObj);sb.=
_callCore(tb);};xmp.createNamespace("xmp.util");xmp.util.Cookie=3Dfunctio=
n(){};xmp.util.Cookie.getCookieDomain=3Dfunction(){return =
window.location.hostname;};xmp.util.Cookie.getTopLevelCookieDomain=3Dfunc=
tion(){var ub=3Dxmp.util.Cookie.getCookieDomain();var =
vb=3Dub.indexOf('.');if(vb>-1){ub=3Dub.substr(vb);}
return ub;};xmp.util.Cookie.canUse=3Dfunction(){var =
wb=3Dfalse;if(document.cookie=3D=3D=3D''){document.cookie=3D'WM_acceptsCo=
okies=3Dyes';if(document.cookie.indexOf('WM_acceptsCookies=3Dyes')!=3D=3D=
-1){wb=3Dtrue;}}else{wb=3Dtrue;}
return(wb);};xmp.util.Cookie.write=3Dfunction(xb,yb,zb,Ab,Bb,Cb){if(xmp.u=
til.Cookie.canUse()){var Db=3D0;var =
Eb=3D(navigator&&navigator.appName&&(navigator.appName=3D=3D=3D'Netscape'=
)&&navigator.appVersion&&(parseInt(navigator.appVersion,0)=3D=3D=3D2))?fa=
lse:true;if(zb&&Eb){if((typeof(zb)=3D=3D=3D'string')&&Date.parse(zb)){Db=3D=
zb;}else if(typeof(zb)=3D=3D=3D'number'){Db=3D(new Date((new =
Date()).getTime()+zb*3600000)).toGMTString();}}
document.cookie=3Dxb+'=3D'+escape(yb)+((Db)?(';expires=3D'+Db):'')+((Ab)?=
';path=3D'+path:'')+((Bb)?';domain=3D'+domain:'')+((Cb&&(Cb=3D=3D=3Dtrue)=
)?'; =
secure':'');}};xmp.util.Cookie.read=3Dfunction(Fb){if(document.cookie=3D=3D=
=3D''){return false;}else{var Gb,lastChar;var =
Hb=3Ddocument.cookie;Gb=3DHb.indexOf(Fb);var =
Ib=3DGb+Fb.length;if((Gb!=3D=3D-1)&&(Hb.charAt(Ib)=3D=3D=3D'=3D')){Gb+=3D=
Fb.length+1;lastChar=3DHb.indexOf(';',Gb);if(lastChar=3D=3D=3D-1){lastCha=
r=3DHb.length;}
return unescape(Hb.substring(Gb,lastChar));}else{return =
false;}}};xmp.util.Cookie.kill=3Dfunction(Jb,Kb,Lb){var =
Mb=3Dxmp.util.Cookie.read(Jb);if(Mb){document.cookie=3DJb+'=3D'+Mb+'; =
expires=3DFri, 13-Apr-1970 00:00:00 =
GMT'+((Kb)?';path=3D'+path:'')+((Lb)?';domain=3D'+domain:'');}};xmp.Criti=
calException=3Dfunction(Nb,Ob,Pb,Qb,Rb){this._code=3Dxmp.XmpErrorCodes._c=
alc(Nb);var Sb=3DQb+" CRTICAL ERROR CODE: =
"+this.getCriticalErrorCode().toString()+": =
"+this.getCriticalErrorCodeString();xmp.CriticalException.ctor.call(this,=
Ob,Pb,Sb,Rb);};xmp.DERIVE_CLASS(xmp.util.internals.XMPError,xmp.CriticalE=
xception);xmp.CriticalException.prototype.getCriticalErrorCode=3Dfunction=
(){return =
this._code;};xmp.CriticalException.prototype.getCriticalErrorCodeString=3D=
function(){return =
xmp.XmpErrorCodes.stringify(this._code);};xmp.CriticalException.createCri=
ticalException=3Dfunction(Tb,Ub,Vb){return new =
xmp.CriticalException(Tb,'CriticalException',Ub,Vb);};xmp.FatalException=3D=
function(Wb,Xb,Yb,Zb){this._code=3Dxmp.XmpErrorCodes._calc(Wb);var =
$b=3DZb+" FATAL ERROR CODE: "+this.getFatalErrorCode().toString()+": =
"+this.getFatalErrorCodeString();xmp.FatalException.ctor.call(this,Xb,Yb,=
$b);};xmp.DERIVE_CLASS(xmp.util.internals.XMPError,xmp.FatalException);xm=
p.FatalException.prototype.getFatalErrorCode=3Dfunction(){return =
this._code;};xmp.FatalException.prototype.getFatalErrorCodeString=3Dfunct=
ion(){return =
xmp.XmpErrorCodes.stringify(this._code);};xmp.FatalException.createFatalE=
xception=3Dfunction(ac,bc,cc){return new =
xmp.FatalException(ac,'FatalException',bc,cc);};xmp.createNamespace("xmp.=
util");xmp.util.FlashUtility=3Dfunction(){};xmp.util.FlashUtility.buildFS=
CommandScript=3Dfunction(dc,ec,fc){var =
gc=3Ddocument.createElement('script');var =
hc=3D'';if(xmp.isIEBrowser()){gc.defer=3Dtrue;gc.event=3D'FSCommand(comma=
nd,args)';gc.htmlFor=3Dec;hc=3Dfc;gc.text=3Dhc;dc.insertBefore(gc,null);}=

else{hc=3D"function "+ec+"_DoFSCommand(command, args) { "+fc+" =
}";gc.innerHTML=3Dhc;dc.insertBefore(gc,null);}};xmp.util.FlashUtility.no=
rmalizeCommand=3Dfunction(ic){var =
re=3D/^FSCommand:(.*)/;if(ic!=3D=3Dnull&&xmp.isDefined(ic)&&re.test(ic)=3D=
=3D=3Dtrue){ic=3Dic.match(re)[1];}
return =
ic;};xmp.util.FlashUtility.splitFSCommandData=3Dfunction(jc,kc){if(kc<1){=
throw new xmp.util.internals.InvalidArgsError('Must call fn with "count" =
>=3D 1');}
if(kc=3D=3D=3D1){return[jc];}
var lc=3Djc.split(xmp.DELIMITER);if(lc.length=3D=3D=3Dkc){return lc;}
if(lc.length<kc){throw new xmp.util.internals.InvalidArgsError('Expected =
'+kc.toString()+' arguments, got '+lc.length.toString());}
var mc=3Dlc.slice(0,kc-1);var nc=3Dlc.slice(kc-1);var =
oc=3Dnc.join(xmp.DELIMITER);mc.push(oc);return =
mc;};xmp.util.FlashUtility.externalInterfaceDecode=3Dfunction(pc){if(pc.i=
ndexOf('&xmp_')=3D=3D=3D-1){return pc;}
var =
qc=3Dpc;qc=3Dqc.replace(/&xmp_custom_lt;/g,'<');qc=3Dqc.replace(/&xmp_cus=
tom_gt;/g,'>');qc=3Dqc.replace(/&xmp_lit_lf;/g,'\\n');qc=3Dqc.replace(/&x=
mp_lit_cr;/g,'\\r');qc=3Dqc.replace(/&xmp_lit_tab;/g,'\\t');qc=3Dqc.repla=
ce(/&xmp_lit_bs;/g,'\\\\');qc=3Dqc.replace(/&xmp_lit_apos;/g,'\\\'');qc=3D=
qc.replace(/&xmp_lit_quot;/g,'\\\"');return =
qc;};xmp.createNamespace("xmp.util");xmp.util.JsonPath=3Dfunction(rc,sc){=
this._nextObj=3Drc;this._nextPath=3Dsc;this._keepEvaluating=3Dtrue;};xmp.=
util.JsonPath.evaluate=3Dfunction(tc,uc){var vc=3Dnew =
xmp.util.JsonPath(tc,uc);vc._evalInternal();return =
vc._getResult();};xmp.util.JsonPath.prototype._getResult=3Dfunction(){if(=
!this._keepEvaluating||!this._isSNB(this._nextObj)){return null;}
return =
this._nextObj.toString();};xmp.util.JsonPath.prototype._calcNextObj=3Dfun=
ction(wc){if(typeof =
this._nextObj[wc]=3D=3D=3D'undefined'){this._keepEvaluating=3Dfalse;retur=
n;}
this._nextObj=3Dthis._nextObj[wc];};xmp.util.JsonPath.prototype._evalInte=
rnal=3Dfunction(){while(this._keepEvaluating&&this._nextPath.length>0){va=
r xc=3D'';for(var i=3D0;i<this._nextPath.length;i++){var =
c=3Dthis._nextPath.charAt(i);if(c=3D=3D=3D'.'){this._calcNextObj(xc);this=
._calcNextPath(xc);break;}
else =
if(c=3D=3D=3D'['){if(xc.length>0){this._calcNextObj(xc);this._calcNextPat=
h(xc);break;}
var =
yc=3Dthis._getBracketExpression();if(yc.charAt(0)=3D=3D=3D'@'){this._doAr=
rayMatch(yc.substr(1));}
else if(xmp.isNumber(yc,false)){var =
zc=3DparseInt(yc,0);if(zc>=3Dthis._nextObj.length){this._keepEvaluating=3D=
false;break;}
this._nextObj=3Dthis._nextObj[zc];}
else{this._calcNextObj(this._unQuote(yc));}
break;}
else{xc+=3Dc;if(i=3D=3D=3D(this._nextPath.length-1)){this._calcNextObj(xc=
);this._calcNextPath(xc);}}}}};xmp.util.JsonPath.prototype._unQuote=3Dfun=
ction(Ac){if(Ac.length>1){if(Ac.charAt(0)=3D=3D=3D'\''||Ac.charAt(0)=3D=3D=
=3D'\"'){return this._stripFirstAndLast(Ac);}}
return =
Ac;};xmp.util.JsonPath.prototype._stripFirstAndLast=3Dfunction(Bc){var =
Cc=3DBc.substr(1);Cc=3DCc.substr(0,Cc.length-1);return =
Cc;};xmp.util.JsonPath.prototype._getBracketExpression=3Dfunction(){var =
be=3D'';for(var i=3D0;i<this._nextPath.length;i++){var =
cb=3Dthis._nextPath.charAt(i);be+=3Dcb;if(cb=3D=3D=3D']'){break;}}
this._calcNextPath(be);return =
this._stripFirstAndLast(be);};xmp.util.JsonPath.prototype._doArrayMatch=3D=
function(Dc){var Ec=3DDc.split('=3D');var Fc=3DEc[0];var =
Gc=3Dthis._unQuote(Ec[1]);var Hc=3Dfalse;for(var =
i=3D0;i<this._nextObj.length;i++){var Ic=3Dthis._nextObj[i];if(typeof =
Ic[Fc]=3D=3D=3D'undefined'){continue;}
if(!this._isSNB(Ic[Fc])){this._keepEvaluating=3Dfalse;break;}
if(Ic[Fc].toString()=3D=3D=3DGc){this._nextObj=3DIc;Hc=3Dtrue;break;}}
if(!Hc){this._keepEvaluating=3Dfalse;}};xmp.util.JsonPath.prototype._isSN=
B=3Dfunction(Jc){var Kc=3D(typeof =
Jc);return(Kc=3D=3D=3D'string'||Kc=3D=3D=3D'boolean'||Kc=3D=3D=3D'number'=
);};xmp.util.JsonPath.prototype._calcNextPath=3Dfunction(Lc){if(Lc.length=
=3D=3D=3Dthis._nextPath.length){this._nextPath=3D'';}
else{this._nextPath=3Dthis._nextPath.substr(Lc.length);if(this._nextPath.=
indexOf('.')=3D=3D=3D0){this._nextPath=3Dthis._nextPath.substr(1);}}};xmp=
.createNamespace("xmp.util");xmp.util.Latch=3Dfunction(Mc,Nc){this.cbStat=
e=3D{};this.cbComplete=3D{};for(var =
i=3D0;i<Mc.length;i++){this.cbComplete[Mc[i]]=3Dfalse;}
this.completionCb=3DNc;};xmp.util.Latch.prototype.called=3Dfunction(Oc,Pc=
){this.cbComplete[Oc]=3Dtrue;this.cbState[Oc]=3DPc;var Qc=3Dtrue;var =
Rc=3Dnull;for(Rc=3Dxmp.MapIterator.create(this.cbComplete);Rc.hasNext();R=
c.next()){Qc=3DQc&&Rc.currentValue();if(!Qc){break;}}
if(Qc){for(Rc=3Dxmp.MapIterator.create(this.cbState);Rc.hasNext();Rc.next=
()){this.completionCb.setMetadata(Rc.currentKey(),Rc.currentValue());}
this.completionCb.call();}};xmp.util.Latch.prototype.clear=3Dfunction(){f=
or(var =
Sc=3Dxmp.MapIterator.create(this.cbComplete);Sc.hasNext();Sc.next()){Sc.u=
pdateCurrentValue(false);}
delete =
this.cbState;this.cbState=3D{};};xmp.util.Latch.prototype.addCbName=3Dfun=
ction(Tc){this.cbComplete[Tc]=3Dfalse;};xmp.createNamespace("xmp.util");x=
mp.util.Loadable=3Dfunction(){this._loaded=3Dfalse;this._rawData=3Dnull;t=
his._errorMessage=3Dnull;};xmp.util.Loadable.prototype._setRawData=3Dfunc=
tion(Uc){this._rawData=3DUc;this._loaded=3Dtrue;};xmp.util.Loadable.proto=
type._setErrorMessage=3Dfunction(Vc){this._errorMessage=3DVc;this._loaded=
=3Dfalse;};xmp.util.Loadable.prototype.isLoaded=3Dfunction(){return =
this._loaded;};xmp.util.Loadable.prototype.isError=3Dfunction(){return(th=
is._errorMessage!=3D=3Dnull);};xmp.util.Loadable.prototype.getErrorMessag=
e=3Dfunction(){return =
this._errorMessage;};xmp.util.Loadable.prototype.getError=3Dfunction(){re=
turn(new =
xmp.util.LoadableDataException(this.isError()?this._errorMessage:'NO =
ERROR'));};xmp.util.Loadable.prototype.getDataObject=3Dfunction(){if(this=
._rawData=3D=3D=3Dnull||!this.isLoaded()){throw new Error("Loadable not =
loaded yet for node: "+this.getLoadableId());}
return =
this._rawData;};xmp.util.Loadable.prototype.getLoadableId=3Dfunction(){th=
row new Error('Subclass must =
override!');};xmp.util.LoadableDataException=3Dfunction(Wc){xmp.util.Load=
ableDataException.ctor.call(this,"LoadableDataException",null,Wc);};xmp.D=
ERIVE_CLASS(xmp.util.internals.XMPError,xmp.util.LoadableDataException);x=
mp.createNamespace("xmp.util");xmp.util.Loader=3Dfunction(){this.loadedUr=
is=3D[];};xmp.util.Loader.instance=3Dnull;xmp.util.Loader.getInstance=3Df=
unction(){if(xmp.util.Loader.instance=3D=3D=3Dnull){xmp.util.Loader.insta=
nce=3Dnew xmp.util.Loader();}
return =
xmp.util.Loader.instance;};xmp.util.Loader.prototype.loadModule=3Dfunctio=
n(Xc,cb){if(!Xc){return;}
var =
Yc=3DXc.replace(/\./g,"/")+".js";this.loadUri(Yc,Xc,cb);};xmp.util.Loader=
.prototype.loadUri=3Dfunction(Zc,$c,cb){if(!this.loadedUris[Zc]){var =
ad=3Dxmp.net.AjaxRequestManager.getInstance();var bd=3Dnew =
xmp.util.Callback('loader.getText',this.callback,this);bd.setMetadata("cb=
",cb);bd.setMetadata("uri",Zc);ad.request(Zc,bd,$c,Zc,xmp.net.ContentType=
s.TEXT);}else{cb(Zc,true);}};xmp.util.Loader.prototype.callback=3Dfunctio=
n(cd,dd){var =
ed=3Dxmp.net.AjaxRequestManager.getInstance();ed._parseJavaScript(dd.getT=
ext());var fd=3Dcd.getMetadata("uri",'');var =
cb=3Dcd.getMetadata("cb",function(fd){});if(fd=3D=3D=3D''||cb=3D=3D=3Dfun=
ction(fd){}){throw new xmp.util.LoadException("uri: "+fd+" cb: "+cb);}
this.loadedUris[fd]=3Dtrue;cb(fd,false);};xmp.util.Loader.prototype.flush=
Cache=3Dfunction(){this.loadedUris=3D[];};xmp.util.LoadException=3Dfuncti=
on(gd){this.name=3D"LoadException";this.message=3Dgd;};xmp.DERIVE_CLASS(E=
rror,xmp.util.LoadException);xmp.createNamespace("xmp.util");xmp.util.Log=
Configurator=3Dfunction(){};xmp.util.LogConfigurator.commonExcludedCatego=
ries=3D['AjaxRequestManager_adPolicy','AjaxRequestManager_ruleClasses','A=
jaxRequestManager_dhtmlObject','AjaxRequestManager_videoContentMeta','Fil=
eRequestHandle','BVPOmnitureTriggerCommand','NullTrigger','PlayerPolicy',=
'MediaPlayer','ContextualUrlStrategy','BandwidthRecorder','SetImageTrigge=
rCommand','AdServerPageController'];xmp.util.LogConfigurator._cfg=3D{'Emb=
edded':{clazz:'xmp.baseplayer.EmbeddedConsoleLoggerListener',exCats:[],h:=
400,w:1000,cId:null}};xmp.util.LogConfigurator._configured=3Dfalse;xmp.ut=
il.LogConfigurator.configure=3Dfunction(hd){if(xmp.util.LogConfigurator._=
configured){return;}
xmp.util.LogConfigurator._configured=3Dtrue;hd=3D(hd)?hd:null;if(hd!=3D=3D=
null){xmp.util.LogConfigurator.merge(hd,xmp.util.LogConfigurator._cfg);}
var jd=3Dxmp.getQueryArg('xmpLogCfg');if(jd!=3D=3Dnull){var =
kd=3Dxmp.net.AjaxRequestManager.getInstance()._parseJson(xmp.Base64.decod=
e(jd));xmp.util.LogConfigurator.merge(kd,xmp.util.LogConfigurator._cfg);}=

var =
ld=3Dxmp.MapIterator.extractKeys(xmp.util.LogConfigurator._cfg);for(var =
i=3D0;i<ld.length;i++){var md=3Dld[i];var =
nd=3Dxmp.util.LogConfigurator._cfg[md];var =
od=3Dxmp.getNamespacedMethod(nd.clazz+'.create');od(nd);}};xmp.util.LogCo=
nfigurator.merge=3Dfunction(pd,qd){var =
rd=3Dxmp.trueTypeOf(pd);if(!(rd=3D=3D=3D'Object')){throw new =
Error('Invalid top-level merge type');}
var sd=3Dxmp.MapIterator.extractKeys(pd);for(var =
i=3D0;i<sd.length;i++){var td=3Dsd[i];var ud=3Dpd[td];var =
vd=3Dxmp.trueTypeOf(ud);if(!(vd=3D=3D=3D'Null'||vd=3D=3D=3D'String'||vd=3D=
=3D=3D'Boolean'||vd=3D=3D=3D'Number'||vd=3D=3D=3D'Object'||vd=3D=3D=3D'Ar=
ray')){throw new Error('Invalid merge type');}
var =
wd=3Dxmp.trueTypeOf(qd[td]);if(wd!=3D=3D'Undefined'&&wd!=3D=3Dvd){throw =
new Error('Mismatched types during merge');}
if(vd=3D=3D=3D'Object'){if(wd=3D=3D=3D'Undefined'){qd[td]=3D{};}
xmp.util.LogConfigurator.merge(ud,qd[td]);}
else{qd[td]=3Dud;}}};xmp.createNamespace("xmp.util");xmp.util.LogLevels=3D=
function(){};xmp.util.LogLevels.NONE=3D0;xmp.util.LogLevels.FATAL=3D1;xmp=
.util.LogLevels.CRITICAL=3D2;xmp.util.LogLevels.WARN=3D3;xmp.util.LogLeve=
ls.INFO=3D4;xmp.util.LogLevels.DEBUG=3D5;xmp.util.LogLevels._BEGIN=3D0;xm=
p.util.LogLevels._END=3D5;xmp.util.LogLevels._calc=3Dfunction(xd){var =
yd=3Dxmp.util.LogLevels;if((typeof =
xd!=3D=3D'number')||(xd<yd._BEGIN)||(xd>yd._END)){return yd._BEGIN;}
return xd;};xmp.util.LogLevels.stringify=3Dfunction(zd){var =
Ad=3Dxmp.util.LogLevels;var Bd=3DAd._calc(zd);switch(Bd){case =
Ad.NONE:return'none';case Ad.FATAL:return'fatal';case =
Ad.CRITICAL:return'critical';case Ad.WARN:return'warn';case =
Ad.INFO:return'info';case =
Ad.DEBUG:return'debug';default:return'none';}};xmp.util.LogLevels.fromStr=
ing=3Dfunction(Cd){var =
Dd=3Dxmp.util.LogLevels;switch(Cd){case'none':return =
Dd.NONE;case'fatal':return Dd.FATAL;case'critical':return =
Dd.CRITICAL;case'warn':return Dd.WARN;case'info':return =
Dd.INFO;case'debug':return Dd.DEBUG;default:return =
Dd.NONE;}};xmp.util.Logger=3Dfunction(){this._levelRef=3Dxmp.util.LogLeve=
ls;this._commonLogLevel=3Dthis._levelRef.NONE;this._listeners=3D[];this._=
filteredCategoryMap=3D{};};xmp.util.Logger._singeltonInstance=3Dnull;xmp.=
util.Logger.getInstance=3Dfunction(){if(xmp.util.Logger._singeltonInstanc=
e=3D=3D=3Dnull){xmp.util.Logger._singeltonInstance=3Dnew =
xmp.util.Logger();}
return =
xmp.util.Logger._singeltonInstance;};xmp.util.Logger.prototype.addListene=
r=3Dfunction(Ed){if(Ed){for(var =
i=3D0;i<this._listeners.length;i++){if(this._listeners[i]=3D=3D=3DEd){ret=
urn;}}
this._listeners.push(Ed);this.listenerChanged();}};xmp.util.Logger.protot=
ype.setCategoryFilterArray=3Dfunction(Fd){this._filteredCategoryMap=3D{};=
for(var i=3D0;i<Fd.length;i++){var =
Gd=3DFd[i];this._filteredCategoryMap[Gd]=3D'true';}};xmp.util.Logger.prot=
otype.fatal=3Dfunction(Hd,Id,Jd){this._logCore(this._levelRef.FATAL,Hd,Id=
,Jd);};xmp.util.Logger.prototype.critical=3Dfunction(Kd,Ld,Md){this._logC=
ore(this._levelRef.CRITICAL,Kd,Ld,Md);};xmp.util.Logger.prototype.warn=3D=
function(Nd,Od,Pd){this._logCore(this._levelRef.WARN,Nd,Od,Pd);};xmp.util=
.Logger.prototype.info=3Dfunction(Qd,Rd,Sd){this._logCore(this._levelRef.=
INFO,Qd,Rd,Sd);};xmp.util.Logger.prototype.debug=3Dfunction(Td,Ud,Vd){thi=
s._logCore(this._levelRef.DEBUG,Td,Ud,Vd);};xmp.util.Logger.prototype.isF=
atalEnabled=3Dfunction(Wd){return(this._commonLogLevel>=3Dthis._levelRef.=
FATAL&&!this._isFilteredOut(Wd));};xmp.util.Logger.prototype.isCriticalEn=
abled=3Dfunction(Xd){return(this._commonLogLevel>=3Dthis._levelRef.CRITIC=
AL&&!this._isFilteredOut(Xd));};xmp.util.Logger.prototype.isWarnEnabled=3D=
function(Yd){return(this._commonLogLevel>=3Dthis._levelRef.WARN&&!this._i=
sFilteredOut(Yd));};xmp.util.Logger.prototype.isInfoEnabled=3Dfunction(Zd=
){return(this._commonLogLevel>=3Dthis._levelRef.INFO&&!this._isFilteredOu=
t(Zd));};xmp.util.Logger.prototype.isDebugEnabled=3Dfunction($d){return(t=
his._commonLogLevel>=3Dthis._levelRef.DEBUG&&!this._isFilteredOut($d));};=
xmp.util.Logger.prototype._logCore=3Dfunction(ae,ce,de,ee){if(this._commo=
nLogLevel>=3Dae&&!this._isFilteredOut(ce)){try{for(var =
i=3D0;i<this._listeners.length;i++){this._listeners[i].handleLog(ae,ce,de=
,ee);}}
catch(e){xmp.showFatalErrorMessage('Exception occurred while calling =
LoggerListener.handleLogMessage, disconnecting logging: =
.'+xmp.extractErrorMessage(e));this._commonLogLevel=3Dthis._levelRef.NONE=
;}}};xmp.util.Logger.prototype._isFilteredOut=3Dfunction(fe){return(this.=
_filteredCategoryMap[fe]=3D=3D=3D'true');};xmp.util.Logger.prototype.list=
enerChanged=3Dfunction(){this._recalcCommonLogLevel();};xmp.util.Logger.p=
rototype._recalcCommonLogLevel=3Dfunction(){this._commonLogLevel=3Dthis._=
levelRef.NONE;for(var i=3D0;i<this._listeners.length;i++){var =
ge=3Dthis._listeners[i].getLogLevel();if(ge>this._commonLogLevel){this._c=
ommonLogLevel=3Dge;}}};xmp.createNamespace("xmp.util");xmp.util.PlayableD=
ata=3Dfunction(he){xmp.util.PlayableData.ctor.call(this);if(typeof =
he!=3D=3D'string'){throw new =
xmp.util.internals.InvalidArgsError("Argument 'metaResourceId' must be a =
string.");}
this._metaResourceId=3Dhe;this._compositeMetaResourceId=3D'';this._metada=
taMap=3Dnew =
xmp.util.internals.MetadataMap(false);};xmp.DERIVE_CLASS(xmp.util.Loadabl=
e,xmp.util.PlayableData);xmp.util.PlayableData.prototype._setCompositeMet=
aResourceId=3Dfunction(ie){this._compositeMetaResourceId=3Die;};xmp.util.=
PlayableData.prototype.getPlayableId=3Dfunction(){return =
this.getDataObject().id;};xmp.util.PlayableData.prototype.getMimeTypeArra=
y=3Dfunction(){return =
this.getDataObject().mimeTypes;};xmp.util.PlayableData.prototype.getTotal=
RunTime=3Dfunction(){return =
this.getDataObject().trt;};xmp.util.PlayableData.prototype.getMetaResourc=
eId=3Dfunction(){return =
this._metaResourceId;};xmp.util.PlayableData.prototype.getCompositeMetaRe=
sourceId=3Dfunction(){return =
this._compositeMetaResourceId;};xmp.util.PlayableData.prototype.getRuntim=
eMetadata=3Dfunction(je,ke){return =
this._metadataMap._get(je,ke);};xmp.util.PlayableData.prototype.setRuntim=
eMetadata=3Dfunction(le,me){this._metadataMap._set(le,me);};xmp.util.Play=
ableData.prototype.reInitRuntimeMetadata=3Dfunction(){this._metadataMap._=
reInitialize({});};xmp.util.PlayableData.prototype.getLoadableId=3Dfuncti=
on(){return =
this.getMetaResourceId();};xmp.createNamespace("xmp.util");xmp.util.Playe=
rStats=3Dfunction(){this._array=3D[];this._map=3D{};this._packCommon();};=
xmp.util.PlayerStats._singeltonInstance=3Dnull;xmp.util.PlayerStats.getIn=
stance=3Dfunction(){if(xmp.util.PlayerStats._singeltonInstance=3D=3D=3Dnu=
ll){xmp.util.PlayerStats._singeltonInstance=3Dnew =
xmp.util.PlayerStats();}
return =
xmp.util.PlayerStats._singeltonInstance;};xmp.util.PlayerStats.prototype.=
setValue=3Dfunction(ne,oe){var =
pe=3Dne.toString();if(typeof(this._map[pe])=3D=3D=3D'undefined'){this._ar=
ray.push(pe);}
this._map[pe]=3Doe.toString();};xmp.util.PlayerStats.prototype.getValue=3D=
function(qe){var se=3Dqe.toString();var =
te=3Dthis._map[se];if(typeof(te)=3D=3D=3D'undefined'){return'';}
return te;};xmp.util.PlayerStats.prototype.getKeys=3Dfunction(){var =
ue=3D[];for(var =
i=3D0;i<this._array.length;i++){ue.push(this._array[i]);}
return =
ue;};xmp.util.PlayerStats.prototype._packCommon=3Dfunction(){this.setValu=
e('sessionId',((new =
Date()).getTime()).toString());this.setValue('userId',xmp.util.Cookie.rea=
d('CNNid'));this.setValue('geoId',xmp.util.Cookie.read('adDEmas'));};xmp.=
createNamespace("xmp.util");xmp.util.PreferenceNode=3Dfunction(ve,we,xe){=
this._parent=3Dnull;this._root=3Dnull;this._isSystemNode=3Dfalse;this._na=
me=3D'';this._absolutePath=3D'';this._children=3D{};this._map=3D{};if(typ=
eof we!=3D=3D'string'){throw new =
xmp.util.internals.InvalidArgsError("Argument 'name' must be a non-null =
string.");}
if(ve=3D=3D=3Dnull){if(we.length>0){throw new =
xmp.util.internals.InvalidArgsError("Root node cannot have a name.");}
this._root=3Dthis;this._absolutePath=3Dxmp.util.PreferenceNode._PATH_SEPA=
RATOR;}
else{if(we.length=3D=3D=3D0){throw new =
xmp.util.internals.InvalidArgsError("Non-root node cannot have an empty =
name.");}
this._root=3Dve.getRoot();if(ve=3D=3D=3Dthis._root){this._absolutePath=3D=
ve.getAbsolutePath()+we;}
else{this._absolutePath=3Dve.getAbsolutePath()+xmp.util.PreferenceNode._P=
ATH_SEPARATOR+we;}
ve._addChild(we,this);}
this._isSystemNode=3Dxe;this._parent=3Dve;this._name=3Dwe;};xmp.util.Pref=
erenceNode._PATH_SEPARATOR=3D'/';xmp.util.PreferenceNode.prototype.getAbs=
olutePath=3Dfunction(){return =
this._absolutePath;};xmp.util.PreferenceNode.prototype.retrieveChildrenNa=
mes=3Dfunction(){return =
xmp.MapIterator.extractKeysSorted(this._children);};xmp.util.PreferenceNo=
de.prototype.retrieveChildren=3Dfunction(){var =
ye=3Dthis.retrieveChildrenNames();var ze=3D[];for(var =
i=3D0;i<ye.length;i++){var Ae=3Dthis._getChild(ye[i]);ze.push(Ae);}
return =
ze;};xmp.util.PreferenceNode.prototype.retrieveKeys=3Dfunction(){return =
xmp.MapIterator.extractKeysSorted(this._map);};xmp.util.PreferenceNode.pr=
ototype.getName=3Dfunction(){return =
this._name;};xmp.util.PreferenceNode.prototype.getParent=3Dfunction(){ret=
urn =
this._parent;};xmp.util.PreferenceNode.prototype.getRoot=3Dfunction(){ret=
urn =
this._root;};xmp.util.PreferenceNode.prototype.getNodeForPath=3Dfunction(=
Be){try{var Ce=3Dthis._splitPathAndReturnStartingNode(Be);return =
this._getNodeForPathRecursive(Ce[0],Ce[1]);}
catch(e){throw new Error("Error calling getNodeForPath: =
"+xmp.extractErrorMessage(e));}};xmp.util.PreferenceNode.prototype.nodeEx=
ists=3Dfunction(De){if(De=3D=3D=3Dxmp.util.PreferenceNode._PATH_SEPARATOR=
){return true;}
var Ee=3Dthis._splitPathAndReturnStartingNode(De);var Fe=3DEe[0];var =
Ge=3DEe[1];for(var i=3D0;i<Ge.length;i++){var =
He=3DGe[i];Fe=3DFe._getChild(He);if(!Fe){return false;}}
return =
true;};xmp.util.PreferenceNode.prototype.getString=3Dfunction(Ie,Je){xmp.=
validateArguments(arguments,[xmp.STRING_TYPE,xmp.STRING_TYPE],"Preference=
Node.getString");var Ke=3Dthis._get(Ie);if(!Ke){return Je;}
if(typeof Ke!=3D=3D'string'){throw new Error("Found value, but was not a =
string.");}
return =
Ke;};xmp.util.PreferenceNode.prototype.getBoolean=3Dfunction(Le,Me){xmp.v=
alidateArguments(arguments,[xmp.STRING_TYPE,xmp.BOOLEAN_TYPE],"Preference=
Node.getBoolean");var Ne=3Dthis._get(Le);if(!Ne){return Me;}
Ne=3DNe.toLowerCase();if(Ne=3D=3D=3D'false'){return false;}
if(Ne=3D=3D=3D'true'){return true;}
throw new Error("Found value, but was not a =
boolean.");};xmp.util.PreferenceNode.prototype.getInt=3Dfunction(Oe,Pe){x=
mp.validateArguments(arguments,[xmp.STRING_TYPE,xmp.NUMBER_TYPE],"Prefere=
nceNode.getInt");if(Pe!=3D=3DMath.floor(Pe)){throw new =
xmp.util.internals.InvalidArgsError("The 'defaultValue' argument must be =
an integer.");}
var Qe=3Dthis._get(Oe);if(!Qe){return Pe;}
if(!this._isNumber(Qe,false)){throw new Error("Found value, but was not =
an integer.");}
return =
parseInt(Qe,0);};xmp.util.PreferenceNode.prototype.getFloat=3Dfunction(Re=
,Se){xmp.validateArguments(arguments,[xmp.STRING_TYPE,xmp.NUMBER_TYPE],"P=
referenceNode.getFloat");var Te=3Dthis._get(Re);if(!Te){return Se;}
if(!this._isNumber(Te,true)){throw new Error("Found value, but was not a =
float.");}
return =
parseFloat(Te,0);};xmp.util.PreferenceNode.prototype._addChild=3Dfunction=
(Ue,Ve){this._children[Ue]=3DVe;};xmp.util.PreferenceNode.prototype._crea=
teChild=3Dfunction(We){return new =
xmp.util.PreferenceNode(this,We,this._isSystemNode);};xmp.util.Preference=
Node.prototype._getChild=3Dfunction(Xe){return =
this._children[Xe];};xmp.util.PreferenceNode.prototype._get=3Dfunction(Ye=
){if(Ye.length=3D=3D=3D0){throw new =
xmp.util.internals.InvalidArgsError("The 'key' argument must be a =
non-empty string.");}
var Ze=3Dthis._map[Ye];return =
Ze;};xmp.util.PreferenceNode.prototype._addValue=3Dfunction($e,af){this._=
map[$e]=3Daf;};xmp.util.PreferenceNode.prototype._isNumber=3Dfunction(bf,=
cf){return =
xmp.isNumber(bf,cf);};xmp.util.PreferenceNode.prototype._splitPathAndRetu=
rnStartingNode=3Dfunction(df){var ef=3Dthis;var =
ff=3Ddf.split(xmp.util.PreferenceNode._PATH_SEPARATOR);var i=3D0;var =
j=3D0;for(i=3D0,j=3Dff.length;i<j;i++){if(ff[i].length=3D=3D=3D0){if(i=3D=
=3D=3D0){ef=3Dthis._root;}
else{throw new Error("pathName contains consecutive slashes: =
"+df,"pathName");}}}
if(ff[0].length=3D=3D=3D0){ff.shift();}
return[ef,ff];};xmp.util.PreferenceNode.prototype._getNodeForPathRecursiv=
e=3Dfunction(gf,hf){if(hf.length>0){var jf=3Dhf[0];var =
kf=3Dgf._getChild(jf);if(!kf){kf=3Dgf._createChild(jf);gf._addChild(jf,kf=
);}
gf=3Dkf;hf.shift();return gf._getNodeForPathRecursive(gf,hf);}
return =
this;};xmp.util.PreferenceNode.prototype.cloneTo=3Dfunction(lf){var =
mf=3Dthis.retrieveKeys();for(var i=3D0;i<mf.length;i++){var =
nf=3Dmf[i];var of=3Dthis._get(nf);lf._addValue(nf,of);}
var pf=3Dthis.retrieveChildrenNames();for(var j=3D0;j<pf.length;j++){var =
qf=3Dpf[j];var rf=3Dthis.getNodeForPath(qf);var =
sf=3Dlf.getNodeForPath(qf);rf.cloneTo(sf);}};xmp.util.PreferenceNode.prot=
otype.toXml=3Dfunction(tf,uf){var =
vf=3Dnull;if(this=3D=3D=3Dthis.getRoot()){vf=3Dtf.createNode(1,'root','')=
;vf.setAttribute('type',(this._isSystemNode?'system':'user'));}
else{vf=3Dtf.createNode(1,'node','');vf.setAttribute('name',this.getName(=
));}
uf.appendChild(vf);var =
wf=3Dtf.createNode(1,'map','');vf.appendChild(wf);var =
xf=3Dthis.retrieveKeys();for(var i=3D0;i<xf.length;i++){var =
yf=3Dxf[i];var zf=3Dthis._get(yf);var =
Af=3Dtf.createNode(1,'entry','');Af.setAttribute('key',yf);Af.setAttribut=
e('value',zf);wf.appendChild(Af);}
var Bf=3Dthis.retrieveChildren();for(var j=3D0;j<Bf.length;j++){var =
Cf=3DBf[j];Cf.toXml(tf,vf);}};xmp.createNamespace("xmp.util");xmp.util.Ro=
otUrlProvider=3Dfunction(){};xmp.util.RootUrlProvider._instance=3Dnull;xm=
p.util.RootUrlProvider.getInstance=3Dfunction(){if(xmp.util.RootUrlProvid=
er._instance=3D=3D=3Dnull){xmp.util.RootUrlProvider._instance=3Dnew =
xmp.util.RootUrlProvider();}
return =
xmp.util.RootUrlProvider._instance;};xmp.util.RootUrlProvider.prototype.g=
etRootUrl=3Dfunction(Df,Ef){var =
Ff=3Dthis.getRootUrlNode(Df);if(Ff=3D=3D=3Dnull){return'';}
if(!xmp.isNonEmptyString(Ef)){Ef=3Dxmp.NO_DEFAULT_VALUE;}
return =
Ff.getString(xmp.ROOT_URL,Ef);};xmp.util.RootUrlProvider.prototype.getRoo=
tUrlNode=3Dfunction(Gf){var =
Hf=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode();if(!Hf=
.nodeExists('rootUrlMap/'+Gf)){return null;}
return =
Hf.getNodeForPath('rootUrlMap/'+Gf);};xmp.createNamespace("xmp.util");xmp=
.util.SettingsManager=3Dfunction(){this._doGenericPlayerContextUnderlay=3D=
true;this._root=3Dnull;this._buildingRoot=3Dnull;this._backingStoreArray=3D=
[];this._context=3D'';this._contextNode=3Dnull;this._globalContextNode=3D=
null;this._contextChangeListeners=3D[];this._buildSubstitutionMap=3D{};};=
xmp.util.SettingsManager._singeltonInstance=3Dnull;xmp.util.SettingsManag=
er.getInstance=3Dfunction(){if(xmp.util.SettingsManager._singeltonInstanc=
e=3D=3D=3Dnull){xmp.util.SettingsManager._singeltonInstance=3Dnew =
xmp.util.SettingsManager();}
return =
xmp.util.SettingsManager._singeltonInstance;};xmp.util.SettingsManager.pr=
ototype.getRoot=3Dfunction(){return =
this._root;};xmp.util.SettingsManager.prototype.getContextNode=3Dfunction=
(){return =
this._contextNode;};xmp.util.SettingsManager.prototype.getGlobalContextNo=
de=3Dfunction(){return =
this._globalContextNode;};xmp.util.SettingsManager.prototype.getContext=3D=
function(){return =
this._context;};xmp.util.SettingsManager.prototype.init=3Dfunction(If,Jf)=
{this._buildSubstitutionMap=3D(Jf)?Jf:{};this._context=3D'';this._root=3D=
null;this._contextNode=3Dnull;this._globalContextNode=3Dnull;this._buildi=
ngRoot=3Dnull;this._backingStoreArray=3D[];this._backingStoreArray=3Dthis=
._backingStoreArray.concat(If);this._build();};xmp.util.SettingsManager.p=
rototype.addContextChangeListener=3Dfunction(Kf){this._contextChangeListe=
ners.push(Kf);};xmp.util.SettingsManager.prototype.setContext=3Dfunction(=
Lf){this._context=3D(!Lf)?'':Lf;this._contextNode=3Dnull;if(this._context=
.length!=3D=3D0){this._contextNode=3Dthis._root.getNodeForPath('/PlayerCo=
ntexts/'+this._context);}
for(var =
i=3D0;i<this._contextChangeListeners.length;i++){this._contextChangeListe=
ners[i].call();}};xmp.util.SettingsManager.prototype._build=3Dfunction(){=
this._buildingRoot=3Dnew =
xmp.util.PreferenceNode(null,'',true);try{for(var =
i=3D0;i<this._backingStoreArray.length;i++){var =
Mf=3Dthis._backingStoreArray[i];this._buildBackingStore(Mf);}}
catch(e){this._backingStoreArray=3D[];this._buildingRoot=3Dnull;throw =
e;}
this._backingStoreArray=3D[];this._root=3Dthis._buildingRoot;this.setCont=
ext(this._context);this._globalContextNode=3Dthis._root.getNodeForPath('/=
PlayerContexts/Global');};xmp.util.SettingsManager.prototype._buildBackin=
gStore=3Dfunction(Nf){try{var Of=3DNf;var =
Pf=3Dthis._buildingRoot;this._buildMap(Pf,Of.map);this._buildNodes(Pf,Of.=
nodes);}
catch(e){throw new Error("Error calling _buildBackingStore: =
"+xmp.extractErrorMessage(e));}};xmp.util.SettingsManager.prototype._buil=
dNode=3Dfunction(Qf,Rf){if(!xmp.isNonEmptyString(Rf.name)){throw new =
Error("Missing 'name' or 'name' is empty");}
var =
Sf=3DQf.getNodeForPath(Rf.name);this._buildGenericContext(Qf,Sf);this._bu=
ildMap(Sf,Rf.map);this._buildNodes(Sf,Rf.nodes);};xmp.util.SettingsManage=
r.prototype._buildGenericContext=3Dfunction(Tf,Uf){if(this._doGenericPlay=
erContextUnderlay&&(Tf.getAbsolutePath()=3D=3D=3D'/PlayerContexts')&&!(Uf=
.getName()=3D=3D=3D'Global'||Uf.getName()=3D=3D=3D'Generic')){var =
Vf=3DTf.getNodeForPath('/PlayerContexts/Generic');Vf.cloneTo(Uf);}};xmp.u=
til.SettingsManager.prototype._buildMap=3Dfunction(Wf,Xf){for(var =
i=3D0;i<Xf.length;i++){var =
Yf=3DXf[i];if(!xmp.isNonEmptyString(Yf.key)||(typeof =
Yf.value!=3D=3D'string')){throw new Error("Missing or empty 'key' or =
missing 'value'.");}
Wf._addValue(Yf.key,this._substitute(Yf.value));}};xmp.util.SettingsManag=
er.prototype._substitute=3Dfunction(Zf){if(Zf.indexOf('${{')=3D=3D=3D-1){=
return Zf;}
for(var =
$f=3Dxmp.MapIterator.create(this._buildSubstitutionMap);$f.hasNext();$f.n=
ext()){var ag=3D$f.currentKey();var bg=3D$f.currentValue();var =
cg=3D'${{'+ag+'}}';Zf=3DZf.replace(cg,bg);}
return =
Zf;};xmp.util.SettingsManager.prototype._buildNodes=3Dfunction(dg,eg){for=
(var i=3D0;i<eg.length;i++){var =
fg=3Deg[i];this._buildNode(dg,fg);}};xmp.util.SettingsManager.prototype.s=
aveAsXmlFile=3Dfunction(gg){if(xmp.isBrowserEnvironment()){xmp.showMessag=
e('This method meant to be called from WSH only.');return;}
var =
hg=3Dthis.toXml();hg.save(gg);};xmp.util.SettingsManager.prototype.toXml=3D=
function(){var ig=3D'';ig+=3D'<?xml version=3D"1.0" encoding=3D"UTF-8" =
?>';ig+=3D'<!DOCTYPE preferences SYSTEM =
"http://java.sun.com/dtd/preferences.dtd">';ig+=3D'<preferences =
EXTERNAL_XML_VERSION=3D"1.0"/>';var jg=3Dnew =
ActiveXObject('MSXML2.DOMDocument');jg.async=3Dfalse;jg.resolveExternals=3D=
false;jg.validateOnParse=3Dfalse;jg.loadXML(ig);this.getRoot().toXml(jg,j=
g.documentElement);return =
jg;};xmp.createNamespace("xmp.util");xmp.util.Timer=3Dfunction(id,kg,lg,m=
g){xmp.validateArguments(arguments,[xmp.STRING_TYPE,xmp.NUMBER_TYPE,xmp.N=
UMBER_TYPE,xmp.OBJECT_TYPE],"Timer.ctor");if(id=3D=3D=3Dnull||id.length=3D=
=3D=3D0||kg<0||!(lg=3D=3D=3D-1||lg>0)||mg=3D=3D=3Dnull){throw new =
xmp.util.internals.InvalidArgsError("The 'id' argument must be =
non-empty, "+"and the 'interval' argument must a positive integer, =
"+"and the 'maxRepeatCount' argument must be -1 or a positive integer, =
"+"and the 'callback' must be non-null.");}
this._id=3Did;this._interval=3Dkg;this._maxRepeatCount=3Dlg;this._callbac=
k=3Dmg;this._repeatCount=3D0;this._cookie=3D-1;};xmp.util.Timer._simpleId=
Counter=3D0;xmp.util.Timer._simpleTimerMap=3D{};xmp.util.Timer.doSimpleCa=
llback=3Dfunction(ng){xmp.util.Timer.doSimpleCallbackEx(xmp.DEFAULT_TIMER=
_INTERVAL,ng);};xmp.util.Timer.doSimpleCallbackEx=3Dfunction(og,pg){xmp.u=
til.Timer._simpleIdCounter++;var =
id=3D'SimpleTimer_'+xmp.util.Timer._simpleIdCounter.toString();var =
qg=3Dnew =
xmp.util.Callback(id,xmp.util.Timer._doSimpleCallbackCb,null);qg.setMetad=
ata('relayCb',pg);var rg=3Dnew =
xmp.util.Timer(id,og,1,qg);xmp.util.Timer._simpleTimerMap[rg.getId()]=3Dr=
g;rg.start();};xmp.util.Timer._doSimpleCallbackCb=3Dfunction(sg,tg){if(ty=
peof(xmp.util.Timer._simpleTimerMap[tg.getId()])!=3D=3D'undefined'){delet=
e xmp.util.Timer._simpleTimerMap[tg.getId()];}
var =
ug=3Dsg.getMetadata('relayCb',xmp.util.internals.MetadataMap.defaultObj);=
ug.call();};xmp.util.Timer.prototype.getId=3Dfunction(){return =
this._id;};xmp.util.Timer.prototype.isRunning=3Dfunction(){return(this._c=
ookie!=3D=3D-1);};xmp.util.Timer.prototype.start=3Dfunction(){this.stop()=
;this._repeatCount=3D0;var =
vg=3Dthis;this._cookie=3Dwindow.setInterval(function(){vg._timerCallback(=
);},this._interval);};xmp.util.Timer.prototype.stop=3Dfunction(){if(this.=
_cookie!=3D=3D-1){window.clearInterval(this._cookie);this._cookie=3D-1;}}=
;xmp.util.Timer.prototype._timerCallback=3Dfunction(){if(!this.isRunning(=
)){return;}
try{this._callback.call(this);}
catch(ex){xmp.util.internals.CategoryLogger.create('Timer').warn('Excepti=
on calling timer calback.',ex);}
if(!this.isRunning()){return;}
this._repeatCount++;if(this._maxRepeatCount!=3D=3D-1&&this._repeatCount>=3D=
this._maxRepeatCount){this.stop();}};xmp.createNamespace("xmp.util");xmp.=
util.TriggerHelper=3Dfunction(){};xmp.util.TriggerHelper.handleTrackReque=
st=3Dfunction(wg,xg){xmp.baseplayer.internals.Trigger.getTrigger(wg,'requ=
est').doCommands(xmp.util.TriggerHelper._createTriggerContext(wg,xg));};x=
mp.util.TriggerHelper.handleTrackStart=3Dfunction(yg,zg){xmp.baseplayer.i=
nternals.Trigger.getTrigger(yg,'start').doCommands(xmp.util.TriggerHelper=
._createTriggerContext(yg,zg));};xmp.util.TriggerHelper.handleTrackMidpoi=
nt=3Dfunction(Ag,Bg){xmp.baseplayer.internals.Trigger.getTrigger(Ag,'mid'=
).doCommands(xmp.util.TriggerHelper._createTriggerContext(Ag,Bg));};xmp.u=
til.TriggerHelper.handleTrackEnd=3Dfunction(Cg,Dg){xmp.baseplayer.interna=
ls.Trigger.getTrigger(Cg,'end').doCommands(xmp.util.TriggerHelper._create=
TriggerContext(Cg,Dg));};xmp.util.TriggerHelper._createTriggerContext=3Df=
unction(Eg,Fg){var Gg=3Dnew =
xmp.baseplayer.TriggerContext();Gg.setPlayableNode(Eg);Gg.setMetadata('pl=
ayer',Fg);return =
Gg;};xmp.createNamespace("xmp.util");xmp.util.Version=3Dfunction(){};xmp.=
util.Version.VERSION_BUILD_TIME_REPLACE_ME=3D"0.1.524.1663";xmp.util.Vers=
ion.getAsString=3Dfunction(){return =
xmp.util.Version.VERSION_BUILD_TIME_REPLACE_ME;};xmp.util.Version.makeFil=
eVersionString=3Dfunction(Hg,Ig){var =
Jg=3Dxmp.util.Version.getAsString();Jg=3DJg.replace(/\./g,'_');return =
Hg+'_'+Jg+'.'+Ig;};xmp.XmpErrorCodes=3Dfunction(){};xmp.XmpErrorCodes.NON=
E=3D0;xmp.XmpErrorCodes.FATAL_UNSPECIFIED_ERROR=3D1;xmp.XmpErrorCodes.FAT=
AL_PLATFORM=3D1000;xmp.XmpErrorCodes.FATAL_PLUGIN=3D2000;xmp.XmpErrorCode=
s.FATAL_PLUGIN_INIT=3D2100;xmp.XmpErrorCodes.CRITICAL_UNSPECIFIED_AJAX_ER=
ROR=3D5000;xmp.XmpErrorCodes.CRITICAL_FIRST_FRAME_TIMEOUT=3D6000;xmp.XmpE=
rrorCodes.CRITICAL_PLAYER_CONNECTION=3D7000;xmp.XmpErrorCodes._calc=3Dfun=
ction(Kg){var Lg=3Dxmp.XmpErrorCodes;if(typeof =
Kg=3D=3D=3D'number'){for(var =
Mg=3Dxmp.MapIterator.create(Lg);Mg.hasNext();Mg.next()){var =
v=3DMg.currentValue();if(v=3D=3D=3DKg){return Kg;}}}
return Lg.NONE;};xmp.XmpErrorCodes.stringify=3Dfunction(Ng){var =
Og=3Dxmp.XmpErrorCodes;var Pg=3DOg._calc(Ng);switch(Pg){case =
Og.NONE:return'none';case =
Og.FATAL_UNSPECIFIED_ERROR:return'fatal_unspecified_error';case =
Og.FATAL_PLATFORM:return'Unsupported Platform (fatal error)';case =
Og.FATAL_PLUGIN:return'Plugin Not Found (fatal error)';case =
Og.FATAL_PLUGIN_INIT:return'Plugin Timeout (fatal error)';case =
Og.CRITICAL_UNSPECIFIED_AJAX_ERROR:return'Unspecified Ajax Error =
(critical error)';case Og.CRITICAL_FIRST_FRAME_TIMEOUT:return'Video =
First Frame Timeout (critical error)';case =
Og.CRITICAL_PLAYER_CONNECTION:return'Video Connection Problem (critical =
error)';default:return'none';}};xmp.Base64=3D{_keyStr:"ABCDEFGHIJKLMNOPQR=
STUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=3D",encode:function(Qg){va=
r Rg=3D"";var Sg,chr2,chr3,enc1,enc2,enc3,enc4;var =
i=3D0;Qg=3Dxmp.Base64._utf8_encode(Qg);while(i<Qg.length){Sg=3DQg.charCod=
eAt(i);i++;chr2=3DQg.charCodeAt(i);i++;chr3=3DQg.charCodeAt(i);i++;enc1=3D=
Sg>>2;enc2=3D((Sg&3)<<4)|(chr2>>4);enc3=3D((chr2&15)<<2)|(chr3>>6);enc4=3D=
chr3&63;if(isNaN(chr2)){enc3=3Denc4=3D64;}else =
if(isNaN(chr3)){enc4=3D64;}
Rg=3DRg+this._keyStr.charAt(enc1)+this._keyStr.charAt(enc2)+this._keyStr.=
charAt(enc3)+this._keyStr.charAt(enc4);}
return Rg;},decode:function(Tg){var Ug=3D"";var Vg,chr2,chr3;var =
Wg,enc2,enc3,enc4;var =
i=3D0;Tg=3DTg.replace(/[^A-Za-z0-9\+\/\=3D]/g,"");while(i<Tg.length){Wg=3D=
this._keyStr.indexOf(Tg.charAt(i));i++;enc2=3Dthis._keyStr.indexOf(Tg.cha=
rAt(i));i++;enc3=3Dthis._keyStr.indexOf(Tg.charAt(i));i++;enc4=3Dthis._ke=
yStr.indexOf(Tg.charAt(i));i++;Vg=3D(Wg<<2)|(enc2>>4);chr2=3D((enc2&15)<<=
4)|(enc3>>2);chr3=3D((enc3&3)<<6)|enc4;Ug=3DUg+String.fromCharCode(Vg);if=
(enc3!=3D=3D64){Ug=3DUg+String.fromCharCode(chr2);}
if(enc4!=3D=3D64){Ug=3DUg+String.fromCharCode(chr3);}}
Ug=3Dxmp.Base64._utf8_decode(Ug);return =
Ug;},_utf8_encode:function(Xg){Xg=3DXg.replace(/\r\n/g,"\n");var =
Yg=3D"";for(var n=3D0;n<Xg.length;n++){var =
c=3DXg.charCodeAt(n);if(c<128){Yg+=3DString.fromCharCode(c);}
else =
if((c>127)&&(c<2048)){Yg+=3DString.fromCharCode((c>>6)|192);Yg+=3DString.=
fromCharCode((c&63)|128);}
else{Yg+=3DString.fromCharCode((c>>12)|224);Yg+=3DString.fromCharCode(((c=
>>6)&63)|128);Yg+=3DString.fromCharCode((c&63)|128);}}
return Yg;},_utf8_decode:function(Zg){var $g=3D"";var i=3D0;var =
c=3D0;var c1=3D0;var c2=3D0;var =
c3=3D0;while(i<Zg.length){c=3DZg.charCodeAt(i);if(c<128){$g+=3DString.fro=
mCharCode(c);i++;}
else =
if((c>191)&&(c<224)){c2=3DZg.charCodeAt(i+1);$g+=3DString.fromCharCode(((=
c&31)<<6)|(c2&63));i+=3D2;}
else{c2=3DZg.charCodeAt(i+1);c3=3DZg.charCodeAt(i+2);$g+=3DString.fromCha=
rCode(((c&15)<<12)|((c2&63)<<6)|(c3&63));i+=3D3;}}
return =
$g;}};xmp.createNamespace("xmp.util.internals");xmp.util.internals.Browse=
rDetect=3D{init:function(){if(!xmp.isBrowserEnvironment()){return;}
this.buildData();this.browser=3Dthis.searchString(this.dataBrowser)||"An =
unknown =
browser";this.version=3Dthis.searchVersion(navigator.userAgent)||this.sea=
rchVersion(navigator.appVersion)||"an unknown =
version";this.OS=3Dthis.searchString(this.dataOS)||"an unknown =
OS";},searchString:function(ah){for(var i=3D0;i<ah.length;i++){var =
bh=3Dah[i].string;var =
ch=3Dah[i].prop;this.versionSearchString=3Dah[i].versionSearch||ah[i].ide=
ntity;if(bh){if(bh.indexOf(ah[i].subString)!=3D=3D-1){return =
ah[i].identity;}}
else if(ch){return ah[i].identity;}}
return"";},searchVersion:function(dh){var =
eh=3Ddh.indexOf(this.versionSearchString);if(eh=3D=3D=3D-1){return"";}
return =
parseFloat(dh.substring(eh+this.versionSearchString.length+1));},buildDat=
a:function(){this.dataBrowser=3D[{string:navigator.userAgent,subString:"O=
mniWeb",versionSearch:"OmniWeb/",identity:"OmniWeb"},{string:navigator.ve=
ndor,subString:"Apple",identity:"Safari"},{prop:window.opera,identity:"Op=
era"},{string:navigator.vendor,subString:"iCab",identity:"iCab"},{string:=
navigator.vendor,subString:"KDE",identity:"Konqueror"},{string:navigator.=
userAgent,subString:"Firefox",identity:"Firefox"},{string:navigator.vendo=
r,subString:"Camino",identity:"Camino"},{string:navigator.userAgent,subSt=
ring:"SeaMonkey",identity:"SeaMonkey"},{string:navigator.userAgent,subStr=
ing:"Netscape",identity:"Netscape"},{string:navigator.userAgent,subString=
:"MSIE",identity:"Explorer",versionSearch:"MSIE"},{string:navigator.userA=
gent,subString:"Gecko",identity:"Mozilla",versionSearch:"rv"},{string:nav=
igator.userAgent,subString:"Mozilla",identity:"Netscape",versionSearch:"M=
ozilla"}];this.dataOS=3D[{string:navigator.platform,subString:"Win",ident=
ity:"Windows"},{string:navigator.platform,subString:"Mac",identity:"Mac"}=
,{string:navigator.platform,subString:"Linux",identity:"Linux"}];}};xmp.u=
til.internals.BrowserDetect.init();xmp.createNamespace("xmp.util.internal=
s");xmp.util.internals.CategoryLogger=3Dfunction(fh){this._logger=3Dxmp.u=
til.Logger.getInstance();this._category=3D(fh&&fh.length>0)?fh:"NULL =
CATEGORY";};xmp.util.internals.CategoryLogger.create=3Dfunction(gh){retur=
n new =
xmp.util.internals.CategoryLogger(gh);};xmp.util.internals.CategoryLogger=
.prototype.fatal=3Dfunction(hh,ih){this._logger.fatal(this._category,hh,i=
h);};xmp.util.internals.CategoryLogger.prototype.critical=3Dfunction(jh,k=
h){this._logger.critical(this._category,jh,kh);};xmp.util.internals.Categ=
oryLogger.prototype.warn=3Dfunction(lh,mh){this._logger.warn(this._catego=
ry,lh,mh);};xmp.util.internals.CategoryLogger.prototype.info=3Dfunction(n=
h,oh){this._logger.info(this._category,nh,oh);};xmp.util.internals.Catego=
ryLogger.prototype.debug=3Dfunction(ph,qh){this._logger.debug(this._categ=
ory,ph,qh);};xmp.util.internals.CategoryLogger.prototype.isWarnEnabled=3D=
function(){return =
this._logger.isWarnEnabled(this._category);};xmp.util.internals.CategoryL=
ogger.prototype.isInfoEnabled=3Dfunction(){return =
this._logger.isInfoEnabled(this._category);};xmp.util.internals.CategoryL=
ogger.prototype.isDebugEnabled=3Dfunction(){return =
this._logger.isDebugEnabled(this._category);};xmp.createNamespace("xmp.ut=
il.internals");xmp.util.internals.MetadataMap=3Dfunction(rh){xmp.validate=
Arguments(arguments,[xmp.BOOLEAN_TYPE],"MetadataMap.ctor");this._readOnly=
=3Drh;this._wrappedMetadata=3D{};};xmp.util.internals.MetadataMap.default=
Obj=3D{};xmp.util.internals.MetadataMap.prototype._isReadOnly=3Dfunction(=
){return =
this._readOnly;};xmp.util.internals.MetadataMap.prototype._get=3Dfunction=
(sh,th){if(!((arguments.length=3D=3D=3D2)&&xmp.isNonEmptyString(sh))){thr=
ow new xmp.util.internals.InvalidArgsError("Invalid 'key' (undefined, =
null, or empty).");}
var uh=3Dthis._wrappedMetadata[sh];return =
xmp.chooseValueOrDefault(uh,th);};xmp.util.internals.MetadataMap.prototyp=
e._set=3Dfunction(vh,wh){if(this._readOnly){throw new =
xmp.playlistapi.internals.PlayListError("Cannot modify readonly =
MetadataMap");}
if(!xmp.isNonEmptyString(vh)||typeof wh=3D=3D=3D"undefined"){throw new =
xmp.util.internals.InvalidArgsError("Invalid key (null or empty) or =
invalid value (undefined)");}
this._wrappedMetadata[vh]=3Dwh;};xmp.util.internals.MetadataMap.prototype=
._remove=3Dfunction(xh){if(!xmp.isNonEmptyString(xh)){throw new =
xmp.util.internals.InvalidArgsError("Invalid key (null or empty)");}
if(typeof(this._wrappedMetadata[xh])!=3D=3D'undefined'){delete =
this._wrappedMetadata[xh];}};xmp.util.internals.MetadataMap.prototype._re=
Initialize=3Dfunction(yh){this._wrappedMetadata=3Dyh;};xmp.util.internals=
.MetadataMap.prototype._getClonedWrappedMetadata=3Dfunction(){var =
zh=3D{};for(var =
Ah=3Dxmp.MapIterator.create(this._wrappedMetadata);Ah.hasNext();Ah.next()=
){var Bh=3DAh.currentKey();var Ch=3DAh.currentValue();zh[Bh]=3DCh;}
return =
zh;};xmp.createNamespace("xmp.util.internals");xmp.MOCK_TEST_MODE_ROOTURL=
MAP_PATH=3D"/PlayerContexts/Global/rootUrlMap/";xmp.MOCK_TEST_MODE_MEDIAT=
YPE_PATH=3D"/PlayerContexts/Global/PlayingPolicy/MediaTypes/";xmp.SAFE_RE=
AL_PLAY_TIME_PER_NODE=3D500;xmp.FAST_REAL_PLAY_TIME_PER_NODE=3D50;xmp.uti=
l.internals.MockTestMode=3Dfunction(){this._isActive=3Dfalse;this._realPl=
ayTimePerNode=3Dxmp.SAFE_REAL_PLAY_TIME_PER_NODE;};xmp.util.internals.Moc=
kTestMode._singeltonInstance=3Dnull;xmp.util.internals.MockTestMode._play=
bleNodeTypes=3D["PreRoll","PostRoll","SponsoredAd","HouseAd","AdInsertNot=
ForSale","Promo","Content","NextUpSlate","StartSlate","CustomSlate"];xmp.=
util.internals.MockTestMode.getInstance=3Dfunction(){if(xmp.util.internal=
s.MockTestMode._singeltonInstance=3D=3D=3Dnull){xmp.util.internals.MockTe=
stMode._singeltonInstance=3Dnew xmp.util.internals.MockTestMode();}
return =
xmp.util.internals.MockTestMode._singeltonInstance;};xmp.util.internals.M=
ockTestMode.prototype.isActive=3Dfunction(){return =
this._isActive;};xmp.util.internals.MockTestMode.prototype.setActive=3Dfu=
nction(Dh){this._isActive=3DDh;};xmp.util.internals.MockTestMode.prototyp=
e.getRealPlayTimePerNode=3Dfunction(){return =
this._realPlayTimePerNode;};xmp.util.internals.MockTestMode.prototype.set=
RealPlayTimePerNode=3Dfunction(Eh){this._realPlayTimePerNode=3DEh;};xmp.u=
til.internals.MockTestMode.prototype.overrideMimeType=3Dfunction(Fh){if((=
Fh.getMimeType()!=3D=3Dxmp.MOCK_MIME_TYPE||Fh.getMimeTypes()!=3D=3D[xmp.M=
OCK_MIME_TYPE])&&this._shouldOverrideMimeType(Fh)){Fh.setMimeType(xmp.MOC=
K_MIME_TYPE);Fh.setMimeTypes([xmp.MOCK_MIME_TYPE]);}};xmp.util.internals.=
MockTestMode.prototype._shouldOverrideMimeType=3Dfunction(Gh){for(var =
i=3D0;i<xmp.util.internals.MockTestMode._playbleNodeTypes.length;i++){var=
 =
Hh=3DGh.getNodeTypeName();if(Hh=3D=3D=3Dxmp.util.internals.MockTestMode._=
playbleNodeTypes[i]){return true;}}
return =
false;};xmp.util.internals.MockTestMode.prototype.configure=3Dfunction(){=
var =
Ih=3D['videoContentMeta','videoPromoMeta','adPolicy','ruleClasses','adMan=
','dhtmlObject','adServer'];for(var i=3D0;i<Ih.length;i++){var =
Jh=3Dxmp.MOCK_TEST_MODE_ROOTURLMAP_PATH+Ih[i];var =
Kh=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode().getNod=
eForPath(Jh);Kh._addValue('transportType','mock');}
var Lh=3D['Flash','WindowsMedia'];for(var j=3D0;j<Lh.length;j++){var =
Mh=3Dxmp.MOCK_TEST_MODE_MEDIATYPE_PATH+Lh[j];var =
Nh=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode().getNod=
eForPath(Mh);Nh._addValue('mime-type',xmp.MOCK_MIME_TYPE);}};xmp.createNa=
mespace("xmp.util.internals");xmp.util.internals.NullLoggerListener=3Dfun=
ction(){};xmp.util.internals.NullLoggerListener.prototype.handleLogMessag=
e=3Dfunction(Oh,Ph,Qh){};xmp.createNamespace("xmp.util.internals");xmp.ut=
il.internals.UnsupportedOperationError=3Dfunction(Rh){xmp.util.internals.=
UnsupportedOperationError.ctor.call(this,"UnsupportedOperationError",null=
,Rh);};xmp.DERIVE_CLASS(xmp.util.internals.XMPError,xmp.util.internals.Un=
supportedOperationError);

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/video/xmp/xmp_views.js

// Turner XMP, Release Build, =A9 2007 Turner Broadcasting System, Inc. =
A Time Warner Company.  File: xmp_views, Version: 0.1.524.1663

xmp.ABSOLUTE_POSITION=3D"absolute";xmp.OVERLAY=3D"Overlay";xmp.OVERLAY_EL=
EMENT=3D"div";xmp.OVERLAY_WIDTH_PARAMETER=3D"{{width}}";xmp.OVERLAY_HEIGH=
T_PARAMETER=3D"{{height}}";xmp.Overlay=3Dfunction(aa,ba,ca,da,ea){try{thi=
s.viewport=3Dba;this.rawName=3D"";this.group=3D"";if(ca=3D=3D=3Dnull||ca.=
length=3D=3D=3D0){throw new xmp.OverlayError("Validating =
group.","Invalid overlay group.  Missing group.",this);}=0A=
if(ca.indexOf(" ")!=3D=3D-1){throw new xmp.OverlayError("Validating =
group.","Invalid overlay group.  Group cannot contain spaces.",this);}=0A=
this.group=3Dca;if(da=3D=3D=3Dnull||da.length=3D=3D=3D0){throw new =
xmp.OverlayError("Validating name.","Invalid overlay name.  Missing =
name.",this);}=0A=
if(da.indexOf(" ")!=3D=3D-1){throw new xmp.OverlayError("Validating =
name.","Invalid overlay name.  Name cannot contain spaces.",this);}=0A=
this.rawName=3Dda;this.name=3Daa+this.group+this.rawName+xmp.OVERLAY;this=
.style=3D"";this.html=3D"";this.display=3Dxmp.DISPLAY_NONE;this.zIndex=3D=
-1;this.position=3Dxmp.ABSOLUTE_POSITION;this.rectangle=3D{left:0,top:0,w=
idth:0,height:0};this.type=3D((ea)?ea:xmp.OVERLAY);this.properties=3D{};}=0A=
catch(e){this._handleError("Constructing =
overlay.",e);}};xmp.Overlay.prototype.open=3Dfunction(fa){try{this.viewpo=
rt=3Dfa;this.refresh();}=0A=
catch(e){this._handleError("Opening =
overlay.",e);}};xmp.Overlay.prototype.close=3Dfunction(){try{this.viewpor=
t=3Dnull;this._destoryNativeOverlay();}=0A=
catch(e){this._handleError("Closing =
overlay.",e);}};xmp.Overlay.prototype.setHTML=3Dfunction(ga){try{this.htm=
l=3Dga;if(true=3D=3D=3Dthis.viewportExists()){this.getNativeOverlay().inn=
erHTML=3Dthis.getRenderableHTML();}}=0A=
catch(e){this._handleError("Setting overlay =
HTML.",e);}};xmp.Overlay.prototype.setStyle=3Dfunction(ha){try{this.style=
=3Dha;if(true=3D=3D=3Dthis.viewportExists()&&true=3D=3D=3Dthis.isVisible(=
)){this.applyCustomStyle(this.getNativeOverlay());}}=0A=
catch(e){this._handleError("Setting overlay =
style.",e);}};xmp.Overlay.prototype.show=3Dfunction(ia){try{this.display=3D=
xmp.DISPLAY_BLOCK;if(false=3D=3D=3Dthis.viewportExists()){return;}=0A=
this.setZOrder();this.getNativeOverlay().style.display=3Dthis.display;}=0A=
catch(e){this._handleError("Showing =
overlay.",e);}};xmp.Overlay.prototype.hide=3Dfunction(){try{if(false=3D=3D=
=3Dthis.viewportExists()||false=3D=3D=3Dthis.isVisible()){return;}=0A=
this.display=3Dxmp.DISPLAY_NONE;this.getNativeOverlay().style.display=3Dt=
his.display;}=0A=
catch(e){this._handleError("Hiding =
overlay.",e);}};xmp.Overlay.prototype.refresh=3Dfunction(){try{if(false=3D=
=3D=3Dthis.viewportExists()){return;}=0A=
this._destoryNativeOverlay();if(true=3D=3D=3Dthis.isVisible()){this.show(=
);}=0A=
else{this.getNativeOverlay();}}=0A=
catch(e){this._handleError("Refreshing =
overlay.",e);}};xmp.Overlay.prototype.moveTo=3Dfunction(ja,ka,la,ma){try{=
this.rectangle=3D{left:xmp.getPixelUnits(ja),top:xmp.getPixelUnits(ka),wi=
dth:xmp.getPixelUnits(la),height:xmp.getPixelUnits(ma)};if(true=3D=3D=3Dt=
his.viewportExists()&&true=3D=3D=3Dthis.isVisible()){var =
na=3Dthis.getNativeOverlay();var =
oa=3D((this.style.length>0)?this.style+"; ":"")+"z-Index: =
"+this.zIndex+"; position: "+this.position+"; display: "+this.display+"; =
marginLeft: "+"0px"+"; marginTop: "+"0px"+"; left: =
"+this.rectangle.left+"; top: "+this.rectangle.top+"; width: =
"+this.rectangle.width+"; height: =
"+this.rectangle.height;na.style.cssText=3Doa;}}=0A=
catch(e){this._handleError("Moving =
overlay.",e);}};xmp.Overlay.prototype.getNativeOverlay=3Dfunction(){var =
pa=3Ddocument.getElementById(this.name);if(pa=3D=3D=3Dnull){pa=3Ddocument=
.createElement(xmp.OVERLAY_ELEMENT);pa.setAttribute(xmp.ID_ATTRIBUTE,this=
.name);pa.setAttribute(xmp.NAME_ATTRIBUTE,this.name);pa.style.display=3Dt=
his.display;this.position=3Dxmp.ABSOLUTE_POSITION;pa.style.position=3Dthi=
s.position;pa.style.marginLeft=3D"0px";pa.style.marginTop=3D"0px";pa.styl=
e.left=3Dthis.rectangle.left;pa.style.top=3Dthis.rectangle.top;pa.style.w=
idth=3Dthis.rectangle.width;pa.style.height=3Dthis.rectangle.height;pa.in=
nerHTML=3Dthis.getRenderableHTML();this.applyCustomStyle(pa);var =
qa=3Dxmp.getDomParent(this.viewport.getNative());xmp.insertDomChildBefore=
(qa,pa);}=0A=
return pa;};xmp.Overlay.prototype.getType=3Dfunction(){return =
this.type;};xmp.Overlay.prototype.getName=3Dfunction(){return =
this.rawName;};xmp.Overlay.prototype.getGroup=3Dfunction(){return =
this.group;};xmp.Overlay.prototype.getViewport=3Dfunction(){return =
this.viewport;};xmp.Overlay.prototype.setViewport=3Dfunction(ra){this.vie=
wport=3Dra;};xmp.Overlay.prototype.isVisible=3Dfunction(){return(this.dis=
play=3D=3D=3Dxmp.DISPLAY_BLOCK);};xmp.Overlay.prototype.viewportExists=3D=
function(){return(this.viewport!=3D=3Dnull);};xmp.Overlay.prototype._hand=
leError=3Dfunction(sa,e){var ta=3De;if(false=3D=3D=3D(ta instanceof =
xmp.OverlayError)){ta=3Dnew =
xmp.OverlayError(((e.context)?e.context:sa),((e.rawMessage)?e.rawMessage:=
e.message),this);ta.setInnerError(e);}=0A=
throw ta;};xmp.Overlay.prototype._destoryNativeOverlay=3Dfunction(){var =
ua=3Ddocument.getElementById(this.name);if(ua!=3D=3Dnull){var =
va=3Dxmp.getDomParent(ua);va.removeChild(ua);}};xmp.Overlay.prototype.onV=
iewportChange=3Dfunction(wa,xa,ya,za){};xmp.Overlay.prototype.getRenderab=
leHTML=3Dfunction(){var Aa=3Dthis.html;var =
Ba=3D[{name:xmp.OVERLAY_WIDTH_PARAMETER,value:this.rectangle.width},{name=
:xmp.OVERLAY_HEIGHT_PARAMETER,value:this.rectangle.height}];var =
Ca=3DBa.length;for(var =
i=3D0;i<Ca;i++){Aa=3DAa.replace(Ba[i].name,Ba[i].value);}=0A=
return Aa;};xmp.Overlay.prototype.getId=3Dfunction(){return =
this.name;};xmp.Overlay.prototype.setProperty=3Dfunction(Da,Ea){this.prop=
erties[Da]=3DEa;this.onPropertyChange(Da,Ea);};xmp.Overlay.prototype.getP=
roperty=3Dfunction(Fa){return =
this.properties[Fa];};xmp.Overlay.prototype.onPropertyChange=3Dfunction(G=
a,Ha){};xmp.Overlay.prototype.applyCustomStyle=3Dfunction(Ia){var =
Ja=3D((this.style.length>0)?this.style+"; ":"")+"z-Index: =
"+Ia.style.zIndex+"; position: "+Ia.style.position+"; display: =
"+Ia.style.display+"; marginLeft: "+Ia.style.left+"; marginTop: =
"+Ia.style.top+"; width: "+Ia.style.width+"; height: =
"+Ia.style.height;Ia.style.cssText=3DJa;};xmp.Overlay.prototype.setZOrder=
=3Dfunction(){var =
Ka=3Dthis.viewport.getNativePlayer().getNative();if(!Ka){throw new =
xmp.OverlayError("Showing overlay.","A native player does not exist for =
the viewport.",this);}=0A=
if(!Ka.style.zIndex||Ka.style.zIndex<=3D0){Ka.style.zIndex=3D1;}=0A=
var =
La=3Dthis.getNativeOverlay();this.zIndex=3DparseInt(Ka.style.zIndex,10)+1=
;La.style.zIndex=3Dthis.zIndex;};xmp.NATIVE_VIEWPORT_Z_INDEX=3D1;xmp.View=
port=3Dfunction(Ma,Na,Oa,Pa,Qa){this.listener=3DMa;this.type=3DNa;this.mi=
me_type=3DOa;this.contextName=3DPa;this.name=3DPa+this.type.substr(this.t=
ype.indexOf(".")+1);this.overlays=3DQa;this.opened=3Dfalse;this.style=3D"=
";this.nativeViewport=3Dnull;this.nativePlayer=3Dnull;};xmp.Viewport.prot=
otype.init=3Dfunction(Ra,Sa,Ta){try{this.createContext=3DRa;xmp.ViewportR=
egistry.addViewport(this);this.nativeViewport=3Dthis.listener.onCreateVie=
wport(this.type,this.name,Sa,Ta);}=0A=
catch(e){this.setError("Creating =
viewport.",e);}};xmp.Viewport.prototype.open=3Dfunction(Ua){this.createCo=
ntext=3DUa;};xmp.Viewport.prototype.close=3Dfunction(){try{xmp.ViewportRe=
gistry.removeViewport(this);for(var =
i=3D0;i<this.overlays.length;i++){this.overlays[i].close();}=0A=
this.opened=3Dfalse;this.listener.onDestroyViewport(this.type,this.name);=
}=0A=
catch(e){this.setError("Closing =
viewport.",e);}};xmp.Viewport.prototype.isOpen=3Dfunction(){return =
this.opened;};xmp.Viewport.prototype.reset=3Dfunction(Va){this.createCont=
ext=3DVa;};xmp.Viewport.prototype.getSize=3Dfunction(){try{return{width:t=
his.nativeViewport.style.width,height:this.nativeViewport.style.height};}=0A=
catch(e){this.setError("Retrieving viewport size.",e);}=0A=
return{width:0,height:0};};xmp.Viewport.prototype.setSize=3Dfunction(Wa,X=
a,Ya){try{var =
Za=3D((this.nativeViewport.style.marginLeft.length>0)?this.nativeViewport=
.style.marginLeft:"0px");var =
$a=3D((this.nativeViewport.style.marginTop.length>0)?this.nativeViewport.=
style.marginTop:"0px");this.moveTo(Za,$a,Wa,Xa,Ya);}=0A=
catch(e){this.setError("Setting viewport =
size.",e);}};xmp.Viewport.prototype.moveTo=3Dfunction(ab,bb,cb,db,eb){try=
{if(this.nativePlayer){this.nativePlayer.moveTo(ab,bb,cb,db);}=0A=
var fb=3D((this.style.length>0)?this.style+"; =
":"")+((this.nativeViewport.style.zIndex)?"z-Index: =
"+this.nativeViewport.style.zIndex+";":"")+"margin-left: =
"+xmp.getPixelUnits(ab)+"; margin-top: "+xmp.getPixelUnits(bb)+"; width: =
"+xmp.getPixelUnits(cb)+"; height: =
"+xmp.getPixelUnits(db);this.nativeViewport.style.cssText=3Dfb;if(true=3D=
=3D=3Deb){for(var =
i=3D0;i<this.overlays.length;i++){this.overlays[i].onViewportChange(ab,bb=
,cb,db);}}}=0A=
catch(e){this.setError("Moving =
viewport.",e);}};xmp.Viewport.prototype.setStyle=3Dfunction(gb){try{this.=
style=3Dgb;var =
hb=3D((this.nativeViewport.style.left.length>0)?this.nativeViewport.style=
.left:"0");var =
ib=3D((this.nativeViewport.style.top.length>0)?this.nativeViewport.style.=
top:"0");var jb=3D((this.style.length>0)?this.style+"; ":"")+"left: =
"+hb+"; top: "+ib+"; width: "+this.nativeViewport.style.width+"; height: =
"+this.nativeViewport.style.height;this.nativeViewport.style.cssText=3Djb=
;}=0A=
catch(e){this.setError("Setting viewport =
style.",e);}};xmp.Viewport.prototype.getNative=3Dfunction(){return =
this.nativeViewport;};xmp.Viewport.prototype.getContextName=3Dfunction(){=
return =
this.contextName;};xmp.Viewport.prototype.getName=3Dfunction(){return =
this.name;};xmp.Viewport.prototype.getType=3Dfunction(){return =
this.type;};xmp.Viewport.prototype.getNativeData=3Dfunction(){return =
this.native_data;};xmp.Viewport.prototype.setError=3Dfunction(kb,e){var =
lb=3De;if(false=3D=3D=3D(lb instanceof xmp.ViewportError)){lb=3Dnew =
xmp.ViewportError(((e.context)?e.context:kb),((e.rawMessage)?e.rawMessage=
:e.message),this);lb.setInnerError(e);}=0A=
this._createTimer({id:"setError",interval:xmp.DEFAULT_TIMER_INTERVAL,hand=
ler:this.onSetError,context:lb}).start();};xmp.Viewport.prototype.setOpen=
ed=3Dfunction(){this.opened=3Dtrue;this._createTimer({id:"setOpened",inte=
rval:xmp.DEFAULT_TIMER_INTERVAL,handler:this.onSetOpened,context:null}).s=
tart();};xmp.Viewport.prototype.setCreated=3Dfunction(){this._createTimer=
({id:"setCreated",interval:xmp.DEFAULT_TIMER_INTERVAL,handler:this.onSetC=
reated,context:null}).start();};xmp.Viewport.prototype._createTimer=3Dfun=
ction(mb){var nb=3Dnew =
xmp.util.Callback(mb.id,mb.handler,this);nb.setMetadata(xmp.CONTEXT,mb.co=
ntext);return new =
xmp.util.Timer(mb.id,mb.interval,-1,nb);};xmp.Viewport.prototype.setNativ=
ePlayer=3Dfunction(ob){this.nativePlayer=3Dob;for(var =
i=3D0;i<this.overlays.length;i++){this.overlays[i].open(this);}};xmp.View=
port.prototype.getNativePlayer=3Dfunction(){return =
this.nativePlayer;};xmp.Viewport.prototype.onSetError=3Dfunction(pb,qb){v=
ar =
rb=3Dnull;try{qb.stop();rb=3Dpb.getMetadata(xmp.CONTEXT,{});this.listener=
.onViewportError(rb);}=0A=
catch(e){var =
sb=3D((rb)?rb:e);xmp.handleFatalError(sb);}};xmp.Viewport.prototype.onSet=
Opened=3Dfunction(tb,ub){try{ub.stop();this.listener.onViewportOpened(thi=
s,this.createContext);}=0A=
catch(e){this.setError("Forwarding opened notification to =
listener.",e);}};xmp.Viewport.prototype.onSetCreated=3Dfunction(vb,wb){tr=
y{wb.stop();this.listener.onViewportCreated(this,this.createContext);}=0A=
catch(e){this.setError("Forwarding created notification to =
listener.",e);}};xmp.Viewport.prototype.getCallbackMethod=3Dfunction(xb){=
return"xmp.ViewportRegistry.getViewport( '"+this.getName()+"' =
)."+xb;};xmp.DHTML_VIEWPORT=3D"xmp.DHTMLViewport";xmp.DHTMLViewport=3Dfun=
ction(yb,zb,Ab,Bb){xmp.DHTMLViewport.ctor.call(this,yb,xmp.DHTML_VIEWPORT=
,zb,Ab,Bb);};xmp.DERIVE_CLASS(xmp.Viewport,xmp.DHTMLViewport);xmp.DHTMLVi=
ewport.prototype.open=3Dfunction(Cb,Db){xmp.DHTMLViewport.base.open.call(=
this,Cb,Db);this.setOpened();};xmp.DHTMLViewport.prototype.init=3Dfunctio=
n(Eb,Fb,Gb){xmp.DHTMLViewport.base.init.call(this,Eb,Fb,Gb);this.setCreat=
ed();};xmp.FLASH_VIEWPORT=3D"xmp.FlashViewport";xmp.FLASH_VIEWPORT_OPENED=
_METHOD=3D"onOpened";xmp.FLASH_VIEWPORT_CREATED_METHOD=3D"onCreated";xmp.=
FLASH_VIEWPORT_ERROR_METHOD=3D"onError";xmp.FVP_OPEN_COMMAND=3D"fvpOpen";=
xmp.FlashViewport=3Dfunction(Hb,Ib,Jb,Kb){xmp.FlashViewport.ctor.call(thi=
s,Hb,xmp.FLASH_VIEWPORT,Ib,Jb,Kb);};xmp.DERIVE_CLASS(xmp.Viewport,xmp.Fla=
shViewport);xmp.FlashViewport.prototype.init=3Dfunction(Lb,Mb,Nb){var =
Ob=3D[{name:xmp.ALLOW_SCRIPT_ACCESS,value:xmp.ALWAYS_ACCESS},{name:xmp.QU=
ALITY,value:xmp.QUALITY_HIGH},{name:xmp.WINDOW_MODE,value:xmp.TRANSPARENT=
_WINDOW_MODE}];var =
Pb=3D[{name:xmp.FLASH_INITIALIZATION_CALLBACK,value:this.getCallbackMetho=
d(xmp.FLASH_VIEWPORT_CREATED_METHOD)},{name:xmp.FLASH_ERROR_CALLBACK,valu=
e:this.getCallbackMethod(xmp.FLASH_VIEWPORT_ERROR_METHOD)},{name:xmp.FLAS=
H_NATIVE_PLAYER_COMPONENT,value:xmp.makeSWFPath(xmp.FLASH_PLAYER_SWF_BASE=
_NAME,true)}];xmp.FlashViewport.base.init.call(this,Lb,Ob,Pb);};xmp.Flash=
Viewport.prototype.open=3Dfunction(Qb,Rb){xmp.FlashViewport.base.open.cal=
l(this,Qb,Rb);var =
Sb=3Dthis.getNative();Sb.style.zIndex=3Dxmp.NATIVE_VIEWPORT_Z_INDEX;Sb.Se=
tVariable(xmp.FLASH_INITIALIZATION_CALLBACK,this.getCallbackMethod(xmp.FL=
ASH_VIEWPORT_OPENED_METHOD));Sb.fvpOpen();};xmp.FlashViewport.prototype.r=
eset=3Dfunction(Tb,Ub){};xmp.FlashViewport.prototype.onOpened=3Dfunction(=
){try{this.setOpened();}=0A=
catch(e){this.setError("Handling =
open.",e);}};xmp.FlashViewport.prototype.onCreated=3Dfunction(){try{this.=
setCreated();}=0A=
catch(e){this.setError("Handling =
create.",e);}};xmp.FlashViewport.prototype.onError=3Dfunction(Vb,Wb){try{=
var Xb=3D[{label:"Flash Error Type",text:Vb}];this.setError(null,new =
xmp.ViewportError("Handling error.",Wb,this,Xb));}=0A=
catch(e){this.setError("Handling =
error.",e);}};xmp.MEDIA_OVERLAY=3D"MediaOverlay";xmp.MEDIA_OVERLAY_NODE=3D=
"MediaOverlayNode";xmp.MEDIA_OVERLAY_LISTENER=3D"MediaOverlayListener";xm=
p.MediaOverlay=3Dfunction(Yb,Zb,$b,ac){xmp.MediaOverlay.ctor.call(this,Yb=
,Zb,$b,ac,xmp.MEDIA_OVERLAY);};xmp.DERIVE_CLASS(xmp.Overlay,xmp.MediaOver=
lay);xmp.MediaOverlay.prototype.show=3Dfunction(bc){try{this.display=3Dxm=
p.DISPLAY_BLOCK;if(false=3D=3D=3Dthis.viewportExists()){return;}=0A=
this.setZOrder();this.moveTo(this.rectangle.left,this.rectangle.top,this.=
rectangle.width,this.rectangle.height);this.getNativeOverlay().style.disp=
lay=3Dthis.display;this.openMedia();}=0A=
catch(e){this._handleError("Showing media =
overlay.",e);}};xmp.MediaOverlay.prototype.hide=3Dfunction(){try{if(false=
=3D=3D=3Dthis.viewportExists()||false=3D=3D=3Dthis.isVisible()){return;}=0A=
this.display=3Dxmp.DISPLAY_NONE;this.getNativeOverlay().style.display=3Dt=
his.display;this.destoryMediaPlayer();}=0A=
catch(e){this._handleError("Hiding media =
overlay.",e);}};xmp.MediaOverlay.prototype.onPropertyChange=3Dfunction(cc=
,dc){if(cc!=3D=3Dxmp.MEDIA_OVERLAY_NODE){return;}=0A=
if(false=3D=3D=3Dthis.viewportExists()||false=3D=3D=3Dthis.isVisible()){r=
eturn;}=0A=
this.openMedia();};xmp.MediaOverlay.prototype.onViewportChange=3Dfunction=
(ec,fc,gc,hc){};xmp.MediaOverlay.prototype.setPlacement=3Dfunction(ic,jc)=
{};xmp.MediaOverlay.prototype.getMediaPlayer=3Dfunction(){if(!this.mediaP=
layer){this.mediaPlayer=3Dxmp.MediaPlayerFactory.createPlayer(this.getId(=
)+"MediaPlayer",this);this.mediaPlayer.init();}=0A=
return =
this.mediaPlayer;};xmp.MediaOverlay.prototype.destoryMediaPlayer=3Dfuncti=
on(){if(!this.mediaPlayer){this.mediaPlayer.fini();this.mediaPlayer=3Dnul=
l;}};xmp.MediaOverlay.prototype.onInitialized=3Dfunction(){this.mediaPlay=
er.setVolume(100);this.mediaPlayer.setMute(true);var =
kc=3D[xmp.FLASH_MIME_TYPE,xmp.WINDOWS_MEDIA_MIME_TYPE,xmp.IMAGE_MIME_TYPE=
,xmp.DHTML_MIME_TYPE,xmp.QUICKTIME_MIME_TYPE];var lc=3Dkc.length;for(var =
i=3D0;i<lc;i++){this.mediaPlayer.setViewportConfig(kc[i],xmp.DHTML_VIEWPO=
RT);}};xmp.MediaOverlay.prototype.onTimelineChange=3Dfunction(mc,nc,oc){t=
his.getListener().onOverlayTimelineChange(mc,nc,oc);};xmp.MediaOverlay.pr=
ototype.onStateChange=3Dfunction(pc,qc,rc){this.getListener().onOverlaySt=
ateChange(pc,qc,rc);};xmp.MediaOverlay.prototype.onError=3Dfunction(sc,e)=
{this.getListener().onOverlayError(sc,e);};xmp.MediaOverlay.prototype.onC=
reateViewport=3Dfunction(tc,uc,vc,wc){return =
this.getNativeOverlay();};xmp.MediaOverlay.prototype.onDestroyViewport=3D=
function(xc,yc){};xmp.MediaOverlay.prototype.onPlugInError=3Dfunction(e){=
this.getListener().onOverlayPlugInError(e);};xmp.MediaOverlay.prototype.o=
nUnsupportedPlatformError=3Dfunction(e){this.getListener().onOverlayUnsup=
portedPlatformError(e);};xmp.MediaOverlay.prototype.openMedia=3Dfunction(=
){var zc=3Dthis.getProperty(xmp.MEDIA_OVERLAY_NODE);if(!zc){return;}=0A=
this.getMediaPlayer().open(zc);};xmp.MediaOverlay.prototype.getListener=3D=
function(){var =
Ac=3Dthis.getProperty(xmp.MEDIA_OVERLAY_LISTENER);if(!Ac){throw new =
xmp.OverlayError("Retrieving media overlay listener.","Missing media =
overlay listener.",this);}=0A=
return Ac;};xmp.OverlayError=3Dfunction(Bc,Cc,Dc){var =
Ec=3D[{label:"Overlay =
Group",text:((Dc)?Dc.getGroup():"")},{label:"Overlay =
Type",text:((Dc)?Dc.getType():"")},{label:"Overlay =
Name",text:((Dc)?Dc.getName():"")},{label:"Overlay =
Id",text:((Dc)?Dc.getId():"")}];xmp.OverlayError.ctor.call(this,"OverlayE=
rror",Bc,Cc,Ec);};xmp.DERIVE_CLASS(xmp.util.internals.XMPError,xmp.Overla=
yError);xmp.OverlayFactory=3Dfunction(){return{createOverlay:function(Fc,=
Gc,Hc,Ic,Jc){if(Ic=3D=3D=3Dxmp.OVERLAY){return new =
xmp.Overlay(Fc,Gc,Hc,Jc);}=0A=
else if(Ic=3D=3D=3Dxmp.SLATE_OVERLAY){return new =
xmp.SlateOverlay(Fc,Gc,Hc,Jc);}=0A=
else if(Ic=3D=3D=3Dxmp.MEDIA_OVERLAY){return new =
xmp.MediaOverlay(Fc,Gc,Hc,Jc);}=0A=
throw new xmp.OverlayError("Creating overlay.","Unable to create =
\""+Ic+"\" =
overlay.",null);}};}();xmp.OverlayProxy=3Dfunction(Kc){this.object=3DKc;}=
;xmp.OverlayProxy.prototype.object=3Dnull;xmp.OverlayProxy.prototype.show=
=3Dfunction(){this.object.show();};xmp.OverlayProxy.prototype.hide=3Dfunc=
tion(){this.object.hide();};xmp.OverlayProxy.prototype.refresh=3Dfunction=
(){this.object.refresh();};xmp.OverlayProxy.prototype.setHTML=3Dfunction(=
Lc){xmp.validateArguments(arguments,[xmp.STRING_TYPE],"OverlayProxy.setHT=
ML");this.object.setHTML(Lc);};xmp.OverlayProxy.prototype.setStyle=3Dfunc=
tion(Mc){xmp.validateArguments(arguments,[xmp.STRING_TYPE],"OverlayProxy.=
setStyle");this.object.setStyle(Mc);};xmp.OverlayProxy.prototype.moveTo=3D=
function(Nc,Oc,Pc,Qc){xmp.validateArguments(arguments,[xmp.STRING_TYPE,xm=
p.STRING_TYPE,xmp.STRING_TYPE,xmp.STRING_TYPE],"OverlayProxy.moveTo");thi=
s.object.moveTo(Nc,Oc,Pc,Qc);};xmp.OverlayProxy.prototype.setProperty=3Df=
unction(Rc,Sc){this.object.setProperty(Rc,Sc);};xmp.OverlayProxy.prototyp=
e.getProperty=3Dfunction(Tc){return =
this.object.getProperty(Tc);};xmp.SLATE_OVERLAY=3D"SlateOverlay";xmp.Slat=
eOverlay=3Dfunction(Uc,Vc,Wc,Xc){xmp.SlateOverlay.ctor.call(this,Uc,Vc,Wc=
,Xc,xmp.SLATE_OVERLAY);this.nonVisibleViewportRect=3D{left:"0px",top:"0px=
",width:"1px",height:"1px"};this.origViewportRect=3Dnull;};xmp.DERIVE_CLA=
SS(xmp.Overlay,xmp.SlateOverlay);xmp.SlateOverlay.prototype.show=3Dfuncti=
on(Yc){try{this.display=3Dxmp.DISPLAY_BLOCK;if(false=3D=3D=3Dthis.viewpor=
tExists()){return;}=0A=
if(!this.origViewportRect){var =
Zc=3Dthis.viewport.getSize();this.setPlacement(Zc.width,Zc.height);}=0A=
this.viewport.moveTo(this.nonVisibleViewportRect.left,this.nonVisibleView=
portRect.top,this.nonVisibleViewportRect.width,this.nonVisibleViewportRec=
t.height,false);this.getNativeOverlay().style.display=3Dthis.display;}=0A=
catch(e){this._handleError("Showing slate =
overlay.",e);}};xmp.SlateOverlay.prototype.hide=3Dfunction(){try{if(false=
=3D=3D=3Dthis.viewportExists()||false=3D=3D=3Dthis.isVisible()){return;}=0A=
if(this.origViewportRect){this.viewport.moveTo(this.origViewportRect.left=
,this.origViewportRect.top,this.origViewportRect.width,this.origViewportR=
ect.height,false);}=0A=
this.display=3Dxmp.DISPLAY_NONE;this.getNativeOverlay().style.display=3Dt=
his.display;}=0A=
catch(e){this._handleError("Hiding slate =
overlay.",e);}};xmp.SlateOverlay.prototype.moveTo=3Dfunction($c,ad,bd,cd)=
{throw new xmp.util.internals.UnsupportedOperationError("The \"moveTo\" =
operation is not =
supported.");};xmp.SlateOverlay.prototype.onViewportChange=3Dfunction(dd,=
ed,fd,gd){this.setPlacement(fd,gd);this.refresh();};xmp.SlateOverlay.prot=
otype.setPlacement=3Dfunction(hd,jd){this.origViewportRect=3D{left:"0px",=
top:"0px",width:hd,height:jd};this.rectangle=3D{left:0,top:0,width:hd,hei=
ght:jd};};xmp.ALL_OVERLAYS=3D"AllOverlays";xmp.OVERLAY_GROUP_SHOW=3D"Grou=
pShow";xmp.OVERLAY_GROUP_HIDE=3D"GroupHide";xmp.OVERLAY_GROUP_REFRESH=3D"=
GroupRefresh";xmp.ViewManager=3Dfunction(kd){this.activeViewport=3Dnull;t=
his.viewportsConfig=3D{};this.overlays=3D[];this.context=3Dkd;};xmp.ViewM=
anager.prototype.setViewportConfig=3Dfunction(ld,md){if(false=3D=3D=3Dxmp=
.ViewportFactory.canCreate(md)){throw new xmp.ViewportError("Setting =
viewport configuration.","Invalid media player viewport type =
\""+md+"\".",null);}=0A=
this.viewportsConfig[ld]=3Dmd;};xmp.ViewManager.prototype.getViewportConf=
ig=3Dfunction(nd){var =
od=3Dthis.viewportsConfig[nd];if(od=3D=3D=3Dnull){throw new =
xmp.InvalidMimeTypeError("Retrieving viewport configuration.","Unable to =
find media player viewport configuration for MIME type \""+nd+"\".");}=0A=
return =
od;};xmp.ViewManager.prototype.getActiveViewport=3Dfunction(){return =
this.activeViewport;};xmp.ViewManager.prototype.openViewport=3Dfunction(p=
d,qd,rd,sd){var td=3Dthis.getViewportConfig(rd);var =
ud=3Dthis.activeViewport;if(this.activeViewport=3D=3D=3Dnull||(this.activ=
eViewport.getType()!=3D=3Dtd)){return this.createViewport(pd,qd,rd,sd);}=0A=
else =
if(this.activeViewport.mime_type!=3D=3Drd){this.activeViewport.reset(sd);=
}=0A=
if(false=3D=3D=3Dud.isOpen()){try{ud.open(sd);return true;}=0A=
catch(e){ud.close();throw e;}}=0A=
return =
false;};xmp.ViewManager.prototype.createViewport=3Dfunction(vd,wd,xd,yd){=
var zd=3Dthis.getViewportConfig(xd);if(!zd){throw new =
xmp.ViewportError("Creating viewport.","Unable to find viewport =
configuration for MIME type \""+xd+"\" .",null);}=0A=
if(this.activeViewport=3D=3D=3Dnull||(this.activeViewport.getType()!=3D=3D=
zd)){var =
Ad=3Dxmp.ViewportFactory.createViewport(vd,wd,zd,xd,yd,this.overlays);try=
{if(this.activeViewport!=3D=3Dnull){this.activeViewport.close();this.acti=
veViewport=3Dnull;}}=0A=
catch(e){throw e;}=0A=
finally{this.activeViewport=3DAd;}=0A=
return true;}=0A=
return =
false;};xmp.ViewManager.prototype.createOverlay=3Dfunction(Bd,Cd,Dd){if(t=
his.getOverlay(Dd)!=3D=3Dnull){throw new xmp.OverlayError("Creating =
overlay.","An overlay already exists with the name \""+Dd+"\".",null);}=0A=
var =
Ed=3Dxmp.OverlayFactory.createOverlay(this.context,this.activeViewport,Bd=
,Cd,Dd);this.overlays.push(Ed);return =
Ed;};xmp.ViewManager.prototype.getOverlay=3Dfunction(Fd){for(var =
i=3D0;i<this.overlays.length;i++){if(this.overlays[i].getName()=3D=3D=3DF=
d){return this.overlays[i];}}=0A=
return =
null;};xmp.ViewManager.prototype.showOverlays=3Dfunction(Gd){this.doOverl=
ayGroupAction(Gd,xmp.OVERLAY_GROUP_SHOW);};xmp.ViewManager.prototype.hide=
Overlays=3Dfunction(Hd){this.doOverlayGroupAction(Hd,xmp.OVERLAY_GROUP_HI=
DE);};xmp.ViewManager.prototype.refreshOverlays=3Dfunction(Id){this.doOve=
rlayGroupAction(Id,xmp.OVERLAY_GROUP_REFRESH);};xmp.ViewManager.prototype=
.doOverlayGroupAction=3Dfunction(Jd,Kd){for(var =
i=3D0;i<this.overlays.length;i++){if(this.overlays[i].group=3D=3D=3DJd||J=
d=3D=3D=3Dxmp.ALL_OVERLAYS){var =
Ld=3Dthis.overlays[i];Ld.setViewport(this.activeViewport);if(Kd=3D=3D=3Dx=
mp.OVERLAY_GROUP_SHOW){Ld.show();}=0A=
else if(Kd=3D=3D=3Dxmp.OVERLAY_GROUP_HIDE){Ld.hide();}=0A=
else =
if(Kd=3D=3D=3Dxmp.OVERLAY_GROUP_REFRESH){Ld.refresh();}}}};xmp.ViewManage=
r.prototype.close=3Dfunction(){if(this.activeViewport!=3D=3Dnull){this.ac=
tiveViewport.close();this.activeViewport=3Dnull;}};xmp.ViewportError=3Dfu=
nction(Md,Nd,Od,Pd){var Qd=3D[];if(Od){Qd.push({label:"Viewport =
Type",text:Od.getType()});Qd.push({label:"Viewport =
Name",text:Od.getName()});}=0A=
if(Pd){Qd=3DQd.concat(Pd);}=0A=
xmp.ViewportError.ctor.call(this,"ViewportError",Md,Nd,Qd);};xmp.DERIVE_C=
LASS(xmp.util.internals.XMPError,xmp.ViewportError);xmp.VIEWPORT=3D"Viewp=
ort";xmp.ViewportFactory=3Dfunction(){return{createViewport:function(Rd,S=
d,Td,Ud,Vd,Wd){var Xd=3Dxmp.getNamespacedMethod(Td);if(!Xd){throw new =
xmp.ViewportError("Creating viewport.","Unable to create \""+Td+"\" =
viewport.",null);}=0A=
var Yd=3Dnew Xd(Rd,Ud,Sd,Wd);Yd.init(Vd,null,null);return =
Yd;},canCreate:function(Zd){try{return(true=3D=3D=3Dxmp.isDefined(xmp.get=
NamespacedMethod(Zd)));}=0A=
catch(e){}=0A=
return =
false;}};}();xmp.ViewportProxy=3Dfunction($d){this.viewManager=3D$d;};xmp=
.ViewportProxy.prototype.viewManager=3Dnull;xmp.ViewportProxy.prototype.g=
etType=3Dfunction(){return((this.viewManager.getActiveViewport()!=3D=3Dnu=
ll)?this.viewManager.getActiveViewport().getType():"None");};xmp.Viewport=
Proxy.prototype.getSize=3Dfunction(){return((this.viewManager.getActiveVi=
ewport()!=3D=3Dnull)?this.viewManager.getActiveViewport().getSize():null)=
;};xmp.ViewportProxy.prototype.setSize=3Dfunction(ae,be){xmp.validateArgu=
ments(arguments,[xmp.STRING_TYPE,xmp.STRING_TYPE],"ViewportProxy.setSize"=
);this.viewManager.getActiveViewport().setSize(ae,be,true);};xmp.Viewport=
Proxy.prototype.moveTo=3Dfunction(ce,de,ee,fe){xmp.validateArguments(argu=
ments,[xmp.STRING_TYPE,xmp.STRING_TYPE,xmp.STRING_TYPE,xmp.STRING_TYPE],"=
ViewportProxy.moveTo");this.viewManager.getActiveViewport().moveTo(ce,de,=
ee,fe,true);};xmp.ViewportProxy.prototype.setStyle=3Dfunction(ge){xmp.val=
idateArguments(arguments,[xmp.STRING_TYPE],"ViewportProxy.setStyle");this=
.viewManager.getActiveViewport().setStyle(ge);};xmp.ViewportProxy.prototy=
pe.createOverlay=3Dfunction(he,ie,je){xmp.validateArguments(arguments,[xm=
p.STRING_TYPE,xmp.STRING_TYPE,xmp.STRING_TYPE],"ViewportProxy.createOverl=
ay");return new =
xmp.OverlayProxy(this.viewManager.createOverlay(he,ie,je));};xmp.Viewport=
Proxy.prototype.getOverlay=3Dfunction(ke){xmp.validateArguments(arguments=
,[xmp.STRING_TYPE],"ViewportProxy.getOverlay");var =
le=3Dthis.viewManager.getOverlay(ke);return((le!=3D=3Dnull)?new =
xmp.OverlayProxy(le):null);};xmp.ViewportProxy.prototype.showOverlays=3Df=
unction(me){xmp.validateArguments(arguments,[xmp.STRING_TYPE],"ViewportPr=
oxy.showOverlays");this.viewManager.showOverlays(me);};xmp.ViewportProxy.=
prototype.hideOverlays=3Dfunction(ne){xmp.validateArguments(arguments,[xm=
p.STRING_TYPE],"ViewportProxy.hideOverlays");this.viewManager.hideOverlay=
s(ne);};xmp.ViewportProxy.prototype.refreshOverlays=3Dfunction(oe){xmp.va=
lidateArguments(arguments,[xmp.STRING_TYPE],"ViewportProxy.refreshOverlay=
s");this.viewManager.refreshOverlays(oe);};xmp.ViewportRegistry=3Dfunctio=
n(){var pe=3D{};return{addViewport:function(qe){var =
re=3Dqe.getName();if(pe[re]!=3D=3Dnull&&true=3D=3D=3Dxmp.isDefined(pe[re]=
)){throw new xmp.ViewportError("Adding viewport to registry.","A media =
player viewport already exists with the name \""+re+"\".",qe);}=0A=
pe[re]=3Dqe;},getViewport:function(se){return =
pe[se];},removeViewport:function(te){if(te=3D=3D=3Dnull||false=3D=3D=3Dxm=
p.isDefined(te)){throw new xmp.ViewportError("Removing viewport from =
registry.","Cannot remove NULL viewport from viewport registry.",te);}=0A=
pe[te.getName()]=3Dnull;}};}();
------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/video/xmp/xmp_playerapi.js

// Turner XMP, Release Build, =A9 2007 Turner Broadcasting System, Inc. =
A Time Warner Company.  File: xmp_playerapi, Version: 0.1.524.1663

xmp.PlaybackMode=3Dfunction(aa,ba,ca){this.type=3Daa;this.name=3Dba;this.=
transitionTable=3Dca;};xmp.PlaybackMode.prototype.getName=3Dfunction(){re=
turn =
this.name;};xmp.PlaybackMode.prototype.changeMode=3Dfunction(da,ea,fa,ga)=
{this.validateModeChange(da,ea,fa);da._changeState(ea,ga);};xmp.PlaybackM=
ode.prototype.invalidOperation=3Dfunction(ha,ia){throw new =
xmp.PlaybackModeError("Validating state operation.","Invalid mode =
operation.  The \""+this.name+"\" mode does not change or transition to =
a mode that supports the \""+ia.toLowerCase()+"\" =
operation.",this);};xmp.PlaybackMode.prototype.validateModeChange=3Dfunct=
ion(ja,ka,la){if(false=3D=3D=3Dthis.isAvailable(ja,ka)){this.invalidOpera=
tion(ja,la);}};xmp.PlaybackMode.prototype.canTransition=3Dfunction(ma){if=
(this.transitionTable=3D=3D=3Dnull){return false;}=0A=
for(var =
i=3D0;i<this.transitionTable.length;i++){if(this.transitionTable[i]=3D=3D=
=3Dma){return true;}}=0A=
return =
false;};xmp.PlaybackMode.prototype.getPlayer=3Dfunction(na){return =
na._getPlayer();};xmp.PlaybackMode.prototype.open=3Dfunction(oa,pa){};xmp=
.PlaybackMode.prototype.close=3Dfunction(qa){};xmp.PlaybackMode.prototype=
.play=3Dfunction(ra){};xmp.PlaybackMode.prototype.pause=3Dfunction(sa){};=
xmp.PlaybackMode.prototype.stop=3Dfunction(ta){};xmp.PlaybackMode.prototy=
pe.rewind=3Dfunction(ua){};xmp.PlaybackMode.prototype.fastForward=3Dfunct=
ion(va){};xmp.PlaybackMode.prototype.seek=3Dfunction(wa,xa){};xmp.Playbac=
kMode.prototype.ended=3Dfunction(ya){};xmp.PlaybackMode.prototype.error=3D=
function(za){};xmp.PlaybackMode.prototype.transition=3Dfunction(Aa,Ba,Ca)=
{};xmp.PlaybackMode.prototype.isAvailable=3Dfunction(Da,Ea){return =
false;};xmp.PlaybackMode.prototype.getPosition=3Dfunction(Fa){return =
0;};xmp.PlaybackMode.prototype.getDuration=3Dfunction(Ga){return =
0;};xmp.PlaybackMode.prototype.getVolume=3Dfunction(Ha){return =
0;};xmp.PlaybackMode.prototype.setVolume=3Dfunction(Ia,Ja){};xmp.Playback=
Mode.prototype.getMute=3Dfunction(Ka){return =
false;};xmp.PlaybackMode.prototype.setMute=3Dfunction(La,Ma){};xmp.Playba=
ckMode.prototype.getFullscreen=3Dfunction(Na){return =
false;};xmp.PlaybackMode.prototype.setFullscreen=3Dfunction(Oa,Pa){};xmp.=
PlaybackMode.prototype.getBufferingProgress=3Dfunction(Qa){return =
null;};xmp.PlugInError=3Dfunction(Ra,Sa,Ta,Ua){xmp.PlugInError.ctor.call(=
this,xmp.XmpErrorCodes.FATAL_PLUGIN,Ra,Sa,Ta);this.plugIn=3DUa;};xmp.DERI=
VE_CLASS(xmp.FatalException,xmp.PlugInError);xmp.MediaPlayer=3Dfunction(V=
a,Wa){this.name=3DVa;this.defaultEventListener=3DWa;this._logger=3Dnew =
xmp.util.internals.CategoryLogger('MediaPlayer');this._MEDIA_PLAYER_CONFI=
GURATION_PATH=3D"/PlayerContexts/Global/Media =
Player";this._FULLSCREEN_ENABLED=3D"Fullscreen =
Enabled";this.STRETCH_TO_FIT=3D"Stretch To =
Fit";};xmp.MediaPlayer.prototype.name=3Dnull;xmp.MediaPlayer.prototype.de=
faultEventListener=3Dnull;xmp.MediaPlayer.prototype.init=3Dfunction(){try=
{this._urlStrategy=3Dxmp.ContextualUrlStrategy.create();this.registry=3Dn=
ew =
xmp.PlayerModeRegistry();this.state=3Dthis.registry.findMode(xmp.FINI);th=
is.viewManager=3Dnew =
xmp.ViewManager(this.name);xmp.NativePlayerRegistry.createGroup(this.name=
,this);this.player=3Dxmp.NativePlayerRegistry.findPlayerByMimeType(this.n=
ame,xmp.NULL_MIME_TYPE);this.setViewportConfig(xmp.NULL_MIME_TYPE,xmp.DHT=
ML_VIEWPORT);this.bandwidthRecorder=3Dnew =
xmp.BandwidthRecorder(this,this._MEDIA_PLAYER_CONFIGURATION_PATH);this.fu=
llscreenEnabled=3Dxmp.util.SettingsManager.getInstance().getGlobalContext=
Node().getNodeForPath(this._MEDIA_PLAYER_CONFIGURATION_PATH).getBoolean(t=
his._FULLSCREEN_ENABLED,false);this.stretchToFit=3Dxmp.util.SettingsManag=
er.getInstance().getGlobalContextNode().getNodeForPath(this._MEDIA_PLAYER=
_CONFIGURATION_PATH).getBoolean(this.STRETCH_TO_FIT,false);this.listeners=
=3D[];this.mute=3Dfalse;this.volume=3D0;this._addListener(this.defaultEve=
ntListener);if(!this.name||this.name.length=3D=3D=3D0){throw new =
xmp.MediaPlayerError("Validating media player name.","Invalid media =
player name.  Missing name.");}=0A=
if(this.name.indexOf(" ")!=3D=3D-1){throw new =
xmp.MediaPlayerError("Validating media player name.","Invalid media =
player name.  Name cannot contain spaces.");}=0A=
this.listeners[0].onInitialized();}=0A=
catch(e){this._handleMethodError("Initializing.",e);}};xmp.MediaPlayer.pr=
ototype.fini=3Dfunction(){try{this.close();this.viewManager.close();xmp.N=
ativePlayerRegistry.destoryGroup(this.name);}=0A=
catch(e){this._handleMethodError("Fini.",e);}};xmp.MediaPlayer.prototype.=
setViewportConfig=3Dfunction(Xa,Ya){try{xmp.validateArguments(arguments,[=
xmp.STRING_TYPE,xmp.STRING_TYPE],"MediaPlayer.setViewportConfig");if(fals=
e=3D=3D=3Dxmp.PlayerPolicy.isMimeTypeSupported(Xa)){throw new =
xmp.InvalidMimeTypeError("Setting viewport configuration.","Invalid =
media player viewport MIME type \""+Xa+"\".");}=0A=
this.viewManager.setViewportConfig(Xa,Ya);}=0A=
catch(e){this._handleMethodError("Setting viewport =
configuration.",e);}};xmp.MediaPlayer.prototype.getViewport=3Dfunction(){=
try{return new xmp.ViewportProxy(this.viewManager);}=0A=
catch(e){this._handleMethodError("Retrieving viewport.",e);}=0A=
return =
null;};xmp.MediaPlayer.prototype.open=3Dfunction(Za){try{xmp.validateArgu=
ments(arguments,[xmp.OBJECT_TYPE],"MediaPlayer.open");this.node=3DZa;Za.s=
etMetadata('originalUri',Za.getURI());if(false=3D=3D=3Dxmp.PlayerPolicy.a=
pply(this,Za)){return;}=0A=
this._validateNode(Za);if(false=3D=3D=3Dthis._initNativePlayer(Za)){this.=
_handleNativePlayerReady(Za);}}=0A=
catch(e){this._handleMethodError("Opening.",e);}};xmp.MediaPlayer.prototy=
pe.close=3Dfunction(){try{this._close();this.viewManager.close();this._se=
tNullPlayer();}=0A=
catch(e){this._handleMethodError("Closing.",e);}};xmp.MediaPlayer.prototy=
pe.play=3Dfunction(){try{this.state.play(this);}=0A=
catch(e){this._handleMethodError("Playing.",e);}};xmp.MediaPlayer.prototy=
pe.pause=3Dfunction(){try{this.state.pause(this);}=0A=
catch(e){this._handleMethodError("Pausing.",e);}};xmp.MediaPlayer.prototy=
pe.stop=3Dfunction(){try{this.state.stop(this);}=0A=
catch(e){this._handleMethodError("Stopping.",e);}};xmp.MediaPlayer.protot=
ype.rewind=3Dfunction(){try{this.state.rewind(this);}=0A=
catch(e){this._handleMethodError("Rewinding.",e);}};xmp.MediaPlayer.proto=
type.fastForward=3Dfunction(){try{this.state.fastForward(this);}=0A=
catch(e){this._handleMethodError("Fast =
forwarding.",e);}};xmp.MediaPlayer.prototype.seek=3Dfunction($a){try{xmp.=
validateArguments(arguments,[xmp.NUMBER_TYPE],"MediaPlayer.seek");this._v=
alidatePosition($a);this.state.seek(this,$a);}=0A=
catch(e){this._handleMethodError("Seeking.",e);}};xmp.MediaPlayer.prototy=
pe.isAvailable=3Dfunction(ab){try{xmp.validateArguments(arguments,[xmp.ST=
RING_TYPE],"MediaPlayer.isAvailable");return =
this.state.isAvailable(this,ab);}=0A=
catch(e){this._handleMethodError("Checking information or action =
available.",e);}=0A=
return =
false;};xmp.MediaPlayer.prototype.getPosition=3Dfunction(){try{return =
this.state.getPosition(this);}=0A=
catch(e){this._handleMethodError("Retrieving position.",e);}=0A=
return 0;};xmp.MediaPlayer.prototype.getDuration=3Dfunction(){try{return =
this.state.getDuration(this);}=0A=
catch(e){this._handleMethodError("Retrieving duration.",e);}=0A=
return =
0;};xmp.MediaPlayer.prototype.setVolume=3Dfunction(bb){try{xmp.validateAr=
guments(arguments,[xmp.NUMBER_TYPE],"MediaPlayer.setVolume");this._valida=
teVolume(bb);this.state.setVolume(this,bb);this.volume=3Dthis.state.getVo=
lume(this);}=0A=
catch(e){this._handleMethodError("Setting =
volume.",e);}};xmp.MediaPlayer.prototype.getVolume=3Dfunction(){try{retur=
n this.state.getVolume(this);}=0A=
catch(e){this._handleMethodError("Retrieving volume.",e);}=0A=
return =
0;};xmp.MediaPlayer.prototype.setMute=3Dfunction(cb){try{xmp.validateArgu=
ments(arguments,[xmp.BOOLEAN_TYPE],"MediaPlayer.setMute");this.state.setM=
ute(this,cb);this.mute=3Dthis.state.getMute(this);}=0A=
catch(e){this._handleMethodError("Setting =
mute.",e);}};xmp.MediaPlayer.prototype.getMute=3Dfunction(){try{return =
this.state.getMute(this);}=0A=
catch(e){this._handleMethodError("Retrieving mute.",e);}=0A=
return =
false;};xmp.MediaPlayer.prototype.setFullscreen=3Dfunction(db){try{xmp.va=
lidateArguments(arguments,[xmp.BOOLEAN_TYPE],"MediaPlayer.setFullscreen")=
;this.state.setFullscreen(this,db);}=0A=
catch(e){this._handleMethodError("Setting =
fullscreen.",e);}};xmp.MediaPlayer.prototype.getFullscreen=3Dfunction(){t=
ry{return this.state.getFullscreen(this);}=0A=
catch(e){this._handleMethodError("Retrieving fullscreen.",e);}=0A=
return =
false;};xmp.MediaPlayer.prototype.getBufferingProgress=3Dfunction(){try{r=
eturn this.state.getBufferingProgress(this);}=0A=
catch(e){this._handleMethodError("Retrieving buffering progress.",e);}=0A=
return =
null;};xmp.MediaPlayer.prototype.addEventListener=3Dfunction(eb){try{xmp.=
validateArguments(arguments,[xmp.OBJECT_TYPE],"MediaPlayer.addEventListen=
er");this._addListener(eb);}=0A=
catch(e){this._handleMethodError("Adding event =
listener.",e);}};xmp.MediaPlayer.prototype._initNativePlayer=3Dfunction(f=
b){try{this._close();var gb=3Dfb.getMimeType();var =
hb=3Dxmp.NativePlayerRegistry.findPlayerByMimeType(this.name,gb);if(!hb){=
throw new xmp.InvalidMimeTypeError("Initializing native player.","Unable =
to find native player for MIME type \""+gb+"\".");}=0A=
if(gb=3D=3D=3Dxmp.MOCK_MIME_TYPE){this.player=3Dhb;return false;}=0A=
var =
ib=3D{player:hb,data:{group:this.name,viewport:null,volume:this.volume,mu=
te:this.mute,node:fb,fullscreenEnabled:this.fullscreenEnabled,stretchToFi=
t:this.stretchToFit}};if(false=3D=3D=3Dthis.viewManager.openViewport(this=
,this.name,fb.getMimeType(),ib)){if(hb.type!=3D=3Dthis.player.type){hb.cr=
eate({group:this.name,viewport:this.viewManager.getActiveViewport(),volum=
e:this.volume,mute:this.mute,node:fb,fullscreenEnabled:this.fullscreenEna=
bled,stretchToFit:this.stretchToFit});this.player=3Dhb;return true;}=0A=
return false;}=0A=
return true;}=0A=
catch(e){this._setNullPlayer();throw e;}=0A=
return =
false;};xmp.MediaPlayer.prototype.onNativePlayerStateChange=3Dfunction(jb=
,kb){try{if(jb=3D=3D=3Dxmp.OPEN){if(this.state.type=3D=3D=3Dxmp.ERRORS||t=
his.state.type=3D=3D=3Dxmp.FINI){this._logger.debug("Ignoring native =
player \""+xmp.OPEN+"\" state change.  Media player is in an idle =
(closed) or error state.");return;}=0A=
this._notifyStateChange(jb,kb);this._notifyTimelineChange(this.state.getP=
osition(this),this.state.getDuration(this));this.state.play(this);return;=
}=0A=
else{if(jb=3D=3D=3Dxmp.ENDED){this._notifyTimelineChange(this.state.getPo=
sition(this),this.state.getDuration(this));this.state.ended(this);}=0A=
else if(jb=3D=3D=3Dxmp.CONNECTING){this.bandwidthRecorder.start();}}=0A=
this._notifyStateChange(jb,kb);}=0A=
catch(e){this._handleError(e);}};xmp.MediaPlayer.prototype.onNativePlayer=
Trigger=3Dfunction(lb,mb){};xmp.MediaPlayer.prototype.onNativePlayerError=
=3Dfunction(e){this._handleError(e);};xmp.MediaPlayer.prototype.onNativeP=
layerTimelineChange=3Dfunction(nb,ob){this._notifyTimelineChange(nb,ob);t=
his._checkTimeLimit(nb,ob);};xmp.MediaPlayer.prototype.onNativePlayerCrea=
ted=3Dfunction(pb,qb){if(this.state.type=3D=3D=3Dxmp.ERRORS){return;}=0A=
this._logger.debug("Created \""+pb.getType()+"\" native player =
\""+pb.getName()+"\".");this._handleNativePlayerReady(qb.node);};xmp.Medi=
aPlayer.prototype.onNativePlayerExecuteCommand=3Dfunction(rb,sb){var =
tb=3Dnull;if(rb=3D=3D=3Dxmp.PLAY){this.play();}=0A=
else if(rb=3D=3D=3Dxmp.PAUSE){this.pause();}=0A=
else if(rb=3D=3D=3Dxmp.STOP){this.stop();}=0A=
else if(rb=3D=3D=3Dxmp.REWIND){this.rewind();}=0A=
else if(rb=3D=3D=3Dxmp.FAST_FORWARD){this.fastForward();}=0A=
else if(rb=3D=3D=3Dxmp.SEEKABLE){this.seek(parseInt(sb,10));}=0A=
else if(rb=3D=3D=3Dxmp.IS_AVAILABLE){tb=3Dthis.isAvailable(sb);}=0A=
else if(rb=3D=3D=3Dxmp.GET_POSITION){tb=3Dthis.getPosition();}=0A=
else if(rb=3D=3D=3Dxmp.GET_DURATION){tb=3Dthis.getDuration();}=0A=
else if(rb=3D=3D=3Dxmp.GET_VOLUME){tb=3Dthis.getVolume();}=0A=
else if(rb=3D=3D=3Dxmp.SET_VOLUME){this.setVolume(parseInt(sb,10));}=0A=
else if(rb=3D=3D=3Dxmp.GET_MUTE){tb=3Dthis.getMute();}=0A=
else if(rb=3D=3D=3Dxmp.SET_MUTE){this.setMute(xmp.TRUE=3D=3D=3Dsb);}=0A=
return =
tb;};xmp.MediaPlayer.prototype.onViewportOpened=3Dfunction(ub,vb){vb.data=
.viewport=3Dub;vb.player.create(vb.data);this.player=3Dvb.player;};xmp.Me=
diaPlayer.prototype.onCreateViewport=3Dfunction(wb,xb,yb,zb){return =
this.listeners[0].onCreateViewport(wb,xb,yb,zb);};xmp.MediaPlayer.prototy=
pe.onDestroyViewport=3Dfunction(Ab,Bb){this.listeners[0].onDestroyViewpor=
t(Ab,Bb);};xmp.MediaPlayer.prototype.onViewportCreated=3Dfunction(Cb,Db){=
if(this.state.type=3D=3D=3Dxmp.ERRORS){return;}=0A=
if(Db=3D=3D=3Dnull){return;}=0A=
this._logger.debug("Created \""+Cb.getType()+"\" =
viewport.");this.viewManager.openViewport(this,this.name,Cb.mime_type,Db)=
;};xmp.MediaPlayer.prototype.onViewportError=3Dfunction(e){this._handleEr=
ror(e);};xmp.MediaPlayer.prototype._handleMethodError=3Dfunction(Eb,e){va=
r Fb=3De;if(false=3D=3D=3D(Fb instanceof xmp.MediaPlayerError)){Fb=3Dnew =
xmp.MediaPlayerError(((e.context)?e.context:Eb),((e.rawMessage)?e.rawMess=
age:e.message));Fb.setInnerError(e);}=0A=
this._handleError(Fb);};xmp.MediaPlayer.prototype._handleError=3Dfunction=
(e){try{var =
Gb=3D((this.node)?this.node.getURI():"");if(Gb&&Gb.length>0&&(e =
instanceof =
xmp.util.internals.XMPError)){e.addExtendedInfo({label:"Url",text:Gb});}=0A=
var Hb=3D"\n\n"+e.message;this._logger.debug(Hb);var Ib=3Dnew =
xmp.baseplayer.ApplicationError(e,'mediaPlayerError',e.context,[{label:"U=
rl",text:Gb}]);if(!this.listeners||this.listeners.length=3D=3D=3D0){this.=
_logAppError(Ib);xmp.handleFatalError(Ib);}=0A=
else{this._error();if(this._urlStrategy.tryFailover(this,this.node,e)){re=
turn;}=0A=
this._logAppError(Ib);for(var =
i=3D0;i<this.listeners.length;i++){this.listeners[i].onError(this.node,Ib=
);}}}=0A=
catch(e2){}};xmp.MediaPlayer.prototype._logAppError=3Dfunction(Jb){if(Jb.=
getInnerError()instanceof =
xmp.NativePlayerConnectionError){this._logger.critical(Jb.message,Jb);}=0A=
else{this._logger.warn(Jb.message,Jb);}};xmp.MediaPlayer.prototype._valid=
ateNode=3Dfunction(Kb){if(Kb=3D=3D=3Dnull){throw new =
xmp.InvalidPlayableNodeError("Validating playable node.","Invalid =
playable node.  Missing node.");}=0A=
var Lb=3DKb.getMimeType();if(!Lb||Lb.length=3D=3D=3D0){throw new =
xmp.InvalidPlayableNodeError("Validating playable node mime =
type.","Invalid playable node.  Missing MIME type.");}=0A=
var Mb=3DKb.getURI();if(!Mb||Mb.length=3D=3D=3D0){throw new =
xmp.InvalidPlayableNodeError("Validating playable node URI.","Invalid =
playable node.  Missing URI.");}=0A=
this._validateTimeLimit(Kb);};xmp.MediaPlayer.prototype._setNullPlayer=3D=
function(){try{var =
Nb=3Dxmp.NativePlayerRegistry.findPlayerByMimeType(this.name,xmp.NULL_MIM=
E_TYPE);if(this.viewManager.getActiveViewport()=3D=3D=3Dnull){this.viewMa=
nager.createViewport(this,this.name,xmp.NULL_MIME_TYPE,null);}=0A=
Nb.create({group:this.name,viewport:this.viewManager.getActiveViewport(),=
volume:0,mute:false,node:null,fullscreenEnabled:false,stretchToFit:false}=
);this.player=3DNb;}=0A=
catch(e){}};xmp.MediaPlayer.prototype._validateVolume=3Dfunction(Ob){if(O=
b<0||Ob>100){throw new xmp.util.internals.InvalidArgsError("Invalid =
volume \""+Ob+"\".  Valid values are 1 to =
100.");}};xmp.MediaPlayer.prototype._validatePosition=3Dfunction(Pb){var =
Qb=3Dthis.getDuration();if(Pb<0||Pb>Qb){throw new =
xmp.util.internals.InvalidArgsError("Invalid position \""+Pb+"\".  Valid =
values are 0 to "+Qb+" =
seconds.");}};xmp.MediaPlayer.prototype._addListener=3Dfunction(Rb){this.=
_validateListener(Rb);this.listeners.push(Rb);};xmp.MediaPlayer.prototype=
._validateListener=3Dfunction(Sb){if(!Sb){throw new =
xmp.MediaPlayerError("Validating listener.","Invalid media player event =
listener.  NULL listener.");}=0A=
if(false=3D=3D=3Dxmp.isDefined(Sb.onInitialized)){throw new =
xmp.MediaPlayerError("Validating listener.","Invalid media player event =
listener.  Missing \"onInitialized\" handler.");}=0A=
if(false=3D=3D=3Dxmp.isDefined(Sb.onError)){throw new =
xmp.MediaPlayerError("Validating listener.","Invalid media player event =
listener.  Missing \"onError\" handler.");}=0A=
if(false=3D=3D=3Dxmp.isDefined(Sb.onStateChange)){throw new =
xmp.MediaPlayerError("Validating listener.","Invalid media player event =
listener.  Missing \"onStateChange\" handler.");}=0A=
if(false=3D=3D=3Dxmp.isDefined(Sb.onTimelineChange)){throw new =
xmp.MediaPlayerError("Validating listener.","Invalid media player event =
listener.  Missing \"onTimelineChange\" handler.");}=0A=
if(false=3D=3D=3Dxmp.isDefined(Sb.onCreateViewport)){throw new =
xmp.MediaPlayerError("Validating listener.","Invalid media player event =
listener.  Missing \"onCreateViewport\" handler.");}=0A=
if(false=3D=3D=3Dxmp.isDefined(Sb.onDestroyViewport)){throw new =
xmp.MediaPlayerError("Validating listener.","Invalid media player event =
listener.  Missing \"onDestroyViewport\" handler.");}=0A=
if(false=3D=3D=3Dxmp.isDefined(Sb.onPlugInError)){throw new =
xmp.MediaPlayerError("Invalid media player event listener.  Missing =
\"onPlugInError\" handler.");}=0A=
if(false=3D=3D=3Dxmp.isDefined(Sb.onUnsupportedPlatformError)){throw new =
xmp.MediaPlayerError("Invalid media player event listener.  Missing =
\"onUnsupportedPlatformError\" =
handler.");}};xmp.MediaPlayer.prototype._checkTimeLimit=3Dfunction(Tb,Ub)=
{this._validateTimeLimit(this.node);var =
Vb=3Dthis.node.getTimeLimitInSeconds();if(Vb!=3D=3Dxmp.NO_TIME_LIMIT&&Tb>=
=3DVb){this.state.ended(this);this._notifyStateChange(xmp.ENDED,null);}};=
xmp.MediaPlayer.prototype._notifyTimelineChange=3Dfunction(Wb,Xb){for(var=
 =
i=3D0;i<this.listeners.length;i++){this.listeners[i].onTimelineChange(thi=
s.node,Wb,Xb);}};xmp.MediaPlayer.prototype._notifyStateChange=3Dfunction(=
Yb,Zb){for(var =
i=3D0;i<this.listeners.length;i++){this.listeners[i].onStateChange(this.n=
ode,Yb,Zb);}};xmp.MediaPlayer.prototype.onError=3Dfunction($b,e){this.nod=
e=3D$b;this._handleError(e);};xmp.MediaPlayer.prototype.onPlugInError=3Df=
unction(e){this._error();this.listeners[0].onPlugInError(e);};xmp.MediaPl=
ayer.prototype.onUnsupportedPlatformError=3Dfunction(e){this._error();thi=
s.listeners[0].onUnsupportedPlatformError(e);};xmp.MediaPlayer.prototype.=
_changeState=3Dfunction(ac,bc){var =
dc=3Dthis.registry.findMode(ac);dc.transition(this,bc,this.state);this._l=
ogger.debug("Changed/transitioned to \""+dc.getName()+"\" =
mode.");this.state=3Ddc;};xmp.MediaPlayer.prototype._getPlayer=3Dfunction=
(){return =
this.player;};xmp.MediaPlayer.prototype._validateTimeLimit=3Dfunction(ec)=
{var =
fc=3Dec.getTimeLimitInSeconds();if(false=3D=3D=3Dxmp.isDefined(fc)){throw=
 new xmp.InvalidPlayableNodeError("Invalid playable node.  Missing time =
limit.");}=0A=
if(fc!=3D=3Dxmp.NO_TIME_LIMIT&&fc<=3D0){throw new =
xmp.InvalidPlayableNodeError("Invalid playable node.  Invalid time limit =
\""+fc+"\". Expected values are "+xmp.NO_TIME_LIMIT+" and greater than 1 =
seconds.");}};xmp.MediaPlayer.prototype.getName=3Dfunction(){return =
this.name;};xmp.MediaPlayer.prototype._error=3Dfunction(){this.viewManage=
r.hideOverlays(xmp.ALL_OVERLAYS);this.bandwidthRecorder.stop();this.state=
.error(this);this._setNullPlayer();};xmp.MediaPlayer.prototype._close=3Df=
unction(){this.bandwidthRecorder.stop();this.state.close(this);};xmp.Medi=
aPlayer.prototype._handleNativePlayerReady=3Dfunction(gc){this._urlStrate=
gy.buildUrlAsynch(gc,new =
xmp.util.Callback('buildUrlAsynch',this._handleBuildUrlAsynch,this));};xm=
p.MediaPlayer.prototype._handleBuildUrlAsynch=3Dfunction(hc,ic,jc){if(thi=
s.state.type=3D=3D=3Dxmp.ERRORS){return;}=0A=
if(jc!=3D=3Dnull){if(jc instanceof =
xmp.PlugInError){this.onPlugInError(jc);}=0A=
else{this.onError(ic,jc);xmp.handleFatalError(jc);}=0A=
return;}=0A=
this.state.open(this,ic);};xmp.MediaPlayerFactory=3Dfunction(){};xmp.Medi=
aPlayerFactory.createPlayer=3Dfunction(kc,lc){return new =
xmp.MediaPlayer(kc,lc);};xmp.NATIVE_PLAYER_Z_INDEX=3D1;xmp.VERSION_DELIMI=
TER=3D".";xmp.MOVETO_OPERATION=3D"moveTo";xmp.AbstractNativePlayer=3Dfunc=
tion(mc,nc,oc){this.type=3Dmc;this.listener=3Dnc;this.configuration=3Doc;=
this.data=3Dnull;this.volume=3D0;this.mute=3Dfalse;this.bufferingProgress=
=3D{percent:0,bytesDownloaded:0,bytesTotal:0};this.opened=3Dfalse;this.mo=
nitorTimer=3Dnull;this.logger=3Dnull;this.plugIns=3Dnull;};xmp.AbstractNa=
tivePlayer.prototype.open=3Dfunction(pc){};xmp.AbstractNativePlayer.proto=
type.close=3Dfunction(){this.opened=3Dfalse;this.stopMonitor();this.buffe=
ringProgress=3D{percent:0,bytesDownloaded:0,bytesTotal:0};};xmp.AbstractN=
ativePlayer.prototype.fini=3Dfunction(){try{if(this.data=3D=3D=3Dnull){re=
turn;}=0A=
this.close();var qc=3Dthis.getNative();var =
rc=3Dxmp.getDomParent(qc);rc.removeChild(qc);}=0A=
catch(e){}};xmp.AbstractNativePlayer.prototype.play=3Dfunction(){this.sta=
rtMonitor();};xmp.AbstractNativePlayer.prototype.pause=3Dfunction(){this.=
stopMonitor();};xmp.AbstractNativePlayer.prototype.stop=3Dfunction(){this=
.stopMonitor();};xmp.AbstractNativePlayer.prototype.rewind=3Dfunction(){t=
his.startMonitor();};xmp.AbstractNativePlayer.prototype.fastForward=3Dfun=
ction(){this.startMonitor();};xmp.AbstractNativePlayer.prototype.seek=3Df=
unction(sc){this.startMonitor();};xmp.AbstractNativePlayer.prototype.ende=
d=3Dfunction(){this.stopMonitor();};xmp.AbstractNativePlayer.prototype.er=
ror=3Dfunction(){this.close();};xmp.AbstractNativePlayer.prototype.isAvai=
lable=3Dfunction(tc){return =
false;};xmp.AbstractNativePlayer.prototype.getPosition=3Dfunction(){retur=
n 0;};xmp.AbstractNativePlayer.prototype.getDuration=3Dfunction(){return =
0;};xmp.AbstractNativePlayer.prototype.getVolume=3Dfunction(){return =
this.volume;};xmp.AbstractNativePlayer.prototype.setVolume=3Dfunction(uc)=
{this.volume=3Duc;};xmp.AbstractNativePlayer.prototype.getMute=3Dfunction=
(){return =
this.mute;};xmp.AbstractNativePlayer.prototype.setMute=3Dfunction(vc){thi=
s.mute=3Dvc;};xmp.AbstractNativePlayer.prototype.getFullscreen=3Dfunction=
(){return =
false;};xmp.AbstractNativePlayer.prototype.setFullscreen=3Dfunction(wc){v=
ar xc=3D"The \"setFullscreen\" method is not =
supported.";if(false=3D=3D=3Dthis.isFullscreenEnabled()){xc=3D"The =
\"setFullscreen\" method is not supported.  Fullscreen disabled.";}=0A=
throw new xmp.NativePlayerUnsupportedError("Invoking \"setFullscreen\" =
method.",xc,this);};xmp.AbstractNativePlayer.prototype.getBufferingProgre=
ss=3Dfunction(){return =
this.bufferingProgress;};xmp.AbstractNativePlayer.prototype.moveTo=3Dfunc=
tion(yc,zc,Ac,Bc){var Cc=3D((this.getNative().style.zIndex)?"z-Index: =
"+this.getNative().style.zIndex+";":"")+"left: =
"+xmp.getPixelUnits(yc)+"; top: "+xmp.getPixelUnits(zc)+"; width: =
"+xmp.getPixelUnits(Ac)+"; height: =
"+xmp.getPixelUnits(Bc);this.getNative().style.cssText=3DCc;};xmp.Abstrac=
tNativePlayer.prototype.validate=3Dfunction(Dc){this.plugIns=3Dxmp.Player=
Policy.getPlugins();this.onValidatePlugIn(Dc);};xmp.AbstractNativePlayer.=
prototype.onValidatePlugIn=3Dfunction(Ec){};xmp.AbstractNativePlayer.prot=
otype.onMonitorTimelineChange=3Dfunction(Fc,Gc){};xmp.AbstractNativePlaye=
r.prototype.setState=3Dfunction(Hc,Ic){if(Hc=3D=3D=3Dxmp.OPEN){this.opene=
d=3Dtrue;}=0A=
else if(Hc=3D=3D=3Dxmp.BUFFERING){this.bufferingProgress=3DIc;}=0A=
this.createTimer({object:this,id:"setState",interval:xmp.DEFAULT_TIMER_IN=
TERVAL,handler:this.onSetState,context:{type:Hc,data:Ic}}).start();};xmp.=
AbstractNativePlayer.prototype.setError=3Dfunction(Jc,e){this.stopMonitor=
();var Kc=3De;if(false=3D=3D=3D(Kc instanceof =
xmp.NativePlayerError)&&false=3D=3D=3D(Kc instanceof =
xmp.NativePlayerConnectionError)){Kc=3Dnew =
xmp.NativePlayerError(((e.context)?e.context:Jc),((e.rawMessage)?e.rawMes=
sage:e.message),this);Kc.setInnerError(e);}=0A=
this.createTimer({object:this,id:"setError",interval:xmp.DEFAULT_TIMER_IN=
TERVAL,handler:this.onSetError,context:Kc}).start();};xmp.AbstractNativeP=
layer.prototype.setTrigger=3Dfunction(Lc,Mc){this.createTimer({object:thi=
s,id:"setTrigger",interval:xmp.DEFAULT_TIMER_INTERVAL,handler:this.onSetT=
rigger,context:{name:Lc,data:Mc}}).start();};xmp.AbstractNativePlayer.pro=
totype.setCreated=3Dfunction(){this.data.viewport.setNativePlayer(this);t=
his.createTimer({object:this,id:"setCreated",interval:xmp.DEFAULT_TIMER_I=
NTERVAL,handler:this.onSetCreated,context:null}).start();};xmp.AbstractNa=
tivePlayer.prototype.executeCommand=3Dfunction(Nc,Oc){return =
this.listener.onNativePlayerExecuteCommand(Nc,Oc);};xmp.AbstractNativePla=
yer.prototype.create=3Dfunction(Pc){this.data=3DPc;if(this.logger){this.l=
ogger=3Dnull;}=0A=
this.logger=3Dnew xmp.util.internals.CategoryLogger("Native Player =
("+this.getName()+")");};xmp.AbstractNativePlayer.prototype.attach=3Dfunc=
tion(Qc){this.data=3DQc;};xmp.AbstractNativePlayer.prototype.getNative=3D=
function(){var Rc=3Dxmp.findDomElement(this.data.id);if(!Rc){throw new =
xmp.NativePlayerError("Retrieving native player.","Unable to retrieve =
\""+this.type+"\" native player.",this);}=0A=
return =
Rc;};xmp.AbstractNativePlayer.prototype.getName=3Dfunction(){return((this=
.data)?this.data.id:"");};xmp.AbstractNativePlayer.prototype.getType=3Dfu=
nction(){return =
this.type;};xmp.AbstractNativePlayer.prototype.getGroup=3Dfunction(){retu=
rn((this.data)?this.data.group:"");};xmp.AbstractNativePlayer.prototype.i=
sFullscreenEnabled=3Dfunction(){return((this.data)?this.data.fullscreenEn=
abled:false);};xmp.AbstractNativePlayer.prototype.startMonitor=3Dfunction=
(){if(!this.monitorTimer){var =
Sc=3Dthis.getMonitorInterval();this.monitorTimer=3Dthis.createTimer({obje=
ct:this,id:"timelineChange",interval:Sc,handler:this.onTimelineChange,con=
text:null});this.monitorTimer.start();}};xmp.AbstractNativePlayer.prototy=
pe.stopMonitor=3Dfunction(){if(this.monitorTimer){this.monitorTimer.stop(=
);this.monitorTimer=3Dnull;}};xmp.AbstractNativePlayer.prototype.parseVer=
sion=3Dfunction(Tc){var Uc=3DTc;var Vc=3D0;var Wc=3D-1;var Xc=3D-1;var =
Yc=3D-1;var =
Zc=3DUc.indexOf(xmp.VERSION_DELIMITER);if(Zc!=3D=3D-1){Vc=3DparseInt(Uc.s=
ubstr(0,Zc),10);Uc=3DUc.substr(Zc+1);Zc=3DUc.indexOf(xmp.VERSION_DELIMITE=
R);if(Zc!=3D=3D-1){Wc=3DparseInt(Uc.substr(0,Zc),10);Uc=3DUc.substr(Zc+1)=
;Zc=3DUc.indexOf(xmp.VERSION_DELIMITER);if(Zc!=3D=3D-1){Xc=3DparseInt(Uc.=
substr(0,Zc),10);Uc=3DUc.substr(Zc+1);if(Uc.length>0){Yc=3DparseInt(Uc,10=
);}}=0A=
else{Xc=3DparseInt(Uc,10);}}=0A=
else{Wc=3DparseInt(Uc,10);}}=0A=
else{Vc=3DparseInt(Uc,10);Vc=3D((true=3D=3D=3DisNaN(Vc))?-1:Vc);}=0A=
return{major:Vc,minor:Wc,revision:Xc,build:Yc};};xmp.AbstractNativePlayer=
.prototype.validatePlugInVersion=3Dfunction($c,ad){var =
bd=3D$c+"PlugInVersion";xmp.util.PlayerStats.getInstance().setValue(bd,ad=
);var cd=3Dthis.parseVersion(ad);var dd=3Dthis.getPlugInInfo($c);var =
ed=3Dthis.parseVersion(dd.minVersion);var =
fd=3Dthis.parseVersion(dd.maxVersion);var =
gd=3D[{version:cd.major,minVersion:ed.major,maxVersion:fd.major},{version=
:cd.minor,minVersion:ed.minor,maxVersion:fd.minor},{version:cd.revision,m=
inVersion:ed.revision,maxVersion:fd.revision},{version:cd.build,minVersio=
n:ed.build,maxVersion:fd.build}];var hd=3Dgd.length;for(var =
i=3D0;i<hd;i++){if((gd[i].version<gd[i].minVersion)){throw new =
xmp.InvalidPlugInVersionError("Validating native player plugin =
version.",dd,ad);}=0A=
if((gd[i].maxVersion!=3D=3D-1)&&(gd[i].version>gd[i].maxVersion)){throw =
new xmp.UnsupportedPlugInVersionError("Validating native player plugin =
version.",dd,ad);}=0A=
if((gd[i].version!=3D=3Dgd[i].minVersion)&&(gd[i].version!=3D=3Dgd[i].max=
Version)){break;}}};xmp.AbstractNativePlayer.prototype.getPlugInInfo=3Dfu=
nction(jd){var kd=3Dthis.plugIns[jd];if(!kd){throw new =
xmp.NativePlayerError("Retrieving plugin info.","Unable to retrieve =
\""+jd+"\" plugin information.",this);}=0A=
return =
kd;};xmp.AbstractNativePlayer.prototype.createTimer=3Dfunction(ld){var =
md=3Dnew =
xmp.util.Callback(ld.id,ld.handler,ld.object);md.setMetadata(xmp.CONTEXT,=
ld.context);return new =
xmp.util.Timer(ld.id,ld.interval,-1,md);};xmp.AbstractNativePlayer.protot=
ype.onTimelineChange=3Dfunction(nd,od){try{var =
pd=3DparseInt(this.getDuration(),10);var =
qd=3D((pd>0)?parseInt(this.getPosition(),10):0);this.onMonitorTimelineCha=
nge(qd,pd);this.listener.onNativePlayerTimelineChange(qd,pd);}=0A=
catch(e){this.setError("Forwarding timeline change to =
listener.",e);}};xmp.AbstractNativePlayer.prototype.onSetState=3Dfunction=
(rd,sd){try{sd.stop();var =
td=3Drd.getMetadata(xmp.CONTEXT,{});this.listener.onNativePlayerStateChan=
ge(td.type,td.data);}=0A=
catch(e){this.setError("Forwarding state change notification to =
listener.",e);}};xmp.AbstractNativePlayer.prototype.onSetError=3Dfunction=
(ud,vd){var =
wd=3Dnull;try{vd.stop();wd=3Dud.getMetadata(xmp.CONTEXT,{});this.listener=
.onNativePlayerError(wd);}=0A=
catch(e){var =
xd=3D((wd)?wd:e);xmp.handleFatalError(xd);}};xmp.AbstractNativePlayer.pro=
totype.onSetTrigger=3Dfunction(yd,zd){try{zd.stop();var =
Ad=3Dyd.getMetadata(xmp.CONTEXT,{});this.listener.onNativePlayerTrigger(A=
d.name,Ad.data);}=0A=
catch(e){this.setError("Forwarding trigger notification to =
listener.",e);}};xmp.AbstractNativePlayer.prototype.onSetCreated=3Dfuncti=
on(Bd,Cd){try{Cd.stop();this.listener.onNativePlayerCreated(this,this.dat=
a);}=0A=
catch(e){this.setError("Forwarding created notification to =
listener.",e);}};xmp.AbstractNativePlayer.prototype.getCallbackMethod=3Df=
unction(Dd){return"xmp.NativePlayerRegistry.findPlayerByType( =
'"+this.data.group+"', '"+this.type+"' =
)."+Dd;};xmp.AbstractNativePlayer.prototype.getLogger=3Dfunction(){return=
 =
this.logger;};xmp.AbstractNativePlayer.prototype.isOpen=3Dfunction(){retu=
rn =
this.opened;};xmp.AbstractNativePlayer.prototype.getMonitorInterval=3Dfun=
ction(){return =
xmp.MONITOR_INTERVAL;};xmp.AbstractNativePlayer.prototype.getConfigProper=
ty=3Dfunction(Ed){return =
xmp.PlayerPolicy.getNativePlayerConfig(this.configuration)[Ed];};xmp.Abst=
ractNativePlayer.prototype.getMonitorInterval=3Dfunction(){return =
xmp.MONITOR_INTERVAL;};xmp.PLATFORMS_NODE_PATH=3D"/PlayerContexts/Global/=
PlayingPolicy/Platforms";xmp.HOST_REL_NODE_PATH=3D"video";xmp.BROWSER_NOD=
E_PATH=3D"Browser";xmp.HOST_PARAMETER=3D"{host}";xmp.PATH_PARAMETER=3D"{p=
ath}";xmp.SIZE_PARAMETER=3D"{size}";xmp.AbstractPlayingPolicy=3Dfunction(=
Fd,Gd){this.type=3DFd;this.playerPolicy=3DGd;};xmp.AbstractPlayingPolicy.=
prototype.apply=3Dfunction(Hd,Id){if(false=3D=3D=3Dthis.canApply(Id)){ret=
urn true;}=0A=
try{this.validatePlatform(Hd.getName(),Id.getStreamingMode());}=0A=
catch(e){this.handleApplyError(Hd,Id,e,false);return false;}=0A=
var Jd=3Dthis.getApplyPolicy(Id);var Kd=3DJd.media.length;for(var =
i=3D0;i<Kd;i++){try{var =
Ld=3Dthis.playerPolicy.getMediaType(Jd.media[i]);this.validateMedia(Jd.ty=
pe,Jd.media[i],Ld);if(false=3D=3D=3Dthis.isPlayable(Ld,Id)){continue;}=0A=
this.playerPolicy.getLogger().debug("Applying playing policy =
\""+Jd.type+"\" to playable =
node.");this.setPolicy(Hd.getName(),Ld,Id);return true;}=0A=
catch(e2){var =
Md=3Dthis.handleApplyError(Hd,Id,e2,this.canFailover(Jd.type,Id,i,Jd.medi=
a));if(true=3D=3D=3DMd){continue;}=0A=
return false;}}=0A=
var Nd=3D[];try{Nd=3Dthis.playerPolicy.getSizes();}=0A=
catch(e3){}=0A=
throw new xmp.PlayingPolicyApplyError("Applying playing =
policy.",Nd,Jd,Id);};xmp.AbstractPlayingPolicy.prototype.getType=3Dfuncti=
on(){return =
this.type;};xmp.AbstractPlayingPolicy.prototype.getApplyPolicy=3Dfunction=
(Od){var =
Pd=3Dthis.playerPolicy.getSupportedPlatformBrowser(xmp.util.internals.Bro=
wserDetect.OS,xmp.util.internals.BrowserDetect.browser);var =
Qd=3DOd.getStreamingMode();var =
Rd=3Dthis.playerPolicy.getPlaybackPriorityGroup(Pd.modes[Qd]);var =
Sd=3Dxmp.util.internals.BrowserDetect.OS+"/"+xmp.util.internals.BrowserDe=
tect.browser+((Qd&&Qd.length>0)?("/"+Qd):"");return{type:Sd,media:Rd};};x=
mp.AbstractPlayingPolicy.prototype.isPlayable=3Dfunction(Td,Ud){if(false=3D=
=3D=3Dthis.validateMimeType(Td,Ud)){return false;}=0A=
return =
this.validateSize(Td,Ud);};xmp.AbstractPlayingPolicy.prototype.setupNode=3D=
function(Vd,Wd){if(!Wd.isUriAbsolute()){var =
Xd=3DVd.streamingModes[Wd.getStreamingMode()];var Yd=3DXd.url_mask;var =
Zd=3D[{name:xmp.HOST_PARAMETER,value:this.getHost(Vd,Xd)},{name:xmp.PATH_=
PARAMETER,value:Wd.getURI()},{name:xmp.SIZE_PARAMETER,value:this.getSize(=
Vd,Wd)}];for(var =
i=3D0;i<Zd.length;i++){Yd=3DYd.replace(Zd[i].name,Zd[i].value);}=0A=
Wd.setMimeType(Vd.mimeType);Wd.setURI(Yd);this.playerPolicy.getLogger().d=
ebug("Setting up playable node URI from mask ("+Xd.url_mask+") and MIME =
type ("+Vd.mimeType+"). URI - "+Yd);}=0A=
Wd.setUriAbsolute(true);};xmp.AbstractPlayingPolicy.prototype.getSize=3Df=
unction($d,ae){var =
be=3D"";if(true=3D=3D=3Dthis.urlMaskContainsSize($d,ae)){be=3Dthis.player=
Policy.getSizeFromPlayer(ae.getSizes());}=0A=
return =
be;};xmp.AbstractPlayingPolicy.prototype.getHost=3Dfunction(ce,de){if(-1=3D=
=3D=3Dde.url_mask.indexOf(xmp.HOST_PARAMETER)){return"";}=0A=
var ee=3Dxmp.HOST_REL_NODE_PATH+"/"+ce.type+"/"+de.type;var =
fe=3Dxmp.util.RootUrlProvider.getInstance().getRootUrl(ee);if(fe.length=3D=
=3D=3D0){throw new xmp.PlayingPolicyError("Retrieving host.","Unable to =
find \""+ce.type+"\" playing policy streaming host configuration for =
\""+de.type+"\".");}=0A=
return =
fe;};xmp.AbstractPlayingPolicy.prototype.validateMedia=3Dfunction(ge,he,i=
e){if(!ie){throw new xmp.PlayingPolicyError("Validating media.","Invalid =
\""+ge+"\" playing policy media type =
\""+he+"\".");}};xmp.AbstractPlayingPolicy.prototype.setPolicy=3Dfunction=
(je,ke,le){xmp.NativePlayerRegistry.validate(je,ke.mimeType);this.setupNo=
de(ke,le);};xmp.AbstractPlayingPolicy.prototype.validateMimeType=3Dfuncti=
on(me,ne){var oe=3Dne.getMimeTypes();var pe=3Doe.length;for(var =
i=3D0;i<pe;i++){if(me.mimeType=3D=3D=3Doe[i]){return true;}}=0A=
return =
false;};xmp.AbstractPlayingPolicy.prototype.validateSize=3Dfunction(qe,re=
){if(false=3D=3D=3Dthis.urlMaskContainsSize(qe,re)){return true;}=0A=
return(this.playerPolicy.getSizeFromPlayer(re.getSizes()).length>0);};xmp=
.AbstractPlayingPolicy.prototype.urlMaskContainsSize=3Dfunction(se,te){re=
turn(se.streamingModes[te.getStreamingMode()].url_mask.indexOf(xmp.SIZE_P=
ARAMETER)!=3D=3D-1);};xmp.AbstractPlayingPolicy.prototype.validateBootstr=
ap=3Dfunction(ue){};xmp.AbstractPlayingPolicy.prototype.validatePlatform=3D=
function(ve,we){var =
xe=3Dthis.playerPolicy.getSupportedPlatformBrowser(xmp.util.internals.Bro=
wserDetect.OS,xmp.util.internals.BrowserDetect.browser);if(!xe||(we&&!xe.=
modes[we])){var =
ye=3Dxmp.util.internals.BrowserDetect.OS+"/"+xmp.util.internals.BrowserDe=
tect.browser+((we&&we.length>0)?("/"+we):"");throw new =
xmp.UnsupportedPlatformError(ve,"The platform \""+ye+"\" is =
unsupported.");}};xmp.AbstractPlayingPolicy.prototype.handleApplyError=3D=
function(ze,Ae,e,Be){if(true=3D=3D=3Dthis.playerPolicy.getFailover()&&tru=
e=3D=3D=3DBe){this.playerPolicy.getLogger().warn("\n\n"+e.message,e);retu=
rn true;}=0A=
this.playerPolicy.getLogger().critical("\n\n"+e.message,e);ze.onError(Ae,=
e);return =
false;};xmp.AbstractPlayingPolicy.prototype.canApply=3Dfunction(Ce){var =
De=3DCe.getStreamingMode();return((De&&De.length>0)?true:false);};xmp.Abs=
tractPlayingPolicy.prototype.canFailover=3Dfunction(Ee,Fe,Ge,He){try{var =
Ie=3DHe.length;for(var i=3DGe+1;i<Ie;i++){var =
Je=3Dthis.playerPolicy.getMediaType(He[i]);this.validateMedia(Ee,He[i],Je=
);if(false=3D=3D=3Dthis.isPlayable(Je,Fe)){continue;}=0A=
return true;}}=0A=
catch(e){}=0A=
return =
false;};xmp.BANDWIDTH_RECORDER_SAMPLE_TIMER=3D"BandwidthRecorderSampleTim=
er";xmp.CURRENT_BANDWIDTH_LABEL=3D"CurrentBandwidth";xmp.CUMULATIVE_BANDW=
IDTH_LABEL=3D"CumulativeBandwidth";xmp.BANDWIDTH_SAMPLE_INTERVAL=3D"Bandw=
idth Sample Interval";xmp.BandwidthRecorder=3Dfunction(Ke,Le){var =
Me=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode().getNod=
eForPath(Le).getInt(xmp.BANDWIDTH_SAMPLE_INTERVAL,-1);if(-1=3D=3D=3DMe.le=
ngth){throw new xmp.BandwidthRecorderError("Initializing.","Missing =
bandwidth recorder sample interval.");}=0A=
this.player=3DKe;this.logger=3Dnew =
xmp.util.internals.CategoryLogger('BandwidthRecorder');var Ne=3Dnew =
xmp.util.Callback(xmp.BANDWIDTH_RECORDER_SAMPLE_TIMER,this.onSample,this)=
;this.sampleTimer=3Dnew =
xmp.util.Timer(xmp.BANDWIDTH_RECORDER_SAMPLE_TIMER,Me,-1,Ne);this.totalBy=
tesDownloaded=3D0;this.totalDuration=3D0;this.reset();};xmp.BandwidthReco=
rder.prototype.start=3Dfunction(){this.stop();this.sampleStartTime=3Dthis=
.initSampleTime();this.sampleTimer.start();};xmp.BandwidthRecorder.protot=
ype.stop=3Dfunction(){this.sampleTimer.stop();this.totalDuration+=3Dthis.=
lastDuration;this.totalBytesDownloaded+=3Dthis.lastBytesDownloaded;this.r=
eset();};xmp.BandwidthRecorder.prototype.onSample=3Dfunction(Oe,Pe){try{v=
ar Qe=3Dthis.player.getBufferingProgress();this.validateSample(Qe);var =
Re=3Dthis.initSampleTime();var Se=3D(Re-this.sampleStartTime);var =
Te=3Dthis.calcBandwidth(Se,Qe.bytesDownloaded);this.logBandwidth(Te,xmp.C=
URRENT_BANDWIDTH_LABEL,Qe.bytesDownloaded,"Downloaded Bytes");var =
Ue=3D(this.totalBytesDownloaded+Qe.bytesDownloaded);Te=3Dthis.calcBandwid=
th((this.totalDuration+Se),Ue);this.logBandwidth(Te,xmp.CUMULATIVE_BANDWI=
DTH_LABEL,Ue,"Cumulative =
Bytes");this.lastBytesDownloaded=3DQe.bytesDownloaded;this.lastDuration=3D=
Se;if(100=3D=3D=3DQe.percent){this.stop();}}=0A=
catch(e){this.logger.warn("\n\n"+e.message);this.stop();}};xmp.BandwidthR=
ecorder.prototype.reset=3Dfunction(){this.sampleStartTime=3D0;this.lastBy=
tesDownloaded=3D0;this.lastDuration=3D0;};xmp.BandwidthRecorder.prototype=
.initSampleTime=3Dfunction(){return(new =
Date()).getTime();};xmp.BandwidthRecorder.prototype.calcBandwidth=3Dfunct=
ion(Ve,b){try{var We=3D(Ve/1000);var x=3D((b*8)/1024);return(x/We);}=0A=
catch(e){var Xe=3Dnew xmp.BandwidthRecorderError("Calculating =
bandwidth.",e.message);Xe.setInnerError(e);throw =
Xe;}};xmp.BandwidthRecorder.prototype.logBandwidth=3Dfunction(Ye,Ze,$e,af=
){try{var bf=3DMath.ceil(Ye)+"KB/sec";this.logger.info(Ze+":  "+bf+", =
"+af+":  "+$e);xmp.util.PlayerStats.getInstance().setValue(Ze,bf);}=0A=
catch(e){var cf=3Dnew xmp.BandwidthRecorderError("Logging =
bandwidth.",((e.rawMessage)?e.rawMessage:e.message));cf.setInnerError(e);=
throw =
cf;}};xmp.BandwidthRecorder.prototype.validateSample=3Dfunction(df){if(!d=
f){throw new xmp.BandwidthRecorderError("Validating sample.","Missing =
sample.");}=0A=
if(false=3D=3D=3Dxmp.isDefined(df.bytesDownloaded)){throw new =
xmp.BandwidthRecorderError("Validating sample.","Missing bytes =
downloaded.");}};xmp.LAZY_PLAYING_POLICY=3D"Lazy";xmp.VALIDATE_ON_BOOTSTR=
AP=3D"ValidateOnBootstrap";xmp.LazyPlayingPolicy=3Dfunction(ef){xmp.LazyP=
layingPolicy.ctor.call(this,xmp.LAZY_PLAYING_POLICY,ef);};xmp.DERIVE_CLAS=
S(xmp.AbstractPlayingPolicy,xmp.LazyPlayingPolicy);xmp.LazyPlayingPolicy.=
prototype.validateBootstrap=3Dfunction(ff){try{xmp.NativePlayerRegistry.c=
reateGroup(xmp.VALIDATE_ON_BOOTSTRAP,ff);this.validatePlatform(xmp.VALIDA=
TE_ON_BOOTSTRAP);var gf=3Dthis.playerPolicy.getBootstrapMedia();for(var =
i=3D0;i<gf.length;i++){xmp.NativePlayerRegistry.validate(xmp.VALIDATE_ON_=
BOOTSTRAP,gf[i].mimeType);}}=0A=
catch(e){this.playerPolicy.getLogger().fatal("\n\n"+e.message,e);if(e.plu=
gIn){ff.onPlugInError(e);}=0A=
else if(true=3D=3D=3D(e instanceof =
xmp.UnsupportedPlatformError)){ff.onUnsupportedPlatformError(e);}}=0A=
finally{xmp.NativePlayerRegistry.destoryGroup(xmp.VALIDATE_ON_BOOTSTRAP);=
}};xmp.NativePlayerRegistry=3Dfunction(){var hf=3D{};var jf=3Dnew =
xmp.util.internals.CategoryLogger("NativePlayerRegistry");return{createGr=
oup:function(kf,lf){if(hf[kf]!=3D=3Dnull&&true=3D=3D=3Dxmp.isDefined(hf[k=
f])){throw new xmp.NativePlayerError("Creating group.","A native player =
group already exists with the name \""+kf+"\".",null);}=0A=
var =
mf=3Dxmp.PlayerPolicy.getSupportedPlatformBrowser(xmp.util.internals.Brow=
serDetect.OS,xmp.util.internals.BrowserDetect.browser);var =
nf=3D((mf)?xmp.PlayerPolicy.getNativePlayerGroup(mf.playersGroup):xmp.Pla=
yerPolicy.getDefaultNativePlayerGroup());hf[kf]=3D{owner:lf,template:nf,p=
layers:{}};jf.info("Created native player group =
\""+kf+"\".");},findPlayerByMimeType:function(of,pf){var =
qf=3Dthis.findGroup(of);var rf=3Dqf.players[pf];if(rf){return rf;}=0A=
this.validate(of,pf);rf=3Dqf.players[pf];if(rf){return rf;}=0A=
throw new xmp.NativePlayerNotFoundError("Finding player by mime =
type.","Unable to find native player for mime type =
\""+pf+"\".",of,pf);},findPlayerByType:function(sf,tf){var =
uf=3Dthis.findGroup(sf);for(var =
vf=3Dxmp.MapIterator.create(uf.players);vf.hasNext();vf.next()){var =
wf=3Dvf.currentValue();if(wf.getType()=3D=3D=3Dtf){return wf;}}=0A=
throw new xmp.NativePlayerNotFoundError("Finding player by media =
type.","Unable to find native player for type =
\""+tf+"\".",sf,tf);},validate:function(xf,yf){var =
zf=3Dthis.findGroup(xf);var =
Af=3Dzf.players[yf];if(Af){Af.validate(yf);return;}=0A=
var Bf=3Dzf.template[yf];if(!Bf){throw new =
xmp.NativePlayerNotFoundError("Validating player.","Unable to find =
native player for mime type \""+yf+"\".  Missing native player =
group.",xf,yf);}=0A=
var Cf=3DBf.length;var Df=3Dnull;for(var =
i=3D0;i<Cf;i++){try{Af=3Dthis.createNativePlayer(zf.owner,Bf[i]);Af.valid=
ate(yf);zf.players[yf]=3DAf;jf.info("Registered native player =
\""+Af.getType()+"\" for mime type \""+yf+"\" and group =
\""+xf+"\".");return;}=0A=
catch(e){jf.warn("\n\n"+e.message,e);if(i=3D=3D=3D0){Df=3De;}=0A=
if(i=3D=3D=3D(Cf-1)){throw Df;}}}},destoryGroup:function(Ef){var =
Ff=3Dthis.findGroup(Ef);if(!Ff){return;}=0A=
for(var =
Gf=3Dxmp.MapIterator.create(Ff.players);Gf.hasNext();Gf.next()){var =
Hf=3DGf.currentValue();Hf.fini();}=0A=
hf[Ef]=3Dnull;jf.info("Destroyed native player group =
\""+Ef+"\".");},createNativePlayer:function(If,Jf){var =
Kf=3Dxmp.getNamespacedMethod(Jf);return new =
Kf(If,Jf);},validateGroup:function(Lf,Mf){if(!Mf){throw new =
xmp.NativePlayerGroupNotFoundError("Validating native player =
group.","Invalid native player group =
\""+Lf+"\".",Lf);}},findGroup:function(Nf){var =
Of=3Dhf[Nf];this.validateGroup(Nf,Of);return =
Of;}};}();xmp.NULL_PLAYER=3D"Null";xmp.NULL_MIME_TYPE=3D"application/x-nu=
ll";xmp.NullPlayer=3Dfunction(Pf,Qf){xmp.NullPlayer.ctor.call(this,xmp.NU=
LL_PLAYER,null,Qf);};xmp.DERIVE_CLASS(xmp.AbstractNativePlayer,xmp.NullPl=
ayer);xmp.NullPlayer.prototype.create=3Dfunction(Rf){Rf.id=3DRf.viewport.=
name;if(Rf.viewport&&Rf.viewport.getType()=3D=3D=3Dxmp.DHTML_VIEWPORT){Rf=
.viewport.getNative().style.backgroundColor=3Dxmp.BLACK_BACKGROUND_COLOR;=
Rf.viewport.getNative().innerHTML=3D"";}=0A=
xmp.NullPlayer.base.create.call(this,Rf);};xmp.PlayerPolicy=3Dfunction(){=
var Sf=3D"/PlayerContexts/Global/PlayingPolicy";var =
Tf=3D"PlayingPolicy/MediaTypes";var Uf=3D"PlayingPolicy/PlugIns";var =
Vf=3D"Strategy";var Wf=3D"PlayingPolicy/Streaming Modes";var =
Xf=3D"PlayingPolicy/Bootstrap Media";var Yf=3D"PlayingPolicy/Supported =
Platforms";var Zf=3D"PlayingPolicy/Playback Priority Groups";var =
$f=3D"PlayingPolicy/Native Players";var ag=3D"PlayingPolicy/Native =
Player Groups";var bg=3D"PlayingPolicy/Playback Platforms";var =
cg=3D"Streaming Modes";var dg=3D"Players";var eg=3D"Properties";var =
fg=3D"mime-type";var gg=3D"display-name";var hg=3D"download-url";var =
ig=3D"minimum-version";var jg=3D"maximum-version";var =
kg=3D"Failover";var lg=3D"BasePlayer/PlayerSizes";var mg=3D"PlugIns =
Overrides";return{initMediaTypes:function(){this.mediaTypes=3D{};var =
ng=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode();var =
og=3Dng.getNodeForPath(Tf);var pg=3Dog.retrieveChildren();var =
qg=3Dpg.length;for(var i=3D0;i<qg;i++){var rg=3Dpg[i];var =
sg=3Drg.getString(fg,xmp.NO_DEFAULT_VALUE);this.validateMimeType(rg.getNa=
me(),sg);var tg=3D{type:rg.getName(),mimeType:sg,streamingModes:{}};var =
ug=3Drg.getNodeForPath(cg);var vg=3Dug.retrieveKeys();var =
wg=3Dvg.length;for(var j=3D0;j<wg;j++){var =
xg=3Dthis.getStreamingMode(tg.type,ug,vg[j]);tg.streamingModes[xg.type]=3D=
xg;}=0A=
this.mediaTypes[tg.type]=3Dtg;}},initPlugins:function(){this.plugIns=3D{}=
;var =
yg=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode();var =
zg=3Dyg.getNodeForPath(Uf);var Ag=3Dzg.retrieveChildren();var =
Bg=3DAg.length;for(var i=3D0;i<Bg;i++){var Cg=3DAg[i];var =
Dg=3D{name:Cg.getName(),displayName:Cg.getString(gg,xmp.NO_DEFAULT_VALUE)=
,minVersion:Cg.getString(ig,xmp.NO_DEFAULT_VALUE),maxVersion:Cg.getString=
(jg,xmp.NO_DEFAULT_VALUE),downloadUrl:Cg.getString(hg,xmp.NO_DEFAULT_VALU=
E),properties:{}};this.validatePlugIn(Dg);this.plugIns[Cg.getName()]=3DDg=
;}},apply:function(Eg,Fg){this.init();return =
this.getStrategy().apply(Eg,Fg);},validateMimeType:function(Gg,Hg){if(!Hg=
){throw new xmp.InvalidMimeTypeError("Validating player policy media =
mime type.","NULL \""+Gg+"\" playing policy MIME type \""+Hg+"\".");}=0A=
if(Hg.length=3D=3D=3D0){throw new xmp.InvalidMimeTypeError("Validating =
player policy media mime type.","Missing \""+Gg+"\" playing policy MIME =
type \""+Hg+"\".");}},getStreamingMode:function(Ig,Jg,Kg){var =
Lg=3D{type:Kg,url_mask:Jg.getString(Kg,xmp.NO_DEFAULT_VALUE)};this.valida=
teStreamingMode(Ig,Lg);return =
Lg;},validateStreamingMode:function(Mg,Ng){if(false=3D=3D=3Dthis.isStream=
ingModeSupported(Ng.type)){throw new xmp.PlayingPolicyError("Validating =
streaming mode.","Invalid streaming mode "+Ng.type+" for media type =
"+Mg+".");}=0A=
if(Ng.url_mask.length=3D=3D=3D0){throw new =
xmp.PlayingPolicyError("Validating streaming mode.","Missing \""+Mg+"\" =
playing policy \""+Ng.type+"\" url =
mask.");}},getStrategy:function(){if(this.strategy=3D=3D=3Dnull){var =
Og=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode().getNod=
eForPath(Sf);var =
Pg=3DOg.getString(Vf,xmp.NO_DEFAULT_VALUE);if(Pg.length=3D=3D=3D0){throw =
new xmp.PlayingPolicyError("Retrieving strategy.","Missing playing =
policy strategy.  Expected \"Lazy\".");}=0A=
this.strategy=3Dxmp.PlayingPolicyFactory.createStrategy(Pg,this);this.get=
Logger().debug("Created player policy \""+Pg+"\" strategy.");}=0A=
return this.strategy;},getMediaType:function(Qg){return =
this.mediaTypes[Qg];},getPlugins:function(){this.init();return =
this.plugIns;},getPlugin:function(Rg){return =
this.getPlugins()[Rg];},validatePlugIn:function(Sg){if(Sg.displayName.len=
gth=3D=3D=3D0){throw new xmp.PlayingPolicyError("Validating =
plugin.","Missing plugin display name.");}=0A=
if(Sg.minVersion.length=3D=3D=3D0){throw new =
xmp.PlayingPolicyError("Validating plugin.","Missing plugin =
\""+Sg.displayName+"\" minimum version.");}=0A=
if(Sg.downloadUrl.length=3D=3D=3D0){throw new =
xmp.PlayingPolicyError("Validating plugin.","Missing plugin =
\""+Sg.displayName+"\" download url.");}},getLogger:function(){return =
this.logger;},init:function(){if(this.initialized&&true=3D=3D=3Dthis.init=
ialized){return;}=0A=
this.initialized=3Dtrue;this.strategy=3Dnull;this.logger=3Dnew =
xmp.util.internals.CategoryLogger('PlayerPolicy');xmp.util.PlayerStats.ge=
tInstance().setValue("OS",navigator.platform);xmp.util.PlayerStats.getIns=
tance().setValue("Browser",navigator.userAgent);this.initStreamingModes()=
;this.initMediaTypes();this.initBootstrapMedia();this.initPlugins();this.=
initNativePlayers();this.initNativePlayerGroups();this.initSupportedPlatf=
orms();this.initPlaybackPriorityGroups();this.initPlaybackPlatforms();},g=
etFailover:function(){if(!this.failover){var =
Tg=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode().getNod=
eForPath(Sf);this.failover=3DTg.getBoolean(kg,false);}=0A=
return =
this.failover;},getSizes:function(){this.init();if(!this.playerSizes){thi=
s.initPlayerSizes();}=0A=
return this.playerSizes;},getSizeFromPlayer:function(Ug){this.init();var =
Vg=3Dthis.getSizes();var Wg=3DVg.length;for(var i=3D0;i<Wg;i++){var =
Xg=3DUg.length;for(var j=3D0;j<Xg;j++){if(Vg[i]=3D=3D=3DUg[j]){return =
Vg[i];}}}=0A=
return"";},initPlayerSizes:function(){this.playerSizes=3D[];var =
Yg=3Dxmp.util.SettingsManager.getInstance().getContextNode().getNodeForPa=
th(lg);var Zg=3DYg.retrieveKeys();var =
$g=3DZg.length;if($g=3D=3D=3D0){throw new =
xmp.PlayingPolicyError("Validating player sizes.","Missing player =
sizes.");}=0A=
for(var i=3D0;i<$g;i++){var =
ah=3DYg.getString(Zg[i],xmp.NO_DEFAULT_VALUE);if(ah.length=3D=3D=3D0){thr=
ow new xmp.PlayingPolicyError("Validating player size.","Missing player =
size.");}=0A=
this.playerSizes.push(ah);}},validateBootstrap:function(bh){this.init();t=
his.getStrategy().validateBootstrap(bh);},initStreamingModes:function(){v=
ar =
ch=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode().getNod=
eForPath(Wf);var dh=3Dch.retrieveKeys();var =
eh=3Ddh.length;this.modes=3D[];for(var i=3D0;i<eh;i++){var =
fh=3Dch.getString(dh[i],xmp.NO_DEFAULT_VALUE);if(fh.length=3D=3D=3D0){thr=
ow new xmp.PlayingPolicyError("Validating streaming mode.","Missing =
mode.");}=0A=
this.modes.push(fh);}=0A=
return =
this.modes;},getStreamingModes:function(){this.init();if(!this.modes){thr=
ow new xmp.PlayingPolicyError("Retrieving streaming modes.","Missing =
modes.");}=0A=
if(this.modes.length=3D=3D=3D0){throw new =
xmp.PlayingPolicyError("Validating streaming modes.","Missing modes.");}=0A=
return this.modes;},initBootstrapMedia:function(){var =
gh=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode().getNod=
eForPath(Xf);var hh=3Dgh.retrieveKeys();var =
ih=3Dhh.length;if(ih=3D=3D=3D0){throw new =
xmp.PlayingPolicyError("Validating bootstrap media.","Missing media.");}=0A=
this.bootstrapMedia=3D[];for(var i=3D0;i<ih;i++){var =
jh=3Dgh.getString(hh[i],xmp.NO_DEFAULT_VALUE);var =
kh=3Dthis.getMediaType(jh);if(!kh){throw new =
xmp.PlayingPolicyError("Validating bootstrap media.","Invalid bootstrap =
media type \""+jh+"\".");}=0A=
this.bootstrapMedia.push(kh);}=0A=
return =
this.bootstrapMedia;},getBootstrapMedia:function(){this.init();if(!this.b=
ootstrapMedia){throw new xmp.PlayingPolicyError("Retrieving bootstrap =
media.","Missing media.");}=0A=
return this.bootstrapMedia;},initNativePlayers:function(){var =
lh=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode().getNod=
eForPath($f);var mh=3Dlh.retrieveChildren();var =
nh=3Dmh.length;if(nh=3D=3D=3D0){throw new =
xmp.PlayingPolicyError("Validating native players.","Missing players.");}=0A=
this.nativePlayers=3D[];for(var i=3D0;i<nh;i++){var =
oh=3Dmh[i];if(!xmp.getNamespacedMethod(oh.getName())){throw new =
xmp.PlayingPolicyError("Validating native player.","Invalid =
"+oh.getName()+" native player.");}=0A=
var ph=3Doh.retrieveKeys();var qh=3Dph.length;var rh=3D{};for(var =
j=3D0;j<qh;j++){rh[ph[j]]=3Doh.getString(ph[j],xmp.NO_DEFAULT_VALUE);}=0A=
this.nativePlayers[oh.getName()]=3Drh;}},initNativePlayerGroups:function(=
){var =
sh=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode().getNod=
eForPath(ag);var th=3Dsh.retrieveChildren();var =
uh=3Dth.length;if(uh=3D=3D=3D0){throw new =
xmp.PlayingPolicyError("Validating native player groups.","Missing =
groups.");}=0A=
this.nativePlayerGroups=3D[];for(var i=3D0;i<uh;i++){var =
vh=3Dthis.getDefaultNativePlayerGroup();var wh=3Dth[i];var =
xh=3Dwh.retrieveChildren();var yh=3Dxh.length;if(yh=3D=3D=3D0){throw new =
xmp.PlayingPolicyError("Validating native player group mime =
types.","Missing "+wh.getName()+" mime types.");}=0A=
for(var j=3D0;j<yh;j++){var =
zh=3Dxh[j].getString(fg,xmp.NO_DEFAULT_VALUE);if(zh.length=3D=3D=3D0){thr=
ow new xmp.PlayingPolicyError("Validating native player group mime =
type.","Missing \""+wh.getName()+"\" mime type.");}=0A=
if(false=3D=3D=3Dthis.isMimeTypeSupported(zh)){continue;}=0A=
var Ah=3Dxh[j].getNodeForPath(dg);var Bh=3DAh.retrieveKeys();var =
Ch=3DBh.length;if(Ch=3D=3D=3D0){throw new =
xmp.PlayingPolicyError("Validating native player group mime type =
players.","Missing "+wh.getName()+" native player group \""+zh+"\" =
players.");}=0A=
var Dh=3D[];for(var k=3D0;k<Ch;k++){var =
Eh=3DAh.getString(Bh[k],xmp.NO_DEFAULT_VALUE);if(Eh.length=3D=3D=3D0){thr=
ow new xmp.PlayingPolicyError("Validating native player group mime type =
player.","Missing "+wh.getName()+" native player group \""+zh+"\" =
player.");}=0A=
if(false=3D=3D=3Dxmp.isDefined(this.getNativePlayerConfig(Eh))){throw =
new xmp.PlayingPolicyError("Validating native player group mime type =
player.","Invalid "+wh.getName()+" native player group \""+zh+"\" player =
\""+Eh+".");}=0A=
Dh.push(Eh);}=0A=
vh[zh]=3DDh;}=0A=
this.nativePlayerGroups[wh.getName()]=3Dvh;}},initSupportedPlatforms:func=
tion(){var =
Fh=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode().getNod=
eForPath(Yf);var Gh=3DFh.retrieveChildren();var =
Hh=3DGh.length;if(Hh=3D=3D=3D0){throw new =
xmp.PlayingPolicyError("Validating supported platforms.","Missing =
platforms.");}=0A=
this.platforms=3D{};for(var i=3D0;i<Hh;i++){var Ih=3DGh[i];var =
Jh=3DIh.retrieveKeys();var Kh=3DJh.length;if(Kh=3D=3D=3D0){throw new =
xmp.PlayingPolicyError("Validating supported platform =
browsers.","Missing "+Ih.getName()+" browsers.");}=0A=
var Lh=3D[];for(var j=3D0;j<Kh;j++){var =
Mh=3DIh.getString(Jh[j],xmp.NO_DEFAULT_VALUE);if(Mh.length=3D=3D=3D0){thr=
ow new xmp.PlayingPolicyError("Validating supported platform browser =
native player group.","Missing "+Ih.getName()+" platform \""+Jh[j]+"\" =
browser native player group.");}=0A=
if(false=3D=3D=3Dxmp.isDefined(this.getNativePlayerGroup(Mh))){throw new =
xmp.PlayingPolicyError("Validating supported platform browser native =
player group.","Invalid "+Ih.getName()+" platform \""+Jh[j]+"\" browser =
native player group \""+Mh+"\".");}=0A=
Lh.push({name:Jh[j],playersGroup:Mh,modes:{}});}=0A=
if(xmp.util.internals.BrowserDetect.OS=3D=3D=3DIh.getName()){this.initPla=
tformPlugInOverrides(Ih);}=0A=
this.platforms[Ih.getName()]=3DLh;}},initPlaybackPriorityGroups:function(=
){var =
Nh=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode().getNod=
eForPath(Zf);var Oh=3DNh.retrieveChildren();var =
Ph=3DOh.length;if(Ph=3D=3D=3D0){throw new =
xmp.PlayingPolicyError("Validating playback priority groups.","Missing =
groups.");}=0A=
this.playbackPriorityGroups=3D[];for(var i=3D0;i<Ph;i++){var =
Qh=3DOh[i];var Rh=3DQh.retrieveKeys();var =
Sh=3DRh.length;if(Sh=3D=3D=3D0){throw new =
xmp.PlayingPolicyError("Validating playback priority group =
media.","Missing "+Qh.getName()+" media.");}=0A=
var Th=3D[];for(var j=3D0;j<Sh;j++){var =
Uh=3DQh.getString(Rh[j],xmp.NO_DEFAULT_VALUE);if(Uh.length=3D=3D=3D0){thr=
ow new xmp.PlayingPolicyError("Validating playback priority group =
media.","Missing "+Qh.getName()+" media type.");}=0A=
if(false=3D=3D=3Dxmp.isDefined(this.getMediaType(Uh))){throw new =
xmp.PlayingPolicyError("Validating playback priority group =
media.","Invalid "+Qh.getName()+" media type \""+Uh+"\".");}=0A=
Th.push(Uh);}=0A=
this.playbackPriorityGroups[Qh.getName()]=3DTh;}},initPlaybackPlatforms:f=
unction(){var =
Vh=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode().getNod=
eForPath(bg);var Wh=3DVh.retrieveChildren();var =
Xh=3DWh.length;if(Xh=3D=3D=3D0){throw new =
xmp.PlayingPolicyError("Validating playback platforms.","Missing =
platforms.");}=0A=
for(var i=3D0;i<Xh;i++){var =
Yh=3DWh[i];if(this.getSupportedPlatform(Yh.getName())=3D=3D=3Dnull){throw=
 new xmp.PlayingPolicyError("Validating playback platform OS.","The =
"+Yh.getName()+"platform OS is not supported.");}=0A=
var Zh=3DYh.retrieveChildren();var $h=3DZh.length;if($h=3D=3D=3D0){throw =
new xmp.PlayingPolicyError("Validating playback platform =
browsers.","Missing "+Yh.getName()+" platform browsers.");}=0A=
for(var j=3D0;j<$h;j++){var ai=3DZh[j];var =
bi=3Dthis.getSupportedPlatformBrowser(Yh.getName(),ai.getName());if(!bi){=
throw new xmp.PlayingPolicyError("Validating playback platform =
browser.","The "+Yh.getName()+" platform browser "+ai.getName()+" is not =
supported.");}=0A=
var ci=3Dai.retrieveKeys();var di=3Dci.length;if(di=3D=3D=3D0){throw new =
xmp.PlayingPolicyError("Validating playback platform browser streaming =
modes.","Missing "+Yh.getName()+" platform browser "+ai.getName()+" =
streaming modes.");}=0A=
for(var =
k=3D0;k<di;k++){if(false=3D=3D=3Dthis.isStreamingModeSupported(ci[k])){th=
row new xmp.PlayingPolicyError("Validating playback platform browser =
streaming mode.","Invalid "+Yh.getName()+" platform browser =
"+ai.getName()+" streaming mode "+ci[k]+".");}=0A=
var =
ei=3Dai.getString(ci[k],xmp.NO_DEFAULT_VALUE);if(ei.length=3D=3D=3D0){thr=
ow new xmp.PlayingPolicyError("Validating playback platform browser =
streaming mode priority group.","Missing "+Yh.getName()+" platform =
browser "+ai.getName()+" streaming mode "+ci[k]+" playback priority =
group.");}=0A=
if(false=3D=3D=3Dxmp.isDefined(this.getPlaybackPriorityGroup(ei))){throw =
new xmp.PlayingPolicyError("Validating playback platform browser =
streaming mode priority group.","Invalid "+Yh.getName()+" platform =
browser "+ai.getName()+" streaming mode "+ci[k]+" playback priority =
group "+ei+".");}=0A=
bi.modes[ci[k]]=3Dei;}}}},initPlatformPlugInOverrides:function(fi){var =
gi=3Dfi.getNodeForPath(mg);var hi=3Dgi.retrieveChildren();var =
ii=3Dhi.length;for(var i=3D0;i<ii;i++){var ji=3Dhi[i];var =
ki=3Dthis.getPlugin(ji.getName());if(!ki){throw new =
xmp.PlayingPolicyError("Validating platform plugin override.","Invalid =
"+fi.getName()+" platform \""+ji.getName()+"\" plugin.");}=0A=
var =
li=3Dji.getString(ig,xmp.NO_DEFAULT_VALUE);if(li.length>0){ki.minVersion=3D=
li;}=0A=
var =
mi=3Dji.getString(jg,xmp.NO_DEFAULT_VALUE);if(mi.length>0){ki.maxVersion=3D=
mi;}=0A=
var =
ni=3Dji.getString(hg,xmp.NO_DEFAULT_VALUE);if(ni.length>0){ki.downloadUrl=
=3Dni;}}},getSupportedPlatform:function(oi){return =
this.platforms[oi];},getPlaybackPriorityGroup:function(pi){this.init();re=
turn =
this.playbackPriorityGroups[pi];},getSupportedPlatformBrowser:function(qi=
,ri){this.init();var si=3Dthis.getSupportedPlatform(qi);if(!si){return =
null;}=0A=
var ti=3Dsi.length;for(var =
i=3D0;i<ti;i++){if(ri=3D=3D=3Dsi[i].name){return si[i];}}=0A=
return null;},isStreamingModeSupported:function(ui){var =
vi=3Dthis.modes.length;for(var =
i=3D0;i<vi;i++){if(ui=3D=3D=3Dthis.modes[i]){return true;}}=0A=
return false;},isMimeTypeSupported:function(wi){this.init();for(var =
xi=3Dxmp.MapIterator.create(this.mediaTypes);xi.hasNext();xi.next()){var =
yi=3Dxi.currentValue();if(yi.mimeType=3D=3D=3Dwi){return true;}}=0A=
return((this.getDefaultNativePlayerGroup()[wi])?true:false);},getNativePl=
ayerConfig:function(zi){this.init();return =
this.nativePlayers[zi];},getNativePlayerGroup:function(Ai){this.init();re=
turn =
this.nativePlayerGroups[Ai];},getDefaultNativePlayerGroup:function(){this=
.init();return{"application/x-null":["xmp.NullPlayer"],"application/x-dht=
ml":["xmp.DHTMLPlayer"],"application/xmp-mock":["xmp.MockNativePlayer"]};=
}};}();xmp.PlayingPolicyFactory=3Dfunction(){return{createStrategy:functi=
on(Bi,Ci){if(Bi=3D=3D=3Dxmp.LAZY_PLAYING_POLICY){return new =
xmp.LazyPlayingPolicy(Ci);}=0A=
throw new xmp.PlayingPolicyError("Creating playing policy =
strategy.","Unable to create playing policy strategy =
\""+Bi+"\".");}};}();xmp.BandwidthRecorderError=3Dfunction(Di,Ei){xmp.Ban=
dwidthRecorderError.ctor.call(this,"BandwidthRecorderError",Di,Ei);};xmp.=
DERIVE_CLASS(xmp.util.internals.XMPError,xmp.BandwidthRecorderError);xmp.=
DHTMLObjectError=3Dfunction(Fi,Gi){xmp.DHTMLObjectError.ctor.call(this,"D=
HTMLObjectError",Fi,Gi);};xmp.DERIVE_CLASS(xmp.util.internals.XMPError,xm=
p.DHTMLObjectError);xmp.InvalidMimeTypeError=3Dfunction(Hi,Ii){xmp.Invali=
dMimeTypeError.ctor.call(this,"InvalidMimeTypeError",Hi,Ii);};xmp.DERIVE_=
CLASS(xmp.util.internals.XMPError,xmp.InvalidMimeTypeError);xmp.InvalidNa=
tivePlayerViewportError=3Dfunction(Ji,Ki,Li){var Mi=3D[{label:"Native =
Player Type",text:Li.getType()},{label:"Native Player =
Name",text:Li.getName()}];xmp.InvalidNativePlayerViewportError.ctor.call(=
this,"InvalidNativePlayerViewportError",Ji,Ki,Mi);};xmp.DERIVE_CLASS(xmp.=
util.internals.XMPError,xmp.InvalidNativePlayerViewportError);xmp.Invalid=
PlayableNodeError=3Dfunction(Ni,Oi){xmp.InvalidPlayableNodeError.ctor.cal=
l(this,"InvalidMimeTypeError",Ni,Oi);};xmp.DERIVE_CLASS(xmp.util.internal=
s.XMPError,xmp.InvalidPlayableNodeError);xmp.InvalidPlugInVersionError=3D=
function(Pi,Qi,Ri){var Si=3D"Invalid "+Qi.displayName+" version =
\""+Ri+"\".  Expected version is =
";Si+=3D((parseInt(Qi.maxVersion,10)>0)?"between \""+Qi.minVersion+"\" =
and \""+Qi.maxVersion+"\".":"\""+Qi.minVersion+"\" or =
greater.");Si+=3D"\n\nThe latest plugin can be downloaded at =
\""+Qi.downloadUrl+"\".";xmp.InvalidPlugInVersionError.ctor.call(this,"In=
validPlugInVersionError",Pi,Si,Qi);};xmp.DERIVE_CLASS(xmp.PlugInError,xmp=
.InvalidPlugInVersionError);xmp.MediaPlayerError=3Dfunction(Ti,Ui){xmp.Me=
diaPlayerError.ctor.call(this,"MediaPlayerError",Ti,Ui);};xmp.DERIVE_CLAS=
S(xmp.util.internals.XMPError,xmp.MediaPlayerError);xmp.NativePlayerConne=
ctionError=3Dfunction(Vi,Wi,Xi,Yi){var Zi=3D[{label:"Native Player =
Type",text:((Xi)?Xi.getType():"")},{label:"Native Player =
Name",text:((Xi)?Xi.getName():"")}];if(Yi){Zi=3DZi.concat(Yi);}=0A=
xmp.NativePlayerConnectionError.ctor.call(this,xmp.XmpErrorCodes.CRITICAL=
_PLAYER_CONNECTION,"NativePlayerConnectionError",Vi,Wi,Zi);};xmp.DERIVE_C=
LASS(xmp.CriticalException,xmp.NativePlayerConnectionError);xmp.NativePla=
yerError=3Dfunction($i,aj,bj,cj){var =
dj=3D[];if(bj){dj.push({label:"Native Player =
Type",text:bj.getType()});dj.push({label:"Native Player =
Name",text:bj.getName()});}=0A=
if(cj){dj=3Ddj.concat(cj);}=0A=
xmp.NativePlayerError.ctor.call(this,"NativePlayerError",$i,aj,dj);};xmp.=
DERIVE_CLASS(xmp.util.internals.XMPError,xmp.NativePlayerError);xmp.Nativ=
ePlayerGroupNotFoundError=3Dfunction(ej,fj,gj,hj){var =
ij=3D[{label:"Native Player Group",text:gj}];if(hj){ij=3Dij.concat(hj);}=0A=
xmp.NativePlayerGroupNotFoundError.ctor.call(this,xmp.XmpErrorCodes.FATAL=
_UNSPECIFIED_ERROR,"NativePlayerGroupNotFoundError",ej,fj,ij);};xmp.DERIV=
E_CLASS(xmp.FatalException,xmp.NativePlayerGroupNotFoundError);xmp.Native=
PlayerNotFoundError=3Dfunction(jj,kj,lj,mj,nj){var oj=3D[{label:"Native =
Player Group",text:lj},{label:"MIME =
Type",text:mj}];if(nj){oj=3Doj.concat(nj);}=0A=
xmp.NativePlayerNotFoundError.ctor.call(this,xmp.XmpErrorCodes.FATAL_PLAT=
FORM,"NativePlayerNotFoundError",jj,kj,oj);};xmp.DERIVE_CLASS(xmp.Critica=
lException,xmp.NativePlayerNotFoundError);xmp.NativePlayerUnsupportedErro=
r=3Dfunction(pj,qj,rj){var sj=3D[{label:"Native Player =
Type",text:((rj)?rj.getType():"")},{label:"Native Player =
Name",text:((rj)?rj.getName():"")}];xmp.NativePlayerUnsupportedError.ctor=
.call(this,"NativePlayerUnsupportedError",pj,qj,sj);};xmp.DERIVE_CLASS(xm=
p.util.internals.XMPError,xmp.NativePlayerUnsupportedError);xmp.PlaybackM=
odeError=3Dfunction(tj,uj,vj){var wj=3D[{label:"Playback =
Mode",text:((vj)?vj.getName():"")}];xmp.PlaybackModeError.ctor.call(this,=
"PlaybackModeError",tj,uj,wj);};xmp.DERIVE_CLASS(xmp.util.internals.XMPEr=
ror,xmp.PlaybackModeError);xmp.PlayingPolicyApplyError=3Dfunction(xj,yj,z=
j,Aj){var Bj=3D"Unable to apply playing policy to playable =
node.\n\nPlayer Sizes:              "+yj.join(", ")+"\n\nPolicy:"+"\n\n  =
Type:                     "+zj.type+"\n  Media:                   =
"+zj.media.join(", ")+"\n\nPlayable Node:"+"\n\n  Location:              =
 "+Aj.getURI()+"\n  Streaming Mode:  "+Aj.getStreamingMode()+"\n  Mime =
Types:         "+Aj.getMimeTypes().join(", ")+"\n  Sizes:                =
   "+Aj.getSizes().join(", =
");xmp.PlayingPolicyApplyError.ctor.call(this,"PlayingPolicyApplyError",x=
j,Bj);};xmp.DERIVE_CLASS(xmp.util.internals.XMPError,xmp.PlayingPolicyApp=
lyError);xmp.PlayingPolicyError=3Dfunction(Cj,Dj){xmp.PlayingPolicyError.=
ctor.call(this,"PlayingPolicyError",Cj,Dj);};xmp.DERIVE_CLASS(xmp.util.in=
ternals.XMPError,xmp.PlayingPolicyError);xmp.PlugInDisabledError=3Dfuncti=
on(Ej,Fj,Gj){var Hj=3D"The "+Fj.displayName+" is disabled or not =
associated with the \""+Gj+"\" MIME =
type.";xmp.PlugInDisabledError.ctor.call(this,"PlugInDisabledError",Ej,Hj=
,Fj);};xmp.DERIVE_CLASS(xmp.PlugInError,xmp.PlugInDisabledError);xmp.Plug=
InNotFoundError=3Dfunction(Ij,Jj){var Kj=3DJj.displayName+" not found.  =
\n\nThe plugin can be downloaded at =
\""+Jj.downloadUrl+"\".";xmp.PlugInNotFoundError.ctor.call(this,"PlugInNo=
tFoundError",Ij,Kj,Jj);};xmp.DERIVE_CLASS(xmp.PlugInError,xmp.PlugInNotFo=
undError);xmp.ServiceError=3Dfunction(Lj,Mj){xmp.ServiceError.ctor.call(t=
his,"ServiceError",Lj,Mj);};xmp.DERIVE_CLASS(xmp.util.internals.XMPError,=
xmp.ServiceError);xmp.UnsupportedPlatformError=3Dfunction(Nj,Oj){xmp.Unsu=
pportedPlatformError.ctor.call(this,xmp.XmpErrorCodes.FATAL_PLATFORM,"Uns=
upportedPlatformError",Nj,Oj);};xmp.DERIVE_CLASS(xmp.FatalException,xmp.U=
nsupportedPlatformError);xmp.UnsupportedPlugInVersionError=3Dfunction(Pj,=
Qj,Rj){var Sj=3D"The "+Qj.displayName+" version \""+Rj+"\" is not =
supported.  Expected version is =
";Sj+=3D((parseInt(Qj.maxVersion,10)>0)?"between \""+Qj.minVersion+"\" =
and \""+Qj.maxVersion+"\".":"\""+Qj.minVersion+"\" or =
greater.");Sj+=3D"\n\nA supported plugin can be downloaded at =
\""+Qj.downloadUrl+"\".";xmp.UnsupportedPlugInVersionError.ctor.call(this=
,"UnsupportedPlugInVersionError",Pj,Sj,Qj);};xmp.DERIVE_CLASS(xmp.PlugInE=
rror,xmp.UnsupportedPlugInVersionError);xmp.DefaultPlaybackMode=3Dfunctio=
n(Tj,Uj,Vj){xmp.DefaultPlaybackMode.ctor.call(this,Tj,Uj,Vj);};xmp.DERIVE=
_CLASS(xmp.PlaybackMode,xmp.DefaultPlaybackMode);xmp.DefaultPlaybackMode.=
prototype.open=3Dfunction(Wj,Xj){this.changeMode(Wj,xmp.INIT,xmp.OPEN_OPE=
RATION,Xj);};xmp.DefaultPlaybackMode.prototype.close=3Dfunction(Yj){this.=
changeMode(Yj,xmp.FINI,xmp.CLOSE_OPERATION,null);};xmp.DefaultPlaybackMod=
e.prototype.play=3Dfunction(Zj){this.changeMode(Zj,xmp.PLAY,xmp.PLAY_OPER=
ATION,null);};xmp.DefaultPlaybackMode.prototype.pause=3Dfunction($j){this=
.changeMode($j,xmp.PAUSE,xmp.PAUSE_OPERATION,null);};xmp.DefaultPlaybackM=
ode.prototype.stop=3Dfunction(ak){this.changeMode(ak,xmp.STOP,xmp.STOP_OP=
ERATION,null);};xmp.DefaultPlaybackMode.prototype.rewind=3Dfunction(bk){t=
his.changeMode(bk,xmp.REWIND,xmp.REWIND_OPERATION,null);};xmp.DefaultPlay=
backMode.prototype.fastForward=3Dfunction(ck){this.changeMode(ck,xmp.FAST=
_FORWARD,xmp.FAST_FORWARD_OPERATION,null);};xmp.DefaultPlaybackMode.proto=
type.seek=3Dfunction(dk,ek){this.changeMode(dk,xmp.SEEKABLE,xmp.SEEK_OPER=
ATION,ek);};xmp.DefaultPlaybackMode.prototype.ended=3Dfunction(fk){this.c=
hangeMode(fk,xmp.ENDED,xmp.ENDED_OPERATION,null);};xmp.DefaultPlaybackMod=
e.prototype.error=3Dfunction(gk){this.changeMode(gk,xmp.ERRORS,xmp.ERROR_=
OPERATION,null);};xmp.DefaultPlaybackMode.prototype.isAvailable=3Dfunctio=
n(hk,ik){try{return(true=3D=3D=3Dthis.canTransition(ik)||this.getPlayer(h=
k).isAvailable(ik));}=0A=
catch(e){this.handleError(hk,xmp.IS_AVAILABLE,e);}=0A=
return =
false;};xmp.DefaultPlaybackMode.prototype.getPosition=3Dfunction(jk){try{=
return parseInt(this.getPlayer(jk).getPosition(),10);}=0A=
catch(e){this.handleError(jk,xmp.GET_POSITION,e);}=0A=
return =
0;};xmp.DefaultPlaybackMode.prototype.getDuration=3Dfunction(kk){try{retu=
rn parseInt(this.getPlayer(kk).getDuration(),10);}=0A=
catch(e){this.handleError(kk,xmp.GET_DURATION,e);}=0A=
return =
0;};xmp.DefaultPlaybackMode.prototype.getVolume=3Dfunction(lk){try{return=
 this.getPlayer(lk).getVolume();}=0A=
catch(e){this.handleError(lk,xmp.GET_VOLUME,e);}=0A=
return =
0;};xmp.DefaultPlaybackMode.prototype.setVolume=3Dfunction(mk,nk){try{thi=
s.getPlayer(mk).setVolume(nk);}=0A=
catch(e){this.handleError(mk,xmp.SET_VOLUME,e);}};xmp.DefaultPlaybackMode=
.prototype.getMute=3Dfunction(ok){try{return =
this.getPlayer(ok).getMute();}=0A=
catch(e){this.handleError(ok,xmp.GET_MUTE,e);}=0A=
return =
false;};xmp.DefaultPlaybackMode.prototype.setMute=3Dfunction(pk,qk){try{t=
his.getPlayer(pk).setMute(qk);}=0A=
catch(e){this.handleError(pk,xmp.SET_MUTE,e);}};xmp.DefaultPlaybackMode.p=
rototype.getFullscreen=3Dfunction(rk){try{return =
this.getPlayer(rk).getFullscreen();}=0A=
catch(e){this.handleError(rk,xmp.GET_FULLSCREEN,e);}=0A=
return =
false;};xmp.DefaultPlaybackMode.prototype.setFullscreen=3Dfunction(sk,tk)=
{try{this.getPlayer(sk).setFullscreen(tk);}=0A=
catch(e){this.handleError(sk,xmp.SET_FULLSCREEN,e);}};xmp.DefaultPlayback=
Mode.prototype.getBufferingProgress=3Dfunction(uk){try{return =
this.getPlayer(uk).getBufferingProgress();}=0A=
catch(e){this.handleError(uk,xmp.GET_BUFFERING_PROGRESS,e);}=0A=
return =
null;};xmp.DefaultPlaybackMode.prototype.handleError=3Dfunction(vk,wk,e){=
var xk=3De;if(false=3D=3D=3D(xk instanceof =
xmp.NativePlayerError)&&false=3D=3D=3D(xk instanceof =
xmp.NativePlayerUnsupportedError)){var yk=3D"Delegating =
\""+wk.toLowerCase()+"\" operation to native player.";xk=3Dnew =
xmp.NativePlayerError(((e.context)?e.context:yk),((e.rawMessage)?e.rawMes=
sage:e.message),this.getPlayer(vk),[{label:"Playback =
Mode",text:this.getName()}]);xk.setInnerError(e);}=0A=
throw =
xk;};xmp.ENDED_PLAYBACK_STATE=3D"EndedPlayback";xmp.ENDED=3D"Ended";xmp.E=
NDED_OPERATION=3D"Ended";xmp.EndedPlaybackMode=3Dfunction(){xmp.EndedPlay=
backMode.ctor.call(this,xmp.ENDED,xmp.ENDED_PLAYBACK_STATE,[xmp.FINI,xmp.=
ERRORS]);};xmp.DERIVE_CLASS(xmp.DefaultPlaybackMode,xmp.EndedPlaybackMode=
);xmp.EndedPlaybackMode.prototype.transition=3Dfunction(zk,Ak,Bk){this.en=
ded(zk);};xmp.EndedPlaybackMode.prototype.ended=3Dfunction(Ck){try{this.g=
etPlayer(Ck).ended();}=0A=
catch(e){this.handleError(Ck,xmp.ENDED_OPERATION,e);}};xmp.ERRORS_PLAYBAC=
K_STATE=3D"ErrorPlayback";xmp.ERRORS=3D"Error";xmp.ERROR_OPERATION=3D"Err=
or";xmp.ErrorPlaybackMode=3Dfunction(){xmp.ErrorPlaybackMode.ctor.call(th=
is,xmp.ERRORS,xmp.ERRORS_PLAYBACK_STATE,[xmp.FINI]);};xmp.DERIVE_CLASS(xm=
p.DefaultPlaybackMode,xmp.ErrorPlaybackMode);xmp.ErrorPlaybackMode.protot=
ype.transition=3Dfunction(Dk,Ek,Fk){this.error(Dk);};xmp.ErrorPlaybackMod=
e.prototype.error=3Dfunction(Gk){try{this.getPlayer(Gk).error();}=0A=
catch(e){}};xmp.FAST_FORWARD_PLAYBACK_STATE=3D"FastForwardPlayback";xmp.F=
AST_FORWARD=3D"FastForward";xmp.FAST_FORWARD_OPERATION=3D"FastForward";xm=
p.FastForwardPlaybackMode=3Dfunction(){xmp.FastForwardPlaybackMode.ctor.c=
all(this,xmp.FAST_FORWARD,xmp.FAST_FORWARD_PLAYBACK_STATE,[xmp.FINI,xmp.E=
NDED,xmp.ERRORS]);};xmp.DERIVE_CLASS(xmp.DefaultPlaybackMode,xmp.FastForw=
ardPlaybackMode);xmp.FastForwardPlaybackMode.prototype.transition=3Dfunct=
ion(Hk,Ik,Jk){this.fastForward(Hk);};xmp.FastForwardPlaybackMode.prototyp=
e.fastForward=3Dfunction(Kk){try{this.getPlayer(Kk).fastForward();}=0A=
catch(e){this.handleError(Kk,xmp.FAST_FORWARD_OPERATION,e);}};xmp.FINI_PL=
AYBACK_STATE=3D"FiniPlayback";xmp.FINI=3D"Fini";xmp.CLOSE_OPERATION=3D"Cl=
ose";xmp.FiniPlaybackMode=3Dfunction(){xmp.FiniPlaybackMode.ctor.call(thi=
s,xmp.FINI,xmp.FINI_PLAYBACK_STATE,[xmp.INIT,xmp.ERRORS]);};xmp.DERIVE_CL=
ASS(xmp.DefaultPlaybackMode,xmp.FiniPlaybackMode);xmp.FiniPlaybackMode.pr=
ototype.transition=3Dfunction(Lk,Mk,Nk){try{this.getPlayer(Lk).close();}=0A=
catch(e){this.handleError(Lk,xmp.CLOSE_OPERATION,e);}};xmp.FiniPlaybackMo=
de.prototype.close=3Dfunction(Ok){};xmp.INIT_PLAYBACK_STATE=3D"InitPlayba=
ck";xmp.INIT=3D"Init";xmp.OPEN_OPERATION=3D"Open";xmp.InitPlaybackMode=3D=
function(){xmp.InitPlaybackMode.ctor.call(this,xmp.INIT,xmp.INIT_PLAYBACK=
_STATE,[xmp.FINI,xmp.PLAY,xmp.ENDED,xmp.ERRORS]);};xmp.DERIVE_CLASS(xmp.D=
efaultPlaybackMode,xmp.InitPlaybackMode);xmp.InitPlaybackMode.prototype.t=
ransition=3Dfunction(Pk,Qk,Rk){try{this.getPlayer(Pk).open(Qk);}=0A=
catch(e){this.handleError(Pk,xmp.OPEN_OPERATION,e);}};xmp.InitPlaybackMod=
e.prototype.open=3Dfunction(Sk,Tk){throw new =
xmp.PlaybackModeError("Invoking state operation.","The =
\""+xmp.OPEN_OPERATION.toLowerCase()+"\" operation has already been =
executed.",this);};xmp.NORMAL_PLAYBACK_STATE=3D"NormalPlayback";xmp.PLAY=3D=
"Play";xmp.PLAY_OPERATION=3D"Play";xmp.NormalPlaybackMode=3Dfunction(){xm=
p.NormalPlaybackMode.ctor.call(this,xmp.PLAY,xmp.NORMAL_PLAYBACK_STATE,[x=
mp.FINI,xmp.ENDED,xmp.ERRORS]);};xmp.DERIVE_CLASS(xmp.DefaultPlaybackMode=
,xmp.NormalPlaybackMode);xmp.NormalPlaybackMode.prototype.transition=3Dfu=
nction(Uk,Vk,Wk){this.play(Uk);};xmp.NormalPlaybackMode.prototype.play=3D=
function(Xk){try{this.getPlayer(Xk).play();}=0A=
catch(e){this.handleError(Xk,xmp.PLAY_OPERATION,e);}};xmp.PAUSE_PLAYBACK_=
STATE=3D"PausePlayback";xmp.PAUSE=3D"Pause";xmp.PAUSE_OPERATION=3D"Pause"=
;xmp.PausePlaybackMode=3Dfunction(){xmp.PausePlaybackMode.ctor.call(this,=
xmp.PAUSE,xmp.PAUSE_PLAYBACK_STATE,[xmp.FINI,xmp.ENDED,xmp.ERRORS]);};xmp=
.DERIVE_CLASS(xmp.DefaultPlaybackMode,xmp.PausePlaybackMode);xmp.PausePla=
ybackMode.prototype.transition=3Dfunction(Yk,Zk,$k){this.pause(Yk);};xmp.=
PausePlaybackMode.prototype.pause=3Dfunction(al){try{this.getPlayer(al).p=
ause();}=0A=
catch(e){this.handleError(al,xmp.PAUSE_OPERATION,e);}};xmp.PlayerModeRegi=
stry=3Dfunction(){this.modes=3D[];var bl=3D[new =
xmp.InitPlaybackMode(),new xmp.FiniPlaybackMode(),new =
xmp.PausePlaybackMode(),new xmp.NormalPlaybackMode(),new =
xmp.PausePlaybackMode(),new xmp.StopPlaybackMode(),new =
xmp.RewindPlaybackMode(),new xmp.FastForwardPlaybackMode(),new =
xmp.SeekablePlaybackMode(),new xmp.EndedPlaybackMode(),new =
xmp.ErrorPlaybackMode()];for(var =
i=3D0;i<bl.length;i++){this.addMode(bl[i]);}};xmp.PlayerModeRegistry.prot=
otype.addMode=3Dfunction(cl){this.modes[cl.type]=3Dcl;};xmp.PlayerModeReg=
istry.prototype.findMode=3Dfunction(dl){var =
el=3Dthis.modes[dl];if(el!=3D=3Dnull){return el;}=0A=
throw new xmp.PlaybackModeError("Finding playback mode.","Unable to find =
player mode =
\""+dl+"\".",null);};xmp.REWIND_PLAYBACK_STATE=3D"RewindPlayback";xmp.REW=
IND=3D"Rewind";xmp.REWIND_OPERATION=3D"Rewind";xmp.RewindPlaybackMode=3Df=
unction(){xmp.RewindPlaybackMode.ctor.call(this,xmp.REWIND,xmp.REWIND_PLA=
YBACK_STATE,[xmp.FINI,xmp.ENDED,xmp.ERRORS]);};xmp.DERIVE_CLASS(xmp.Defau=
ltPlaybackMode,xmp.RewindPlaybackMode);xmp.RewindPlaybackMode.prototype.t=
ransition=3Dfunction(fl,gl,hl){this.rewind(fl);};xmp.RewindPlaybackMode.p=
rototype.rewind=3Dfunction(il){try{this.getPlayer(il).rewind();}=0A=
catch(e){this.handleError(il,xmp.REWIND_OPERATION,e);}};xmp.SEEKABLE_PLAY=
BACK_STATE=3D"SeekablePlayback";xmp.SEEKABLE=3D"Seekable";xmp.SEEK_OPERAT=
ION=3D"Seek";xmp.SeekablePlaybackMode=3Dfunction(){xmp.SeekablePlaybackMo=
de.ctor.call(this,xmp.SEEKABLE,xmp.SEEKABLE_PLAYBACK_STATE,[xmp.FINI,xmp.=
ENDED,xmp.ERRORS]);};xmp.DERIVE_CLASS(xmp.DefaultPlaybackMode,xmp.Seekabl=
ePlaybackMode);xmp.SeekablePlaybackMode.prototype.transition=3Dfunction(j=
l,kl,ll){this.seek(jl,kl);};xmp.SeekablePlaybackMode.prototype.seek=3Dfun=
ction(ml,nl){try{this.getPlayer(ml).seek(nl);}=0A=
catch(e){this.handleError(ml,xmp.SEEK_OPERATION,e);}};xmp.STOP_PLAYBACK_S=
TATE=3D"StopPlayback";xmp.STOP=3D"Stop";xmp.STOP_OPERATION=3D"Stop";xmp.S=
topPlaybackMode=3Dfunction(){xmp.StopPlaybackMode.ctor.call(this,xmp.STOP=
,xmp.STOP_PLAYBACK_STATE,[xmp.FINI,xmp.ENDED,xmp.ERRORS]);};xmp.DERIVE_CL=
ASS(xmp.DefaultPlaybackMode,xmp.StopPlaybackMode);xmp.StopPlaybackMode.pr=
ototype.transition=3Dfunction(ol,pl,ql){this.stop(ol);};xmp.StopPlaybackM=
ode.prototype.stop=3Dfunction(rl){try{this.getPlayer(rl).stop();}=0A=
catch(e){this.handleError(rl,xmp.STOP_OPERATION,e);}};xmp.ContextualUrlSt=
rategy=3Dfunction(){this._logger=3Dnew =
xmp.util.internals.CategoryLogger('ContextualUrlStrategy');this._mapMimeT=
ypeToUrlStrategy=3Dnull;this._mapStrategyNameToStrategyObject=3D{};this._=
defaultStrategy=3Dnew =
xmp.SimpleUrlStrategy();xmp.util.SettingsManager.getInstance().addContext=
ChangeListener(new =
xmp.util.Callback('ContextualUrlStrategy',this._handleContextChange,this)=
);};xmp.ContextualUrlStrategy.create=3Dfunction(){var sl=3Dnew =
xmp.ContextualUrlStrategy();return =
sl;};xmp.ContextualUrlStrategy.prototype.getName=3Dfunction(){return'Cont=
extual';};xmp.ContextualUrlStrategy.prototype.tryFailover=3Dfunction(tl,u=
l,vl){if((!tl)||(!ul)||(!vl)){return false;}=0A=
if(vl instanceof =
xmp.NativePlayerConnectionError&&(this._mapStrategyNameToStrategyObject[t=
his._getStrategyName(ul)].getName()!=3D=3Dthis._defaultStrategy.getName()=
)){this._setFailoverStrategy(ul,vl);ul.setURI(ul.getMetadata('originalUri=
','foo'));ul.setUriAbsolute(false);tl.open(ul);return true;}=0A=
return =
false;};xmp.ContextualUrlStrategy.prototype.buildUrlAsynch=3Dfunction(wl,=
xl){var yl=3Dnew =
xmp.util.Callback('ContextualUrlStrategy',this._handleDelegateBuildUrlAsy=
nch,this);yl.setMetadata('relayCb',xl);try{this._getStrategy(wl).buildUrl=
Asynch(wl,yl);}=0A=
catch(ex){this._logger.warn('Error calling buildUrlAsynch: =
'+ex);this._handleDelegateBuildUrlAsynch(yl,wl,ex);}};xmp.ContextualUrlSt=
rategy.prototype._handleDelegateBuildUrlAsynch=3Dfunction(zl,Al,Bl){var =
Cl=3Dzl.getMetadata('relayCb',xmp.util.internals.MetadataMap.defaultObj);=
if(Bl!=3D=3Dnull){this._setFailoverStrategy(Al,Bl);if(Bl.octoError){this.=
_logger.warn('Trying again after fail =
over.');this.buildUrlAsynch(Al,Cl);return;}}=0A=
Cl.call(Al,Bl);};xmp.ContextualUrlStrategy.prototype._setFailoverStrategy=
=3Dfunction(Dl,El){try{if(El instanceof xmp.PlugInError){return;}=0A=
var Fl=3Dthis._getStrategyName(Dl);this._logger.critical('Failing over =
for strategy: =
'+Fl,El);this._mapStrategyNameToStrategyObject[Fl]=3Dthis._defaultStrateg=
y;}=0A=
catch(ex){this._logger.critical('Error setting failover strategy, =
setting all strategies to default: '+ex);for(var =
Gl=3Dxmp.MapIterator.create(this._mapStrategyNameToStrategyObject);Gl.has=
Next();Gl.next()){Gl.updateCurrentValue(this._defaultStrategy);}}};xmp.Co=
ntextualUrlStrategy.prototype._getStrategyName=3Dfunction(Hl){var =
Il=3DHl.getMimeType();if(!xmp.isNonEmptyString(Il)){throw new Error('No =
mime-type on playable node.');}=0A=
this._loadMimeTypeToUrlStrategyMap();var =
Jl=3Dthis._mapMimeTypeToUrlStrategy[Il];if(!xmp.isNonEmptyString(Jl)){Jl=3D=
'Simple';this._mapMimeTypeToUrlStrategy[Il]=3DJl;}=0A=
return =
Jl;};xmp.ContextualUrlStrategy.prototype._getStrategy=3Dfunction(Kl){var =
Ll=3Dthis._getStrategyName(Kl);var =
Ml=3Dthis._mapStrategyNameToStrategyObject[Ll];if(typeof(Ml)=3D=3D=3D'und=
efined'){Ml=3Dthis._createStrategy(Ll);this._mapStrategyNameToStrategyObj=
ect[Ll]=3DMl;}=0A=
if(this._logger.isInfoEnabled()){this._logger.info('For mime-type: =
'+Kl.getMimeType()+', requested strategy: '+Ll+', actual strategy: =
'+Ml.getName());}=0A=
return =
Ml;};xmp.ContextualUrlStrategy.prototype._createStrategy=3Dfunction(Nl){i=
f(Nl=3D=3D=3D'Simple'){return this._defaultStrategy;}=0A=
if(Nl=3D=3D=3D'Octoshape'){return new xmp.OctoshapeUrlStrategy();}=0A=
if(Nl=3D=3D=3D'OctoshapeConditional'){if(xmp.InternalUserDetection.getIns=
tance().isInternal()&&xmp.OctoshapeUrlStrategy.canUse()){return new =
xmp.OctoshapeUrlStrategy();}=0A=
else{return this._defaultStrategy;}}=0A=
throw new Error('Unrecogonized URL strategy name: =
'+Nl);};xmp.ContextualUrlStrategy.prototype._loadMimeTypeToUrlStrategyMap=
=3Dfunction(){if(this._mapMimeTypeToUrlStrategy!=3D=3Dnull){return;}=0A=
this._mapMimeTypeToUrlStrategy=3D{};this._mapStrategyNameToStrategyObject=
=3D{};var =
Ol=3Dxmp.util.SettingsManager.getInstance().getContextNode().getNodeForPa=
th('UrlStrategies');var Pl=3DOl.retrieveKeys();for(var =
i=3D0;i<Pl.length;i++){var Ql=3DPl[i];var =
Rl=3DOl.getString(Ql,'dummy');this._mapMimeTypeToUrlStrategy[Ql]=3DRl;}};=
xmp.ContextualUrlStrategy.prototype._handleContextChange=3Dfunction(){thi=
s._mapMimeTypeToUrlStrategy=3Dnull;};xmp.InternalUserDetection=3Dfunction=
(){this._logger=3Dnew =
xmp.util.internals.CategoryLogger('InternalUserDetection');this._isInited=
=3Dfalse;this._isInternal=3Dfalse;this._primaryCheckResult=3D-1;};xmp.Int=
ernalUserDetection._instance=3Dnull;xmp.InternalUserDetection.getInstance=
=3Dfunction(){if(xmp.InternalUserDetection._instance=3D=3D=3Dnull){xmp.In=
ternalUserDetection._instance=3Dnew xmp.InternalUserDetection();}=0A=
return =
xmp.InternalUserDetection._instance;};xmp.InternalUserDetection.prototype=
.isInternal=3Dfunction(){if(!this._isInited){throw new =
Error('InternalUserDetection not initialized.');}=0A=
return =
this._isInternal;};xmp.InternalUserDetection.prototype.init=3Dfunction(Sl=
){this._isInited=3Dfalse;this._isInternal=3Dfalse;this._primaryCheckResul=
t=3D-1;try{var Tl=3Dthis._getPrefs();if(!Tl.getBoolean('do primary =
check',false)){this._logger.info('Primary check turned OFF, NOT an =
internal user.');this._finish(Sl,false);return;}=0A=
this._primaryCheckResult=3Dthis._isInternalPrimaryCheck();if(1=3D=3D=3Dth=
is._primaryCheckResult){if(Tl.getBoolean('do secondary =
check',false)){this._logger.info('Primary check returned true, and =
secondary check turned ON, doing secondary =
check.');this._checkResourceLoadedFromWeb(Sl);return;}=0A=
else{this._logger.info('Primary check returned true, and secondary check =
turned OFF, IS an internal user.');this._finish(Sl,true);return;}}=0A=
else{this._logger.info('Primary check returned: =
'+this._primaryCheckResult+', NOT an internal =
user.');this._finish(Sl,false);return;}}=0A=
catch(ex){this._logger.info('Error checking internal =
user.',ex);this._finish(Sl,false);}};xmp.InternalUserDetection.prototype.=
_finish=3Dfunction(Ul,Vl){this._isInternal=3DVl;this._doAsynchCallback(Ul=
);};xmp.InternalUserDetection.prototype._isInternalPrimaryCheck=3Dfunctio=
n(){var =
cc=3Dthis._getCountryCode();if(!xmp.isNonEmptyString(cc)){return-1;}=0A=
if(cc=3D=3D=3D'***'){return 1;}=0A=
return =
0;};xmp.InternalUserDetection.prototype._getCountryCode=3Dfunction(){var =
cc=3D'';if(xmp.util.Cookie.canUse()){var =
Wl=3Dxmp.util.Cookie.read('adDEmas');if(xmp.isNonEmptyString(Wl)){var =
Xl=3DWl.split('&');if(Xl.length>=3D5){cc=3DXl[4];}}}=0A=
return =
cc;};xmp.InternalUserDetection.prototype._doAsynchCallback=3Dfunction(Yl)=
{this._isInited=3Dtrue;Yl.callAsynch([]);};xmp.InternalUserDetection.prot=
otype._checkResourceLoadedFromWeb=3Dfunction(Zl){var =
$l=3Dthis._getPrefs();var am=3D$l.getString('rel url','dummy');var =
bm=3D'internalUserCheckResource';this._isInternal=3Dfalse;var cm=3Dnew =
xmp.util.Callback('InternalUserDetection._checkResourceLoadedFromWeb',thi=
s._onResourceLoadedFromWeb,this);cm.setMetadata('relayCb',Zl);xmp.net.Aja=
xRequestManager.getInstance().request(am,cm,bm,am,xmp.net.ContentTypes.TE=
XT,null);};xmp.InternalUserDetection.prototype._onResourceLoadedFromWeb=3D=
function(dm,em){var =
fm=3Ddm.getMetadata('relayCb',xmp.util.internals.MetadataMap.defaultObj);=
this._isInited=3Dtrue;this._isInternal=3D!em.isError();this._logger.info(=
'Secondary check returned: '+this._isInternal+', user =
'+(this._isInternal?'IS':'is NOT')+' an internal user.');try{fm.call();}=0A=
catch(ex){this._logger.error('Error calling =
callback.',ex);}};xmp.InternalUserDetection.prototype._getPrefs=3Dfunctio=
n(){return =
xmp.util.SettingsManager.getInstance().getGlobalContextNode().getNodeForP=
ath('InternalUserCheck');};xmp.OctoshapeUrlStrategy=3Dfunction(){this._lo=
gger=3Dnew =
xmp.util.internals.CategoryLogger('OctoshapeUrlStrategy');this._OCTO_MIME=
_TYPE=3D'application/x-octoshapeplugin';this._VALIDATE_OCTO=3D'ValidateOc=
toshape';this._OCTO_ASYNCH_INTERVAL=3D5;this._OCTO_POLL_INTERVAL=3Dthis._=
getPrefs().getInt('octo poll =
interval',2000);this._OCTO_TRY_LIMIT=3Dthis._getPrefs().getInt('octo try =
limit',8);this._OCTO_STATE_PLUGIN_INITIALIZING=3D-4500;this._OCTO_STATE_S=
TARTING=3D1;this._OCTO_STATE_READY=3D2;this._octoGroup=3D'';this._octoPlu=
gin=3Dnull;this._initializingOctoPlugin=3Dnull;this._octoException=3Dnull=
;try{this._createOctoPlugin();}=0A=
catch(ex){this._initializingOctoPlugin=3Dthis._octoPlugin=3Dnull;this._oc=
toException=3Dex;this._logger.warn('Error creating octoshape plugin: =
'+ex);}};xmp.OctoshapeUrlStrategy.canUse=3Dfunction(){try{if(typeof(xmp.O=
ctoshapeUrlStrategy._canUseInternal)=3D=3D=3D'undefined'){var =
gm=3Dxmp.OctoshapeUrlStrategy._staticGetPrefs();var =
hm=3D'{fn:function(){'+gm.getString('octo can use fn','return =
false;')+'}}';var =
im=3Dxmp.net.AjaxRequestManager.getInstance()._parseJson(hm);xmp.Octoshap=
eUrlStrategy._canUseInternal=3Dim.fn;}=0A=
return xmp.OctoshapeUrlStrategy._canUseInternal();}=0A=
catch(ex){xmp.util.internals.CategoryLogger.create('OctoshapeUrlStrategy'=
).warn('Error calling canUse.',ex);return =
false;}};xmp.OctoshapeUrlStrategy.prototype.getName=3Dfunction(){return'O=
ctoshape';};xmp.OctoshapeUrlStrategy.prototype.buildUrlAsynch=3Dfunction(=
jm,km){if(this._octoException!=3D=3Dnull){throw this._octoException;}=0A=
try{var lm=3Dnew =
xmp.util.Callback('OctoshapeUrlStrategy',this._handleTimer,this);lm.setMe=
tadata('relayCb',km);lm.setMetadata('node',jm);this._doTimer(lm);}=0A=
catch(ex){this._octoException=3Dex;throw =
this._octoException;}};xmp.OctoshapeUrlStrategy.prototype._doTimer=3Dfunc=
tion(mm){var =
nm=3Dmm.getMetadata('node',xmp.util.internals.MetadataMap.defaultObj);var=
 om=3Dthis._OCTO_POLL_INTERVAL;var =
pm=3Dmm.getMetadata('octo_tries',0);var =
qm=3Dthis._getOctoStatus(pm);switch(qm){case =
this._OCTO_STATE_PLUGIN_INITIALIZING:case =
this._OCTO_STATE_STARTING:om=3Dthis._OCTO_POLL_INTERVAL;pm++;mm.setMetada=
ta('octo_tries',pm);break;case =
this._OCTO_STATE_READY:om=3Dthis._OCTO_ASYNCH_INTERVAL;var =
rm=3Dnm.getURI();var sm=3Dnm.getBestId();var =
tm=3Dthis._getPrefs().getNodeForPath('url mapping');var =
um=3Dtm.getString(sm,rm);rm=3Dum;var =
vm=3Dthis._octoPlugin.getLink(rm,false);nm.setURI(vm);this._logger.info('=
Old URI: '+rm+', New Octoshape URI: =
'+vm);mm.setMetadata('octo_ready',true);break;default:throw new =
Error('Unexepected octoshape status: '+qm);}=0A=
if(this._logger.isDebugEnabled()){this._logger.debug('Node: =
'+nm.getBestId()+', timer duration: '+om+', tries: '+pm+', status: =
'+qm);}=0A=
xmp.util.Timer.doSimpleCallbackEx(om,mm);};xmp.OctoshapeUrlStrategy._stat=
icGetPrefs=3Dfunction(){return =
xmp.util.SettingsManager.getInstance().getContextNode().getNodeForPath('U=
rlStrategies/Octoshape');};xmp.OctoshapeUrlStrategy.prototype._getPrefs=3D=
function(){return =
xmp.OctoshapeUrlStrategy._staticGetPrefs();};xmp.OctoshapeUrlStrategy.pro=
totype._handleTimer=3Dfunction(wm){var =
xm=3Dwm.getMetadata('relayCb',xmp.util.internals.MetadataMap.defaultObj);=
var =
ym=3Dwm.getMetadata('node',xmp.util.internals.MetadataMap.defaultObj);var=
 zm=3Dwm.getMetadata('octo_ready',false);if(zm){xm.call(ym,null);}=0A=
else{try{this._doTimer(wm);}=0A=
catch(ex){this._octoException=3Dex;xm.call(ym,ex);}}};xmp.OctoshapeUrlStr=
ategy.prototype._getOctoStatus=3Dfunction(Am){if(Am>=3Dthis._OCTO_TRY_LIM=
IT){var Bm=3Dnew Error('Exceeded limit of attempts to start octoshape: =
'+this._OCTO_TRY_LIMIT);Bm.octoError=3Dtrue;throw Bm;}=0A=
if(this._checkOctoPlugin(Am=3D=3D=3D(this._OCTO_TRY_LIMIT-1))){return =
this._octoPlugin.getStatus(true);}=0A=
else{return =
this._OCTO_STATE_PLUGIN_INITIALIZING;}};xmp.OctoshapeUrlStrategy.prototyp=
e._checkOctoPlugin=3Dfunction(Cm){if(this._octoPlugin){return true;}=0A=
if(!this._octoPlugin){if(!(typeof(this._initializingOctoPlugin.getStatus)=
!=3D=3D'undefined'&&typeof(this._initializingOctoPlugin.getLink)!=3D=3D'u=
ndefined')){if(Cm){throw new =
xmp.InvalidPlugInVersionError(this._VALIDATE_OCTO,this._getPluginInfo(),'=
out-of-date-version');}=0A=
else{return false;}}=0A=
this._octoPlugin=3Dthis._initializingOctoPlugin;return =
true;}};xmp.OctoshapeUrlStrategy.prototype._createOctoPlugin=3Dfunction()=
{this._octoPlugin=3Dnull;this._initializingOctoPlugin=3Dnull;if(window.Ac=
tiveXObject){try{this._initializingOctoPlugin=3Dnew =
window.ActiveXObject('octoshapeplugin'+this._octoGroup+'.client');}=0A=
catch(ex){this._logger.info('Error creating Octoshape =
ActiveXObject',ex);this._initializingOctoPlugin=3Dnull;}}=0A=
else{var Dm=3Dthis._OCTO_MIME_TYPE+this._octoGroup+'-client';var =
Em=3Dnull;if(window.navigator&&window.navigator.mimeTypes&&window.navigat=
or.mimeTypes.length){Em=3Dwindow.navigator.mimeTypes[Dm];}=0A=
if(!Em){throw new =
xmp.PlugInNotFoundError(this._VALIDATE_OCTO,this._getPluginInfo());}=0A=
if(!Em.enabledPlugin){throw new =
xmp.PlugInDisabledError(this._VALIDATE_OCTO,this._getPluginInfo(),this._O=
CTO_MIME_TYPE);}=0A=
var =
Fm=3Dwindow.document.createElement("DIV");window.document.body.appendChil=
d(Fm);Fm.innerHTML=3D'<object id=3D"xmp_octoshapeclientobject" =
type=3D"'+Dm+'" =
hidden=3D"true"></object>';this._initializingOctoPlugin=3Dwindow.document=
.getElementById('xmp_octoshapeclientobject');}=0A=
if(!this._initializingOctoPlugin){throw new =
xmp.PlugInNotFoundError(this._VALIDATE_OCTO,this._getPluginInfo());}};xmp=
.OctoshapeUrlStrategy.prototype._getPluginInfo=3Dfunction(){var =
Gm=3Dxmp.PlayerPolicy;var Hm=3DGm.getPlugins();var =
Im=3DHm.Octoshape;if(!Im){var ex=3Dnew Error('Octoshape plugin =
incorrectly configured.');this._logger.fatal('Octoshape error',ex);throw =
ex;}=0A=
return =
Im;};xmp.SimpleUrlStrategy=3Dfunction(){};xmp.SimpleUrlStrategy.prototype=
.getName=3Dfunction(){return'Simple';};xmp.SimpleUrlStrategy.prototype.bu=
ildUrlAsynch=3Dfunction(Jm,Km){Km.callAsynch([Jm,null]);};
------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/video/xmp/xmp_playerapi_native.js

// Turner XMP, Release Build, =A9 2007 Turner Broadcasting System, Inc. =
A Time Warner Company.  File: xmp_playerapi_native, Version: 0.1.524.1663=0A=
=0A=
xmp.DHTML_PLAYER=3D"DHTML";xmp.DHTML_MIME_TYPE=3D"application/x-dhtml";xm=
p.DHTML_OBJECT_TRANSPORT=3D"dhtmlObject";xmp.DHTMLPlayer=3Dfunction(aa,ba=
){this.object=3Dnull;this.node=3Dnull;this.url=3D"";xmp.DHTMLPlayer.ctor.=
call(this,xmp.DHTML_PLAYER,aa,ba);this._logger=3Dnew =
xmp.util.internals.CategoryLogger('DHTMLPlayer');};xmp.DERIVE_CLASS(xmp.A=
bstractNativePlayer,xmp.DHTMLPlayer);xmp.DHTMLPlayer.prototype.open=3Dfun=
ction(ca){this.node=3Dca;this.url=3Dca.getURI();var da=3Dnew =
xmp.util.Callback(this.getName(),this.onDHTMLObjectLoad,this);var =
ea=3Dxmp.DHTML_OBJECT_TRANSPORT;var =
fa=3Dca.getMetadata('altRootUrlType','');if(fa.length>0){ea=3Dfa;}=0A=
var =
ga=3Dxmp.baseplayer.MetaFileLoaderFactory.getInstance().create(ea);ga.set=
Ids([this.url],da);ga.load();};xmp.DHTMLPlayer.prototype.close=3Dfunction=
(){if(this.object){this.object.close();this.object=3Dnull;}=0A=
xmp.DHTMLPlayer.base.close.call(this);};xmp.DHTMLPlayer.prototype.play=3D=
function(){this.object.play();xmp.DHTMLPlayer.base.play.call(this);this.s=
etState(xmp.PLAY);};xmp.DHTMLPlayer.prototype.pause=3Dfunction(){this.obj=
ect.pause();xmp.DHTMLPlayer.base.pause.call(this);this.setState(xmp.PAUSE=
);};xmp.DHTMLPlayer.prototype.stop=3Dfunction(){this.object.stop();xmp.DH=
TMLPlayer.base.stop.call(this);this.setState(xmp.STOP);};xmp.DHTMLPlayer.=
prototype.rewind=3Dfunction(){this.object.rewind();xmp.DHTMLPlayer.base.r=
ewind.call(this);this.setState(xmp.REWIND);};xmp.DHTMLPlayer.prototype.fa=
stForward=3Dfunction(){this.object.fastForward();xmp.DHTMLPlayer.base.fas=
tForward.call(this);this.setState(xmp.FAST_FORWARD);};xmp.DHTMLPlayer.pro=
totype.seek=3Dfunction(ha){this.object.seek(ha);xmp.DHTMLPlayer.base.seek=
.call(this,ha);this.setState(xmp.SEEKABLE);};xmp.DHTMLPlayer.prototype.en=
ded=3Dfunction(){xmp.DHTMLPlayer.base.ended.call(this);this.object.ended(=
);};xmp.DHTMLPlayer.prototype.isAvailable=3Dfunction(ia){if(!this.object)=
{return false;}=0A=
return =
this.object.isAvailable(ia);};xmp.DHTMLPlayer.prototype.getPosition=3Dfun=
ction(){return =
this.object.getPosition();};xmp.DHTMLPlayer.prototype.getDuration=3Dfunct=
ion(){return =
this.object.getDuration();};xmp.DHTMLPlayer.prototype.moveTo=3Dfunction(j=
a,ka,la,ma){xmp.DHTMLPlayer.base.moveTo.call(this,ja,ka,la,ma);this.objec=
t.moveTo(ja,ka,la,ma);};xmp.DHTMLPlayer.prototype.create=3Dfunction(na){n=
a.id=3Dxmp.DHTML_PLAYER+na.group;xmp.DHTMLPlayer.base.create.call(this,na=
);if(na.viewport.getType()!=3D=3Dxmp.DHTML_VIEWPORT){throw new =
xmp.InvalidNativePlayerViewportError("Creating native player.","Invalid =
native player viewport \""+na.viewport.getType()+"\".  Supported =
viewports:  DHTML.",this);}=0A=
this.volume=3Dna.volume;this.mute=3Dna.mute;var =
oa=3Dna.viewport.getNative();oa.innerHTML=3D"<div id=3D'"+na.id+"' =
style=3D'background-color: #000000; z-index: =
"+xmp.NATIVE_PLAYER_Z_INDEX+"; width: "+oa.style.width+"; height: =
"+oa.style.height+"' =
/>";this.setCreated();};xmp.DHTMLPlayer.prototype.onDHTMLObjectLoad=3Dfun=
ction(pa,qa){try{if(true=3D=3D=3Dqa.isError()){return;}=0A=
this.object=3Dqa.getDataObject();this.validateObject();this.object.open(t=
his.getGroup(),this,this.getNative(),this.node);this.node=3Dnull;}=0A=
catch(e){this.setError("Loading DHTML object via Ajax =
request.",e);}};xmp.DHTMLPlayer.prototype.validateObject=3Dfunction(){if(=
!this.object){throw new xmp.DHTMLObjectError("Validating DHTML =
object.","NULL DHTML object.");}=0A=
var =
ra=3D[{name:xmp.OPEN_OPERATION,implementation:this.object.open,args:4},{n=
ame:xmp.CLOSE_OPERATION,implementation:this.object.close,args:0},{name:xm=
p.PLAY_OPERATION,implementation:this.object.play,args:0},{name:xmp.PAUSE_=
OPERATION,implementation:this.object.pause,args:0},{name:xmp.STOP_OPERATI=
ON,implementation:this.object.stop,args:0},{name:xmp.REWIND_OPERATION,imp=
lementation:this.object.rewind,args:0},{name:xmp.FAST_FORWARD_OPERATION,i=
mplementation:this.object.fastForward,args:0},{name:xmp.SEEK_OPERATION,im=
plementation:this.object.seek,args:1},{name:xmp.ENDED_OPERATION,implement=
ation:this.object.ended,args:0},{name:xmp.IS_AVAILABLE_OPERATION,implemen=
tation:this.object.isAvailable,args:1},{name:xmp.GET_POSITION_OPERATION,i=
mplementation:this.object.getPosition,args:0},{name:xmp.GET_DURATION_OPER=
ATION,implementation:this.object.getDuration,args:0},{name:xmp.MOVETO_OPE=
RATION,implementation:this.object.moveTo,args:4}];var =
sa=3Dra.length;for(var i=3D0;i<sa;i++){if(!ra[i].implementation){throw =
new xmp.DHTMLObjectError("Validating DHTML object.","Missing required =
DHTML object method \""+ra[i].name.toLowerCase()+"\" implementation.");}=0A=
if(ra[i].implementation.length!=3D=3Dra[i].args){throw new =
xmp.DHTMLObjectError("Validating DHTML object.","The required DHTML =
object method \""+ra[i].name.toLowerCase()+"\" requires =
\""+ra[i].args+"\" arguments.  \n\n"+ra[i].implementation.length+" =
arguments were =
found.");}}};xmp.DHTMLPlayer.prototype.onStateChange=3Dfunction(ta,ua){xm=
p.validateArguments(arguments,[xmp.STRING_TYPE,xmp.STRING_TYPE],"DHTMLPla=
yer.onStateChange");this.setState(ta,ua);};xmp.DHTMLPlayer.prototype.onEr=
ror=3Dfunction(va,e){xmp.validateArguments(arguments,[xmp.STRING_TYPE,xmp=
.OBJECT_TYPE],"DHTMLPlayer.onError");this.setError(va,e);};xmp.FLASH=3D"F=
lash";xmp.FLASH_MIME_TYPE=3D"video/x-flv";xmp.FLASH_PLUGIN_MIME_TYPE=3D"a=
pplication/x-shockwave-flash";xmp.FLASH_PLUGIN_NAME=3D"Shockwave =
Flash";xmp.FLASH_ACTIVEX_BASE_PROGID=3D"ShockwaveFlash.ShockwaveFlash.";x=
mp.FLASH_ACTIVEX_VERSION_INDEPENDENT_PROGID=3D"ShockwaveFlash.ShockwaveFl=
ash";xmp.FLASH_VERSION=3D8;xmp.FLASH_VERSION_VARIABLE=3D"$version";xmp.AL=
LOW_SCRIPT_ACCESS=3D"allowScriptAccess";xmp.ALLOW_FULLSCREEN_ACCESS=3D"al=
lowFullScreen";xmp.ALWAYS_ACCESS=3D"always";xmp.QUALITY=3D"quality";xmp.Q=
UALITY_HIGH=3D"high";xmp.WINDOW_MODE=3D"wmode";xmp.TRANSPARENT_WINDOW_MOD=
E=3D"transparent";xmp.FLASH_PLAYER_STATE_CHANGE_METHOD=3D"onStateChange";=
xmp.FLASH_PLAYER_ERROR_METHOD=3D"onError";xmp.FLASH_PLAYER_INITIALIZATION=
_METHOD=3D"onInit";xmp.FLASH_PLAYER_EXECUTE_COMMAND_METHOD=3D"onExecuteCo=
mmand";xmp.FLASH_PLAYER_TRIGGER_METHOD=3D"onTrigger";xmp.SCRIPT_ELEMENT_T=
AG=3D"script";xmp.FLASH_ERROR_CALLBACK=3D"errorCallback";xmp.FLASH_INITIA=
LIZATION_CALLBACK=3D"initializationCallback";xmp.FLASH_STATE_CHANGE_CALLB=
ACK=3D"stateChangeCallback";xmp.FLASH_STATE_EXECUTE_COMMAND_CALLBACK=3D"e=
xecuteCommandCallback";xmp.FLASH_TRIGGER_CALLBACK=3D"triggerCallback";xmp=
.EXECUTE_COMMAND_RESULT=3D"executeCommandResult";xmp.FLASH_NATIVE_PLAYER_=
COMPONENT=3D"native_player_component";xmp.FLASH_CONNECTION_ERROR=3D"Conne=
ctionError";xmp.FLASH_PLAYER_SWF_BASE_NAME=3D"FlashMediaPlayer";xmp.FLASH=
_BUFFER_TIME_CONFIG=3D"Buffer =
Time";xmp.FLASH_BUFFER_TIME=3D"bufferTime";xmp.FLASH_STREAMING_VIDEO_ADAP=
TER_CONFIG=3D"Streaming Video =
Adapter";xmp.FLASH_STREAMING_VIDEO_ADAPTER=3D"streamingVideoAdapter";xmp.=
FLASH_FULLSCREEN_ENABLED=3D"fullscreenEnabled";xmp.FlashPlayer=3Dfunction=
(wa,xa){xmp.FlashPlayer.ctor.call(this,xmp.FLASH,wa,xa);};xmp.DERIVE_CLAS=
S(xmp.AbstractNativePlayer,xmp.FlashPlayer);xmp.FlashPlayer.prototype.ope=
n=3Dfunction(ya){this.getNative().fmpOpen(xmp.FLASH_MIME_TYPE,ya.getURI()=
);};xmp.FlashPlayer.prototype.close=3Dfunction(){this.getNative().fmpClos=
e();xmp.FlashPlayer.base.close.call(this);};xmp.FlashPlayer.prototype.pla=
y=3Dfunction(){this.getNative().fmpPlay();xmp.FlashPlayer.base.play.call(=
this);this.setState(xmp.PLAY);};xmp.FlashPlayer.prototype.pause=3Dfunctio=
n(){this.getNative().fmpPause();xmp.FlashPlayer.base.pause.call(this);thi=
s.setState(xmp.PAUSE);};xmp.FlashPlayer.prototype.stop=3Dfunction(){this.=
getNative().fmpStop();xmp.FlashPlayer.base.stop.call(this);this.setState(=
xmp.STOP);};xmp.FlashPlayer.prototype.rewind=3Dfunction(){this.getNative(=
).fmpRewind();xmp.FlashPlayer.base.rewind.call(this);this.setState(xmp.RE=
WIND);};xmp.FlashPlayer.prototype.fastForward=3Dfunction(){this.getNative=
().fmpFastForward();xmp.FlashPlayer.base.fastForward.call(this);this.setS=
tate(xmp.FAST_FORWARD);};xmp.FlashPlayer.prototype.seek=3Dfunction(za){th=
is.getNative().fmpSeek(za);xmp.FlashPlayer.base.seek.call(this,za);this.s=
etState(xmp.SEEKABLE);};xmp.FlashPlayer.prototype.ended=3Dfunction(){this=
.getNative().fmpEnded();xmp.FlashPlayer.base.ended.call(this);};xmp.Flash=
Player.prototype.isAvailable=3Dfunction(Aa){return =
this.getNative().fmpIsAvailable(Aa);};xmp.FlashPlayer.prototype.getPositi=
on=3Dfunction(){return =
this.getNative().fmpGetPosition();};xmp.FlashPlayer.prototype.getDuration=
=3Dfunction(){return =
this.getNative().fmpGetDuration();};xmp.FlashPlayer.prototype.getVolume=3D=
function(){return =
this.getNative().fmpGetVolume();};xmp.FlashPlayer.prototype.setVolume=3Df=
unction(Ba){this.getNative().fmpSetVolume(Ba);};xmp.FlashPlayer.prototype=
.getMute=3Dfunction(){return =
this.getNative().fmpGetMute();};xmp.FlashPlayer.prototype.setMute=3Dfunct=
ion(Ca){this.getNative().fmpSetMute(Ca);};xmp.FlashPlayer.prototype.setFu=
llscreen=3Dfunction(Da){var Ea=3D"The \"setFullscreen\" method is not =
supported.  Fullscreen is only suppported by a double-click on the =
player.";if(false=3D=3D=3Dthis.isFullscreenEnabled()){Ea=3D"The =
\"setFullscreen\" method is not supported.  Fullscreen disabled.";}=0A=
throw new xmp.NativePlayerUnsupportedError("Invoking \"setFullscreen\" =
method.",Ea,this);};xmp.FlashPlayer.prototype.onValidatePlugIn=3Dfunction=
(Fa){this.validatePlugInVersion(xmp.FLASH,this.validatePlugInExists());};=
xmp.FlashPlayer.prototype.validatePlugInExists=3Dfunction(){var =
Ga=3Dthis.getPlugInInfo(xmp.FLASH);if(xmp.isIEBrowser()){try{return =
this.getActiveXVersion(new =
ActiveXObject(xmp.FLASH_ACTIVEX_VERSION_INDEPENDENT_PROGID));}=0A=
catch(e){var =
Ha=3DparseInt(this.parseVersion(Ga.minVersion).major,10);var =
Ia=3DHa;if(Ga.maxVersion&&Ga.maxVersion.length>0){Ia=3DparseInt(this.pars=
eVersion(Ga.maxVersion).major,10);}=0A=
for(var i=3DIa;(i>=3D3&&i>=3DHa);i--){try{return =
this.getActiveXVersion(new =
ActiveXObject(xmp.FLASH_ACTIVEX_BASE_PROGID+i));}=0A=
catch(tempE){}}}=0A=
throw new xmp.PlugInNotFoundError("Validating native player =
plugin.",Ga);}=0A=
else{var =
Ja=3Dnavigator.mimeTypes[xmp.FLASH_PLUGIN_MIME_TYPE];if(!Ja){throw new =
xmp.PlugInNotFoundError("Validating native player plugin.",Ga);}=0A=
if(!Ja.enabledPlugin){throw new xmp.PlugInDisabledError("Validating =
native player plugin.",Ga,xmp.FLASH_PLUGIN_MIME_TYPE);}=0A=
var =
Ka=3DJa.enabledPlugin.name;if(Ka.indexOf(xmp.FLASH_PLUGIN_NAME)=3D=3D=3D-=
1){throw new xmp.PlugInDisabledError("Validating native player =
plugin.",Ga,xmp.FLASH_PLUGIN_MIME_TYPE);}=0A=
var La=3DJa.enabledPlugin.description;var =
Ma=3DLa.substr(La.indexOf(xmp.VERSION_DELIMITER)-1);var =
Na=3DMa.substr(0,Ma.indexOf(" "));var Oa=3DMa.indexOf(" =
r");if(-1!=3D=3DOa){var =
Pa=3DMa.substr(Oa+2);Na+=3Dxmp.VERSION_DELIMITER+Pa;return Na;}}=0A=
return"";};xmp.FlashPlayer.prototype.create=3Dfunction(Qa){if(true=3D=3D=3D=
this.attach(Qa)){return;}=0A=
Qa.id=3Dxmp.FLASH+Qa.group;xmp.FlashPlayer.base.create.call(this,Qa);var =
Ra=3DQa.viewport.getNative();var Sa=3Dnew =
SWFObject(xmp.makeSWFPath(xmp.FLASH_PLAYER_SWF_BASE_NAME,true),Qa.id,Ra.s=
tyle.width,Ra.style.height,xmp.FLASH_VERSION,xmp.BLACK_BACKGROUND_COLOR);=
Sa.addParam(xmp.ALLOW_SCRIPT_ACCESS,xmp.ALWAYS_ACCESS);Sa.addParam(xmp.QU=
ALITY,xmp.QUALITY_HIGH);Sa.addParam(xmp.WINDOW_MODE,xmp.TRANSPARENT_WINDO=
W_MODE);Sa.addParam(xmp.ALLOW_FULLSCREEN_ACCESS,xmp.TRUE);Sa.addVariable(=
xmp.FLASH_BUFFER_TIME,this.getConfigProperty(xmp.FLASH_BUFFER_TIME_CONFIG=
));Sa.addVariable(xmp.FLASH_STREAMING_VIDEO_ADAPTER,this.getConfigPropert=
y(xmp.FLASH_STREAMING_VIDEO_ADAPTER_CONFIG));Sa.addVariable(xmp.FLASH_FUL=
LSCREEN_ENABLED,((true=3D=3D=3Dthis.isFullscreenEnabled())?xmp.TRUE:xmp.F=
ALSE));Sa.addVariable(xmp.FLASH_INITIALIZATION_CALLBACK,this.getCallbackM=
ethod(xmp.FLASH_PLAYER_INITIALIZATION_METHOD));Sa.addVariable(xmp.FLASH_S=
TATE_CHANGE_CALLBACK,this.getCallbackMethod(xmp.FLASH_PLAYER_STATE_CHANGE=
_METHOD));Sa.addVariable(xmp.FLASH_TRIGGER_CALLBACK,this.getCallbackMetho=
d(xmp.FLASH_PLAYER_TRIGGER_METHOD));Sa.addVariable(xmp.FLASH_STATE_EXECUT=
E_COMMAND_CALLBACK,this.getCallbackMethod(xmp.FLASH_PLAYER_EXECUTE_COMMAN=
D_METHOD));Sa.addVariable(xmp.FLASH_ERROR_CALLBACK,this.getCallbackMethod=
(xmp.FLASH_PLAYER_ERROR_METHOD));Sa.addVariable(xmp.VOLUME,Qa.volume);Sa.=
addVariable(xmp.MUTE,((true=3D=3D=3DQa.mute)?xmp.TRUE:xmp.FALSE));Sa.writ=
e(Ra.id);};xmp.FlashPlayer.prototype.attach=3Dfunction(Ta){Ta.id=3DTa.vie=
wport.getName();xmp.FlashPlayer.base.attach.call(this,Ta);if(Ta.viewport.=
getType()!=3D=3Dxmp.DHTML_VIEWPORT&&Ta.viewport.getType()!=3D=3Dxmp.FLASH=
_VIEWPORT){throw new xmp.InvalidNativePlayerViewportError("Creating =
native player.","Invalid native player viewport =
\""+Ta.viewport.getType()+"\".  Supported viewports:  DHTML, =
Flash",this);}=0A=
if(Ta.viewport.getType()!=3D=3Dxmp.FLASH_VIEWPORT){return false;}=0A=
var =
Ua=3D[{name:xmp.FLASH_BUFFER_TIME,value:this.getConfigProperty(xmp.FLASH_=
BUFFER_TIME_CONFIG)},{name:xmp.FLASH_STREAMING_VIDEO_ADAPTER,value:this.g=
etConfigProperty(xmp.FLASH_STREAMING_VIDEO_ADAPTER_CONFIG)},{name:xmp.FLA=
SH_INITIALIZATION_CALLBACK,value:this.getCallbackMethod(xmp.FLASH_PLAYER_=
INITIALIZATION_METHOD)},{name:xmp.FLASH_STATE_CHANGE_CALLBACK,value:this.=
getCallbackMethod(xmp.FLASH_PLAYER_STATE_CHANGE_METHOD)},{name:xmp.FLASH_=
TRIGGER_CALLBACK,value:this.getCallbackMethod(xmp.FLASH_PLAYER_TRIGGER_ME=
THOD)},{name:xmp.FLASH_STATE_EXECUTE_COMMAND_CALLBACK,value:this.getCallb=
ackMethod(xmp.FLASH_PLAYER_EXECUTE_COMMAND_METHOD)},{name:xmp.FLASH_ERROR=
_CALLBACK,value:this.getCallbackMethod(xmp.FLASH_PLAYER_ERROR_METHOD)},{n=
ame:xmp.VOLUME,value:Ta.volume},{name:xmp.MUTE,value:((true=3D=3D=3DTa.mu=
te)?xmp.TRUE:xmp.FALSE)}];var Va=3DUa.length;for(var i=3D0;i<Va;i++){var =
Wa=3DUa[i];this.getNative().SetVariable(Wa.name,Wa.value);}=0A=
this.setCreated();return =
true;};xmp.FlashPlayer.prototype.translateState=3Dfunction(Xa){return =
Xa;};xmp.FlashPlayer.prototype.getActiveXVersion=3Dfunction(Ya){var =
Za=3DYa.GetVariable(xmp.FLASH_VERSION_VARIABLE);var $a=3DZa.indexOf(" =
");if(-1!=3D=3D$a){Za=3DZa.substr(Za.indexOf(" ")+1);return =
Za.replace(/,/g,xmp.VERSION_DELIMITER);}=0A=
return"";};xmp.FlashPlayer.prototype.onInit=3Dfunction(){try{this.getNati=
ve().style.zIndex=3Dxmp.NATIVE_PLAYER_Z_INDEX;this.setCreated();}=0A=
catch(e){this.setError("Initializing.",e);}};xmp.FlashPlayer.prototype.on=
StateChange=3Dfunction(ab,bb){try{var =
cb=3Dthis.translateState(ab);if(cb.length>0){this.setState(cb,bb);}}=0A=
catch(e){this.setError("Handling state =
change.",e);}};xmp.FlashPlayer.prototype.onTrigger=3Dfunction(db,eb){try{=
this.setTrigger(db,eb);}=0A=
catch(e){this.setError("Handling =
trigger.",e);}};xmp.FlashPlayer.prototype.onExecuteCommand=3Dfunction(fb,=
gb){var =
hb=3Dnull;try{hb=3Dxmp.FlashPlayer.base.executeCommand.call(this,fb,gb);}=0A=
catch(e){this.setError("Execute command.",e);}=0A=
return =
hb;};xmp.FlashPlayer.prototype.onError=3Dfunction(ib,jb,kb){try{var =
lb=3D[{label:"Flash Error Type",text:ib}];if(kb){lb.push({label:"Flash =
Error Code",text:kb});}=0A=
var mb=3D((ib=3D=3D=3Dxmp.FLASH_CONNECTION_ERROR)?new =
xmp.NativePlayerConnectionError("Connecting to media.",jb,this,lb):new =
xmp.NativePlayerError("Handling =
error.",jb,this,lb));this.setError(null,mb);}=0A=
catch(e){this.setError("Handling =
error.",e);}};xmp.IMAGE_PLAYER=3D"Image";xmp.IMAGE_MIME_TYPE=3D"applicati=
on/x-image";xmp.IMAGE_TAG=3D"IMG";xmp.IMAGE_STATE_CHANGE_METHOD=3D"onStat=
eChange";xmp.IMAGE_ERROR_METHOD=3D"onError";xmp.IMAGE_INITIALIZATION_METH=
OD=3D"onInit";xmp.ImagePlayer=3Dfunction(nb,ob){xmp.ImagePlayer.ctor.call=
(this,xmp.IMAGE_PLAYER,nb,ob);};xmp.DERIVE_CLASS(xmp.AbstractNativePlayer=
,xmp.ImagePlayer);xmp.ImagePlayer.prototype.open=3Dfunction(pb){this.url=3D=
pb.getURI();this.timeLimit=3Dpb.getTimeLimitInSeconds();this.position=3D0=
;if(true=3D=3D=3Dthis.isDHTML()){this.setState(xmp.CONNECTING);this.getNa=
tive().src=3Dthis.url;}=0A=
else{this.getNative().fmpOpen(xmp.IMAGE_MIME_TYPE,this.url);}};xmp.ImageP=
layer.prototype.close=3Dfunction(){if(false=3D=3D=3Dthis.isDHTML()){this.=
getNative().fmpClose();}=0A=
xmp.ImagePlayer.base.close.call(this);};xmp.ImagePlayer.prototype.play=3D=
function(){if(-1!=3D=3Dthis.timeLimit){this.startMonitor();}=0A=
this.setState(xmp.PLAY);};xmp.ImagePlayer.prototype.stop=3Dfunction(){thi=
s.setState(xmp.STOP);};xmp.ImagePlayer.prototype.ended=3Dfunction(){if(fa=
lse=3D=3D=3Dthis.isDHTML()){this.getNative().fmpEnded();}=0A=
xmp.ImagePlayer.base.ended.call(this);this.close();};xmp.ImagePlayer.prot=
otype.isAvailable=3Dfunction(qb){return(qb=3D=3D=3Dxmp.ENDED);};xmp.Image=
Player.prototype.getPosition=3Dfunction(){return =
this.position;};xmp.ImagePlayer.prototype.getDuration=3Dfunction(){return=
((-1=3D=3D=3Dthis.timeLimit)?0:this.timeLimit);};xmp.ImagePlayer.prototyp=
e.create=3Dfunction(rb){if(true=3D=3D=3Dthis.attach(rb)){return;}=0A=
rb.id=3Dxmp.IMAGE_PLAYER+rb.group;xmp.ImagePlayer.base.create.call(this,r=
b);this.volume=3Drb.volume;this.mute=3Drb.mute;var =
sb=3Drb.viewport.getNative();sb.innerHTML=3D"<img =
style=3D'background-color:  #000000' id=3D'"+rb.id+"' =
width=3D'"+(sb.style.width)+"' height=3D'"+(sb.style.height)+"' =
src=3D'"+rb.node.getURI()+"' style=3D'background-color:  #000000; =
z-index: "+xmp.NATIVE_PLAYER_Z_INDEX+"' =
onError=3D'"+this.createCallbackMethod(xmp.IMAGE_ERROR_METHOD)+"()' =
onLoad=3D'"+this.createCallbackMethod(xmp.IMAGE_STATE_CHANGE_METHOD)+"(xm=
p.OPEN, null)' =
/>";this.setCreated();};xmp.ImagePlayer.prototype.onMonitorTimelineChange=
=3Dfunction(tb,ub){this.position++;};xmp.ImagePlayer.prototype.attach=3Df=
unction(vb){vb.id=3Dvb.viewport.getName();this.volume=3Dvb.volume;this.mu=
te=3Dvb.mute;xmp.ImagePlayer.base.attach.call(this,vb);if(vb.viewport.get=
Type()!=3D=3Dxmp.DHTML_VIEWPORT&&vb.viewport.getType()!=3D=3Dxmp.FLASH_VI=
EWPORT){throw new xmp.InvalidNativePlayerViewportError("Creating native =
player.","Invalid native player viewport \""+vb.viewport.getType()+"\".  =
Supported viewports:  DHTML,  Flash",this);}=0A=
if(vb.viewport.getType()!=3D=3Dxmp.FLASH_VIEWPORT){return false;}=0A=
this.getNative().SetVariable(xmp.FLASH_INITIALIZATION_CALLBACK,this.getCa=
llbackMethod(xmp.IMAGE_INITIALIZATION_METHOD));this.getNative().SetVariab=
le(xmp.FLASH_STATE_CHANGE_CALLBACK,this.getCallbackMethod(xmp.IMAGE_STATE=
_CHANGE_METHOD));this.getNative().SetVariable(xmp.FLASH_ERROR_CALLBACK,th=
is.getCallbackMethod(xmp.IMAGE_ERROR_METHOD));this.getNative().SetVariabl=
e(xmp.CONTEXT,vb.group);this.setCreated();return =
true;};xmp.ImagePlayer.prototype.isDHTML=3Dfunction(){return(this.getNati=
ve().tagName.toUpperCase()=3D=3D=3Dxmp.IMAGE_TAG);};xmp.ImagePlayer.proto=
type.createCallbackMethod=3Dfunction(wb){return =
this.getCallbackMethod(wb).replace(/\'/g,"\"");};xmp.ImagePlayer.prototyp=
e.translateState=3Dfunction(xb){return =
xb;};xmp.ImagePlayer.prototype.onInit=3Dfunction(){try{this.setCreated();=
}=0A=
catch(e){this.setError("Initializing.",e);}};xmp.ImagePlayer.prototype.on=
StateChange=3Dfunction(yb,zb){try{var =
Ab=3Dthis.translateState(yb);if(Ab.length>0){this.setState(Ab,zb);}}=0A=
catch(e){this.setError("Handling state =
change.",e);}};xmp.ImagePlayer.prototype.onError=3Dfunction(Bb,Cb,Db){try=
{var Eb=3Dnull;if(true=3D=3D=3Dthis.isDHTML()){Eb=3Dnew =
xmp.NativePlayerConnectionError("Connecting to media.","Unable to =
connect to \""+this.getNative().src+"\"",this);}=0A=
else{var Fb=3D[{label:"Flash Error =
Type",text:Bb}];if(Db){Fb.push({label:"Flash Error Code",text:Db});}=0A=
Eb=3D((Bb=3D=3D=3Dxmp.FLASH_CONNECTION_ERROR)?new =
xmp.NativePlayerConnectionError("Connecting to media.",Cb,this,Fb):new =
xmp.NativePlayerError("Handling error.",Cb,this,Fb));}=0A=
this.setError(null,Eb);}=0A=
catch(e){this.setError("Handling =
error.",e);}};xmp.MOCK_NATIVE=3D"MOCK_NATIVE";xmp.MOCK_MIME_TYPE=3D"appli=
cation/xmp-mock";xmp.MockNativePlayer=3Dfunction(Gb,Hb){xmp.MockNativePla=
yer.ctor.call(this,xmp.MOCK_NATIVE,Gb,Hb);this.position=3D0;this.duration=
=3D0;this.realTimePosition=3D0;this.realTimeDuration=3D0;this.playInstanc=
e=3D-1;this.monitorTimes=3D4.0;this.logger=3Dnew =
xmp.util.internals.CategoryLogger('MockNativePlayer');};xmp.DERIVE_CLASS(=
xmp.AbstractNativePlayer,xmp.MockNativePlayer);xmp.MockNativePlayer.proto=
type.open=3Dfunction(Ib){this.node=3DIb;this.logger.info("open(): =
"+this.node.getURI());this.position=3D0;this.duration=3Dthis._getDuration=
();this.realTimePosition=3D0;this.realTimeDuration=3Dxmp.util.internals.M=
ockTestMode.getInstance().getRealPlayTimePerNode();this.monitorInterval=3D=
this.realTimeDuration/this.monitorTimes;this.positionChangeInterval=3Dthi=
s.duration/(this.monitorTimes*2);this.realTimePositionChangeInterval=3Dth=
is.realTimeDuration/(this.monitorTimes*2);this.logger.info("Duration: =
"+this.duration+" second(s)");this.logger.debug("Real time duration: =
"+this.realTimeDuration+" =
milliseconds");this.setState(xmp.OPEN);};xmp.MockNativePlayer.prototype.c=
lose=3Dfunction(){if(this.node){this.logger.info("close(): =
"+this.node.getURI());}=0A=
this.node=3Dnull;xmp.MockNativePlayer.base.close.call(this);};xmp.MockNat=
ivePlayer.prototype.fini=3Dfunction(){this.close();};xmp.MockNativePlayer=
.prototype.onSetState=3Dfunction(Jb,Kb){xmp.MockNativePlayer.base.onSetSt=
ate.call(this,Jb,Kb);var =
Lb=3DJb.getMetadata(xmp.CONTEXT,{});if(Lb.type=3D=3D=3Dxmp.PLAY){this.sim=
ulatePlay();}};xmp.MockNativePlayer.prototype.play=3Dfunction(){this.setS=
tate(xmp.PLAY);};xmp.MockNativePlayer.prototype.simulatePlay=3Dfunction()=
{var Mb=3Dthis.node;this.logger.info("play(): =
"+Mb.getURI());this.logger.info("Node type: =
"+Mb.getNodeTypeName());this.playInstance++;var =
Nb=3Dthis.createTimer({object:this,id:"position =
change",interval:this.realTimePositionChangeInterval,handler:this.onSimul=
atedPositionChange,context:this.playInstance});Nb.start();this.startMonit=
or();};xmp.MockNativePlayer.prototype.onSimulatedPositionChange=3Dfunctio=
n(Ob,Pb){var Qb=3Dthis.node;var =
Rb=3DOb.getMetadata(xmp.CONTEXT,-1);if(!Qb||Rb!=3D=3Dthis.playInstance){P=
b.stop();}=0A=
else =
if(this.position>=3Dthis.duration){Pb.stop();this.stopMonitor();this.setS=
tate(xmp.ENDED);}=0A=
else{this.position+=3Dthis.positionChangeInterval;}};xmp.MockNativePlayer=
.prototype._getDuration=3Dfunction(){var Sb=3D-1;var =
Tb=3Dthis.node;if(Tb.isContentType()||Tb.isAdType()){var =
Ub=3DTb.getPlayableData();Sb=3DUb.getTotalRunTime();}=0A=
if(Sb<=3D0){Sb=3D3;}=0A=
return =
Sb;};xmp.MockNativePlayer.prototype.pause=3Dfunction(){if(this.node!=3D=3D=
null){this.logger.info("pause(): "+this.node.getURI());}=0A=
xmp.MockNativePlayer.base.pause.call(this);this.setState(xmp.PAUSE);};xmp=
.MockNativePlayer.prototype.stop=3Dfunction(){if(this.node!=3D=3Dnull){th=
is.logger.info("stop(): "+this.node.getURI());}=0A=
xmp.MockNativePlayer.base.stop.call(this);this.setState(xmp.STOP);};xmp.M=
ockNativePlayer.prototype.rewind=3Dfunction(){if(this.node!=3D=3Dnull){th=
is.logger.info("rewind(): "+this.node.getURI());}=0A=
xmp.MockNativePlayer.base.rewind.call(this);this.setState(xmp.REWIND);};x=
mp.MockNativePlayer.prototype.fastForward=3Dfunction(){if(this.node!=3D=3D=
null){this.logger.info("fastForward(): "+this.node.getURI());}=0A=
xmp.MockNativePlayer.base.fastForward.call(this);this.setState(xmp.FAST_F=
ORWARD);};xmp.MockNativePlayer.prototype.seek=3Dfunction(Vb){if(this.node=
!=3D=3Dnull){this.logger.info("seek(): "+this.node.getURI()+" to "+Vb);}=0A=
xmp.MockNativePlayer.base.seek.call(this);this.setPosition(Vb);this.setSt=
ate(xmp.SEEKABLE);};xmp.MockNativePlayer.prototype.ended=3Dfunction(){if(=
this.node!=3D=3Dnull){this.logger.info("ended(): "+this.node.getURI());}=0A=
xmp.MockNativePlayer.base.ended.call(this);};xmp.MockNativePlayer.prototy=
pe.isAvailable=3Dfunction(Wb){return =
true;};xmp.MockNativePlayer.prototype.getPosition=3Dfunction(){return =
this.position;};xmp.MockNativePlayer.prototype.getDuration=3Dfunction(){r=
eturn =
this.duration;};xmp.MockNativePlayer.prototype.validate=3Dfunction(Xb){};=
xmp.MockNativePlayer.prototype.onValidatePlugIn=3Dfunction(Yb){};xmp.Mock=
NativePlayer.prototype.setCreated=3Dfunction(){this.createTimer({object:t=
his,id:"setCreated",interval:xmp.DEFAULT_TIMER_INTERVAL,handler:this.onSe=
tCreated,context:null}).start();};xmp.MockNativePlayer.prototype.executeC=
ommand=3Dfunction(Zb,$b){return =
this.listener.onNativePlayerExecuteCommand(Zb,$b);};xmp.MockNativePlayer.=
prototype.create=3Dfunction(ac){this.data=3Dac;};xmp.MockNativePlayer.pro=
totype.attach=3Dfunction(bc){this.data=3Dbc;};xmp.MockNativePlayer.protot=
ype.getNative=3Dfunction(){return =
null;};xmp.MockNativePlayer.prototype.getMonitorInterval=3Dfunction(){ret=
urn =
this.monitorInterval;};xmp.QUICKTIME=3D"QuickTime";xmp.QUICKTIME_MIME_TYP=
E=3D"video/quicktime";xmp.FLIP4MAC=3D"Flip4Mac";xmp.QUICKTIME_VERSION_CHE=
CK_PROGID=3D"QuickTimeCheckObject.QuickTimeCheck.1";xmp.QuickTimePlayer=3D=
function(cc,dc){this.state=3Dnew =
xmp.QuicktimeStateMachine(this);xmp.QuickTimePlayer.ctor.call(this,xmp.QU=
ICKTIME,cc,dc);};xmp.DERIVE_CLASS(xmp.AbstractNativePlayer,xmp.QuickTimeP=
layer);xmp.QuickTimePlayer.prototype.open=3Dfunction(ec){this.state.open(=
ec);};xmp.QuickTimePlayer.prototype.close=3Dfunction(){xmp.QuickTimePlaye=
r.base.close.call(this);this.state.close();};xmp.QuickTimePlayer.prototyp=
e.play=3Dfunction(){xmp.QuickTimePlayer.base.play.call(this);this.state.p=
lay();};xmp.QuickTimePlayer.prototype.pause=3Dfunction(){xmp.QuickTimePla=
yer.base.pause.call(this);this.state.pause();};xmp.QuickTimePlayer.protot=
ype.stop=3Dfunction(){xmp.QuickTimePlayer.base.stop.call(this);this.state=
.stop();};xmp.QuickTimePlayer.prototype.rewind=3Dfunction(){xmp.QuickTime=
Player.base.rewind.call(this);this.state.rewind();};xmp.QuickTimePlayer.p=
rototype.fastForward=3Dfunction(){xmp.QuickTimePlayer.base.fastForward.ca=
ll(this);this.state.fastForward();};xmp.QuickTimePlayer.prototype.seek=3D=
function(fc){xmp.QuickTimePlayer.base.seek.call(this,fc);this.state.seek(=
fc);};xmp.QuickTimePlayer.prototype.ended=3Dfunction(){xmp.QuickTimePlaye=
r.base.ended.call(this);this.state.ended();};xmp.QuickTimePlayer.prototyp=
e.isAvailable=3Dfunction(gc){return =
this.state.isAvailable(gc);};xmp.QuickTimePlayer.prototype.onValidatePlug=
In=3Dfunction(hc){this.validateQuicktime();if(hc.indexOf(xmp.WINDOWS_MEDI=
A_MIME_TYPE)!=3D=3D-1){this.validateFlip4Mac();}};xmp.QuickTimePlayer.pro=
totype.getPosition=3Dfunction(){return =
this.state.getPosition();};xmp.QuickTimePlayer.prototype.getDuration=3Dfu=
nction(){return =
this.state.getDuration();};xmp.QuickTimePlayer.prototype.getVolume=3Dfunc=
tion(){return =
this.state.getVolume();};xmp.QuickTimePlayer.prototype.setVolume=3Dfuncti=
on(ic){this.state.setVolume(ic);};xmp.QuickTimePlayer.prototype.getMute=3D=
function(){return =
this.state.getMute();};xmp.QuickTimePlayer.prototype.setMute=3Dfunction(j=
c){this.state.setMute(jc);};xmp.QuickTimePlayer.prototype.create=3Dfuncti=
on(kc){kc.id=3Dxmp.QUICKTIME+kc.group;xmp.QuickTimePlayer.base.create.cal=
l(this,kc);if(kc.viewport.getType()!=3D=3Dxmp.DHTML_VIEWPORT){throw new =
xmp.InvalidNativePlayerViewportError("Creating native player.","Invalid =
native player viewport \""+kc.viewport.getType()+"\".  Supported =
viewports:  DHTML",this);}=0A=
var =
lc=3Dkc.viewport.getNative();if(true=3D=3D=3Dxmp.isIEBrowser()){lc.innerH=
TML=3D"<object id=3D'"+kc.id+"' width=3D'"+lc.style.width+"' =
height=3D'"+lc.style.height+"' =
classid=3D'clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B'"+" =
style=3D'background-color:  #000000; z-index: =
"+xmp.NATIVE_PLAYER_Z_INDEX+"' >"+"<param name=3D'src' =
value=3D'"+kc.node.getURI()+"' />"+"<param name=3D'showlogo' =
value=3D'false' />"+"<param name=3D'bgcolor' value=3D'#000000' =
/>"+"<param name=3D'autoplay' value=3D'true' />"+"<param =
name=3D'controller' value=3D'false' />"+"<param =
name=3D'enablejavascript' value=3D'true' />"+"<param =
name=3D'saveembedtags' value=3D'true' />"+"<param name=3D'scale' =
value=3D'"+((true=3D=3D=3Dkc.stretchToFit)?"TOFIT":"ASPECT")+"' =
/>"+"<param name=3D'loop' value=3D'false' />"+"<param name=3D'kioskmode' =
value=3D'true' /></object>";}=0A=
else{lc.innerHTML=3D"<embed type=3D'video/quicktime' name=3D'"+kc.id+"' =
width=3D'"+lc.style.width+"' height=3D'"+lc.style.height+"' =
src=3D'"+kc.node.getURI()+"' showlogo=3D'false'"+" =
style=3D'background-color:  #000000; z-index: =
"+xmp.NATIVE_PLAYER_Z_INDEX+"' bgcolor=3D'#000000' autoplay=3D'true'"+" =
controller=3D'false' enablejavascript=3D'true' saveembedtags=3D'true'"+" =
scale=3D'"+((true=3D=3D=3Dkc.stretchToFit)?"TOFIT":"ASPECT")+"' =
loop=3D'false' kioskmode=3D'true'></embed>";}=0A=
this.state.create(kc);this.setCreated();};xmp.QuickTimePlayer.prototype.v=
alidateQuicktime=3Dfunction(){var =
mc=3Dthis.getPlugInInfo(xmp.QUICKTIME);if(true=3D=3D=3Dxmp.isIEBrowser())=
{var nc=3D"0.0.0.0";try{var oc=3Dnew =
ActiveXObject(xmp.QUICKTIME_VERSION_CHECK_PROGID);var =
pc=3Doc.QuickTimeVersion.toString(16);nc=3Dpc.substr(0,1)+"."+pc.substr(1=
,1)+"."+pc.substr(2,1)+"."+pc.substr(3);}=0A=
catch(e){throw new xmp.PlugInNotFoundError("Validating native player =
plugin.",mc);}=0A=
this.validatePlugInVersion(xmp.QUICKTIME,nc);}=0A=
else{var qc=3Dnavigator.mimeTypes[xmp.QUICKTIME_MIME_TYPE];if(!qc){throw =
new xmp.PlugInNotFoundError("Validating native player plugin.",mc);}=0A=
if(!qc.enabledPlugin){throw new xmp.PlugInDisabledError("Validating =
native player plugin.",mc,xmp.QUICKTIME_MIME_TYPE);}=0A=
var =
rc=3Dqc.enabledPlugin.name;if(rc.indexOf(xmp.QUICKTIME)=3D=3D=3D-1){throw=
 new xmp.PlugInDisabledError("Validating native player =
plugin.",mc,xmp.QUICKTIME_MIME_TYPE);}=0A=
this.validatePlugInVersion(xmp.QUICKTIME,rc.substr(rc.lastIndexOf(" =
")+1));}};xmp.QuickTimePlayer.prototype.validateFlip4Mac=3Dfunction(){var=
 sc;var tc=3Dthis.getPlugInInfo(xmp.FLIP4MAC);var =
uc=3Dnavigator.plugins.length;for(var i=3D0;i<uc;i++){var =
vc=3Dnavigator.plugins[i];sc=3Dvc.name;var =
wc=3Dsc.length;if(sc.indexOf(xmp.FLIP4MAC)!=3D=3D-1){var =
xc=3Dsc.lastIndexOf(" =
");if(xc=3D=3D=3D(sc.length-1)){wc--;xc=3Dsc.lastIndexOf(" ",xc-1);}=0A=
wc=3Dwc-(xc+1);this.validatePlugInVersion(xmp.FLIP4MAC,sc.substr(xc+1,wc)=
);return;}}=0A=
throw new xmp.PlugInNotFoundError("Validating native player =
plugin.",tc);};xmp.QUICKTIME_WAITING=3D"Waiting";xmp.QUICKTIME_LOADING=3D=
"Loading";xmp.QUICKTIME_PLAYABLE=3D"Playable";xmp.QUICKTIME_COMPLETE=3D"C=
omplete";xmp.QUICKTIME_ERROR=3D"Error";xmp.QUICKTIME_NORMAL_RATE=3D1;xmp.=
QUICKTIME_PAUSE_RATE=3D0;xmp.QUICKTIME_REWIND_RATE=3D-5;xmp.QUICKTIME_FAS=
T_FORWARD_RATE=3D5;xmp.QUICKTIME_VOLUME_MAX=3D256;xmp.QUICKTIME_INITIAL_L=
IVE_DURATION=3D180000;xmp.QUICKTIME_LOAD_BUFFERING=3D"LoadBuffering";xmp.=
QUICKTIME_WAIT_BUFFERING=3D"WaitBuffering";xmp.QUICKTIME_BUFFERING_COMPLE=
TE=3D"BufferingComplete";xmp.QUICKTIME_STATE_CHANGE_POLLING_INTERVAL_CONF=
IG=3D"State Change Polling =
Interval";xmp.QUICKTIME_CONNECTION_TIMEOUT_INTERVAL_CONFIG=3D"Connection =
Timeout =
Interval";xmp.QUICKTIME_ERROR_CODE_DELIMITER=3D",";xmp.QuicktimeStateMach=
ine=3Dfunction(yc){this.player=3Dyc;this.initTransitionTable();this.initS=
tateChangeHandlers();this.initOperations();this.initErrorCodes();this.liv=
e=3Dtrue;this.stateChangeMonitorTimer=3Dnull;this.connectionTimeoutTimer=3D=
null;this.bufferingComplete=3Dfalse;};xmp.QuicktimeStateMachine.prototype=
.open=3Dfunction(zc){if(false=3D=3D=3Dthis.checkForStaticUrl()){this.init=
State();this.url=3Dzc.getURI();this.player.getNative().SetURL(this.url);}=
};xmp.QuicktimeStateMachine.prototype.close=3Dfunction(){try{this.setStat=
e(xmp.FINI,false);this.opened=3Dfalse;this.stopStateChangeMonitor();this.=
stopConnectionTimeoutMonitor();this.player.getNative().SetMute(true);this=
.player.getNative().Stop();}=0A=
catch(e){}};xmp.QuicktimeStateMachine.prototype.play=3Dfunction(){this.pl=
ayer.getNative().Play();this.setState(xmp.PLAY,true);};xmp.QuicktimeState=
Machine.prototype.pause=3Dfunction(){this.player.getNative().SetRate(xmp.=
QUICKTIME_PAUSE_RATE);this.setState(xmp.PAUSE,true);};xmp.QuicktimeStateM=
achine.prototype.stop=3Dfunction(){this.player.getNative().Stop();this.pl=
ayer.getNative().Rewind();this.setState(xmp.STOP,true);};xmp.QuicktimeSta=
teMachine.prototype.rewind=3Dfunction(){this.player.getNative().SetRate(x=
mp.QUICKTIME_REWIND_RATE);this.setState(xmp.REWIND,true);};xmp.QuicktimeS=
tateMachine.prototype.fastForward=3Dfunction(){this.player.getNative().Se=
tRate(xmp.QUICKTIME_FAST_FORWARD_RATE);this.setState(xmp.FAST_FORWARD,tru=
e);};xmp.QuicktimeStateMachine.prototype.seek=3Dfunction(Ac){this.player.=
getNative().SetRate(xmp.QUICKTIME_NORMAL_RATE);this.player.getNative().Se=
tTime(Ac*this.player.getNative().GetTimeScale());this.setState(xmp.SEEKAB=
LE,true);};xmp.QuicktimeStateMachine.prototype.ended=3Dfunction(){this.se=
tState(xmp.ENDED,false);};xmp.QuicktimeStateMachine.prototype.isAvailable=
=3Dfunction(Bc){var Cc=3Dthis.operations[this.state];for(var =
Dc=3Dxmp.MapIterator.create(Cc);Dc.hasNext();Dc.next()){var =
Ec=3DDc.currentValue();if(Ec.state=3D=3D=3DBc){if(false=3D=3D=3Dthis.live=
){return true;}=0A=
else{return(true=3D=3D=3DEc.live);}}}=0A=
return =
false;};xmp.QuicktimeStateMachine.prototype.getPosition=3Dfunction(){try{=
return =
Math.floor(this.player.getNative().GetTime()/this.player.getNative().GetT=
imeScale());}=0A=
catch(e){}=0A=
return =
0;};xmp.QuicktimeStateMachine.prototype.getDuration=3Dfunction(){try{var =
Fc=3Dthis.live;var =
Gc=3Dthis.player.getNative().GetDuration();if(true=3D=3D=3Dthis.isInitial=
izing()){Fc=3Dthis.isLive(Gc);}=0A=
return((true=3D=3D=3DFc||Gc=3D=3D=3D0)?0:Math.floor(Gc/this.player.getNat=
ive().GetTimeScale()));}=0A=
catch(e){}=0A=
return =
0;};xmp.QuicktimeStateMachine.prototype.getVolume=3Dfunction(){return =
Math.abs(Math.floor(((this.player.getNative().GetVolume()+1)/xmp.QUICKTIM=
E_VOLUME_MAX)*100));};xmp.QuicktimeStateMachine.prototype.setVolume=3Dfun=
ction(Hc){this.player.getNative().SetVolume(Math.floor(((Hc.toFixed(1)+1)=
*0.01)*xmp.QUICKTIME_VOLUME_MAX));this.volume=3DHc;this.muted=3Dthis.getM=
ute();};xmp.QuicktimeStateMachine.prototype.getMute=3Dfunction(){var =
Ic=3Dthis.player.getNative().GetMute();return(Ic=3D=3D=3Dtrue||Ic=3D=3D=3D=
1);};xmp.QuicktimeStateMachine.prototype.setMute=3Dfunction(Jc){this.play=
er.getNative().SetMute(Jc);this.muted=3DJc;this.volume=3DMath.floor(((thi=
s.player.getNative().GetVolume()+1)/xmp.QUICKTIME_VOLUME_MAX)*100);};xmp.=
QuicktimeStateMachine.prototype.create=3Dfunction(Kc){this.stateChangePol=
lingInterval=3DparseInt(this.player.getConfigProperty(xmp.QUICKTIME_STATE=
_CHANGE_POLLING_INTERVAL_CONFIG),10);if(!this.stateChangePollingInterval)=
{throw new xmp.NativePlayerError("Validating state change polling =
interval.","Missing state change polling interval.",this.player,null);}=0A=
this.connectionTimeoutInterval=3DparseInt(this.player.getConfigProperty(x=
mp.QUICKTIME_CONNECTION_TIMEOUT_INTERVAL_CONFIG),10);if(!this.connectionT=
imeoutInterval){throw new xmp.NativePlayerError("Validating connection =
timeout interval.","Missing connection timeout =
interval.",this.player,null);}=0A=
this.url=3DKc.node.getURI();this.staticUrl=3Dthis.url;this.volume=3DKc.vo=
lume;this.muted=3DKc.muted;this.initState();};xmp.QuicktimeStateMachine.p=
rototype.onStateChange=3Dfunction(Lc,Mc){try{if(this.state=3D=3D=3Dxmp.ER=
RORS){return;}=0A=
if(true=3D=3D=3Dthis.canGetPluginStatus()){var =
Nc=3Dthis.getRawPluginStatus();if(!Nc){return;}=0A=
var =
Oc=3Dthis.translateState(Nc);if(Oc.length>0){if(false=3D=3D=3Dthis.stateH=
andlers[Oc].apply(this,[Nc,Oc])){return;}}}=0A=
if(false=3D=3D=3Dthis.isInitializing()){var =
Pc=3Dthis.getPosition();if(this.state!=3D=3Dxmp.ENDED&&Pc>0&&(Pc>=3Dthis.=
getDuration())&&false=3D=3D=3Dthis.live){this.setState(xmp.ENDED,true);}}=
}=0A=
catch(e){this.setError(null,e);}};xmp.QuicktimeStateMachine.prototype.onC=
onnectionTimeout=3Dfunction(Qc,Rc){try{this.stopConnectionTimeoutMonitor(=
);if(this.state=3D=3D=3Dxmp.ERRORS){return;}=0A=
if(false=3D=3D=3Dthis.opened&&false=3D=3D=3Dthis.validateUrl()){var =
e=3Dthis.createConnectionError(this.getRawPluginStatus(),"Connection =
timeout.","Error connecting to \""+this.url+"\".");throw e;}}=0A=
catch(e2){this.setError(null,e2);}};xmp.QuicktimeStateMachine.prototype.t=
ranslateState=3Dfunction(Sc){if(Sc.indexOf(xmp.QUICKTIME_ERROR)=3D=3D=3D-=
1&&false=3D=3D=3Dthis.validateUrl()){return"";}=0A=
for(var i=3D0;i<this.transitionTable.length;i++){var =
Tc=3Dthis.transitionTable[i];if(Sc.indexOf(Tc.nativeState)=3D=3D=3D0){if(=
0=3D=3D=3DTc.currentState.length){return Tc.transitionState;}=0A=
else{for(var =
j=3D0;j<Tc.currentState.length;j++){if(this.state=3D=3D=3DTc.currentState=
[j]){return Tc.transitionState;}}}}}=0A=
return"";};xmp.QuicktimeStateMachine.prototype.initOperations=3Dfunction(=
){this.operations=3D{};this.operations[xmp.INIT]=3D[];this.operations[xmp=
.CONNECTING]=3D[];this.operations[xmp.CONNECTED]=3D[];this.operations[xmp=
.OPEN]=3D[];this.operations[xmp.FINI]=3D[];this.operations[xmp.PLAY]=3D[{=
state:xmp.PAUSE,live:false},{state:xmp.STOP,live:true},{state:xmp.REWIND,=
live:false},{state:xmp.FAST_FORWARD,live:false},{state:xmp.SEEKABLE,live:=
false}];this.operations[xmp.PAUSE]=3D[{state:xmp.PLAY,live:false},{state:=
xmp.STOP,live:false},{state:xmp.REWIND,live:false},{state:xmp.FAST_FORWAR=
D,live:false},{state:xmp.SEEKABLE,live:false}];this.operations[xmp.STOP]=3D=
[{state:xmp.PLAY,live:true},{state:xmp.REWIND,live:false},{state:xmp.FAST=
_FORWARD,live:false}];this.operations[xmp.REWIND]=3D[{state:xmp.PLAY,live=
:false},{state:xmp.STOP,live:false},{state:xmp.PAUSE,live:false},{state:x=
mp.FAST_FORWARD,live:false},{state:xmp.SEEKABLE,live:false}];this.operati=
ons[xmp.FAST_FORWARD]=3D[{state:xmp.PLAY,live:false},{state:xmp.PAUSE,liv=
e:false},{state:xmp.STOP,live:false},{state:xmp.REWIND,live:false},{state=
:xmp.SEEKABLE,live:false}];this.operations[xmp.SEEKABLE]=3D[{state:xmp.SE=
EKABLE,live:false},{state:xmp.PAUSE,live:false},{state:xmp.STOP,live:fals=
e},{state:xmp.REWIND,live:false},{state:xmp.FAST_FORWARD,live:false}];thi=
s.operations[xmp.ENDED]=3D[{state:xmp.PLAY,live:false},{state:xmp.FAST_FO=
RWARD,live:false},{state:xmp.SEEKABLE,live:false}];this.operations[xmp.ER=
RORS]=3D[];};xmp.QuicktimeStateMachine.prototype.setState=3Dfunction(Uc,V=
c,Wc){this.state=3DUc;if(true=3D=3D=3DVc){var =
Xc=3D((Uc=3D=3D=3Dxmp.QUICKTIME_LOAD_BUFFERING||Uc=3D=3D=3Dxmp.QUICKTIME_=
WAIT_BUFFERING||Uc=3D=3D=3Dxmp.QUICKTIME_BUFFERING_COMPLETE)?xmp.BUFFERIN=
G:Uc);this.player.setState(Xc,Wc);}};xmp.QuicktimeStateMachine.prototype.=
initTransitionTable=3Dfunction(){this.transitionTable=3D[];this.transitio=
nTable.push({nativeState:xmp.QUICKTIME_WAITING,currentState:[xmp.INIT],tr=
ansitionState:xmp.CONNECTING});this.transitionTable.push({nativeState:xmp=
.QUICKTIME_WAITING,currentState:[xmp.CONNECTING,xmp.QUICKTIME_WAIT_BUFFER=
ING],transitionState:xmp.QUICKTIME_WAIT_BUFFERING});this.transitionTable.=
push({nativeState:xmp.QUICKTIME_LOADING,currentState:[xmp.INIT,xmp.CONNEC=
TING,xmp.QUICKTIME_WAIT_BUFFERING],transitionState:xmp.CONNECTED});this.t=
ransitionTable.push({nativeState:xmp.QUICKTIME_LOADING,currentState:[xmp.=
CONNECTED,xmp.QUICKTIME_LOAD_BUFFERING,xmp.OPEN],transitionState:xmp.QUIC=
KTIME_LOAD_BUFFERING});this.transitionTable.push({nativeState:xmp.QUICKTI=
ME_PLAYABLE,currentState:[xmp.PLAY,xmp.PAUSE,xmp.STOP,xmp.REWIND,xmp.FAST=
_FORWARD,xmp.SEEKABLE,xmp.BUFFERING],transitionState:xmp.BUFFERING});this=
.transitionTable.push({nativeState:xmp.QUICKTIME_COMPLETE,currentState:[x=
mp.INIT,xmp.CONNECTING,xmp.CONNECTED,xmp.QUICKTIME_WAIT_BUFFERING,xmp.QUI=
CKTIME_LOAD_BUFFERING],transitionState:xmp.OPEN});this.transitionTable.pu=
sh({nativeState:xmp.QUICKTIME_COMPLETE,currentState:[xmp.PLAY,xmp.PAUSE,x=
mp.STOP,xmp.REWIND,xmp.FAST_FORWARD,xmp.SEEKABLE,xmp.OPEN,xmp.BUFFERING],=
transitionState:xmp.QUICKTIME_BUFFERING_COMPLETE});this.transitionTable.p=
ush({nativeState:xmp.QUICKTIME_PLAYABLE,currentState:[xmp.INIT,xmp.CONNEC=
TING,xmp.CONNECTED,xmp.QUICKTIME_WAIT_BUFFERING,xmp.QUICKTIME_LOAD_BUFFER=
ING],transitionState:xmp.OPEN});this.transitionTable.push({nativeState:xm=
p.QUICKTIME_COMPLETE,currentState:[xmp.QUICKTIME_LOAD_BUFFERING],transiti=
onState:xmp.ERRORS});this.transitionTable.push({nativeState:xmp.QUICKTIME=
_ERROR,currentState:[],transitionState:xmp.ERRORS});};xmp.QuicktimeStateM=
achine.prototype.initStateChangeHandlers=3Dfunction(){this.stateHandlers=3D=
{};this.stateHandlers[xmp.ERRORS]=3Dthis.onError;this.stateHandlers[xmp.C=
ONNECTING]=3Dthis.onConnecting;this.stateHandlers[xmp.CONNECTED]=3Dthis.o=
nConnected;this.stateHandlers[xmp.OPEN]=3Dthis.onOpen;this.stateHandlers[=
xmp.QUICKTIME_WAIT_BUFFERING]=3Dthis.onBuffering;this.stateHandlers[xmp.Q=
UICKTIME_LOAD_BUFFERING]=3Dthis.onBuffering;this.stateHandlers[xmp.QUICKT=
IME_BUFFERING_COMPLETE]=3Dthis.onBuffering;this.stateHandlers[xmp.BUFFERI=
NG]=3Dthis.onBuffering;};xmp.QuicktimeStateMachine.prototype.onError=3Dfu=
nction(Yc,Zc){this.opened=3Dfalse;var $c=3D"Unknown =
error.";if(true=3D=3D=3Dthis.isInitializing()){$c=3D"Error connecting to =
\""+this.url+"\".";}=0A=
this.setError(null,this.createConnectionError(Yc,"Connecting to =
media.",$c));return =
false;};xmp.QuicktimeStateMachine.prototype.onConnected=3Dfunction(ad,bd)=
{this.player.startMonitor();this.setState(xmp.CONNECTED,true);return =
true;};xmp.QuicktimeStateMachine.prototype.onConnecting=3Dfunction(cd,dd)=
{this.player.startMonitor();this.setState(xmp.CONNECTING,true);return =
true;};xmp.QuicktimeStateMachine.prototype.onOpen=3Dfunction(ed,fd){this.=
opened=3Dtrue;this.live=3Dthis.isLive(this.player.getNative().GetDuration=
());this.setVolume(this.volume);if(true=3D=3D=3Dthis.muted){this.setMute(=
true);}=0A=
this.setState(xmp.OPEN,true);this.player.setState(xmp.FIRST_FRAME_RENDERE=
D);return =
true;};xmp.QuicktimeStateMachine.prototype.onBuffering=3Dfunction(gd,hd){=
this.checkSetOpen();if(this.state!=3D=3Dxmp.QUICKTIME_WAIT_BUFFERING&&thi=
s.state!=3D=3Dxmp.QUICKTIME_LOAD_BUFFERING&&this.state!=3D=3Dxmp.QUICKTIM=
E_BUFFERING_COMPLETE&&this.state!=3D=3Dxmp.BUFFERING){this.operations[hd]=
=3Dthis.operations[this.state];}=0A=
var jd=3Dthis.getRawBytesTotal();var =
kd=3D((hd=3D=3D=3Dxmp.QUICKTIME_BUFFERING_COMPLETE)?jd:this.getRawBytesLo=
aded());var =
ld=3D((jd<=3D0)?0:Math.floor((kd/jd)*100));ld=3D((99=3D=3D=3Dld)?100:ld);=
if(false=3D=3D=3Dthis.bufferingComplete&&(false=3D=3D=3Dthis.isLive(this.=
getRawDuration())||hd=3D=3D=3Dxmp.QUICKTIME_WAIT_BUFFERING||hd=3D=3D=3Dxm=
p.QUICKTIME_LOAD_BUFFERING||hd=3D=3D=3Dxmp.QUICKTIME_BUFFERING_COMPLETE))=
{this.setState(hd,true,{percent:ld,bytesDownloaded:kd,bytesTotal:jd});}=0A=
this.bufferingComplete=3D(100=3D=3D=3Dld);if(hd=3D=3D=3Dxmp.QUICKTIME_LOA=
D_BUFFERING&&true=3D=3D=3Dthis.bufferingComplete){this.onOpen(gd,hd);}=0A=
return =
true;};xmp.QuicktimeStateMachine.prototype.isInitializing=3Dfunction(){re=
turn(this.state=3D=3D=3Dxmp.INIT||this.state=3D=3D=3Dxmp.CONNECTING||this=
.state=3D=3D=3Dxmp.CONNECTED||this.state=3D=3D=3Dxmp.QUICKTIME_WAIT_BUFFE=
RING||this.state=3D=3D=3Dxmp.QUICKTIME_LOAD_BUFFERING);};xmp.QuicktimeSta=
teMachine.prototype.isBuffering=3Dfunction(){return(this.state=3D=3D=3Dxm=
p.BUFFERING||this.state=3D=3D=3Dxmp.QUICKTIME_WAIT_BUFFERING||this.state=3D=
=3D=3Dxmp.QUICKTIME_LOAD_BUFFERING||this.state=3D=3D=3Dxmp.QUICKTIME_BUFF=
ERING_COMPLETE);};xmp.QuicktimeStateMachine.prototype.isLive=3Dfunction(m=
d){return(xmp.QUICKTIME_INITIAL_LIVE_DURATION=3D=3D=3Dmd||0=3D=3D=3Dmd||-=
1=3D=3D=3Dmd);};xmp.QuicktimeStateMachine.prototype.canGetPluginStatus=3D=
function(){return(false=3D=3D=3Dthis.bufferingComplete);};xmp.QuicktimeSt=
ateMachine.prototype.startStateChangeMonitor=3Dfunction(){if(!this.stateC=
hangeMonitorTimer){this.stateChangeMonitorTimer=3Dthis.player.createTimer=
({object:this,id:"stateChange",interval:this.stateChangePollingInterval,h=
andler:this.onStateChange,context:null});this.stateChangeMonitorTimer.sta=
rt();}};xmp.QuicktimeStateMachine.prototype.stopStateChangeMonitor=3Dfunc=
tion(){if(this.stateChangeMonitorTimer){this.stateChangeMonitorTimer.stop=
();this.stateChangeMonitorTimer=3Dnull;}};xmp.QuicktimeStateMachine.proto=
type.startConnectionTimeoutMonitor=3Dfunction(){if(!this.connectionTimeou=
tTimer){this.connectionTimeoutTimer=3Dthis.player.createTimer({object:thi=
s,id:"connectionTimeout",interval:this.connectionTimeoutInterval,handler:=
this.onConnectionTimeout,context:null});this.connectionTimeoutTimer.start=
();}};xmp.QuicktimeStateMachine.prototype.stopConnectionTimeoutMonitor=3D=
function(){if(this.connectionTimeoutTimer){this.connectionTimeoutTimer.st=
op();this.connectionTimeoutTimer=3Dnull;}};xmp.QuicktimeStateMachine.prot=
otype.initErrorCodes=3Dfunction(){this.errorCodeDesc=3D{};this.errorCodeD=
esc[100]=3D"(Continue)";this.errorCodeDesc[101]=3D"(Switching =
Protocols)";this.errorCodeDesc[200]=3D"(OK)";this.errorCodeDesc[201]=3D"(=
Created)";this.errorCodeDesc[202]=3D"(Accepted)";this.errorCodeDesc[204]=3D=
"(No Content)";this.errorCodeDesc[205]=3D"(Reset =
Content)";this.errorCodeDesc[206]=3D"(Partial =
Content)";this.errorCodeDesc[300]=3D"(Multiple =
Choices)";this.errorCodeDesc[301]=3D"(Moved =
Permanently)";this.errorCodeDesc[302]=3D"(Found)";this.errorCodeDesc[303]=
=3D"(See Other)";this.errorCodeDesc[304]=3D"(Not =
Modified)";this.errorCodeDesc[305]=3D"(Use =
Proxy)";this.errorCodeDesc[306]=3D"(No Longer =
Used)";this.errorCodeDesc[307]=3D"(Temporary =
Redirect)";this.errorCodeDesc[400]=3D"(Bad =
Request)";this.errorCodeDesc[401]=3D"(Not =
Authorised)";this.errorCodeDesc[402]=3D"(Payment =
Required)";this.errorCodeDesc[403]=3D"(Forbidden)";this.errorCodeDesc[404=
]=3D"(Not Found)";this.errorCodeDesc[405]=3D"(Method Not =
Allowed)";this.errorCodeDesc[406]=3D"(Not =
Acceptable)";this.errorCodeDesc[407]=3D"(Proxy Authentication =
Required)";this.errorCodeDesc[408]=3D"(Request =
Timeout)";this.errorCodeDesc[409]=3D"(Conflict)";this.errorCodeDesc[410]=3D=
"(Gone)";this.errorCodeDesc[411]=3D"(Length =
Required)";this.errorCodeDesc[412]=3D"(Precondition =
Failed)";this.errorCodeDesc[413]=3D"(Request Entity Too =
Large)";this.errorCodeDesc[414]=3D"(Request URI Too =
Long)";this.errorCodeDesc[415]=3D"(Unsupported Media =
Type)";this.errorCodeDesc[416]=3D"(Requested Range Not =
Satisfiable)";this.errorCodeDesc[417]=3D"(Expectation =
Failed)";this.errorCodeDesc[451]=3D"(Parameter Not =
Understood)";this.errorCodeDesc[452]=3D"(Conference Not =
Found)";this.errorCodeDesc[453]=3D"(Not Enough =
Bandwidth)";this.errorCodeDesc[454]=3D"(Session Not =
Founds)";this.errorCodeDesc[455]=3D"(Method Not Valid In This =
State)";this.errorCodeDesc[456]=3D"(Header Field Not Valid For =
Resource)";this.errorCodeDesc[457]=3D"(Invalid =
Range)";this.errorCodeDesc[458]=3D"(Parameter Is Read =
Only)";this.errorCodeDesc[459]=3D"(Aggregate Operation Not =
Allowed)";this.errorCodeDesc[460]=3D"(Only Aggregate Operation =
Allowed)";this.errorCodeDesc[461]=3D"(Unsupported =
Transport)";this.errorCodeDesc[462]=3D"(Destination =
Unreachable)";this.errorCodeDesc[500]=3D"(Internal Server =
Error)";this.errorCodeDesc[501]=3D"(Not =
Implemented)";this.errorCodeDesc[502]=3D"(Bad =
Gateway)";this.errorCodeDesc[503]=3D"(Service =
Unavailable)";this.errorCodeDesc[504]=3D"(Gateway =
Timeout)";this.errorCodeDesc[505]=3D"(HTTP Version Not =
Supported)";};xmp.QuicktimeStateMachine.prototype.getErrorCodeDesc=3Dfunc=
tion(nd){var =
od=3D((this.errorCodeDesc[nd])?this.errorCodeDesc[nd]:"(Unknown)");return=
 nd+" =
"+od;};xmp.QuicktimeStateMachine.prototype.getErrorCodes=3Dfunction(pd){v=
ar qd=3D[];var =
rd=3Dpd.substring(pd.indexOf(":")+1);if(rd.indexOf(xmp.QUICKTIME_ERROR_CO=
DE_DELIMITER)=3D=3D=3D-1){qd.push(this.getErrorCodeDesc(parseInt(rd,10)))=
;}=0A=
else{while(rd.length>0){var =
sd=3Drd.indexOf(xmp.QUICKTIME_ERROR_CODE_DELIMITER);if(sd=3D=3D=3D-1){qd.=
push(this.getErrorCodeDesc(parseInt(rd,10)));break;}=0A=
else{qd.push(this.getErrorCodeDesc(parseInt(rd.substring(0,sd),10)));rd=3D=
rd.substring(sd+1);}}}=0A=
return =
qd;};xmp.QuicktimeStateMachine.prototype.initState=3Dfunction(){this.open=
ed=3Dfalse;this.bufferingComplete=3Dfalse;this.setState(xmp.INIT,false);t=
his.startStateChangeMonitor();this.startConnectionTimeoutMonitor();};xmp.=
QuicktimeStateMachine.prototype.checkSetOpen=3Dfunction(){if(false=3D=3D=3D=
this.opened&&this.getPosition()>0){this.onOpen("",xmp.OPEN);}};xmp.Quickt=
imeStateMachine.prototype.createConnectionError=3Dfunction(td,ud,vd){var =
wd=3D[];if(td&&td.indexOf(xmp.QUICKTIME_ERROR)=3D=3D=3D0){wd.push({label:=
"QuickTime Error Codes",text:this.getErrorCodes(td).join(", ")});}=0A=
return new =
xmp.NativePlayerConnectionError(ud,vd,this.player,wd);};xmp.QuicktimeStat=
eMachine.prototype.getRawDuration=3Dfunction(){try{return =
this.player.getNative().GetDuration();}=0A=
catch(e){}=0A=
return =
0;};xmp.QuicktimeStateMachine.prototype.getRawMaxTimeLoaded=3Dfunction(){=
try{return this.player.getNative().GetMaxTimeLoaded();}=0A=
catch(e){}=0A=
return =
0;};xmp.QuicktimeStateMachine.prototype.getRawBytesLoaded=3Dfunction(){tr=
y{return this.player.getNative().GetMaxBytesLoaded();}=0A=
catch(e){}=0A=
return =
0;};xmp.QuicktimeStateMachine.prototype.getRawBytesTotal=3Dfunction(){try=
{return this.player.getNative().GetMovieSize();}=0A=
catch(e){}=0A=
return =
0;};xmp.QuicktimeStateMachine.prototype.getRawPluginStatus=3Dfunction(){t=
ry{return this.player.getNative().GetPluginStatus();}=0A=
catch(e){}=0A=
return =
null;};xmp.QuicktimeStateMachine.prototype.checkForStaticUrl=3Dfunction()=
{if(this.staticUrl){this.staticUrl=3Dnull;return true;}=0A=
return =
false;};xmp.QuicktimeStateMachine.prototype.setError=3Dfunction(xd,e){thi=
s.setState(xmp.ERRORS,false);this.player.setError(xd,e);};xmp.QuicktimeSt=
ateMachine.prototype.validateUrl=3Dfunction(){try{var =
yd=3Dthis.player.getNative().GetURL();if(!yd){return false;}=0A=
return(yd.length>0&&(yd=3D=3D=3Dthis.url));}=0A=
catch(e){}=0A=
return =
false;};xmp.WINDOWS_MEDIA=3D"WindowsMedia";xmp.WINDOWS_MEDIA_MIME_TYPE=3D=
"video/x-ms-wmv";xmp.OPEN_STATE_CHANGE=3D"OpenState";xmp.PLAY_STATE_CHANG=
E=3D"PlayState";xmp.WINDOWS_MEDIA_ENDED=3D8;xmp.WINDOWS_MEDIA_PLAYING=3D3=
;xmp.WINDOWS_MEDIA_STOPPED=3D1;xmp.WINDOWS_MEDIA_CONNECTING=3D10;xmp.WIND=
OWS_MEDIA_LOADING=3D11;xmp.WINDOWS_MEDIA_OPEN=3D13;xmp.WINDOWS_MEDIA_ACTI=
VEX_PROGID=3D"WMPlayer.OCX.7";xmp.WINDOWS_MEDIA_PLAYER_PLAY_STATE_CHANGE_=
METHOD=3D"onPlayStateChange";xmp.WINDOWS_MEDIA_PLAYER_OPEN_STATE_CHANGE_M=
ETHOD=3D"onOpenStateChange";xmp.WINDOWS_MEDIA_PLAYER_BUFFERING_METHOD=3D"=
onBuffering";xmp.WINDOWS_MEDIA_PLAYER_TRIGGER_METHOD=3D"onTrigger";xmp.WI=
NDOWS_MEDIA_PLAYER_ERROR_METHOD=3D"onError";xmp.WindowsMediaPlayer=3Dfunc=
tion(zd,Ad){xmp.WindowsMediaPlayer.ctor.call(this,xmp.WINDOWS_MEDIA,zd,Ad=
);this.initCallbackStates();};xmp.DERIVE_CLASS(xmp.AbstractNativePlayer,x=
mp.WindowsMediaPlayer);xmp.WindowsMediaPlayer.prototype.open=3Dfunction(B=
d){this.getNative().URL=3DBd.getURI();};xmp.WindowsMediaPlayer.prototype.=
close=3Dfunction(){this.getNative().close();xmp.WindowsMediaPlayer.base.c=
lose.call(this);};xmp.WindowsMediaPlayer.prototype.play=3Dfunction(){this=
.getNative().controls.play();xmp.WindowsMediaPlayer.base.play.call(this);=
this.setState(xmp.PLAY);};xmp.WindowsMediaPlayer.prototype.pause=3Dfuncti=
on(){this.getNative().controls.pause();xmp.WindowsMediaPlayer.base.pause.=
call(this);this.setState(xmp.PAUSE);};xmp.WindowsMediaPlayer.prototype.st=
op=3Dfunction(){this.getNative().controls.stop();xmp.WindowsMediaPlayer.b=
ase.stop.call(this);this.setState(xmp.STOP);};xmp.WindowsMediaPlayer.prot=
otype.rewind=3Dfunction(){this.getNative().controls.fastReverse();xmp.Win=
dowsMediaPlayer.base.rewind.call(this);this.setState(xmp.REWIND);};xmp.Wi=
ndowsMediaPlayer.prototype.fastForward=3Dfunction(){this.getNative().cont=
rols.fastForward();xmp.WindowsMediaPlayer.base.fastForward.call(this);thi=
s.setState(xmp.FAST_FORWARD);};xmp.WindowsMediaPlayer.prototype.seek=3Dfu=
nction(Cd){this.getNative().controls.currentPosition=3DCd;xmp.WindowsMedi=
aPlayer.base.seek.call(this,Cd);this.setState(xmp.SEEKABLE);};xmp.Windows=
MediaPlayer.prototype.isAvailable=3Dfunction(Dd){if(Dd=3D=3D=3Dxmp.FULLSC=
REEN){return(true=3D=3D=3Dthis.isFullscreenEnabled()&&this.getNative().pl=
ayState=3D=3D=3Dxmp.WINDOWS_MEDIA_PLAYING);}=0A=
return =
this.getNative().controls.isAvailable(xmp.WindowsMediaUtility.getCommand(=
[Dd]));};xmp.WindowsMediaPlayer.prototype.onValidatePlugIn=3Dfunction(Ed)=
{var Fd=3Dthis.getPlugInInfo(xmp.WINDOWS_MEDIA);try{var Gd=3Dnew =
ActiveXObject(xmp.WINDOWS_MEDIA_ACTIVEX_PROGID);this.validatePlugInVersio=
n(xmp.WINDOWS_MEDIA,Gd.versionInfo);return;}=0A=
catch(e){if((e instanceof xmp.InvalidPlugInVersionError)||(e instanceof =
xmp.UnsupportedPlugInVersionError)){throw e;}}=0A=
throw new xmp.PlugInNotFoundError("Validating native player =
plugin.",Fd);};xmp.WindowsMediaPlayer.prototype.getPosition=3Dfunction(){=
return =
this.getNative().controls.currentPosition;};xmp.WindowsMediaPlayer.protot=
ype.getDuration=3Dfunction(){var =
Hd=3Dthis.getNative().currentMedia;if(Hd=3D=3D=3Dnull){return 0;}=0A=
return =
Hd.duration;};xmp.WindowsMediaPlayer.prototype.getVolume=3Dfunction(){ret=
urn =
this.getNative().settings.volume;};xmp.WindowsMediaPlayer.prototype.setVo=
lume=3Dfunction(Id){this.getNative().settings.volume=3DId;};xmp.WindowsMe=
diaPlayer.prototype.getMute=3Dfunction(){return =
this.getNative().settings.mute;};xmp.WindowsMediaPlayer.prototype.setMute=
=3Dfunction(Jd){this.getNative().settings.mute=3DJd;};xmp.WindowsMediaPla=
yer.prototype.getFullscreen=3Dfunction(){return =
this.getNative().fullScreen;};xmp.WindowsMediaPlayer.prototype.setFullscr=
een=3Dfunction(Kd){if(false=3D=3D=3Dthis.isFullscreenEnabled()){throw =
new xmp.NativePlayerUnsupportedError("Invoking \"setFullscreen\" =
method.","Fullscreen disabled.",this);}=0A=
this.getNative().fullScreen=3DKd;};xmp.WindowsMediaPlayer.prototype.creat=
e=3Dfunction(Ld){Ld.id=3Dxmp.WINDOWS_MEDIA+Ld.group;xmp.WindowsMediaPlaye=
r.base.create.call(this,Ld);if(Ld.viewport.getType()!=3D=3Dxmp.DHTML_VIEW=
PORT){throw new xmp.InvalidNativePlayerViewportError("Creating native =
player.","Invalid native player viewport \""+Ld.viewport.getType()+"\".  =
Supported viewports:  DHTML",this);}=0A=
var Md=3DLd.viewport.getNative();Md.innerHTML=3D"<object =
id=3D'"+Ld.id+"' width=3D'"+Md.style.width+"' =
height=3D'"+Md.style.height+"' style=3D'background-color:  #000000; =
z-index: "+xmp.NATIVE_PLAYER_Z_INDEX+"' =
classid=3D'clsid:6BF52A52-394A-11d3-B153-00C04F79FAA6'>"+"<param =
name=3D'uiMode' value=3D'none' />"+"<param name=3D'stretchToFit' =
value=3D'"+((true=3D=3D=3DLd.stretchToFit)?xmp.TRUE:xmp.FALSE)+"' =
/>"+"<param name=3D'enableContextMenu' value=3D'false' />"+"<param =
name=3D'windowlessVideo' =
value=3D'"+((true=3D=3D=3Dthis.isFullscreenEnabled())?xmp.FALSE:xmp.TRUE)=
+"' />"+"<param name=3D'volume' value=3D'"+Ld.volume+"'/>"+"<param =
name=3D'mute' =
value=3D'"+((true=3D=3D=3DLd.mute)?xmp.TRUE:xmp.FALSE)+"'/></object>"+"<s=
cript language =3D 'jscript' for=3D'"+Ld.id+"' =
event=3Dplaystatechange(newstate)>"+this.getCallbackMethod(xmp.WINDOWS_ME=
DIA_PLAYER_PLAY_STATE_CHANGE_METHOD)+"(newstate);</script>"+"<script =
language =3D 'jscript' for=3D'"+Ld.id+"' =
event=3Dopenstatechange(newstate)>"+this.getCallbackMethod(xmp.WINDOWS_ME=
DIA_PLAYER_OPEN_STATE_CHANGE_METHOD)+"(newstate);</script>"+"<script =
language =3D 'jscript' for=3D'"+Ld.id+"' =
event=3Dbuffering(start)>"+this.getCallbackMethod(xmp.WINDOWS_MEDIA_PLAYE=
R_BUFFERING_METHOD)+"(start);</script>"+"<script language =3D 'jscript' =
for=3D'"+Ld.id+"' event=3D'scriptcommand(name, =
data)'>"+this.getCallbackMethod(xmp.WINDOWS_MEDIA_PLAYER_TRIGGER_METHOD)+=
"(name, data);</script>"+"<script language =3D 'jscript' =
for=3D'"+Ld.id+"' =
event=3Derror()>"+this.getCallbackMethod(xmp.WINDOWS_MEDIA_PLAYER_ERROR_M=
ETHOD)+"();</script>";this.setCreated();};xmp.WindowsMediaPlayer.prototyp=
e.initCallbackStates=3Dfunction(){this.callbackStates=3D{};this.callbackS=
tates[xmp.PLAY_STATE_CHANGE]=3D[{state:xmp.WINDOWS_MEDIA_PLAYING,player_s=
tate:xmp.PLAY},{state:xmp.WINDOWS_MEDIA_ENDED,player_state:xmp.ENDED}];th=
is.callbackStates[xmp.OPEN_STATE_CHANGE]=3D[{state:xmp.WINDOWS_MEDIA_CONN=
ECTING,player_state:xmp.CONNECTING},{state:xmp.WINDOWS_MEDIA_LOADING,play=
er_state:xmp.CONNECTED},{state:xmp.WINDOWS_MEDIA_OPEN,player_state:xmp.OP=
EN}];};xmp.WindowsMediaPlayer.prototype.translateState=3Dfunction(Nd,Od){=
var Pd=3Dthis.callbackStates[Nd];for(var =
i=3D0;i<Pd.length;i++){if(Od=3D=3D=3DPd[i].state){return =
Pd[i].player_state;}}=0A=
return"";};xmp.WindowsMediaPlayer.prototype.onPlayStateChange=3Dfunction(=
Qd){try{if(Qd=3D=3D=3Dxmp.WINDOWS_MEDIA_STOPPED){this.getLogger().warn("P=
lay state changed to \"Stopped\".");}=0A=
var =
Rd=3Dthis.translateState(xmp.PLAY_STATE_CHANGE,Qd);if(Rd.length>0){this.s=
etState(Rd);}}=0A=
catch(e){this.setError("Handling play state =
change.",e);}};xmp.WindowsMediaPlayer.prototype.onOpenStateChange=3Dfunct=
ion(Sd){try{var =
Td=3Dthis.translateState(xmp.OPEN_STATE_CHANGE,Sd);if(Td.length>0){this.s=
etState(Td);}}=0A=
catch(e){this.setError("Handling open state =
change.",e);}};xmp.WindowsMediaPlayer.prototype.onBuffering=3Dfunction(Ud=
){try{var =
Vd=3D((true=3D=3D=3DUd)?this.getNative().network.bufferingProgress:100);t=
his.setState(xmp.BUFFERING,{percent:Vd,bytesDownloaded:0,bytesTotal:0});i=
f(100=3D=3D=3DVd){this.setState(xmp.FIRST_FRAME_RENDERED);}}=0A=
catch(e){this.setError("Handling =
buffering.",e);}};xmp.WindowsMediaPlayer.prototype.onTrigger=3Dfunction(W=
d,Xd){try{this.setTrigger(Wd,Xd);}=0A=
catch(e){this.setError("Handling =
trigger.",e);}};xmp.WindowsMediaPlayer.prototype.onError=3Dfunction(){try=
{var Yd=3Dnull;var Zd=3Dthis.getNative().Error.item(0).errorCode;var =
$d=3Dthis.getNative().Error.item(0).errorDescription;var =
ae=3D[{label:"Windows Media Error =
Code",text:xmp.WindowsMediaUtility.getErrorCodeDesc(Zd)}];if(true=3D=3D=3D=
xmp.WindowsMediaUtility.isConnectionError(Zd)){Yd=3Dnew =
xmp.NativePlayerConnectionError("Connecting to media.",$d,this,ae);}=0A=
else{Yd=3Dnew xmp.NativePlayerError("Handling error.",$d,this,ae);}=0A=
this.setError(null,Yd);}=0A=
catch(e){this.setError("Handling =
error.",e);}};xmp.WINDOWS_MEDIA_PLUGIN=3D"WindowsMediaPlugIn";xmp.WINDOWS=
_MEDIA_PLUGIN_CONNECTING=3D"1";xmp.WINDOWS_MEDIA_PLUGIN_CONNECTED=3D"2";x=
mp.WINDOWS_MEDIA_PLUGIN_OPEN=3D"3";xmp.WINDOWS_MEDIA_PLUGIN_ENDED=3D"4";x=
mp.WINDOWS_MEDIA_PLUGIN_BUFFERING=3D"5";xmp.WINDOWS_MEDIA_PLUGIN_PLAYING=3D=
"6";xmp.WINDOW_MEDIA_PLUGIN_STATE_CHANGE_METHOD=3D"onStateChange";xmp.WIN=
DOW_MEDIA_PLUGIN_ERROR_METHOD=3D"onError";xmp.WINDOW_MEDIA_PLUGIN_TRIGGER=
_METHOD=3D"onTrigger";xmp.WINDOWS_MEDIA_PLUGIN_MIME_TYPE=3D"video/x-turne=
r-wmv";xmp.TURNER_MEDIA_PLUGIN_NAME=3D"Turner Media =
Plugin";xmp.TURNER_MEDIA_PLUGIN=3D"TurnerMedia";xmp.WindowsMediaPlugInPla=
yer=3Dfunction(be,ce){xmp.WindowsMediaPlugInPlayer.ctor.call(this,xmp.WIN=
DOWS_MEDIA_PLUGIN,be,ce);this.initCallbackStates();};xmp.DERIVE_CLASS(xmp=
.AbstractNativePlayer,xmp.WindowsMediaPlugInPlayer);xmp.WindowsMediaPlugI=
nPlayer.prototype.open=3Dfunction(de){this.setState(xmp.CONNECTING);this.=
getNative().url=3Dde.getURI();};xmp.WindowsMediaPlugInPlayer.prototype.cl=
ose=3Dfunction(){this.getNative().close();xmp.WindowsMediaPlugInPlayer.ba=
se.close.call(this);};xmp.WindowsMediaPlugInPlayer.prototype.play=3Dfunct=
ion(){this.getNative().play();xmp.WindowsMediaPlugInPlayer.base.play.call=
(this);this.setState(xmp.PLAY);};xmp.WindowsMediaPlugInPlayer.prototype.p=
ause=3Dfunction(){this.getNative().pause();xmp.WindowsMediaPlugInPlayer.b=
ase.pause.call(this);this.setState(xmp.PAUSE);};xmp.WindowsMediaPlugInPla=
yer.prototype.stop=3Dfunction(){this.getNative().stop();xmp.WindowsMediaP=
lugInPlayer.base.stop.call(this);this.setState(xmp.STOP);};xmp.WindowsMed=
iaPlugInPlayer.prototype.rewind=3Dfunction(){this.getNative().rewind();xm=
p.WindowsMediaPlugInPlayer.base.rewind.call(this);this.setState(xmp.REWIN=
D);};xmp.WindowsMediaPlugInPlayer.prototype.fastForward=3Dfunction(){this=
.getNative().fastForward();xmp.WindowsMediaPlugInPlayer.base.rewind.call(=
this);this.setState(xmp.FAST_FORWARD);};xmp.WindowsMediaPlugInPlayer.prot=
otype.seek=3Dfunction(ee){this.getNative().seek(ee);xmp.WindowsMediaPlugI=
nPlayer.base.rewind.call(this);this.setState(xmp.SEEKABLE);};xmp.WindowsM=
ediaPlugInPlayer.prototype.isAvailable=3Dfunction(fe){return =
this.getNative().isAvailable(xmp.WindowsMediaUtility.getCommand([fe]));};=
xmp.WindowsMediaPlugInPlayer.prototype.onValidatePlugIn=3Dfunction(ge){va=
r he=3Dthis.getPlugInInfo(xmp.TURNER_MEDIA_PLUGIN);var =
ie=3Dnavigator.mimeTypes[xmp.WINDOWS_MEDIA_PLUGIN_MIME_TYPE];if(!ie){thro=
w new xmp.PlugInNotFoundError("Validating native player plugin.",he);}=0A=
if(!ie.enabledPlugin){throw new xmp.PlugInDisabledError("Validating =
native player plugin.",he,xmp.WINDOWS_MEDIA_PLUGIN_MIME_TYPE);}=0A=
var =
je=3Die.enabledPlugin.name;if(je.indexOf(xmp.TURNER_MEDIA_PLUGIN_NAME)=3D=
=3D=3D-1){throw new xmp.PlugInDisabledError("Validating native player =
plugin.",he,xmp.WINDOWS_MEDIA_PLUGIN_MIME_TYPE);}=0A=
this.validatePlugInVersion(xmp.TURNER_MEDIA_PLUGIN,je.substr(je.lastIndex=
Of(" =
")+1));};xmp.WindowsMediaPlugInPlayer.prototype.getPosition=3Dfunction(){=
return =
this.getNative().position;};xmp.WindowsMediaPlugInPlayer.prototype.getDur=
ation=3Dfunction(){return =
this.getNative().duration;};xmp.WindowsMediaPlugInPlayer.prototype.getVol=
ume=3Dfunction(){return =
this.getNative().volume;};xmp.WindowsMediaPlugInPlayer.prototype.setVolum=
e=3Dfunction(ke){this.getNative().volume=3DMath.floor(ke);};xmp.WindowsMe=
diaPlugInPlayer.prototype.getMute=3Dfunction(){return =
this.getNative().mute;};xmp.WindowsMediaPlugInPlayer.prototype.setMute=3D=
function(le){this.getNative().mute=3Dle;};xmp.WindowsMediaPlugInPlayer.pr=
ototype.getFullscreen=3Dfunction(){return =
this.getNative().fullscreen;};xmp.WindowsMediaPlugInPlayer.prototype.setF=
ullscreen=3Dfunction(me){this.getNative().fullscreen=3Dme;};xmp.WindowsMe=
diaPlugInPlayer.prototype.create=3Dfunction(ne){ne.id=3Dxmp.WINDOWS_MEDIA=
_PLUGIN+ne.group;xmp.WindowsMediaPlugInPlayer.base.create.call(this,ne);i=
f(ne.viewport.getType()!=3D=3Dxmp.DHTML_VIEWPORT){throw new =
xmp.InvalidNativePlayerViewportError("Creating native player.","Invalid =
native player viewport \""+ne.viewport.getType()+"\".  Supported =
viewports:  DHTML",this);}=0A=
var oe=3Dne.viewport.getNative();oe.innerHTML=3D"<embed id=3D'"+ne.id+"' =
type=3D'"+xmp.WINDOWS_MEDIA_PLUGIN_MIME_TYPE+"' =
statechangecallback=3D'"+this.createCallbackMethod(xmp.WINDOW_MEDIA_PLUGI=
N_STATE_CHANGE_METHOD)+"' =
errorcallback=3D'"+this.createCallbackMethod(xmp.WINDOW_MEDIA_PLUGIN_ERRO=
R_METHOD)+"' =
triggercallback=3D'"+this.createCallbackMethod(xmp.WINDOW_MEDIA_PLUGIN_TR=
IGGER_METHOD)+"' =
"+"fullscreenenabled=3D'"+((true=3D=3D=3Dthis.isFullscreenEnabled())?xmp.=
TRUE:xmp.FALSE)+"' uimode=3D'none' =
stretchtofit=3D'"+((true=3D=3D=3Dne.stretchToFit)?xmp.TRUE:xmp.FALSE)+"' =
windowlessvideo=3D'true'"+"' volume=3D'"+ne.volume+"' =
mute=3D'"+((true=3D=3D=3Dne.mute)?xmp.TRUE:xmp.FALSE)+"' =
enablecontextmenu=3D'false' width=3D'"+oe.style.width+"' =
height=3D'"+oe.style.height+"' style=3D'background-color:  #000000; =
z-index: "+xmp.NATIVE_PLAYER_Z_INDEX+"' =
/>";this.setCreated();};xmp.WindowsMediaPlugInPlayer.prototype.initCallba=
ckStates=3Dfunction(){this.callbackStates=3D{};this.callbackStates[xmp.WI=
NDOWS_MEDIA_PLUGIN_CONNECTING]=3Dxmp.CONNECTING;this.callbackStates[xmp.W=
INDOWS_MEDIA_PLUGIN_CONNECTED]=3Dxmp.CONNECTED;this.callbackStates[xmp.WI=
NDOWS_MEDIA_PLUGIN_OPEN]=3Dxmp.OPEN;this.callbackStates[xmp.WINDOWS_MEDIA=
_PLUGIN_ENDED]=3Dxmp.ENDED;this.callbackStates[xmp.WINDOWS_MEDIA_PLUGIN_B=
UFFERING]=3Dxmp.BUFFERING;this.callbackStates[xmp.WINDOWS_MEDIA_PLUGIN_PL=
AYING]=3Dxmp.PLAY;};xmp.WindowsMediaPlugInPlayer.prototype.translateState=
=3Dfunction(pe){var =
qe=3Dthis.callbackStates[pe];return((qe)?qe:"");};xmp.WindowsMediaPlugInP=
layer.prototype.onStateChange=3Dfunction(re,se){try{var =
te=3Dthis.translateState(re);if(te.length>0){var =
ue=3D((te=3D=3D=3Dxmp.BUFFERING)?{percent:parseInt(se,10),bytesDownloaded=
:0,bytesTotal:0}:null);this.setState(te,ue);if(te=3D=3D=3Dxmp.BUFFERING&&=
100=3D=3D=3Due.percent){this.setState(xmp.FIRST_FRAME_RENDERED);}}}=0A=
catch(e){this.setError("Handling state =
change.",e);}};xmp.WindowsMediaPlugInPlayer.prototype.onError=3Dfunction(=
ve,we){try{var xe=3Dnull;var ye=3DparseInt(we,10);var =
ze=3D[{label:"Windows Media Error =
Code",text:xmp.WindowsMediaUtility.getErrorCodeDesc(ye)}];if(true=3D=3D=3D=
xmp.WindowsMediaUtility.isConnectionError(ye)){xe=3Dnew =
xmp.NativePlayerConnectionError("Connecting to media.",ve,this,ze);}=0A=
else{xe=3Dnew xmp.NativePlayerError("Handling error.",ve,this,ze);}=0A=
this.setError(null,xe);}=0A=
catch(e){this.setError("Handling =
error.",e);}};xmp.WindowsMediaPlugInPlayer.prototype.onTrigger=3Dfunction=
(Ae,Be){try{this.setTrigger(Ae,Be);}=0A=
catch(e){this.setError("Handling =
trigger.",e);}};xmp.WindowsMediaPlugInPlayer.prototype.createCallbackMeth=
od=3Dfunction(Ce){return =
xmp.escapeHtml(this.getCallbackMethod(Ce),false,false);};xmp.WindowsMedia=
Utility=3Dfunction(){xmp.WINDOWS_MEDIA_PLAY=3D"play";xmp.WINDOWS_MEDIA_PA=
USE=3D"pause";xmp.WINDOWS_MEDIA_STOP=3D"stop";xmp.WINDOWS_MEDIA_REWIND=3D=
"fastReverse";xmp.WINDOWS_MEDIA_FAST_FORWARD=3D"fastForward";xmp.WINDOWS_=
MEDIA_SEEK=3D"currentPosition";return{getCommand:function(De){if(!this.co=
mmands){this.commands=3D{};this.commands[xmp.PLAY]=3Dxmp.WINDOWS_MEDIA_PL=
AY;this.commands[xmp.PAUSE]=3Dxmp.WINDOWS_MEDIA_PAUSE;this.commands[xmp.S=
TOP]=3Dxmp.WINDOWS_MEDIA_STOP;this.commands[xmp.REWIND]=3Dxmp.WINDOWS_MED=
IA_REWIND;this.commands[xmp.FAST_FORWARD]=3Dxmp.WINDOWS_MEDIA_FAST_FORWAR=
D;this.commands[xmp.SEEKABLE]=3Dxmp.WINDOWS_MEDIA_SEEK;this.commands[xmp.=
FULLSCREEN]=3Dxmp.FULLSCREEN.toLowerCase();}=0A=
return =
this.commands[De];},getErrorCodeDesc:function(Ee){this.initConnectionErro=
rCodes();return((this.connectionErrorCodes[Ee])?this.connectionErrorCodes=
[Ee]:Ee);},isConnectionError:function(Fe){this.initConnectionErrorCodes()=
;return((this.connectionErrorCodes[Fe])?true:false);},initConnectionError=
Codes:function(){if(!this.connectionErrorCodes){this.connectionErrorCodes=
=3D{};this.connectionErrorCodes[-1072885352]=3D"NS_E_WMP_SERVER_INACCESSI=
BLE =
(0xC00D1198)";this.connectionErrorCodes[-1072885353]=3D"NS_E_WMP_CANNOT_F=
IND_FILE =
(0xC00D1197)";this.connectionErrorCodes[-1072885325]=3D"NS_E_WMP_SERVER_N=
OT_RESPONDING =
(0xC00D11B3)";this.connectionErrorCodes[-1072885328]=3D"NS_E_WMP_SERVER_U=
NAVAILABLE =
(0xC00D11B0)";this.connectionErrorCodes[-1072885322]=3D"NS_E_WMP_NETWORK_=
FIREWALL =
(0xC00D11B6)";this.connectionErrorCodes[-1072885320]=3D"NS_E_WMP_PROXY_CO=
NNECT_TIMEOUT =
(0xC00D11B8)";this.connectionErrorCodes[-1072885312]=3D"NS_E_WMP_NETWORK_=
ERROR =
(0xC00D11C0)";this.connectionErrorCodes[-1072885311]=3D"NS_E_WMP_CONNECT_=
TIMEOUT =
(0xC00D11C1)";this.connectionErrorCodes[-1072885309]=3D"NS_E_WMP_SERVER_D=
NS_TIMEOUT =
(0xC00D11C3)";this.connectionErrorCodes[-1072885308]=3D"NS_E_WMP_PROXY_NO=
T_FOUND (0xC00D11C4)";}}};}();
------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/video/xmp/xmp_playlistapi.js

// Turner XMP, Release Build, =A9 2007 Turner Broadcasting System, Inc. =
A Time Warner Company.  File: xmp_playlistapi, Version: 0.1.524.1663

xmp.createNamespace("xmp.playlistapi.internals");xmp.playlistapi.internal=
s.PatternDirective=3Dfunction(aa,ba,ca){xmp.validateArguments(arguments,[=
xmp.STRING_TYPE,xmp.OBJECT_TYPE,xmp.OBJECT_TYPE],"PatternDirective.ctor")=
;if(!xmp.isNonEmptyString(aa)){throw new =
xmp.util.internals.InvalidArgsError("Argument 'type' must be a non-empty =
string.");}=0A=
this._type=3Daa;this._metadataMap=3Dnew =
xmp.util.internals.MetadataMap(true);this._metadataMap._reInitialize(ba);=
this._parameters=3Dca;};xmp.playlistapi.internals.PatternDirective.protot=
ype.getType=3Dfunction(){return =
this._type;};xmp.playlistapi.internals.PatternDirective.prototype.getPara=
meterArray=3Dfunction(){return =
this._parameters;};xmp.playlistapi.internals.PatternDirective.prototype.g=
etMetadata=3Dfunction(da,ea){return =
this._metadataMap._get(da,ea);};xmp.playlistapi.internals.PatternDirectiv=
e.prototype._findNamedContentNode=3Dfunction(fa,ga,ha){var =
ia=3Dthis._findNamedContentNodeFromIterator(fa._getDataIterator(),ga,ha);=
if(ia=3D=3D=3Dnull){xmp.util.internals.CategoryLogger.create('PatternDire=
ctive').info('Did not find named content node: '+ha+', trying historical =
data.');ia=3Dthis._findNamedContentNodeFromIterator(fa._getHistoricalData=
Iterator(),ga,ha);}=0A=
return =
ia;};xmp.playlistapi.internals.PatternDirective.prototype._findNamedConte=
ntNodeFromIterator=3Dfunction(ja,ka,la){ja.first();var =
ma=3D(la=3D=3D=3D'@Content');while(ja.hasNext()){var =
na=3Dja.next();if(!na.isValid()){continue;}=0A=
if(na.isContentType()&&na.getNodeType()._getParent()._isContentCompositeT=
ype()){if(ma){if(na._getPatternAddress().isSibling(ka._getPatternAddress(=
),true)){return na;}}=0A=
else{if(na.getNodeType()._getParent().getId()=3D=3D=3Dla){var =
oa=3Dna._getPatternAddress().getParent();if(oa.isSibling(ka._getPatternAd=
dress(),true)){return na;}}}}}=0A=
return =
null;};xmp.createNamespace("xmp.playlistapi");xmp.playlistapi.AdPatternPl=
ayList=3Dfunction(pa,qa,ra,sa){xmp.validateArguments(arguments,[xmp.OBJEC=
T_TYPE,xmp.OBJECT_TYPE,xmp.OBJECT_TYPE,xmp.OBJECT_TYPE],"AdPatternPlayLis=
t.ctor");if(!pa||!qa||!ra){throw new =
xmp.util.internals.InvalidArgsError("One or more constructor arguments =
is null.");}=0A=
this._LOOK_AHEAD_AND_BEHIND_MIN=3D7;this._LOOK_AHEAD_AND_BEHIND_MAX=3D100=
;this._MAX_NODE_POOL_SIZE=3D50;this._logger=3Dnew =
xmp.util.internals.CategoryLogger('AdPatternPlayList');this._lockedForMod=
ification=3Dfalse;this._metadataMap=3Dnew =
xmp.util.internals.MetadataMap(true);this._listener=3Dpa;this._adPatternR=
ootNodeType=3Dnull;this._invariantRuleContextArray=3Dnull;this._ruleIdToF=
actoryMap=3D{};this._ruleIdToRuleMap=3D{};this._ruleSetRunContext=3Dnew =
xmp.playlistapi.RuleSetRunContext();this._lookAheadAndBehindCount=3Dthis.=
_calculateLookAheadAndBehind();this._internalPlayListArray=3D[];this._his=
toricalPlayListArray=3D[];this._lastNode=3Dnull;this._outStandingPlayable=
NodeArray=3D[];this._poolPlayableNodeArray=3D[];this._iteratator=3Dnew =
xmp.playlistapi.PlayListIterator(this);this._parameterMap=3Dnull;xmp.util=
.PlayableNode._staticInit();this._parameterMap=3Dxmp.playlistapi.internal=
s.ParameterMap.calcInitial(qa,sa);var ta=3Dnew =
xmp.playlistapi.internals.AdPatternBuilder(this._parameterMap);this._meta=
dataMap._reInitialize(ta._extractOptionalMetaData(qa));this._adPatternRoo=
tNodeType=3Dta._build(qa);this._invariantRuleContextArray=3Dta._buildRule=
ContextArray(ra,null);this._logger.info('Constructed =
AdPatternPlayList');};xmp.playlistapi.AdPatternPlayList.prototype.getMeta=
data=3Dfunction(ua,va){return =
this._metadataMap._get(ua,va);};xmp.playlistapi.AdPatternPlayList.prototy=
pe.setContentMetaResourceIds=3Dfunction(wa){try{for(var =
i=3D0;i<wa.length;i++){if(typeof wa[i]!=3D=3D'string'){throw new =
xmp.util.internals.InvalidArgsError("Argument =
'contentMetaResourceIdArray' must be an array of strings.");}}=0A=
this._checkLockedForModification();this._lockForModification();var =
xa=3Dnew =
xmp.playlistapi.internals.PlayListBuilder(this,this._lastNode,this._adPat=
ternRootNodeType,wa,this._listener);this._internalPlayListArray=3Dxa._get=
Output();}=0A=
finally{this._unlockForModification();}};xmp.playlistapi.AdPatternPlayLis=
t.prototype._getHistoricalDataIterator=3Dfunction(){var =
ya=3D[];ya=3Dya.concat(this._historicalPlayListArray);ya=3Dya.concat(this=
._internalPlayListArray);return(new =
xmp.playlistapi.internals.SimplePlayListIterator(ya));};xmp.playlistapi.A=
dPatternPlayList.prototype.getIterator=3Dfunction(){return =
this._iteratator;};xmp.playlistapi.AdPatternPlayList.prototype.getRuleIdA=
rray=3Dfunction(){var za=3D[];var Aa=3D{};for(var =
i=3D0;i<this._invariantRuleContextArray.length;i++){var =
Ba=3Dthis._invariantRuleContextArray[i].getId();if(!Aa[Ba]){Aa[Ba]=3DBa;z=
a.push(Ba);}}=0A=
this._getPatternRuleIdsHelper(this._adPatternRootNodeType,za,Aa);return =
za;};xmp.playlistapi.AdPatternPlayList.prototype.loadRuleFactoryArray=3Df=
unction(Ca){xmp.validateArguments(arguments,[xmp.OBJECT_TYPE],"AdPatternP=
layList.loadRuleFactoryArray");if(!Ca){throw new =
xmp.util.internals.InvalidArgsError("Argument 'ruleFactoryArray' cannot =
be null.");}=0A=
this._buildRuleIdToFactoryMap(Ca);if(this._logger.isDebugEnabled()){this.=
_logger.debug('Loaded rule =
factories.');}};xmp.playlistapi.AdPatternPlayList.prototype.getLookAheadN=
odeArray=3Dfunction(){return =
this._buildLookAheadArray();};xmp.playlistapi.AdPatternPlayList.prototype=
.getLookBehindNodeArray=3Dfunction(){return =
this._buildLookBehindArray();};xmp.playlistapi.AdPatternPlayList.prototyp=
e._getParameterMapInternal=3Dfunction(){return =
this._parameterMap;};xmp.playlistapi.AdPatternPlayList.prototype._findRul=
e=3Dfunction(Da){var Ea=3Dthis._ruleIdToRuleMap[Da];if(typeof =
Ea=3D=3D=3D"undefined"){var =
Fa=3Dthis._getFactory(Da);try{Ea=3DFa.createRule(Da);}=0A=
catch(e){throw =
this._createExtensionGuardException(e,'RuleFactory.createRule');}=0A=
this._ruleIdToRuleMap[Da]=3DEa;}=0A=
return =
Ea;};xmp.playlistapi.AdPatternPlayList.prototype._buildRuleIdToFactoryMap=
=3Dfunction(Ga){for(var i=3D0;i<Ga.length;i++){var Ha=3DGa[i];var =
Ia=3Dnull;try{Ia=3DHa.getCreatableRuleIds();}=0A=
catch(e){throw =
this._createExtensionGuardException(e,'RuleFactory.getCreatableRuleIds');=
}=0A=
for(var j=3D0;j<Ia.length;j++){var =
Ja=3DIa[j];if(!Ja||Ja.length=3D=3D=3D0){throw new =
xmp.playlistapi.internals.PlayListError("RuleFactory retured a rule ID =
that is null, undefined, or empty.");}=0A=
if(typeof this._ruleIdToFactoryMap[Ja]!=3D=3D"undefined"){throw new =
xmp.playlistapi.internals.PlayListError("Rule "+Ja+" found in more than =
one factory.");}=0A=
this._ruleIdToFactoryMap[Ja]=3DHa;}}=0A=
this._verifyRuleFactories();};xmp.playlistapi.AdPatternPlayList.prototype=
.addRuleFactory=3Dfunction(Ka,La){this._ruleIdToFactoryMap[Ka]=3DLa;};xmp=
.playlistapi.AdPatternPlayList.prototype._createExtensionGuardException=3D=
function(e,Ma){var Na=3D'Error occurred while invoking extension method: =
'+Ma;this._logger.warn(Na,e);Na+=3D', Error data: =
';Na+=3Dxmp.extractErrorMessage(e);return new =
xmp.playlistapi.internals.PlayListError(Na);};xmp.playlistapi.AdPatternPl=
ayList.prototype._calculateLookAheadAndBehind=3Dfunction(){var =
Oa=3Dxmp.util.SettingsManager.getInstance().getContextNode();var =
Pa=3DOa.getNodeForPath('BasePlayer');var Qa=3DPa.getInt('look ahead and =
behind =
count',this._LOOK_AHEAD_AND_BEHIND_MIN);if(Qa<this._LOOK_AHEAD_AND_BEHIND=
_MIN){Qa=3Dthis._LOOK_AHEAD_AND_BEHIND_MIN;}=0A=
else =
if(Qa>this._LOOK_AHEAD_AND_BEHIND_MAX){Qa=3Dthis._LOOK_AHEAD_AND_BEHIND_M=
AX;}=0A=
return =
Qa;};xmp.playlistapi.AdPatternPlayList.prototype._verifyRuleFactories=3Df=
unction(){this._verifyInvariantRuleFactories();this._verifyPlayableNodeTy=
peRuleFactoriesHelper(this._adPatternRootNodeType);};xmp.playlistapi.AdPa=
tternPlayList.prototype._verifyInvariantRuleFactories=3Dfunction(){for(va=
r i=3D0;i<this._invariantRuleContextArray.length;i++){var =
Ra=3Dthis._invariantRuleContextArray[i].getId();this._getFactory(Ra);}};x=
mp.playlistapi.AdPatternPlayList.prototype._verifyPlayableNodeTypeRuleFac=
toriesHelper=3Dfunction(Sa){if(Sa._isCompositeType()){var =
Ta=3DSa._getChildCount();for(var =
i=3D0;i<Ta;i++){this._verifyPlayableNodeTypeRuleFactoriesHelper(Sa._getCh=
ild(i));}}=0A=
else{var Ua=3DSa._getRuleContextArray();for(var =
j=3D0;j<Ua.length;j++){var =
Va=3DUa[j].getId();this._getFactory(Va);}}};xmp.playlistapi.AdPatternPlay=
List.prototype._getFactory=3Dfunction(Wa){var =
Xa=3Dthis._ruleIdToFactoryMap[Wa];if(!Xa){throw new =
xmp.playlistapi.internals.PlayListError("No factory defined for rule: =
"+Wa);}=0A=
return =
Xa;};xmp.playlistapi.AdPatternPlayList.prototype._getNextRuleFilteredPlay=
ableNode=3Dfunction(){var =
Ya=3Dnull;while(this._internalPlayListArray.length>0){var =
Za=3Dthis._internalPlayListArray.shift();this._historicalPlayListArray.pu=
sh(Za);if(this._safeRunRulesForNode(Za)){this._addToOutstandingArray(Za);=
Ya=3DZa;break;}=0A=
else{this._returnNodeToPool(Za);}}=0A=
if(Ya!=3D=3Dnull){this._lastNode=3DYa;}=0A=
return =
Ya;};xmp.playlistapi.AdPatternPlayList.prototype._safeRunRulesForNode=3Df=
unction($a){try{return this._runRulesForNode($a);}=0A=
catch(e){var ab=3D'Error occured running rules for node: =
'+xmp.util.PlayableNode.safeGetBestId($a);ab+=3D'\nNode will be treated =
AS IF A RULE FAILED, skipped.';this._logger.warn(ab,e);return =
false;}};xmp.playlistapi.AdPatternPlayList.prototype._runRulesForNode=3Df=
unction(bb){if(bb._isEmptySlot()){if(this._logger.isDebugEnabled()){this.=
_logger.debug('Node: '+bb.getBestId()+' IS AN EMPTY SLOT, FAILURE.');}=0A=
return false;}=0A=
var =
cb=3Dthis._buildRuleContextsForNode(bb);if(cb.length=3D=3D=3D0){if(this._=
logger.isDebugEnabled()){this._logger.debug('Node: '+bb.getBestId()+' =
HAS NO RULES, SUCCESS.');}=0A=
return true;}=0A=
this._ruleSetRunContext._initialize(bb);for(var =
i=3D0;i<cb.length;i++){var =
db=3Dcb[i];this._ruleSetRunContext._setCurrentRuleContext(db);var =
eb=3Dthis._findRule(db.getId());var =
fb=3Dfalse;try{fb=3Deb.isPlayable(this._ruleSetRunContext);}=0A=
catch(e){throw this._createExtensionGuardException(e,'Rule.isPlayable =
for rule: '+this._ruleSetRunContext.getCurrentRuleContext().getId());}=0A=
if(!fb){if(this._logger.isDebugEnabled()){this._logger.debug('Node: =
'+bb.getBestId()+', Rule ID: '+db.getId()+' FAILED.');}=0A=
return false;}=0A=
else{if(this._logger.isDebugEnabled()){this._logger.debug('Node: =
'+bb.getBestId()+', Rule ID: '+db.getId()+' SUCCEEDED.');}}}=0A=
if(this._logger.isDebugEnabled()){this._logger.debug('Node: =
'+bb.getBestId()+' ALL RULES SUCCEEDED.');}=0A=
return =
true;};xmp.playlistapi.AdPatternPlayList.prototype._buildLookAheadArray=3D=
function(){var gb=3D[];for(var =
i=3D0;i<this._lookAheadAndBehindCount;i++){if(i>=3D(this._internalPlayLis=
tArray.length)){break;}=0A=
gb.push(this._internalPlayListArray[i]);}=0A=
return =
gb;};xmp.playlistapi.AdPatternPlayList.prototype._buildLookBehindArray=3D=
function(){var =
hb=3D[];hb=3Dhb.concat(this._outStandingPlayableNodeArray).reverse();retu=
rn =
hb;};xmp.playlistapi.AdPatternPlayList.prototype._buildRuleContextsForNod=
e=3Dfunction(ib){var =
jb=3Dthis._getApplicableInvariantRuleContexts(ib.getNodeTypeName());jb=3D=
jb.concat(ib._getRuleArrayReference());return =
jb;};xmp.playlistapi.AdPatternPlayList.prototype._getApplicableInvariantR=
uleContexts=3Dfunction(kb){var lb=3D[];for(var =
i=3D0;i<this._invariantRuleContextArray.length;i++){var =
mb=3Dthis._invariantRuleContextArray[i];if(mb.isApplicable(kb)){lb.push(m=
b);}}=0A=
return =
lb;};xmp.playlistapi.AdPatternPlayList.prototype._addToOutstandingArray=3D=
function(nb){this._outStandingPlayableNodeArray.push(nb);while(this._outS=
tandingPlayableNodeArray.length>this._lookAheadAndBehindCount){this._retu=
rnNodeToPool(this._outStandingPlayableNodeArray.shift());}};xmp.playlista=
pi.AdPatternPlayList.prototype._getNodeFromPool=3Dfunction(){var =
ob=3Dnew xmp.util.PlayableNode();ob._init();return =
ob;};xmp.playlistapi.AdPatternPlayList.prototype._returnNodeToPool=3Dfunc=
tion(pb){this._poolPlayableNodeArray.push(pb);while(this._poolPlayableNod=
eArray.length>this._MAX_NODE_POOL_SIZE){var =
qb=3Dthis._poolPlayableNodeArray.shift();if(qb){qb._clear();}}};xmp.playl=
istapi.AdPatternPlayList.prototype._createNode=3Dfunction(){return =
this._getNodeFromPool();};xmp.playlistapi.AdPatternPlayList.prototype._in=
itializeNode=3Dfunction(rb){try{this._listener.handleInitializePlayableNo=
de(rb);}=0A=
catch(e){throw =
this._createExtensionGuardException(e,'PlayListListener.handleInitializeP=
layableNode');}};xmp.playlistapi.AdPatternPlayList.prototype._lockForModi=
fication=3Dfunction(){this._lockedForModification=3Dtrue;};xmp.playlistap=
i.AdPatternPlayList.prototype._unlockForModification=3Dfunction(){this._l=
ockedForModification=3Dfalse;};xmp.playlistapi.AdPatternPlayList.prototyp=
e._checkLockedForModification=3Dfunction(){if(this._lockedForModification=
){throw new xmp.playlistapi.internals.PlayListError("Cannot modify =
playlist while it is =
locked.");}};xmp.playlistapi.AdPatternPlayList.prototype._getPatternRuleI=
dsHelper=3Dfunction(sb,tb,ub){if(sb._isCompositeType()){var =
vb=3Dsb._getChildCount();for(var i=3D0;i<vb;i++){var =
wb=3Dsb._getChild(i);this._getPatternRuleIdsHelper(wb,tb,ub);}}=0A=
else{var xb=3Dsb._getRuleContextArray();for(var =
j=3D0;j<xb.length;j++){var =
yb=3Dxb[j].getId();if(!ub[yb]){ub[yb]=3Dyb;tb.push(yb);}}}};xmp.createNam=
espace("xmp.playlistapi");xmp.playlistapi.AdResourceOverrideContext=3Dfun=
ction(zb,Ab){this._node=3Dzb;this._parameterMap=3DAb;};xmp.playlistapi.Ad=
ResourceOverrideContext.prototype.getNode=3Dfunction(){return =
this._node;};xmp.playlistapi.AdResourceOverrideContext.prototype.addResou=
rce=3Dfunction(Bb){this._node.setMetaResource(Bb);};xmp.playlistapi.AdRes=
ourceOverrideContext.prototype.getResource=3Dfunction(Cb){return =
this._node.getMetaResource(Cb);};xmp.playlistapi.AdResourceOverrideContex=
t.prototype.copyMetaResourceBundleRefFrom=3Dfunction(Db){this._node.reSet=
MetaResourceBundle(Db.getMetaResourceBundle());};xmp.playlistapi.AdResour=
ceOverrideContext.prototype.copyMetaResourceBundleRefTo=3Dfunction(Eb){Eb=
.reSetMetaResourceBundle(this._node.getMetaResourceBundle());};xmp.playli=
stapi.AdResourceOverrideContext.prototype.expandString=3Dfunction(Fb){ret=
urn =
this._parameterMap.expandString(Fb);};xmp.playlistapi.AdResourceOverrideC=
ontext.prototype.getNodeAssociatedResourceBundleType=3Dfunction(){return =
this._node.getAssociatedResourceBundleType();};xmp.playlistapi.AdResource=
OverrideContext.prototype.setNodeAssociatedResourceBundleType=3Dfunction(=
Gb){this._node.setAssociatedResourceBundleType(Gb);};xmp.createNamespace(=
"xmp.playlistapi");xmp.playlistapi.PlayListIterator=3Dfunction(Hb){this._=
playList=3DHb;this._currentNode=3Dnull;this._initialized=3Dfalse;this._ca=
nAdvance=3Dtrue;};xmp.playlistapi.PlayListIterator.prototype.first=3Dfunc=
tion(){this._initialized=3Dtrue;this._canAdvance=3Dtrue;};xmp.playlistapi=
.PlayListIterator.prototype.next=3Dfunction(){if(!this.hasNext()){throw =
new xmp.playlistapi.internals.PlayListError("Cannot call next if there =
are no more items to be returned, call 'hasNext' method to check.");}=0A=
this._canAdvance=3Dtrue;return =
this._currentNode;};xmp.playlistapi.PlayListIterator.prototype.hasNext=3D=
function(){this._checkInitialized();if(this._canAdvance){this._currentNod=
e=3Dthis._getNextCore();this._canAdvance=3Dfalse;}=0A=
return(this._currentNode!=3D=3Dnull);};xmp.playlistapi.PlayListIterator.p=
rototype._getNextCore=3Dfunction(){try{this._playList._checkLockedForModi=
fication();this._playList._lockForModification();return =
this._playList._getNextRuleFilteredPlayableNode();}=0A=
finally{this._playList._unlockForModification();}};xmp.playlistapi.PlayLi=
stIterator.prototype._checkInitialized=3Dfunction(){if(!this._initialized=
){throw new xmp.playlistapi.internals.PlayListError("Iterator not =
initialized, call 'first' =
method.");}};xmp.createNamespace("xmp.playlistapi");xmp.playlistapi.Playa=
bleNodeType=3Dfunction(Ib,id,Jb){xmp.validateArguments(arguments,[xmp.OBJ=
ECT_TYPE,xmp.STRING_TYPE,xmp.STRING_TYPE],"PlayableNodeType.ctor");if(!xm=
p.isNonEmptyString(id)||!xmp.isNonEmptyString(Jb)){throw new =
xmp.util.internals.InvalidArgsError("PlayableNodeType requires non-empty =
'id' and 'typeName'.");}=0A=
this._typeName=3DJb;this._parent=3Dnull;this._id=3Did;this._directive=3Dn=
ull;this._dataObject=3DIb;};xmp.playlistapi.PlayableNodeType.getBaseNodeT=
ypeName=3Dfunction(Kb){if(!xmp.playlistapi.PlayableNodeType._typeMapNode)=
{var =
Lb=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode();xmp.pl=
aylistapi.PlayableNodeType._typeMapNode=3DLb.getNodeForPath('nodeTypeMap'=
);}=0A=
var =
Mb=3Dxmp.playlistapi.PlayableNodeType._typeMapNode.getNodeForPath(Kb);var=
 Nb=3DMb.getString('baseType','DEFAULT');return =
Nb;};xmp.playlistapi.PlayableNodeType.prototype.getTypeName=3Dfunction(){=
return =
this._typeName;};xmp.playlistapi.PlayableNodeType.prototype.getId=3Dfunct=
ion(){return =
this._id;};xmp.playlistapi.PlayableNodeType.prototype.getDataObject=3Dfun=
ction(){return =
this._dataObject;};xmp.playlistapi.PlayableNodeType.prototype.getMetadata=
=3Dfunction(Ob,Pb){return =
null;};xmp.playlistapi.PlayableNodeType.prototype._getChildCount=3Dfuncti=
on(){return =
0;};xmp.playlistapi.PlayableNodeType.prototype._getParent=3Dfunction(){re=
turn =
this._parent;};xmp.playlistapi.PlayableNodeType.prototype._isCompositeTyp=
e=3Dfunction(){return =
false;};xmp.playlistapi.PlayableNodeType.prototype._isContentCompositeTyp=
e=3Dfunction(){return =
false;};xmp.playlistapi.PlayableNodeType.prototype.isContentType=3Dfuncti=
on(){var =
Qb=3Dxmp.playlistapi.PlayableNodeType.getBaseNodeTypeName(this.getTypeNam=
e());return =
Qb=3D=3D=3D'Content';};xmp.playlistapi.PlayableNodeType.prototype.isAdTyp=
e=3Dfunction(){var =
Rb=3Dxmp.playlistapi.PlayableNodeType.getBaseNodeTypeName(this.getTypeNam=
e());return =
Rb=3D=3D=3D'Ad';};xmp.playlistapi.PlayableNodeType.prototype.isPromoType=3D=
function(){var =
Sb=3Dxmp.playlistapi.PlayableNodeType.getBaseNodeTypeName(this.getTypeNam=
e());return =
Sb=3D=3D=3D'Promo';};xmp.playlistapi.PlayableNodeType.prototype._setParen=
t=3Dfunction(Tb){this._parent=3DTb;};xmp.playlistapi.PlayableNodeType.pro=
totype._handlePostBuild=3Dfunction(){};xmp.playlistapi.PlayableNodeType.p=
rototype._setDirective=3Dfunction(Ub){this._directive=3DUb;};xmp.playlist=
api.PlayableNodeType.prototype._getDirective=3Dfunction(){return =
this._directive;};xmp.createNamespace("xmp.playlistapi");xmp.playlistapi.=
ResouceBundle=3Dfunction(){xmp.playlistapi.ResouceBundle.ctor.call(this);=
this._map=3D{};};xmp.DERIVE_CLASS(xmp.util.Loadable,xmp.playlistapi.Resou=
ceBundle);xmp.playlistapi.ResouceBundle.prototype.setMetaResource=3Dfunct=
ion(Vb){if(this.getMetaResource(Vb.getType())!=3D=3Dnull){throw new =
xmp.util.internals.InvalidArgsError('Node type already has a resource of =
type: '+Vb.getType());}=0A=
this._map[Vb.getType()]=3DVb;};xmp.playlistapi.ResouceBundle.prototype.ge=
tMetaResource=3Dfunction(Wb){var =
Xb=3Dthis._map[Wb];return(Xb)?Xb:null;};xmp.playlistapi.ResouceBundle.pro=
totype.getResourceTypes=3Dfunction(){return =
xmp.MapIterator.extractKeys(this._map);};xmp.playlistapi.ResouceBundle.pr=
ototype.getCount=3Dfunction(){return(this.getResourceTypes().length);};xm=
p.playlistapi.ResouceBundle.prototype.clone=3Dfunction(){var Yb=3Dnew =
xmp.playlistapi.ResouceBundle();for(var =
Zb=3Dxmp.MapIterator.create(this._map);Zb.hasNext();Zb.next()){var =
$b=3DZb.currentKey();var =
ac=3Dthis.getMetaResource($b);Yb.setMetaResource(ac._clone());}=0A=
return =
Yb;};xmp.playlistapi.ResouceBundle.prototype.getLoadableId=3Dfunction(){r=
eturn'ResouceBundle';};xmp.playlistapi.ResouceBundle.prototype.getErrorCo=
unt=3Dfunction(){var bc=3Dthis.getResourceTypes();var cc=3D0;for(var =
i=3D0;i<bc.length;i++){var dc=3Dbc[i];var =
ec=3Dthis.getMetaResource(dc);if(ec.isError()){cc++;}}=0A=
return =
cc;};xmp.createNamespace("xmp.playlistapi");xmp.playlistapi.Resource=3Dfu=
nction(id,fc,gc,hc){xmp.playlistapi.Resource.ctor.call(this);if(!gc){gc=3D=
{};}=0A=
if(!hc){hc=3D'default';}=0A=
xmp.validateArguments([id,fc,gc,hc],[xmp.STRING_TYPE,xmp.STRING_TYPE,xmp.=
OBJECT_TYPE,xmp.STRING_TYPE],"Resource.ctor");if(!(xmp.isNonEmptyString(i=
d)&&xmp.isNonEmptyString(fc)&&xmp.isNonEmptyString(hc))){throw new =
xmp.util.internals.InvalidArgsError("Parameters 'id' and 'type' and =
'dataType' must be non-empty strings.");}=0A=
this._id=3Did;this._type=3Dfc;this._dataType=3Dhc;this._metadataMap=3Dnew=
 =
xmp.util.internals.MetadataMap(false);this._metadataMap._reInitialize(gc)=
;this._companionAdId=3D-1;};xmp.DERIVE_CLASS(xmp.util.Loadable,xmp.playli=
stapi.Resource);xmp.playlistapi.Resource.prototype.getId=3Dfunction(){ret=
urn =
this._id;};xmp.playlistapi.Resource.prototype.setId=3Dfunction(id){this._=
id=3Did;};xmp.playlistapi.Resource.prototype.getType=3Dfunction(){return =
this._type;};xmp.playlistapi.Resource.prototype.getDataType=3Dfunction(){=
return =
this._dataType;};xmp.playlistapi.Resource.prototype.setDataType=3Dfunctio=
n(ic){this._dataType=3Dic;};xmp.playlistapi.Resource.prototype.getMetadat=
a=3Dfunction(jc,kc){return =
this._metadataMap._get(jc,kc);};xmp.playlistapi.Resource.prototype.setMet=
adata=3Dfunction(lc,mc){this._metadataMap._set(lc,mc);};xmp.playlistapi.R=
esource.prototype.removeMetadata=3Dfunction(nc){this._metadataMap._remove=
(nc);};xmp.playlistapi.Resource.prototype._clone=3Dfunction(){return new =
xmp.playlistapi.Resource(this._id,this._type,this._metadataMap._getCloned=
WrappedMetadata(),this._dataType);};xmp.playlistapi.Resource.prototype.ge=
tLoadableId=3Dfunction(){return =
this.getId();};xmp.playlistapi.Resource.prototype.getCompanionAdId=3Dfunc=
tion(){return =
this._companionAdId;};xmp.playlistapi.Resource.prototype.setCompanionAdId=
=3Dfunction(oc){this._companionAdId=3Doc;};xmp.createNamespace("xmp.playl=
istapi");xmp.playlistapi.RuleContext=3Dfunction(id,pc,qc,rc){xmp.validate=
Arguments(arguments,[xmp.STRING_TYPE,xmp.OBJECT_TYPE,xmp.OBJECT_TYPE,xmp.=
BOOLEAN_TYPE],"RuleContext.ctor");if(id=3D=3D=3Dnull||id.length=3D=3D=3D0=
){throw new xmp.util.internals.InvalidArgsError("RuleContext requires =
non-empty ID.");}=0A=
if(qc.length<1){throw new =
xmp.util.internals.InvalidArgsError("RuleContext at least one applicable =
type.");}=0A=
this._id=3Did;this._metadataMap=3Dnew =
xmp.util.internals.MetadataMap(rc);this._metadataMap._reInitialize(pc);th=
is._applicableTypeArray=3Dqc;};xmp.playlistapi.RuleContext.createDynamic=3D=
function(id,sc){return new =
xmp.playlistapi.RuleContext(id,sc,['dynamic'],true);};xmp.playlistapi.Rul=
eContext.prototype.getId=3Dfunction(){return =
this._id;};xmp.playlistapi.RuleContext.prototype.getMetadata=3Dfunction(t=
c,uc){return =
this._metadataMap._get(tc,uc);};xmp.playlistapi.RuleContext.prototype.isA=
pplicable=3Dfunction(vc){if(vc.toLowerCase()=3D=3D=3D'all'){return true;}=0A=
for(var =
i=3D0;i<this._applicableTypeArray.length;i++){if(this._applicableTypeArra=
y[i]=3D=3D=3Dvc){return true;}}=0A=
return =
false;};xmp.createNamespace("xmp.playlistapi");xmp.playlistapi.RuleSetRun=
Context=3Dfunction(){this._playableNode=3Dnull;this._currentRuleContext=3D=
null;};xmp.playlistapi.RuleSetRunContext.prototype.getPlayableNode=3Dfunc=
tion(){return =
this._playableNode;};xmp.playlistapi.RuleSetRunContext.prototype.getCurre=
ntRuleContext=3Dfunction(){return =
this._currentRuleContext;};xmp.playlistapi.RuleSetRunContext.prototype._i=
nitialize=3Dfunction(wc){this._playableNode=3Dwc;this._currentRuleContext=
=3Dnull;};xmp.playlistapi.RuleSetRunContext.prototype._setCurrentRuleCont=
ext=3Dfunction(xc){this._currentRuleContext=3Dxc;};xmp.createNamespace("x=
mp.playlistapi.internals");xmp.playlistapi.internals.AdPatternBuilder=3Df=
unction(yc){xmp.validateArguments(arguments,[xmp.OBJECT_TYPE],"AdPatternB=
uilder.ctor");this._logger=3Dnew =
xmp.util.internals.CategoryLogger('AdPatternBuilder');this._COMPOSITE_TYP=
E_ARRAY=3D['Composite','ContentComposite'];this._patternMap=3Dnull;this._=
parameterMap=3Dyc;};xmp.playlistapi.internals.AdPatternBuilder.prototype.=
_build=3Dfunction(zc){try{this._patternMap=3Dzc.patternMap;if(!this._isCo=
mposite(zc.root)){throw new =
xmp.playlistapi.internals.PlayListError("Root of ad pattern must have =
type of one of the following: "+this._COMPOSITE_TYPE_ARRAY.join(', '));}=0A=
var Ac=3Dthis._buildHelper(zc.root,true);zc=3Dnull;return Ac;}=0A=
catch(e){e.stack=3Dnull;var Bc=3Dnew =
xmp.baseplayer.ApplicationError(e,'badAdPattern','AdPatternPlayList',[{la=
bel:'details',text:xmp.extractErrorMessage(e)}]);this._logger.warn(Bc.mes=
sage,Bc);var Cc=3D"Error building Ad Pattern with memento data";throw =
new =
xmp.playlistapi.internals.PlayListError(Cc);}};xmp.playlistapi.internals.=
AdPatternBuilder.prototype._isComposite=3Dfunction(Dc){for(var =
i=3D0;i<this._COMPOSITE_TYPE_ARRAY.length;i++){if(Dc.type=3D=3D=3Dthis._C=
OMPOSITE_TYPE_ARRAY[i]){return true;}}=0A=
return =
false;};xmp.playlistapi.internals.AdPatternBuilder.prototype._buildHelper=
=3Dfunction(Ec,Fc){var Gc=3Dnull;if(this._isComposite(Ec)){var =
Hc=3D(typeof Ec.repeat=3D=3D=3D"number")?Ec.repeat:1;Gc=3Dnew =
xmp.playlistapi.internals[Ec.type+'PlayableNodeType'](Ec,(Fc?'/':this._ca=
lcId(Ec)),Ec.type,Ec.pattern,Hc);if(Gc._isDeferred()){Gc._setReadyToValid=
ate(false);}=0A=
else{var =
Ic=3Dthis._patternMap[Gc._getPatternName()];this._buildChildren(Gc,Ic);}}=0A=
else{Gc=3Dnew =
xmp.playlistapi.internals.RuleSetPlayableNodeType(Ec,this._calcId(Ec),Ec.=
type,this._buildRuleContextArray(Ec.rules,Ec.type),this._extractOptionalM=
etaData(Ec));this._extractOptionalResources(Ec,Gc);this._extractOptionalD=
irective(Ec,Gc);}=0A=
Gc._handlePostBuild();return =
Gc;};xmp.playlistapi.internals.AdPatternBuilder.prototype._calcId=3Dfunct=
ion(Jc){return(typeof(Jc.id)=3D=3D=3D'string')?Jc.id:Jc.type;};xmp.playli=
stapi.internals.AdPatternBuilder.prototype._extractOptionalDirective=3Dfu=
nction(Kc,Lc){var =
Mc=3Dxmp.playlistapi.internals.PatternDirectiveFactory.create(Kc);Lc._set=
Directive(Mc);};xmp.playlistapi.internals.AdPatternBuilder.prototype._ext=
ractOptionalResources=3Dfunction(Nc,Oc){if(typeof =
Nc.resources=3D=3D=3D'object'){for(var =
i=3D0;i<Nc.resources.length;i++){var =
Pc=3DNc.resources[i];Oc.setMetaResource(this._buildMetaResource(Pc));}}};=
xmp.playlistapi.internals.AdPatternBuilder.prototype._buildChildren=3Dfun=
ction(Qc,Rc){for(var i=3D0;i<Rc.length;i++){var =
Sc=3Dthis._buildHelper(Rc[i],false);Qc._addChild(Sc);}};xmp.playlistapi.i=
nternals.AdPatternBuilder.prototype._buildDeferredContentComposite=3Dfunc=
tion(Tc,Uc){this._buildChildren(Tc,Uc);Tc._setReadyToValidate(true);Tc._h=
andlePostBuild();};xmp.playlistapi.internals.AdPatternBuilder.prototype._=
buildRuleContextArray=3Dfunction(Vc,Wc){var Xc=3D[];if(typeof =
Vc=3D=3D=3D"object"){for(var =
i=3D0;i<Vc.length;i++){Xc.push(this._buildRuleContext(Vc[i],Wc));}}=0A=
return =
Xc;};xmp.playlistapi.internals.AdPatternBuilder.prototype._buildMetaResou=
rce=3Dfunction(Yc){return new =
xmp.playlistapi.Resource(this._parameterMap.expandStringAndFixSlashes(Yc.=
id),Yc.type,this._extractOptionalMetaData(Yc),'default');};xmp.playlistap=
i.internals.AdPatternBuilder.prototype._buildRuleContext=3Dfunction(Zc,$c=
){var ad=3D[];if($c!=3D=3Dnull){ad.push($c);}=0A=
else{if(typeof =
Zc.nodeTypes=3D=3D=3D"object"){ad=3Dad.concat(Zc.nodeTypes);}}=0A=
return new =
xmp.playlistapi.RuleContext(this._parameterMap.expandString(Zc.id),this._=
extractOptionalMetaData(Zc),ad,true);};xmp.playlistapi.internals.AdPatter=
nBuilder.prototype._extractOptionalMetaData=3Dfunction(bd){var =
cd=3D{};if(typeof bd.meta=3D=3D=3D"object"){for(var =
dd=3Dxmp.MapIterator.create(bd.meta);dd.hasNext();dd.next()){var =
ed=3Ddd.currentKey();var =
fd=3Dthis._parameterMap.expandString(dd.currentValue());cd[ed]=3Dfd;}}=0A=
return =
cd;};xmp.createNamespace("xmp.playlistapi.internals");xmp.playlistapi.int=
ernals.CompositePlayableNodeType=3Dfunction(gd,id,hd,jd,kd){xmp.validateA=
rguments(arguments,[xmp.OBJECT_TYPE,xmp.STRING_TYPE,xmp.STRING_TYPE,xmp.S=
TRING_TYPE,xmp.NUMBER_TYPE],"CompositePlayableNodeType.ctor");if(jd=3D=3D=
=3Dnull||jd.length=3D=3D=3D0){throw new =
xmp.util.internals.InvalidArgsError("CompositePlayableNodeType requires =
non-empty patternName.");}=0A=
if(kd<1){throw new =
xmp.util.internals.InvalidArgsError("CompositePlayableNodeType must have =
a repeat count of 1 or greater.");}=0A=
this._patternName=3Djd;this._repeatCount=3Dkd;this._children=3D[];xmp.pla=
ylistapi.internals.CompositePlayableNodeType.ctor.call(this,gd,id,hd);};x=
mp.DERIVE_CLASS(xmp.playlistapi.PlayableNodeType,xmp.playlistapi.internal=
s.CompositePlayableNodeType);xmp.playlistapi.internals.CompositePlayableN=
odeType.prototype._getRepeatCount=3Dfunction(){return =
this._repeatCount;};xmp.playlistapi.internals.CompositePlayableNodeType.p=
rototype._isDeferred=3Dfunction(){return(this._patternName.toLowerCase()=3D=
=3D=3D'deferred');};xmp.playlistapi.internals.CompositePlayableNodeType.p=
rototype._getPatternName=3Dfunction(){return =
this._patternName;};xmp.playlistapi.internals.CompositePlayableNodeType.p=
rototype._getChildCount=3Dfunction(){return =
this._children.length;};xmp.playlistapi.internals.CompositePlayableNodeTy=
pe.prototype._getChild=3Dfunction(ld){xmp.validateArguments(arguments,[xm=
p.NUMBER_TYPE],"CompositePlayableNodeType._getChild");return =
this._children[ld];};xmp.playlistapi.internals.CompositePlayableNodeType.=
prototype._addChild=3Dfunction(md){var =
nd=3Dthis._children.push(md);md._setParent(this);return =
nd;};xmp.playlistapi.internals.CompositePlayableNodeType.prototype._isCom=
positeType=3Dfunction(){return =
true;};xmp.playlistapi.internals.CompositePlayableNodeType.prototype._rem=
oveAllChildren=3Dfunction(){this._children=3D[];};xmp.createNamespace("xm=
p.playlistapi.internals");xmp.playlistapi.internals.ContentCompositePlaya=
bleNodeType=3Dfunction(od,id,pd,qd,rd){xmp.playlistapi.internals.ContentC=
ompositePlayableNodeType.ctor.call(this,od,id,pd,qd,rd);this._readyToVali=
date=3Dtrue;};xmp.DERIVE_CLASS(xmp.playlistapi.internals.CompositePlayabl=
eNodeType,xmp.playlistapi.internals.ContentCompositePlayableNodeType);xmp=
.playlistapi.internals.ContentCompositePlayableNodeType.prototype._setRea=
dyToValidate=3Dfunction(sd){this._readyToValidate=3Dsd;};xmp.playlistapi.=
internals.ContentCompositePlayableNodeType.prototype._handlePostBuild=3Df=
unction(){if(!this._readyToValidate){return;}=0A=
function throwContentChildException(){throw new =
xmp.playlistapi.internals.PlayListError("ContentCompositePlayableNodeType=
 must have one and only one node of type 'Content' (can have other leaf =
node types as well); cannot contain composite node types.");}=0A=
var td=3D-1;var ud=3Dthis._getChildCount();for(var i=3D0;i<ud;i++){var =
vd=3Dthis._getChild(i);if(vd._isCompositeType()){throwContentChildExcepti=
on();}=0A=
if(vd.isContentType()){if(td=3D=3D=3D-1){td=3Di;}=0A=
else{throwContentChildException();}}}=0A=
if(td=3D=3D=3D-1){throwContentChildException();}};xmp.playlistapi.interna=
ls.ContentCompositePlayableNodeType.prototype._isContentCompositeType=3Df=
unction(){return =
true;};xmp.createNamespace("xmp.playlistapi.internals");xmp.playlistapi.i=
nternals.DefaultAdDataPatternDirective=3Dfunction(wd,xd,yd){xmp.playlista=
pi.internals.DefaultAdDataPatternDirective.ctor.call(this,wd,xd,yd);};xmp=
.DERIVE_CLASS(xmp.playlistapi.internals.PatternDirective,xmp.playlistapi.=
internals.DefaultAdDataPatternDirective);xmp.playlistapi.internals.Defaul=
tAdDataPatternDirective.prototype.doDirective=3Dfunction(zd,Ad){var =
Bd=3Dthis.getMetadata('refId','');var =
Cd=3Dthis.getMetadata('defaultDataId','');if(Bd.length=3D=3D=3D0||Cd.leng=
th=3D=3D=3D0){throw new =
xmp.playlistapi.internals.PlayListError("Directive '"+this.getType()+"' =
requires metadata 'refId' and 'defaultDataId'.");}=0A=
var Dd=3Dthis._findNamedContentNode(zd,Ad,Bd);var =
Ed=3DDd.getPlayableData().getDataObject().adDataMap;if(typeof =
Ed!=3D=3D'object'){throw new =
xmp.playlistapi.internals.PlayListError("Did not find 'adDataMap' for =
content node: "+Dd.getBestId());}=0A=
var Fd=3DEd[Cd];if(typeof Fd!=3D=3D'object'){throw new =
xmp.playlistapi.internals.PlayListError("Did not find '"+Cd+"' in =
'adDataMap' for content node: "+Dd.getBestId());}=0A=
var =
Gd=3Dzd._getParameterMapInternal().clone();Gd.setOverrides(this.getParame=
terArray());Gd.addContextObject('video',Dd.getPlayableData().getDataObjec=
t());Gd.addContextObject('node',Ad.getNodeType().getDataObject());var =
Hd=3Dnew xmp.playlistapi.internals.AdPatternBuilder(Gd);if(typeof =
Fd.resources=3D=3D=3D'object'){for(var =
i=3D0;i<Fd.resources.length;i++){var =
Id=3DFd.resources[i];Ad.setMetaResource(Hd._buildMetaResource(Id));}}=0A=
var Jd=3DHd._extractOptionalMetaData(Fd);for(var =
Kd=3Dxmp.MapIterator.create(Jd);Kd.hasNext();Kd.next()){var =
Ld=3DKd.currentKey();var Md=3DKd.currentValue();Ad.setMetadata(Ld,Md);}=0A=
Ad.setMetadata('__DIRECTIVE_PARAMETER_MAP__',Gd);};xmp.createNamespace("x=
mp.playlistapi.internals");xmp.playlistapi.internals.NullPatternDirective=
=3Dfunction(){};xmp.playlistapi.internals.NullPatternDirective._flyWeight=
=3Dnew =
xmp.playlistapi.internals.NullPatternDirective();xmp.playlistapi.internal=
s.NullPatternDirective.getNull=3Dfunction(){return =
xmp.playlistapi.internals.NullPatternDirective._flyWeight;};xmp.playlista=
pi.internals.NullPatternDirective.prototype.getType=3Dfunction(){return'N=
ull';};xmp.playlistapi.internals.NullPatternDirective.prototype.doDirecti=
ve=3Dfunction(Nd,Od){};xmp.createNamespace("xmp.playlistapi.internals");x=
mp.playlistapi.internals.ParameterMap=3Dfunction(){this._logger=3Dnew =
xmp.util.internals.CategoryLogger('ParameterMap');this._map=3D{};this._co=
ntextObjectMap=3D{};};xmp.playlistapi.internals.ParameterMap.calcInitial=3D=
function(Pd,Qd){xmp.validateArguments(arguments,[xmp.OBJECT_TYPE,xmp.OBJE=
CT_TYPE],"ParameterMap.calcInitial");var Rd=3Dnew =
xmp.playlistapi.internals.ParameterMap();Rd.init(Pd);Rd.setOverrides(Qd);=
return =
Rd;};xmp.playlistapi.internals.ParameterMap.prototype.clone=3Dfunction(){=
var Sd=3Dnew =
xmp.playlistapi.internals.ParameterMap();Sd._cloneInternal(this._map);ret=
urn =
Sd;};xmp.playlistapi.internals.ParameterMap.prototype.init=3Dfunction(Td)=
{this._map=3Dthis._mapParameters((typeof =
Td.parameters=3D=3D=3D'object')?Td.parameters:[]);};xmp.playlistapi.inter=
nals.ParameterMap.prototype.setOverrides=3Dfunction(Ud){this._validatePar=
ameters(Ud);for(var i=3D0;i<Ud.length;i++){var p=3DUd[i];if(typeof =
this._map[p.name]=3D=3D=3D'undefined'){this._logger.warn('Pattern input =
parameter dropped, no default value in pattern: '+p.name);continue;}=0A=
this._map[p.name]=3Dp.value;}};xmp.playlistapi.internals.ParameterMap.pro=
totype.expandStringAndFixSlashes=3Dfunction(Vd){var Wd=3D'://';var =
Xd=3Dthis.expandString(Vd);var Yd=3D'';var =
Zd=3DXd;if(Xd.indexOf(Wd)>-1){var =
$d=3DXd.split(Wd);Yd=3D$d[0]+Wd;Zd=3D$d[1];}=0A=
while(Zd.indexOf('//')>-1){Zd=3DZd.replace(/\/\//g,'/');}=0A=
return =
Yd+Zd;};xmp.playlistapi.internals.ParameterMap.prototype.expandString=3Df=
unction(ae){if(typeof ae!=3D=3D'string'){return ae;}=0A=
if(ae.indexOf('${')!=3D=3D-1){var =
be=3Dfalse;if(ae.indexOf('$${')!=3D=3D-1){ae=3Dae.replace(/\$\$\{/g,'__PR=
OTECT_DOLLAR_ESCAPE__');be=3Dtrue;}=0A=
ae=3Dae.replace(/\$\{player./g,'${');for(var =
ce=3Dxmp.MapIterator.create(this._map);ce.hasNext();ce.next()){var =
de=3Dce.currentKey();var ee=3Dce.currentValue();var =
fe=3D'${'+de+'}';if(ae.indexOf(fe)!=3D=3D-1){var =
ge=3Dae.split(fe);ae=3Dge.join(ee);}}=0A=
ae=3Dthis._makeContextObjectSubs(ae);if(be){ae=3Dae.replace(/__PROTECT_DO=
LLAR_ESCAPE__/g,'${');}}=0A=
return =
ae;};xmp.playlistapi.internals.ParameterMap.prototype._makeContextObjectS=
ubs=3Dfunction(he){var ie=3D0;var je=3Dtrue;while(je){var =
ke=3Dhe.indexOf('${',ie);if(ke=3D=3D=3D-1){je=3Dfalse;break;}=0A=
var le=3Dhe.indexOf('}',ke+1);if(le=3D=3D=3D-1){je=3Dfalse;break;}=0A=
ie=3Dle+1;var me=3Dhe.substr(0,ke);var ne=3Dhe.substr(le+1);var =
oe=3Dhe.substr(ke+2,le-ke-2);var =
pe=3Doe.indexOf('.');if(pe=3D=3D=3D-1){continue;}=0A=
var qe=3Doe.substr(0,pe);var re=3Doe.substr(pe+1);var =
se=3Dthis._contextObjectMap[qe];if(!se){continue;}=0A=
var te=3Dnull;try{te=3Dxmp.util.JsonPath.evaluate(se,re);}=0A=
catch(e){te=3Dnull;this._logger.warn('Error evaluating JSON Path: =
'+re,e);}=0A=
if(te!=3D=3Dnull){var =
ue=3Dhe.length;he=3Dme+te+ne;ie+=3D(he.length-ue);}}=0A=
return =
he;};xmp.playlistapi.internals.ParameterMap.prototype.addContextObject=3D=
function(ve,we){this._contextObjectMap[ve]=3Dwe;};xmp.playlistapi.interna=
ls.ParameterMap.prototype._validateParameters=3Dfunction(xe){for(var =
i=3D0;i<xe.length;i++){var p=3Dxe[i];if(!((typeof =
p.name=3D=3D=3D'string')&&(p.name.length>0)&&(typeof =
p.value=3D=3D=3D'string'))){throw new =
xmp.playlistapi.internals.PlayListError("Parameters must have string =
'name and 'value' =
properties.");}}};xmp.playlistapi.internals.ParameterMap.prototype._mapPa=
rameters=3Dfunction(ye){this._validateParameters(ye);var ze=3D{};for(var =
i=3D0;i<ye.length;i++){var p=3Dye[i];ze[p.name]=3Dp.value;}=0A=
return =
ze;};xmp.playlistapi.internals.ParameterMap.prototype._cloneInternal=3Dfu=
nction(Ae){for(var =
Be=3Dxmp.MapIterator.create(Ae);Be.hasNext();Be.next()){var =
Ce=3DBe.currentKey();var =
De=3DBe.currentValue();this._map[Ce]=3DDe;}};xmp.createNamespace("xmp.pla=
ylistapi.internals");xmp.playlistapi.internals.PatternDirectiveFactory=3D=
function(){};xmp.playlistapi.internals.PatternDirectiveFactory._ctors=3Dn=
ull;xmp.playlistapi.internals.PatternDirectiveFactory.create=3Dfunction(E=
e){if(xmp.playlistapi.internals.PatternDirectiveFactory._ctors=3D=3D=3Dnu=
ll){xmp.playlistapi.internals.PatternDirectiveFactory._ctors=3D{};var =
Fe=3Dxmp.playlistapi.internals.PatternDirectiveFactory._ctors;Fe.defaultA=
dData=3Dxmp.playlistapi.internals.DefaultAdDataPatternDirective;}=0A=
if(typeof Ee.patternDirective=3D=3D=3D'object'){var =
Ge=3Dxmp.playlistapi.internals.PatternDirectiveFactory._ctors[Ee.patternD=
irective.type];if(Ge){var =
He=3DEe.patternDirective.parameters;He=3D(!He)?[]:He;var =
Ie=3DEe.patternDirective.meta;Ie=3D(!Ie)?{}:Ie;return new =
Ge(Ee.patternDirective.type,Ie,He);}=0A=
else{throw new xmp.util.internals.InvalidArgsError('Unknown directive =
type: '+Ee.patternDirective.type);}}=0A=
else{return =
xmp.playlistapi.internals.NullPatternDirective.getNull();}};xmp.createNam=
espace("xmp.playlistapi.internals");xmp.playlistapi.internals.PlayListAdd=
ress=3Dfunction(){this._array=3D[];};xmp.playlistapi.internals.PlayListAd=
dress.prototype.getLength=3Dfunction(){return =
this._array.length;};xmp.playlistapi.internals.PlayListAddress.prototype.=
clone=3Dfunction(){var Je=3Dnew =
xmp.playlistapi.internals.PlayListAddress();Je._cloneInternal(this._array=
);return =
Je;};xmp.playlistapi.internals.PlayListAddress.prototype._cloneInternal=3D=
function(Ke){this._array=3Dthis._array.concat(Ke);};xmp.playlistapi.inter=
nals.PlayListAddress.prototype.getAtIndex=3Dfunction(Le){return =
this._array[Le];};xmp.playlistapi.internals.PlayListAddress.prototype.shi=
ft=3Dfunction(){return =
this._array.shift();};xmp.playlistapi.internals.PlayListAddress.prototype=
.push=3Dfunction(Me){return =
this._array.push(Me);};xmp.playlistapi.internals.PlayListAddress.prototyp=
e.pop=3Dfunction(){return =
this._array.pop();};xmp.playlistapi.internals.PlayListAddress.prototype.g=
etParent=3Dfunction(){var Ne=3Dthis.clone();Ne.pop();return =
Ne;};xmp.playlistapi.internals.PlayListAddress.prototype.isSibling=3Dfunc=
tion(Oe,Pe){var Qe=3Dthis.getLength();if(Qe!=3D=3DOe.getLength()){return =
false;}=0A=
for(var i=3D0;i<Qe;i++){var Re=3Dthis.getAtIndex(i);var =
Se=3DOe.getAtIndex(i);if(i<(Qe-1)){if(!Re.isEqual(Se)){return false;}}=0A=
else{if(Pe){if(Re.getRepeatIndex()!=3D=3DSe.getRepeatIndex()){return =
false;}}}}=0A=
return =
true;};xmp.playlistapi.internals.PlayListAddress.prototype.asString=3Dfun=
ction(){var s=3D'';var Te=3Dthis.getLength();for(var i=3D0;i<Te;i++){var =
Ue=3Dthis.getAtIndex(i);s+=3DUe.asString();if(i!=3D=3D(Te-1)){s+=3D',';}}=0A=
return =
s;};xmp.createNamespace("xmp.playlistapi.internals");xmp.playlistapi.inte=
rnals.PlayListAddressPart=3Dfunction(Ve,We){this._repeatIndex=3DVe;this._=
childIndex=3DWe;};xmp.playlistapi.internals.PlayListAddressPart.prototype=
.getRepeatIndex=3Dfunction(){return =
this._repeatIndex;};xmp.playlistapi.internals.PlayListAddressPart.prototy=
pe.getChildIndex=3Dfunction(){return =
this._childIndex;};xmp.playlistapi.internals.PlayListAddressPart.prototyp=
e.isEqual=3Dfunction(Xe){return(Xe.getRepeatIndex()=3D=3D=3Dthis.getRepea=
tIndex()&&Xe.getChildIndex()=3D=3D=3Dthis.getChildIndex());};xmp.playlist=
api.internals.PlayListAddressPart.prototype.asString=3Dfunction(){return(=
'['+this._repeatIndex+','+this._childIndex+']');};xmp.createNamespace("xm=
p.playlistapi.internals");xmp.playlistapi.internals.PlayListBuilder=3Dfun=
ction(Ye,Ze,$e,af,bf){try{this._STATE_TRAVERSE_TO_ADDRESS=3D0;this._STATE=
_TRAVERSE_TO_NEXT=3D1;this._STATE_BUILD=3D2;this._logger=3Dnew =
xmp.util.internals.CategoryLogger('PlayListBuilder');this._playList=3DYe;=
this._playableDataProvider=3Dbf;this._contentMetaResourceIdArray=3D[];thi=
s._playListDataArray=3D[];this._traverseToPatternAddress=3Dnew =
xmp.playlistapi.internals.PlayListAddress();this._build_state=3Dthis._STA=
TE_TRAVERSE_TO_ADDRESS;this._assignPatternAddress=3Dnew =
xmp.playlistapi.internals.PlayListAddress();this._contentCompositeIdToCon=
tentNodeMap=3D{};this._parentIdCounter=3D0;this._contentMetaResourceIdArr=
ay=3Dthis._contentMetaResourceIdArray.concat(af);if(Ze!=3D=3Dnull){this._=
traverseToPatternAddress=3DZe._getPatternAddress().clone();}=0A=
if(this._traverseToPatternAddress.getLength()=3D=3D=3D0){this._build_stat=
e=3Dthis._STATE_BUILD;}=0A=
this._buildHelper($e,0);this._initializeNodes();}=0A=
catch(e){var cf=3D"Error building playlist with meta resource =
IDs";this._logger.warn(cf,e);cf+=3D", error =3D =
";cf+=3Dxmp.extractErrorMessage(e);throw new =
xmp.playlistapi.internals.PlayListError(cf);}};xmp.playlistapi.internals.=
PlayListBuilder.prototype._getOutput=3Dfunction(){var df=3D[];for(var =
i=3D0;i<this._playListDataArray.length;i++){var =
ef=3Dthis._playListDataArray[i];var ff=3Def[0];df.push(ff);}=0A=
if(this._logger.isDebugEnabled()){var gf=3D'Node output: ';for(var =
j=3D0;j<df.length;j++){gf+=3D('('+j.toString()+') =
');gf+=3Ddf[j].getBestId();gf+=3D('('+df[j]._getPatternAddress().asString=
()+')');if(j!=3D=3D(df.length-1)){gf+=3D', ';}}=0A=
this._logger.debug(gf);}=0A=
return =
df;};xmp.playlistapi.internals.PlayListBuilder.prototype._buildHelper=3Df=
unction(hf,jf){if(hf._isCompositeType()){var kf=3D0;var =
lf=3D0;if(this._build_state=3D=3D=3Dthis._STATE_TRAVERSE_TO_ADDRESS){var =
mf=3Dthis._traverseToPatternAddress.shift();kf=3Dmf.getRepeatIndex();lf=3D=
mf.getChildIndex();if(this._traverseToPatternAddress.getLength()=3D=3D=3D=
0){this._build_state=3Dthis._STATE_TRAVERSE_TO_NEXT;}}=0A=
if(this._build_state!=3D=3Dthis._STATE_TRAVERSE_TO_ADDRESS&&hf._isDeferre=
d()){hf=3Dthis._buildDeferredContentComposite(hf);}=0A=
var nf=3Dhf._getRepeatCount();var of=3Dhf._getChildCount();for(var =
pf=3Dkf;pf<nf;pf++){if(this._contentMetaResourceIdArray.length=3D=3D=3D0)=
{break;}=0A=
this._parentIdCounter++;if(this._build_state=3D=3D=3Dthis._STATE_BUILD){l=
f=3D0;}=0A=
for(var qf=3Dlf;qf<of;qf++){var =
rf=3Dhf._getChild(qf);this._assignPatternAddress.push(new =
xmp.playlistapi.internals.PlayListAddressPart(pf,qf));this._buildHelper(r=
f,this._parentIdCounter);this._assignPatternAddress.pop();}}}=0A=
else{if(this._build_state=3D=3D=3Dthis._STATE_BUILD){this._buildLeaf(hf,j=
f);}=0A=
else =
if(this._build_state=3D=3D=3Dthis._STATE_TRAVERSE_TO_NEXT){this._build_st=
ate=3Dthis._STATE_BUILD;}}};xmp.playlistapi.internals.PlayListBuilder.pro=
totype._buildLeaf=3Dfunction(sf,tf){var =
uf=3Dthis._playList._createNode();if(sf.isContentType()){if(this._content=
MetaResourceIdArray.length=3D=3D=3D0){uf._mutateEmptySlot(true);uf._setDa=
ta(new xmp.util.PlayableData('EMPTY_SLOT'));}=0A=
else{var =
vf=3Dthis._contentMetaResourceIdArray.shift();uf._linkData(this._playable=
DataProvider,vf);}}=0A=
uf._setNodeType(sf);uf._setPatternAddress(this._assignPatternAddress.clon=
e());if(uf.isContentType()&&uf.getNodeType()._getParent()._isContentCompo=
siteType()){uf.getPlayableData()._setCompositeMetaResourceId(uf.getPlayab=
leData().getMetaResourceId());this._contentCompositeIdToContentNodeMap[tf=
.toString()]=3Duf;}=0A=
this._playListDataArray.push([uf,tf]);};xmp.playlistapi.internals.PlayLis=
tBuilder.prototype._initializeNodes=3Dfunction(){for(var =
i=3D0;i<this._playListDataArray.length;i++){var =
wf=3Dthis._playListDataArray[i];var xf=3Dwf[0];var =
yf=3Dwf[1];try{xf.getNodeType()._getDirective().doDirective(this,xf);}=0A=
catch(e){var zf=3Dnew =
xmp.baseplayer.ApplicationError(e,'badAdPattern',null,[{label:'cause',tex=
t:e.message}]);this._logger.warn(zf.message,zf);}=0A=
if(xf.getPlayableData()=3D=3D=3Dnull){var =
Af=3Dxf.getMetaResource('primary');xf._setData(new =
xmp.util.PlayableData((Af)?Af.getId():''));}=0A=
if(!xf.isContentType()&&xf.getNodeType()._getParent()._isContentComposite=
Type()){this._fixContentCompositeSibling(xf,yf);}=0A=
if(!xf._isEmptySlot()&&!xf.getPlayableData().isError()){this._playList._i=
nitializeNode(xf);}}};xmp.playlistapi.internals.PlayListBuilder.prototype=
._fixContentCompositeSibling=3Dfunction(Bf,Cf){var =
Df=3Dthis._contentCompositeIdToContentNodeMap[Cf.toString()];if(Df._isEmp=
tySlot()){Bf._mutateEmptySlot(true);}=0A=
Bf.getPlayableData()._setCompositeMetaResourceId(Df.getPlayableData().get=
CompositeMetaResourceId());};xmp.playlistapi.internals.PlayListBuilder.pr=
ototype._buildDeferredContentComposite=3Dfunction(Ef){Ef._removeAllChildr=
en();if(this._contentMetaResourceIdArray.length>0){var =
Ff=3Dthis._contentMetaResourceIdArray[0];var =
Gf=3Dthis._playableDataProvider._getPlayableData(Ff);var =
Hf=3Dnull;if(Gf.isError()){Hf=3D[{type:'Content'}];}=0A=
else{Hf=3DGf.getDataObject().pattern;}=0A=
var If=3Dnew =
xmp.playlistapi.internals.AdPatternBuilder(this._playList._getParameterMa=
pInternal());If._buildDeferredContentComposite(Ef,Hf);}=0A=
return =
Ef;};xmp.playlistapi.internals.PlayListBuilder.prototype._getParameterMap=
Internal=3Dfunction(){return =
this._playList._getParameterMapInternal();};xmp.playlistapi.internals.Pla=
yListBuilder.prototype._getPlayListDataArrayLength=3Dfunction(){return =
this._playListDataArray.length;};xmp.playlistapi.internals.PlayListBuilde=
r.prototype._getPlayListDataArrayItemAtIndex=3Dfunction(Jf){var =
Kf=3Dthis._playListDataArray[Jf];return =
Kf[0];};xmp.playlistapi.internals.PlayListBuilder.prototype._getDataItera=
tor=3Dfunction(){return(new =
xmp.playlistapi.internals.PlayListBuilder.Iterator(this));};xmp.playlista=
pi.internals.PlayListBuilder.prototype._getHistoricalDataIterator=3Dfunct=
ion(){return =
this._playList._getHistoricalDataIterator();};xmp.playlistapi.internals.P=
layListBuilder.Iterator=3Dfunction(Lf){this._playListBuilder=3DLf;};xmp.p=
laylistapi.internals.PlayListBuilder.Iterator.prototype.getLength=3Dfunct=
ion(){return =
this._playListBuilder._getPlayListDataArrayLength();};xmp.playlistapi.int=
ernals.PlayListBuilder.Iterator.prototype.first=3Dfunction(){this._curInd=
ex=3D0;};xmp.playlistapi.internals.PlayListBuilder.Iterator.prototype.nex=
t=3Dfunction(){var =
Mf=3Dthis._playListBuilder._getPlayListDataArrayItemAtIndex(this._curInde=
x);this._curIndex++;return =
Mf;};xmp.playlistapi.internals.PlayListBuilder.Iterator.prototype.hasNext=
=3Dfunction(){return(this._curIndex<this.getLength());};xmp.createNamespa=
ce("xmp.playlistapi.internals");xmp.playlistapi.internals.PlayListError=3D=
function(Nf){this.name=3D"xmp.playlistapi.internals.PlayListError";this.m=
essage=3DNf;};xmp.DERIVE_CLASS(Error,xmp.playlistapi.internals.PlayListEr=
ror);xmp.createNamespace("xmp.playlistapi.internals");xmp.playlistapi.int=
ernals.RuleSetPlayableNodeType=3Dfunction(Of,id,Pf,Qf,Rf){xmp.validateArg=
uments(arguments,[xmp.OBJECT_TYPE,xmp.STRING_TYPE,xmp.STRING_TYPE,xmp.OBJ=
ECT_TYPE,xmp.OBJECT_TYPE],"RuleSetPlayableNodeType.ctor");this._metadataM=
ap=3Dnew =
xmp.util.internals.MetadataMap(true);this._metadataMap._reInitialize(Rf);=
this._ruleContextArray=3DQf;this._metaResourceBundle=3Dnew =
xmp.playlistapi.ResouceBundle();xmp.playlistapi.internals.RuleSetPlayable=
NodeType.ctor.call(this,Of,id,Pf);};xmp.DERIVE_CLASS(xmp.playlistapi.Play=
ableNodeType,xmp.playlistapi.internals.RuleSetPlayableNodeType);xmp.playl=
istapi.internals.RuleSetPlayableNodeType.prototype.setMetaResource=3Dfunc=
tion(Sf){this._metaResourceBundle.setMetaResource(Sf);};xmp.playlistapi.i=
nternals.RuleSetPlayableNodeType.prototype.getMetaResource=3Dfunction(Tf)=
{return =
this._metaResourceBundle.getMetaResource(Tf);};xmp.playlistapi.internals.=
RuleSetPlayableNodeType.prototype.getMetaResourceBundle=3Dfunction(){retu=
rn =
this._metaResourceBundle;};xmp.playlistapi.internals.RuleSetPlayableNodeT=
ype.prototype.getMetadata=3Dfunction(Uf,Vf){return =
this._metadataMap._get(Uf,Vf);};xmp.playlistapi.internals.RuleSetPlayable=
NodeType.prototype._getRuleContextArray=3Dfunction(){return =
this._ruleContextArray;};xmp.playlistapi.internals.RuleSetPlayableNodeTyp=
e.prototype._getMetadataMapRef=3Dfunction(){return =
this._metadataMap;};xmp.createNamespace("xmp.playlistapi.internals");xmp.=
playlistapi.internals.SimplePlayListIterator=3Dfunction(Wf){this._playLis=
tArray=3DWf;this._curIndex=3D-1;};xmp.playlistapi.internals.SimplePlayLis=
tIterator.prototype.getLength=3Dfunction(){return =
this._playListArray.length;};xmp.playlistapi.internals.SimplePlayListIter=
ator.prototype.first=3Dfunction(){this._curIndex=3D0;};xmp.playlistapi.in=
ternals.SimplePlayListIterator.prototype.next=3Dfunction(){var =
Xf=3Dthis._playListArray[this._curIndex];this._curIndex++;return =
Xf;};xmp.playlistapi.internals.SimplePlayListIterator.prototype.hasNext=3D=
function(){return(this._curIndex<this.getLength());};
------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/video/xmp/xmp_services.js

// Turner XMP, Release Build, =A9 2007 Turner Broadcasting System, Inc. =
A Time Warner Company.  File: xmp_services, Version: 0.1.524.1663

xmp.CONTROL_STREAM_NODE_PATH=3D"/PlayerContexts/Global/ControlStream";xmp=
.CONTROL_STREAM_SERVICE=3D"ControlStream";xmp.CONTROL_STREAM_MEDIA_TYPE=3D=
"Media Type";xmp.CONTROL_STREAM_ENVIRONMENT_LABEL=3D"Environment =
Label";xmp.CONTROL_STREAM_URL=3D"Url";xmp.CONTROL_STREAM_RECONNECT_RETRIE=
S=3D"Reconnect =
Retries";xmp.CONTROL_STREAM_RECONNECT_RETRY_INTERVAL=3D"Reconnect Retry =
Interval";xmp.CONTROL_STREAM_REFRESH_INTERVAL=3D"RefreshInterval";xmp.CON=
TROL_STREAM_START_DELAY=3D"Start =
Delay";xmp.CONTROL_STREAM_RESOURCE_TRANSPORT=3D"controlStreamResource";xm=
p.ENVIRONMENT_LABEL=3D"{{environment_label}}";xmp.RESOURCE_NAME=3D"name";=
xmp.RESOURCE_LABEL=3D"label";xmp.RESOURCE_WEB_URL=3D"webUrl";xmp.RESOURCE=
=3D"resource";xmp.WEB_RESOURCE_CACHING_CONTEXT=3D"retrieved from the =
web";xmp.TRIGGER_RESOURCE_CACHING_CONTEXT=3D"received from =
trigger";xmp.START_DELAY_TIMER=3D"StartDelay";xmp.REFRESH_RESOURCE_TIMER=3D=
"RefreshResources";xmp.RECONNECT_TIMER=3D"Reconnect";xmp.ControlStream=3D=
function(){this.listener=3Dnull;};xmp.ControlStream.prototype.init=3Dfunc=
tion(aa){try{this.logger=3Dnew =
xmp.util.internals.CategoryLogger(xmp.CONTROL_STREAM_SERVICE);this._valid=
ateListener(aa);this.listener=3Daa;this._resetReconnect();var =
ba=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode().getNod=
eForPath(xmp.CONTROL_STREAM_NODE_PATH);this._initProperties(ba);this.read=
er=3Dxmp.ControlStreamReaderFactory.createReader(xmp.util.internals.Brows=
erDetect.OS,this,this.mimeType);this._initResources(ba);this._start();}=0A=
catch(e){this._handleError("Initializing.",e);}};xmp.ControlStream.protot=
ype.fini=3Dfunction(){if(this.reader){this.reader.close();}=0A=
if(this.startDelayTimer){this.startDelayTimer.stop();this.startDelayTimer=
=3Dnull;}=0A=
if(this.refreshResourcesTimer){this.refreshResourcesTimer.stop();this.ref=
reshResourcesTimer=3Dnull;}=0A=
this._resetReconnect();};xmp.ControlStream.prototype._start=3Dfunction(){=
if(0=3D=3D=3Dthis.startDelay){this._handleStart();}=0A=
else{this.startDelayTimer=3Dthis._createTimer({id:xmp.START_DELAY_TIMER,i=
nterval:this.startDelay,handler:this._onDelayedStart});this.startDelayTim=
er.start();}};xmp.ControlStream.prototype._validateListener=3Dfunction(ca=
){if(!ca){throw new xmp.ControlStreamError("Validating =
listener.","Missing control stream listener.");}=0A=
if(false=3D=3D=3Dxmp.isDefined(ca.onControlStreamError)){throw new =
xmp.ControlStreamError("Validating listener.","Invalid control stream =
listener.  Missing \"onControlStreamError\" handler.");}=0A=
if(false=3D=3D=3Dxmp.isDefined(ca.onControlStreamTrigger)){throw new =
xmp.ControlStreamError("Validating listener.","Invalid control stream =
listener.  Missing \"onControlStreamTrigger\" handler.");}=0A=
if(false=3D=3D=3Dxmp.isDefined(ca.onControlStreamTriggerInit)){throw new =
xmp.ControlStreamError("Validating listener.","Invalid control stream =
listener.  Missing \"onControlStreamTriggerInit\" =
handler.");}};xmp.ControlStream.prototype._validateResource=3Dfunction(da=
){if(da.name.length=3D=3D=3D0){throw new =
xmp.ControlStreamError("Validating resource.","Missing control stream =
resource name.");}=0A=
if(da.label.length=3D=3D=3D0){throw new =
xmp.ControlStreamError("Validating resource.","Missing control stream =
resource label.");}=0A=
if(da.webUrl.length=3D=3D=3D0){throw new =
xmp.ControlStreamError("Validating resource.","Missing control stream =
\""+da.name+"\" web =
url.");}};xmp.ControlStream.prototype._initProperties=3Dfunction(ea){var =
fa=3Dea.getString(xmp.CONTROL_STREAM_MEDIA_TYPE,xmp.NO_DEFAULT_VALUE);if(=
fa.length=3D=3D=3D0){throw new xmp.ControlStreamError("Initializing =
properties.","Missing control stream media type.");}=0A=
var =
ga=3Dxmp.PlayerPolicy.getMediaType(fa);if(false=3D=3D=3Dxmp.isDefined(ga)=
){throw new xmp.ControlStreamError("Initializing properties.","Invalid =
control stream media type \""+fa+"\".");}=0A=
this.mimeType=3Dga.mimeType;this.url=3Dea.getString(xmp.CONTROL_STREAM_UR=
L,xmp.NO_DEFAULT_VALUE);if(this.url.length=3D=3D=3D0){throw new =
xmp.ControlStreamError("Initializing properties.","Missing control =
stream url.");}=0A=
this.reconnectRetryInterval=3Dea.getInt(xmp.CONTROL_STREAM_RECONNECT_RETR=
Y_INTERVAL,0);if(this.reconnectRetryInterval=3D=3D=3D0){throw new =
xmp.ControlStreamError("Initializing properties.","Missing control =
stream reconnect retry interval.");}=0A=
this.maxReconnectRetryCount=3Dea.getInt(xmp.CONTROL_STREAM_RECONNECT_RETR=
IES,0);this.startDelay=3Dea.getInt(xmp.CONTROL_STREAM_START_DELAY,0);var =
ha=3Dea.getNodeForPath(xmp.CONTROL_STREAM_REFRESH_INTERVAL);this.refreshI=
nterval=3Dha.getInt(xmp.util.internals.BrowserDetect.OS,0);if(this.refres=
hInterval=3D=3D=3D0){throw new xmp.ControlStreamError("Initializing =
properties.","Missing control stream refresh interval for the =
\""+xmp.util.internals.BrowserDetect.OS+"\" =
platform.");}};xmp.ControlStream.prototype._initResources=3Dfunction(ia){=
this.resources=3D{};var =
ja=3Dia.getString(xmp.CONTROL_STREAM_ENVIRONMENT_LABEL,xmp.NO_DEFAULT_VAL=
UE);if(ja.Length=3D=3D=3D0){throw new =
xmp.ControlStreamError("Initializing resources.","Missing control stream =
environment label.");}=0A=
var ka=3Dia.retrieveChildren();var la=3Dka.length;for(var =
i=3D0;i<la;i++){var =
ma=3Dka[i];if(ma.getName()=3D=3D=3Dxmp.CONTROL_STREAM_REFRESH_INTERVAL){c=
ontinue;}=0A=
var =
na=3Dma.getString(xmp.RESOURCE_LABEL,xmp.NO_DEFAULT_VALUE);na=3Dna.replac=
e(xmp.ENVIRONMENT_LABEL,ja);var =
oa=3D{initialized:false,name:ma.getString(xmp.RESOURCE_NAME,xmp.NO_DEFAUL=
T_VALUE),label:na,webUrl:ma.getString(xmp.RESOURCE_WEB_URL,xmp.NO_DEFAULT=
_VALUE),data:null};this._validateResource(oa);this.resources[oa.name]=3Do=
a;}};xmp.ControlStream.prototype._refreshResources=3Dfunction(pa){for(var=
 =
qa=3Dxmp.MapIterator.create(this.resources);qa.hasNext();qa.next()){this.=
_getResourceFromWeb(qa.currentValue(),pa);}};xmp.ControlStream.prototype.=
_getResourceFromWeb=3Dfunction(ra,sa){var =
ta=3D((true=3D=3D=3Dsa)?this._onInitResource:this._onResourceLoadedFromWe=
b);var ua=3Dnew =
xmp.util.Callback(xmp.CONTROL_STREAM_SERVICE,ta,this);ua.setMetadata(xmp.=
RESOURCE,ra);var =
va=3Dxmp.net.AjaxRequestManager.getInstance();va.request(xmp.CONTROL_STRE=
AM_SERVICE,ua,xmp.CONTROL_STREAM_RESOURCE_TRANSPORT,ra.webUrl,xmp.net.Con=
tentTypes.JSON,null);};xmp.ControlStream.prototype._onResourceLoadedFromW=
eb=3Dfunction(wa,xa){this._setWebResource(wa,xa,this.listener.onControlSt=
reamTrigger,true);};xmp.ControlStream.prototype._onInitResource=3Dfunctio=
n(ya,za){var =
Aa=3Dnull;try{Aa=3Dya.getMetadata(xmp.RESOURCE,{});this._setWebResource(y=
a,za,this.listener.onControlStreamTriggerInit,false);Aa.initialized=3Dtru=
e;}=0A=
catch(e){if(Aa){if(false=3D=3D=3DAa.initialized){try{this.listener.onCont=
rolStreamTriggerInit(Aa.name,null);}=0A=
catch(e2){}=0A=
Aa.initialized=3Dtrue;}}}};xmp.ControlStream.prototype._setResource=3Dfun=
ction(Ba,Ca,Da,Ea,Fa){this._validateResourceData(Ca,Da);if(true=3D=3D=3DE=
a&&false=3D=3D=3Dthis.checkResourceVersion(Ca,Da)){this.logger.info((new =
Date()).toString()+" - Ignoring resource \""+Ca.name+"\" "+Ba+".  =
Already up to date ("+Da.modifiedDate+").");return;}=0A=
Ca.data=3DDa;this.logger.info((new Date()).toString()+" - Resource =
\""+Ca.name+"\" =
"+Ba+".");Fa.call(this.listener,Ca.name,Da);};xmp.ControlStream.prototype=
.checkResourceVersion=3Dfunction(Ga,Ha){if(!Ga.data){return true;}=0A=
return(Ha.modifiedDate>Ga.data.modifiedDate);};xmp.ControlStream.prototyp=
e._validateResourceData=3Dfunction(Ia,Ja){if(!Ja){throw new =
xmp.ControlStreamError("Validating resource data.","NULL resource =
data.");}=0A=
if(!Ja.id||Ja.id.length=3D=3D=3D0){throw new =
xmp.ControlStreamError("Validating resource data.","Invalid control =
stream resource \""+Ia.name+"\" data.  Missing resource id.");}=0A=
if(Ia.label!=3D=3DJa.id){throw new xmp.ControlStreamError("Validating =
resource data.","Invalid control stream resource \""+Ia.name+"\" data id =
\""+Ja.id+"\".  Expected =
\""+Ia.label+"\".");}};xmp.ControlStream.prototype._createTimer=3Dfunctio=
n(Ka){var La=3Dnew xmp.util.Callback(Ka.id,Ka.handler,this);return new =
xmp.util.Timer(Ka.id,Ka.interval,-1,La);};xmp.ControlStream.prototype._ha=
ndleStart=3Dfunction(){this._connect();this._refreshResources(true);this.=
refreshResourcesTimer=3Dthis._createTimer({id:xmp.REFRESH_RESOURCE_TIMER,=
interval:this.refreshInterval,handler:this._onRefreshResources});this.ref=
reshResourcesTimer.start();};xmp.ControlStream.prototype._onDelayedStart=3D=
function(Ma,Na){try{this.startDelayTimer.stop();this.startDelayTimer=3Dnu=
ll;this._handleStart();}=0A=
catch(e){this._handleError("Starting after =
delay.",e);}};xmp.ControlStream.prototype._onRefreshResources=3Dfunction(=
Oa,Pa){try{this._refreshResources(false);}=0A=
catch(e){this._handleError("Refreshing all =
resources.",e);}};xmp.ControlStream.prototype._handleError=3Dfunction(Qa,=
e){var Ra=3De;if(false=3D=3D=3D(Ra instanceof =
xmp.ControlStreamError)){Ra=3Dnew =
xmp.ControlStreamError(((e.context)?e.context:Qa),((e.rawMessage)?e.rawMe=
ssage:e.message));Ra.setInnerError(e);}=0A=
this._logError(Ra);if(!this.listener){xmp.handleFatalError(Ra);}=0A=
else =
if(true=3D=3D=3Dxmp.isDefined(this.listener.onControlStreamError)){this.r=
eader.close();this.listener.onControlStreamError(Ra);}};xmp.ControlStream=
.prototype.onReaderError=3Dfunction(e){this._logError(e);this._reconnect(=
);};xmp.ControlStream.prototype.onReaderTrigger=3Dfunction(Sa,Ta){var =
Ua=3Dnull;try{Ua=3Dthis._getResourceFromLabel(Sa);this._validateTrigger(S=
a,Ua);var Va=3Dxmp.Base64.decode(Ta);var =
Wa=3Dthis._parseJson(Va);this._setResource(xmp.TRIGGER_RESOURCE_CACHING_C=
ONTEXT,Ua,Wa,false,this.listener.onControlStreamTrigger);this.logger.info=
(Va);}=0A=
catch(e){var Xa=3D"TRIGGER PROCESSING ERROR.";if(Ua){Xa=3D"TRIGGER =
\""+Ua.name+"\" PROCESSING ERROR.";}=0A=
this._logError(e);this._getResourceFromWeb(this._getResourceFromLabel(Sa)=
);}};xmp.ControlStream.prototype.onReaderConnected=3Dfunction(){this.logg=
er.info("Connected.");this._resetReconnect();};xmp.ControlStream.prototyp=
e.onReaderPlugInError=3Dfunction(e){this.listener.onPlugInError(e);};xmp.=
ControlStream.prototype.onReaderUnsupportedPlatformError=3Dfunction(e){th=
is.listener.onUnsupportedPlatformError(e);};xmp.ControlStream.prototype._=
reconnect=3Dfunction(){if(!this.reconnectTimer){this.reconnectRetryCount=3D=
0;this.reconnectTimer=3Dthis._createTimer({id:xmp.RECONNECT_TIMER,interva=
l:this.reconnectRetryInterval,handler:this._onReconnect});this.reconnectT=
imer.start();}};xmp.ControlStream.prototype._onReconnect=3Dfunction(Ya,Za=
){try{if(true=3D=3D=3Dthis.reader.isConnected()||(this.maxReconnectRetryC=
ount>0&&this.reconnectRetryCount=3D=3D=3Dthis.maxReconnectRetryCount)){if=
(this.reconnectRetryCount=3D=3D=3Dthis.maxReconnectRetryCount&&false=3D=3D=
=3Dthis.reader.isConnected()){this.logger.warn("Control stream reconnect =
retry maximum "+this.maxReconnectRetryCount+" limit reached...");}=0A=
this._resetReconnect();return;}=0A=
this.reconnectRetryCount++;this.logger.warn("Control stream reconnect =
retry =
"+this.reconnectRetryCount+"...");this._connect();this._refreshResources(=
false);}=0A=
catch(e){this._logError(e);}};xmp.ControlStream.prototype._getResourceFro=
mLabel=3Dfunction($a){for(var =
ab=3Dxmp.MapIterator.create(this.resources);ab.hasNext();ab.next()){var =
bb=3Dab.currentValue();if(bb.label=3D=3D=3D$a){return bb;}}=0A=
return =
null;};xmp.ControlStream.prototype._logError=3Dfunction(e){this.logger.wa=
rn(e.message);};xmp.ControlStream.prototype._connect=3Dfunction(){var =
cb=3Dthis.reader.open(this.url);if(cb){this.logger.info("Connecting to =
\""+cb+"\".");}};xmp.ControlStream.prototype._resetReconnect=3Dfunction()=
{if(this.reconnectTimer){this.reconnectTimer.stop();this.reconnectTimer=3D=
null;}=0A=
this.reconnectRetryCount=3D0;};xmp.ControlStream.prototype._validateTrigg=
er=3Dfunction(db,eb){if(!eb){throw new =
xmp.ControlStreamError("Validating trigger.","Missing control stream =
resource configuration for \""+db+"\" =
trigger.");}};xmp.ControlStream.prototype._parseJson=3Dfunction(fb){var =
gb=3Dxmp.trimString(fb);return =
this._parseJavaScript('('+gb+')');};xmp.ControlStream.prototype._parseJav=
aScript=3Dfunction(hb){return =
eval(hb);};xmp.ControlStream.prototype._setWebResource=3Dfunction(ib,jb,k=
b,lb){try{var =
mb=3Dib.getMetadata(xmp.RESOURCE,{});if(true=3D=3D=3Djb.isError()){throw =
new xmp.ControlStreamError("Initializing resources.","Unable to retrieve =
control stream resource \""+mb.name+"\" from url \""+mb.webUrl+"\". =
\n\n"+jb.makeReport());}=0A=
this._setResource(xmp.WEB_RESOURCE_CACHING_CONTEXT,mb,jb.getJsonObject(),=
true,kb);}=0A=
catch(e){var nb=3D"";if(e instanceof =
xmp.ControlStreamError){nb=3De.message;}=0A=
else{nb=3D"Unable to retrieve control stream resource \""+mb.name+"\" =
from url \""+mb.webUrl+"\". \n\n"+e.message;}=0A=
this.logger.warn(nb);if(false=3D=3D=3Dlb){throw =
e;}}};xmp.CONTROL_STREAM_READER=3D"ControlStreamReader";xmp.ControlStream=
Reader=3Dfunction(ob,pb){this.listener=3Dob;this.mimeType=3Dpb;this.conne=
cted=3Dfalse;this.registry=3Dnew =
xmp.PlayerModeRegistry();this.state=3Dthis.registry.findMode(xmp.FINI);xm=
p.NativePlayerRegistry.createGroup(this.getName(),this);this.player=3Dxmp=
.NativePlayerRegistry.findPlayerByMimeType(this.getName(),xmp.NULL_MIME_T=
YPE);this.viewManager=3Dnew =
xmp.ViewManager(this.getName());this.viewManager.setViewportConfig(xmp.NU=
LL_MIME_TYPE,xmp.DHTML_VIEWPORT);this.viewManager.setViewportConfig(this.=
mimeType,xmp.DHTML_VIEWPORT);};xmp.ControlStreamReader.prototype.open=3Df=
unction(qb){var =
rb=3Dthis.createPlayableNode(qb);if(false=3D=3D=3Dthis._initNativePlayer(=
rb)){this.state.open(this,rb);}=0A=
return =
rb.getURI();};xmp.ControlStreamReader.prototype.close=3Dfunction(){this.s=
tate.close(this);this.connected=3Dfalse;};xmp.ControlStreamReader.prototy=
pe.createPlayableNode=3Dfunction(sb){var tb=3Dnew =
xmp.util.PlayableNode();tb.setMimeTypes([this.mimeType]);tb.setURI(sb);tb=
.setStreamingMode(xmp.CONTROL_STREAMING_MODE);xmp.PlayerPolicy.apply(this=
,tb);return =
tb;};xmp.ControlStreamReader.prototype.onNativePlayerStateChange=3Dfuncti=
on(ub,vb){try{if(ub=3D=3D=3Dxmp.OPEN){this.state.play(this);this.connecte=
d=3Dtrue;this.listener.onReaderConnected();}=0A=
else if(ub=3D=3D=3Dxmp.ENDED){throw new =
xmp.ControlStreamReaderError("Handling native player state =
change.","Control stream ended.");}}=0A=
catch(e){this._handleError("Handling native player state =
change.",e);}};xmp.ControlStreamReader.prototype.onNativePlayerTrigger=3D=
function(wb,xb){try{this.listener.onReaderTrigger(wb,xb);}=0A=
catch(e){this._handleError("Forwarding trigger to =
listener.",e);}};xmp.ControlStreamReader.prototype.onNativePlayerError=3D=
function(e){this._handleError("Forwarding native player error to =
listener.",e);};xmp.ControlStreamReader.prototype.onNativePlayerTimelineC=
hange=3Dfunction(yb,zb){};xmp.ControlStreamReader.prototype.onNativePlaye=
rCreated=3Dfunction(Ab,Bb){if(this.state.type=3D=3D=3Dxmp.ERRORS){return;=
}=0A=
this.state.open(this,Bb.node);};xmp.ControlStreamReader.prototype.onNativ=
ePlayerExecuteCommand=3Dfunction(Cb,Db){return =
null;};xmp.ControlStreamReader.prototype.onViewportOpened=3Dfunction(Eb,F=
b){Fb.data.viewport=3DEb;Fb.player.create(Fb.data);this.player=3DFb.playe=
r;};xmp.ControlStreamReader.prototype.onCreateViewport=3Dfunction(Gb,Hb,I=
b,Jb){var =
Kb=3Ddocument.createElement("div");Kb.setAttribute(xmp.ID_ATTRIBUTE,Hb);K=
b.setAttribute(xmp.NAME_ATTRIBUTE,Hb);Kb.style.width=3D"1px";Kb.style.hei=
ght=3D"1px";xmp.insertDomChildBefore(document.body,Kb,document.body.first=
Child);return =
Kb;};xmp.ControlStreamReader.prototype.onDestroyViewport=3Dfunction(Lb,Mb=
){var Nb=3Dxmp.findDomElement(Mb);if(Nb){var =
Ob=3Dxmp.getDomParent(Nb);Ob.removeChild(Nb);}};xmp.ControlStreamReader.p=
rototype.onViewportCreated=3Dfunction(Pb,Qb){if(this.state.type=3D=3D=3Dx=
mp.ERRORS){return;}=0A=
if(Qb=3D=3D=3Dnull){return;}=0A=
this.viewManager.openViewport(this,this.getName(),Pb.mime_type,Qb);};xmp.=
ControlStreamReader.prototype.onViewportError=3Dfunction(e){this._handleE=
rror("Forwarding viewport error to =
listener.",e);};xmp.ControlStreamReader.prototype.onError=3Dfunction(Rb,e=
){this.listener.onReaderError(e);};xmp.ControlStreamReader.prototype.onPl=
ugInError=3Dfunction(e){this.listener.onReaderPlugInError(e);};xmp.Contro=
lStreamReader.prototype.onUnsupportedPlatformError=3Dfunction(e){this.lis=
tener.onReaderUnsupportedPlatformError(e);};xmp.ControlStreamReader.proto=
type._handleError=3Dfunction(Sb,e){this.connected=3Dfalse;this.state.erro=
r(this);this._setNullPlayer();var Tb=3De;if(false=3D=3D=3D(Tb instanceof =
xmp.ControlStreamReaderError)){Tb=3Dnew =
xmp.ControlStreamReaderError(((e.context)?e.context:Sb),((e.rawMessage)?e=
.rawMessage:e.message));Tb.setInnerError(e);}=0A=
this.listener.onReaderError(Tb);};xmp.ControlStreamReader.prototype._init=
NativePlayer=3Dfunction(Ub){try{this.state.close(this);var =
Vb=3DUb.getMimeType();var =
Wb=3Dxmp.NativePlayerRegistry.findPlayerByMimeType(this.getName(),Vb);if(=
!Wb){throw new xmp.InvalidMimeTypeError("Initializing native =
player..","Unable to find native player for MIME type \""+Vb+"\".");}=0A=
var =
Xb=3D{player:Wb,data:{group:this.getName(),viewport:null,volume:0,mute:tr=
ue,node:Ub,fullscreenEnabled:false,stretchToFit:false}};if(false=3D=3D=3D=
this.viewManager.openViewport(this,this.getName(),Ub.getMimeType(),Xb)){i=
f(Wb.type!=3D=3Dthis.player.type){Wb.create({group:this.getName(),viewpor=
t:this.viewManager.getActiveViewport(),volume:0,mute:true,node:Ub,fullscr=
eenEnabled:false,stretchToFit:false});this.player=3DWb;return true;}=0A=
return false;}=0A=
return true;}=0A=
catch(e){this._setNullPlayer();throw e;}=0A=
return =
false;};xmp.ControlStreamReader.prototype._setNullPlayer=3Dfunction(){var=
 =
Yb=3Dxmp.NativePlayerRegistry.findPlayerByMimeType(this.getName(),xmp.NUL=
L_MIME_TYPE);if(this.viewManager.getActiveViewport()=3D=3D=3Dnull){this.v=
iewManager.createViewport(this,this.getName(),xmp.NULL_MIME_TYPE,null);}=0A=
Yb.create({group:this.getName(),viewport:this.viewManager.getActiveViewpo=
rt(),volume:0,mute:true,node:null,fullscreenEnabled:false,stretchToFit:fa=
lse});this.player=3DYb;};xmp.ControlStreamReader.prototype.getName=3Dfunc=
tion(){return =
xmp.CONTROL_STREAM_READER;};xmp.ControlStreamReader.prototype._getPlayer=3D=
function(){return =
this.player;};xmp.ControlStreamReader.prototype._changeState=3Dfunction(Z=
b,$b){var =
ac=3Dthis.registry.findMode(Zb);this._transitionState(ac,$b);this.state=3D=
ac;};xmp.ControlStreamReader.prototype._transitionState=3Dfunction(bc,cc)=
{return =
bc.transition(this,cc,this.state);};xmp.ControlStreamReader.prototype.isC=
onnected=3Dfunction(){return =
this.connected;};xmp.ControlStreamReaderFactory=3Dfunction(){return{creat=
eReader:function(dc,ec,fc){if(dc=3D=3D=3Dxmp.WINDOWS_PLATFORM){return =
new xmp.ControlStreamReader(ec,fc);}=0A=
else{return new =
xmp.NullStreamReader(ec,fc);}}};}();xmp.NullStreamReader=3Dfunction(gc,hc=
){};xmp.NullStreamReader.prototype.open=3Dfunction(ic){return =
null;};xmp.NullStreamReader.prototype.close=3Dfunction(){};xmp.NullStream=
Reader.prototype.isConnected=3Dfunction(){return =
false;};xmp.IMAGE_RETRIEVER_NODE_PATH=3D"/PlayerContexts/Global/ImageRetr=
iever";xmp.IMAGE_RETRIEVER_SERVICE=3D"ImageRetriever";xmp.IMAGE_RETRIEVER=
_REFRESH_INTERVAL=3D"Refresh =
Interval";xmp.IMAGE_RETRIEVER_START_DELAY=3D"Start =
Delay";xmp.RESOURCE_NAME=3D"name";xmp.RESOURCE_URL=3D"url";xmp.ImageRetri=
ever=3Dfunction(){this.listener=3Dnull;};xmp.ImageRetriever.prototype.ini=
t=3Dfunction(jc){try{this.logger=3Dnew =
xmp.util.internals.CategoryLogger(xmp.IMAGE_RETRIEVER_SERVICE);this._vali=
dateListener(jc);this.listener=3Djc;this.cacheID=3D(Math.round(Math.rando=
m()*(10000000-1))+1);var =
kc=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode().getNod=
eForPath(xmp.IMAGE_RETRIEVER_NODE_PATH);this._initProperties(kc);this._in=
itResources(kc);this._start();}=0A=
catch(e){this._handleError("Initializing.",e);}};xmp.ImageRetriever.proto=
type.fini=3Dfunction(){if(this.startDelayTimer){this.startDelayTimer.stop=
();this.startDelayTimer=3Dnull;}=0A=
if(this.refreshResourcesTimer){this.refreshResourcesTimer.stop();this.ref=
reshResourcesTimer=3Dnull;}};xmp.ImageRetriever.prototype._start=3Dfuncti=
on(){if(0=3D=3D=3Dthis.startDelay){this._handleStart();}=0A=
else{this.startDelayTimer=3Dthis._createTimer({id:xmp.START_DELAY_TIMER,i=
nterval:this.startDelay,handler:this._onDelayedStart});this.startDelayTim=
er.start();}};xmp.ImageRetriever.prototype._handleStart=3Dfunction(){this=
.refreshResourcesTimer=3Dthis._createTimer({id:xmp.REFRESH_RESOURCE_TIMER=
,interval:this.refreshInterval,handler:this._onRefreshResources});this.re=
freshResourcesTimer.start();this._refreshResources();};xmp.ImageRetriever=
.prototype._validateListener=3Dfunction(lc){if(!lc){throw new =
xmp.ImageRetrieverError("Validating listener.","Missing image retriever =
listener.");}=0A=
if(false=3D=3D=3Dxmp.isDefined(lc.onRetrieveImage)){throw new =
xmp.ImageRetrieverError("Validating listener.","Invalid image retriever =
listener.  Missing \"onRetrieveImage\" handler.");}=0A=
if(false=3D=3D=3Dxmp.isDefined(lc.onImageRetrieverError)){throw new =
xmp.ImageRetrieverError("Validating listener.","Invalid image retriever =
listener.  Missing \"onImageRetrieverError\" =
handler.");}};xmp.ImageRetriever.prototype._validateResource=3Dfunction(m=
c){if(mc.name.length=3D=3D=3D0){throw new =
xmp.ImageRetrieverError("Validating resource.","Missing image retriever =
resource name.");}=0A=
if(mc.url.length=3D=3D=3D0){throw new =
xmp.ImageRetrieverError("Validating resource.","Missing image retriever =
\""+mc.name+"\" =
url.");}};xmp.ImageRetriever.prototype._initProperties=3Dfunction(nc){thi=
s.refreshInterval=3Dnc.getInt(xmp.IMAGE_RETRIEVER_REFRESH_INTERVAL,0);if(=
this.refreshInterval=3D=3D=3D0){throw new =
xmp.ImageRetrieverError("Initializing properties.","Missing image =
retriever refresh interval.");}=0A=
this.startDelay=3Dnc.getInt(xmp.IMAGE_RETRIEVER_START_DELAY,0);};xmp.Imag=
eRetriever.prototype._initResources=3Dfunction(oc){this.resources=3D{};va=
r pc=3Doc.retrieveChildren();var qc=3Dpc.length;for(var =
i=3D0;i<qc;i++){var rc=3Dpc[i];var =
sc=3D{name:rc.getString(xmp.RESOURCE_NAME,xmp.NO_DEFAULT_VALUE),url:rc.ge=
tString(xmp.RESOURCE_URL,xmp.NO_DEFAULT_VALUE)};this._validateResource(sc=
);this.resources[sc.name]=3Dsc;}};xmp.ImageRetriever.prototype._refreshRe=
sources=3Dfunction(){try{var tc=3Dxmp.getImageRoot();var =
uc=3Dthis._newCacheId();for(var =
vc=3Dxmp.MapIterator.create(this.resources);vc.hasNext();vc.next()){try{v=
ar wc=3Dvc.currentValue();var =
xc=3Dtc+wc.url+"?"+uc;this.listener.onRetrieveImage(wc.name,xc);this.logg=
er.info((new Date()).toString()+" - Image resource \""+wc.name+"\" =
retrieval refresh ("+uc+").");}=0A=
catch(e){var yc=3D"";if(e instanceof =
xmp.ImageRetrieverError){yc=3De.message;}=0A=
else{yc=3D"Error retrieving image resource \""+wc.name+"\" from url =
\""+xc+"\". \n\n"+e.message;}=0A=
this.logger.warn(yc);}}}=0A=
catch(e2){this._handleError("Refreshing all =
resources.",e2);}};xmp.ImageRetriever.prototype._createTimer=3Dfunction(z=
c){var Ac=3Dnew xmp.util.Callback(zc.id,zc.handler,this);return new =
xmp.util.Timer(zc.id,zc.interval,-1,Ac);};xmp.ImageRetriever.prototype._o=
nRefreshResources=3Dfunction(Bc,Cc){this._refreshResources();};xmp.ImageR=
etriever.prototype._handleError=3Dfunction(Dc,e){var =
Ec=3De;if(false=3D=3D=3D(Ec instanceof =
xmp.ImageRetrieverError)){Ec=3Dnew =
xmp.ImageRetrieverError(((e.context)?e.context:Dc),((e.rawMessage)?e.rawM=
essage:e.message));Ec.setInnerError(e);}=0A=
this._logError(Ec);if(!this.listener){xmp.handleFatalError(Ec);}=0A=
else =
if(true=3D=3D=3Dxmp.isDefined(this.listener.onImageRetrieverError)){this.=
listener.onImageRetrieverError(Ec);}};xmp.ImageRetriever.prototype._logEr=
ror=3Dfunction(e){this.logger.warn(e.message);};xmp.ImageRetriever.protot=
ype._onDelayedStart=3Dfunction(Fc,Gc){var =
Hc=3D"";try{this.startDelayTimer.stop();this.startDelayTimer=3Dnull;this.=
_handleStart();}=0A=
catch(e){this._handleError("Starting after =
delay.",e);}};xmp.ImageRetriever.prototype._newCacheId=3Dfunction(){retur=
n"cacheID=3D"+this.cacheID++;};xmp.ServiceRegistry=3Dfunction(){var =
Ic=3D{};return{getService:function(Jc){if(!Jc){throw new =
xmp.util.internals.InvalidArgsError("Missing service name.");}=0A=
if(!this.services){this.services=3D{};}=0A=
var Kc=3Dthis.services[Jc];if(Kc){return Kc;}=0A=
if(Jc=3D=3D=3Dxmp.CONTROL_STREAM_SERVICE){Kc=3Dnew =
xmp.ControlStream();this.services[Jc]=3DKc;return Kc;}=0A=
else if(Jc=3D=3D=3Dxmp.IMAGE_RETRIEVER_SERVICE){Kc=3Dnew =
xmp.ImageRetriever();this.services[Jc]=3DKc;return Kc;}=0A=
throw new xmp.ServiceError("Retrieving service.","Unable to create =
service \""+Jc+"\".");},init:function(Lc,Ic){var Mc=3DIc.length;for(var =
i=3D0;i<Mc;i++){this.getService(Ic[i]).init(Lc);}},fini:function(){for(va=
r Nc=3Dxmp.MapIterator.create(this.services);Nc.hasNext();Nc.next()){var =
Oc=3DNc.currentValue();Oc.fini();}}};}();xmp.ControlStreamError=3Dfunctio=
n(Pc,Qc){xmp.ControlStreamError.ctor.call(this,"ControlStreamError",Pc,Qc=
);};xmp.DERIVE_CLASS(xmp.util.internals.XMPError,xmp.ControlStreamError);=
xmp.ControlStreamReaderError=3Dfunction(Rc,Sc){xmp.ControlStreamReaderErr=
or.ctor.call(this,"ControlStreamReaderError",Rc,Sc);};xmp.DERIVE_CLASS(xm=
p.util.internals.XMPError,xmp.ControlStreamReaderError);xmp.ImageRetrieve=
rError=3Dfunction(Tc,Uc){xmp.ImageRetrieverError.ctor.call(this,"ImageRet=
rieverError",Tc,Uc);};xmp.DERIVE_CLASS(xmp.util.internals.XMPError,xmp.Im=
ageRetrieverError);
------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/video/xmp/xmp_baseplayer.js

// Turner XMP, Release Build, =A9 2007 Turner Broadcasting System, Inc. =
A Time Warner Company.  File: xmp_baseplayer, Version: 0.1.524.1663

xmp.createNamespace("xmp.baseplayer");xmp.baseplayer.Bootstrapper=3Dfunct=
ion(){this._boot_state=3D0;this._callbackObj=3Dnull;};xmp.baseplayer.Boot=
strapper.prototype.init=3Dfunction(){this._addSystemLoggerListeners();};x=
mp.baseplayer.Bootstrapper.prototype.isNew=3Dfunction(){return(this._boot=
_state=3D=3D=3D0);};xmp.baseplayer.Bootstrapper.prototype.isOk=3Dfunction=
(){return(this._boot_state=3D=3D=3D1);};xmp.baseplayer.Bootstrapper.proto=
type.bootStrap=3Dfunction(aa){this._boot_state=3D-1;this._callbackObj=3Da=
a;var cb=3Dnew =
xmp.util.Callback('Bootstrapper_bootStrap',this._onBootStrap,this);xmp.ne=
t.AjaxRequestManager.getInstance().init(cb);};xmp.baseplayer.Bootstrapper=
.prototype._onInternalUserDetectionInited=3Dfunction(ba){this._boot_state=
=3D1;this._callbackObj.handleBootstrappedInternal(null);};xmp.baseplayer.=
Bootstrapper.prototype._onBootStrap=3Dfunction(ca,da){if(da=3D=3D=3D'Read=
y'){this._boot_state=3D0;var ea=3Dnew =
xmp.util.Callback('Bootstrapper._onInternalUserDetectionInited',this._onI=
nternalUserDetectionInited,this);xmp.InternalUserDetection.getInstance().=
init(ea);}=0A=
else{this._boot_state=3D-1;this._callbackObj.handleBootstrappedInternal(d=
a);}};xmp.baseplayer.Bootstrapper.prototype._addSystemLoggerListeners=3Df=
unction(){var =
fa=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode();var =
ga=3Dfa.getNodeForPath('Instrumentation');var =
ha=3Dga.getBoolean('enabled',false);if(ha=3D=3D=3Dtrue){var =
ia=3Dga.getString('thresholdLevel','critical');var =
ja=3Dxmp.util.LogLevels.fromString(ia);var ka=3Dnew =
xmp.baseplayer.InstrumentationLoggerListener(ja);xmp.util.Logger.getInsta=
nce().addListener(ka);}=0A=
var la=3Dxmp.getQueryArgOpt('xmpErrorThreshold','fatal');var =
ma=3Dxmp.util.LogLevels.fromString(la);ma=3DMath.min(xmp.util.LogLevels.W=
ARN,ma);var na=3Dnew =
xmp.baseplayer.ErrorLoggerListener(ma);xmp.util.Logger.getInstance().addL=
istener(na);};xmp.baseplayer.Bootstrapper._cacheHtmlObjects=3Dfunction(){=
var =
oa=3Dxmp.util.SettingsManager.getInstance().getContextNode().getNodeForPa=
th('CacheSlates');var pa=3Doa.retrieveKeys();for(var =
i=3D0;i<pa.length;i++){var qa=3Dpa[i];var =
ra=3Doa.getString(qa,"").split(",");var =
sa=3Dxmp.baseplayer.MetaFileLoaderFactory.getInstance().create(qa);sa.set=
Ids(ra,null);sa.load();}};xmp.createNamespace("xmp.baseplayer.listeners")=
;xmp.baseplayer.listeners.AbstractNodeListener=3Dfunction(id,ta){xmp.vali=
dateArguments(arguments,[xmp.STRING_TYPE,xmp.OBJECT_TYPE],"AbstractNodeLi=
stener.ctor");if(id=3D=3D=3Dnull||id.length=3D=3D=3D0||ta=3D=3D=3Dnull){t=
hrow new xmp.util.internals.InvalidArgsError("The 'id' argument must be =
non-empty, "+"and the 'player' argument must be non-null.");}=0A=
this._id=3Did;this._player=3Dta;};xmp.baseplayer.listeners.AbstractNodeLi=
stener.prototype.getId=3Dfunction(){return =
this._id;};xmp.baseplayer.listeners.AbstractNodeListener.prototype.getPla=
yer=3Dfunction(){return =
this._player;};xmp.baseplayer.listeners.AbstractNodeListener.prototype.ca=
nUserControl=3Dfunction(ua){return =
true;};xmp.baseplayer.listeners.AbstractNodeListener.prototype.handleInit=
ialize=3Dfunction(va){};xmp.baseplayer.listeners.AbstractNodeListener.pro=
totype.handleDynamicRules=3Dfunction(wa){};xmp.baseplayer.listeners.Abstr=
actNodeListener.prototype.handleComplete=3Dfunction(xa){};xmp.baseplayer.=
listeners.AbstractNodeListener.prototype.canCompleteNow=3Dfunction(ya){re=
turn =
true;};xmp.baseplayer.listeners.AbstractNodeListener.prototype.handleComp=
leteAsynch=3Dfunction(za,Aa){};xmp.baseplayer.listeners.AbstractNodeListe=
ner.prototype.handleRender=3Dfunction(Ba){};xmp.baseplayer.listeners.Abst=
ractNodeListener.prototype.handleOpen=3Dfunction(Ca){};xmp.baseplayer.lis=
teners.AbstractNodeListener.prototype.handleConnecting=3Dfunction(Da){};x=
mp.baseplayer.listeners.AbstractNodeListener.prototype.handleConnected=3D=
function(Ea){};xmp.baseplayer.listeners.AbstractNodeListener.prototype.ha=
ndlePlay=3Dfunction(Fa){};xmp.baseplayer.listeners.AbstractNodeListener.p=
rototype.handleFirstFrameRendered=3Dfunction(Ga){};xmp.baseplayer.listene=
rs.AbstractNodeListener.prototype.handlePause=3Dfunction(Ha){};xmp.basepl=
ayer.listeners.AbstractNodeListener.prototype.handleStop=3Dfunction(Ia){}=
;xmp.baseplayer.listeners.AbstractNodeListener.prototype.handleRewind=3Df=
unction(Ja){};xmp.baseplayer.listeners.AbstractNodeListener.prototype.han=
dleFastForward=3Dfunction(Ka){};xmp.baseplayer.listeners.AbstractNodeList=
ener.prototype.handleSeekable=3Dfunction(La){};xmp.baseplayer.listeners.A=
bstractNodeListener.prototype.handleEnded=3Dfunction(Ma){};xmp.baseplayer=
.listeners.AbstractNodeListener.prototype.handleBuffering=3Dfunction(Na,O=
a){};xmp.baseplayer.listeners.AbstractNodeListener.prototype.handleTimeli=
neChange=3Dfunction(Pa,Qa,Ra){};xmp.baseplayer.listeners.AbstractNodeList=
ener.prototype.handleError=3Dfunction(Sa,e){};xmp.baseplayer.listeners.Ab=
stractNodeListener.prototype.handleOverrideAdResources=3Dfunction(Ta,Ua){=
};xmp.baseplayer.listeners.AbstractNodeListener.prototype.handleValidate=3D=
function(Va){};xmp.createNamespace("xmp.baseplayer.listeners");xmp.basepl=
ayer.listeners.DefaultBaseNodeListener=3Dfunction(Wa,Xa){xmp.baseplayer.l=
isteners.DefaultBaseNodeListener.ctor.call(this,Wa,Xa);this._bnl_logger=3D=
new =
xmp.util.internals.CategoryLogger('DefaultBaseNodeListener');};xmp.DERIVE=
_CLASS(xmp.baseplayer.listeners.AbstractNodeListener,xmp.baseplayer.liste=
ners.DefaultBaseNodeListener);xmp.baseplayer.listeners.DefaultBaseNodeLis=
tener.prototype.handleRender=3Dfunction(Ya){this.getPlayer().getMediaPlay=
er().open(Ya);};xmp.baseplayer.listeners.DefaultBaseNodeListener.prototyp=
e.handleEnded=3Dfunction(Za){this.getPlayer().advance();};xmp.baseplayer.=
listeners.DefaultBaseNodeListener.prototype.handleError=3Dfunction($a,e){=
this._bnl_logger.warn("Dropping node: "+$a.getBestId()+', error: =
'+xmp.extractErrorMessage(e));this.getPlayer().advance();};xmp.createName=
space("xmp.baseplayer.listeners");xmp.baseplayer.listeners.DefaultSlateNo=
deListener=3Dfunction(ab,bb){xmp.baseplayer.listeners.DefaultSlateNodeLis=
tener.ctor.call(this,ab,bb);};xmp.DERIVE_CLASS(xmp.baseplayer.listeners.D=
efaultBaseNodeListener,xmp.baseplayer.listeners.DefaultSlateNodeListener)=
;xmp.baseplayer.listeners.DefaultSlateNodeListener.prototype.handleInitia=
lize=3Dfunction(db){var =
eb=3Ddb.getMetadata("url","");if(eb.length>0){db.setURI(eb);}=0A=
db.setMimeType(xmp.DHTML_MIME_TYPE);};xmp.baseplayer.listeners.DefaultSla=
teNodeListener.prototype._findNextContentNode=3Dfunction(){var =
fb=3Dthis.getPlayer().getLookAheadNodeArray();for(var =
i=3D0;i<fb.length;i++){var gb=3Dfb[i];if(gb.isContentType()){return gb;}}=0A=
return =
null;};xmp.createNamespace("xmp.baseplayer.listeners.internal");xmp.basep=
layer.listeners.internal.TriggerNodeListener=3Dfunction(id,hb){xmp.basepl=
ayer.listeners.internal.TriggerNodeListener.ctor.call(this,id,hb);this.tr=
acked_midpoint=3Dfalse;this.live=3Dfalse;};xmp.DERIVE_CLASS(xmp.baseplaye=
r.listeners.AbstractNodeListener,xmp.baseplayer.listeners.internal.Trigge=
rNodeListener);xmp.baseplayer.listeners.internal.TriggerNodeListener.prot=
otype.handleRender=3Dfunction(ib){this.tracked_midpoint=3Dfalse;this.live=
=3D(ib.getStreamingMode()=3D=3D=3D'live');if(false=3D=3D=3Dthis.live){xmp=
.util.TriggerHelper.handleTrackRequest(ib,this.getPlayer());}=0A=
xmp.baseplayer.listeners.internal.TriggerNodeListener.base.handleRender.c=
all(this,ib);};xmp.baseplayer.listeners.internal.TriggerNodeListener.prot=
otype.handleOpen=3Dfunction(jb){this.tracked_midpoint=3Dfalse;this.live=3D=
(jb.getStreamingMode()=3D=3D=3D'live');xmp.util.TriggerHelper.handleTrack=
Start(jb,this.getPlayer());xmp.baseplayer.listeners.internal.TriggerNodeL=
istener.base.handleOpen.call(this,jb);};xmp.baseplayer.listeners.internal=
.TriggerNodeListener.prototype.handleEnded=3Dfunction(kb){if(false=3D=3D=3D=
this.live){xmp.util.TriggerHelper.handleTrackEnd(kb,this.getPlayer());}=0A=
xmp.baseplayer.listeners.internal.TriggerNodeListener.base.handleEnded.ca=
ll(this,kb);};xmp.baseplayer.listeners.internal.TriggerNodeListener.proto=
type.handleTimelineChange=3Dfunction(lb,mb,nb){xmp.baseplayer.listeners.i=
nternal.TriggerNodeListener.base.handleTimelineChange.call(this,lb,mb,nb)=
;if(false=3D=3D=3Dthis.live&&false=3D=3D=3Dthis.tracked_midpoint){if(nb=3D=
=3D=3D0){return;}=0A=
var =
ob=3D(((lb.getTimeLimitInSeconds()!=3D=3Dxmp.NO_TIME_LIMIT)?lb.getTimeLim=
itInSeconds():nb)/2);if(mb>=3Dob){xmp.util.TriggerHelper.handleTrackMidpo=
int(lb,this.getPlayer());this.tracked_midpoint=3Dtrue;}}};xmp.createNames=
pace("xmp.baseplayer.listeners.internal");xmp.baseplayer.listeners.intern=
al.AdResNodeListener=3Dfunction(id,pb){xmp.baseplayer.listeners.internal.=
AdResNodeListener.ctor.call(this,id,pb);};xmp.DERIVE_CLASS(xmp.baseplayer=
.listeners.AbstractNodeListener,xmp.baseplayer.listeners.internal.AdResNo=
deListener);xmp.baseplayer.listeners.internal.AdResNodeListener.prototype=
.canCompleteNow=3Dfunction(qb){var =
rb=3Dqb.getMetaResourceBundle();if(rb.isError()||rb.isLoaded()){this._han=
dleResBundleLoaded(qb,rb);}=0A=
if(rb.isError()){return true;}=0A=
return =
rb.isLoaded();};xmp.baseplayer.listeners.internal.AdResNodeListener.proto=
type.handleCompleteAsynch=3Dfunction(sb,tb){var =
ub=3Dxmp.util.SettingsManager.getInstance().getContextNode().getNodeForPa=
th('BasePlayer').getString('videoAdMetaLoader','videoAdMeta');var =
vb=3Dxmp.baseplayer.MetaFileLoaderFactory.getInstance().create(ub);var =
wb=3Dnew =
xmp.util.Callback('gotAdCallback',this._gotAdCallback,this);wb.setMetadat=
a('RelayCallback',tb);wb.setMetadata('theNode',sb);vb.setResBundle(sb.get=
MetaResourceBundle(),wb);vb.load();};xmp.baseplayer.listeners.internal.Ad=
ResNodeListener.prototype._gotAdCallback=3Dfunction(xb,yb){var =
zb=3Dxb.getMetadata('RelayCallback',{});var =
Ab=3Dxb.getMetadata('theNode',{});this._handleResBundleLoaded(Ab,yb);zb.c=
all(Ab);};xmp.baseplayer.listeners.internal.AdResNodeListener.prototype._=
handleResBundleLoaded=3Dfunction(Bb,Cb){};xmp.createNamespace("xmp.basepl=
ayer.internals");xmp.baseplayer.internals.GenericMetaFileLoader=3Dfunctio=
n(Db,Eb,Fb,Gb,Hb,Ib,Jb){this._THIS_TYPE=3DDb;this._THIS_LOADER_TYPE=3DEb;=
this._CONTENT_TYPE=3DFb;this._APP_ERROR_TYPE=3DGb;this._MAX_CACHE_TIME=3D=
Hb;this._logger=3Dnew =
xmp.util.internals.CategoryLogger(this._THIS_LOADER_TYPE);this._owner=3DI=
b;this._loaderId=3DJb;this._handleArray=3D[];this._handleMap=3D{};this._p=
erIdCallback=3Dnull;this._allLoadedCallback=3Dnull;this._loadedCount=3D0;=
this._loadCalled=3Dfalse;};xmp.baseplayer.internals.GenericMetaFileLoader=
.prototype.getLoaderId=3Dfunction(){return =
this._loaderId;};xmp.baseplayer.internals.GenericMetaFileLoader.prototype=
.setIds=3Dfunction(Kb,Lb){this._loadCalled=3Dfalse;this._handleArray=3D[]=
;this._perIdCallback=3DLb;var Mb=3D{};for(var i=3D0;i<Kb.length;i++){var =
id=3DKb[i];if(!(typeof id=3D=3D=3D'string'&&id.length>0)){throw new =
xmp.util.internals.InvalidArgsError("The 'ids' argument must be an array =
of non-empty strings.");}=0A=
if(typeof Mb[id]!=3D=3D'undefined'){this._logger.warn('Skipping =
duplicate ID: '+id);continue;}=0A=
Mb[id]=3Did;var =
Nb=3Dxmp.baseplayer.internals.MetaFileCache.getInstance().findOrCreate(th=
is._THIS_TYPE,id,this,this._MAX_CACHE_TIME);var =
Ob=3D{h:Nb,ready:false};this._handleArray.push(Ob);this._handleMap[Nb.get=
Id()]=3DOb;}=0A=
return =
this._extractLoadableDataArray();};xmp.baseplayer.internals.GenericMetaFi=
leLoader.prototype.setAllLoadedCallback=3Dfunction(Pb){this._allLoadedCal=
lback=3DPb;};xmp.baseplayer.internals.GenericMetaFileLoader.prototype.loa=
d=3Dfunction(){this._loadCalled=3Dtrue;if(this._handleArray.length=3D=3D=3D=
0){this._releaseThis();this._notifyAllLoaded();return;}=0A=
this._loadedCount=3D0;for(var i=3D0;i<this._handleArray.length;i++){var =
Qb=3Dthis._handleArray[i];if(Qb.ready){this._notifyPerFile(Qb.h);}}};xmp.=
baseplayer.internals.GenericMetaFileLoader.prototype._extractLoadableData=
Array=3Dfunction(){var Rb=3D[];for(var =
i=3D0;i<this._handleArray.length;i++){var =
Sb=3Dthis._handleArray[i].h;Rb.push(Sb.getDataObject());}=0A=
return =
Rb;};xmp.baseplayer.internals.GenericMetaFileLoader.prototype._notifyPerF=
ile=3Dfunction(Tb){if(Tb.isLoaded()){this._loadedCount++;this._notifyPerF=
ileCore(Tb);}=0A=
if(this._loadedCount>=3Dthis._handleArray.length){this._releaseThis();thi=
s._notifyAllLoaded();}};xmp.baseplayer.internals.GenericMetaFileLoader.pr=
ototype._releaseThis=3Dfunction(){if(this._owner!=3D=3Dnull){this._owner.=
_release(this);this._owner=3Dnull;}};xmp.baseplayer.internals.GenericMeta=
FileLoader.prototype._notifyPerFileCore=3Dfunction(Ub){try{if(this._perId=
Callback!=3D=3Dnull){this._perIdCallback.call(Ub.getDataObject());}}=0A=
catch(e){this._logger.warn('Error calling =
per-file-callback',e);}};xmp.baseplayer.internals.GenericMetaFileLoader.p=
rototype._notifyAllLoaded=3Dfunction(){try{if(this._allLoadedCallback!=3D=
=3Dnull){this._allLoadedCallback.call();}}=0A=
catch(e){this._logger.warn('Error calling =
all-loaded-callback',e);}};xmp.baseplayer.internals.GenericMetaFileLoader=
.prototype._notifyFileRequestLoaded=3Dfunction(Vb){if(this._loadCalled){t=
his._notifyPerFile(Vb);}=0A=
else{var Wb=3Dthis._handleMap[Vb.getId()];if(Wb.h!=3D=3DVb){throw new =
Error('Unexpected, handles not the same reference.');}=0A=
Wb.ready=3Dtrue;}};xmp.baseplayer.internals.GenericMetaFileLoader.Generic=
Loadable=3Dfunction(id){xmp.baseplayer.internals.GenericMetaFileLoader.Ge=
nericLoadable.ctor.call(this);this._id=3Did;};xmp.DERIVE_CLASS(xmp.util.L=
oadable,xmp.baseplayer.internals.GenericMetaFileLoader.GenericLoadable);x=
mp.baseplayer.internals.GenericMetaFileLoader.GenericLoadable.prototype.g=
etLoadableId=3Dfunction(){return =
this._id;};xmp.baseplayer.internals.GenericMetaFileLoader.prototype._crea=
teLoadable=3Dfunction(id){return(new =
xmp.baseplayer.internals.GenericMetaFileLoader.GenericLoadable(id));};xmp=
.baseplayer.internals.GenericMetaFileLoader.prototype._loadFileRequest=3D=
function(Xb){var =
Yb=3Dnull;try{Yb=3Dthis._createLoadable(Xb.getId());Xb._setDataObject(Yb)=
;var Zb=3Dnew =
xmp.util.Callback(this._THIS_LOADER_TYPE+'_'+this.getLoaderId()+'_'+Xb.ge=
tId(),this._handleAjaxResponse,this);var =
$b=3Dxmp.net.AjaxRequestManager.getInstance();Zb.setMetadata('handle',Xb)=
;$b.request(Xb.getId(),Zb,Xb.getType(),Xb.getId(),this._CONTENT_TYPE,null=
);return xmp.baseplayer.internals.FileRequestHandle.STATE_LOADING;}=0A=
catch(e){try{if(Yb!=3D=3Dnull){Yb._setErrorMessage(xmp.extractErrorMessag=
e(e));}}=0A=
catch(e2){this._logger.warn('Second chance error handling created file =
request',e2);}=0A=
throw =
e;}};xmp.baseplayer.internals.GenericMetaFileLoader.prototype._handleAjax=
Response=3Dfunction(ac,bc){var cc=3Dac.getMetadata('handle',{});var =
dc=3Dcc.getDataObject();if(!bc.isError()){if(xmp.net.ContentTypes.JSON=3D=
=3D=3Dthis._CONTENT_TYPE){dc._setRawData(bc.getJsonObject());}=0A=
else{if(xmp.net.ContentTypes.TEXT!=3D=3Dthis._CONTENT_TYPE){throw new =
Error('Unexpected content type');}=0A=
dc._setRawData(bc.getText());}}=0A=
else{var ec=3Dnew =
xmp.baseplayer.ApplicationError(bc.getErrorObject(),this._APP_ERROR_TYPE,=
this._THIS_TYPE,[{label:'url',text:bc.getFullUrl()}]);this._logger.warn(e=
c.message,ec);cc._setErrorMessage(bc.getErrorMessage());dc._setErrorMessa=
ge(bc.getErrorMessage());}=0A=
cc._setAsLoaded();};xmp.createNamespace("xmp.baseplayer");xmp.baseplayer.=
AppErrorCodes=3Dfunction(){};xmp.baseplayer.AppErrorCodes.data=3D[];xmp.b=
aseplayer.AppErrorCodes.data.badAdPolicy=3D'Ad policy not =
found';xmp.baseplayer.AppErrorCodes.data.badAdPattern=3D'Bad ad =
pattern';xmp.baseplayer.AppErrorCodes.data.FailToGetAdPattern=3D'Failed =
to get the "ad pattern" JSON:  Make sure that the corresponding value =
for "rootUrl" in primary.js is correct, and that a valid JSON file =
exists at the specified location.  Also, make sure that the required =
cross-domain XML file on the JSON host has the needed site =
entry.';xmp.baseplayer.AppErrorCodes.data.RulesNotDownLoaded=3D'Failed =
to get the "rules JavaScript" file:  Make sure that the corresponding =
value for "rootUrl" in primary.js is correct, and that a valid JS file =
exists at the specified location.  Also, make sure that the required =
cross-domain XML file on the JS host has the needed site =
entry.';xmp.baseplayer.AppErrorCodes.data.missingContent=3D'Missing =
content';xmp.baseplayer.AppErrorCodes.data.FailToGetDhtmlObject=3D'Failed=
 to load the DHTML object:  Make sure that the corresponding value for =
"rootUrl" in primary.js is correct, and that a valid DHTML object exists =
at the specified location.  Also, make sure that the required =
cross-domain XML file on the DHTML host has the needed site =
entry.';xmp.baseplayer.AppErrorCodes.data.missingAd=3D'Failed to get the =
ad:  Make sure that the corresponding value for "rootUrl" in primary.js =
is correct, and that a valid ad file exists at the specified location.  =
Also, make sure that the required cross-domain XML file on the ad host =
has the needed site =
entry.';xmp.baseplayer.AppErrorCodes.data.badAdJson=3D'Bad ad =
JSON';xmp.baseplayer.AppErrorCodes.data.FailToGetAdVideo=3D'Failed to =
get the ad video:  Make sure that the corresponding value for "rootUrl" =
in primary.js is correct, and that a valid ad-video file exists at the =
specified location.  Also, make sure that the required cross-domain XML =
file on the ad-video host has the needed site =
entry.';xmp.baseplayer.AppErrorCodes.data.missingVideoJson=3D'Failed to =
get the video JSON:  Make sure that the corresponding value for =
"rootUrl" in primary.js is correct, and that a valid JSON file exists at =
the specified location.  Also, make sure that the required cross-domain =
XML file on the JSON host has the needed site =
entry.';xmp.baseplayer.AppErrorCodes.data.FailToGetVideoJson=3D'Failed =
to get the video JSON:  Make sure that the corresponding value for =
"rootUrl" in primary.js is correct, and that a valid JSON file exists at =
the specified location.  Also, make sure that the required cross-domain =
XML file on the JSON host has the needed site =
entry.';xmp.baseplayer.AppErrorCodes.data.FailToGetPromoJson=3D'Failed =
to get the promo JSON:  Make sure that the corresponding value for =
"rootUrl" in primary.js is correct, and that a valid JSON file exists at =
the specified location.  Also, make sure that the required cross-domain =
XML file on the JSON host has the needed site =
entry.';xmp.baseplayer.AppErrorCodes.data.badVideoJson=3D'Exception =
caught during "all loaded" notification.  The video JSON might be =
invalid.';xmp.baseplayer.AppErrorCodes.data.mediaPlayerError=3D'Media-pla=
yer =
error';xmp.baseplayer.AppErrorCodes.data.badInitialFlashObject=3D'Timed =
out initializing Flash:  Make sure that the corresponding value for =
"rootUrl" in primary.js is correct for the initial Flash object.  Also, =
make sure that the Flash plug-in is installed and that the installation =
is not =
corrupted.';xmp.baseplayer.AppErrorCodes.getDescription=3Dfunction(fc){va=
r =
gc=3Dxmp.baseplayer.AppErrorCodes.data[fc];if(gc=3D=3D=3Dnull){gc=3D'Unkn=
own error: '+fc;}=0A=
return gc;};xmp.baseplayer.ApplicationError=3Dfunction(e,hc,ic,jc){var =
kc=3Dxmp.baseplayer.AppErrorCodes.getDescription(hc);xmp.baseplayer.Appli=
cationError.ctor.call(this,"ApplicationError",ic,kc,jc);this.setInnerErro=
r(e);};xmp.DERIVE_CLASS(xmp.util.internals.XMPError,xmp.baseplayer.Applic=
ationError);xmp.baseplayer.ApplicationError.prototype.getInnerError=3Dfun=
ction(){return =
this.innerError;};xmp.baseplayer.ApplicationError.prototype.getMessage=3D=
function(){return =
this.message;};xmp.baseplayer.ApplicationError.prototype.getContext=3Dfun=
ction(){return =
this.context;};xmp.baseplayer.ApplicationError.prototype.getExtendedInfo=3D=
function(){return =
this.extendedInfo;};xmp.createNamespace("xmp.baseplayer");xmp.baseplayer.=
BasePlayer=3Dfunction(id,lc,mc){xmp.util.LogConfigurator.configure();if(x=
mp.baseplayer.BasePlayer._singleInstance!=3D=3Dnull){throw new =
Error('Only one instance of BasePlayer allowed per browser session.');}=0A=
this._nextPlayListContextKey=3D1;this._playListContextCollection=3D{};thi=
s._currentPlayListContext=3Dnull;this._logger=3Dnew =
xmp.util.internals.CategoryLogger('BasePlayer');this._id=3Did;xmp.basepla=
yer.BasePlayer._playerMap[this.getId()]=3Dthis;this._metadataMap=3Dnew =
xmp.util.internals.MetadataMap(true);this._metadataMap._reInitialize(lc);=
this._parameters=3Dmc;this._mediaPlayer=3Dnull;this._nlMap=3Dnew =
xmp.baseplayer._NLMap(this);this._bootStrapper=3Dxmp.baseplayer.BasePlaye=
r._bootStrapper;this._bootStrapper.init();this._options=3Dlc;xmp.baseplay=
er.BasePlayer._singleInstance=3Dthis;};xmp.baseplayer.BasePlayer._playerM=
ap=3D{};xmp.baseplayer.BasePlayer._singleInstance=3Dnull;xmp.baseplayer.B=
asePlayer._bootStrapper=3Dnew =
xmp.baseplayer.Bootstrapper();xmp.baseplayer.BasePlayer._fatalException=3D=
xmp.FatalException.createFatalException(xmp.XmpErrorCodes.FATAL_UNSPECIFI=
ED_ERROR,'BasePlayer','not boostrapped =
yet');xmp.baseplayer.BasePlayer.prototype.getAbsoluteURI=3Dfunction(nc,oc=
){if(nc.length>0&&nc.charAt(0)=3D=3D=3D'/'){var =
pc=3D"http://"+window.location.host;var qc=3Dpc;if(typeof =
oc!=3D=3D'undefined'&&oc!=3D=3D'defaultRoot'){qc=3Dxmp.util.RootUrlProvid=
er.getInstance().getRootUrl(oc,pc);}=0A=
nc=3Dqc+nc;}=0A=
return nc;};xmp.baseplayer.BasePlayer.findPlayer=3Dfunction(id){var =
rc=3Dxmp.baseplayer.BasePlayer._playerMap[id];return(!rc)?null:rc;};xmp.b=
aseplayer.BasePlayer.configure=3Dfunction(sc,tc){var =
uc=3D[xmp.internal_settings_pref_api];uc=3Duc.concat(sc);xmp.util.Setting=
sManager.getInstance().init(uc,tc);var =
vc=3Dxmp.util.internals.MockTestMode.getInstance();if(vc.isActive()){vc.c=
onfigure();}};xmp.baseplayer.BasePlayer.prototype.bootStrap=3Dfunction(){=
try{if(!this._bootStrapper.isNew()){throw new Error('Already tried to =
bootstrap.');}=0A=
var =
wc=3Dxmp.baseplayer.BasePlayer._fatalException;xmp.PlayerPolicy.validateB=
ootstrap(this);if(wc=3D=3D=3Dxmp.baseplayer.BasePlayer._fatalException){t=
his._bootStrapper.bootStrap(this);}=0A=
else{this.handleBootstrapped(false);}}=0A=
catch(e){this.handleBootstrappedInternal(e);}};xmp.baseplayer.BasePlayer.=
prototype.fini=3Dfunction(){if(this._mediaPlayer!=3D=3Dnull){this._mediaP=
layer.fini();this._mediaPlayer=3Dnull;}=0A=
xmp.ServiceRegistry.fini();};xmp.baseplayer.BasePlayer.prototype.getId=3D=
function(){return =
this._id;};xmp.baseplayer.BasePlayer.prototype.getMediaPlayer=3Dfunction(=
){return =
this._mediaPlayer;};xmp.baseplayer.BasePlayer.prototype.getLookAheadNodeA=
rray=3Dfunction(){return =
this._getCurCtx('getLookAheadNodeArray').getLookAheadNodeArray();};xmp.ba=
seplayer.BasePlayer.prototype.getLookBehindNodeArray=3Dfunction(){return =
this._getCurCtx('getLookBehindNodeArray').getLookBehindNodeArray();};xmp.=
baseplayer.BasePlayer.prototype.getMetadata=3Dfunction(xc,yc){return =
this._metadataMap._get(xc,yc);};xmp.baseplayer.BasePlayer.prototype.setPl=
ayerContext=3Dfunction(zc){xmp.util.PlayerStats.getInstance().setValue('p=
layerContext',zc);xmp.util.SettingsManager.getInstance().setContext(zc);x=
mp.baseplayer.Bootstrapper._cacheHtmlObjects();};xmp.baseplayer.BasePlaye=
r.prototype.createPlayListContext=3Dfunction(Ac){this._checkXmpState();th=
is._faultMediaPlayer();var Bc=3Dthis._getAdPatternRelPath(Ac);var =
Cc=3Dthis._getContextParameters();Cc=3DCc.concat(this._parameters);var =
Dc=3Dthis._createPlayListContext(Bc,Cc);this._setCurrentPlayListContext(D=
c);var =
Ec=3DDc.getKey();if(this._logger.isDebugEnabled()){this._logger.debug("Cr=
eated new playlist, key =3D "+Ec);Dc.debugPrint("Initial State");}=0A=
return =
Ec;};xmp.baseplayer.BasePlayer.prototype.loadContent=3Dfunction(Fc,Gc){th=
is._checkXmpState();return =
this._getCurCtx('loadContent').loadContent(Fc,(Gc?Gc:''));};xmp.baseplaye=
r.BasePlayer.prototype.load=3Dfunction(Hc,Ic,Jc){this._logger.warn('Metho=
d "BasePlayer.load" is deprecated, please change code to no longer use =
this method.');var =
Kc=3Dthis.createPlayListContext(Jc);this.loadContent(Hc,Ic);return =
Kc;};xmp.baseplayer.BasePlayer.prototype.loadItem=3Dfunction(Lc,Mc,Nc){th=
is._faultMediaPlayer();var Oc=3Dthis._createPlayableNode(Lc,Mc,Nc);var =
Pc=3Dthis._getNodeListener(Oc);Pc.handleInitialize(Oc);Pc.handleValidate(=
Oc);Pc.handleComplete(Oc);Pc.handleRender(Oc);};xmp.baseplayer.BasePlayer=
.prototype._createPlayableNode=3Dfunction(Qc,Rc,Sc){var Tc=3Dnew =
xmp.util.PlayableNode();Tc._setNodeType(new =
xmp.playlistapi.internals.RuleSetPlayableNodeType(null,Qc,Qc,[],{}));if(R=
c){if(Rc.url){Tc.setURI(Rc.url);}=0A=
Tc._setData(((Rc.metadata)?Rc.metadata:new =
xmp.util.PlayableData('DEFAULT')));}=0A=
if(Sc){var Uc=3DSc.length;for(var =
i=3D0;i<Uc;i++){Tc.setMetadata(Sc[i].name,Sc[i].value);}}=0A=
return =
Tc;};xmp.baseplayer.BasePlayer.prototype._getAdPatternRelPath=3Dfunction(=
Vc){var Wc=3D'';var =
Xc=3Dxmp.util.SettingsManager.getInstance().getContextNode().getNodeForPa=
th('BasePlayer/ad patterns');if(typeof(Vc)=3D=3D=3D'undefined'){var =
Yc=3DXc.retrieveKeys();if(Yc.length>0){Wc=3DXc.getString(Yc[0],'');}}=0A=
else{if(!xmp.isNonEmptyString(Vc)){throw new =
xmp.util.internals.InvalidArgsError('The adPatternKey parameter must be =
a non-empty string');}=0A=
Wc=3DXc.getString(Vc,'');}=0A=
if(!xmp.isNonEmptyString(Wc)){throw new =
xmp.util.internals.InvalidArgsError('Failed to find ad pattern relative =
URL.');}=0A=
return =
Wc;};xmp.baseplayer.BasePlayer.prototype._createPlayListContext=3Dfunctio=
n(Zc,$c){var ad=3Dthis._nextPlayListContextKey++;var bd=3Dnew =
xmp.baseplayer._PLCtx(ad,this,Zc,$c);this._playListContextCollection[ad]=3D=
bd;return =
bd;};xmp.baseplayer.BasePlayer.prototype.switchPlayList=3Dfunction(cd){va=
r dd=3Dthis._playListContextCollection[cd];if(!dd){throw new =
xmp.util.internals.InvalidArgsError(""+cd+" is not a valid playlist =
context key");}=0A=
else{if(this._logger.isDebugEnabled()){this._logger.debug("Switching =
playlist context:");this._currentPlayListContext.debugPrint("old =
context");this._setCurrentPlayListContext(dd);this._currentPlayListContex=
t.debugPrint("new context");}=0A=
this._tryRender();}};xmp.baseplayer.BasePlayer.prototype.hasPlayListConte=
xt=3Dfunction(){return =
this._currentPlayListContext!=3D=3Dnull;};xmp.baseplayer.BasePlayer.proto=
type._setCurrentPlayListContext=3Dfunction(ed){if(this._currentPlayListCo=
ntext){this._currentPlayListContext.setStateListener(null);}=0A=
this._currentPlayListContext=3Ded;this._currentPlayListContext.setStateLi=
stener(this);};xmp.baseplayer.BasePlayer.prototype._getCurCtx=3Dfunction(=
fd){if(!this._currentPlayListContext){throw new =
Error('BasePlayer.'+fd+": Cannot perform operation because playlist =
context has not been set. Call load() first.");}=0A=
return =
this._currentPlayListContext;};xmp.baseplayer.BasePlayer.prototype.append=
ToPlayList=3Dfunction(gd,hd){this._checkXmpState();return =
this._getCurCtx('appendToPlayList').appendToPlayList(gd,((hd)?hd:false));=
};xmp.baseplayer.BasePlayer.prototype.removeFromPlayList=3Dfunction(jd){t=
his._checkXmpState();return =
this._getCurCtx('removeFromPlayList').removeFromPlayList(jd);};xmp.basepl=
ayer.BasePlayer.prototype.insertInPlayList=3Dfunction(kd,ld,md){this._che=
ckXmpState();return =
this._getCurCtx('insertInPlayList').insertInPlayList(kd,ld,((md)?md:false=
));};xmp.baseplayer.BasePlayer.prototype.moveWithinPlayList=3Dfunction(nd=
,od,pd){this._checkXmpState();return =
this._getCurCtx('moveWithinPlayList').moveWithinPlayList(nd,od,((pd)?pd:f=
alse));};xmp.baseplayer.BasePlayer.prototype.setCurrentPlayListPosition=3D=
function(qd){this._checkXmpState();return =
this._getCurCtx('setCurrentPlayListPosition').setCurrentPlayListItem(qd);=
};xmp.baseplayer.BasePlayer.prototype.getCurrentPlayListItem=3Dfunction()=
{return =
this._getCurCtx('getCurrentPlayListItem').getCurrentPlayListItem();};xmp.=
baseplayer.BasePlayer.prototype.getPlayListItemCount=3Dfunction(){return =
this._getCurCtx('getPlayListItemCount').getPlayListItemCount();};xmp.base=
player.BasePlayer.prototype.getPlayListItem=3Dfunction(rd){return =
this._getCurCtx('getPlayListItem').getPlayListItem(rd);};xmp.baseplayer.B=
asePlayer.prototype.findPlayListItem=3Dfunction(sd){return =
this._getCurCtx('findPlayListItem').findPlayListItem(sd);};xmp.baseplayer=
.BasePlayer.prototype.findPlayListItemIndex=3Dfunction(td){return =
this._getCurCtx('findPlayListItemIndex').findPlayListItemIndex(td);};xmp.=
baseplayer.BasePlayer.prototype.advance=3Dfunction(){this._checkXmpState(=
);this._getCurCtx('advance').advance();};xmp.baseplayer.BasePlayer.protot=
ype.onAdvance=3Dfunction(){this._tryRender();};xmp.baseplayer.BasePlayer.=
prototype._tryRender=3Dfunction(){if(this._isReady()){var =
ud=3Dthis._currentPlayListContext.getCurrentNode();if(ud){this._renderNod=
e(ud,true);}}};xmp.baseplayer.BasePlayer.prototype.registerNodeListener=3D=
function(vd,wd){this._nlMap._registerNodeListener(vd,wd);};xmp.baseplayer=
.BasePlayer.prototype._initServices=3Dfunction(xd){if(xd.services){xmp.Se=
rviceRegistry.init(this,xd.services);}};xmp.baseplayer.BasePlayer.prototy=
pe.handlePlayListStarted=3Dfunction(){this._logger.info('PlayList =
started, override "handlePlayListStarted" to do specific =
handling.');};xmp.baseplayer.BasePlayer.prototype.handlePlayListEnded=3Df=
unction(){this._logger.info('PlayList ended, override =
"handlePlayListEnded" to do specific =
handling.');};xmp.baseplayer.BasePlayer.prototype.handlePlayListModified=3D=
function(yd){this._logger.info('PlayList modified, override =
"handlePlayListModified" to do specific =
handling.');};xmp.baseplayer.BasePlayer.prototype.handleMediaPlayerReady=3D=
function(){this._throwMustOverrideError();};xmp.baseplayer.BasePlayer.pro=
totype.handleCreateViewport=3Dfunction(zd,Bd,Cd,Dd){this._throwMustOverri=
deError();};xmp.baseplayer.BasePlayer.prototype.handleDestroyViewport=3Df=
unction(Ed,Fd){var Gd=3Dxmp.findDomElement(Fd);if(Gd){var =
Hd=3Dxmp.getDomParent(Gd);Hd.removeChild(Gd);}};xmp.baseplayer.BasePlayer=
.prototype.handleFatalException=3Dfunction(e){this._throwMustOverrideErro=
r();};xmp.baseplayer.BasePlayer.prototype.handleBootstrapped=3Dfunction(I=
d){this._throwMustOverrideError();};xmp.baseplayer.BasePlayer.prototype.h=
andleRegisterNodeListeners=3Dfunction(){this._throwMustOverrideError();};=
xmp.baseplayer.BasePlayer.prototype.onControlStreamError=3Dfunction(e){th=
is.handleControlStreamError(e);};xmp.baseplayer.BasePlayer.prototype.hand=
leControlStreamError=3Dfunction(e){this._throwMustOverrideError();};xmp.b=
aseplayer.BasePlayer.prototype.onControlStreamTriggerInit=3Dfunction(Jd,K=
d){this.handleControlStreamTriggerInit(Jd,Kd);};xmp.baseplayer.BasePlayer=
.prototype.handleControlStreamTriggerInit=3Dfunction(Ld,Md){this._throwMu=
stOverrideError();};xmp.baseplayer.BasePlayer.prototype.onControlStreamTr=
igger=3Dfunction(Nd,Od){this.handleControlStreamTrigger(Nd,Od);};xmp.base=
player.BasePlayer.prototype.handleControlStreamTrigger=3Dfunction(Pd,Qd){=
this._throwMustOverrideError();};xmp.baseplayer.BasePlayer.prototype.onRe=
trieveImage=3Dfunction(Rd,Sd){this.handleRetrieveImage(Rd,Sd);};xmp.basep=
layer.BasePlayer.prototype.handleRetrieveImage=3Dfunction(Td,Ud){this._th=
rowMustOverrideError();};xmp.baseplayer.BasePlayer.prototype.onImageRetri=
everError=3Dfunction(e){this.handleImageRetrieverError(e);};xmp.baseplaye=
r.BasePlayer.prototype.handleImageRetrieverError=3Dfunction(e){this._thro=
wMustOverrideError();};xmp.baseplayer.BasePlayer.prototype._throwMustOver=
rideError=3Dfunction(){throw new =
xmp.playlistapi.internals.PlayListError('Not implemented, must =
override.');};xmp.baseplayer.BasePlayer.prototype._getNodeListener=3Dfunc=
tion(Vd){return =
this._nlMap._getNodeListener(Vd);};xmp.baseplayer.BasePlayer.prototype._f=
aultMediaPlayer=3Dfunction(){if(this._mediaPlayer=3D=3D=3Dnull){this._cre=
ateMediaPlayer();}};xmp.baseplayer.BasePlayer.prototype._createMediaPlaye=
r=3Dfunction(){this._mediaPlayer=3Dxmp.MediaPlayerFactory.createPlayer(th=
is.getId(),this);this._mediaPlayer.init();};xmp.baseplayer.BasePlayer.pro=
totype.onInitialized=3Dfunction(){this.handleMediaPlayerReady();this.hand=
leRegisterNodeListeners();};xmp.baseplayer.BasePlayer.prototype.onTimelin=
eChange=3Dfunction(Wd,Xd,Yd){this._getNodeListener(Wd).handleTimelineChan=
ge(Wd,Xd,Yd);};xmp.baseplayer.BasePlayer.prototype.onStateChange=3Dfuncti=
on(Zd,$d,ae){switch($d){case =
xmp.OPEN:this._getNodeListener(Zd).handleOpen(Zd);break;case =
xmp.CONNECTING:this._getNodeListener(Zd).handleConnecting(Zd);break;case =
xmp.CONNECTED:this._getNodeListener(Zd).handleConnected(Zd);break;case =
xmp.PLAY:this._getNodeListener(Zd).handlePlay(Zd);break;case =
xmp.PAUSE:this._getNodeListener(Zd).handlePause(Zd);break;case =
xmp.STOP:this._getNodeListener(Zd).handleStop(Zd);break;case =
xmp.REWIND:this._getNodeListener(Zd).handleRewind(Zd);break;case =
xmp.FAST_FORWARD:this._getNodeListener(Zd).handleFastForward(Zd);break;ca=
se xmp.SEEKABLE:this._getNodeListener(Zd).handleSeekable(Zd);break;case =
xmp.ENDED:this._getNodeListener(Zd).handleEnded(Zd);break;case =
xmp.FIRST_FRAME_RENDERED:this._getNodeListener(Zd).handleFirstFrameRender=
ed(Zd);break;case =
xmp.BUFFERING:this._getNodeListener(Zd).handleBuffering(Zd,ae);break;defa=
ult:this._logger.warn('Unrecognized media player state: =
'+$d);break;}};xmp.baseplayer.BasePlayer.prototype.onError=3Dfunction(be,=
e){this._getNodeListener(be).handleError(be,e);};xmp.baseplayer.BasePlaye=
r.prototype.onCreateViewport=3Dfunction(ce,de,ee,fe){return =
this.handleCreateViewport(ce,de,ee,fe);};xmp.baseplayer.BasePlayer.protot=
ype.onDestroyViewport=3Dfunction(ge,he){this.handleDestroyViewport(ge,he)=
;};xmp.baseplayer.BasePlayer.prototype.onPlugInError=3Dfunction(e){this._=
raiseFatalException(e);};xmp.baseplayer.BasePlayer.prototype.onUnsupporte=
dPlatformError=3Dfunction(e){this._raiseFatalException(e);};xmp.baseplaye=
r.BasePlayer.prototype._getContextParameters=3Dfunction(){var =
je=3D[];var =
ke=3Dxmp.util.SettingsManager.getInstance().getContextNode().getNodeForPa=
th('pattern parameters');var le=3Dke.retrieveKeys();for(var =
i=3D0;i<le.length;i++){var =
me=3Dle[i];je.push({name:me,value:ke.getString(me,'')});}=0A=
return =
je;};xmp.baseplayer.BasePlayer.prototype._isReady=3Dfunction(){return(thi=
s._currentPlayListContext!=3D=3Dnull);};xmp.baseplayer.BasePlayer.prototy=
pe.handleInitializePlayableNode=3Dfunction(ne){this._getNodeListener(ne).=
handleInitialize(ne);this._getNodeListener(ne).handleDynamicRules(ne);};x=
mp.baseplayer.BasePlayer.prototype._isStillCurrentNode=3Dfunction(oe){var=
 =
pe=3Dthis._currentPlayListContext.getCurrentNode();return(oe=3D=3D=3Dpe);=
};xmp.baseplayer.BasePlayer.prototype._gotAsynchCompleteCallback=3Dfuncti=
on(qe,se){if(this._isStillCurrentNode(se)){this._renderNode(se,false);}};=
xmp.baseplayer.BasePlayer.prototype._renderNode=3Dfunction(te,ue){var =
ve=3Dnull;try{ve=3Dthis._getNodeListener(te);if(ue){this._overrideAdRes(v=
e,te);}=0A=
if(!this._isStillCurrentNode(te)){return;}=0A=
if(ve.canCompleteNow(te)){if(te.getPlayableData().isError()){ve.handleErr=
or(te,te.getPlayableData().getError());return;}=0A=
ve.handleValidate(te);ve.handleComplete(te);var =
we=3Dxmp.util.internals.MockTestMode.getInstance();if(we.isActive()){we.o=
verrideMimeType(te);}=0A=
if(!this._isStillCurrentNode(te)){return;}=0A=
te.getPlayableData().setRuntimeMetadata('history_played',true);ve.handleR=
ender(te);}=0A=
else{if(!ue){throw new Error('_renderNode: prevent infinite loop');}=0A=
var xe=3Dnew =
xmp.util.Callback('gotAsynchCompleteCallback',this._gotAsynchCompleteCall=
back,this);ve.handleCompleteAsynch(te,xe);}}=0A=
catch(e){this._logger.warn("Error rendering node: =
"+te.getBestId(),e);try{ve.handleError(te,e);}=0A=
catch(e2){this._logger.warn("Error calling handleError for node: =
"+te.getBestId(),e2);}}};xmp.baseplayer.BasePlayer.prototype._overrideAdR=
es=3Dfunction(ye,ze){var =
pm=3Dze.getMetadata('__DIRECTIVE_PARAMETER_MAP__',xmp.util.internals.Meta=
dataMap.defaultObj);if(pm=3D=3D=3Dxmp.util.internals.MetadataMap.defaultO=
bj){pm=3Dthis._getCurCtx('_overrideAdRes')._xmpPlayList._getParameterMapI=
nternal().clone();pm.addContextObject('node',ze.getNodeType().getDataObje=
ct());}=0A=
var Ae=3Dnew =
xmp.playlistapi.AdResourceOverrideContext(ze,pm);ye.handleOverrideAdResou=
rces(ze,Ae);};xmp.baseplayer.BasePlayer.prototype.registerRuleClass=3Dfun=
ction(Be,Ce){this._getCurCtx('registerRuleClass').registerRuleClass(Be,Ce=
);};xmp.baseplayer.BasePlayer.prototype._checkXmpState=3Dfunction(){if(xm=
p.baseplayer.BasePlayer._fatalException!=3D=3Dnull){throw new Error('XMP =
in bad state: =
'+xmp.extractErrorMessage(xmp.baseplayer.BasePlayer._fatalException));}};=
xmp.baseplayer.BasePlayer.prototype._raiseFatalException=3Dfunction(e){tr=
y{var De=3Dnull;if(e instanceof xmp.FatalException){De=3De;}=0A=
else{De=3Dxmp.FatalException.createFatalException(xmp.XmpErrorCodes.FATAL=
_UNSPECIFIED_ERROR,'BasePlayer',xmp.extractErrorMessage(e));}=0A=
xmp.baseplayer.BasePlayer._fatalException=3DDe;this._logger.fatal('fatal =
exception',De);this.handleFatalException(De);}=0A=
catch(secondE){xmp.showFatalErrorMessage('Second chance exception while =
raising fatal exception: =
'+xmp.extractErrorMessage(secondE));}};xmp.baseplayer.BasePlayer._staticH=
andleFatalEx=3Dfunction(cb,e){if(xmp.baseplayer.BasePlayer._singleInstanc=
e!=3D=3Dnull){xmp.baseplayer.BasePlayer._singleInstance._raiseFatalExcept=
ion(e);}=0A=
else{xmp.showFatalErrorMessage(xmp.extractErrorMessage(e));}};xmp.fatalEr=
rorCallback=3Dnew =
xmp.util.Callback('BasePlayer_fatalErrorCallback',xmp.baseplayer.BasePlay=
er._staticHandleFatalEx,null);xmp.baseplayer.BasePlayer.prototype.handleB=
ootstrappedInternal=3Dfunction(ex){xmp.baseplayer.BasePlayer._fatalExcept=
ion=3Dnull;if(ex=3D=3D=3Dnull){try{this._doAfterBootstrap();}=0A=
catch(afterEx){this._raiseFatalException(afterEx);ex=3DafterEx;}}=0A=
else{this._raiseFatalException(ex);}=0A=
this.handleBootstrapped((ex=3D=3D=3Dnull)?true:false);};xmp.baseplayer.Ba=
sePlayer.prototype._doAfterBootstrap=3Dfunction(){this._initServices(this=
._options);};xmp.baseplayer.BasePlayer.prototype.seek=3Dfunction(){var =
Ee=3Dthis.getMediaPlayer().getPosition();var =
Fe=3Dthis.getMediaPlayer().getDuration();if((Ee+10)>Fe){if((Ee-10)<0){thi=
s.getMediaPlayer().seek(0);}=0A=
else{this.getMediaPlayer().seek(Ee-10);}}=0A=
else{this.getMediaPlayer().seek(Ee+10);}};xmp.baseplayer.BasePlayer.proto=
type.setVolume=3Dfunction(){var =
Ge=3Dthis.getMediaPlayer().getVolume();if((Ge+10)>100){Ge=3D0;}=0A=
else{Ge=3DGe+10;}=0A=
this.getMediaPlayer().setVolume(Ge);};xmp.baseplayer.BasePlayer.prototype=
.play=3Dfunction(){this.getMediaPlayer().getViewport().hideOverlays(xmp.A=
LL_OVERLAYS);this.getMediaPlayer().play();};xmp.baseplayer.BasePlayer.pro=
totype.pause=3Dfunction(){this.getMediaPlayer().pause();};xmp.baseplayer.=
BasePlayer.prototype.stop=3Dfunction(){this.getMediaPlayer().stop();};xmp=
.createNamespace("xmp.baseplayer");xmp.baseplayer.EmbeddedConsoleLoggerLi=
stener=3Dfunction(He,Ie,Je,Ke,Le,Me){if(xmp.baseplayer.EmbeddedConsoleLog=
gerListener._instance!=3D=3Dnull){throw new Error('Can have only one =
instance of EmbeddedConsoleLoggerListener.');}=0A=
xmp.baseplayer.EmbeddedConsoleLoggerListener.ctor.call(this,He);xmp.basep=
layer.EmbeddedConsoleLoggerListener._instance=3Dthis;this._ID_PREFIX=3D'x=
mp_ec_';var =
Ne=3Dxmp.util.Logger.getInstance();Ne.addListener(this);Ne.setCategoryFil=
terArray(Ie);this._consoleDivContainerId=3D(Me)?Me:null;this._consoleVisi=
ble=3DJe;this._logAreaVisible=3Dtrue;this._logAreaDims=3D{};this._logArea=
Dims.h=3DKe;this._logAreaDims.w=3DLe;this._messageQueue=3D[];this._create=
LogArea();this.showConsole(this._consoleVisible);};xmp.DERIVE_CLASS(xmp.u=
til.AbstractLoggerListener,xmp.baseplayer.EmbeddedConsoleLoggerListener);=
xmp.baseplayer.EmbeddedConsoleLoggerListener.create=3Dfunction(Oe){var =
Pe=3Dxmp.util.LogLevels.fromString(xmp.getQueryArgOpt('xmpLog','none'));i=
f(Pe=3D=3D=3Dxmp.util.LogLevels.NONE){return null;}=0A=
var Qe=3Dnew =
xmp.baseplayer.EmbeddedConsoleLoggerListener(Pe,Oe.exCats,(Pe!=3D=3Dxmp.u=
til.LogLevels.NONE),Oe.h,Oe.w,Oe.cId);return =
Qe;};xmp.baseplayer.EmbeddedConsoleLoggerListener._instance=3Dnull;xmp.ba=
seplayer.EmbeddedConsoleLoggerListener.getInstance=3Dfunction(){return =
xmp.baseplayer.EmbeddedConsoleLoggerListener._instance;};xmp.baseplayer.E=
mbeddedConsoleLoggerListener.prototype.showConsole=3Dfunction(Re){this._c=
onsoleVisible=3DRe;var =
Se=3Dwindow.document.getElementById(this._consoleDivContainerId);if(Se){S=
e.style.display=3Dthis._consoleVisible?'block':'none';}};xmp.baseplayer.E=
mbeddedConsoleLoggerListener.prototype.isConsoleVisible=3Dfunction(){retu=
rn =
this._consoleVisible;};xmp.baseplayer.EmbeddedConsoleLoggerListener.proto=
type.clearLogOutput=3Dfunction(){var =
Te=3Dwindow.document.getElementById(this._ID_PREFIX+'log_output_area');if=
(Te){Te.innerHTML=3D'';}};xmp.baseplayer.EmbeddedConsoleLoggerListener.pr=
ototype.toggleLogOutput=3Dfunction(){var =
Ue=3Dwindow.document.getElementById(this._ID_PREFIX+'log_output_area_scro=
ll_clip');if(Ue){this._logAreaVisible=3D!this._logAreaVisible;Ue.style.di=
splay=3Dthis._logAreaVisible?'block':'none';}};xmp.baseplayer.EmbeddedCon=
soleLoggerListener.prototype.handleLogMessage=3Dfunction(Ve,We,Xe){try{va=
r Ye=3D'<span =
class=3D"'+this._ID_PREFIX+xmp.util.LogLevels.stringify(Ve)+'_message">'+=
We+': =
'+xmp.escapeHtml(Xe,true,true)+'</span>';this._messageQueue.push(Ye);whil=
e(this._messageQueue.length>25){this._messageQueue.shift();}=0A=
var =
Ze=3Dwindow.document.getElementById(this._ID_PREFIX+'log_output_area');if=
(Ze){while(this._messageQueue.length>0){var =
$e=3Dthis._messageQueue.shift();var =
p=3Dwindow.document.createElement('P');p.innerHTML=3D$e;Ze.appendChild(p)=
;}=0A=
var =
af=3Dwindow.document.getElementById(this._ID_PREFIX+'log_output_area_scro=
ll_clip');if(af){af.scrollTop=3Daf.scrollHeight;}}}=0A=
catch(e){this._handleInternalError('Error in =
xmp.baseplayer.EmbeddedConsoleLoggerListener.handleLogMessage: =
'+xmp.extractErrorMessage(e));}};xmp.baseplayer.EmbeddedConsoleLoggerList=
ener.prototype._handleInternalError=3Dfunction(bf){xmp.showMessage(bf);};=
xmp.baseplayer.EmbeddedConsoleLoggerListener.prototype._createLogArea=3Df=
unction(){var =
cf=3Dnull;if(this._consoleDivContainerId=3D=3D=3Dnull){this._consoleDivCo=
ntainerId=3Dthis._ID_PREFIX+'DebugConsole';cf=3Dwindow.document.createEle=
ment('div');cf.style.display=3D'none';cf.id=3Dthis._consoleDivContainerId=
;xmp.insertDomChildBefore(window.document.body,cf);}=0A=
cf=3Dwindow.document.getElementById(this._consoleDivContainerId);if(cf){c=
f.innerHTML=3Dthis._buildConsoleInnerHtml();}};xmp.baseplayer.EmbeddedCon=
soleLoggerListener.prototype._buildConsoleInnerHtml=3Dfunction(){var =
df=3D'BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #000000 1px solid; =
BORDER-LEFT: #000000 1px solid; BORDER-BOTTOM: #000000 1px solid; =
display: block; position:absolute; overflow:auto';df+=3D('; =
width:'+this._logAreaDims.w+'px');df+=3D('; =
height:'+this._logAreaDims.h+'px');var ih=3D'';ih+=3D'<div =
style=3D"text-align:left; background-color:white; color:black; =
font-size: =
medium;">\n';if(xmp.addDynamicStyle('.'+this._ID_PREFIX+'fatal_message','=
{ font-weight: bold; color: =
#FF0000}')){xmp.addDynamicStyle('.'+this._ID_PREFIX+'critical_message','{=
 font-weight: bold; color: =
#FF0000}');xmp.addDynamicStyle('.'+this._ID_PREFIX+'warn_message','{ =
color: =
#FF0000}');xmp.addDynamicStyle('.'+this._ID_PREFIX+'info_message','{color=
: =
#009966}');xmp.addDynamicStyle('.'+this._ID_PREFIX+'debug_message','{colo=
r: #0000FF}');}=0A=
else{ih+=3D'<style>\n';ih+=3D'.'+this._ID_PREFIX+'fatal_message { =
font-weight: bold; color: =
#FF0000}\n';ih+=3D'.'+this._ID_PREFIX+'critical_message { font-weight: =
bold; color: #FF0000}\n';ih+=3D'.'+this._ID_PREFIX+'warn_message { =
color: #FF0000}\n';ih+=3D'.'+this._ID_PREFIX+'info_message { color: =
#009966}\n';ih+=3D'.'+this._ID_PREFIX+'debug_message { color: =
#0000FF}\n';ih+=3D'</style>\n';}=0A=
ih+=3D'<br>\n';ih+=3D'<b>Logging</b>&nbsp;&nbsp;<INPUT TYPE=3D"button" =
ID=3D"'+this._ID_PREFIX+'ShowHideLogButton" VALUE=3D"Show/Hide Log" =
onClick=3D"xmp.baseplayer.EmbeddedConsoleLoggerListener.getInstance().tog=
gleLogOutput();"\n';ih+=3D'NAME=3D"'+this._ID_PREFIX+'ShowHideLogButton">=
 &nbsp; <INPUT TYPE=3D"button" ID=3D"'+this._ID_PREFIX+'ClearLogButton" =
VALUE=3D"Clear Log" =
onClick=3D"xmp.baseplayer.EmbeddedConsoleLoggerListener.getInstance().cle=
arLogOutput()"\n';ih+=3D'NAME=3D"'+this._ID_PREFIX+'ClearLogButton">&nbsp=
;&nbsp;\n';ih+=3D'<br><i>(Log messages are color coded:\n';ih+=3D'<span =
class=3D"'+this._ID_PREFIX+'fatal_message">Fatal</span>\n';ih+=3D'-\n';ih=
+=3D'<span =
class=3D"'+this._ID_PREFIX+'critical_message">Critical</span>\n';ih+=3D'-=
\n';ih+=3D'<span =
class=3D"'+this._ID_PREFIX+'warn_message">Warning</span>\n';ih+=3D'-\n';i=
h+=3D'<span =
class=3D"'+this._ID_PREFIX+'info_message">Information</span>\n';ih+=3D'-\=
n';ih+=3D'<span =
class=3D"'+this._ID_PREFIX+'debug_message">Debug</span>)\n';ih+=3D'</i>\n=
';ih+=3D'<br>\n';ih+=3D'<br>\n';ih+=3D'<div =
id=3D"'+this._ID_PREFIX+'log_output_area_scroll_clip" =
style=3D"'+df+'">\n';ih+=3D'<div =
id=3D"'+this._ID_PREFIX+'log_output_area">\n';ih+=3D'</div>\n';ih+=3D'</d=
iv>\n';ih+=3D'</div>\n';return =
ih;};xmp.createNamespace("xmp.baseplayer");xmp.baseplayer.ErrorLoggerList=
ener=3Dfunction(ef){xmp.baseplayer.ErrorLoggerListener.ctor.call(this,ef)=
;};xmp.DERIVE_CLASS(xmp.util.AbstractLoggerListener,xmp.baseplayer.ErrorL=
oggerListener);xmp.baseplayer.ErrorLoggerListener.prototype.handleLog=3Df=
unction(ff,gf,hf,jf){if(ff>xmp.util.LogLevels.FATAL&&ff<=3Dthis.getLogLev=
el()){this.handleLogError(ff,gf,hf,jf);}};xmp.baseplayer.ErrorLoggerListe=
ner.prototype.handleLogError=3Dfunction(kf,lf,mf,nf){try{var =
of=3Dxmp.FatalException.createFatalException(xmp.XmpErrorCodes.FATAL_UNSP=
ECIFIED_ERROR,'BasePlayer',xmp.extractErrorMessage(nf));xmp.baseplayer.Ba=
sePlayer._fatalException=3Dof;if(nf instanceof =
xmp.baseplayer.ApplicationError){this.showError(mf,nf);}=0A=
xmp.util.Logger.getInstance().fatal("ErrorLogger",mf,nf);}=0A=
catch(secondE){xmp.showFatalErrorMessage('Second chance exception while =
raising fatal exception: =
'+xmp.extractErrorMessage(secondE));}};xmp.baseplayer.ErrorLoggerListener=
.prototype.showError=3Dfunction(pf,qf){if(pf=3D=3D=3Dnull||pf=3D=3D=3Dund=
efined){pf=3D"Unknown error";}=0A=
var rf=3Dpf;var sf=3D"";if(qf instanceof =
xmp.baseplayer.ApplicationError){rf=3Dqf.message;var =
ie=3Dqf.getInnerError();if(ie!=3D=3Dnull&&ie!=3D=3Dundefined){sf=3Die.mes=
sage;}}=0A=
if(xmp.isFirefoxBrowser()){this.showErrorFirefox(rf,sf);}=0A=
else{this.showErrorIE(rf,sf);}};xmp.baseplayer.ErrorLoggerListener.protot=
ype.showErrorFirefox=3Dfunction(tf,uf){var =
re=3D/[\n\f\r]/gm;tf=3Dtf.replace(re,'<br/>');uf=3Duf.replace(re,'<br/>')=
;var =
vf=3D"width=3D500,height=3D400,toolbar=3D0,";vf+=3D"status=3D0,menubar=3D=
0,scrollbars=3D1,resizable=3D0";var wf=3Dwindow.open("","",vf);var =
xf=3Dwf.document;xf.open();xf.writeln("<html><head>");xf.writeln("<title>=
Error</title>");xf.writeln("<script =
type=3D'text/javascript'>");xf.writeln("var showDetails =3D =
function()");xf.writeln("{");xf.writeln("  =
document.getElementById('mode').value =3D 'Hide Details';");xf.writeln(" =
 document.getElementById('details').innerHTML =3D =
'"+uf+"';");xf.writeln("}");xf.writeln("var hideDetails =3D =
function()");xf.writeln("{");xf.writeln("  =
document.getElementById('mode').value =3D 'Show Details';");xf.writeln(" =
 document.getElementById('details').innerHTML =3D =
'';");xf.writeln("}");xf.writeln("var showHideDetails =3D =
function()");xf.writeln("{");xf.writeln("  var mv =3D =
document.getElementById('mode').value;");xf.writeln("  if (mv =3D=3D=3D =
'Show Details')");xf.writeln("    showDetails();");xf.writeln("  =
else");xf.writeln("    =
hideDetails();");xf.writeln("}");xf.writeln("</script>");xf.writeln("</he=
ad><body onblur=3D'window.focus();'>");xf.writeln("<p =
style=3D'color:red'><b>"+tf+"</b></p>");xf.writeln("<fieldset>");xf.write=
ln("<legend><input type=3Dbutton id=3Dmode value=3D'Show Details' =
onclick=3D'showHideDetails();' /></legend>");xf.writeln("<div =
id=3Ddetails></div>");xf.writeln("</fieldset>");xf.writeln("<p =
align=3Dright><input type=3Dbutton value=3DClose =
onclick=3D'window.close();' =
/></p>");xf.writeln("</body></html>");xf.close();};xmp.baseplayer.ErrorLo=
ggerListener.prototype.showErrorIE=3Dfunction(yf,zf){xmp.showMessage(yf);=
};xmp.createNamespace("xmp.baseplayer");xmp.baseplayer.InstrumentationLog=
gerListener=3Dfunction(Af){var =
Bf=3DMath.min(xmp.util.LogLevels.CRITICAL,Af);xmp.baseplayer.Instrumentat=
ionLoggerListener.ctor.call(this,Bf);this._handler=3Dnew =
xmp.baseplayer.InstrumentationLoggerListener._HttpPostHandler();};xmp.DER=
IVE_CLASS(xmp.util.AbstractLoggerListener,xmp.baseplayer.InstrumentationL=
oggerListener);xmp.baseplayer.InstrumentationLoggerListener.prototype.han=
dleLog=3Dfunction(Cf,Df,Ef,Ff){if(Cf<=3Dthis.getLogLevel()){this.handleLo=
gError(Cf,Df,Ff);}};xmp.baseplayer.InstrumentationLoggerListener.prototyp=
e.handleLogMessage=3Dfunction(Gf,Hf,If){};xmp.baseplayer.InstrumentationL=
oggerListener.prototype.handleLogError=3Dfunction(Jf,Kf,Lf){this._handler=
.log(xmp.util.PlayerStats.getInstance(),Lf);};xmp.baseplayer.Instrumentat=
ionLoggerListener._HttpPostHandler=3Dfunction(){var =
Mf=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode();var =
Nf=3DMf.getNodeForPath('Instrumentation');this._maxPostsPerSession=3DNf.g=
etInt('maxPostsPerSession',1);this._numPosts=3D0;this._postUrl=3DNf.getSt=
ring('postUrl','');this._reportingDiv=3Dnull;};xmp.baseplayer.Instrumenta=
tionLoggerListener._HttpPostHandler.prototype.createHiddenForm=3Dfunction=
(Of,Pf){if(this._postUrl.length>0){var =
Qf=3Dthis.assembleReport(Of,Pf);var =
Rf=3Dwindow.document.createElement('div');Rf.style.display=3D'none';windo=
w.document.body.insertBefore(Rf,null);var Sf=3D'post';var Tf=3D"<form =
name=3D'xmp_fatalErrorReportingForm' id=3D'xmp_fatalErrorReportingForm' =
target=3D'xmp_fatalErrorReportingFormIFrame' =
";Tf+=3D("action=3D'"+this._postUrl+"' ");Tf+=3D("method=3D'"+Sf+"' =
");Tf+=3D(">");for(var =
Uf=3Dxmp.MapIterator.create(Qf);Uf.hasNext();Uf.next()){var =
Vf=3DUf.currentKey();var Wf=3DUf.currentValue();Tf+=3D("<input =
type=3D'hidden' id=3D'"+Vf+"' name=3D'"+Vf+"' value=3D'"+Wf+"'/>");}=0A=
Tf+=3D("</form><iframe id=3D'xmp_fatalErrorReportingFormIFrame' =
name=3D'xmp_fatalErrorReportingFormIFrame'/>");Rf.innerHTML=3DTf;this._re=
portingDiv=3DRf;}};xmp.baseplayer.InstrumentationLoggerListener._HttpPost=
Handler.prototype.populateHiddenForm=3Dfunction(Xf,Yf){var =
Zf=3Dwindow.document.xmp_fatalErrorReportingForm;var =
$f=3Dthis.assembleReport(Xf,Yf);for(var =
ag=3Dxmp.MapIterator.create($f);ag.hasNext();ag.next()){var =
bg=3Dag.currentKey();var =
cg=3Dag.currentValue();Zf[bg].value=3Dcg;}};xmp.baseplayer.Instrumentatio=
nLoggerListener._HttpPostHandler.prototype.log=3Dfunction(dg,eg){if(this.=
_numPosts>=3Dthis._maxPostsPerSession){return;}=0A=
this._numPosts++;if(this._reportingDiv=3D=3D=3Dnull){this.createHiddenFor=
m(dg,eg);}=0A=
else{this.populateHiddenForm(dg,eg);}=0A=
if(this._reportingDiv){var =
fg=3Dwindow.document.xmp_fatalErrorReportingForm;fg.submit();}};xmp.basep=
layer.InstrumentationLoggerListener._HttpPostHandler.prototype.assembleRe=
port=3Dfunction(gg,hg){var ig=3D{};ig.timestamp=3D((new =
Date()).getTime()).toString();ig.reason=3Dthis._extractErrorCode(hg).toSt=
ring();ig.detail=3Dhg.message;var jg=3Dgg.getKeys();for(var =
i=3D0;i<jg.length;++i){var kg=3Djg[i];var =
lg=3Dgg.getValue(kg);ig[kg.toLowerCase()]=3Dlg;}=0A=
return =
ig;};xmp.baseplayer.InstrumentationLoggerListener._HttpPostHandler.protot=
ype._extractErrorCode=3Dfunction(mg){if(mg instanceof =
xmp.FatalException){return mg.getFatalErrorCode();}=0A=
if(mg instanceof xmp.CriticalException){return =
mg.getCriticalErrorCode();}=0A=
return =
xmp.XmpErrorCodes.NONE;};xmp.createNamespace("xmp.baseplayer");xmp.basepl=
ayer.MetaFileLoaderFactory=3Dfunction(){this._loaderIdCount=3D0;this._map=
=3D{};this._loaderCtorMap=3D{};this._addLoaderCtors();};xmp.baseplayer.Me=
taFileLoaderFactory._singeltonInstance=3Dnull;xmp.baseplayer.MetaFileLoad=
erFactory.getInstance=3Dfunction(){if(xmp.baseplayer.MetaFileLoaderFactor=
y._singeltonInstance=3D=3D=3Dnull){xmp.baseplayer.MetaFileLoaderFactory._=
singeltonInstance=3Dnew xmp.baseplayer.MetaFileLoaderFactory();}=0A=
return =
xmp.baseplayer.MetaFileLoaderFactory._singeltonInstance;};xmp.baseplayer.=
MetaFileLoaderFactory.prototype.create=3Dfunction(ng){var =
og=3Dthis._createInternal(ng);this._map[og.getLoaderId()]=3Dog;return =
og;};xmp.baseplayer.MetaFileLoaderFactory.prototype._createInternal=3Dfun=
ction(pg){this._loaderIdCount++;var =
id=3Dthis._loaderIdCount.toString();var =
qg=3Dthis._loaderCtorMap[pg];if(!qg){throw new Error('Unrecognized =
serializer type: '+pg);}=0A=
var rg=3Dxmp.getNamespacedMethod(qg);var sg=3Dnew rg(this,id);return =
sg;};xmp.baseplayer.MetaFileLoaderFactory.prototype._release=3Dfunction(t=
g){if(typeof this._map[tg.getLoaderId()]!=3D=3D'undefined'){delete =
this._map[tg.getLoaderId()];}};xmp.baseplayer.MetaFileLoaderFactory.proto=
type._addLoaderCtors=3Dfunction(){var =
ug=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode().getNod=
eForPath('loaders');var vg=3Dug.retrieveChildrenNames();for(var =
i=3D0;i<vg.length;i++){var wg=3Dvg[i];var xg=3Dug.getNodeForPath(wg);var =
yg=3Dxg.getString('JSClass','');this._loaderCtorMap[wg]=3Dyg;}};xmp.creat=
eNamespace("xmp.baseplayer");xmp.baseplayer.PlayListMod=3Dfunction(zg,id)=
{this._id=3Did;this._action=3Dzg;xmp.baseplayer.PlayListMod._staticCounte=
r++;this._modNum=3Dxmp.baseplayer.PlayListMod._staticCounter;};xmp.basepl=
ayer.PlayListMod._staticCounter=3D0;xmp.baseplayer.PlayListMod.prototype.=
getModNum=3Dfunction(){return =
this._modNum;};xmp.baseplayer.PlayListMod.prototype.getId=3Dfunction(){re=
turn =
this._id;};xmp.baseplayer.PlayListMod.prototype.getAction=3Dfunction(){re=
turn =
this._action;};xmp.createNamespace("xmp.baseplayer");xmp.baseplayer.Trigg=
erContext=3Dfunction(){this._triggerType=3D'';this._commandData=3D'';this=
._metadataMap=3Dnew =
xmp.util.internals.MetadataMap(false);this._node=3Dnull;};xmp.baseplayer.=
TriggerContext.prototype.getTriggerType=3Dfunction(){return =
this._triggerType;};xmp.baseplayer.TriggerContext.prototype.setTriggerTyp=
e=3Dfunction(Ag){this._triggerType=3D(Ag)?Ag:'';};xmp.baseplayer.TriggerC=
ontext.prototype.getCommandData=3Dfunction(){return =
this._commandData;};xmp.baseplayer.TriggerContext.prototype.setCommandDat=
a=3Dfunction(Bg){this._commandData=3D(Bg)?Bg:'';};xmp.baseplayer.TriggerC=
ontext.prototype.getPlayableNode=3Dfunction(){return =
this._node;};xmp.baseplayer.TriggerContext.prototype.setPlayableNode=3Dfu=
nction(Cg){this._node=3D(Cg)?Cg:null;};xmp.baseplayer.TriggerContext.prot=
otype.getMetadata=3Dfunction(Dg,Eg){return =
this._metadataMap._get(Dg,Eg);};xmp.baseplayer.TriggerContext.prototype.s=
etMetadata=3Dfunction(Fg,Gg){this._metadataMap._set(Fg,Gg);};xmp.createNa=
mespace("xmp.baseplayer");xmp.baseplayer._NLMap=3Dfunction(Hg){this._play=
er=3DHg;this._nodeListernerMap=3D{};this._frameworkListenerMap=3D{};this.=
_frameworkListenerMap.adLoader=3Dnew =
xmp.baseplayer.listeners.internal.AdLoaderNodeListener(this._player);this=
._frameworkListenerMap.nonAdLoader=3Dnew =
xmp.baseplayer.listeners.internal.NonAdLoaderNodeListener(this._player);t=
his._frameworkListenerMap.promoLoader=3Dnew =
xmp.baseplayer.listeners.internal.PromoLoaderNodeListener(this._player);t=
his._frameworkListenerMap.tracking=3Dnew =
xmp.baseplayer.listeners.internal.TrackingNodeListener(this._player);this=
._frameworkListenerMap.metering=3Dnew =
xmp.baseplayer.listeners.internal.MeteringNodeListener(this._player);this=
._frameworkListenerMap.firstFrame=3Dnew =
xmp.baseplayer.listeners.internal.FirstFrameNodeListener(this._player);th=
is._frameworkListenerNameMap=3D{};this._frameworkListenerNameMap.Ad=3D['a=
dLoader','metering','firstFrame'];this._frameworkListenerNameMap.Promo=3D=
['promoLoader','firstFrame'];this._frameworkListenerNameMap.Content=3D['n=
onAdLoader','tracking','firstFrame'];this._frameworkListenerNameMap.DEFAU=
LT=3D['nonAdLoader'];this._registrationArray=3D[];};xmp.baseplayer._NLMap=
.prototype._getNodeListener=3Dfunction(Ig){var =
Jg=3Dthis._nodeListernerMap[Ig.getNodeTypeName()];if(!Jg){Jg=3Dthis._crea=
teCompositeNodeListener(Ig.getNodeTypeName());this._nodeListernerMap[Ig.g=
etNodeTypeName()]=3DJg;}=0A=
return =
Jg;};xmp.baseplayer._NLMap.prototype._registerNodeListener=3Dfunction(Kg,=
Lg){xmp.validateArguments(arguments,[xmp.OBJECT_TYPE,xmp.OBJECT_TYPE],"_N=
LMap.registerNodeListener");if(!Kg||!Lg||(Lg.length=3D=3D=3D0)){throw =
new xmp.util.internals.InvalidArgsError("The 'listener' argument must be =
non-null, and the 'nodeTypeArray' argument must be non-null and =
non-empty.");}=0A=
for(var i=3D0;i<Lg.length;i++){var Mg=3DLg[i];if(!(typeof =
Mg=3D=3D=3D'string'&&Mg.length>0)){throw new =
xmp.util.internals.InvalidArgsError("The 'nodeTypeArray' argument must =
be an array of non-empty strings.");}}=0A=
this._registrationArray.push({l:Kg,nta:Lg});};xmp.baseplayer._NLMap.proto=
type._getFrameworkListeners=3Dfunction(Ng){var Og=3D[];var =
Pg=3Dxmp.playlistapi.PlayableNodeType.getBaseNodeTypeName(Ng);var =
Qg=3Dthis._frameworkListenerNameMap[Pg];for(var =
i=3D0;i<Qg.length;i++){var Rg=3DQg[i];var =
Sg=3Dthis._frameworkListenerMap[Rg];Og.push(Sg);}=0A=
return =
Og;};xmp.baseplayer._NLMap.prototype._getVerticalListeners=3Dfunction(Tg)=
{var Ug=3D[];for(var i=3D0;i<this._registrationArray.length;i++){var =
Vg=3Dthis._registrationArray[i];var Wg=3DVg.l;var Xg=3DVg.nta;for(var =
j=3D0;j<Xg.length;j++){var =
Yg=3DXg[j];if((Yg=3D=3D=3D'*')||(Yg=3D=3D=3DTg)){Ug.push(Wg);}}}=0A=
return =
Ug;};xmp.baseplayer._NLMap.prototype._getAndCheckVerticalListeners=3Dfunc=
tion(Zg){var =
$g=3Dthis._getVerticalListeners(Zg);if($g.length=3D=3D=3D0){throw new =
xmp.util.internals.InvalidArgsError('No vertical node listener =
registered for node type: '+Zg);}=0A=
return =
$g;};xmp.baseplayer._NLMap.prototype._validateListeners=3Dfunction(ah,bh)=
{for(var i=3D0;i<bh.length;i++){var ch=3Dbh[i];for(var =
j=3Di+1;j<bh.length;j++){var dh=3Dbh[j];if(ch=3D=3D=3Ddh){throw new =
xmp.util.internals.InvalidArgsError('Same listener registered more than =
once for node type: =
'+ah);}}}};xmp.baseplayer._NLMap.prototype._createCompositeNodeListener=3D=
function(eh){var =
fh=3Dthis._getFrameworkListeners(eh);fh=3Dfh.concat(this._getAndCheckVert=
icalListeners(eh));this._validateListeners(eh,fh);var gh=3Dnew =
xmp.baseplayer.listeners.CompositeNodeListener(this._player);for(var =
i=3D0;i<fh.length;i++){gh.addChild(fh[i]);}=0A=
return =
gh;};xmp.createNamespace("xmp.baseplayer");xmp.baseplayer._PDMapArray=3Df=
unction(){this._array=3D[];this._map=3D{};};xmp.baseplayer._PDMapArray.pr=
ototype.insert=3Dfunction(hh,jh){if(hh>=3Dthis.getCount()){this._array.pu=
sh(jh);}=0A=
else{this._array.splice(hh,0,jh);}=0A=
this._map[jh.getMetaResourceId()]=3Djh;};xmp.baseplayer._PDMapArray.proto=
type.removeAll=3Dfunction(){this._array=3D[];this._map=3D{};};xmp.basepla=
yer._PDMapArray.prototype.remove=3Dfunction(kh){var =
lh=3Dthis._array.splice(kh,1)[0];delete =
this._map[lh.getMetaResourceId()];return =
lh;};xmp.baseplayer._PDMapArray.prototype.move=3Dfunction(mh,nh){var =
oh=3Dthis.remove(mh);this.insert(nh,oh);};xmp.baseplayer._PDMapArray.prot=
otype.getCount=3Dfunction(){return =
this._array.length;};xmp.baseplayer._PDMapArray.prototype.getAtIndex=3Dfu=
nction(ph){return =
this._array[ph];};xmp.baseplayer._PDMapArray.prototype.findItem=3Dfunctio=
n(id){var =
qh=3Dthis._map[id];return(!qh)?null:qh;};xmp.baseplayer._PDMapArray.proto=
type.findItemIndex=3Dfunction(id){var rh=3Dthis.getCount();for(var =
i=3D0;i<rh;i++){if(this.getAtIndex(i).getMetaResourceId()=3D=3D=3Did){ret=
urn i;}}=0A=
return-1;};xmp.baseplayer._PDMapArray.prototype.extractIdArray=3Dfunction=
(sh){var th=3D[];for(var i=3Dsh;i<this._array.length;i++){var =
uh=3Dthis._array[i];th.push(uh.getMetaResourceId());}=0A=
return =
th;};xmp.createNamespace("xmp.baseplayer");xmp.baseplayer._PLCtx=3Dfuncti=
on(vh,wh,xh,yh){this._AD_PATTERN_CALL_BACK=3D'adPatternCB';this._key=3Dvh=
;this._owner=3Dwh;this._logger=3Dthis._owner._logger;this._latch=3Dnull;t=
his._advanceToId=3D"";this._pdMapArray=3Dnew =
xmp.baseplayer._PDMapArray();this._xmpPlayList=3Dnull;this._ruleMap=3Dnul=
l;this._currentNode=3Dnull;this._currentContentNode=3Dnull;this._previous=
Node=3Dnull;this._stateListener=3Dnull;this._initPlayListData=3D{p:yh,ira=
:[]};this._modArray=3D[];this.init(xh);};xmp.baseplayer._PLCtx._staticCbC=
ounter=3D0;xmp.baseplayer._PLCtx.prototype.debugPrint=3Dfunction(zh){var =
Ah=3Dzh+": ";Ah+=3D"key =3D "+this._key+"; ";Ah+=3D"owner =3D =
"+this._owner.getId()+"; ";Ah+=3D"advanceToId =3D "+this._advanceToId+"; =
";Ah+=3D"currently rendering node =3D =
"+xmp.util.PlayableNode.safeGetBestId(this._currentNode)+"; =
";Ah+=3D"current content node =3D =
"+xmp.util.PlayableNode.safeGetBestId(this._currentContentNode)+"; =
";Ah+=3D"current playing index =3D =
"+this._getCurrentlyPlayingItemIndex()+"; =
";this._logger.debug(Ah);};xmp.baseplayer._PLCtx.prototype.getLookAheadNo=
deArray=3Dfunction(){return =
this._xmpPlayList.getLookAheadNodeArray();};xmp.baseplayer._PLCtx.prototy=
pe.getLookBehindNodeArray=3Dfunction(){return =
this._xmpPlayList.getLookBehindNodeArray();};xmp.baseplayer._PLCtx.protot=
ype.init=3Dfunction(Bh){xmp.validateArguments(arguments,[xmp.STRING_TYPE]=
,"_PLCtx.init");try{var Ch=3Dnew =
xmp.util.Callback('masterCB',this._latchComplete,this);this._latch=3Dnew =
xmp.util.Latch([],Ch);this._ruleMap=3Dnew =
xmp.baseplayer._RuleMap(this._latch,this);this._initPlayListData.ira=3Dth=
is._ruleMap._loadInvariantRules();this._loadAdPattern(Bh);this._ruleMap._=
loadRuleImplementations();}=0A=
catch(e){this._logger.warn('Error in init',e);throw =
e;}};xmp.baseplayer._PLCtx.prototype.loadContent=3Dfunction(Dh,Eh){xmp.va=
lidateArguments(arguments,[xmp.OBJECT_TYPE,xmp.STRING_TYPE],"_PLCtx.loadC=
ontent");try{var Fh=3D[];var Gh=3D{};for(var i=3D0;i<Dh.length;i++){var =
Hh=3DDh[i];if(!xmp.isNonEmptyString(Hh)){throw new =
xmp.util.internals.InvalidArgsError("The 'mridArray' argument must =
contain only non-empty strings.");}=0A=
if(typeof(Gh[Hh])!=3D=3D'undefined'){this._logger.info('Dropping =
duplicate content ID: '+Hh);continue;}=0A=
Gh[Hh]=3DHh;Fh.push(Hh);}=0A=
Dh=3DFh;if(Dh.length=3D=3D=3D0){throw new =
xmp.util.internals.InvalidArgsError("The 'mridArray' argument must =
contain at least one unique id.");}=0A=
if(Eh.length=3D=3D=3D0){Eh=3DDh[0];}=0A=
if(typeof(Gh[Eh])=3D=3D=3D'undefined'){throw new =
xmp.util.internals.InvalidArgsError("The 'startResourceId' argument must =
be empty or refer to an id in 'mridArray'.");}=0A=
this._advanceToId=3DEh;this._pdMapArray.removeAll();return =
this.handleLoadContent('loadContent','Batch',Dh,0);}=0A=
catch(e){this._logger.warn('Error in loadContent',e);throw =
e;}};xmp.baseplayer._PLCtx.prototype.handleLoadContent=3Dfunction(Ih,id,J=
h,Kh){var =
cb=3Dthis._createPLModCbObj(Ih,id);this._latch.addCbName(cb.getId());var =
Lh=3Dxmp.baseplayer.MetaFileLoaderFactory.getInstance().create('videoCont=
entMeta');var =
Mh=3DLh.setIds(Jh,null);Lh.setAllLoadedCallback(cb);for(var =
i=3D0;i<Mh.length;i++){var =
Nh=3DMh[i];Nh.reInitRuntimeMetadata();this._pdMapArray.insert(Kh+i,Nh);}=0A=
Lh.load();return =
cb.getMetadata('_modNum',0);};xmp.baseplayer._PLCtx.prototype.getKey=3Dfu=
nction(){return =
this._key;};xmp.baseplayer._PLCtx.prototype.setStateListener=3Dfunction(O=
h){this._stateListener=3DOh;};xmp.baseplayer._PLCtx.prototype.appendToPla=
yList=3Dfunction(Ph,Qh){var Rh=3Dnull;var =
Sh=3Dthis.getPlayListItemCount();if(Sh>0){Rh=3Dthis.getPlayListItem(Sh-1)=
.getMetaResourceId();}=0A=
return =
this.insertInPlayListEx('append',Ph,Rh,Qh);};xmp.baseplayer._PLCtx.protot=
ype.removeFromPlayList=3Dfunction(Th){var =
Uh=3Dthis.findPlayListItemIndex(Th);if(Uh<0){return-1;}=0A=
this._pdMapArray.remove(Uh);return =
this._doLatchAsynch('remove',Th);};xmp.baseplayer._PLCtx.prototype.insert=
InPlayList=3Dfunction(Vh,Wh,Xh){return =
this.insertInPlayListEx('insert',Vh,Wh,Xh);};xmp.baseplayer._PLCtx.protot=
ype.insertInPlayListEx=3Dfunction(Yh,Zh,$h,ai){var =
bi=3Dthis._validateInsertAndMoveArgs(Zh,$h,ai,false);if(ai||!this._isRunn=
ing()){this._advanceToId=3DZh;}=0A=
return =
this.handleLoadContent(Yh,Zh,[Zh],bi.a+1);};xmp.baseplayer._PLCtx.prototy=
pe.moveWithinPlayList=3Dfunction(ci,di,ei){var =
fi=3Dthis._validateInsertAndMoveArgs(ci,di,ei,true);var =
gi=3Dfi.a;if(fi.a<fi.i){gi++;}=0A=
this._pdMapArray.move(fi.i,gi);if(ei){this._advanceToId=3Dci;}=0A=
return =
this._doLatchAsynch('move',ci);};xmp.baseplayer._PLCtx.prototype.setCurre=
ntPlayListItem=3Dfunction(hi){var =
ii=3Dthis.findPlayListItemIndex(hi);if(ii<0){throw new =
xmp.util.internals.InvalidArgsError("The 'mrid' argument must refer to =
an exising playlist item.");}=0A=
this._advanceToId=3Dhi;return =
this._doLatchAsynch('setCur',hi);};xmp.baseplayer._PLCtx.prototype.getCur=
rentPlayListItem=3Dfunction(){var =
ji=3Dthis._currentNode;if(this._isValidNode(ji)){if(ji.isContentType()){r=
eturn ji.getPlayableData().getMetaResourceId();}=0A=
else{var a=3Dthis.getLookAheadNodeArray();for(var =
i=3D0;i<a.length;i++){var ki=3Da[i];if(ki.isContentType()){return =
ki.getPlayableData().getMetaResourceId();}}}}=0A=
return'';};xmp.baseplayer._PLCtx.prototype.getPlayListItemCount=3Dfunctio=
n(){return =
this._pdMapArray.getCount();};xmp.baseplayer._PLCtx.prototype.getPlayList=
Item=3Dfunction(li){return =
this._pdMapArray.getAtIndex(li);};xmp.baseplayer._PLCtx.prototype.findPla=
yListItem=3Dfunction(mi){return =
this._pdMapArray.findItem(mi);};xmp.baseplayer._PLCtx.prototype.findPlayL=
istItemIndex=3Dfunction(ni){return =
this._pdMapArray.findItemIndex(ni);};xmp.baseplayer._PLCtx.prototype.regi=
sterRuleClass=3Dfunction(oi,pi){this._ruleMap.registerRuleClass(oi,pi);th=
is._xmpPlayList.addRuleFactory(oi,this._ruleMap);};xmp.baseplayer._PLCtx.=
prototype._loadAdPattern=3Dfunction(qi){var cb=3Dnew =
xmp.util.Callback(this._AD_PATTERN_CALL_BACK,this._adPatternCb,this);this=
._latch.addCbName(cb.getId());xmp.net.AjaxRequestManager.getInstance().re=
quest(qi,cb,'adPolicy',qi,xmp.net.ContentTypes.JSON,null);};xmp.baseplaye=
r._PLCtx.prototype._adPatternCb=3Dfunction(cb,ri){var =
si=3Dnull;if(ri.isError()){si=3D{e:ri.getErrorObject(),j:null};var =
ti=3Dnew =
xmp.baseplayer.ApplicationError(ri.getErrorObject(),'FailToGetAdPattern',=
null,[{label:"Url",text:ri.getFullUrl()}]);this._logger.warn(ti.message,t=
i);}=0A=
else{si=3D{e:null,j:ri.getJsonObject()};}=0A=
this._latch.called(cb.getId(),si);if(this._logger.isDebugEnabled()){this.=
_logger.debug("_PLCtx._adPatternCb");}};xmp.baseplayer._PLCtx.prototype._=
PLModCb=3Dfunction(cb){this._latch.called(cb.getId(),null);if(this._logge=
r.isDebugEnabled()){this._logger.debug("_PLCtx._PLModCb: =
"+cb.getId());}};xmp.baseplayer._PLCtx.prototype._latchComplete=3Dfunctio=
n(cb){if(!this._xmpPlayList){var =
ui=3Dcb.getMetadata(this._AD_PATTERN_CALL_BACK,{});this._initXmpPlayList(=
ui);}=0A=
var vi=3Dthis._isRunning();var =
wi=3Dthis._getCurrentlyPlayingItemIndex();if(this._logger.isDebugEnabled(=
)){var xi=3D'Latch Complete, run state =3D '+this._calcRunState()+', =
count =3D '+this.getPlayListItemCount()+', current index =3D '+wi+', =
_advanceToId =3D '+this._advanceToId;this._logger.debug(xi);}=0A=
var yi=3Dthis._calcAdvanceToIndex();var zi=3D-1;if(yi>=3D0){zi=3Dyi;}=0A=
else{if(wi<0&&vi){wi=3D-1;}=0A=
zi=3D(wi+1);}=0A=
if(zi<0){this._logger.warn('Invalid refreshFromIndex, correcting to 0: =
'+zi);zi=3D0;}=0A=
this._xmpPlayList.setContentMetaResourceIds(this._pdMapArray.extractIdArr=
ay(zi));this._xmpPlayList.getIterator().first();if(yi>=3D0&&this._canAdva=
nce()){this.advance();}=0A=
this._notifyPLMods();};xmp.baseplayer._PLCtx.prototype._initXmpPlayList=3D=
function(Ai){try{if(Ai.e!=3D=3Dnull){throw Ai.e;}=0A=
this._xmpPlayList=3Dnew =
xmp.playlistapi.AdPatternPlayList(this,Ai.j,this._initPlayListData.ira,th=
is._initPlayListData.p);var =
Bi=3Dthis._xmpPlayList.getRuleIdArray();this._ruleMap._registerRules(Bi);=
this._xmpPlayList.loadRuleFactoryArray([this._ruleMap]);}=0A=
catch(e){this._logger.warn('Error initializing =
playlist',e);}};xmp.baseplayer._PLCtx.prototype.getCurrentNode=3Dfunction=
(){return =
this._currentNode;};xmp.baseplayer._PLCtx.prototype.advance=3Dfunction(){=
if(this._xmpPlayList.getIterator().hasNext()){var =
Ci=3Dthis._xmpPlayList.getIterator().next();this._previousNode=3Dthis._cu=
rrentNode;if(this._currentNode=3D=3D=3Dnull){this._notifyPLStarted();}=0A=
this._currentNode=3DCi;if(Ci.isContentType()){this._currentContentNode=3D=
Ci;}=0A=
if(this._stateListener){this._stateListener.onAdvance();}}=0A=
else{this._currentNode=3Dnull;this._currentContentNode=3Dnull;this._notif=
yPLEnded();}};xmp.baseplayer._PLCtx.prototype._calcAdvanceToIndex=3Dfunct=
ion(){var =
Di=3D-1;if(this._advanceToId.length>0){Di=3Dthis.findPlayListItemIndex(th=
is._advanceToId);if((Di<0)&&this._logger.isDebugEnabled()){this._logger.d=
ebug("_PLCtx._calcAdvanceToIndex: "+this._advanceToId+" is not a valid =
play list item id; cannot advance to it.");}}=0A=
this._advanceToId=3D'';return =
Di;};xmp.baseplayer._PLCtx.prototype._canAdvance=3Dfunction(){var =
Ei=3Dthis._isRunning();var =
Fi=3Dthis._currentNode;return(!Ei||(Ei&&this._owner._getNodeListener(Fi).=
canUserControl(Fi)));};xmp.baseplayer._PLCtx.prototype._isRunning=3Dfunct=
ion(){return =
this._isValidNode(this._currentNode);};xmp.baseplayer._PLCtx.prototype._i=
sValidNode=3Dfunction(Gi){return(Gi&&Gi.isValid()&&Gi.getPlayableData());=
};xmp.baseplayer._PLCtx.prototype.handleInitializePlayableNode=3Dfunction=
(Hi){this._owner.handleInitializePlayableNode(Hi);};xmp.baseplayer._PLCtx=
.prototype._createPLModCbObj=3Dfunction(Ii,id){xmp.baseplayer._PLCtx._sta=
ticCbCounter++;var =
c=3Dxmp.baseplayer._PLCtx._staticCbCounter.toString();var =
Ji=3D'PLModCb_'+c+'_'+Ii+':'+id;var cb=3Dnew =
xmp.util.Callback(Ji,this._PLModCb,this);var Ki=3Dnew =
xmp.baseplayer.PlayListMod(Ii,id);cb.setMetadata('_modNum',Ki.getModNum()=
);this._modArray.push(Ki);return =
cb;};xmp.baseplayer._PLCtx.prototype._doLatchAsynch=3Dfunction(Li,id){var=
 =
cb=3Dthis._createPLModCbObj(Li,id);this._latch.addCbName(cb.getId());xmp.=
util.Timer.doSimpleCallback(cb);return =
cb.getMetadata('_modNum',0);};xmp.baseplayer._PLCtx.prototype._getCurrent=
lyPlayingItemIndex=3Dfunction(){var =
Mi=3Dthis._currentContentNode;if(this._isValidNode(Mi)){return =
this.findPlayListItemIndex(Mi.getPlayableData().getMetaResourceId());}=0A=
return-1;};xmp.baseplayer._PLCtx.prototype._getPlayableData=3Dfunction(Ni=
){return =
this.findPlayListItem(Ni);};xmp.baseplayer._PLCtx.prototype._validateInse=
rtAndMoveArgs=3Dfunction(Oi,Pi,Qi,Ri){var =
Si=3D{a:-1,i:-1};if(!(xmp.isNonEmptyString(Oi)&&(Pi=3D=3D=3Dnull||xmp.isN=
onEmptyString(Pi)))){throw new xmp.util.internals.InvalidArgsError("The =
'mrid' argument must be a non-null, non-empty string, "+"and the =
'afterMrid' must EITHER be null OR a a non-null, non-empty string");}=0A=
if(Oi=3D=3D=3DPi){throw new xmp.util.internals.InvalidArgsError("The =
'mrid' argument must NOT be the same value as the 'afterMrid' value.");}=0A=
if(typeof(Qi)!=3D=3D'boolean'){throw new =
xmp.util.internals.InvalidArgsError("The 'setPos' argument must be of =
boolean type.");}=0A=
if(Pi!=3D=3Dnull){Si.a=3Dthis.findPlayListItemIndex(Pi);if(Si.a<0){throw =
new xmp.util.internals.InvalidArgsError("The 'afterMrid' argument must =
be set to null, or must refer to an exising playlist item.");}}=0A=
Si.i=3Dthis.findPlayListItemIndex(Oi);if(Ri){if(Si.i<0){throw new =
xmp.util.internals.InvalidArgsError("The 'mrid' argument must refer to =
an exising playlist item when moving.");}}=0A=
else{if(Si.i>-1){throw new xmp.util.internals.InvalidArgsError("The =
'mrid' argument must NOT refer to an exising playlist item when =
inserting/appending.");}}=0A=
return =
Si;};xmp.baseplayer._PLCtx.prototype._calcRunState=3Dfunction(){if(this._=
isRunning()){return'running';}=0A=
else{return this._isValidNode(this._previousNode)?'stopped':'never =
started';}};xmp.baseplayer._PLCtx.prototype._notifyPLStarted=3Dfunction()=
{try{this._owner.handlePlayListStarted();}=0A=
catch(e){this._logger.warn('Error calling =
handlePlayListStarted',e);}};xmp.baseplayer._PLCtx.prototype._notifyPLEnd=
ed=3Dfunction(){try{this._owner.handlePlayListEnded();}=0A=
catch(e){this._logger.warn('Error calling =
handlePlayListEnded',e);}};xmp.baseplayer._PLCtx.prototype._notifyPLMods=3D=
function(){var =
Ti=3D[];Ti=3DTi.concat(this._modArray);this._modArray=3D[];try{this._owne=
r.handlePlayListModified(Ti);}=0A=
catch(e){this._logger.warn('Error calling =
handlePlayListModified',e);}};xmp.createNamespace("xmp.baseplayer");xmp.b=
aseplayer._RuleMap=3Dfunction(Ui,Vi){this._logger=3Dnew =
xmp.util.internals.CategoryLogger('_RuleMap');this._ruleIdArray=3D[];this=
._ruleIdToConstructorMap=3D{};this._latch=3DUi;this._player=3DVi;};xmp.ba=
seplayer._RuleMap.prototype.registerRuleClass=3Dfunction(Wi,Xi){if(!(xmp.=
isNonEmptyString(Wi)&&xmp.isNonEmptyString(Xi))){throw new =
xmp.util.internals.InvalidArgsError("The 'ruleId' and =
'ruleFullyQualifiedConstructor' arguments must be non-null, non-empty =
strings.");}=0A=
if(typeof(this._ruleIdToConstructorMap[Wi])=3D=3D=3D'undefined'){this._ru=
leIdArray.push(Wi);this._ruleIdToConstructorMap[Wi]=3DXi;}};xmp.baseplaye=
r._RuleMap.prototype._loadInvariantRules=3Dfunction(){var =
Yi=3Dxmp.util.SettingsManager.getInstance().getContextNode();if(!Yi.nodeE=
xists('invariantRules')){return[];}=0A=
var Zi=3DYi.getNodeForPath('invariantRules');var =
$i=3DZi.retrieveKeys();var aj=3D"[";for(var i=3D0;i<$i.length;i++){var =
bj=3D$i[i];aj+=3DZi.getString(bj,'');if(i!=3D=3D($i.length-1)){aj+=3D",";=
}}=0A=
aj+=3D"]";try{return =
xmp.net.AjaxRequestManager.getInstance()._parseJson(aj);}=0A=
catch(e){this._logger.warn('Error loading invariant rule ids.',e);throw =
e;}};xmp.baseplayer._RuleMap.prototype._registerRules=3Dfunction(cj){var =
dj=3Dxmp.util.SettingsManager.getInstance().getContextNode().getNodeForPa=
th('BasePlayer').getString('rule classes namespace','');for(var =
i=3D0;i<cj.length;i++){var ej=3Dcj[i];var =
fj=3Dej;if(dj.length>0){fj=3D(dj+'.'+fj);}=0A=
this.registerRuleClass(ej,fj);}};xmp.baseplayer._RuleMap.prototype._loadR=
uleImplementations=3Dfunction(){var =
gj=3Dxmp.util.SettingsManager.getInstance().getContextNode().getNodeForPa=
th('BasePlayer').getString('rule classes relative URL','');var cb=3Dnew =
xmp.util.Callback('getRulesCB',this._ruleImplementationsCb,this);this._la=
tch.addCbName(cb.getId());if(gj=3D=3D=3D'NONE'){cb.setMetadata('no_rules'=
,'true');cb.callAsynch([]);}=0A=
else{xmp.net.AjaxRequestManager.getInstance().request(gj,cb,'ruleClasses'=
,gj,xmp.net.ContentTypes.TEXT,null);}};xmp.baseplayer._RuleMap.prototype.=
_ruleImplementationsCb=3Dfunction(cb,hj){if(cb.getMetadata('no_rules','fa=
lse')=3D=3D=3D'true'){this._latch.called(cb.getId(),{e:null});return;}=0A=
if(hj.isError()){var ij=3Dnew =
xmp.baseplayer.ApplicationError(hj.getErrorObject(),'RulesNotDownLoaded',=
null,[{label:"Url",text:hj.getFullUrl()}]);this._logger.warn(ij.message,i=
j);this._latch.called(cb.getId(),{e:hj.getErrorObject()});}=0A=
else{try{xmp.net.AjaxRequestManager.getInstance()._parseJavaScript(hj.get=
Text());this._latch.called(cb.getId(),{e:null});}=0A=
catch(e){var kj=3D(e instanceof Error)?e:new Error('UKNOWN =
ERROR');this._latch.called(cb.getId(),{e:kj});}}};xmp.baseplayer._RuleMap=
.prototype.getCreatableRuleIds=3Dfunction(){return =
this._ruleIdArray;};xmp.baseplayer._RuleMap.prototype.createRule=3Dfuncti=
on(lj){var mj=3Dthis._ruleIdToConstructorMap[lj];if(!mj){return null;}=0A=
var nj=3Dxmp.getNamespacedMethod(mj);var oj=3Dnew =
nj(this._player);return =
oj;};xmp.createNamespace("xmp.baseplayer.internals");xmp.baseplayer.inter=
nals.Ad=3Dfunction(){};xmp.baseplayer.internals.Ad.prototype.buildRelativ=
eURL=3Dfunction(pj,qj,rj,sj){var =
tj=3Dxmp.util.SettingsManager.getInstance().getContextNode().getNodeForPa=
th('BasePlayer/Additional segvars').getString(pj,'');var =
uj=3D'';if(qj>0){uj=3Dthis._makeQueryPair('tile',qj);}=0A=
uj=3Dthis._appendToQuery(uj,rj);uj=3Dthis._appendToQuery(uj,tj);uj=3Dthis=
._appendToQuery(uj,sj);return =
uj;};xmp.baseplayer.internals.Ad.getAdServerRoot=3Dfunction(){return =
xmp.util.RootUrlProvider.getInstance().getRootUrl('adServer');};xmp.basep=
layer.internals.Ad.getAdManRoot=3Dfunction(){return =
xmp.util.RootUrlProvider.getInstance().getRootUrl('adMan');};xmp.baseplay=
er.internals.Ad.prototype._appendToQuery=3Dfunction(vj,wj){var =
xj=3Dvj;if(wj&&wj.length!=3D=3D0){if(xj.length>0){xj+=3D'&';}=0A=
xj+=3Dwj;}=0A=
return =
xj;};xmp.baseplayer.internals.Ad.prototype.setPingImage=3Dfunction(yj){re=
turn =
xmp.baseplayer.internals.AdMeteringImagePool.getInstance().setPingImage(y=
j);};xmp.baseplayer.internals.Ad.createCompanionAdId=3Dfunction(){return =
Math.floor((new =
Date()).getTime()/1000);};xmp.baseplayer.internals.Ad.prototype._makeQuer=
yPair=3Dfunction(zj,Aj){if(!Aj){Aj=3D'';}=0A=
return =
zj+'=3D'+escape(Aj.toString());};xmp.baseplayer.internals.Ad._singeltonIn=
stance=3Dnull;xmp.baseplayer.internals.Ad.getInstance=3Dfunction(){if(xmp=
.baseplayer.internals.Ad._singeltonInstance=3D=3D=3Dnull){xmp.baseplayer.=
internals.Ad._singeltonInstance=3Dnew xmp.baseplayer.internals.Ad();}=0A=
return =
xmp.baseplayer.internals.Ad._singeltonInstance;};xmp.createNamespace("xmp=
.baseplayer.internals");xmp.baseplayer.internals.AdMeteringImagePool=3Dfu=
nction(){this._initializedState=3D-1;this._adMeteringImage=3D'';this._POO=
L_SIZE=3D10;this._BASE_IMG_NAME=3D'AdMeteringImg_';};xmp.baseplayer.inter=
nals.AdMeteringImagePool._imgPingCounter=3D-1;xmp.baseplayer.internals.Ad=
MeteringImagePool._singeltonInstance=3Dnull;xmp.baseplayer.internals.AdMe=
teringImagePool.getInstance=3Dfunction(){if(xmp.baseplayer.internals.AdMe=
teringImagePool._singeltonInstance=3D=3D=3Dnull){xmp.baseplayer.internals=
.AdMeteringImagePool._singeltonInstance=3Dnew =
xmp.baseplayer.internals.AdMeteringImagePool();}=0A=
return =
xmp.baseplayer.internals.AdMeteringImagePool._singeltonInstance;};xmp.bas=
eplayer.internals.AdMeteringImagePool.prototype.setPingImage=3Dfunction(B=
j){this._init();if(this._initializedState!=3D=3D1){return'';}=0A=
xmp.baseplayer.internals.AdMeteringImagePool._imgPingCounter++;var =
Cj=3Dxmp.baseplayer.internals.AdMeteringImagePool._imgPingCounter%this._P=
OOL_SIZE;var Dj=3Dthis._BASE_IMG_NAME+Cj.toString();var =
Ej=3Dwindow.document.images[Dj];if(!Ej){throw new Error('Unexpectded did =
not find DOM image'+Dj);}=0A=
Ej.src=3DBj;return =
Dj;};xmp.baseplayer.internals.AdMeteringImagePool.prototype._init=3Dfunct=
ion(){if(this._initializedState=3D=3D=3D-1){try{var =
Fj=3Dxmp.util.SettingsManager.getInstance().getContextNode();var =
Gj=3DFj.getNodeForPath('BasePlayer');this._adMeteringImage=3Dxmp.trimStri=
ng(Gj.getString('Ad metering image =
URL',''));if(this._adMeteringImage.length=3D=3D=3D0){var Hj=3D'Ad =
metering image URL not specified in primary configuration';throw new =
Error(Hj);}=0A=
var =
Ij=3Dwindow.document.createElement('div');Ij.style.display=3D'none';windo=
w.document.body.insertBefore(Ij,null);for(var =
i=3D0;i<this._POOL_SIZE;i++){var =
Jj=3Dwindow.document.createElement('img');Jj.src=3Dthis._adMeteringImage;=
Jj.id=3Dthis._BASE_IMG_NAME+i.toString();Jj.name=3DJj.id;Jj.alt=3D'';Jj.a=
lign=3D'right';Jj.width=3DJj.height=3DJj.border=3DJj.vspace=3DJj.hspace=3D=
0;Ij.insertBefore(Jj,null);}}=0A=
catch(e){xmp.handleFatalError(e);this._initializedState=3D0;throw e;}=0A=
this._initializedState=3D1;}};xmp.createNamespace("xmp.baseplayer.interna=
ls");xmp.baseplayer.internals.DhtmlObjectMetaFileLoader=3Dfunction(Kj,Lj)=
{xmp.baseplayer.internals.DhtmlObjectMetaFileLoader.ctor.call(this,'dhtml=
Object','DhtmlObjectMetaFileLoader',xmp.net.ContentTypes.JSON,'FailToGetD=
htmlObject',-1,Kj,Lj);};xmp.DERIVE_CLASS(xmp.baseplayer.internals.Generic=
MetaFileLoader,xmp.baseplayer.internals.DhtmlObjectMetaFileLoader);xmp.cr=
eateNamespace("xmp.baseplayer.internals");xmp.baseplayer.internals.ErrorD=
htmlObjectMetaFileLoader=3Dfunction(Mj,Nj){xmp.baseplayer.internals.Error=
DhtmlObjectMetaFileLoader.ctor.call(this,'errorDhtmlObject','ErrorDhtmlOb=
jectMetaFileLoader',xmp.net.ContentTypes.JSON,'FailToGetDhtmlObject',-1,M=
j,Nj);};xmp.DERIVE_CLASS(xmp.baseplayer.internals.GenericMetaFileLoader,x=
mp.baseplayer.internals.ErrorDhtmlObjectMetaFileLoader);xmp.createNamespa=
ce("xmp.baseplayer.internals");xmp.baseplayer.internals.FileRequestHandle=
=3Dfunction(Oj,id,Pj){this._id=3Did;this._type=3DOj;this._dataObject=3Dnu=
ll;this._loadState=3Dxmp.baseplayer.internals.FileRequestHandle.STATE_CRE=
ATED;this._listenerArray=3D[];this._errorMessage=3Dnull;this._maxCacheTim=
e=3DPj;this._createdTime=3Dthis._getCurrentTimeInSeconds();};xmp.baseplay=
er.internals.FileRequestHandle.STATE_CREATED=3D0;xmp.baseplayer.internals=
.FileRequestHandle.STATE_LOADING=3D1;xmp.baseplayer.internals.FileRequest=
Handle.STATE_LOADED=3D2;xmp.baseplayer.internals.FileRequestHandle.protot=
ype.getId=3Dfunction(){return =
this._id;};xmp.baseplayer.internals.FileRequestHandle.prototype.getType=3D=
function(){return =
this._type;};xmp.baseplayer.internals.FileRequestHandle.prototype.isNew=3D=
function(){return(this._loadState=3D=3D=3Dxmp.baseplayer.internals.FileRe=
questHandle.STATE_CREATED);};xmp.baseplayer.internals.FileRequestHandle.p=
rototype.isLoading=3Dfunction(){return(this._loadState=3D=3D=3Dxmp.basepl=
ayer.internals.FileRequestHandle.STATE_LOADING);};xmp.baseplayer.internal=
s.FileRequestHandle.prototype.isLoaded=3Dfunction(){return(this._loadStat=
e=3D=3D=3Dxmp.baseplayer.internals.FileRequestHandle.STATE_LOADED);};xmp.=
baseplayer.internals.FileRequestHandle.prototype.getDataObject=3Dfunction=
(){return =
this._dataObject;};xmp.baseplayer.internals.FileRequestHandle.prototype._=
setDataObject=3Dfunction(Qj){this._dataObject=3DQj;};xmp.baseplayer.inter=
nals.FileRequestHandle.prototype._setAsLoading=3Dfunction(){if(this._load=
State!=3D=3Dxmp.baseplayer.internals.FileRequestHandle.STATE_LOADED){this=
._loadState=3Dxmp.baseplayer.internals.FileRequestHandle.STATE_LOADING;}}=
;xmp.baseplayer.internals.FileRequestHandle.prototype._setAsLoaded=3Dfunc=
tion(){this._loadState=3Dxmp.baseplayer.internals.FileRequestHandle.STATE=
_LOADED;this._notifyListeners();};xmp.baseplayer.internals.FileRequestHan=
dle.prototype._notifyListener=3Dfunction(Rj){var Sj=3Dnew =
xmp.util.Callback('onExecuteCB',this._onExecuteTimer,this);Sj.setMetadata=
('listener',Rj);var Tj=3Dnew =
xmp.util.Timer(this.getId(),xmp.DEFAULT_TIMER_INTERVAL,1,Sj);Tj.start();}=
;xmp.baseplayer.internals.FileRequestHandle.prototype._onExecuteTimer=3Df=
unction(Uj,Vj){var =
Wj=3DUj.getMetadata('listener',{});Wj._notifyFileRequestLoaded(this);};xm=
p.baseplayer.internals.FileRequestHandle.prototype._notifyListeners=3Dfun=
ction(){for(var i=3D0;i<this._listenerArray.length;i++){var =
Xj=3Dthis._listenerArray[i];this._notifyListener(Xj);}=0A=
this._listenerArray=3D[];};xmp.baseplayer.internals.FileRequestHandle.pro=
totype._addListener=3Dfunction(Yj){this._listenerArray.push(Yj);};xmp.bas=
eplayer.internals.FileRequestHandle.prototype._setErrorMessage=3Dfunction=
(Zj){this._errorMessage=3DZj;};xmp.baseplayer.internals.FileRequestHandle=
.prototype._isError=3Dfunction(){return(this._errorMessage!=3D=3Dnull);};=
xmp.baseplayer.internals.FileRequestHandle.prototype._getErrorMessage=3Df=
unction(){return =
this._errorMessage;};xmp.baseplayer.internals.FileRequestHandle.prototype=
._getCurrentTimeInSeconds=3Dfunction(){return Math.floor((new =
Date()).getTime()/1000);};xmp.baseplayer.internals.FileRequestHandle.prot=
otype._getAgeInSeconds=3Dfunction(){return(this._getCurrentTimeInSeconds(=
)-this._createdTime);};xmp.baseplayer.internals.FileRequestHandle.prototy=
pe._isExpiredFromCache=3Dfunction(){if(this._maxCacheTime<=3D-1){return =
false;}=0A=
if(this._maxCacheTime=3D=3D=3D0){return true;}=0A=
if(this._maxCacheTime<=3Dthis._getAgeInSeconds()){return true;}=0A=
return =
false;};xmp.createNamespace("xmp.baseplayer.internals");xmp.baseplayer.in=
ternals.MetaFileCache=3Dfunction(){this._map=3D{};this._logger=3Dnew =
xmp.util.internals.CategoryLogger('FileRequestHandle');};xmp.baseplayer.i=
nternals.MetaFileCache._singeltonInstance=3Dnull;xmp.baseplayer.internals=
.MetaFileCache.getInstance=3Dfunction(){if(xmp.baseplayer.internals.MetaF=
ileCache._singeltonInstance=3D=3D=3Dnull){xmp.baseplayer.internals.MetaFi=
leCache._singeltonInstance=3Dnew =
xmp.baseplayer.internals.MetaFileCache();}=0A=
return =
xmp.baseplayer.internals.MetaFileCache._singeltonInstance;};xmp.baseplaye=
r.internals.MetaFileCache.prototype.add=3Dfunction($j){this._map[this._ma=
keKeyH($j)]=3D$j;};xmp.baseplayer.internals.MetaFileCache.prototype.find=3D=
function(ak,id){var =
bk=3Dthis._map[this._makeKey(ak,id)];return(!bk)?null:bk;};xmp.baseplayer=
.internals.MetaFileCache.prototype.findOrCreate=3Dfunction(ck,id,dk,ek){t=
his._checkForExpiredHandles();var =
fk=3Dthis.find(ck,id);if(fk=3D=3D=3Dnull){fk=3Dnew =
xmp.baseplayer.internals.FileRequestHandle(ck,id,ek);this.add(fk);fk._add=
Listener(dk);if(this._logger.isDebugEnabled()){this._logger.debug('Reques=
t handle NOT in cache, loading now: '+this._makeKeyH(fk));}=0A=
try{var gk=3Ddk._loadFileRequest(fk);switch(gk){case =
xmp.baseplayer.internals.FileRequestHandle.STATE_LOADING:fk._setAsLoading=
();break;case =
xmp.baseplayer.internals.FileRequestHandle.STATE_LOADED:fk._setAsLoaded()=
;break;default:throw new Error('Unexpected load state.');}}=0A=
catch(e){fk._setErrorMessage(xmp.extractErrorMessage(e));fk._setAsLoaded(=
);}}=0A=
else{if(fk.isLoading()){if(this._logger.isDebugEnabled()){this._logger.de=
bug('Request handle FOUND in cache, ANOTHER LOADER is loading, will =
wait: '+this._makeKeyH(fk));}=0A=
fk._addListener(dk);}=0A=
else =
if(fk.isLoaded()){if(this._logger.isDebugEnabled()){this._logger.debug('R=
equest handle FOUND in cache, already loaded: '+this._makeKeyH(fk));}=0A=
fk._notifyListener(dk);}}=0A=
return =
fk;};xmp.baseplayer.internals.MetaFileCache.prototype._makeKey=3Dfunction=
(hk,id){return(hk+'|'+id);};xmp.baseplayer.internals.MetaFileCache.protot=
ype._makeKeyH=3Dfunction(ik){return =
this._makeKey(ik.getType(),ik.getId());};xmp.baseplayer.internals.MetaFil=
eCache.prototype._checkForExpiredHandles=3Dfunction(){var jk=3D[];var =
kk=3D'';var lk=3Dnull;for(var =
mk=3Dxmp.MapIterator.create(this._map);mk.hasNext();mk.next()){kk=3Dmk.cu=
rrentKey();lk=3Dmk.currentValue();if(this._isHandleExpired(lk,kk)){jk.pus=
h(lk);}}=0A=
for(var =
i=3D0;i<jk.length;i++){lk=3Djk[i];try{kk=3Dthis._makeKeyH(lk);delete =
this._map[kk];}=0A=
catch(e){this._logger.debug('Error removing request handle from =
cache.',e);}}};xmp.baseplayer.internals.MetaFileCache.prototype._isHandle=
Expired=3Dfunction(nk,pk){try{if(nk._isExpiredFromCache()){this._logger.d=
ebug('Request handle expired, will remove from cache.');return true;}=0A=
return false;}=0A=
catch(e){this._logger.warn('Error checking for expiration: '+pk,e);}=0A=
return =
false;};xmp.createNamespace("xmp.baseplayer.internals");xmp.baseplayer.in=
ternals.NullTrigger=3Dfunction(qk){this._logger=3Dnew =
xmp.util.internals.CategoryLogger('NullTrigger');this._type=3Dqk;};xmp.ba=
seplayer.internals.NullTrigger.prototype.getType=3Dfunction(){return =
this._type;};xmp.baseplayer.internals.NullTrigger.prototype.doCommands=3D=
function(rk){if(this._logger.isDebugEnabled()){this._logger.debug('Trigge=
r type: '+this.getType()+', Null Trigger, no commands to =
do.');}};xmp.createNamespace("xmp.baseplayer.internals");xmp.baseplayer.i=
nternals.Trigger=3Dfunction(sk,tk){this._logger=3Dnew =
xmp.util.internals.CategoryLogger('Trigger');this._type=3Dsk;this._trigge=
rCommandArray=3Dtk;};xmp.baseplayer.internals.Trigger.getTrigger=3Dfuncti=
on(uk,vk){var wk=3D[];if(uk.getPlayableData().isLoaded()){var =
xk=3Duk.getPlayableData().getDataObject().triggers;if(typeof =
xk=3D=3D=3D'object'){for(var i=3D0;i<xk.length;i++){var =
yk=3Dxk[i];if(typeof yk=3D=3D=3D'object'&&yk.trigger=3D=3D=3Dvk&&typeof =
yk.commands=3D=3D=3D'object'&&yk.commands.length>0){wk=3Dxmp.baseplayer.i=
nternals.Trigger._cloneTriggerCommands(yk.commands);break;}}}=0A=
var =
zk=3Dxmp.util.SettingsManager.getInstance().getContextNode().getNodeForPa=
th('NodeTriggers/'+uk.getNodeTypeName()).getString(vk,'');if(zk.length>0)=
{var =
Ak=3Dnull;try{Ak=3Dxmp.net.AjaxRequestManager.prototype._parseJson(zk);}=0A=
catch(e){Ak=3Dnull;this._logger.warn('Error getting global trigger for =
type: '+uk.getNodeTypeName(),e);}=0A=
if(Ak!=3D=3Dnull){wk=3DAk.concat(wk);}}}=0A=
if(wk.length>0){return new xmp.baseplayer.internals.Trigger(vk,wk);}=0A=
else{return new =
xmp.baseplayer.internals.NullTrigger(vk);}};xmp.baseplayer.internals.Trig=
ger._cloneTriggerCommands=3Dfunction(Bk){var Ck=3D[];for(var =
i=3D0;i<Bk.length;i++){var =
Dk=3DBk[i];Ck.push({type:Dk.type,data:Dk.data});}=0A=
return =
Ck;};xmp.baseplayer.internals.Trigger.prototype.getType=3Dfunction(){retu=
rn =
this._type;};xmp.baseplayer.internals.Trigger.prototype.doCommands=3Dfunc=
tion(Ek){for(var i=3D0;i<this._triggerCommandArray.length;i++){var =
Fk=3Dnull;try{Fk=3Dthis._triggerCommandArray[i];var =
Gk=3Dxmp.baseplayer.internals.TriggerCommandFactory.getInstance().create(=
Fk.type);Ek.setCommandData(Fk.data);Ek.setTriggerType(this.getType());Gk.=
doCommand(Ek);}=0A=
catch(e){this._logger.warn('Error invoking trigger command, type: =
'+Fk.type+', data: =
'+Fk.data,e);}}};xmp.createNamespace("xmp.baseplayer.internals");xmp.base=
player.internals.TriggerCommandFactory=3Dfunction(){this._logger=3Dnew =
xmp.util.internals.CategoryLogger('TriggerCommandFactory');xmp.util.Setti=
ngsManager.getInstance().addContextChangeListener(new =
xmp.util.Callback('TriggerCommandFactory',this._handleContextChange,this)=
);this._triggerCommandMap=3Dnull;this._faultCfg();};xmp.baseplayer.intern=
als.TriggerCommandFactory._singeltonInstance=3Dnull;xmp.baseplayer.intern=
als.TriggerCommandFactory.getInstance=3Dfunction(){if(xmp.baseplayer.inte=
rnals.TriggerCommandFactory._singeltonInstance=3D=3D=3Dnull){xmp.baseplay=
er.internals.TriggerCommandFactory._singeltonInstance=3Dnew =
xmp.baseplayer.internals.TriggerCommandFactory();}=0A=
return =
xmp.baseplayer.internals.TriggerCommandFactory._singeltonInstance;};xmp.b=
aseplayer.internals.TriggerCommandFactory.prototype.create=3Dfunction(Hk)=
{var Ik=3Dthis._triggerCommandMap[Hk];if(!Ik){return(new =
xmp.baseplayer.internals.NullTriggerCommand(Hk));}=0A=
try{var Jk=3Dxmp.getNamespacedMethod(Ik);var Kk=3Dnew Jk();return Kk;}=0A=
catch(e){this._logger.warn('Error creating Trigger Command: =
'+Hk,e);return(new =
xmp.baseplayer.internals.NullTriggerCommand(Hk));}};xmp.baseplayer.intern=
als.TriggerCommandFactory.prototype._faultCfg=3Dfunction(){if(this._trigg=
erCommandMap=3D=3D=3Dnull){this._triggerCommandMap=3D{};var =
Lk=3Dxmp.util.SettingsManager.getInstance().getContextNode().getNodeForPa=
th('TriggerCommands');var Mk=3DLk.retrieveKeys();for(var =
i=3D0;i<Mk.length;i++){var Nk=3DMk[i];var =
Ok=3DLk.getString(Nk,'');this._triggerCommandMap[Nk]=3DOk;}=0A=
this._triggerCommandMap.setImg=3D'xmp.baseplayer.internals.SetImageTrigge=
rCommand';this._triggerCommandMap.echo=3D'xmp.baseplayer.internals.EchoTr=
iggerCommand';}};xmp.baseplayer.internals.TriggerCommandFactory.prototype=
._handleContextChange=3Dfunction(){this._triggerCommandMap=3Dnull;this._f=
aultCfg();};xmp.baseplayer.internals.NullTriggerCommand=3Dfunction(Pk){th=
is._type=3DPk;this._logger=3Dnew =
xmp.util.internals.CategoryLogger('NullTriggerCommand');};xmp.baseplayer.=
internals.NullTriggerCommand.prototype.doCommand=3Dfunction(Qk){if(this._=
logger.isDebugEnabled()){this._logger.debug('Trigger Command =
unrecognized: =
'+this._type);}};xmp.baseplayer.internals.EchoTriggerCommand=3Dfunction()=
{this._logger=3Dnew =
xmp.util.internals.CategoryLogger('EchoTriggerCommand');};xmp.baseplayer.=
internals.EchoTriggerCommand.prototype.doCommand=3Dfunction(Rk){var =
Sk=3DRk.getCommandData();xmp.baseplayer.internals.AdStatusReporter.report=
(this._logger,'Trigger type: '+Rk.getTriggerType()+', Doing "echo" =
command, data =3D =
'+Sk);};xmp.baseplayer.internals.SetImageTriggerCommand=3Dfunction(){this=
._logger=3Dnew =
xmp.util.internals.CategoryLogger('SetImageTriggerCommand');};xmp.basepla=
yer.internals.SetImageTriggerCommand.prototype.doCommand=3Dfunction(Tk){v=
ar Uk=3Dthis._cleanImageData(Tk.getCommandData());var =
Vk=3Dxmp.baseplayer.internals.Ad.getInstance().setPingImage(Uk);xmp.basep=
layer.internals.AdStatusReporter.report(this._logger,'Trigger type: =
'+Tk.getTriggerType()+', Doing "setImg" command, data =3D '+Uk+', using =
img dom ID: =
'+Vk);};xmp.baseplayer.internals.SetImageTriggerCommand.prototype._cleanI=
mageData=3Dfunction(Wk){var =
Xk=3DWk.indexOf('\"');if(Xk=3D=3D=3D-1){return Wk;}=0A=
Wk=3DWk.substr(Xk+1);var =
Yk=3DWk.indexOf('\"');Wk=3DWk.substr(0,Yk);return =
Wk;};xmp.baseplayer.internals.AdStatusReporter=3Dfunction(){};xmp.basepla=
yer.internals.AdStatusReporter._cb=3Dnull;xmp.baseplayer.internals.AdStat=
usReporter.dummySetAdStatus=3Dfunction(){};xmp.baseplayer.internals.AdSta=
tusReporter.report=3Dfunction(Zk,$k){if(xmp.baseplayer.internals.AdStatus=
Reporter._cb=3D=3D=3Dnull){var =
p=3Dxmp.baseplayer.BasePlayer._singleInstance;if((p)&&(p.setAdStatus)){xm=
p.baseplayer.internals.AdStatusReporter._cb=3Dnew =
xmp.util.Callback('adStatus',p.setAdStatus,p);}=0A=
else{xmp.baseplayer.internals.AdStatusReporter._cb=3Dnew =
xmp.util.Callback('adStatus',xmp.baseplayer.internals.AdStatusReporter.du=
mmySetAdStatus,null);}=0A=
xmp.baseplayer.internals.AdStatusReporter._cb.setAddThisToCallback(false)=
;}=0A=
try{xmp.baseplayer.internals.AdStatusReporter._cb.call('SMARTCOUNT: =
'+$k);}=0A=
catch(ex){}=0A=
if(Zk.isDebugEnabled()){Zk.debug($k);}};xmp.createNamespace("xmp.baseplay=
er.internals");xmp.baseplayer.internals.VideoAdMetaFileLoader=3Dfunction(=
al,bl){this._CLASS_NAME=3D'VideoAdMetaFileLoader';this._AD_MAN_TYPE=3D'ad=
Man';this._AD_SERVER_TYPE=3D'adServer';this._logger=3Dnew =
xmp.util.internals.CategoryLogger(this._CLASS_NAME);this._THIS_TYPE=3D'vi=
deoAdMeta';this._owner=3Dal;this._loaderId=3Dbl;this._resBundle=3Dnull;th=
is._callback=3Dnull;this._companionAdId=3Dxmp.baseplayer.internals.Ad.cre=
ateCompanionAdId();this._latchCompleteCb=3Dthis._createCb(null,'LatchComp=
lete',this._handleLatchComplete);this._latch=3Dnew =
xmp.util.Latch([],this._latchCompleteCb);};xmp.baseplayer.internals.Video=
AdMetaFileLoader.prototype.getLoaderId=3Dfunction(){return =
this._loaderId;};xmp.baseplayer.internals.VideoAdMetaFileLoader.prototype=
.setResBundle=3Dfunction(cl,dl){this._resBundle=3Dcl;this._callback=3Ddl;=
};xmp.baseplayer.internals.VideoAdMetaFileLoader.prototype.load=3Dfunctio=
n(){try{if(this._shortCircuit()){return;}=0A=
this._latchCompleteCb.setMetadata('LatchPhase',this._AD_MAN_TYPE);var =
el=3Dthis._resBundle.getResourceTypes();for(var =
i=3D0;i<el.length;i++){var =
fl=3Dthis._resBundle.getMetaResource(el[i]);fl.setCompanionAdId(this._com=
panionAdId);this._loadARM(fl,this._AD_MAN_TYPE,xmp.net.ContentTypes.TEXT,=
fl.getId());}}=0A=
catch(e){this._handleError(e);}};xmp.baseplayer.internals.VideoAdMetaFile=
Loader.prototype._shortCircuit=3Dfunction(){if(this._resBundle.getCount()=
=3D=3D=3D0){this._resBundle._setRawData('Loaded (no resources)');}=0A=
if(this._resBundle.isLoaded()||this._resBundle.isError()){xmp.util.Timer.=
doSimpleCallback(this._createCb(null,'endAsynch',this._end));return =
true;}=0A=
return =
false;};xmp.baseplayer.internals.VideoAdMetaFileLoader.prototype._handleL=
atchComplete=3Dfunction(cb){try{var =
gl=3Dthis._latchCompleteCb.getMetadata('LatchPhase','');if(gl=3D=3D=3Dthi=
s._AD_MAN_TYPE){this._doAdManComplete();}=0A=
else if(gl=3D=3D=3Dthis._AD_SERVER_TYPE){this._doAdServerComplete();}=0A=
else{throw new Error('Unrecognized phase: '+gl);}}=0A=
catch(e){this._handleError(e);}};xmp.baseplayer.internals.VideoAdMetaFile=
Loader.prototype._doAdManComplete=3Dfunction(){this._latchCompleteCb.setM=
etadata('LatchPhase',this._AD_SERVER_TYPE);var =
hl=3Dthis._resBundle.getResourceTypes();var il=3D0;for(var =
i=3D0;i<hl.length;i++){var =
jl=3Dthis._resBundle.getMetaResource(hl[i]);var =
kl=3Dthis._makeCbName(jl,this._AD_MAN_TYPE);var =
ll=3Dthis._latchCompleteCb.getMetadata(kl,xmp.util.internals.MetadataMap.=
defaultObj);if(!ll.isError()){var =
ml=3Dthis._buildAdServerRelUrl(jl,ll.getText());if(jl.getType()=3D=3D=3D'=
primary'){il++;this._loadARM(jl,this._AD_SERVER_TYPE,xmp.net.ContentTypes=
.JSON,ml);}=0A=
else if(jl.getType()=3D=3D=3D'synch_unit'){var =
nl=3Dxmp.baseplayer.internals.Ad.getAdServerRoot();jl._setRawData(nl+ml);=
jl.setDataType('url');}}=0A=
else{jl._setErrorMessage(ll.getErrorMessage());}}=0A=
if(il=3D=3D=3D0){this._end();}};xmp.baseplayer.internals.VideoAdMetaFileL=
oader.prototype._doAdServerComplete=3Dfunction(){var =
ol=3Dthis._resBundle.getMetaResource('primary');var =
pl=3Dthis._makeCbName(ol,this._AD_SERVER_TYPE);var =
ql=3Dthis._latchCompleteCb.getMetadata(pl,xmp.util.internals.MetadataMap.=
defaultObj);if(!ql.isError()){ol._setRawData(ql.getJsonObject());}=0A=
else{ol._setErrorMessage(ql.getErrorMessage());}=0A=
this._end();};xmp.baseplayer.internals.VideoAdMetaFileLoader.prototype._h=
andleError=3Dfunction(e){this._handleErrorMessage(xmp.extractErrorMessage=
(e));};xmp.baseplayer.internals.VideoAdMetaFileLoader.prototype._handleEr=
rorMessage=3Dfunction(rl){this._resBundle._setErrorMessage(rl);this._end(=
);};xmp.baseplayer.internals.VideoAdMetaFileLoader.prototype._end=3Dfunct=
ion(){if(this._owner!=3D=3Dnull){this._owner._release(this);this._owner=3D=
null;}=0A=
if(!this._resBundle.isError()){var =
sl=3Dthis._resBundle.getMetaResource('primary');if(sl!=3D=3Dnull&&sl.isEr=
ror()){this._resBundle._setErrorMessage('Primary Resource Error: =
'+sl.getErrorMessage());}}=0A=
if(!this._resBundle.isError()){this._resBundle._setRawData('Loaded');}=0A=
try{this._callback.call(this._resBundle);}=0A=
catch(e){this._logger.warn('Error calling =
callback',e);}};xmp.baseplayer.internals.VideoAdMetaFileLoader.prototype.=
_createCb=3Dfunction(tl,ul,vl){return(new =
xmp.util.Callback(this._makeCbName(tl,ul),vl,this));};xmp.baseplayer.inte=
rnals.VideoAdMetaFileLoader.prototype._makeCbName=3Dfunction(wl,xl){var =
yl=3D(wl!=3D=3Dnull)?wl.getType():'';return(this._CLASS_NAME+'_'+xl+'_'+y=
l+'_'+this._loaderId);};xmp.baseplayer.internals.VideoAdMetaFileLoader.pr=
ototype._buildAdServerRelUrl=3Dfunction(zl,Al){var =
Bl=3Dxmp.trimString(Al);var Cl=3Dzl.getMetadata('segvars','');return =
xmp.baseplayer.internals.Ad.getInstance().buildRelativeURL(zl.getType(),t=
his._companionAdId,Bl,Cl);};xmp.baseplayer.internals.VideoAdMetaFileLoade=
r.prototype._loadARM=3Dfunction(Dl,El,Fl,Gl){var =
cb=3Dthis._createCb(Dl,El,this._handleARMResponse);this._latch.addCbName(=
cb.getId());xmp.net.AjaxRequestManager.getInstance().request(Gl,cb,El,Gl,=
Fl,null);};xmp.baseplayer.internals.VideoAdMetaFileLoader.prototype._hand=
leARMResponse=3Dfunction(Hl,Il){if(Il.isError()){var Jl=3Dnew =
xmp.baseplayer.ApplicationError(Il.getErrorObject(),'FailToGetAdVideo',nu=
ll,[{label:"Url",text:Il.getFullUrl()}]);this._logger.warn(Jl.message,Jl)=
;}=0A=
this._latch.called(Hl.getId(),Il);};xmp.createNamespace("xmp.baseplayer.i=
nternals");xmp.baseplayer.internals.VideoCompositeAdMetaFileLoader=3Dfunc=
tion(Kl,Ll){this._CLASS_NAME=3D'VideoCompositeAdMetaFileLoader';this._AD_=
MAN_TYPE=3D'adMan';this._AD_SERVER_TYPE=3D'adServer';this._logger=3Dnew =
xmp.util.internals.CategoryLogger(this._CLASS_NAME);this._THIS_TYPE=3D'vi=
deoCompositeAdMeta';this._owner=3DKl;this._loaderId=3DLl;this._resBundle=3D=
null;this._callback=3Dnull;this._companionAdId=3Dxmp.baseplayer.internals=
.Ad.createCompanionAdId();};xmp.baseplayer.internals.VideoCompositeAdMeta=
FileLoader.prototype.getLoaderId=3Dfunction(){return =
this._loaderId;};xmp.baseplayer.internals.VideoCompositeAdMetaFileLoader.=
prototype.setResBundle=3Dfunction(Ml,Nl){this._resBundle=3DMl;this._callb=
ack=3DNl;};xmp.baseplayer.internals.VideoCompositeAdMetaFileLoader.protot=
ype.load=3Dfunction(){try{if(this._shortCircuit()){return;}=0A=
xmp.baseplayer.internals.AdServerPageController.getInstance().waitUntilRe=
ady(new xmp.util.Callback('_doCompositeJob',this._doCompositeJob,this));}=0A=
catch(e){this._handleError(e);}};xmp.baseplayer.internals.VideoCompositeA=
dMetaFileLoader.prototype._doCompositeJob=3Dfunction(){try{var =
Ol=3Dthis._createJobJson();var =
Pl=3D'tile=3D'+this._companionAdId.toString();this._logger.info(Ol);var =
cb=3Dthis._createCb(null,'adCompositor',this._handleARMResponse);var =
Ql=3Dxmp.baseplayer.internals.AdServerPageController.getInstance().getDat=
a('NGUserIDCookie','false');var =
Rl=3D[{name:'job_json',value:xmp.Base64.encode(Ol),type:xmp.net.AjaxReque=
stManager.POST_FORM_TYPE},{name:'NGUserID',value:Ql,type:xmp.net.AjaxRequ=
estManager.POST_FORM_TYPE},{name:'adDEmas',value:xmp.util.Cookie.read('ad=
DEmas'),type:xmp.net.AjaxRequestManager.POST_FORM_TYPE}];xmp.net.AjaxRequ=
estManager.getInstance().request(Pl,cb,'adCompositor',Pl,xmp.net.ContentT=
ypes.JSON,Rl);}=0A=
catch(e){this._handleError(e);}};xmp.baseplayer.internals.VideoCompositeA=
dMetaFileLoader.prototype._shortCircuit=3Dfunction(){if(this._resBundle.g=
etCount()=3D=3D=3D0){this._resBundle._setRawData('Loaded (no =
resources)');}=0A=
if(this._resBundle.isLoaded()||this._resBundle.isError()){xmp.util.Timer.=
doSimpleCallback(this._createCb(null,'endAsynch',this._end));return =
true;}=0A=
return =
false;};xmp.baseplayer.internals.VideoCompositeAdMetaFileLoader.prototype=
._createJobJson=3Dfunction(){var jj=3D"{ inmeta: { adManRoot: =
'"+xmp.baseplayer.internals.Ad.getAdManRoot()+"', adServerRoot: =
'"+xmp.baseplayer.internals.Ad.getAdServerRoot()+"'}, inoutmeta: { =
debug: {} }, commands: [";var =
Sl=3Dthis._resBundle.getResourceTypes();for(var =
i=3D0;i<Sl.length;i++){var Tl=3DSl[i];var =
Ul=3Dthis._resBundle.getMetaResource(Tl);var =
Vl=3Dthis._getDataType(Ul);Ul.setDataType(Vl);Ul.setCompanionAdId(this._c=
ompanionAdId);var Wl=3Dthis._buildAdServerRelUrl(Ul,'');var Xl=3D"{ =
type: 'loadAd', inmeta: { type: '"+Tl+"', dataType: '"+Vl+"', "+"query: =
'"+Wl+"', id: '"+Ul.getId()+"'}, "+"inoutmeta: { data: '', error: '', =
debug: {}}}";jj+=3DXl;if(i!=3D=3D(Sl.length-1)){jj+=3D', ';}}=0A=
jj+=3D']}';return =
jj;};xmp.baseplayer.internals.VideoCompositeAdMetaFileLoader.prototype._g=
etDataType=3Dfunction(Yl){var Zl=3DYl.getType();var =
$l=3Dxmp.util.SettingsManager.getInstance().getContextNode().getNodeForPa=
th('ad data types');return =
$l.getString(Zl,'default');};xmp.baseplayer.internals.VideoCompositeAdMet=
aFileLoader.prototype._handleError=3Dfunction(e){this._handleErrorMessage=
(xmp.extractErrorMessage(e));};xmp.baseplayer.internals.VideoCompositeAdM=
etaFileLoader.prototype._handleErrorMessage=3Dfunction(am){this._resBundl=
e._setErrorMessage(am);this._end();};xmp.baseplayer.internals.VideoCompos=
iteAdMetaFileLoader.prototype._end=3Dfunction(){if(this._owner!=3D=3Dnull=
){this._owner._release(this);this._owner=3Dnull;}=0A=
if(!this._resBundle.isError()){if(this._resBundle.getCount()=3D=3D=3Dthis=
._resBundle.getErrorCount()){this._resBundle._setErrorMessage('All =
resources in composite failed.');}}=0A=
if(!this._resBundle.isError()){this._resBundle._setRawData('Loaded');}=0A=
try{this._callback.call(this._resBundle);}=0A=
catch(e){this._logger.warn('Error calling =
callback',e);}};xmp.baseplayer.internals.VideoCompositeAdMetaFileLoader.p=
rototype._createCb=3Dfunction(bm,cm,dm){return(new =
xmp.util.Callback(this._makeCbName(bm,cm),dm,this));};xmp.baseplayer.inte=
rnals.VideoCompositeAdMetaFileLoader.prototype._makeCbName=3Dfunction(em,=
fm){var =
gm=3D(em!=3D=3Dnull)?em.getType():'';return(this._CLASS_NAME+'_'+fm+'_'+g=
m+'_'+this._loaderId);};xmp.baseplayer.internals.VideoCompositeAdMetaFile=
Loader.prototype._buildAdServerRelUrl=3Dfunction(hm,im){var =
jm=3Dxmp.trimString(im);var km=3Dhm.getMetadata('segvars','');return =
xmp.baseplayer.internals.Ad.getInstance().buildRelativeURL(hm.getType(),t=
his._companionAdId,jm,km);};xmp.baseplayer.internals.VideoCompositeAdMeta=
FileLoader.prototype._handleARMResponse=3Dfunction(lm,mm){if(mm.isError()=
){var nm=3Dnew =
xmp.baseplayer.ApplicationError(mm.getErrorObject(),'FailToGetAdVideo',nu=
ll,[{label:"Url",text:mm.getFullUrl()}]);this._logger.warn(nm.message);th=
is._failAll(mm.getErrorMessage());this._end();return;}=0A=
var om=3Dmm.getJsonObject();var =
qm=3Dthis._decodeOpt(om.jobError,'');if(qm.length!=3D=3D0){this._logger.w=
arn('jobError: '+qm);this._failAll('composite jobError: =
'+qm);this._end();return;}=0A=
var =
rm=3Dthis._getOpt(om.inoutmeta.debug.job_duration,0);this._logger.info("S=
ervlet job duration (ms): "+rm);var =
sm=3Dthis._resBundle.getResourceTypes();for(var =
i=3D0;i<sm.length;i++){var tm=3Dsm[i];var =
um=3Dthis._resBundle.getMetaResource(tm);var vm=3Dnull;for(var =
j=3D0;j<om.commands.length;j++){if(om.commands[j].inmeta.type=3D=3D=3Dtm)=
{vm=3Dom.commands[j];break;}}=0A=
var wm=3Dthis._decodeOpt(vm.inoutmeta.debug.adServerUrl,'NOT_FOUND');var =
xm=3Dthis._decodeOpt(vm.inoutmeta.debug.fullAdManUrl,'NOT_FOUND');var =
ym=3Dthis._decodeOpt(vm.inoutmeta.data,'');var =
zm=3Dthis._decodeOpt(vm.inoutmeta.error,'');var =
Am=3Dvm.inmeta.dataType;var Bm=3D'Ad type: '+tm+', dataType: '+Am+', =
adServerUrl: '+wm+', fullAdManUrl: =
'+xm;if((zm.length=3D=3D=3D0)&&this._logger.isInfoEnabled()){this._logger=
.info(Bm);this._logger.info('Data: '+ym);}=0A=
if(zm.length!=3D=3D0){this._logger.warn(Bm);this._logger.warn('Error: =
'+zm);um._setErrorMessage(zm);continue;}=0A=
if(Am=3D=3D=3D'url'){var =
Cm=3Dxmp.baseplayer.internals.Ad.getAdServerRoot();um._setRawData(Cm+ym);=
}=0A=
else if(Am=3D=3D=3D'videoJson'){try{var =
Dm=3Dxmp.net.AjaxRequestManager.getInstance()._parseJson(ym);um._setRawDa=
ta(Dm);}=0A=
catch(parseEx){this._logger.warn('Parse error with ad type: '+tm+', =
'+xmp.extractErrorMessage(parseEx));um._setErrorMessage(xmp.extractErrorM=
essage(parseEx));}}=0A=
else{um._setRawData(ym);}}=0A=
this._end();};xmp.baseplayer.internals.VideoCompositeAdMetaFileLoader.pro=
totype._failAll=3Dfunction(Em){this._resBundle._setErrorMessage(Em);var =
Fm=3Dthis._resBundle.getResourceTypes();for(var =
i=3D0;i<Fm.length;i++){var Gm=3DFm[i];var =
Hm=3Dthis._resBundle.getMetaResource(Gm);Hm._setErrorMessage(Em);}};xmp.b=
aseplayer.internals.VideoCompositeAdMetaFileLoader.prototype._getOpt=3Dfu=
nction(Im,Jm){if(typeof(Im)!=3D=3D'undefined'){return Im;}=0A=
return =
Jm;};xmp.baseplayer.internals.VideoCompositeAdMetaFileLoader.prototype._d=
ecodeOpt=3Dfunction(Km,Lm){if(xmp.isNonEmptyString(Km)){return =
xmp.Base64.decode(Km);}=0A=
return =
Lm;};xmp.updateAdServerData=3Dfunction(Mm){xmp.baseplayer.internals.AdSer=
verPageController.getInstance().update(Mm);};xmp.baseplayer.internals.AdS=
erverPageController=3Dfunction(){this._READY_POLL_INTERVAL=3D250;this._IF=
RAME_ID=3D'xmp_AdServerPageController';this._logger=3Dnew =
xmp.util.internals.CategoryLogger('AdServerPageController');this._dataMap=
=3D{};this._readyCB=3Dnull;this._readyTimer=3Dnull;this._gotData=3Dfalse;=
this._startTime=3D-1;this._readyTries=3D0;this._refreshCount=3D0;this._re=
freshTimer=3Dnull;this._init();};xmp.baseplayer.internals.AdServerPageCon=
troller._instance=3Dnull;xmp.baseplayer.internals.AdServerPageController.=
getInstance=3Dfunction(){if(xmp.baseplayer.internals.AdServerPageControll=
er._instance=3D=3D=3Dnull){xmp.baseplayer.internals.AdServerPageControlle=
r._instance=3Dnew xmp.baseplayer.internals.AdServerPageController();}=0A=
return =
xmp.baseplayer.internals.AdServerPageController._instance;};xmp.baseplaye=
r.internals.AdServerPageController.prototype.waitUntilReady=3Dfunction(cb=
){this._readyCB=3Dnull;this._stopReadyTimer();this._startTime=3D-1;this._=
readyTries=3D0;if(this._gotData){cb.call();return;}=0A=
this._readyCB=3Dcb;this._startTime=3Dthis.getNowMs();var Nm=3Dnew =
xmp.util.Callback('_readyTest',this._readyTest,this);this._readyTimer=3Dn=
ew =
xmp.util.Timer(Nm.getId(),this._READY_POLL_INTERVAL,1000,Nm);this._readyT=
imer.start();};xmp.baseplayer.internals.AdServerPageController.prototype.=
getNowMs=3Dfunction(){return(new =
Date()).getTime();};xmp.baseplayer.internals.AdServerPageController.proto=
type.getData=3Dfunction(Om,Pm){var =
Qm=3Dthis._dataMap[Om];return(Qm)?Qm:Pm;};xmp.baseplayer.internals.AdServ=
erPageController.prototype.update=3Dfunction(Rm){for(var =
Sm=3Dxmp.MapIterator.create(Rm);Sm.hasNext();Sm.next()){var =
Tm=3DSm.currentKey();this._dataMap[Tm]=3DSm.currentValue();if(this._logge=
r.isInfoEnabled()){this._logger.info('Updated key: '+Tm+', value: =
'+this._dataMap[Tm]);}}=0A=
this._gotData=3Dtrue;this._refreshCount++;this._logger.info('Data =
updated, count: =
'+this._refreshCount);};xmp.baseplayer.internals.AdServerPageController.p=
rototype._stopReadyTimer=3Dfunction(){if(this._readyTimer!=3D=3Dnull){thi=
s._readyTimer.stop();this._readyTimer=3Dnull;}};xmp.baseplayer.internals.=
AdServerPageController.prototype._readyTest=3Dfunction(cb,Um){this._ready=
Tries++;if(this._gotData){this._stopReadyTimer();this._logger.info('Got =
data, try: '+this._readyTries);}=0A=
else{var =
Vm=3Dthis.getNowMs()-this._startTime;if(Vm>30000){this._stopReadyTimer();=
this._logger.warn('Failed to get initial ad server data.');}=0A=
else{return;}}=0A=
if(this._readyCB!=3D=3Dnull){this._readyCB.call();this._readyCB=3Dnull;}}=
;xmp.baseplayer.internals.AdServerPageController.prototype._init=3Dfuncti=
on(){var =
Wm=3Dwindow.document.createElement('div');Wm.style.display=3D'none';xmp.i=
nsertDomChildBefore(window.document.body,Wm);var =
Xm=3Dthis._getCfgNode().getString('adServerDataPage','');if(Xm.toLowerCas=
e().indexOf('http')!=3D=3D0){var =
Ym=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode().getNod=
eForPath('rootUrlMap/adServer');Xm=3DYm+Xm;}=0A=
var Zm=3D'<iframe hspace=3D"0" vspace=3D"0" marginHeight=3D"0" =
marginWidth=3D"0" src=3D"'+Xm+'" border=3D"0" frameBorder=3D"0" =
height=3D"0" width=3D"0" scrolling=3D"no"  id=3D"'+this._IFRAME_ID+'" =
name=3D"'+this._IFRAME_ID+'" style=3D"position: absolute; visibility: =
hidden;" ></iframe>';Wm.innerHTML=3DZm;var cb=3Dnew =
xmp.util.Callback('_doRefresh',this._doRefresh,this);this._refreshTimer=3D=
new =
xmp.util.Timer(cb.getId(),30000,-1,cb);this._refreshTimer.start();};xmp.b=
aseplayer.internals.AdServerPageController.prototype._doRefresh=3Dfunctio=
n(){try{this._logger.info('Attempting to refresh.');var =
$m=3Dwindow.frames[this._IFRAME_ID];$m.xmp_cnn_updateAdServerData();}=0A=
catch(ex){this._logger.warn('Failed to =
refresh.',ex);}};xmp.baseplayer.internals.AdServerPageController.prototyp=
e._getCfgNode=3Dfunction(){return =
xmp.util.SettingsManager.getInstance().getGlobalContextNode().getNodeForP=
ath('loaders/videoCompositeAdMeta/cfg');};xmp.createNamespace("xmp.basepl=
ayer.internals");xmp.baseplayer.internals.VideoCompositeAdMetaFileLoader2=
=3Dfunction(an,bn){this._CLASS_NAME=3D'VideoCompositeAdMetaFileLoader2';t=
his._AD_MAN_TYPE=3D'adMan';this._AD_SERVER_TYPE=3D'adServer';this._DELIM=3D=
'__@@$$@@__';this._DELIM_RE=3D/__@@\$\$@@__/gm;this._AD_REQUEST_ID_PREFIX=
=3D'ad';this._logger=3Dnew =
xmp.util.internals.CategoryLogger(this._CLASS_NAME);this._THIS_TYPE=3D'vi=
deoCompositeAdMeta';this._owner=3Dan;this._loaderId=3Dbn;this._resBundle=3D=
null;this._callback=3Dnull;this._latchCompleteCb=3Dthis._createCb(null,'L=
atchComplete',this._handleLatchComplete);this._latch=3Dnew =
xmp.util.Latch([],this._latchCompleteCb);this._adDataArray=3D[];this._com=
panionAdId=3Dxmp.baseplayer.internals.Ad.createCompanionAdId();};xmp.base=
player.internals.VideoCompositeAdMetaFileLoader2.prototype.getLoaderId=3D=
function(){return =
this._loaderId;};xmp.baseplayer.internals.VideoCompositeAdMetaFileLoader2=
.prototype.setResBundle=3Dfunction(cn,dn){this._resBundle=3Dcn;this._call=
back=3Ddn;};xmp.baseplayer.internals.VideoCompositeAdMetaFileLoader2.prot=
otype.load=3Dfunction(){try{if(this._shortCircuit()){return;}=0A=
this._loadAdMan();}=0A=
catch(e){this._handleError(e);}};xmp.baseplayer.internals.VideoCompositeA=
dMetaFileLoader2.prototype._shortCircuit=3Dfunction(){if(this._resBundle.=
getCount()=3D=3D=3D0){this._resBundle._setRawData('Loaded (no =
resources)');}=0A=
if(this._resBundle.isLoaded()||this._resBundle.isError()){xmp.util.Timer.=
doSimpleCallback(this._createCb(null,'endAsynch',this._end));return =
true;}=0A=
return =
false;};xmp.baseplayer.internals.VideoCompositeAdMetaFileLoader2.prototyp=
e._getDataType=3Dfunction(en){var fn=3Den.getType();var =
gn=3Dxmp.util.SettingsManager.getInstance().getContextNode().getNodeForPa=
th('ad data types');return =
gn.getString(fn,'default');};xmp.baseplayer.internals.VideoCompositeAdMet=
aFileLoader2.prototype._handleError=3Dfunction(e){this._handleErrorMessag=
e(xmp.extractErrorMessage(e));};xmp.baseplayer.internals.VideoCompositeAd=
MetaFileLoader2.prototype._handleErrorMessage=3Dfunction(hn){this._resBun=
dle._setErrorMessage(hn);this._end();};xmp.baseplayer.internals.VideoComp=
ositeAdMetaFileLoader2.prototype._end=3Dfunction(){if(this._owner!=3D=3Dn=
ull){this._owner._release(this);this._owner=3Dnull;}=0A=
if(!this._resBundle.isError()){if(this._resBundle.getCount()=3D=3D=3Dthis=
._resBundle.getErrorCount()){this._resBundle._setErrorMessage('All =
resources in composite failed.');}}=0A=
if(!this._resBundle.isError()){this._resBundle._setRawData('Loaded');}=0A=
try{this._callback.call(this._resBundle);}=0A=
catch(e){this._logger.warn('Error calling =
callback',e);}};xmp.baseplayer.internals.VideoCompositeAdMetaFileLoader2.=
prototype._createCb=3Dfunction(jn,kn,ln){return(new =
xmp.util.Callback(this._makeCbName(jn,kn),ln,this));};xmp.baseplayer.inte=
rnals.VideoCompositeAdMetaFileLoader2.prototype._makeCbName=3Dfunction(mn=
,nn){var =
on=3D(mn!=3D=3Dnull)?mn.getType():'';return(this._CLASS_NAME+'_'+nn+'_'+o=
n+'_'+this._loaderId);};xmp.baseplayer.internals.VideoCompositeAdMetaFile=
Loader2.prototype._buildAdServerRelUrl=3Dfunction(pn,qn){var =
rn=3Dxmp.trimString(qn);var sn=3Dpn.getMetadata('segvars','');return =
xmp.baseplayer.internals.Ad.getInstance().buildRelativeURL(pn.getType(),t=
his._companionAdId,rn,sn);};xmp.baseplayer.internals.VideoCompositeAdMeta=
FileLoader2.prototype._crackRawData=3Dfunction(tn){var =
un=3Dtn.indexOf('\n');if(un=3D=3D=3D-1){throw new Error('Ad server =
returned malformed composite - missing line feed between header and =
data.');}=0A=
var vn=3Dxmp.trimString(tn.substr(0,un));if(vn.length=3D=3D=3D0){throw =
new Error('Ad server returned malformed composite - empty string =
header.');}=0A=
if(0!=3D=3Dvn.indexOf(this._AD_REQUEST_ID_PREFIX)){throw new Error('Ad =
server returned malformed composite - header does not begin with =
"'+this._DELIM+' '+this._AD_REQUEST_ID_PREFIX+'".');}=0A=
var wn=3Dtn.substr(un+1);un=3Dvn.indexOf(' ');if(un=3D=3D=3D-1){throw =
new Error('Ad server returned malformed composite - missing space in =
header between ID and status.');}=0A=
var id=3Dxmp.trimString(vn.substr(0,un));var =
xn=3Dxmp.trimString(vn.substr(un+1));if(!(xn=3D=3D=3D'OK'||xn=3D=3D=3D'ER=
ROR')){throw new Error('Ad server returned malformed composite - status =
must be either "OK" or "ERROR".');}=0A=
var =
yn=3D(xn=3D=3D=3D'OK');if(yn&&(xmp.trimString(wn).length=3D=3D=3D0)){yn=3D=
false;wn=3D'No data returned by ad server (or only white space).';}=0A=
return{'adReqId':id,'data':wn,'ok':yn};};xmp.baseplayer.internals.VideoCo=
mpositeAdMetaFileLoader2.prototype._breakComposite=3Dfunction(zn){var =
An=3D{};var Bn=3Dzn.indexOf(this._DELIM);if(Bn=3D=3D=3D-1){return An;}=0A=
if(Bn>0){zn=3Dzn.substr(Bn);}=0A=
var Cn=3Dzn.split(this._DELIM_RE);for(var i=3D1;i<Cn.length;i++){var =
Dn=3Dthis._crackRawData(Cn[i]);An[Dn.adReqId]=3DDn;}=0A=
return =
An;};xmp.baseplayer.internals.VideoCompositeAdMetaFileLoader2.prototype._=
handleAdServerARMResponse=3Dfunction(En,Fn){try{this._handleAdServerARMRe=
sponseInternal(En,Fn);}=0A=
catch(e){this._failAll(xmp.extractErrorMessage(e));this._handleError(e);}=
};xmp.baseplayer.internals.VideoCompositeAdMetaFileLoader2.prototype._han=
dleAdServerARMResponseInternal=3Dfunction(Gn,Hn){if(Hn.isError()){var =
In=3Dnew =
xmp.baseplayer.ApplicationError(Hn.getErrorObject(),'FailToGetAdVideo',nu=
ll,[{label:"Url",text:Hn.getFullUrl()}]);this._logger.warn(In.message);th=
is._failAll(Hn.getErrorMessage());this._end();return;}=0A=
var Jn=3Dthis._breakComposite(Hn.getText());for(var =
i=3D0;i<this._adDataArray.length;i++){var Kn=3Dthis._adDataArray[i];var =
Ln=3DJn[Kn.adReqId];if(typeof(Ln)=3D=3D=3D'undefined'){throw new =
Error('Ajax response missing ad request ID: '+Kn.adReqId+' for res type: =
'+Kn.res.getType());}=0A=
if(Ln.ok){if(Kn.res.getDataType()=3D=3D=3D'videoJson'){try{var =
Mn=3Dxmp.net.AjaxRequestManager.getInstance()._parseJson(Ln.data);Kn.res.=
_setRawData(Mn);}=0A=
catch(parseEx){this._logger.warn('Parse error with ad type: =
'+Kn.res.getType()+', =
'+xmp.extractErrorMessage(parseEx));Kn.res._setErrorMessage(xmp.extractEr=
rorMessage(parseEx));}}=0A=
else{Kn.res._setRawData(Ln.data);}}=0A=
else{Kn.res._setErrorMessage(Ln.data);}}=0A=
this._end();};xmp.baseplayer.internals.VideoCompositeAdMetaFileLoader2.pr=
ototype._failAll=3Dfunction(Nn){this._resBundle._setErrorMessage(Nn);var =
On=3Dthis._resBundle.getResourceTypes();for(var =
i=3D0;i<On.length;i++){var Pn=3DOn[i];var =
Qn=3Dthis._resBundle.getMetaResource(Pn);Qn._setErrorMessage(Nn);}};xmp.b=
aseplayer.internals.VideoCompositeAdMetaFileLoader2.prototype._loadAdMan=3D=
function(){var Rn=3Dthis._resBundle.getResourceTypes();for(var =
i=3D0;i<Rn.length;i++){var =
Sn=3Dthis._resBundle.getMetaResource(Rn[i]);Sn.setCompanionAdId(this._com=
panionAdId);var =
Tn=3Dthis._getDataType(Sn);Sn.setDataType(Tn);this._loadARM(Sn,this._AD_M=
AN_TYPE,xmp.net.ContentTypes.TEXT,Sn.getId());}};xmp.baseplayer.internals=
.VideoCompositeAdMetaFileLoader2.prototype._loadARM=3Dfunction(Un,Vn,Wn,X=
n){var =
cb=3Dthis._createCb(Un,Vn,this._handleAdManARMResponse);this._latch.addCb=
Name(cb.getId());xmp.net.AjaxRequestManager.getInstance().request(Xn,cb,V=
n,Xn,Wn,null);};xmp.baseplayer.internals.VideoCompositeAdMetaFileLoader2.=
prototype._handleAdManARMResponse=3Dfunction(Yn,Zn){if(Zn.isError()){var =
$n=3Dnew =
xmp.baseplayer.ApplicationError(Zn.getErrorObject(),'FailToGetAdVideo',nu=
ll,[{label:"Url",text:Zn.getFullUrl()}]);this._logger.warn($n.message,$n)=
;}=0A=
this._latch.called(Yn.getId(),Zn);};xmp.baseplayer.internals.VideoComposi=
teAdMetaFileLoader2.prototype._handleLatchComplete=3Dfunction(cb){try{thi=
s._doAdManComplete();}=0A=
catch(e){this._handleError(e);}};xmp.baseplayer.internals.VideoCompositeA=
dMetaFileLoader2.prototype._doAdManComplete=3Dfunction(){var =
ao=3Dthis._resBundle.getResourceTypes();var =
bo=3D[];this._adDataArray=3D[];for(var i=3D0;i<ao.length;i++){var =
co=3Dthis._resBundle.getMetaResource(ao[i]);var =
eo=3Dthis._makeCbName(co,this._AD_MAN_TYPE);var =
fo=3Dthis._latchCompleteCb.getMetadata(eo,xmp.util.internals.MetadataMap.=
defaultObj);if(!fo.isError()){var =
go=3Dthis._AD_REQUEST_ID_PREFIX+xmp.zeroPad(bo.length,2);var =
ho=3Dthis._buildAdServerRelUrl(co,fo.getText());bo.push({name:go,value:ho=
,type:xmp.net.AjaxRequestManager.POST_FORM_TYPE});this._adDataArray.push(=
{'adReqId':go,'res':co});}=0A=
else{co._setErrorMessage(fo.getErrorMessage());}}=0A=
if(bo.length=3D=3D=3D0){this._end();}=0A=
else{bo.reverse();var io=3D'/multi';var =
cb=3Dthis._createCb(null,'adCompositor',this._handleAdServerARMResponse);=
xmp.net.AjaxRequestManager.getInstance().request(io,cb,'adCompositor',io,=
xmp.net.ContentTypes.TEXT,bo);}};xmp.createNamespace("xmp.baseplayer.inte=
rnals");xmp.baseplayer.internals.VideoContentMetaFileLoader=3Dfunction(jo=
,ko){this._logger=3Dnew =
xmp.util.internals.CategoryLogger('VideoContentMetaFileLoader');this._THI=
S_TYPE=3D'videoContentMeta';this._owner=3Djo;this._loaderId=3Dko;this._ha=
ndleArray=3D[];this._handleMap=3D{};this._perIdCallback=3Dnull;this._allL=
oadedCallback=3Dnull;this._loadedCount=3D0;this._loadCalled=3Dfalse;};xmp=
.baseplayer.internals.VideoContentMetaFileLoader.prototype.getLoaderId=3D=
function(){return =
this._loaderId;};xmp.baseplayer.internals.VideoContentMetaFileLoader.prot=
otype.setIds=3Dfunction(lo,mo){this._loadCalled=3Dfalse;this._handleArray=
=3D[];this._perIdCallback=3Dmo;var no=3D{};for(var =
i=3D0;i<lo.length;i++){var id=3Dlo[i];if(!(typeof =
id=3D=3D=3D'string'&&id.length>0)){throw new =
xmp.util.internals.InvalidArgsError("The 'ids' argument must be an array =
of non-empty strings.");}=0A=
if(typeof no[id]!=3D=3D'undefined'){this._logger.warn('Skipping =
duplicate ID: '+id);continue;}=0A=
no[id]=3Did;var =
oo=3Dxmp.baseplayer.internals.MetaFileCache.getInstance().findOrCreate(th=
is._THIS_TYPE,id,this,-1);var =
po=3D{h:oo,ready:false};this._handleArray.push(po);this._handleMap[oo.get=
Id()]=3Dpo;}=0A=
return =
this._extractPlayableDataArray();};xmp.baseplayer.internals.VideoContentM=
etaFileLoader.prototype.setAllLoadedCallback=3Dfunction(qo){this._allLoad=
edCallback=3Dqo;};xmp.baseplayer.internals.VideoContentMetaFileLoader.pro=
totype.load=3Dfunction(){this._loadCalled=3Dtrue;if(this._handleArray.len=
gth=3D=3D=3D0){this._releaseThis();this._notifyAllLoaded();return;}=0A=
this._loadedCount=3D0;for(var i=3D0;i<this._handleArray.length;i++){var =
ro=3Dthis._handleArray[i];if(ro.ready){this._notifyPerFile(ro.h);}}};xmp.=
baseplayer.internals.VideoContentMetaFileLoader.prototype._extractPlayabl=
eDataArray=3Dfunction(){var so=3D[];for(var =
i=3D0;i<this._handleArray.length;i++){var =
to=3Dthis._handleArray[i].h;so.push(to.getDataObject());}=0A=
return =
so;};xmp.baseplayer.internals.VideoContentMetaFileLoader.prototype._notif=
yPerFile=3Dfunction(uo){if(uo.isLoaded()){this._loadedCount++;this._notif=
yPerFileCore(uo);}=0A=
if(this._loadedCount>=3Dthis._handleArray.length){this._releaseThis();thi=
s._notifyAllLoaded();}};xmp.baseplayer.internals.VideoContentMetaFileLoad=
er.prototype._releaseThis=3Dfunction(){if(this._owner!=3D=3Dnull){this._o=
wner._release(this);this._owner=3Dnull;}};xmp.baseplayer.internals.VideoC=
ontentMetaFileLoader.prototype._notifyPerFileCore=3Dfunction(vo){try{if(t=
his._perIdCallback!=3D=3Dnull){this._perIdCallback.call(vo.getDataObject(=
));}}=0A=
catch(e){this._logger.warn('Error calling =
per-file-callback',e);}};xmp.baseplayer.internals.VideoContentMetaFileLoa=
der.prototype._notifyAllLoaded=3Dfunction(){try{if(this._allLoadedCallbac=
k!=3D=3Dnull){this._allLoadedCallback.call();}}=0A=
catch(e){var wo=3Dnew =
xmp.baseplayer.ApplicationError(e,'badVideoJson',e.context,null);this._lo=
gger.warn(wo.message,wo);}};xmp.baseplayer.internals.VideoContentMetaFile=
Loader.prototype._notifyFileRequestLoaded=3Dfunction(xo){if(this._loadCal=
led){this._notifyPerFile(xo);}=0A=
else{var yo=3Dthis._handleMap[xo.getId()];if(yo.h!=3D=3Dxo){throw new =
Error('Unexpected, handles not the same reference.');}=0A=
yo.ready=3Dtrue;}};xmp.baseplayer.internals.VideoContentMetaFileLoader.pr=
ototype._loadFileRequest=3Dfunction(zo){var Ao=3Dnull;try{Ao=3Dnew =
xmp.util.PlayableData(zo.getId());zo._setDataObject(Ao);var Bo=3Dnew =
xmp.util.Callback('VideoContentMetaFileLoader'+'_'+this.getLoaderId()+'_'=
+zo.getId(),this._handleAjaxResponse,this);var =
Co=3Dxmp.net.AjaxRequestManager.getInstance();Bo.setMetadata('handle',zo)=
;Co.request(zo.getId(),Bo,zo.getType(),zo.getId(),xmp.net.ContentTypes.JS=
ON,null);return =
xmp.baseplayer.internals.FileRequestHandle.STATE_LOADING;}=0A=
catch(e){try{if(Ao!=3D=3Dnull){Ao._setErrorMessage(xmp.extractErrorMessag=
e(e));}}=0A=
catch(e2){this._logger.warn('Second chance error handling created file =
request',e2);}=0A=
throw =
e;}};xmp.baseplayer.internals.VideoContentMetaFileLoader.prototype._handl=
eAjaxResponse=3Dfunction(Do,Eo){var Fo=3DDo.getMetadata('handle',{});var =
Go=3DFo.getDataObject();if(!Eo.isError()){Go._setRawData(Eo.getJsonObject=
());}=0A=
else{var Ho=3Dnew =
xmp.baseplayer.ApplicationError(Eo.getErrorObject(),'FailToGetVideoJson',=
'VideoContent',[{label:'url',text:Eo.getFullUrl()}]);this._logger.warn(Ho=
.message,Ho);Fo._setErrorMessage(Eo.getErrorMessage());Go._setErrorMessag=
e(Eo.getErrorMessage());}=0A=
Fo._setAsLoaded();};xmp.createNamespace("xmp.baseplayer.internals");xmp.b=
aseplayer.internals.VideoPromoMetaFileLoader=3Dfunction(Io,Jo){this._logg=
er=3Dnew =
xmp.util.internals.CategoryLogger('VideoPromoMetaFileLoader');this._THIS_=
TYPE=3D'videoPromoMeta';this._owner=3DIo;this._loaderId=3DJo;this._playab=
leNode=3Dnull;this._callback=3Dnull;};xmp.baseplayer.internals.VideoPromo=
MetaFileLoader.prototype.getLoaderId=3Dfunction(){return =
this._loaderId;};xmp.baseplayer.internals.VideoPromoMetaFileLoader.protot=
ype.setNode=3Dfunction(Ko,Lo){this._playableNode=3DKo;this._callback=3DLo=
;};xmp.baseplayer.internals.VideoPromoMetaFileLoader.prototype.load=3Dfun=
ction(){var Mo=3Dnew =
xmp.util.Callback('VideoPromoMetaFileLoader'+'_'+this._loaderId,this._han=
dleAjaxResponse,this);var =
No=3Dxmp.net.AjaxRequestManager.getInstance();var =
Oo=3Dthis._playableNode.getPlayableData();var =
id=3DOo.getMetaResourceId();No.request(id,Mo,this._THIS_TYPE,id,xmp.net.C=
ontentTypes.JSON,null);};xmp.baseplayer.internals.VideoPromoMetaFileLoade=
r.prototype._handleAjaxResponse=3Dfunction(Po,Qo){var =
Ro=3Dthis._playableNode.getPlayableData();if(!Qo.isError()){var So=3Dnew =
xmp.baseplayer.ApplicationError(Qo.getErrorObject(),'FailToGetPromoJson',=
'VideoPromo',[{label:'url',text:Qo.getFullUrl()}]);this._logger.warn(So.m=
essage,So);Ro._setRawData(Qo.getJsonObject());}=0A=
else{Ro._setErrorMessage(Qo.getErrorMessage());}=0A=
if(this._owner!=3D=3Dnull){this._owner._release(this);this._owner=3Dnull;=
}=0A=
try{this._callback.call(this._playableNode);}=0A=
catch(e){this._logger.warn('Error calling =
callback',e);}};xmp.createNamespace("xmp.baseplayer.listeners");xmp.basep=
layer.listeners.CompositeNodeListener=3Dfunction(To){this._com_logger=3Dn=
ew =
xmp.util.internals.CategoryLogger('CompositeNodeListener');this._constant=
s=3Dxmp.baseplayer.listeners.CompositeNodeListener;xmp.baseplayer.listene=
rs.CompositeNodeListener.ctor.call(this,this._constants.COMPOSITE_NODE_LI=
STENER,To);this.children=3D[];};xmp.DERIVE_CLASS(xmp.baseplayer.listeners=
.AbstractNodeListener,xmp.baseplayer.listeners.CompositeNodeListener);xmp=
.baseplayer.listeners.CompositeNodeListener.COMPOSITE_NODE_LISTENER=3D"Co=
mposite";xmp.baseplayer.listeners.CompositeNodeListener.INITIALIZE=3D"Ini=
tialize";xmp.baseplayer.listeners.CompositeNodeListener.COMPLETE=3D"Compl=
ete";xmp.baseplayer.listeners.CompositeNodeListener.RENDER=3D"Render";xmp=
.baseplayer.listeners.CompositeNodeListener.DYNAMIC_RULES=3D"DynamicRules=
";xmp.baseplayer.listeners.CompositeNodeListener.TIMELINE_CHANGE=3D"Timel=
ineChange";xmp.baseplayer.listeners.CompositeNodeListener.CAN_USER_CONTRO=
L=3D"CanUserControl";xmp.baseplayer.listeners.CompositeNodeListener.CAN_C=
OMPLETE_NOW=3D"CanCompleteNow";xmp.baseplayer.listeners.CompositeNodeList=
ener.COMPLETE_ASNCH=3D"CompleteAsynch";xmp.baseplayer.listeners.Composite=
NodeListener.OVERRIDE_AD_RESOURCES=3D"OverrideAdResources";xmp.baseplayer=
.listeners.CompositeNodeListener.VALIDATE=3D"Validate";xmp.baseplayer.lis=
teners.CompositeNodeListener.prototype.canUserControl=3Dfunction(Uo){retu=
rn =
this.dispatch(this._constants.CAN_USER_CONTROL,[Uo]);};xmp.baseplayer.lis=
teners.CompositeNodeListener.prototype.handleDynamicRules=3Dfunction(Vo){=
this.dispatch(this._constants.DYNAMIC_RULES,[Vo]);};xmp.baseplayer.listen=
ers.CompositeNodeListener.prototype.handleRender=3Dfunction(Wo){this.disp=
atch(this._constants.RENDER,[Wo]);};xmp.baseplayer.listeners.CompositeNod=
eListener.prototype.handleInitialize=3Dfunction(Xo){this.dispatch(this._c=
onstants.INITIALIZE,[Xo]);};xmp.baseplayer.listeners.CompositeNodeListene=
r.prototype.handleComplete=3Dfunction(Yo){this.dispatch(this._constants.C=
OMPLETE,[Yo]);};xmp.baseplayer.listeners.CompositeNodeListener.prototype.=
canCompleteNow=3Dfunction(Zo){return =
this.dispatch(this._constants.CAN_COMPLETE_NOW,[Zo]);};xmp.baseplayer.lis=
teners.CompositeNodeListener.prototype.handleCompleteAsynch=3Dfunction($o=
,ap){this.dispatch(this._constants.COMPLETE_ASNCH,[$o,ap]);};xmp.baseplay=
er.listeners.CompositeNodeListener.prototype.handleOpen=3Dfunction(bp){th=
is.dispatch(xmp.OPEN,[bp]);};xmp.baseplayer.listeners.CompositeNodeListen=
er.prototype.handleConnecting=3Dfunction(cp){this.dispatch(xmp.CONNECTING=
,[cp]);};xmp.baseplayer.listeners.CompositeNodeListener.prototype.handleC=
onnected=3Dfunction(dp){this.dispatch(xmp.CONNECTED,[dp]);};xmp.baseplaye=
r.listeners.CompositeNodeListener.prototype.handlePlay=3Dfunction(ep){thi=
s.dispatch(xmp.PLAY,[ep]);};xmp.baseplayer.listeners.CompositeNodeListene=
r.prototype.handleFirstFrameRendered=3Dfunction(fp){this.dispatch(xmp.FIR=
ST_FRAME_RENDERED,[fp]);};xmp.baseplayer.listeners.CompositeNodeListener.=
prototype.handlePause=3Dfunction(gp){this.dispatch(xmp.PAUSE,[gp]);};xmp.=
baseplayer.listeners.CompositeNodeListener.prototype.handleStop=3Dfunctio=
n(hp){this.dispatch(xmp.STOP,[hp]);};xmp.baseplayer.listeners.CompositeNo=
deListener.prototype.handleRewind=3Dfunction(ip){this.dispatch(xmp.REWIND=
,[ip]);};xmp.baseplayer.listeners.CompositeNodeListener.prototype.handleF=
astForward=3Dfunction(jp){this.dispatch(xmp.FAST_FORWARD,[jp]);};xmp.base=
player.listeners.CompositeNodeListener.prototype.handleSeekable=3Dfunctio=
n(kp){this.dispatch(xmp.SEEKABLE,[kp]);};xmp.baseplayer.listeners.Composi=
teNodeListener.prototype.handleEnded=3Dfunction(lp){this.dispatch(xmp.END=
ED,[lp]);};xmp.baseplayer.listeners.CompositeNodeListener.prototype.handl=
eBuffering=3Dfunction(mp,np){this.dispatch(xmp.BUFFERING,[mp,np]);};xmp.b=
aseplayer.listeners.CompositeNodeListener.prototype.handleTimelineChange=3D=
function(op,pp,qp){this.dispatch(this._constants.TIMELINE_CHANGE,[op,pp,q=
p]);};xmp.baseplayer.listeners.CompositeNodeListener.prototype.handleErro=
r=3Dfunction(rp,e){this.dispatch(xmp.ERRORS,[rp,e]);};xmp.baseplayer.list=
eners.CompositeNodeListener.prototype.handleOverrideAdResources=3Dfunctio=
n(sp,tp){this.dispatch(this._constants.OVERRIDE_AD_RESOURCES,[sp,tp]);};x=
mp.baseplayer.listeners.CompositeNodeListener.prototype.handleValidate=3D=
function(up){this.dispatch(this._constants.VALIDATE,[up]);};xmp.baseplaye=
r.listeners.CompositeNodeListener.prototype.dispatch=3Dfunction(vp,wp){va=
r xp=3Dthis.children.length;for(var i=3D0;i<xp;i++){var =
yp=3Dthis.children[i];var zp=3Dyp.callbacks[vp];var =
Ap=3Dnull;try{Ap=3Dzp.method.apply(yp.listener,wp);}=0A=
catch(e){this._com_logger.warn('Error dispatching: '+vp+' on =
'+yp.listener.getId()+' node listener.',e);try{var =
Bp=3Dwp[0];yp.listener.handleError(Bp,e);}=0A=
catch(e2){try{this._com_logger.warn('Error calling handleError while =
dispatching: '+vp+' on '+yp.listener.getId()+' node listener.',e2);}=0A=
catch(e3){}}}=0A=
if(zp.return_type=3D=3D=3Dxmp.BOOLEAN_TYPE&&false=3D=3D=3DAp){return =
false;}}=0A=
return =
true;};xmp.baseplayer.listeners.CompositeNodeListener.prototype.addChild=3D=
function(Cp){var =
Dp=3D{listener:Cp,callbacks:null};this.initChildCallbacks(Dp,Cp);this.chi=
ldren.push(Dp);};xmp.baseplayer.listeners.CompositeNodeListener.prototype=
.initChildCallbacks=3Dfunction(Ep,Fp){var =
Gp=3D[{name:this._constants.CAN_USER_CONTROL,data:{method:Fp.canUserContr=
ol,return_type:xmp.BOOLEAN_TYPE}},{name:this._constants.DYNAMIC_RULES,dat=
a:{method:Fp.handleDynamicRules,return_type:xmp.UNDEFINED_TYPE}},{name:th=
is._constants.INITIALIZE,data:{method:Fp.handleInitialize,return_type:xmp=
.UNDEFINED_TYPE}},{name:this._constants.COMPLETE,data:{method:Fp.handleCo=
mplete,return_type:xmp.UNDEFINED_TYPE}},{name:this._constants.RENDER,data=
:{method:Fp.handleRender,return_type:xmp.UNDEFINED_TYPE}},{name:xmp.OPEN,=
data:{method:Fp.handleOpen,return_type:xmp.UNDEFINED_TYPE}},{name:xmp.CON=
NECTING,data:{method:Fp.handleConnecting,return_type:xmp.UNDEFINED_TYPE}}=
,{name:xmp.CONNECTED,data:{method:Fp.handleConnected,return_type:xmp.UNDE=
FINED_TYPE}},{name:xmp.FIRST_FRAME_RENDERED,data:{method:Fp.handleFirstFr=
ameRendered,return_type:xmp.UNDEFINED_TYPE}},{name:xmp.PLAY,data:{method:=
Fp.handlePlay,return_type:xmp.UNDEFINED_TYPE}},{name:xmp.PAUSE,data:{meth=
od:Fp.handlePause,return_type:xmp.UNDEFINED_TYPE}},{name:xmp.STOP,data:{m=
ethod:Fp.handleStop,return_type:xmp.UNDEFINED_TYPE}},{name:xmp.REWIND,dat=
a:{method:Fp.handleRewind,return_type:xmp.UNDEFINED_TYPE}},{name:xmp.FAST=
_FORWARD,data:{method:Fp.handleFastForward,return_type:xmp.UNDEFINED_TYPE=
}},{name:xmp.SEEKABLE,data:{method:Fp.handleSeekable,return_type:xmp.UNDE=
FINED_TYPE}},{name:xmp.ENDED,data:{method:Fp.handleEnded,return_type:xmp.=
UNDEFINED_TYPE}},{name:xmp.BUFFERING,data:{method:Fp.handleBuffering,retu=
rn_type:xmp.UNDEFINED_TYPE}},{name:this._constants.TIMELINE_CHANGE,data:{=
method:Fp.handleTimelineChange,return_type:xmp.UNDEFINED_TYPE}},{name:xmp=
.ERRORS,data:{method:Fp.handleError,return_type:xmp.UNDEFINED_TYPE}},{nam=
e:this._constants.CAN_COMPLETE_NOW,data:{method:Fp.canCompleteNow,return_=
type:xmp.BOOLEAN_TYPE}},{name:this._constants.COMPLETE_ASNCH,data:{method=
:Fp.handleCompleteAsynch,return_type:xmp.UNDEFINED_TYPE}},{name:this._con=
stants.OVERRIDE_AD_RESOURCES,data:{method:Fp.handleOverrideAdResources,re=
turn_type:xmp.UNDEFINED_TYPE}},{name:this._constants.VALIDATE,data:{metho=
d:Fp.handleValidate,return_type:xmp.UNDEFINED_TYPE}}];Ep.callbacks=3D{};v=
ar Hp=3DGp.length;for(var =
i=3D0;i<Hp;i++){Ep.callbacks[Gp[i].name]=3DGp[i].data;}};xmp.createNamesp=
ace("xmp.baseplayer.listeners");xmp.baseplayer.listeners.DefaultAdNodeLis=
tener=3Dfunction(Ip,Jp){xmp.baseplayer.listeners.DefaultAdNodeListener.ct=
or.call(this,Ip,Jp);this._logger=3Dnew =
xmp.util.internals.CategoryLogger('DefaultAdNodeListener');};xmp.DERIVE_C=
LASS(xmp.baseplayer.listeners.DefaultBaseNodeListener,xmp.baseplayer.list=
eners.DefaultAdNodeListener);xmp.baseplayer.listeners.DefaultAdNodeListen=
er.prototype.canUserControl=3Dfunction(Kp){var =
Lp=3Dxmp.util.SettingsManager.getInstance().getContextNode().getNodeForPa=
th('BasePlayer').getBoolean('user can control ad',false);return =
Lp;};xmp.baseplayer.listeners.DefaultAdNodeListener.prototype.handleCompl=
ete=3Dfunction(Mp){var =
Np=3DMp.getPlayableData();Mp.setURI(Np.getPlayableId());Mp.setMimeTypes(N=
p.getMimeTypeArray());Mp.setStreamingMode(xmp.AD_STREAMING_MODE);};xmp.ba=
seplayer.listeners.DefaultAdNodeListener.prototype.handleRender=3Dfunctio=
n(Op){var =
Pp=3DOp.getMetaResource('primary');if(Pp!=3D=3Dnull){this._logger.info('P=
laying ad with tile ID: '+Pp.getCompanionAdId());}=0A=
xmp.baseplayer.listeners.DefaultAdNodeListener.base.handleRender.call(thi=
s,Op);};xmp.createNamespace("xmp.baseplayer.listeners");xmp.baseplayer.li=
steners.DefaultNextUpSlateNodeListener=3Dfunction(Qp,Rp){xmp.baseplayer.l=
isteners.DefaultNextUpSlateNodeListener.ctor.call(this,Qp,Rp);this._logge=
r=3Dnew =
xmp.util.internals.CategoryLogger('DefaultNextUpSlateNodeListener');};xmp=
.DERIVE_CLASS(xmp.baseplayer.listeners.DefaultSlateNodeListener,xmp.basep=
layer.listeners.DefaultNextUpSlateNodeListener);xmp.baseplayer.listeners.=
DefaultNextUpSlateNodeListener.prototype.handleComplete=3Dfunction(Sp){xm=
p.baseplayer.listeners.DefaultNextUpSlateNodeListener.base.handleComplete=
.call(this,Sp);var =
Tp=3Dthis._findNextContentNode();if(Tp!=3D=3Dnull){Sp.setMetadata("headli=
ne",Tp.getPlayableData().getDataObject().headline);}=0A=
else{this._logger.debug("Unusual state: The NextUpSlate failed to find a =
next content =
node.");}};xmp.createNamespace("xmp.baseplayer.listeners");xmp.baseplayer=
.listeners.DefaultPlayerListener=3Dfunction(Up,Vp){xmp.baseplayer.listene=
rs.DefaultPlayerListener.ctor.call(this,Up,Vp);this._logger=3Dnew =
xmp.util.internals.CategoryLogger('DefaultPlayerListener');};xmp.DERIVE_C=
LASS(xmp.baseplayer.listeners.DefaultBaseNodeListener,xmp.baseplayer.list=
eners.DefaultPlayerListener);xmp.baseplayer.listeners.DefaultPlayerListen=
er.prototype.handleRender=3Dfunction(Wp){};xmp.baseplayer.listeners.Defau=
ltPlayerListener.prototype.handleError=3Dfunction(Xp,e){};xmp.baseplayer.=
listeners.DefaultPlayerListener.prototype.handleOpen=3Dfunction(Yp){this.=
setStatus(Yp,xmp.OPEN);};xmp.baseplayer.listeners.DefaultPlayerListener.p=
rototype.handleConnecting=3Dfunction(Zp){this.setStatus(Zp,xmp.CONNECTING=
);};xmp.baseplayer.listeners.DefaultPlayerListener.prototype.handleConnec=
ted=3Dfunction($p){this.setStatus($p,xmp.CONNECTED);};xmp.baseplayer.list=
eners.DefaultPlayerListener.prototype.handlePlay=3Dfunction(aq){this.setS=
tatus(aq,xmp.PLAY);};xmp.baseplayer.listeners.DefaultPlayerListener.proto=
type.handlePause=3Dfunction(bq){this.setStatus(bq,xmp.PAUSE);};xmp.basepl=
ayer.listeners.DefaultPlayerListener.prototype.handleStop=3Dfunction(cq){=
this.setStatus(cq,xmp.STOP);};xmp.baseplayer.listeners.DefaultPlayerListe=
ner.prototype.handleRewind=3Dfunction(dq){this.setStatus(dq,xmp.REWIND);}=
;xmp.baseplayer.listeners.DefaultPlayerListener.prototype.handleFastForwa=
rd=3Dfunction(eq){this.setStatus(eq,xmp.FAST_FORWARD);};xmp.baseplayer.li=
steners.DefaultPlayerListener.prototype.handleSeekable=3Dfunction(fq){thi=
s.setStatus(fq,xmp.SEEKABLE);};xmp.baseplayer.listeners.DefaultPlayerList=
ener.prototype.handleEnded=3Dfunction(gq){this.setStatus(gq,xmp.ENDED);};=
xmp.baseplayer.listeners.DefaultPlayerListener.prototype.handleBuffering=3D=
function(hq,iq){this.setStatus(hq,xmp.BUFFERING,iq);};xmp.baseplayer.list=
eners.DefaultPlayerListener.prototype.setStatus=3Dfunction(jq,kq,lq){this=
._logger.debug('Player Listener setStatus, override to do specific =
handling.');};xmp.createNamespace("xmp.baseplayer.listeners");xmp.basepla=
yer.listeners.DefaultPromoNodeListener=3Dfunction(mq,nq){xmp.baseplayer.l=
isteners.DefaultPromoNodeListener.ctor.call(this,mq,nq);};xmp.DERIVE_CLAS=
S(xmp.baseplayer.listeners.DefaultBaseNodeListener,xmp.baseplayer.listene=
rs.DefaultPromoNodeListener);xmp.baseplayer.listeners.DefaultPromoNodeLis=
tener.prototype.handleComplete=3Dfunction(oq){var =
pq=3Doq.getPlayableData();oq.setMimeTypes(pq.getMimeTypeArray());var =
qq=3Dpq.getDataObject().sizes;if(qq&&qq.length>0){oq.setSizes(pq.getDataO=
bject().sizes);}=0A=
oq.setURI(pq.getDataObject().location);oq.setStreamingMode(pq.getDataObje=
ct().streamingMode);};xmp.createNamespace("xmp.baseplayer.listeners");xmp=
.baseplayer.listeners.DefaultStartSlateNodeListener=3Dfunction(rq,sq){xmp=
.baseplayer.listeners.DefaultStartSlateNodeListener.ctor.call(this,rq,sq)=
;this._logger=3Dnew =
xmp.util.internals.CategoryLogger('DefaultStartSlateNodeListener');};xmp.=
DERIVE_CLASS(xmp.baseplayer.listeners.DefaultSlateNodeListener,xmp.basepl=
ayer.listeners.DefaultStartSlateNodeListener);xmp.baseplayer.listeners.De=
faultStartSlateNodeListener.prototype.handleComplete=3Dfunction(tq){xmp.b=
aseplayer.listeners.DefaultStartSlateNodeListener.base.handleComplete.cal=
l(this,tq);var uq=3Dthis._findNextContentNode();if(uq!=3D=3Dnull){var =
vq=3Duq.getPlayableData().getDataObject().images;var wq=3Dvq.length;var =
xq=3D[];var yq=3D{};for(var =
i=3D0;i<wq;i++){xq.push(vq[i].id);yq[vq[i].id]=3Dvq[i].resource;}=0A=
tq.setMetadata("image",yq[xmp.PlayerPolicy.getSizeFromPlayer(xq)]);}=0A=
else{this._logger.debug("Unusual state: The StartSlate failed to find a =
next content =
node.");}};xmp.createNamespace("xmp.baseplayer.listeners");xmp.baseplayer=
.listeners.DefaultVideoNodeListener=3Dfunction(zq,Aq){xmp.baseplayer.list=
eners.DefaultVideoNodeListener.ctor.call(this,zq,Aq,false);};xmp.DERIVE_C=
LASS(xmp.baseplayer.listeners.DefaultBaseNodeListener,xmp.baseplayer.list=
eners.DefaultVideoNodeListener);xmp.baseplayer.listeners.DefaultVideoNode=
Listener.prototype.handleInitialize=3Dfunction(Bq){var =
Cq=3DBq.getPlayableData();Bq.setMimeTypes(Cq.getMimeTypeArray());var =
Dq=3DCq.getDataObject().sizes;if(Dq&&Dq.length>0){Bq.setSizes(Cq.getDataO=
bject().sizes);}=0A=
Bq.setURI(Cq.getDataObject().location);Bq.setStreamingMode(Cq.getDataObje=
ct().streamingMode);};xmp.createNamespace("xmp.baseplayer.listeners.inter=
nal");xmp.baseplayer.listeners.internal.AdLoaderNodeListener=3Dfunction(E=
q){xmp.baseplayer.listeners.internal.AdLoaderNodeListener.ctor.call(this,=
'AdLoader',Eq);};xmp.DERIVE_CLASS(xmp.baseplayer.listeners.internal.AdRes=
NodeListener,xmp.baseplayer.listeners.internal.AdLoaderNodeListener);xmp.=
baseplayer.listeners.internal.AdLoaderNodeListener.prototype._handleResBu=
ndleLoaded=3Dfunction(Fq,Gq){if(Gq.isError()){Fq.getPlayableData()._setEr=
rorMessage(Gq.getErrorMessage());}=0A=
else{var Hq=3DFq.getAssociatedResourceBundleType();var =
Iq=3DGq.getMetaResource(Hq);if(Iq.isError()){Fq.getPlayableData()._setErr=
orMessage(Iq.getErrorMessage());}=0A=
else{Fq.getPlayableData()._setRawData(Iq.getDataObject());}}};xmp.basepla=
yer.listeners.internal.NonAdLoaderNodeListener=3Dfunction(Jq){xmp.basepla=
yer.listeners.internal.NonAdLoaderNodeListener.ctor.call(this,'NonAdLoade=
r',Jq);};xmp.DERIVE_CLASS(xmp.baseplayer.listeners.internal.AdResNodeList=
ener,xmp.baseplayer.listeners.internal.NonAdLoaderNodeListener);xmp.creat=
eNamespace("xmp.baseplayer.listeners.internal");xmp.baseplayer.listeners.=
internal.FirstFrameNodeListener=3Dfunction(Kq){this._logger=3Dnew =
xmp.util.internals.CategoryLogger('FirstFrameNodeListener');this._FIRST_F=
RAME_TIMEOUT_MIN=3D10000;this._firstFrameTimer=3Dnull;this._FIRST_FRAME_T=
IMER_ID=3D"FIRST_FRAME_TIMER";this._currentNode=3Dnull;xmp.baseplayer.lis=
teners.internal.FirstFrameNodeListener.ctor.call(this,'FirstFrameCheck',K=
q);};xmp.DERIVE_CLASS(xmp.baseplayer.listeners.AbstractNodeListener,xmp.b=
aseplayer.listeners.internal.FirstFrameNodeListener);xmp.baseplayer.liste=
ners.internal.FirstFrameNodeListener.prototype.handleConnecting=3Dfunctio=
n(Lq){if(Lq.getMimeType()!=3D=3Dxmp.FLASH_MIME_TYPE){return;}=0A=
if(this._firstFrameTimer){this._firstFrameTimer.stop();}=0A=
var Mq=3Dnew =
xmp.util.Callback('basePlayerTimeout',this._handleFirstFrameTimeout,this)=
;var =
Nq=3Dxmp.util.SettingsManager.getInstance().getGlobalContextNode();var =
Oq=3DNq.getInt('first frame =
timeout',this._FIRST_FRAME_TIMEOUT_MIN);this._firstFrameTimer=3Dnew =
xmp.util.Timer(this._FIRST_FRAME_TIMER_ID,Oq,1,Mq);this._currentNode=3DLq=
;this._startTimer(this._firstFrameTimer);};xmp.baseplayer.listeners.inter=
nal.FirstFrameNodeListener.prototype.handleFirstFrameRendered=3Dfunction(=
Pq){this._reset();};xmp.baseplayer.listeners.internal.FirstFrameNodeListe=
ner.prototype.handlePause=3Dfunction(Qq){this._reset();};xmp.baseplayer.l=
isteners.internal.FirstFrameNodeListener.prototype.handleStop=3Dfunction(=
Rq){this._reset();};xmp.baseplayer.listeners.internal.FirstFrameNodeListe=
ner.prototype.handleRewind=3Dfunction(Sq){this._reset();};xmp.baseplayer.=
listeners.internal.FirstFrameNodeListener.prototype.handleFastForward=3Df=
unction(Tq){this._reset();};xmp.baseplayer.listeners.internal.FirstFrameN=
odeListener.prototype.handleSeekable=3Dfunction(Uq){this._reset();};xmp.b=
aseplayer.listeners.internal.FirstFrameNodeListener.prototype.handleError=
=3Dfunction(Vq,e){this._reset();};xmp.baseplayer.listeners.internal.First=
FrameNodeListener.prototype._reset=3Dfunction(){this._currentNode=3Dnull;=
this._stopTimer(this._firstFrameTimer);this._firstFrameTimer=3Dnull;};xmp=
.baseplayer.listeners.internal.FirstFrameNodeListener.prototype._handleFi=
rstFrameTimeout=3Dfunction(){var =
Wq=3Dxmp.CriticalException.createCriticalException(xmp.XmpErrorCodes.CRIT=
ICAL_FIRST_FRAME_TIMEOUT,'FirstFrameNodeListener',"Timeout received in =
playing "+this._currentNode.getBestId());this._logger.critical('First =
Frame =
Timeout',Wq);this.getPlayer().getMediaPlayer().close();this.getPlayer().o=
nError(this._currentNode,Wq);this._reset();};xmp.baseplayer.listeners.int=
ernal.FirstFrameNodeListener.prototype._startTimer=3Dfunction(Xq){if(Xq){=
Xq.start();}};xmp.baseplayer.listeners.internal.FirstFrameNodeListener.pr=
ototype._stopTimer=3Dfunction(Yq){if(Yq){Yq.stop();}};xmp.createNamespace=
("xmp.baseplayer.listeners.internal");xmp.baseplayer.listeners.internal.M=
eteringNodeListener=3Dfunction(Zq){this._constants=3Dxmp.baseplayer.liste=
ners.internal.MeteringNodeListener;xmp.baseplayer.listeners.internal.Mete=
ringNodeListener.ctor.call(this,this._constants.METERING_NODE_LISTENER,Zq=
);};xmp.DERIVE_CLASS(xmp.baseplayer.listeners.internal.TriggerNodeListene=
r,xmp.baseplayer.listeners.internal.MeteringNodeListener);xmp.baseplayer.=
listeners.internal.MeteringNodeListener.METERING_NODE_LISTENER=3D"Meterin=
g";xmp.createNamespace("xmp.baseplayer.listeners.internal");xmp.baseplaye=
r.listeners.internal.PromoLoaderNodeListener=3Dfunction($q){xmp.baseplaye=
r.listeners.internal.PromoLoaderNodeListener.ctor.call(this,'PromoLoader'=
,$q);};xmp.DERIVE_CLASS(xmp.baseplayer.listeners.AbstractNodeListener,xmp=
.baseplayer.listeners.internal.PromoLoaderNodeListener);xmp.baseplayer.li=
steners.internal.PromoLoaderNodeListener.prototype.canCompleteNow=3Dfunct=
ion(ar){if(ar.getPlayableData().isError()){return true;}=0A=
return =
ar.getPlayableData().isLoaded();};xmp.baseplayer.listeners.internal.Promo=
LoaderNodeListener.prototype.handleCompleteAsynch=3Dfunction(br,cr){var =
dr=3Dxmp.baseplayer.MetaFileLoaderFactory.getInstance().create('videoProm=
oMeta');var er=3Dnew =
xmp.util.Callback('gotPromoCallback',this._gotPromoCallback,this);er.setM=
etadata('RelayCallback',cr);dr.setNode(br,er);dr.load();};xmp.baseplayer.=
listeners.internal.PromoLoaderNodeListener.prototype._gotPromoCallback=3D=
function(fr,gr){var =
hr=3Dfr.getMetadata('RelayCallback',{});hr.call(gr);};xmp.createNamespace=
("xmp.baseplayer.listeners.internal");xmp.baseplayer.listeners.internal.T=
rackingNodeListener=3Dfunction(ir){this._constants=3Dxmp.baseplayer.liste=
ners.internal.TrackingNodeListener;xmp.baseplayer.listeners.internal.Trac=
kingNodeListener.ctor.call(this,this._constants.TRACKING_NODE_LISTENER,ir=
);};xmp.DERIVE_CLASS(xmp.baseplayer.listeners.internal.TriggerNodeListene=
r,xmp.baseplayer.listeners.internal.TrackingNodeListener);xmp.baseplayer.=
listeners.internal.TrackingNodeListener.TRACKING_NODE_LISTENER=3D"Trackin=
g";xmp.internal_settings_pref_api=3D{type:"system",map:[],nodes:[{name:"P=
layerContexts",map:[],nodes:[{name:"Generic",map:[],nodes:[{name:"BasePla=
yer",map:[{key:"user can control ad",value:"true"},{key:"look ahead and =
behind count",value:"7"},{key:"bandwidth =
threshold",value:"500"},{key:"videoAdMetaLoader",value:"videoAdMeta"},{ke=
y:"Ad metering image URL",value:"NO_DEFAULT_VALUE"},{key:"rule classes =
relative URL",value:"NO_DEFAULT_VALUE"},{key:"rule classes =
namespace",value:"NO_DEFAULT_VALUE"}],nodes:[{name:"ad =
patterns",map:[],nodes:[]},{name:"PlayerSizes",map:[],nodes:[]}]},{name:"=
invariantRules",map:[],nodes:[]},{name:"Additional =
segvars",map:[],nodes:[]},{name:"pattern =
parameters",map:[],nodes:[]},{name:"ad data =
types",map:[{key:"primary",value:"videoJson"},{key:"synch_unit",value:"ur=
l"}],nodes:[]},{name:"UrlStrategies",map:[],nodes:[{name:"Octoshape",map:=
[{key:"octo poll interval",value:"2000"},{key:"octo try =
limit",value:"8"},{key:"octo can use fn",value:"return =
((xmp.getQueryArgOpt(\"xmpUseOctoshape\", \"true\") =3D=3D=3D \"true\") =
&& ((xmp.isWindowsOS() && (xmp.isIEBrowser() || xmp.isFirefoxBrowser())) =
|| (xmp.isMacOSX() && (xmp.isSafariBrowser() || =
xmp.isFirefoxBrowser()))));"}],nodes:[{name:"url =
mapping",map:[],nodes:[]}]}]}]},{name:"Global",map:[{key:"first frame =
timeout",value:"10000"}],nodes:[{name:"rootUrlMap",map:[],nodes:[{name:"v=
ideoContentMeta",map:[{key:"rootUrl",value:"NO_DEFAULT_VALUE"},{key:"tran=
sportType",value:"flash"}],nodes:[]},{name:"videoTracking",map:[{key:"roo=
tUrl",value:"NO_DEFAULT_VALUE"},{key:"transportType",value:"flash"}],node=
s:[]},{name:"videoPromoMeta",map:[{key:"rootUrl",value:"NO_DEFAULT_VALUE"=
},{key:"transportType",value:"flash"}],nodes:[]},{name:"adPolicy",map:[{k=
ey:"rootUrl",value:"NO_DEFAULT_VALUE"},{key:"transportType",value:"flash"=
}],nodes:[]},{name:"ruleClasses",map:[{key:"rootUrl",value:"NO_DEFAULT_VA=
LUE"},{key:"transportType",value:"flash"}],nodes:[]},{name:"adMan",map:[{=
key:"rootUrl",value:"NO_DEFAULT_VALUE"},{key:"transportType",value:"flash=
"}],nodes:[]},{name:"dhtmlObject",map:[{key:"rootUrl",value:"NO_DEFAULT_V=
ALUE"},{key:"transportType",value:"flash"}],nodes:[]},{name:"errorDhtmlOb=
ject",map:[{key:"rootUrl",value:"NO_DEFAULT_VALUE"},{key:"transportType",=
value:"xhr"}],nodes:[]},{name:"controlStreamResource",map:[{key:"rootUrl"=
,value:"NO_DEFAULT_VALUE"},{key:"transportType",value:"flash"}],nodes:[]}=
,{name:"internalUserCheckResource",map:[{key:"rootUrl",value:"NO_DEFAULT_=
VALUE"}],nodes:[]},{name:"video",map:[],nodes:[{name:"Flash",map:[],nodes=
:[{name:"ad",map:[{key:"rootUrl",value:"NO_DEFAULT_VALUE"}],nodes:[]},{na=
me:"vod",map:[{key:"rootUrl",value:"NO_DEFAULT_VALUE"}],nodes:[]}]},{name=
:"WindowsMedia",map:[],nodes:[{name:"ad",map:[{key:"rootUrl",value:"NO_DE=
FAULT_VALUE"}],nodes:[]},{name:"vod",map:[{key:"rootUrl",value:"NO_DEFAUL=
T_VALUE"}],nodes:[]},{name:"live",map:[{key:"rootUrl",value:"NO_DEFAULT_V=
ALUE"}],nodes:[]},{name:"control",map:[{key:"rootUrl",value:"NO_DEFAULT_V=
ALUE"}],nodes:[]}]},{name:"QuickTime",map:[],nodes:[{name:"vod",map:[{key=
:"rootUrl",value:"NO_DEFAULT_VALUE"}],nodes:[]}]}]},{name:"image",map:[{k=
ey:"rootUrl",value:"NO_DEFAULT_VALUE"},{key:"transportType",value:"flash"=
}],nodes:[]},{name:"adVideo",map:[{key:"rootUrl",value:"NO_DEFAULT_VALUE"=
},{key:"transportType",value:"flash"}],nodes:[]},{name:"swf",map:[{key:"r=
ootUrl",value:"NO_DEFAULT_VALUE"},{key:"transportType",value:"flash"}],no=
des:[]},{name:"adServer",map:[{key:"rootUrl",value:"NO_DEFAULT_VALUE"},{k=
ey:"transportType",value:"flash"}],nodes:[]},{name:"adCompositor",map:[{k=
ey:"rootUrl",value:"NO_DEFAULT_VALUE"},{key:"transportType",value:"flash"=
},{key:"requestVerb",value:"POST"}],nodes:[]}]},{name:"loaders",map:[],no=
des:[{name:"videoContentMeta",map:[{key:"JSClass",value:"xmp.baseplayer.i=
nternals.VideoContentMetaFileLoader"}],nodes:[]},{name:"videoPromoMeta",m=
ap:[{key:"JSClass",value:"xmp.baseplayer.internals.VideoPromoMetaFileLoad=
er"}],nodes:[]},{name:"videoAdMeta",map:[{key:"JSClass",value:"xmp.basepl=
ayer.internals.VideoAdMetaFileLoader"}],nodes:[]},{name:"videoCompositeAd=
Meta",map:[{key:"JSClass",value:"xmp.baseplayer.internals.VideoCompositeA=
dMetaFileLoader2"}],nodes:[]},{name:"dhtmlObject",map:[{key:"JSClass",val=
ue:"xmp.baseplayer.internals.DhtmlObjectMetaFileLoader"}],nodes:[]},{name=
:"errorDhtmlObject",map:[{key:"JSClass",value:"xmp.baseplayer.internals.E=
rrorDhtmlObjectMetaFileLoader"}],nodes:[]}]},{name:"Media =
Player",map:[{key:"Bandwidth Sample =
Interval",value:"5000"},{key:"Fullscreen =
Enabled",value:"true"},{key:"Stretch To =
Fit",value:"true"}],nodes:[]},{name:"PlayingPolicy",map:[],nodes:[{name:"=
Streaming =
Modes",map:[{key:"001",value:"live"},{key:"002",value:"control"},{key:"00=
3",value:"ad"},{key:"004",value:"vod"}],nodes:[]},{name:"PlugIns",map:[],=
nodes:[{name:"Flash",map:[{key:"display-name",value:"Flash =
PlugIn/ActiveX =
Player"},{key:"minimum-version",value:"8.0.0"},{key:"download-url",value:=
"http://www.adobe.com/go/getflashplayer"}],nodes:[]},{name:"WindowsMedia"=
,map:[{key:"display-name",value:"Windows Media =
Player"},{key:"minimum-version",value:"9.0.0"},{key:"download-url",value:=
"http://www.microsoft.com/windows/windowsmedia/download"}],nodes:[]},{nam=
e:"TurnerMedia",map:[{key:"display-name",value:"Turner Media =
Plugin"},{key:"minimum-version",value:"1.0.0.9"},{key:"download-url",valu=
e:"http://www.cnn.com/download"}],nodes:[]},{name:"QuickTime",map:[{key:"=
display-name",value:"QuickTime =
Plugin"},{key:"minimum-version",value:"7.1.2"},{key:"download-url",value:=
"http://www.apple.com/quicktime/download"}],nodes:[]},{name:"Flip4Mac",ma=
p:[{key:"display-name",value:"Flip4Mac =
Plugin"},{key:"minimum-version",value:"2.1"},{key:"maximum-version",value=
:"2.1"},{key:"download-url",value:"http://www.flip4mac.com/downloads/wmv_=
components/Flip4Mac%20WMV%202.1.3.10.dmg"}],nodes:[]},{name:"Octoshape",m=
ap:[{key:"display-name",value:"Octoshape =
Plugin"},{key:"minimum-version",value:"please-get-latest-release-version"=
},{key:"download-url",value:"http://www.octoshape.com/plugin/get.asp"}],n=
odes:[]}]},{name:"Native =
Players",map:[],nodes:[{name:"xmp.FlashPlayer",map:[{key:"Buffer =
Time",value:"4000"},{key:"Streaming Video =
Adapter",value:"StreamingVideoMedia"}],nodes:[]},{name:"xmp.WindowsMediaP=
layer",map:[],nodes:[]},{name:"xmp.WindowsMediaPlugInPlayer",map:[],nodes=
:[]},{name:"xmp.QuickTimePlayer",map:[{key:"State Change Polling =
Interval",value:"200"},{key:"Connection Timeout =
Interval",value:"30000"}],nodes:[]},{name:"xmp.ImagePlayer",map:[],nodes:=
[]}]},{name:"Native Player =
Groups",map:[],nodes:[{name:"WindowsIEPlayers",map:[],nodes:[{name:"001",=
map:[{key:"mime-type",value:"video/x-ms-wmv"}],nodes:[{name:"Players",map=
:[{key:"001",value:"xmp.WindowsMediaPlayer"}],nodes:[]}]},{name:"002",map=
:[{key:"mime-type",value:"video/x-flv"}],nodes:[{name:"Players",map:[{key=
:"001",value:"xmp.FlashPlayer"}],nodes:[]}]},{name:"003",map:[{key:"mime-=
type",value:"application/x-image"}],nodes:[{name:"Players",map:[{key:"001=
",value:"xmp.ImagePlayer"}],nodes:[]}]},{name:"004",map:[{key:"mime-type"=
,value:"video/quicktime"}],nodes:[{name:"Players",map:[{key:"001",value:"=
xmp.QuickTimePlayer"}],nodes:[]}]}]},{name:"WindowsMozillaPlayers",map:[]=
,nodes:[{name:"001",map:[{key:"mime-type",value:"video/x-ms-wmv"}],nodes:=
[{name:"Players",map:[{key:"001",value:"xmp.WindowsMediaPlugInPlayer"}],n=
odes:[]}]},{name:"002",map:[{key:"mime-type",value:"video/x-flv"}],nodes:=
[{name:"Players",map:[{key:"001",value:"xmp.FlashPlayer"}],nodes:[]}]},{n=
ame:"003",map:[{key:"mime-type",value:"application/x-image"}],nodes:[{nam=
e:"Players",map:[{key:"001",value:"xmp.ImagePlayer"}],nodes:[]}]},{name:"=
004",map:[{key:"mime-type",value:"video/quicktime"}],nodes:[{name:"Player=
s",map:[{key:"001",value:"xmp.QuickTimePlayer"}],nodes:[]}]}]},{name:"Mac=
Players",map:[],nodes:[{name:"001",map:[{key:"mime-type",value:"video/x-m=
s-wmv"}],nodes:[{name:"Players",map:[{key:"001",value:"xmp.QuickTimePlaye=
r"}],nodes:[]}]},{name:"002",map:[{key:"mime-type",value:"video/x-flv"}],=
nodes:[{name:"Players",map:[{key:"001",value:"xmp.FlashPlayer"}],nodes:[]=
}]},{name:"003",map:[{key:"mime-type",value:"application/x-image"}],nodes=
:[{name:"Players",map:[{key:"001",value:"xmp.ImagePlayer"}],nodes:[]}]},{=
name:"004",map:[{key:"mime-type",value:"video/quicktime"}],nodes:[{name:"=
Players",map:[{key:"001",value:"xmp.QuickTimePlayer"}],nodes:[]}]}]},{nam=
e:"LinuxPlayers",map:[],nodes:[{name:"002",map:[{key:"mime-type",value:"v=
ideo/x-flv"}],nodes:[{name:"Players",map:[{key:"001",value:"xmp.FlashPlay=
er"}],nodes:[]}]},{name:"003",map:[{key:"mime-type",value:"application/x-=
image"}],nodes:[{name:"Players",map:[{key:"001",value:"xmp.ImagePlayer"}]=
,nodes:[]}]}]}]},{name:"Supported =
Platforms",map:[],nodes:[{name:"Windows",map:[{key:"Explorer",value:"Wind=
owsIEPlayers"},{key:"Firefox",value:"WindowsMozillaPlayers"},{key:"Opera"=
,value:"WindowsMozillaPlayers"},{key:"Netscape",value:"WindowsMozillaPlay=
ers"},{key:"Safari",value:"WindowsMozillaPlayers"},{key:"SeaMonkey",value=
:"WindowsMozillaPlayers"}],nodes:[{name:"PlugIns =
Overrides",map:[],nodes:[{name:"QuickTime",map:[{key:"minimum-version",va=
lue:"7.1.5"}],nodes:[]}]}]},{name:"Mac",map:[{key:"Safari",value:"MacPlay=
ers"},{key:"Firefox",value:"MacPlayers"},{key:"Netscape",value:"MacPlayer=
s"},{key:"Camino",value:"MacPlayers"},{key:"SeaMonkey",value:"MacPlayers"=
},{key:"Opera",value:"MacPlayers"}],nodes:[{name:"PlugIns =
Overrides",map:[],nodes:[{name:"Octoshape",map:[{key:"download-url",value=
:"http://www.octoshape.com/plugin/mac.asp"}],nodes:[]}]}]},{name:"Linux",=
map:[{key:"Firefox",value:"LinuxPlayers"},{key:"Opera",value:"LinuxPlayer=
s"},{key:"Netscape",value:"LinuxPlayers"},{key:"SeaMonkey",value:"LinuxPl=
ayers"},{key:"Konqueror",value:"LinuxPlayers"}],nodes:[{name:"PlugIns =
Overrides",map:[],nodes:[{name:"Octoshape",map:[{key:"download-url",value=
:"http://www.octoshape.com/plugin/linux.asp"}],nodes:[]}]}]}]},{name:"Med=
iaTypes",map:[],nodes:[{name:"Flash",map:[{key:"mime-type",value:"video/x=
-flv"}],nodes:[]},{name:"WindowsMedia",map:[{key:"mime-type",value:"video=
/x-ms-wmv"}],nodes:[]},{name:"QuickTime",map:[{key:"mime-type",value:"vid=
eo/quicktime"}],nodes:[]},{name:"Image",map:[{key:"mime-type",value:"appl=
ication/x-image"}],nodes:[]}]},{name:"Playback Priority =
Groups",map:[],nodes:[{name:"DefaultVODPlayback",map:[{key:"001",value:"W=
indowsMedia"},{key:"002",value:"Flash"},{key:"003",value:"QuickTime"}],no=
des:[]},{name:"DefaultAdPlayback",map:[{key:"001",value:"Flash"},{key:"00=
2",value:"WindowsMedia"},{key:"003",value:"QuickTime"}],nodes:[]},{name:"=
DefaultLivePlayback",map:[{key:"001",value:"WindowsMedia"},{key:"002",val=
ue:"Flash"}],nodes:[]},{name:"DefaultControlPlayback",map:[{key:"001",val=
ue:"WindowsMedia"}],nodes:[]}]},{name:"Playback =
Platforms",map:[],nodes:[{name:"Windows",map:[],nodes:[{name:"Explorer",m=
ap:[{key:"ad",value:"DefaultAdPlayback"},{key:"vod",value:"DefaultVODPlay=
back"},{key:"live",value:"DefaultLivePlayback"},{key:"control",value:"Def=
aultControlPlayback"}],nodes:[]},{name:"Firefox",map:[{key:"ad",value:"De=
faultAdPlayback"},{key:"vod",value:"DefaultVODPlayback"},{key:"live",valu=
e:"DefaultLivePlayback"},{key:"control",value:"DefaultControlPlayback"}],=
nodes:[]},{name:"Opera",map:[{key:"ad",value:"DefaultAdPlayback"},{key:"v=
od",value:"DefaultVODPlayback"},{key:"live",value:"DefaultLivePlayback"},=
{key:"control",value:"DefaultControlPlayback"}],nodes:[]},{name:"Netscape=
",map:[{key:"ad",value:"DefaultAdPlayback"},{key:"vod",value:"DefaultVODP=
layback"},{key:"live",value:"DefaultLivePlayback"},{key:"control",value:"=
DefaultControlPlayback"}],nodes:[]},{name:"Safari",map:[{key:"ad",value:"=
DefaultAdPlayback"},{key:"vod",value:"DefaultVODPlayback"},{key:"live",va=
lue:"DefaultLivePlayback"},{key:"control",value:"DefaultControlPlayback"}=
],nodes:[]},{name:"SeaMonkey",map:[{key:"ad",value:"DefaultAdPlayback"},{=
key:"vod",value:"DefaultVODPlayback"},{key:"live",value:"DefaultLivePlayb=
ack"},{key:"control",value:"DefaultControlPlayback"}],nodes:[]}]},{name:"=
Mac",map:[],nodes:[{name:"Safari",map:[{key:"ad",value:"DefaultAdPlayback=
"},{key:"vod",value:"DefaultVODPlayback"},{key:"live",value:"DefaultLiveP=
layback"},{key:"control",value:"DefaultControlPlayback"}],nodes:[]},{name=
:"Opera",map:[{key:"ad",value:"DefaultAdPlayback"},{key:"vod",value:"Defa=
ultVODPlayback"},{key:"live",value:"DefaultLivePlayback"},{key:"control",=
value:"DefaultControlPlayback"}],nodes:[]},{name:"Firefox",map:[{key:"ad"=
,value:"DefaultAdPlayback"},{key:"vod",value:"DefaultVODPlayback"},{key:"=
live",value:"DefaultLivePlayback"},{key:"control",value:"DefaultControlPl=
ayback"}],nodes:[]},{name:"Netscape",map:[{key:"ad",value:"DefaultAdPlayb=
ack"},{key:"vod",value:"DefaultVODPlayback"},{key:"live",value:"DefaultLi=
vePlayback"},{key:"control",value:"DefaultControlPlayback"}],nodes:[]},{n=
ame:"Camino",map:[{key:"ad",value:"DefaultAdPlayback"},{key:"vod",value:"=
DefaultVODPlayback"},{key:"live",value:"DefaultLivePlayback"},{key:"contr=
ol",value:"DefaultControlPlayback"}],nodes:[]},{name:"SeaMonkey",map:[{ke=
y:"ad",value:"DefaultAdPlayback"},{key:"vod",value:"DefaultVODPlayback"},=
{key:"live",value:"DefaultLivePlayback"},{key:"control",value:"DefaultCon=
trolPlayback"}],nodes:[]}]},{name:"Linux",map:[],nodes:[{name:"Opera",map=
:[{key:"ad",value:"DefaultAdPlayback"},{key:"vod",value:"DefaultVODPlayba=
ck"},{key:"live",value:"DefaultLivePlayback"},{key:"control",value:"Defau=
ltControlPlayback"}],nodes:[]},{name:"Firefox",map:[{key:"ad",value:"Defa=
ultAdPlayback"},{key:"vod",value:"DefaultVODPlayback"},{key:"live",value:=
"DefaultLivePlayback"},{key:"control",value:"DefaultControlPlayback"}],no=
des:[]},{name:"Netscape",map:[{key:"ad",value:"DefaultAdPlayback"},{key:"=
vod",value:"DefaultVODPlayback"},{key:"live",value:"DefaultLivePlayback"}=
,{key:"control",value:"DefaultControlPlayback"}],nodes:[]},{name:"SeaMonk=
ey",map:[{key:"ad",value:"DefaultAdPlayback"},{key:"vod",value:"DefaultVO=
DPlayback"},{key:"live",value:"DefaultLivePlayback"},{key:"control",value=
:"DefaultControlPlayback"}],nodes:[]},{name:"Konqueror",map:[{key:"ad",va=
lue:"DefaultAdPlayback"},{key:"vod",value:"DefaultVODPlayback"},{key:"liv=
e",value:"DefaultLivePlayback"},{key:"control",value:"DefaultControlPlayb=
ack"}],nodes:[]}]}]}]}]}]}]};
------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/video/common/cnnplayer.js

var CNN_PLAYER =3D "CNN_PLAYER";=0A=
var findPlayer =3D xmp.baseplayer.BasePlayer.findPlayer;=0A=
var playerInstances =3D new Array();=0A=
var currentPlayer =3D '';=0A=
//var g_logListener;=0A=
=0A=
/* ********************=0A=
   Begin Adobe Client Side Flash Detection Script=0A=
   ********************=0A=
 */=0A=
 =0A=
// Flash Player Version Detection - Rev 1.6=0A=
// Detect Client Browser type=0A=
// Copyright(c) 2005-2006 Adobe Macromedia Software, LLC. All rights =
reserved.=0A=
=0A=
var isIE  =3D (navigator.appVersion.indexOf("MSIE") !=3D -1) ? true : =
false;=0A=
var isWin =3D (navigator.appVersion.toLowerCase().indexOf("win") !=3D =
-1) ? true : false;=0A=
var isOpera =3D (navigator.userAgent.indexOf("Opera") !=3D -1) ? true : =
false;=0A=
=0A=
function ControlVersion()=0A=
{=0A=
	var version;=0A=
	var axo;=0A=
	var e;=0A=
=0A=
	// NOTE : new ActiveXObject(strFoo) throws an exception if strFoo isn't =
in the registry=0A=
=0A=
	try {=0A=
		// version will be set for 7.X or greater players=0A=
		axo =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");=0A=
		version =3D axo.GetVariable("$version");=0A=
	} catch (e) {=0A=
	}=0A=
=0A=
	if (!version)=0A=
	{=0A=
		try {=0A=
			// version will be set for 6.X players only=0A=
			axo =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");=0A=
			=0A=
			// installed player is some revision of 6.0=0A=
			// GetVariable("$version") crashes for versions 6.0.22 through 6.0.29,=0A=
			// so we have to be careful. =0A=
			=0A=
			// default to the first public version=0A=
			version =3D "WIN 6,0,21,0";=0A=
=0A=
			// throws if AllowScripAccess does not exist (introduced in 6.0r47)		=0A=
			axo.AllowScriptAccess =3D "always";=0A=
=0A=
			// safe to call for 6.0r47 or greater=0A=
			version =3D axo.GetVariable("$version");=0A=
=0A=
		} catch (e) {=0A=
		}=0A=
	}=0A=
=0A=
	if (!version)=0A=
	{=0A=
		try {=0A=
			// version will be set for 4.X or 5.X player=0A=
			axo =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");=0A=
			version =3D axo.GetVariable("$version");=0A=
		} catch (e) {=0A=
		}=0A=
	}=0A=
=0A=
	if (!version)=0A=
	{=0A=
		try {=0A=
			// version will be set for 3.X player=0A=
			axo =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");=0A=
			version =3D "WIN 3,0,18,0";=0A=
		} catch (e) {=0A=
		}=0A=
	}=0A=
=0A=
	if (!version)=0A=
	{=0A=
		try {=0A=
			// version will be set for 2.X player=0A=
			axo =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash");=0A=
			version =3D "WIN 2,0,0,11";=0A=
		} catch (e) {=0A=
			version =3D -1;=0A=
		}=0A=
	}=0A=
	=0A=
	return version;=0A=
}=0A=
=0A=
// JavaScript helper required to detect Flash Player PlugIn version =
information=0A=
function GetSwfVer(){=0A=
	// NS/Opera version >=3D 3 check for Flash plugin in plugin array=0A=
	var flashVer =3D -1;=0A=
	if (navigator.plugins !=3D null && navigator.plugins.length > 0) {=0A=
		if (navigator.plugins["Shockwave Flash 2.0"] || =
navigator.plugins["Shockwave Flash"]) {=0A=
			var swVer2 =3D navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";=0A=
			var flashDescription =3D navigator.plugins["Shockwave Flash" + =
swVer2].description;=0A=
			var descArray =3D flashDescription.split(" ");=0A=
			var tempArrayMajor =3D descArray[2].split(".");			=0A=
			var versionMajor =3D tempArrayMajor[0];=0A=
			var versionMinor =3D tempArrayMajor[1];=0A=
			var versionRevision =3D descArray[3];=0A=
			if (versionRevision =3D=3D "") {=0A=
				versionRevision =3D descArray[4];=0A=
			}=0A=
			if (versionRevision[0] =3D=3D "d") {=0A=
				versionRevision =3D versionRevision.substring(1);=0A=
			} else if (versionRevision[0] =3D=3D "r") {=0A=
				versionRevision =3D versionRevision.substring(1);=0A=
				if (versionRevision.indexOf("d") > 0) {=0A=
					versionRevision =3D versionRevision.substring(0, =
versionRevision.indexOf("d"));=0A=
				}=0A=
			}=0A=
			var flashVer =3D versionMajor + "." + versionMinor + "." + =
versionRevision;=0A=
		}=0A=
	}=0A=
	// MSN/WebTV 2.6 supports Flash 4=0A=
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") !=3D =
-1) flashVer =3D 4;=0A=
	// WebTV 2.5 supports Flash 3=0A=
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") !=3D =
-1) flashVer =3D 3;=0A=
	// older WebTV supports Flash 2=0A=
	else if (navigator.userAgent.toLowerCase().indexOf("webtv") !=3D -1) =
flashVer =3D 2;=0A=
	else if ( isIE && isWin && !isOpera ) {=0A=
		flashVer =3D ControlVersion();=0A=
	}	=0A=
	return flashVer;=0A=
}=0A=
=0A=
// When called with reqMajorVer, reqMinorVer, reqRevision returns true =
if that version or greater is available=0A=
function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision)=0A=
{=0A=
	versionStr =3D GetSwfVer();=0A=
	if (versionStr =3D=3D -1 ) {=0A=
		return false;=0A=
	} else if (versionStr !=3D 0) {=0A=
		if(isIE && isWin && !isOpera) {=0A=
			// Given "WIN 2,0,0,11"=0A=
			tempArray         =3D versionStr.split(" "); 	// ["WIN", "2,0,0,11"]=0A=
			tempString        =3D tempArray[1];			// "2,0,0,11"=0A=
			versionArray      =3D tempString.split(",");	// ['2', '0', '0', '11']=0A=
		} else {=0A=
			versionArray      =3D versionStr.split(".");=0A=
		}=0A=
		var versionMajor      =3D versionArray[0];=0A=
		var versionMinor      =3D versionArray[1];=0A=
		var versionRevision   =3D versionArray[2];=0A=
=0A=
        	// is the major.revision >=3D requested major.revision AND the =
minor version >=3D requested minor=0A=
		if (versionMajor > parseFloat(reqMajorVer)) {=0A=
			return true;=0A=
		} else if (versionMajor =3D=3D parseFloat(reqMajorVer)) {=0A=
			if (versionMinor > parseFloat(reqMinorVer))=0A=
				return true;=0A=
			else if (versionMinor =3D=3D parseFloat(reqMinorVer)) {=0A=
				if (versionRevision >=3D parseFloat(reqRevision))=0A=
					return true;=0A=
			}=0A=
		}=0A=
		return false;=0A=
	}=0A=
}=0A=
=0A=
/* ********************=0A=
   End Adobe Client Side Flash Detection Script=0A=
   ********************=0A=
 */=0A=
=0A=
var fullScreenBubbleCheck =3D null;=0A=
var bubbleHide =3D false;=0A=
=0A=
function displayFullScreenBubble() {=0A=
	if (fullScreenBubbleCheck =3D=3D null) {=0A=
		fullScreenBubbleCheck =3D DetectFlashVer(9,0,115);=0A=
	}=0A=
	if (fullScreenBubbleCheck) { // we have at least flash version 9,0,115=0A=
		$('fullScreenDoubleClick').style.display =3D 'block';=0A=
	} else {=0A=
		if (bubbleHide)=0A=
			bubbleHide =3D false;=0A=
		else=0A=
			$('fullScreenUpgrade').style.display =3D 'block';=0A=
	}=0A=
}=0A=
=0A=
function hideFullScreenBubble() {=0A=
	if (fullScreenBubbleCheck =3D=3D null) return;=0A=
	if (fullScreenBubbleCheck) {=0A=
		$('fullScreenDoubleClick').style.display =3D 'none';=0A=
	} else {=0A=
		bubbleHide =3D true;=0A=
		setTimeout("if (bubbleHide) { $('fullScreenUpgrade').style.display =3D =
'none'; bubbleHide =3D false; }",3000);=0A=
//		$('fullScreenUpgrade').style.display =3D 'none';=0A=
	}=0A=
}=0A=
=0A=
var fullButtonState =3D null;=0A=
=0A=
function callControllerMethod(p_method, p_arg) =0A=
{=0A=
	try {=0A=
		var returnVal;=0A=
		if (CNNPlaylistManager.getInstance().activePlaylist =3D=3D =
'saplaylist') {=0A=
			returnVal =3D =
CNNPlaylistManager.getInstance().SAConfiguration.controlsHandler(p_method=
, p_arg);=0A=
		} else {=0A=
			var controller =3D (navigator.appName.indexOf("Microsoft") !=3D -1) ? =
window["mediacontrols"] : document["mediacontrols"];=0A=
			returnVal =3D controller[p_method](p_arg);=0A=
		}=0A=
		=0A=
			if ((CNNPlaylistManager.getInstance().playlistType =3D=3D 'mos' || =
CNNPlaylistManager.getInstance().playlistType =3D=3D 'bvp') =0A=
					&& p_method =3D=3D 'togglePlay') {=0A=
				if (p_arg && p_arg !=3D fullButtonState) {=0A=
					$('fullScreenContainer').innerHTML =3D '<img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/video/controls/fullsc=
reenActiveOff.gif">';=0A=
					$('fullScreenContainer').style.cursor =3D 'pointer';=0A=
					$('fullScreenContainer').onmouseover =3D function() { =
displayFullScreenBubble(); };=0A=
					$('fullScreenContainer').onmouseout =3D function() { =
hideFullScreenBubble(); };=0A=
					fullButtonState =3D p_arg;=0A=
				} else if (!p_arg && p_arg !=3D fullButtonState) {=0A=
					$('fullScreenContainer').innerHTML =3D '<img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/video/controls/fullsc=
reenDisabled.gif">';=0A=
					$('fullScreenContainer').style.cursor =3D 'auto';=0A=
					$('fullScreenContainer').onmouseout =3D function() { };=0A=
					$('fullScreenContainer').onmouseover =3D function() { };=0A=
					$('fullScreenDoubleClick').style.display =3D 'none';=0A=
					$('fullScreenUpgrade').style.display =3D 'none';=0A=
					fullButtonState =3D p_arg;=0A=
				}=0A=
			}=0A=
				=0A=
=0A=
			if(typeof(returnVal) !=3D "undefined") return returnVal;=0A=
	} catch(err) {=0A=
		// catch error and ignore, usually caused by xmp loading before =
controller plugin=0A=
	}=0A=
=0A=
	if (CNNPlaylistManager.getInstance().controller !=3D null) {=0A=
		// we're using the DHTML control structure=0A=
		var cntl =3D CNNPlaylistManager.getInstance().controller;=0A=
		switch(p_method) {=0A=
			case 'setEmailEnabled':=0A=
				if (p_arg =3D=3D true)=0A=
					cntl.enableEmail();=0A=
				if (p_arg =3D=3D false)=0A=
					cntl.disableEmail();=0A=
				break;				=0A=
			case 'setVolume':=0A=
				cntl.scrubbers['volume'].scrubberPointer.setValue((p_arg/100));=0A=
				break;=0A=
		}=0A=
	}=0A=
=0A=
}=0A=
=0A=
function initAdServerCookies(docDomain)=0A=
{=0A=
	if (xmp.util.Cookie.canUse()) // can the user read/write cookie values?=0A=
	{=0A=
		var cnnAdCookieIsSet =3D xmp.util.Cookie.read('adDEon');=0A=
		if (!cnnAdCookieIsSet)=0A=
		{=0A=
			var imgSrc =3D 'http://gdyn.' + docDomain + '/1.1/1.gif';=0A=
			window.top.document.images['cookieCrumb'].src =3D imgSrc;=0A=
		}=0A=
	}		=0A=
}=0A=
=0A=
function CNNPlayer(options, parameters) {=0A=
	initAdServerCookies('cnn.com');=0A=
	var categoryFilterArray =3D [/*'AjaxRequestManager', =
'VideoContentMetaFileLoader'*/]; // allows filtering out of categories =
with too many messages.=0A=
	var parameters =3D [ ];=0A=
	CNNPlayer.ctor.call( this, CNN_PLAYER, options, parameters );	=0A=
}=0A=
=0A=
xmp.DERIVE_CLASS( xmp.baseplayer.BasePlayer, CNNPlayer );=0A=
=0A=
CNNPlayer.create =3D function() {=0A=
	xmp.util.LogConfigurator.configure();=0A=
=0A=
  var cnnIsIntl =3D (location.hostname.indexOf('edition.') > -1) ? true =
: false;=0A=
  var cnnIsIntlUS =3D (location.hostname.indexOf('us.') > -1) ? true : =
false;=0A=
=0A=
	var buildMap =3D {};=0A=
	if (cnnIsIntl) {=0A=
		xmp.baseplayer.BasePlayer.configure([cnnXmpPrimaryJsonObj, =
cnnIntlXmpPrimaryJsonObj], buildMap);=0A=
	} else if (cnnIsIntlUS){=0A=
		xmp.baseplayer.BasePlayer.configure([cnnXmpPrimaryJsonObj, =
cnnUSXmpPrimaryJsonObj], buildMap);=0A=
	}=0A=
		else {=0A=
		xmp.baseplayer.BasePlayer.configure([cnnXmpPrimaryJsonObj], buildMap);=0A=
	}=0A=
=0A=
	playerInstances[0] =3D new CNNPlayer({}, [ ]);=0A=
	playerInstances[0].bootStrap();=0A=
}=0A=
CNNPlayer.prototype.callEnded =3D function() {=0A=
	CNNPlaylistManager.endOfVideoContent();=0A=
}=0A=
CNNPlayer.getInstance =3D function(id, context) {=0A=
	if (playerInstances[0] =3D=3D null) {=0A=
	}=0A=
	return playerInstances[0];=0A=
}=0A=
CNNPlayer.setActivePlayer =3D function(str) { currentPlayer =3D str; }=0A=
CNNPlayer.getActivePlayer =3D function() {=0A=
	return playerInstances[0];=0A=
}=0A=
CNNPlayer.playlistContentItemCB =3D function() { }=0A=
CNNPlayer.secondsIntoMinutes =3D function(val) {=0A=
	minutes =3D Math.floor(val / 60);=0A=
	if (minutes > 0) seconds =3D val - (minutes * 60);=0A=
	else seconds =3D val;=0A=
	return (minutes + ':' + CNNPlayer.tenify(seconds));=0A=
}=0A=
CNNPlayer.tenify =3D function(val) {=0A=
	if (val - 0 < 10)=0A=
		return ("0"+val);=0A=
	return val;=0A=
}=0A=
=0A=
CNNPlayer.prototype.serializerFactory =3D null;=0A=
CNNPlayer.prototype.playlist =3D null;=0A=
CNNPlayer.prototype.isSmall =3D false;=0A=
CNNPlayer.prototype.isScrubbing =3D false;=0A=
CNNPlayer.prototype.pluginError =3D null;=0A=
CNNPlayer.prototype.pluginErrorWindow =3D null;=0A=
=0A=
CNNPlayer.prototype.handleLogMessage =3D function(level, category, =
message)=0A=
{=0A=
};=0A=
=0A=
CNNPlayer.prototype.handleBootstrapped =3D function(success) {=0A=
	CNNPlaylistManager.isBootStrapped(success);=0A=
}=0A=
=0A=
=0A=
CNNPlayer.prototype.replacePlaylist =3D function(currentJsonListArray, =
jsonListArray) {=0A=
	this.getMediaPlayer().stop();=0A=
	for (var i =3D 0; i < currentJsonListArray; i++) {=0A=
		this.removeFromPlayList(currentJsonListArray[i]);=0A=
	}=0A=
	// get current playlist=0A=
	// iterate through and remove=0A=
	// iterate through and add new playlist=0A=
	// write append callbacks=0A=
}=0A=
=0A=
=0A=
CNNPlayer.prototype.handleEvent =3D function(controllerEvent) {=0A=
	if (controllerEvent =3D=3D 'playPressed') { this.play(); }=0A=
	if (controllerEvent =3D=3D 'pausePressed') { this.pause(); }=0A=
	if (controllerEvent =3D=3D 'scrubStarted') { this.scrubStarted(); }=0A=
	if (controllerEvent =3D=3D 'scrubComplete') { this.scrubComplete(); }=0A=
	if (controllerEvent =3D=3D 'volumeChanged') { this.volumeChanged(); }=0A=
	if (controllerEvent =3D=3D 'sharePressed') { =
CNNPlaylistManager.getInstance().emailVideo(); }=0A=
}=0A=
CNNPlayer.prototype.volumeChanged =3D function() {=0A=
	this.getMediaPlayer().setVolume( callControllerMethod('getVolume') );=0A=
}=0A=
CNNPlayer.prototype.pause =3D function() {=0A=
	callControllerMethod('setScrubberEnabled',false);=0A=
	this.getMediaPlayer().pause();=0A=
	callControllerMethod('togglePlay',false);=0A=
}=0A=
CNNPlayer.prototype.play =3D function() {=0A=
	this.getMediaPlayer().play();=0A=
	callControllerMethod('setScrubberEnabled',true);=0A=
	callControllerMethod('togglePlay',true);=0A=
}=0A=
CNNPlayer.prototype.scrubStarted =3D function() {=0A=
	this.isScrubbing =3D true;=0A=
	callControllerMethod('togglePlay',false);=0A=
}=0A=
CNNPlayer.prototype.scrubComplete =3D function() {=0A=
	this.isScrubbing =3D false;=0A=
	toVal =3D callControllerMethod('getTime');=0A=
	this.getMediaPlayer().seek(toVal);=0A=
	callControllerMethod('togglePlay',true);=0A=
}=0A=
CNNPlayer.prototype.setPlaylist =3D function(idList,finalCallback) {=0A=
	this.serializerFactory =3D =
xmp.baseplayer.MetaFileLoaderFactory.getInstance().create('videoContentMe=
ta');=0A=
	this.playlist =3D this.serializerFactory.setIds(idList, (new =
xmp.util.Callback('contentItemCB', CNNPlayer.playlistContentItemCB, =
null)));	=0A=
	this.serializerFactory.setAllLoadedCallback(new =
xmp.util.Callback('allContentItemsCB', finalCallback, null));=0A=
	this.serializerFactory.load();=0A=
}=0A=
CNNPlayer.prototype.getPlaylist =3D function() {=0A=
	return this.playlist;=0A=
}=0A=
CNNPlayer.prototype.handleMediaPlayerReady =3D function() {=0A=
	var mediaPlayer =3D this.getMediaPlayer();=0A=
	callControllerMethod('setVolume',45);=0A=
	mediaPlayer.setVolume( 45 );=0A=
	mediaPlayer.setMute( false );=0A=
	mediaPlayer.setViewportConfig( xmp.FLASH_MIME_TYPE, xmp.DHTML_VIEWPORT =
);	=0A=
	mediaPlayer.setViewportConfig( xmp.WINDOWS_MEDIA_MIME_TYPE, =
xmp.DHTML_VIEWPORT );	=0A=
	mediaPlayer.setViewportConfig( xmp.IMAGE_MIME_TYPE, xmp.DHTML_VIEWPORT =
);	=0A=
	mediaPlayer.setViewportConfig( xmp.DHTML_MIME_TYPE, xmp.DHTML_VIEWPORT =
);	=0A=
};=0A=
=0A=
CNNPlayer.prototype.handleCreateViewport =3D function( type, name, =
parameters, settings ) {=0A=
	if ( type =3D=3D=3D xmp.FLASH_VIEWPORT ) {=0A=
		return this.createFlashViewport( type, name, parameters, settings );=0A=
	}=0A=
	else if ( type =3D=3D=3D xmp.DHTML_VIEWPORT ) {=0A=
		return this.createDHTMLViewport( type, name, parameters, settings );=0A=
	}=0A=
	return null;=0A=
};=0A=
=0A=
CNNPlayer.prototype.handleFatalException =3D function( err ) {=0A=
	CNNPlaylistManager.getInstance().errorObject =3D err;=0A=
};=0A=
=0A=
CNNPlayer.prototype.createFlashViewport =3D function( type, name, =
parameters, settings ) {=0A=
	var viewport =3D new SWFObject( xmp.makeSWFPath("TestFlashViewport", =
false), name, "574", "324", 8, "#FFFFFF" );=0A=
	for ( var i =3D 0; i < parameters.length; i++ ) {=0A=
		viewport.addParam( parameters[i].name, parameters[i].value );	=0A=
	}=0A=
	for ( i =3D 0; i < settings.length; i++ ) {=0A=
		viewport.addVariable( settings[i].name, settings[i].value );=0A=
	}=0A=
// removed per Chad and 113007 XMP release=0A=
//	viewport.addVariable( xmp.FLASH_NATIVE_PLAYER_COMPONENT, =
xmp.getSWFRoot() + "FlashMediaPlayer.swf" );=0A=
	if (CNNPlaylistManager.getInstance().activePlaylist !=3D 'saplaylist')=0A=
		viewport.write( document.getElementById("cnnVPFlashLargeContainer").id =
);	=0A=
	else=0A=
		viewport.write( =
document.getElementById(CNNPlaylistManager.getInstance().SAConfiguration.=
videoDivId).id );	=0A=
=0A=
	// =
-------------------------------------------------------------------------=
-----------------=0A=
	// Store reference to flash container to use later to set container =
flash content.=0A=
	flash_container =3D xmp.findDomElement(name);=0A=
	// =
-------------------------------------------------------------------------=
-----------------=0A=
=0A=
	flash_container.style.cssText =3D "position: absolute";=0A=
	return flash_container;=0A=
};=0A=
=0A=
CNNPlayer.prototype.createDHTMLViewport =3D function( type, name, =
parameters, settings )  {=0A=
	var viewport =3D document.createElement( "div" );=0A=
	viewport.setAttribute( xmp.ID_ATTRIBUTE, name );=0A=
	viewport.setAttribute( xmp.NAME_ATTRIBUTE, name );=0A=
// removed per Chad and 113007 XMP release=0A=
//	viewport.setAttribute( xmp.FLASH_NATIVE_PLAYER_COMPONENT, =
xmp.getSWFRoot() + "FlashMediaPlayer.swf" );	=0A=
	if (CNNPlaylistManager.getInstance().activePlaylist !=3D 'saplaylist')=0A=
		var sample_container =3D document.getElementById( =
"cnnVPFlashLargeContainer" );=0A=
	else=0A=
		var sample_container =3D document.getElementById( =
CNNPlaylistManager.getInstance().SAConfiguration.videoDivId );=0A=
	if (CNNPlaylistManager.getInstance().activePlaylist =3D=3D =
'mosplaylist' || CNNPlaylistManager.getInstance().activePlaylist =3D=3D =
'bvpplaylist') {=0A=
		if (this.isSmall) {=0A=
			viewport.style.width =3D '287px';=0A=
			viewport.style.height =3D '161px';=0A=
		} else {=0A=
			viewport.style.width  =3D "574px";=0A=
			viewport.style.height =3D "324px";	=0A=
		}=0A=
	} else if (CNNPlaylistManager.getInstance().activePlaylist =3D=3D =
'hottplaylist') {=0A=
		viewport.style.width  =3D "384px";=0A=
		viewport.style.height =3D "216px";	=0A=
	} else if (CNNPlaylistManager.getInstance().activePlaylist =3D=3D =
't1playlist') {=0A=
		viewport.style.width  =3D "256px";=0A=
		viewport.style.height =3D "144px";	=0A=
	} else if (CNNPlaylistManager.getInstance().activePlaylist =3D=3D =
'saplaylist') {=0A=
		viewport.style.width =3D =
CNNPlaylistManager.getInstance().SAConfiguration.slateSize[0]+"px";=0A=
		viewport.style.height =3D =
CNNPlaylistManager.getInstance().SAConfiguration.slateSize[1]+"px";=0A=
	}=0A=
=0A=
// removed per Chad and 113007 XMP release=0A=
//	viewport.style.position =3D xmp.ABSOLUTE_POSITION;=0A=
	viewport.style.backgroundColor =3D "#000000";	=0A=
										=0A=
	xmp.insertDomChildBefore(sample_container, viewport);=0A=
=0A=
	return viewport;=0A=
};=0A=
=0A=
=0A=
CNNPlayer.prototype.handleRegisterNodeListeners =3D function() {=0A=
	this._playerListener =3D new CNNPlayerListener('AllNodes', this);=0A=
=0A=
	var listeners =3D [ {object: this._playerListener, nodes: ["*"]},=0A=
		              {object: new AdNodeListener('Ad', this), nodes: =
["PreRoll", "PostRoll", "SponsoredAd", "HouseAd", "AdInsertNotForSale"]},=0A=
		              {object: new =
xmp.baseplayer.listeners.DefaultPromoNodeListener('Promo', this), nodes: =
["Promo"]},=0A=
									{object: new VideoNodeListener('Video', this), nodes: =
["Content"]},=0A=
		              {object: new NextUpSlateNodeListener('NextUpSlate', =
this), nodes: ["NextUpSlate"]},=0A=
		              {object: new StartSlateNodeListener('StartSlate', this), =
nodes: ["StartSlate"]},=0A=
		              {object: new EndSlateNodeListener('EndSlate', this), =
nodes: ["EndSlate"]},=0A=
		              {object: new ErrorSlateNodeListener('ErrorSlate', this), =
nodes: ["ErrorSlate"]}, =0A=
		              {object: new =
xmp.baseplayer.listeners.DefaultSlateNodeListener('Slate', this), nodes: =
["CustomSlate"]}=0A=
		              ];=0A=
		              =0A=
	for ( var i =3D 0; i < listeners.length; i++ )=0A=
	{=0A=
		this.registerNodeListener( listeners[i].object, listeners[i].nodes );	=0A=
	}						   =0A=
};=0A=
=0A=
=0A=
CNNPlayer.prototype.loadSynchUnit =3D function(node) {=0A=
	var resType =3D =
node.getPlayableData().getRuntimeMetadata('synch_unit_type', =
'synch_unit');=0A=
	var res =3D node.getMetaResource(resType);=0A=
	var synchUnitLogger =3D new xmp.util.internals.CategoryLogger( =
'loadSynchUnit' );=0A=
=0A=
	if (!res) { return; }=0A=
	if (res.isError())=0A=
	{=0A=
		return;=0A=
	}=0A=
	// data will be the full URL of the banner ad call to the ad server=0A=
	var data =3D res.getDataObject();=0A=
	var dataType =3D res.getDataType();=0A=
	var logData =3D (dataType =3D=3D=3D 'html') ? 'html' : data;=0A=
	if (res.getMetadata('played_' + resType, false))=0A=
	{=0A=
		return;=0A=
	}=0A=
	res.setMetadata('played_' + resType, true);=0A=
=0A=
  this._createBannerAd("banner_ad_iframe", data, dataType);=0A=
  this._playerListener.setStatus(node, xmp.SYNCH_UNIT);=0A=
};=0A=
=0A=
// original version from cnn_adspaces.js (cnnad_createAd) - need to have =
a method that does not set the tile ID, we have already built it into =
the url.=0A=
CNNPlayer.prototype._createBannerAd =3D function( adId, data, dataType )=0A=
{=0A=
		if (CNNPlaylistManager.getInstance().playlistType =3D=3D 'mos') {=0A=
		CNNPlaylistManager.getInstance().MOSCBannerAdWrite(data,adId);=0A=
	} else { =0A=
		var bannerDiv =3D document.getElementById("cnnVPAd");=0A=
		var innerHtml =3D '';=0A=
		if (dataType =3D=3D=3D 'url')=0A=
		{=0A=
			innerHtml =3D '<iframe hspace=3D"0" vspace=3D"0" marginHeight=3D"0" =
marginWidth=3D"0" src=3D"' + data + '&page.allowcompete=3Dyes&domId=3D' =
+ adId + '" border=3D"0" frameBorder=3D"0" height=3D"0" width=3D"0" =
scrolling=3D"no"  id=3D"'+adId+'" style=3D"position: absolute; =
visibility: hidden;" ></iframe>';=0A=
		}=0A=
		else=0A=
		{=0A=
			// If this is not working, make sure that 'params.styles=3Dfs' is =
removed from primary.xml under =0A=
			// 'Additional segvars' for your player context.=0A=
			innerHtml =3D data;=0A=
		}=0A=
		bannerDiv.innerHTML =3D innerHtml;=0A=
	}=0A=
};=0A=
=0A=
CNNPlayer.prototype._findNextContentNode =3D function( ) {	=0A=
	var lookAhead =3D this.getLookAheadNodeArray();	=0A=
	for ( var i =3D 0; i < lookAhead.length; i++ ) {=0A=
		var node =3D lookAhead[i];=0A=
		if ( node.isContentType() ) {=0A=
			return node;=0A=
		}=0A=
	}	=0A=
	return null;=0A=
};=0A=
CNNPlayer.prototype._findPreviousContentNode =3D function( ) {	=0A=
	var lookBehind =3D this.getLookBehindNodeArray();=0A=
	for ( var i =3D 0; i < lookBehind.length; i++ )=0A=
	{=0A=
		var node =3D lookBehind[i];=0A=
		if ( node.isContentType() ) {=0A=
			return node;=0A=
		}=0A=
	}=0A=
	return null;=0A=
};=0A=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/video/common/trigger_commands.js

xmp.createNamespace("CNN");=0A=
=0A=
/////////////////////////////////////////////////////////////////////////=
//////=0A=
/////////////////////////////////////////////////////////////////////////=
//////=0A=
=0A=
CNN.AbstractOmnitureTriggerCommand =3D function()=0A=
{=0A=
};=0A=
=0A=
// Static 'now' date on client machine=0A=
CNN.AbstractOmnitureTriggerCommand._clientStartMs =3D (new =
Date()).getTime();=0A=
=0A=
CNN.AbstractOmnitureTriggerCommand.prototype.doCommand =3D =
function(context)=0A=
{=0A=
	switch (context.getTriggerType())=0A=
	{=0A=
		case 'start': this._doStartCommand(context); break;=0A=
		case 'end': this._doEndCommand(context); break;=0A=
		default: break;=0A=
	}=0A=
};=0A=
=0A=
CNN.AbstractOmnitureTriggerCommand.prototype._doStartCommand =3D =
function(context)=0A=
{=0A=
	var s =3D this._createReportingObject(context);=0A=
	var vid =3D this._getVideoId(context);=0A=
	s.pageName =3D vid;=0A=
	s.eVar1 =3D vid;=0A=
	s.prop6 =3D vid;=0A=
	s.prop11 =3D vid;=0A=
	s.prop1 =3D "";=0A=
	s.prop4 =3D "video";=0A=
	s.prop5 =3D this._getPageType();=0A=
	s.eVar5 =3D this._getPageType();=0A=
	var ev =3D 'event5, event8';=0A=
	var subcategory =3D "";=0A=
	=
if(context.getPlayableNode().getPlayableData().getDataObject().subcategor=
y !=3D undefined){=0A=
		subcategory =3D =
context.getPlayableNode().getPlayableData().getDataObject().subcategory;=0A=
	}=0A=
	s.prop16 =3D subcategory;=0A=
=0A=
//	if (this._didAdPlayBefore(context))=0A=
//	{=0A=
//		ev +=3D ', event4';=0A=
//	}=0A=
=0A=
	/* TODO - currently NOT reporting the hour-with-15-minute-interval or =
the day-of-week.					=0A=
	var timeO =3D this._calcTimeStrings();=0A=
	s.prop9 =3D timeO.h15;=0A=
	s.prop11 =3D timeO.dow;=0A=
	*/=0A=
	s.events =3D ev;=0A=
	this._reportSpecificStartValues(context, s);=0A=
	this._postReportingObject(context, s, true, 'Start');=0A=
=0A=
	s.linkTrackVars=3D'None'; =0A=
	s.linkTrackEvents=3D'None';=0A=
	var isTurnerDomain =3D false;=0A=
	if(location.hostname.indexOf('turner.com')>0) { isTurnerDomain =3D =
true; }=0A=
	if(!isTurnerDomain) { // don't add tracking image to internal player=0A=
		var cnnScImgSrc =3D '';=0A=
  		var cnnScTitle =3D =
escape(context.getPlayableNode().getPlayableData().getDataObject().headli=
ne);=0A=
    		var cnnScRandom =3D Math.ceil(Math.random()*1000000000);=0A=
		cnnScImgSrc +=3D =
'http://secure-us.imrworldwide.com/cgi-bin/m?ci=3Dus-100120';=0A=
  		cnnScImgSrc +=3D '&tl=3Ddav0-' + cnnScTitle;=0A=
   		cnnScImgSrc +=3D '&c6=3Dvc,b01';=0A=
		cnnScImgSrc +=3D '&cc=3D1';=0A=
  		cnnScImgSrc +=3D '&rnd=3D' + cnnScRandom;=0A=
  		document.images['cookieCrumb'].src =3D cnnScImgSrc;=0A=
	}=0A=
};=0A=
=0A=
// CNN.AbstractOmnitureTriggerCommand.prototype._doMidCommand =3D =
function(context)=0A=
//{=0A=
//	var s =3D this._createReportingObject(context);=0A=
//	var vid =3D this._getVideoId(context);=0A=
//	s.linkTrackVars=3D'eVar20,eVar21,eVar22,events'; =0A=
//	s.linkTrackEvents=3D'event6'; =0A=
//	s.eVar20 =3D vid;=0A=
//	s.eVar21 =3D '';=0A=
//	s.eVar22 =3D '';=0A=
//	s[this._getVideoIdEvar()] =3D vid;=0A=
//	s.events =3D 'event6';=0A=
//	this._postReportingObject(context, s, false, 'Mid');=0A=
//};=0A=
=0A=
CNN.AbstractOmnitureTriggerCommand.prototype._doEndCommand =3D =
function(context)=0A=
{=0A=
	var s =3D this._createReportingObject(context);=0A=
	var vid =3D this._getVideoId(context);=0A=
	s.linkTrackVars=3D'eVar20,eVar21,eVar22,events'; =0A=
	s.linkTrackEvents=3D'event7';=0A=
	s.eVar20 =3D vid;=0A=
	s.eVar21 =3D '';=0A=
	s.eVar22 =3D '';=0A=
	s[this._getVideoIdEvar()] =3D vid;=0A=
	s.events =3D 'event7';=0A=
	this._postReportingObject(context, s, false, 'End');=0A=
	=0A=
	var isTurnerDomain =3D false;=0A=
	if(location.hostname.indexOf('turner.com')>0) { isTurnerDomain =3D =
true; }=0A=
	if(!isTurnerDomain) { // don't add tracking image to internal player=0A=
		var cnnScImgSrc =3D '';=0A=
		var cnnScTitle =3D =
escape(context.getPlayableNode().getPlayableData().getDataObject().headli=
ne);=0A=
		var cnnScRandom =3D Math.ceil(Math.random()*1000000000);=0A=
  		cnnScImgSrc +=3D =
'http://secure-us.imrworldwide.com/cgi-bin/m?ci=3Dus-100120';=0A=
  		cnnScImgSrc +=3D '&tl=3Ddav2-' + cnnScTitle;=0A=
   		cnnScImgSrc +=3D '&c6=3Dvc,b01';=0A=
 		cnnScImgSrc +=3D '&cc=3D1';=0A=
  		cnnScImgSrc +=3D '&rnd=3D' + cnnScRandom;=0A=
  		document.images['cookieCrumb'].src =3D cnnScImgSrc;=0A=
	}=0A=
=0A=
};=0A=
=0A=
CNN.AbstractOmnitureTriggerCommand.prototype._postReportingObject =3D =
function(context, s, hit, cType)=0A=
{=0A=
	this._dumpReportingObject(context, s);=0A=
	if (hit)=0A=
	{=0A=
		s.t();=0A=
	}=0A=
	else=0A=
	{=0A=
		s.tl(xmp.getGlobalNamespace(), 'o', this._getCustomTriggerPrefix() + =
cType);=0A=
	}=0A=
};=0A=
=0A=
CNN.AbstractOmnitureTriggerCommand.prototype._createReportingObject =3D =
function(context)=0A=
{=0A=
	var s =3D xmp.getGlobalNamespace().s_gi(this._getOmnitureAccount());=0A=
	var vid =3D this._getVideoId(context);=0A=
	s.eVar20 =3D vid;=0A=
	s[this._getVideoIdEvar()] =3D vid;=0A=
	return s;=0A=
};=0A=
=0A=
CNN.AbstractOmnitureTriggerCommand.prototype._dumpReportingObject =3D =
function(context, s)=0A=
{=0A=
	if (this._getLogger().isDebugEnabled())=0A=
	{=0A=
		var report =3D 'OMNITURE REPORT FOR ' + context.getTriggerType();=0A=
		var propDataArray =3D =
CNN.AbstractOmnitureTriggerCommand.dumpObjectValues(s);=0A=
		var filterPrefixes =3D ['vpm_','vl_'];=0A=
		for (var i=3D0; i<propDataArray.length; i++)=0A=
		{=0A=
			var pd =3D propDataArray[i];=0A=
			if (!(pd.t =3D=3D=3D 's' || pd.t =3D=3D=3D 'n' || pd.t =3D=3D=3D 'b'))=0A=
			{=0A=
				continue;=0A=
			}=0A=
			var filtered =3D false;=0A=
			for (var j=3D0; j<filterPrefixes.length; j++)=0A=
			{=0A=
				if (pd.n.indexOf(filterPrefixes[j]) =3D=3D=3D 0)=0A=
				{=0A=
					filtered =3D true;=0A=
					break;=0A=
				}=0A=
			}=0A=
			if (filtered)=0A=
			{=0A=
				continue;=0A=
			}=0A=
			report +=3D ('\n' + pd.n + ': ' + pd.v);=0A=
		}=0A=
		this._getLogger().debug(report);=0A=
	}=0A=
};=0A=
=0A=
/**=0A=
  * Static method=0A=
 */=0A=
CNN.AbstractOmnitureTriggerCommand.dumpObjectValues =3D =
function(theObject)=0A=
{=0A=
	if (!theObject)=0A=
	{=0A=
		return [];=0A=
	}=0A=
	var propArray =3D [];=0A=
	var propName =3D '';=0A=
	for (propName in theObject)=0A=
	{=0A=
		propArray.push(propName);	=0A=
	}=0A=
	propArray.sort();=0A=
	var dArray =3D [];=0A=
	for (var i=3D0; i<propArray.length; i++)=0A=
	{=0A=
		var pd =3D {t: '', n: propArray[i], v: ''}; // t =3D type, n =3D name, =
v =3D value=0A=
		var pv =3D theObject[pd.n];=0A=
		pd.t =3D (typeof(pv)).charAt(0);=0A=
		if (!(pd.t =3D=3D=3D 'o' || pd.t =3D=3D=3D 'f' || pd.t =3D=3D=3D 'u'))=0A=
		{=0A=
			pd.v =3D pv.toString();=0A=
		}=0A=
		dArray.push(pd);=0A=
	}=0A=
	return dArray;=0A=
};=0A=
=0A=
CNN.AbstractOmnitureTriggerCommand.prototype._getOmnitureAccount =3D =
function()=0A=
{=0A=
	return xmp.util.SettingsManager.getInstance().=0A=
		getContextNode().getString('omniture account', '');=0A=
};=0A=
=0A=
CNN.AbstractOmnitureTriggerCommand.prototype._getVideoId =3D =
function(context)=0A=
{=0A=
	var node =3D context.getPlayableNode();=0A=
	return node.getPlayableData().getDataObject().id;=0A=
};=0A=
=0A=
CNN.AbstractOmnitureTriggerCommand.prototype._reportSpecificStartValues =
=3D function(context, s)=0A=
{=0A=
	// default does nothing=0A=
};=0A=
=0A=
CNN.AbstractOmnitureTriggerCommand.prototype._getVideoIdEvar =3D =
function()=0A=
{=0A=
	throw new Error('must override');=0A=
};=0A=
=0A=
CNN.AbstractOmnitureTriggerCommand.prototype._getPageType =3D function()=0A=
{=0A=
	throw new Error('must override');=0A=
};=0A=
=0A=
CNN.AbstractOmnitureTriggerCommand.prototype._getLogger =3D function()=0A=
{=0A=
	throw new Error('must override');=0A=
};=0A=
=0A=
CNN.AbstractOmnitureTriggerCommand.prototype._getCustomTriggerPrefix =3D =
function()=0A=
{=0A=
	throw new Error('must override');=0A=
};=0A=
=0A=
//CNN.AbstractOmnitureTriggerCommand.prototype._didAdPlayBefore =3D =
function(context)=0A=
//{=0A=
//	var lba =3D this._getLookBehindNodeArray(context);=0A=
//	for (var i=3D0; i<lba.length; i++)=0A=
//	{=0A=
//		var node =3D lba[i];=0A=
//		if (node.getNodeTypeName() =3D=3D=3D 'Content')=0A=
//		{=0A=
//			return false;=0A=
//		}=0A=
		// NOTE: 'isAd' set by CNNRules.CannotHaveTwoSequentialAdsRule=0A=
//		if (node.getPlayableData().getRuntimeMetadata('isAd', false))=0A=
//		{=0A=
//			return true;=0A=
//		}=0A=
//	}=0A=
//	return false;=0A=
//};=0A=
=0A=
//CNN.AbstractOmnitureTriggerCommand.prototype._getLookBehindNodeArray =
=3D function(context)=0A=
//{=0A=
//	var listener =3D context.getMetadata('nodeListener', {});=0A=
//	return listener.getPlayer().getLookBehindNodeArray();=0A=
//};=0A=
=0A=
CNN.AbstractOmnitureTriggerCommand.prototype._calcTimeStrings =3D =
function()=0A=
{=0A=
	return =
this._calcTimeStringsGeneric(xmp.getGlobalNamespace().cnnCurHour, =0A=
		xmp.getGlobalNamespace().cnnCurMin, =0A=
		xmp.getGlobalNamespace().cnnCurDay);=0A=
};=0A=
=0A=
CNN.AbstractOmnitureTriggerCommand.prototype._calcTimeStringsGeneric =3D =
function(curHour, curMin, curDOW)=0A=
{=0A=
	var retVal =3D { h15: '', dow: '' };=0A=
	if =
(typeof(curHour)=3D=3D=3D'undefined'||typeof(curMin)=3D=3D=3D'undefined'|=
|typeof(curDOW)=3D=3D=3D'undefined')=0A=
	{=0A=
		return retVal;=0A=
	}=0A=
	var diffMs =3D (new Date()).getTime() - =
CNN.AbstractOmnitureTriggerCommand._clientStartMs;=0A=
	if (diffMs < 0)=0A=
	{	// did user set system clock into the past after xmp started?=0A=
		return retVal;=0A=
	}=0A=
	var days =3D ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', =
'Friday', 'Saturday'];=0A=
	var doyi =3D 0; // day of week index=0A=
	for (var i=3D0; i<days.length; i++)=0A=
	{=0A=
		if (curDOW =3D=3D=3D days[i])=0A=
		{=0A=
			doyi =3D i;=0A=
			break;=0A=
		}=0A=
	}=0A=
	// NOTE: Jan 1, 1995 was a Sunday.  Note that this scheme works so long =
as =0A=
	// diffMs is not enough to take us past Feb 28, because leap years will =
mess things up, =0A=
	// but highly doubtful someone will leave xmp running for more than 59 =
days.=0A=
	// Note that since we are only calculating hours, 15-minute intervals, =
and day of the week, =0A=
	// it is OK to do calculations with a date in the past.=0A=
	var calcStartMs =3D Date.UTC(1995, 0, (1 + doyi), curHour, curMin);=0A=
	var finalDate =3D new Date(calcStartMs + diffMs);=0A=
	retVal.dow =3D days[finalDate.getUTCDay()];=0A=
	var min15 =3D 15 * (Math.floor(finalDate.getUTCMinutes()/15));=0A=
	retVal.h15 =3D finalDate.getUTCHours().toString() + ':' + ((min15 =
=3D=3D=3D 0) ? '00' : min15.toString());=0A=
	if (retVal.h15.length =3D=3D=3D 4) { retVal.h15 =3D '0' + retVal.h15; }	=0A=
	return retVal;=0A=
};=0A=
=0A=
//Parent page location=0A=
var cnnWinLoc =3D window.location.pathname;=0A=
var cnnWinLocRegExp =3D /\/$/; =0A=
if(cnnWinLocRegExp.test(cnnWinLoc)){cnnWinLoc =3D cnnWinLoc + =
"index.html";}=0A=
=0A=
/////////////////////////////////////////////////////////////////////////=
//////=0A=
/////////////////////////////////////////////////////////////////////////=
//////=0A=
=0A=
CNN.BVPOmnitureTriggerCommand =3D function()=0A=
{=0A=
	this._logger =3D new xmp.util.internals.CategoryLogger( =
'BVPOmnitureTriggerCommand' );=0A=
};=0A=
=0A=
xmp.DERIVE_CLASS( CNN.AbstractOmnitureTriggerCommand, =
CNN.BVPOmnitureTriggerCommand );=0A=
=0A=
CNN.BVPOmnitureTriggerCommand.prototype._getVideoIdEvar =3D function()=0A=
{=0A=
	return 'eVar21';=0A=
};=0A=
=0A=
CNN.BVPOmnitureTriggerCommand.prototype._getPageType =3D function()=0A=
{=0A=
	return 'bvp';=0A=
};=0A=
=0A=
CNN.BVPOmnitureTriggerCommand.prototype._getCustomTriggerPrefix =3D =
function()=0A=
{=0A=
	return 'CNN BVP: ';=0A=
};=0A=
=0A=
CNN.BVPOmnitureTriggerCommand.prototype._reportSpecificStartValues =3D =
function(context, s)=0A=
{=0A=
	var pm =3D CNNPlaylistManager.getInstance();=0A=
	var thisTab =3D pm.tab;=0A=
	if(pm.activePlaylist =3D=3D 'myplaylist'){=0A=
		thisTab =3D pm.getCurrentVideoTab();=0A=
		s.events +=3D ', event6';=0A=
	}=0A=
	if(thisTab !=3D 'notab' && !pm.videoWasLinked()){=0A=
		s.eVar17=3DthisTab;=0A=
		s.events +=3D ', event4';=0A=
	}=0A=
};=0A=
=0A=
CNN.BVPOmnitureTriggerCommand.prototype._getLogger =3D function()=0A=
{=0A=
	return this._logger;=0A=
};=0A=
=0A=
/////////////////////////////////////////////////////////////////////////=
//////=0A=
/////////////////////////////////////////////////////////////////////////=
//////=0A=
=0A=
CNN.MosaicOmnitureTriggerCommand =3D function()=0A=
{=0A=
	this._logger =3D new xmp.util.internals.CategoryLogger( =
'MosaicOmnitureTriggerCommand' );=0A=
};=0A=
=0A=
xmp.DERIVE_CLASS( CNN.AbstractOmnitureTriggerCommand, =
CNN.MosaicOmnitureTriggerCommand );=0A=
=0A=
CNN.MosaicOmnitureTriggerCommand.prototype._getVideoIdEvar =3D function()=0A=
{=0A=
	return 'eVar22';=0A=
};=0A=
=0A=
CNN.MosaicOmnitureTriggerCommand.prototype._getPageType =3D function()=0A=
{=0A=
	return 'mosaic';=0A=
};=0A=
=0A=
CNN.MosaicOmnitureTriggerCommand.prototype._getCustomTriggerPrefix =3D =
function()=0A=
{=0A=
	return 'CNN Mosaic: ';=0A=
};=0A=
=0A=
CNN.MosaicOmnitureTriggerCommand.prototype._reportSpecificStartValues =
=3D function(context, s)=0A=
{=0A=
	if (typeof(cnnSectionName) !=3D=3D "undefined") =
{s.channel=3DcnnSectionName;s.eVar2=3DcnnSectionName;} else =
{s.channel=3D"";s.eVar2=3D"";}=0A=
	if (typeof(cnnSubSectionName) !=3D=3D "undefined") =
{s.server=3DcnnSubSectionName;s.eVar3=3DcnnSubSectionName;} else =
{s.server=3D"";s.eVar3=3D"";}=0A=
=0A=
};=0A=
=0A=
CNN.MosaicOmnitureTriggerCommand.prototype._getLogger =3D function()=0A=
{=0A=
	return this._logger;=0A=
};=0A=
=0A=
/////////////////////////////////////////////////////////////////////////=
//////=0A=
/////////////////////////////////////////////////////////////////////////=
//////=0A=
=0A=
CNN.T1OmnitureTriggerCommand =3D function()=0A=
{=0A=
	this._logger =3D new xmp.util.internals.CategoryLogger( =
'T1OmnitureTriggerCommand' );=0A=
};=0A=
=0A=
xmp.DERIVE_CLASS( CNN.AbstractOmnitureTriggerCommand, =
CNN.T1OmnitureTriggerCommand );=0A=
=0A=
CNN.T1OmnitureTriggerCommand.prototype._getVideoIdEvar =3D function()=0A=
{=0A=
	return 'eVar19';=0A=
};=0A=
=0A=
CNN.T1OmnitureTriggerCommand.prototype._getPageType =3D function()=0A=
{=0A=
	return CNNPlaylistManager.getInstance().t1PageType;=0A=
};=0A=
=0A=
CNN.T1OmnitureTriggerCommand.prototype._getCustomTriggerPrefix =3D =
function()=0A=
{=0A=
	return 'CNN T1: ';=0A=
};=0A=
=0A=
CNN.T1OmnitureTriggerCommand.prototype._reportSpecificStartValues =3D =
function(context, s)=0A=
{=0A=
	if (typeof(cnnSectionName) !=3D=3D "undefined") =
{s.channel=3DcnnSectionName;s.eVar2=3DcnnSectionName;} else =
{s.channel=3D"";s.eVar2=3D"";}=0A=
	if (typeof(cnnSubSectionName) !=3D=3D "undefined") =
{s.server=3DcnnSubSectionName;s.eVar3=3DcnnSubSectionName;} else =
{s.server=3D"";s.eVar3=3D"";}=0A=
	s.eVar18 =3D cnnWinLoc;=0A=
};=0A=
=0A=
CNN.T1OmnitureTriggerCommand.prototype._getLogger =3D function()=0A=
{=0A=
	return this._logger;=0A=
};=0A=
=0A=
/////////////////////////////////////////////////////////////////////////=
//////=0A=
/////////////////////////////////////////////////////////////////////////=
//////=0A=
=0A=
=0A=
CNN.HotTopicOmnitureTriggerCommand =3D function()=0A=
{=0A=
	this._logger =3D new xmp.util.internals.CategoryLogger( =
'HotTopicOmnitureTriggerCommand' );=0A=
};=0A=
=0A=
xmp.DERIVE_CLASS( CNN.AbstractOmnitureTriggerCommand, =
CNN.HotTopicOmnitureTriggerCommand );=0A=
=0A=
CNN.HotTopicOmnitureTriggerCommand.prototype._getVideoIdEvar =3D =
function()=0A=
{=0A=
	return 'eVar19';=0A=
};=0A=
=0A=
CNN.HotTopicOmnitureTriggerCommand.prototype._getPageType =3D function()=0A=
{=0A=
	return 'hottopic';=0A=
};=0A=
=0A=
CNN.HotTopicOmnitureTriggerCommand.prototype._getCustomTriggerPrefix =3D =
function()=0A=
{=0A=
	return 'CNN Hot Topic: ';=0A=
};=0A=
=0A=
CNN.HotTopicOmnitureTriggerCommand.prototype._reportSpecificStartValues =
=3D function(context, s)=0A=
{=0A=
	if (typeof(cnnSectionName) !=3D=3D "undefined") =
{s.channel=3DcnnSectionName;s.eVar2=3DcnnSectionName;} else =
{s.channel=3D"";s.eVar2=3D"";}=0A=
	if (typeof(cnnSubSectionName) !=3D=3D "undefined") =
{s.server=3DcnnSubSectionName;s.eVar3=3DcnnSubSectionName;} else =
{s.server=3D"";s.eVar3=3D"";}=0A=
	s.eVar18 =3D cnnWinLoc;=0A=
};=0A=
=0A=
CNN.HotTopicOmnitureTriggerCommand.prototype._getLogger =3D function()=0A=
{=0A=
	return this._logger;=0A=
};=0A=
=0A=
/////////////////////////////////////////////////////////////////////////=
//////=0A=
/////////////////////////////////////////////////////////////////////////=
//////=0A=
=0A=
CNN.SpecialsOmnitureTriggerCommand =3D function()=0A=
{=0A=
	this._logger =3D new xmp.util.internals.CategoryLogger( =
'SpecialsOmnitureTriggerCommand' );=0A=
};=0A=
=0A=
xmp.DERIVE_CLASS( CNN.AbstractOmnitureTriggerCommand, =
CNN.SpecialsOmnitureTriggerCommand );=0A=
=0A=
CNN.SpecialsOmnitureTriggerCommand.prototype._getVideoIdEvar =3D =
function()=0A=
{=0A=
	return 'eVar19';=0A=
};=0A=
=0A=
CNN.SpecialsOmnitureTriggerCommand.prototype._getPageType =3D function()=0A=
{=0A=
	return 'specials';=0A=
};=0A=
=0A=
CNN.SpecialsOmnitureTriggerCommand.prototype._getCustomTriggerPrefix =3D =
function()=0A=
{=0A=
	return 'CNN Specials: ';=0A=
};=0A=
=0A=
CNN.SpecialsOmnitureTriggerCommand.prototype._reportSpecificStartValues =
=3D function(context, s)=0A=
{=0A=
	if (typeof(cnnSectionName) !=3D=3D "undefined") =
{s.channel=3DcnnSectionName;s.eVar2=3DcnnSectionName;} else =
{s.channel=3D"";s.eVar2=3D"";}=0A=
	if (typeof(cnnSubSectionName) !=3D=3D "undefined") =
{s.server=3DcnnSubSectionName;s.eVar3=3DcnnSubSectionName;} else =
{s.server=3D"";s.eVar3=3D"";}=0A=
	s.eVar18 =3D cnnWinLoc;=0A=
};=0A=
=0A=
CNN.SpecialsOmnitureTriggerCommand.prototype._getLogger =3D function()=0A=
{=0A=
	return this._logger;=0A=
};=0A=
=0A=
/////////////////////////////////////////////////////////////////////////=
//////=0A=
/////////////////////////////////////////////////////////////////////////=
//////=0A=
=0A=
=0A=
=0A=
CNN.WebstatTriggerCommand =3D function()=0A=
{=0A=
};=0A=
=0A=
CNN.WebstatTriggerCommand.prototype.doCommand =3D function(context)=0A=
{=0A=
	switch (context.getTriggerType())=0A=
	{=0A=
		case 'start': this._doStartCommand(context); break;=0A=
		default: break;=0A=
	}=0A=
};=0A=
=0A=
CNN.WebstatTriggerCommand.prototype._doStartCommand =3D function(context)=0A=
{=0A=
	var node =3D context.getPlayableNode();=0A=
	var pingUrl =3D =
node.getPlayableData().getDataObject().id+'/tracking.vidt';=0A=
	xmp.net.AjaxRequestManager.ping('videoTracking', pingUrl);=0A=
};=0A=
=0A=
/////////////////////////////////////////////////////////////////////////=
//////=0A=
/////////////////////////////////////////////////////////////////////////=
//////=0A=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/video/common/bvplisteners.js

/************************************************************************=
********=0A=
 ** BaseNodeListener =0A=
 ** - Superclass for other listeners=0A=
 =
*************************************************************************=
******/=0A=
=0A=
var adJustPlayed =3D false;=0A=
=0A=
// Declare find player.=0A=
var findPlayer =3D xmp.baseplayer.BasePlayer.findPlayer;=0A=
=0A=
function CNNPlayerListener( name, player ) {=0A=
	CNNPlayerListener.ctor.call( this, name, player );=0A=
}=0A=
=0A=
// Derive "CNNPlayerListener" from "AbstractNodeListener".=0A=
xmp.DERIVE_CLASS( xmp.baseplayer.listeners.DefaultPlayerListener, =
CNNPlayerListener );=0A=
=0A=
CNNPlayerListener.prototype.setStatus =3D function( node, status, =
details ) {=0A=
	CNNPlayerListener.base.setStatus.call(this, node, status, details);=0A=
};=0A=
=0A=
CNNPlayerListener.prototype.handleEnded =3D function( node ) {=0A=
	callControllerMethod('setEnabled',false);=0A=
	callControllerMethod('setEmailEnabled',true);=0A=
	callControllerMethod('setTime',0);=0A=
	if (node.getNodeTypeId() !=3D "NextUpSlate" && node.getNodeTypeId() =
!=3D "EndSlate" && node.getNodeTypeId() !=3D "StartSlate" && =0A=
			node.getNodeTypeId() !=3D "ErrorSlate") {=0A=
		callControllerMethod('togglePlay',false);	=0A=
	}=0A=
//	this.getPlayer().advance();	=0A=
};=0A=
CNNPlayerListener.prototype.handleBuffering =3D function( node, =
buffStateObj ) {=0A=
	callControllerMethod('setLoadedPercent',(0.01*buffStateObj.percent));=0A=
};=0A=
CNNPlayerListener.prototype.handleTimelineChange =3D function( node, =
position, duration ) {=0A=
	if (node.getNodeTypeId() !=3D "NextUpSlate" && node.getNodeTypeId() =
!=3D "EndSlate" && node.getNodeTypeId() !=3D "StartSlate" && =0A=
			node.getNodeTypeId() !=3D "ErrorSlate") {=0A=
		if (CNNPlayer.getActivePlayer().isScrubbing =3D=3D false) {=0A=
			callControllerMethod('togglePlay',true);=0A=
			callControllerMethod('setTime',position);=0A=
		}=0A=
	}=0A=
};=0A=
CNNPlayerListener.prototype.handleError =3D function( node, err ) {=0A=
	if (node.isContentType() && =
!CNNPlaylistManager.getInstance('bvpplayer').isSmall) {=0A=
		clearComments();=0A=
		this.getPlayer().advance();=0A=
	}=0A=
};=0A=
CNNPlayerListener.prototype._findNextContentNode =3D function( ) {	=0A=
	var lookAhead =3D this.getPlayer().getLookAheadNodeArray();	=0A=
	for ( var i =3D 0; i < lookAhead.length; i++ ) {=0A=
		var node =3D lookAhead[i];=0A=
		if ( node.isContentType() ) {=0A=
			return node;=0A=
		}=0A=
	}	=0A=
	return null;=0A=
};=0A=
CNNPlayerListener.prototype._findPreviousContentNode =3D function( ) {	=0A=
	var lookBehind =3D this.getPlayer().getLookBehindNodeArray();=0A=
	for ( var i =3D 0; i < lookBehind.length; i++ )=0A=
	{=0A=
		var node =3D lookBehind[i];=0A=
		if ( node.isContentType() ) {=0A=
			return node;=0A=
		}=0A=
	}=0A=
	return null;=0A=
};=0A=
=0A=
function clearComments(){try{=0A=
        if (CNNPlaylistManager.getInstance('bvpplayer').isSmall) { =
hideComments(); }=0A=
        document.getElementById('commentHolder1').style.display =3D =
'none';=0A=
        document.getElementById('cnnVPCHdr').style.display =3D 'none';=0A=
        document.getElementById('commentHolder2').style.display =3D =
'none';=0A=
        document.getElementById('videoComments').innerHTML =3D '';=0A=
	try{document.getElementById("commentsAd").style.display =3D =
"block";}catch(e){}}catch(e){}=0A=
}=0A=
=0A=
/************************************************************************=
********=0A=
 ** AdNodeListener=0A=
 ** - drives ad videos=0A=
 =
*************************************************************************=
******/=0A=
=0A=
function AdNodeListener(name, player ) {=0A=
	AdNodeListener.ctor.call( this, name, player );=0A=
	this._logger =3D new xmp.util.internals.CategoryLogger( =
'AdNodeListener' );=0A=
}=0A=
=0A=
xmp.DERIVE_CLASS( xmp.baseplayer.listeners.DefaultAdNodeListener, =
AdNodeListener );=0A=
=0A=
AdNodeListener.prototype.handleInitialize =3D function( node ) {=0A=
	if (CNNPlaylistManager.getInstance().playlistType =3D=3D 'bvp') {=0A=
	 	clearComments();=0A=
	}=0A=
};=0A=
=0A=
AdNodeListener.prototype.handlePlay =3D function( node ) {=0A=
	if (CNNPlaylistManager.getInstance().playlistType =3D=3D 'bvp') {=0A=
		clearComments();=0A=
	}=0A=
	callControllerMethod('setScrubberEnabled',false);=0A=
};=0A=
=0A=
AdNodeListener.prototype.handleOpen =3D function( node ) {=0A=
	if (CNNPlaylistManager.getInstance().playlistType =3D=3D 'bvp') {=0A=
		clearComments();=0A=
	}=0A=
	if ( node.getNodeTypeId() !=3D "AdInsertNotForSale" && =
CNNPlaylistManager.getInstance().activePlaylist !=3D 'hottplaylist' && =
CNNPlaylistManager.getInstance().activePlaylist !=3D 't1playlist' && =
CNNPlaylistManager.getInstance().activePlaylist !=3D 'saplaylist') {=0A=
		if (CNNPlaylistManager.getInstance().doNotResetSynchOnPreroll =3D=3D =
false || CNNPlaylistManager.getInstance().sensitiveSynchDisplaying =
=3D=3D true) {=0A=
			CNNPlaylistManager.getInstance().sensitiveSynchDisplaying =3D false;=0A=
			adJustPlayed =3D true;=0A=
			this.getPlayer().loadSynchUnit(node);	=0A=
		} else {=0A=
			CNNPlaylistManager.getInstance().doNotResetSynchOnPreroll =3D false;=0A=
		}=0A=
	}=0A=
};=0A=
=0A=
AdNodeListener.prototype.handleComplete =3D function( node ) {	=0A=
	CNNPlaylistManager.getInstance().mosSlateActive =3D false;=0A=
	var item =3D node.getPlayableData();=0A=
	var mimeType =3D item.getMimeTypeArray()[0]; =0A=
	var ext =3D ".flv";=0A=
	if (mimeType =3D=3D=3D 'video/x-ms-wmv') { ext =3D ".wmv"; }=0A=
	var relativeUri =3D item.getPlayableId() + ext;=0A=
	=0A=
	node.setURI( this.getPlayer().getAbsoluteURI( relativeUri, 'adVideo' ) =
);=0A=
	node.setMimeTypes( [mimeType] );=0A=
	node.setStreamingMode( xmp.AD_STREAMING_MODE );	=0A=
	=0A=
	callControllerMethod('setEnabled',true);=0A=
	callControllerMethod('setScrubberEnabled',false);=0A=
	callControllerMethod('setDuration', =
node.getPlayableData().getDataObject().trt);=0A=
=0A=
	if (CNNPlaylistManager.getInstance().activePlaylist !=3D 'hottplaylist' =
&& CNNPlaylistManager.getInstance().activePlaylist !=3D 't1playlist') {=0A=
		nextNode =3D this.getPlayer()._findNextContentNode();=0A=
		if (nextNode !=3D null) {=0A=
			if (CNNPlaylistManager.getInstance().playlistType =3D=3D 'bvp') {=0A=
				if (CNNPlaylistManager.getInstance('bvpplayer').isSmall) { =
hideComments(); }=0A=
				document.getElementById('commentHolder1').style.display =3D 'none';=0A=
				document.getElementById('cnnVPCHdr').style.display =3D 'none';=0A=
				document.getElementById('commentHolder2').style.display =3D 'none';=0A=
				document.getElementById('videoComments').innerHTML =3D '';=0A=
				=
CNNPlaylistManager.getInstance().BVPMWriteContent(nextNode.getPlayableDat=
a().getDataObject());=0A=
				if (nextNode.getPlayableData().getDataObject().providedBy !=3D null) =
{=0A=
					document.getElementById('providedByL').innerHTML =3D '<b>Source: =
'+CNNPlaylistManager.providedResponse(nextNode.getPlayableData().getDataO=
bject().providedBy)+'</b>';=0A=
					document.getElementById('providedByS').innerHTML =3D '<b>Source: =
'+CNNPlaylistManager.providedResponse(nextNode.getPlayableData().getDataO=
bject().providedBy)+'</b>';=0A=
				}=0A=
				else {=0A=
					document.getElementById('providedByL').innerHTML =3D ''; =0A=
					document.getElementById('providedByS').innerHTML =3D ''; =0A=
				}=0A=
				if (nextNode.getPlayableData().getDataObject().dateCreated !=3D =
null) {=0A=
					document.getElementById('addedOnL').innerHTML =3D '<b>Added On</b> =
'+nextNode.getPlayableData().getDataObject().dateCreated;=0A=
					document.getElementById('addedOnS').innerHTML =3D '<b>Added On</b> =
'+nextNode.getPlayableData().getDataObject().dateCreated;=0A=
				}=0A=
				else {=0A=
					document.getElementById('addedOnL').innerHTML =3D ''; =0A=
					document.getElementById('addedOnL').innerHTML =3D ''; =0A=
				}=0A=
			} else if (CNNPlaylistManager.getInstance().playlistType =3D=3D =
'mos') {=0A=
				=
CNNPlaylistManager.getInstance().MOSContentWrite(nextNode.getPlayableData=
().getDataObject());=0A=
			} else if (CNNPlaylistManager.getInstance().activePlaylist =3D=3D =
'saplaylist') {=0A=
				=
CNNPlaylistManager.getInstance().SAConfiguration.updateContentHandler(nex=
tNode.getPlayableData().getDataObject());=0A=
			}=0A=
		} =0A=
	}=0A=
};=0A=
=0A=
AdNodeListener.prototype.handleDynamicRules =3D function(node) {=0A=
   var nodeTypeId =3D node.getNodeTypeId();=0A=
   if ((nodeTypeId =3D=3D=3D 'PreRoll') && !this.PreRollFound ) {=0A=
		this.PreRollFound =3D true;=0A=
		if ( CNNRules.DontPlayRule.isActive() ) {=0A=
		  var ruleContext =3D null;=0A=
		  this.getPlayer().registerRuleClass("DontPlayRule", =
"CNNRules.DontPlayRule");=0A=
		  ruleContext =3D =
xmp.playlistapi.RuleContext.createDynamic("DontPlayRule",null);=0A=
		  node.addRule(ruleContext);=0A=
		}=0A=
  }=0A=
};=0A=
=0A=
AdNodeListener.prototype.handleOverrideAdResources =3D function(node, =
overrideContext) {=0A=
	var contextName =3D =
overrideContext.expandString('${player.context_name}');=0A=
	var nodeTypeId =3D node.getNodeTypeId();=0A=
	if (CNNPlaylistManager.getInstance().activePlaylist =3D=3D =
'mosplaylist') {=0A=
		if (nodeTypeId =3D=3D 'PreRoll' || nodeTypeId =3D=3D 'PostRoll') {	=0A=
			overrideContext.getResource('primary').setId(overrideVideoAd);=0A=
			overrideContext.getResource('synch_unit').setId(overrideSyncAd);=0A=
		}=0A=
	}=0A=
	if (CNNPlaylistManager.getInstance().activePlaylist =3D=3D 'saplaylist' =
|| CNNPlaylistManager.getInstance().activePlaylist =3D=3D 'hottplaylist' =
|| CNNPlaylistManager.getInstance().activePlaylist =3D=3D 't1playlist') {=0A=
		if (nodeTypeId =3D=3D 'SponsoredAd' || nodeTypeId =3D=3D 'PreRoll' || =
nodeTypeId =3D=3D=3D 'PostRoll')=0A=
		{=0A=
			overrideContext.getResource('primary').setId(overrideVideoAd);=0A=
		}=0A=
	}=0A=
};=0A=
=0A=
/************************************************************************=
********=0A=
 ** NextupSlateNodeListener=0A=
 ** - drives DHTML object between video content pieces=0A=
 =
*************************************************************************=
******/=0A=
=0A=
var HEADLINE =3D "headline";=0A=
=0A=
function NextUpSlateNodeListener( name, player ) {=0A=
	NextUpSlateNodeListener.ctor.call( this, name, player );=0A=
}  =0A=
=0A=
xmp.DERIVE_CLASS( =
xmp.baseplayer.listeners.DefaultNextUpSlateNodeListener, =
NextUpSlateNodeListener );=0A=
=0A=
NextUpSlateNodeListener.prototype.handleComplete =3D function( node ) {	=0A=
	CNNPlaylistManager.getInstance().mosSlateActive =3D true;=0A=
	NextUpSlateNodeListener.base.handleComplete.call( this, node );	=0A=
	nextNode =3D this.getPlayer()._findNextContentNode();=0A=
	if (CNNPlaylistManager.getInstance().playlistType =3D=3D 'bvp') {=0A=
		if (!CNNPlaylistManager.getInstance('bvpplayer').isSmall) { =
clearComments(); }=0A=
		=
CNNPlaylistManager.getInstance().BVPMWriteContent(nextNode.getPlayableDat=
a().getDataObject());=0A=
		if (nextNode.getPlayableData().getDataObject().providedBy !=3D null) {=0A=
			document.getElementById('providedByL').innerHTML =3D '<b>Source: =
'+CNNPlaylistManager.providedResponse(nextNode.getPlayableData().getDataO=
bject().providedBy)+'</b>';=0A=
			document.getElementById('providedByS').innerHTML =3D '<b>Source: =
'+CNNPlaylistManager.providedResponse(nextNode.getPlayableData().getDataO=
bject().providedBy)+'</b>';=0A=
		}=0A=
		else {=0A=
			document.getElementById('providedByL').innerHTML =3D ''; =0A=
			document.getElementById('providedByS').innerHTML =3D ''; =0A=
		}=0A=
		if (nextNode.getPlayableData().getDataObject().dateCreated !=3D null) {=0A=
			document.getElementById('addedOnL').innerHTML =3D '<b>Added On</b> =
'+nextNode.getPlayableData().getDataObject().dateCreated;=0A=
			document.getElementById('addedOnS').innerHTML =3D '<b>Added On</b> =
'+nextNode.getPlayableData().getDataObject().dateCreated;=0A=
		}=0A=
		else {=0A=
			document.getElementById('addedOnL').innerHTML =3D ''; =0A=
			document.getElementById('addedOnL').innerHTML =3D ''; =0A=
		}=0A=
	} else if (CNNPlaylistManager.getInstance().playlistType =3D=3D 'mos') {=0A=
		=
CNNPlaylistManager.getInstance().MOSContentWrite(nextNode.getPlayableData=
().getDataObject());=0A=
	} else if (CNNPlaylistManager.getInstance().activePlaylist =3D=3D =
'saplaylist') {=0A=
		=
CNNPlaylistManager.getInstance().SAConfiguration.updateContentHandler(nex=
tNode.getPlayableData().getDataObject());=0A=
	}=0A=
	node.setMetadata( HEADLINE, =
this.getPlayer()._findNextContentNode().getPlayableData().getDataObject()=
.headline );		=0A=
	node.setMetadata( 'trt', =
CNNPlayer.secondsIntoMinutes(this.getPlayer()._findNextContentNode().getP=
layableData().getDataObject().trt) );		=0A=
=0A=
	var images =3D =
this.getPlayer()._findNextContentNode().getPlayableData().getDataObject()=
.images;=0A=
	var imageCount =3D images.length;=0A=
	var sizes =3D [];=0A=
	var sizeToResource =3D {};=0A=
		=0A=
	for ( var i =3D 0; i < imageCount; i++ ) {=0A=
		sizes.push( images[i].id );=0A=
		sizeToResource[ images[i].id ] =3D images[i].resource;=0A=
	}=0A=
=0A=
	node.setMetadata( 'bgimage', =
CNNPlaylistManager.findImageSize(this.getPlayer()._findNextContentNode().=
getPlayableData().getDataObject().images, =
CNNPlaylistManager.getInstance().slateSize) );=0A=
	node.setMetadata( 'smbgimage', =
CNNPlaylistManager.findImageSize(this.getPlayer()._findNextContentNode().=
getPlayableData().getDataObject().images, '384x216'));=0A=
};=0A=
=0A=
/************************************************************************=
********=0A=
 ** ErrorSlateNodeListener=0A=
 ** - shown if an error occurs in a video or if a video is expired=0A=
 =
*************************************************************************=
******/=0A=
=0A=
var ERROR_SLATE_NODE_LISTENER =3D "ErrorSlate";=0A=
=0A=
function ErrorSlateNodeListener( name, player ) {=0A=
	ErrorSlateNodeListener.ctor.call( this, name, player );=0A=
}  =0A=
=0A=
xmp.DERIVE_CLASS( xmp.baseplayer.listeners.DefaultSlateNodeListener, =
ErrorSlateNodeListener );=0A=
=0A=
ErrorSlateNodeListener.prototype.handleComplete =3D function( node ) {	=0A=
	CNNPlaylistManager.getInstance().mosSlateActive =3D true;=0A=
	ErrorSlateNodeListener.base.handleComplete.call( this, node );	=0A=
};=0A=
=0A=
/************************************************************************=
********=0A=
 ** StartSlateNodeListener=0A=
 ** - drives the initial slab/slate=0A=
 =
*************************************************************************=
******/=0A=
=0A=
var IMAGE =3D "image";=0A=
=0A=
function StartSlateNodeListener( name, player ) {=0A=
	StartSlateNodeListener.ctor.call( this, name, player );=0A=
}  =0A=
=0A=
xmp.DERIVE_CLASS( =
xmp.baseplayer.listeners.DefaultStartSlateNodeListener, =
StartSlateNodeListener );=0A=
=0A=
StartSlateNodeListener.prototype.handleComplete =3D function( node ) {	=0A=
	CNNPlaylistManager.getInstance().mosSlateActive =3D true;=0A=
	StartSlateNodeListener.base.handleComplete.call( this, node );	=0A=
=0A=
	var images =3D =
this.getPlayer()._findNextContentNode().getPlayableData().getDataObject()=
.images;=0A=
	var imageCount =3D images.length;=0A=
	var sizes =3D [];=0A=
	var sizeToResource =3D {};=0A=
		=0A=
	for ( var i =3D 0; i < imageCount; i++ ) {=0A=
		sizes.push( images[i].id );=0A=
		sizeToResource[ images[i].id ] =3D images[i].resource;=0A=
	}=0A=
=0A=
	node.setMetadata( IMAGE, CNNPlaylistManager.findImageSize(images, =
CNNPlaylistManager.getInstance().slateSize)); =0A=
	if (CNNPlaylistManager.getInstance().activePlaylist !=3D 'hottplaylist' =
&& CNNPlaylistManager.getInstance().activePlaylist !=3D 't1playlist' && =
CNNPlaylistManager.getInstance().activePlaylist !=3D 'saplaylist') {=0A=
		this.getPlayer().loadSynchUnit(node);	=0A=
	}=0A=
};=0A=
StartSlateNodeListener.prototype.handleRender =3D function( node ) {=0A=
	if (CNNPlaylistManager.skipStartSlateButLoadSynch =3D=3D true || =
CNNPlaylistManager.getInstance().vidString =3D=3D =
'CNNMosaicSingleVideoNonDefault' ||  =
CNNPlaylistManager.getInstance().vidString =3D=3D =
'CNNMosaicMultiVideoNonDefault') { // skip the start slate completely =
for these two=0A=
		this.getPlayer().advance();=0A=
	}=0A=
	else {=0A=
		this.getPlayer().getMediaPlayer().open( node );=0A=
	}=0A=
};=0A=
StartSlateNodeListener.prototype.handleOverrideAdResources =3D =
function(node, overrideContext) {=0A=
	if (CNNPlaylistManager.getInstance().activePlaylist !=3D 'hottplaylist' =
&& CNNPlaylistManager.getInstance().activePlaylist !=3D 't1playlist' && =
CNNPlaylistManager.getInstance().activePlaylist !=3D 'saplaylist') {=0A=
		houseAd =3D new =
xmp.playlistapi.Resource('/cnn_adspaces/2.0/house/cnn_video/video.336x280=
_house.ad', 'synch_unit', {});=0A=
		var lookAheadArray =3D this.getPlayer().getLookAheadNodeArray();=0A=
		var foundOne =3D null;=0A=
		for (var i =3D 0; i < lookAheadArray.length; i++) {=0A=
			var testNode =3D lookAheadArray[i];=0A=
			if (testNode.isContentType()) {=0A=
				// okay, we've got a content node, now figure if it's useable=0A=
				if (testNode.getPlayableData().getDataObject().trt >=3D 45) { // =
okay, this is valid, let's see if it's "sensitive"=0A=
					if (testNode.getPlayableData().getDataObject().isAdSensitive =3D=3D =
false) { // it's not sensitive, here's our sign=0A=
						var sponsoredAdNode =3D null;=0A=
						var prerollAdNode =3D null;=0A=
						var postrollAdNode =3D null;=0A=
						for (var j =3D i+1; j < lookAheadArray.length; j++) {=0A=
							var nextNode =3D lookAheadArray[j];=0A=
							if (nextNode.isContentType()) { break; }=0A=
							if (nextNode.getNodeTypeName() =3D=3D 'PreRoll') { foundOne =3D =
nextNode; break; }=0A=
							if (nextNode.getNodeTypeName() =3D=3D 'SponsoredAd') { foundOne =
=3D nextNode; break; }=0A=
							if (nextNode.getNodeTypeName() =3D=3D 'PostRoll') { foundOne =3D =
nextNode; break; }=0A=
						}=0A=
						for (var j =3D i-1; j >=3D 0; j--) {=0A=
							var preNode =3D lookAheadArray[j];=0A=
							if (preNode.isContentType()) { break; }=0A=
							if (preNode.getNodeTypeName() =3D=3D 'PreRoll') { foundOne =3D =
preNode; }=0A=
							if (preNode.getNodeTypeName() =3D=3D 'SponsoredAd') { foundOne =
=3D preNode; break; }=0A=
						}=0A=
						break;=0A=
					} else { // it is sensitive, break the for loop and go use a house =
ad=0A=
						break;=0A=
					}	=0A=
				}=0A=
			}=0A=
		}=0A=
		foundOne =3D null;=0A=
		if (foundOne !=3D null) {=0A=
			CNNPlaylistManager.getInstance().doNotResetSynchOnPreroll =3D true;=0A=
			overrideContext.copyMetaResourceBundleRefFrom(foundOne);=0A=
			if (CNNPlaylistManager.getInstance().activePlaylist =3D=3D =
'mosplaylist' && foundOne.getNodeTypeName() !=3D 'SponsoredAd') {=0A=
				overrideContext.getResource('primary').setId(overrideVideoAd);=0A=
				overrideContext.getResource('synch_unit').setId(overrideSyncAd);=0A=
			}=0A=
		} else { =0A=
			CNNPlaylistManager.getInstance().sensitiveSynchDisplaying =3D true;=0A=
			overrideContext.addResource(houseAd); =0A=
		}=0A=
	}=0A=
};=0A=
=0A=
/************************************************************************=
********=0A=
 ** EndSlateNodeListener=0A=
 ** - drives the final slate=0A=
 =
*************************************************************************=
******/=0A=
=0A=
var END_SLATE_NODE_LISTENER =3D "EndSlate";=0A=
var IMAGE =3D "image";=0A=
=0A=
function EndSlateNodeListener( name, player ) {=0A=
	EndSlateNodeListener.ctor.call( this, name, player );=0A=
}  =0A=
=0A=
xmp.DERIVE_CLASS( xmp.baseplayer.listeners.DefaultSlateNodeListener, =
EndSlateNodeListener );=0A=
=0A=
EndSlateNodeListener.prototype.handleComplete =3D function( node ) {	=0A=
	if (!CNNPlaylistManager.getInstance('bvpplayer').isSmall) { =
clearComments();}=0A=
	CNNPlaylistManager.getInstance().mosSlateActive =3D true;=0A=
	EndSlateNodeListener.base.handleComplete.call( this, node );	=0A=
=0A=
	var images =3D =
this.getPlayer()._findPreviousContentNode().getPlayableData().getDataObje=
ct().images;=0A=
	var imageCount =3D images.length;=0A=
	var sizes =3D [];=0A=
	var sizeToResource =3D {};=0A=
	=0A=
	for ( var i =3D 0; i < imageCount; i++ ) 	{=0A=
		sizes.push( images[i].id );=0A=
		sizeToResource[ images[i].id ] =3D images[i].resource;=0A=
	}=0A=
=0A=
	node.setMetadata( IMAGE, =
CNNPlaylistManager.findImageSize(images,CNNPlaylistManager.getInstance().=
slateSize)); =0A=
	node.setMetadata( 'smbgimage', CNNPlaylistManager.findImageSize(images, =
'384x216'));=0A=
};=0A=
=0A=
/************************************************************************=
********=0A=
 ** VideoNodeListener=0A=
 ** - drives all video content nodes=0A=
 =
*************************************************************************=
******/=0A=
=0A=
function VideoNodeListener( name, player ) {=0A=
	VideoNodeListener.ctor.call( this, name, player, false );		=0A=
}=0A=
=0A=
xmp.DERIVE_CLASS( xmp.baseplayer.listeners.DefaultVideoNodeListener, =
VideoNodeListener );=0A=
=0A=
VideoNodeListener.prototype.handleEnded =3D function( node ) {=0A=
	callControllerMethod('setEnabled',false);=0A=
	callControllerMethod('setTime',0);=0A=
	callControllerMethod('togglePlay',false);	=0A=
	CNNPlayer.getActivePlayer().callEnded();=0A=
}=0A=
=0A=
var globalVideoInit =3D 0;=0A=
var postingAllowed =3D true;=0A=
=0A=
VideoNodeListener.prototype.handleComplete =3D function( node ) {	=0A=
	CNNPlaylistManager.getInstance().mosSlateActive =3D false;=0A=
	callControllerMethod('setEnabled', true);=0A=
	callControllerMethod('setScrubberEnabled',true);=0A=
	callControllerMethod('setDuration', =
node.getPlayableData().getDataObject().trt);=0A=
	if (CNNPlaylistManager.getInstance().playlistType =3D=3D 'bvp') {=0A=
		=
CNNPlaylistManager.getInstance().BVPMWriteContent(node.getPlayableData().=
getDataObject());=0A=
		if (node.getPlayableData().getDataObject().providedBy !=3D null) {=0A=
			document.getElementById('providedByL').innerHTML =3D '<b>Source: =
'+CNNPlaylistManager.providedResponse(node.getPlayableData().getDataObjec=
t().providedBy)+'</b>';=0A=
			document.getElementById('providedByS').innerHTML =3D '<b>Source: =
'+CNNPlaylistManager.providedResponse(node.getPlayableData().getDataObjec=
t().providedBy)+'</b>';=0A=
		}=0A=
		else {=0A=
			document.getElementById('providedByL').innerHTML =3D ''; =0A=
			document.getElementById('providedByS').innerHTML =3D ''; =0A=
		}=0A=
		if (node.getPlayableData().getDataObject().dateCreated !=3D null) {=0A=
			document.getElementById('addedOnL').innerHTML =3D '<b>Added On</b> =
'+node.getPlayableData().getDataObject().dateCreated;=0A=
			document.getElementById('addedOnS').innerHTML =3D '<b>Added On</b> =
'+node.getPlayableData().getDataObject().dateCreated;=0A=
		}=0A=
		else {=0A=
			document.getElementById('addedOnL').innerHTML =3D ''; =0A=
			document.getElementById('addedOnL').innerHTML =3D ''; =0A=
		}=0A=
		if (node.getPlayableData().getDataObject().hasComments !=3D null) {=0A=
			if (node.getPlayableData().getDataObject().hasComments =3D=3D 'yes') {=0A=
				try{document.getElementById('commentsAd').style.display =3D =
"none";}catch(e){}=0A=
				=
if(noMorePosting(node.getPlayableData().getDataObject().dateCreated)){=0A=
					document.getElementById('postACommentLink').innerHTML =3D 'This =
video is no longer available for comments, though you may read comments =
that were posted previously.';=0A=
					postingAllowed =3D false;=0A=
					//disable posting functionality=0A=
				}else{=0A=
					//enable posting functionality=0A=
					document.getElementById('postACommentLink').innerHTML =3D '<a =
href=3D"javascript:showPost();" style=3D"font-weight:bold;">Post a =
comment</a>';=0A=
					postingAllowed =3D true;=0A=
				}=0A=
				document.getElementById('commentHolder1').style.display =3D 'block';=0A=
				document.getElementById('cnnVPCHdr').style.display =3D 'block';=0A=
				document.getElementById('commentHolder2').style.display =3D 'block';=0A=
				ppp =3D =
CNNPlaylistManager.getInstance().playlists[CNNPlaylistManager.getInstance=
().activePlaylist];=0A=
				ppp =3D ppp.jsonList[ppp.pointer];=0A=
				slc =3D ppp.slice(ppp.lastIndexOf('/')+1,ppp.indexOf('.json'));=0A=
				document.commentsForm.threadName.value =3D slc;=0A=
				=
CSIManager.getInstance().call('http://'+cnnCommentDomain+'/comments/rss/r=
ssmessages.jspa','full=3Dtrue&outputType=3DJSON_BOXED&forumName=3Dbvpvide=
o&threadName=3D'+slc+'&numItems=3D50','objectid', iterateComments);	=0A=
			}=0A=
		}=0A=
	} else if (CNNPlaylistManager.getInstance().playlistType =3D=3D 'mos') {=0A=
		=
CNNPlaylistManager.getInstance().MOSContentWrite(node.getPlayableData().g=
etDataObject());=0A=
	} else if (CNNPlaylistManager.getInstance().activePlaylist =3D=3D =
'saplaylist') {=0A=
		=
CNNPlaylistManager.getInstance().SAConfiguration.updateContentHandler(nod=
e.getPlayableData().getDataObject());=0A=
	}=0A=
=0A=
	if (CNNPlaylistManager.getInstance().activePlaylist !=3D 'hottplaylist' =
&& CNNPlaylistManager.getInstance().activePlaylist !=3D 't1playlist' && =
CNNPlaylistManager.getInstance().activePlaylist !=3D 'saplaylist') {=0A=
		if (node.getPlayableData().getDataObject().isAdSensitive =3D=3D true =
|| =0A=
				CNNPlaylistManager.getInstance().forceSensitive =3D=3D true ||=0A=
				node.getPlayableData().getDataObject().trt < 45) { // we have a =
sensitive  video or a short video=0A=
			CNNPlaylistManager.getInstance().forceSensitive =3D false;=0A=
			if (CNNPlaylistManager.getInstance().sensitiveSynchDisplaying =3D=3D =
false) { // we don't already have a house ad displaying=0A=
				CNNPlaylistManager.getInstance().sensitiveSynchDisplaying =3D true;=0A=
				this.getPlayer().loadSynchUnit(node);=0A=
			}=0A=
		} else {=0A=
			if (adJustPlayed =3D=3D true) { adJustPlayed =3D false; } else {=0A=
				this.getPlayer().loadSynchUnit(node);=0A=
			}=0A=
			if (CNNPlaylistManager.getInstance().sensitiveSynchDisplaying) {=0A=
				CNNPlaylistManager.getInstance().sensitiveSynchDisplaying =3D false;=0A=
				this.getPlayer().loadSynchUnit(node);=0A=
			}=0A=
		}=0A=
	}=0A=
};=0A=
=0A=
VideoNodeListener.prototype.handleRender =3D function( node ) {=0A=
	if ("Expired" =3D=3D node.getPlayableData().getDataObject().isExpired) =
{ =0A=
		callControllerMethod('setEnabled',false);=0A=
		callControllerMethod('setTime',0);=0A=
		callControllerMethod('togglePlay',false);	=0A=
		CNNPlaylistManager.getInstance().isVideoError =3D true;=0A=
		this.getPlayer().advance();=0A=
	}=0A=
	else {=0A=
		this.getPlayer().getMediaPlayer().open( node );=0A=
	}=0A=
};=0A=
=0A=
=0A=
var tempErrorObj;=0A=
var errorOccuring =3D false;=0A=
=0A=
VideoNodeListener.prototype.handleError =3D function( node, err ) {=0A=
	if (!CNNPlaylistManager.getInstance('bvpplayer').isSmall) { =
clearComments(); }=0A=
	callControllerMethod('setEnabled',false);=0A=
        callControllerMethod('setTime',0);=0A=
        callControllerMethod('togglePlay',false);=0A=
        CNNPlaylistManager.getInstance().isVideoError =3D true;=0A=
        CNNPlaylistManager.getInstance().errorObject =3D err;=0A=
	if (CNNPlaylistManager.getInstance().playlistType =3D=3D 'bvp') {=0A=
	clearComments();=0A=
	}=0A=
};=0A=
=0A=
function handleErrorLater(){=0A=
	if (!CNNPlaylistManager.getInstance('bvpplayer').isSmall) {=0A=
       		clearComments();=0A=
                this.getPlayer().advance(); =0A=
		errorOccuring =3D false;=0A=
	}else{=0A=
		setTimeout(handleErrorLater,1000);=0A=
	}=0A=
}=0A=
=0A=
=0A=
VideoNodeListener.prototype.handleOverrideAdResources =3D function(node, =
overrideContext) {=0A=
				extra336Ad =3D new =
xmp.playlistapi.Resource('/cnn_adspaces/2.0/ros/cnn_video/video.336x280_s=
ync.ad','synch_unit',{});=0A=
        houseAd =3D new =
xmp.playlistapi.Resource('/cnn_adspaces/2.0/house/cnn_video/video.336x280=
_house.ad', 'synch_unit', {});=0A=
        if (CNNPlaylistManager.getInstance().forceSensitive =3D=3D true) =
{=0A=
                overrideContext.addResource(houseAd);=0A=
        } else {=0A=
=0A=
	if (CNNPlaylistManager.getInstance().activePlaylist !=3D 'hottplaylist' =
&& CNNPlaylistManager.getInstance().activePlaylist !=3D 't1playlist' && =
CNNPlaylistManager.getInstance().activePlaylist !=3D 'saplaylist') {=0A=
		if (node.getPlayableData().getDataObject().isAdSensitive =3D=3D true =
|| node.getPlayableData().getDataObject().trt < 45) {=0A=
			houseAd =3D new =
xmp.playlistapi.Resource('/cnn_adspaces/2.0/house/cnn_video/video.336x280=
_house.ad', 'synch_unit', {});=0A=
			overrideContext.addResource(houseAd);=0A=
		}=0A=
		else {=0A=
			overrideContext.addResource(extra336Ad);=0A=
		}=0A=
	} }=0A=
};=0A=
=0A=
function noMorePosting(theDate){=0A=
	var myMonths =3D {=0A=
		"January" : 0,=0A=
		"February" : 1,=0A=
		"March" : 2,=0A=
		"April" : 3,=0A=
		"May" : 4,=0A=
		"June" : 5,=0A=
		"July" : 6,=0A=
		"August" : 7,=0A=
		"September" : 8,=0A=
		"October" : 9,=0A=
		"November" : 10,=0A=
		"December" : 11=0A=
	}=0A=
	var theDateArray =3D theDate.split(" ");=0A=
	var theMonth =3D parseInt(myMonths[theDateArray[0]]);=0A=
	var theDate =3D parseInt(theDateArray[1].replace(/,/,""));=0A=
	var theYear =3D parseInt(theDateArray[2]);=0A=
	var theDateObj =3D new Date();=0A=
	theDateObj.setFullYear(theYear);=0A=
	theDateObj.setMonth(theMonth);=0A=
	theDateObj.setDate(theDate);=0A=
	theDateObj.setMonth(theMonth);=0A=
	var today =3D cnnCurrTime;=0A=
	var dayDifference =3D Math.round((today-theDateObj)/(1000*60*60*24));=0A=
	return (dayDifference >=3D 2);=0A=
}=0A=
=0A=
function isFirefox(){=0A=
	return (navigator.userAgent.indexOf("Firefox") > -1);=0A=
}=0A=
=0A=

------=_NextPart_000_0049_01C889C6.D6BF72A0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/video/common/playlistmanager.js

function inheritAll() {=0A=
	for (var i =3D 1; i < arguments.length; i++) {=0A=
		for (x in arguments[i].prototype) {=0A=
			arguments[0].prototype[x] =3D arguments[i].prototype[x];=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
function myPlaylistVideo(videoId,videoTab){=0A=
        this.id =3D videoId;=0A=
        this.tab =3D videoTab;=0A=
}=0A=
=0A=
function CNNPlaylistManager() {=0A=
	if (CNNPlaylistManager.caller !=3D CNNPlaylistManager.getInstance) {=0A=
		if((navigator.userAgent.indexOf('Safari')=3D=3D-1) && =
(navigator.userAgent.indexOf('Opera')=3D=3D-1)) {=0A=
			throw new Error("There is no public constructor for =
CNNPlaylistManager.");=0A=
		}=0A=
	}=0A=
	this.jsonurls =3D null;=0A=
	this.controller =3D null;=0A=
	this.tab =3D 'notab';=0A=
	this.t1PageType =3D 'Unknown T1 Page';=0A=
	this.singleUrl =3D null;=0A=
	this.noIEStorage =3D false;=0A=
	this.noCookies =3D false;=0A=
	this.forceSensitive =3D false;=0A=
	this.dataObject =3D null;=0A=
	this.cnnIsIntl =3D (location.hostname.indexOf('edition.') > -1) ? true =
: false; =0A=
	this.moscarray =3D null;=0A=
	this.startVideo =3D null;=0A=
	this.playerName =3D null;=0A=
	this.doNotResetSynchOnPreroll =3D false;=0A=
	this.skipStartSlateButLoadSynch =3D false;=0A=
	this.sensitiveSynchDisplaying =3D false;=0A=
	this.playlists =3D new Array();=0A=
	this.activePlaylist =3D null;=0A=
	this.splashActive =3D false;=0A=
	this.isSmall =3D false;=0A=
	this.playStartSlate =3D true;=0A=
	this.playlistType =3D '';=0A=
	this.mosPreloaded =3D false;=0A=
	this.runNextUpSlate =3D false;=0A=
	this.vidString =3D 'BVP';=0A=
	this.vidContext =3D 'BVP';=0A=
	this.raceCondition =3D false;=0A=
	this.nextUpSlate =3D null;=0A=
	this.endSlate =3D null;=0A=
	this.raceVideos =3D 0;=0A=
	this.raceFunction =3D null;=0A=
	this.endSlate =3D false;=0A=
	this.playingFirstVideo =3D true;=0A=
	this.mosSlateActive =3D true;=0A=
	this.slateSize =3D '576x324';=0A=
	this.onlyCallMeOnce =3D false;=0A=
	this.isVideoError =3D false;=0A=
	this.loadFirstVideo =3D null;=0A=
	this.switchToMyList =3D false;=0A=
	this.errorObject =3D null;=0A=
	this.playlist =3D function(jsonList,pointer,tabList) {=0A=
		this.jsonList =3D jsonList;=0A=
		this.tabList =3D new Array();=0A=
		if(tabList){=0A=
			this.tabList =3D tabList;=0A=
		}=0A=
		this.pointer =3D pointer;=0A=
		this.playlistJsonObjs =3D null;=0A=
		this.activeJson =3D function() { return this.jsonList[this.pointer]; }=0A=
	}=0A=
	this.testCookies =3D function() {=0A=
		document.cookie =3D 'CNNTestCookie=3Dyes; path=3D/';=0A=
		if (document.cookie.length > 0) {=0A=
			if (document.cookie.indexOf('CNNTestCookie') < 0) {=0A=
				this.noCookies =3D true;=0A=
			}=0A=
		} else { this.noCookies =3D true; }=0A=
	}=0A=
	this.advanceTo =3D function(playlistName,val) {=0A=
		if (this.noCookies =3D=3D false) {=0A=
			if (this.splashActive) {=0A=
				this.splashActive =3D false;=0A=
				=
document.getElementById('cnnVPFlashLargeContainer').style.backgroundImage=
 =3D '';=0A=
				document.getElementById('cnnVPFlashLargeContainer').innerHTML =3D '';=0A=
			}=0A=
			if (this.activePlaylist !=3D playlistName) {=0A=
				if (this.activePlaylist !=3D null && this.activePlaylist !=3D '') {=0A=
					this.unHighlight();=0A=
				}=0A=
				this.activePlaylist =3D playlistName;=0A=
				this.playlists[this.activePlaylist].pointer =3D val;=0A=
				if (this.onlyCallMeOnce =3D=3D false) {=0A=
					this.onlyCallMeOnce =3D true;=0A=
					CNNPlayer.getActivePlayer().setPlayerContext(this.vidContext);=0A=
					CNNPlayer.getActivePlayer().createPlayListContext(this.vidString);=0A=
				}=0A=
				=
CNNPlayer.getInstance('','advanceTo1').loadContent(this.playlists[this.ac=
tivePlaylist].jsonList,this.playlists[this.activePlaylist].activeJson());=0A=
			} else {=0A=
				this.playlists[this.activePlaylist].pointer =3D val;=0A=
				=
CNNPlayer.getInstance('','advanceTo2').setCurrentPlayListPosition(this.pl=
aylists[this.activePlaylist].activeJson());			=0A=
			}=0A=
			this.highlight();=0A=
			this.mosPreloaded =3D true;=0A=
		}=0A=
	}=0A=
	this.setPlaylist =3D function(playlistName,callBackFunc) {=0A=
		pt =3D this.playlists[playlistName];=0A=
		this.getPlayer().serializerFactory =3D =
xmp.baseplayer.MetaFileLoaderFactory.getInstance().create('videoContentMe=
ta');=0A=
		pt.playlistJsonObjs =3D =
this.getPlayer().serializerFactory.setIds(pt.jsonList, (new =
xmp.util.Callback('contentItemCB', CNNPlayer.playlistContentItemCB, =
null)));	=0A=
		this.getPlayer().serializerFactory.setAllLoadedCallback(new =
xmp.util.Callback('allContentItemsCB', callBackFunc, null));=0A=
		this.getPlayer().serializerFactory.load();=0A=
	}=0A=
	this.getPlayer =3D function() {=0A=
		return CNNPlayer.getInstance('','getPlayer');=0A=
	}=0A=
	this.unHighlight =3D function() {=0A=
		if (this.activePlaylist !=3D 'hottplaylist' && this.activePlaylist =
!=3D 't1playlist' && this.activePlaylist !=3D 'saplaylist') {=0A=
			ppp =3D this.playlists[this.activePlaylist];=0A=
			if (this.activePlaylist !=3D 'mosplaylist') {=0A=
				if (this.activePlaylist =3D=3D 'bvpplaylist')=0A=
					classpre =3D 'nextup_';=0A=
				else=0A=
					classpre =3D 'myup_';=0A=
				unactiveClassname =3D 'box_item';=0A=
			} else {=0A=
				classpre =3D 'mos_';=0A=
				unactiveClassname =3D 'mos_video_box';=0A=
			}=0A=
			for (var i =3D 0; i < ppp.playlistJsonObjs.length; i++) {=0A=
				document.getElementById(classpre+i).className =3D unactiveClassname;=0A=
				if (classpre =3D=3D 'myup_') {=0A=
					document.getElementById('myupgraydiv_'+i).innerHTML =3D '<a =
href=3D"javascript:CNNPlaylistManager.getInstance().MYPMRemove('+i+');"><=
img name=3D"myupgray_'+i+'" id=3D"myupgray_'+i+'" =
src=3D"http://i.l.cnn.net/cnn/video/bvp/images/close_btn.gif" =
width=3D"12" height=3D"12" alt=3D"" border=3D"0"></a>';=0A=
				}=0A=
			}=0A=
		}=0A=
	}=0A=
	this.highlight =3D function() {=0A=
		if (this.activePlaylist !=3D 'hottplaylist' && this.activePlaylist =
!=3D 't1playlist' && this.activePlaylist !=3D 'saplaylist') {=0A=
			ppp =3D this.playlists[this.activePlaylist];=0A=
			if (this.activePlaylist !=3D 'mosplaylist') {=0A=
				if (this.activePlaylist =3D=3D 'bvpplaylist')=0A=
					classpre =3D 'nextup_';=0A=
				else=0A=
					classpre =3D 'myup_';=0A=
				activeClassname =3D 'box_item_play';=0A=
			} else {=0A=
				classpre =3D 'mos_';=0A=
				activeClassname =3D 'mos_video_box_active';=0A=
			}=0A=
			this.unHighlight();=0A=
			=
document.getElementById(classpre+ppp.pointer).className=3DactiveClassname=
;=0A=
				if (classpre =3D=3D 'myup_') {=0A=
					document.getElementById('myupgraydiv_'+ppp.pointer).innerHTML =3D =
'&nbsp;';=0A=
				}=0A=
		}=0A=
	}=0A=
	this.emailLink =3D function(pl) {=0A=
		this.emailThis(this.dataObject);=0A=
	}=0A=
	this.emailCurrent =3D function(pl) {=0A=
		this.emailThis(this.dataObject);=0A=
	}=0A=
	this.emailVideo =3D function() {=0A=
		this.emailThis(this.dataObject);=0A=
	}=0A=
	this.emailThis =3D function(obj) {=0A=
		clickTitle =3D this.dataObject.headline;=0A=
		clickURL =3D =
((window.location.href.split("/"))[2])+'/video/?/'+this.dataObject.id.sli=
ce(1,this.dataObject.id.length);=0A=
		=
commonLoc=3D"&fb=3DY&url=3D"+escape(getClickURL())+"&title=3D"+escape(get=
ClickTitle())+"&random=3D"+Math.random()+"&partnerID=3D"+partnerID+"&expi=
re=3D"+escape(getClickExpire());=0A=
		ET();=0A=
	}=0A=
	this.errorMessageGenerator =3D function() {=0A=
		if (this.errorObject =3D=3D null) {=0A=
			return "Unspecified Fatal Error";=0A=
		}=0A=
		if (this.errorObject._code =3D=3D xmp.XmpErrorCodes.FATAL_PLATFORM) {=0A=
			this.errorObject =3D null;=0A=
			var str =3D 'The web browser you are using to view this video is not =
supported.  Please use one of the supported browsers:';=0A=
			if (navigator.userAgent.indexOf('Windows') > -1) {=0A=
				str +=3D '<br><b>Windows</b><br><a =
href=3D"http://www.microsoft.com/windows/products/winfamily/ie/default.ms=
px" target=3D"_blank">Microsoft Internet Explorer 6 and above</a><br>';=0A=
				str +=3D '<a href=3D"http://en.www.mozilla.com/en/firefox/" =
target=3D"_blank">Firefox 1.5 and above</a>';=0A=
			}=0A=
			if (navigator.userAgent.indexOf('Mac') > -1) {=0A=
				str +=3D '<br><b>Macintosh</b><br><a =
href=3D"http://www.apple.com/support/downloads/safariupdate201.html" =
target=3D"_blank">Safari 2.0.4 and above</a><br>';=0A=
				str +=3D '<a href=3D"http://en.www.mozilla.com/en/firefox/" =
target=3D"_blank">Firefox 1.5 and above</a>';=0A=
			}=0A=
			return str;=0A=
		}=0A=
		if (this.errorObject._code =3D=3D xmp.XmpErrorCodes.FATAL_PLUGIN) {=0A=
			str =3D ('A plugin required to play your video could not be =
located.<br><br>Please ensure the <a =
href=3D"'+this.errorObject.plugIn.downloadUrl+'" =
target=3D"_blank">'+this.errorObject.plugIn.displayName+'</a> is =
installed properly.');=0A=
			this.errorObject =3D null;=0A=
			return str;=0A=
			// plugin error=0A=
		}=0A=
		if (this.errorObject._code =3D=3D xmp.XmpErrorCodes.FATAL_PLUGIN_INIT) =
{=0A=
			this.errorObject =3D null;=0A=
			return ('The video timed out attempting to play.<br><br>Please ensure =
that you do not have any Flash Blocking plugins active.');=0A=
		}=0A=
		if (this.errorObject._code >=3D =
xmp.XmpErrorCodes.CRITICAL_UNSPECIFIED_AJAX_ERROR && =
this.errorObject._code <=3D =
xmp.XmpErrorCodes.CRITICAL_PLAYER_CONNECTION) {=0A=
			this.errorObject =3D null;=0A=
			return ('The video system was not able to establish connectivity due =
to a Proxy/Firewall or network connectivity.');=0A=
		}=0A=
	}=0A=
	this.errorSlate =3D function() {=0A=
		if (this.activePlaylist =3D=3D 'bvpplaylist' || this.activePlaylist =
=3D=3D 'myplaylist' || this.activePlaylist =3D=3D 'mosplaylist') {=0A=
			var str =3D '<div style=3D"font-family:arial, sans-serif; =
color:#838383; font-size:11px; width: 100%; height: 100%; =
background-color: #f4f4f4;"><div style=3D"padding: 138px 0px 0px 0px; =
text-align: center; width: 100%;"><font style=3D"font-size: =
22px;">'+this.errorMessageGenerator()+'</div></div>';=0A=
		} else {=0A=
			var str =3D '<div style=3D"font-family:arial, sans-serif; =
color:#838383; font-size:11px; width: 100%; height: 100%; =
background-color: #f4f4f4;"><div style=3D"padding: 5px 0px 0px 0px; =
text-align: center; width: =
100%;">'+this.errorMessageGenerator()+'</div></div>';=0A=
		}=0A=
		document.getElementById('cnnVPFlashLargeContainer').innerHTML =3D str;=0A=
	}=0A=
	this.flashDetection =3D function() {=0A=
		if (=0A=
				((window.navigator.platform.toLowerCase()).indexOf('mac') > -1 &&=0A=
				new CNN_FlashDetect().detectVersion(9)) ||=0A=
				((window.navigator.platform.toLowerCase()).indexOf('mac') < 0 &&=0A=
				new CNN_FlashDetect().detectVersion(8))) {=0A=
			return true;=0A=
		} else {=0A=
			return false;=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
CNNPlaylistManager.__instance__ =3D null; =0A=
=0A=
CNNPlaylistManager.getInstance =3D function (playerName) {=0A=
	if (this.__instance__ =3D=3D null) {=0A=
		=
inheritAll(CNNPlaylistManager,BVPPlaylistManager,MYPlaylistManager,MOSCPl=
aylistManager,HOTTPlaylistManager,T1PlaylistManager,SAPlaylistManager);=0A=
		this.__instance__ =3D new CNNPlaylistManager();=0A=
		this.__instance__.playerName =3D playerName;=0A=
		currentPlayer =3D playerName;=0A=
	}=0A=
	return this.__instance__;=0A=
}=0A=
CNNPlaylistManager.isBootStrapped =3D null;=0A=
CNNPlaylistManager.endOfVideoContent =3D =
function(advancePointerButNotContent) {=0A=
	if (CNNPlaylistManager.getInstance().switchToMyList =3D=3D false) {=0A=
		CNNPlaylistManager.getInstance().switchToMyList =3D false;=0A=
		ppp =3D =
CNNPlaylistManager.getInstance().playlists[CNNPlaylistManager.getInstance=
().activePlaylist];=0A=
		if (ppp.playlistJsonObjs.length - 1 !=3D ppp.pointer) {=0A=
			ppp.pointer++;=0A=
			CNNPlaylistManager.getInstance().highlight();=0A=
			CNNPlaylistManager.getInstance().runNextUpSlate =3D true;=0A=
		}=0A=
		CNNPlayer.getInstance('','endOfVideoContent').advance();=0A=
	} else {=0A=
		CNNPlaylistManager.getInstance().switchToMyList =3D false;=0A=
		load_Play_List('navMyPlay_List');=0A=
		CNNPlaylistManager.getInstance().advanceTo('myplaylist',0);=0A=
	}=0A=
}=0A=
CNNPlaylistManager.findImageSize =3D function(imageSizeArray, id) {=0A=
	for (var i =3D 0; i < imageSizeArray.length; i++) {=0A=
		if (imageSizeArray[i].id =3D=3D id) {=0A=
			return imageSizeArray[i].resource;=0A=
		}=0A=
	}=0A=
	return =
("http://i.l.cnn.net/cnn/.element/img/2.0/global/misc/"+id+".no.photo.gif=
");=0A=
}=0A=
CNNPlaylistManager.providedResponse =3D function(pObj) {=0A=
	var rstr =3D '';=0A=
	try {=0A=
		for (var i =3D 0; i < pObj.length; i++) {=0A=
			if (pObj[i].url !=3D null && pObj[i].url !=3D '')=0A=
				rstr +=3D '<a href=3D"'+pObj[i].url+'" =
target=3D"_blank">'+pObj[i].source+'</a>';=0A=
			else=0A=
				rstr +=3D pObj[i].source;=0A=
			if (i < pObj[i].length - 1)=0A=
				rstr +=3D ', ';=0A=
		}=0A=
	} catch(err) {}=0A=
	return rstr;=0A=
}=0A=
=0A=
function SAPlaylistManager() {}=0A=
SAPlaylistManager.prototype.SAConfiguration =3D null;=0A=
SAPlaylistManager.prototype.SALoadVideo =3D function(configuration) {=0A=
	if (this.flashDetection()) {=0A=
		this.SAConfiguration =3D configuration;=0A=
		this.jsonurls =3D this.SAConfiguration.videoArray;=0A=
		this.vidContext =3D this.SAConfiguration.vidContext;=0A=
		this.vidString =3D this.SAConfiguration.vidString;=0A=
		this.slateSize =3D =
this.SAConfiguration.slateSize[0]+"x"+this.SAConfiguration.slateSize[1];=0A=
		CNNPlaylistManager.isBootStrapped =3D SAIsBootStrapped;=0A=
		CNNPlayer.create();=0A=
	} else {=0A=
		setTimeout("CNNPlaylistManager.getInstance().SANoFlashTimer()",1000);		=0A=
	}=0A=
}=0A=
SAPlaylistManager.prototype.SABootStrapCallback =3D function(success) {=0A=
	if (success) {=0A=
		this.playlists['saplaylist'] =3D new =
this.playlist(this.jsonurls,this.SAConfiguration.startPoint);=0A=
		this.setPlaylist('saplaylist',SAPlaylistUICallback);=0A=
	} else {=0A=
		if (this.errorObject !=3D null) {=0A=
			this.SAConfiguration.bootErrorHandler(this.errorObject._code);=0A=
		} else {=0A=
			this.SAConfiguration.bootErrorHandler("General Error");=0A=
		}=0A=
	}=0A=
}=0A=
SAPlaylistManager.prototype.SAWriteSplash =3D function() {=0A=
	this.playlistType =3D 'sa';=0A=
	this.playStartSlate =3D true;=0A=
	this.dataObject =3D =
this.playlists['saplaylist'].playlistJsonObjs[this.SAConfiguration.startP=
oint].getDataObject();=0A=
	=
CNNPlaylistManager.getInstance().advanceTo('saplaylist',this.SAConfigurat=
ion.startPoint);=0A=
}=0A=
SAPlaylistManager.prototype.SANoFlashTimer =3D function() {=0A=
	this.SAConfiguration.bootErrorHandler('No Flash');=0A=
}=0A=
=0A=
function T1PlaylistManager() {}=0A=
T1PlaylistManager.prototype.T1LoadVideo =3D function(jsonurl,pageType) {=0A=
        this.singleUrl =3D jsonurl;=0A=
        if (this.flashDetection()) {=0A=
		if(pageType){=0A=
                        this.t1PageType =3D pageType;=0A=
                }else{=0A=
                        this.t1PageType =3D 'T1 - Unknown Page';=0A=
                }=0A=
                this.vidContext =3D 'CNNHomePage';=0A=
                this.vidString =3D 'CNNHomePage';=0A=
                this.slateSize =3D '256x144';=0A=
                CNNPlaylistManager.isBootStrapped =3D T1IsBootStrapped;=0A=
                CNNPlayer.create();=0A=
        } else {=0A=
                =
setTimeout("CNNPlaylistManager.getInstance().T1NoFlashTimer()",1000);=0A=
        }=0A=
}=0A=
T1PlaylistManager.prototype.T1NoFlashTimer =3D function() {=0A=
	document.getElementById('cnnVPFlashLargeContainer').innerHTML =3D '<div =
style=3D"font-family:arial, sans-serif; color:#838383; font-size:11px; =
width: 100%; height: 100%; background-color: #f4f4f4;"><div =
style=3D"padding: 5px 0px 0px 0px; text-align: center; width: =
100%;">This CNN.com feature is optimized for<br>Adobe Flash Player =
version '+(((window.navigator.platform.toLowerCase()).indexOf('mac') > =
-1) ? '9' : '8')+' or higher.<br><a =
href=3D"http://www.adobe.com/go/getflashplayer" target=3D"blank"><img =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/noflash/install_btn=
.gif" class=3D"cnnGetBtn" width=3D"155" height=3D"31" alt=3D"Get Flash =
Player" border=3D"0"></a></div></div>';		=0A=
}=0A=
T1PlaylistManager.prototype.T1BootStrapCallback =3D function() {=0A=
		this.playlists['t1playlist'] =3D new this.playlist(new =
Array(this.singleUrl),0);=0A=
		var so =3Dnew SWFObject("/video/xmp/MediaControls.swf", =
"mediacontrols" , "256", "51", 8, "#FFFFFF", true);=0A=
		so.addParam("allowscriptAccess", "always");=0A=
		so.addVariable("FLASHVAR_eventHandler", =
"CNNPlayer.getActivePlayer().handleEvent");		=0A=
		so.addVariable("FLASHVAR_layout", "SCRUBBER_ABOVE");=0A=
		so.write("t1ControlsContainer");=0A=
		this.setPlaylist('t1playlist',T1PlaylistUICallback);=0A=
}=0A=
T1PlaylistManager.prototype.T1WriteSplash =3D function() {=0A=
	this.playlistType =3D 't1';=0A=
	this.playStartSlate =3D true;=0A=
	this.dataObject =3D =
this.playlists['t1playlist'].playlistJsonObjs[0].getDataObject();=0A=
	callControllerMethod('setEmailEnabled',true);=0A=
	CNNPlaylistManager.getInstance().advanceTo('t1playlist',0);=0A=
}=0A=
=0A=
function HOTTPlaylistManager() {}=0A=
HOTTPlaylistManager.prototype.HOTTLoadVideo =3D function(jsonurl) {=0A=
	this.singleUrl =3D jsonurl;=0A=
	if (this.flashDetection()) {=0A=
		if (this.cnnIsIntl) {=0A=
//			=
xmp.util.SettingsManager.getInstance().getGlobalContextNode().getNodeForP=
ath("rootUrlMap/adMan")._map["rootUrl"] =3D "http://edition.cnn.com";=0A=
		}=0A=
		this.vidContext =3D 'CNNHotTopic';=0A=
		this.vidString =3D 'CNNHotTopic';=0A=
		this.slateSize =3D '384x216';=0A=
		CNNPlaylistManager.isBootStrapped =3D HOTTIsBootStrapped;=0A=
		CNNPlayer.create();		=0A=
	} else {=0A=
		setTimeout("CNNPlaylistManager.getInstance().HOTTNoFlashTimer()",1000);=0A=
	}=0A=
}=0A=
HOTTPlaylistManager.prototype.HOTTBootStrapCallback =3D function() {=0A=
		this.playlists['hottplaylist'] =3D new this.playlist(new =
Array(this.singleUrl),0);=0A=
		var so =3Dnew SWFObject("/video/xmp/MediaControls.swf", =
"mediacontrols" , "384", "47", 8, "#FFFFFF", true);=0A=
		so.addParam("allowscriptAccess", "always");=0A=
		so.addVariable("FLASHVAR_eventHandler", =
"CNNPlayer.getActivePlayer().handleEvent");		=0A=
		so.addVariable("FLASHVAR_layout", "SCRUBBER_ABOVE");=0A=
		so.write("htControlsContainer");=0A=
		this.setPlaylist('hottplaylist',HOTTPlaylistUICallback);=0A=
}=0A=
HOTTPlaylistManager.prototype.HOTTNoFlashTimer =3D function() {=0A=
	document.getElementById('cnnVPFlashLargeContainer').innerHTML =3D '<div =
style=3D"font-family:arial, sans-serif; color:#838383; font-size:11px; =
width: 100%; height: 100%; background-color: #f4f4f4;"><div =
style=3D"padding: 5px 0px 0px 0px; text-align: center; width: =
100%;">This CNN.com feature is optimized for<br>Adobe Flash Player =
version '+(((window.navigator.platform.toLowerCase()).indexOf('mac') > =
-1) ? '9' : '8')+' or higher.<br><a =
href=3D"http://www.adobe.com/go/getflashplayer" target=3D"blank"><img =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/noflash/install_btn=
.gif" class=3D"cnnGetBtn" width=3D"155" height=3D"31" alt=3D"Get Flash =
Player" border=3D"0"></a></div></div>';		=0A=
}=0A=
HOTTPlaylistManager.prototype.HOTTWriteSplash =3D function() {=0A=
	this.playlistType =3D 'hott';=0A=
	this.playStartSlate =3D true;=0A=
	=
this.HOTTContentWrite(this.playlists['hottplaylist'].playlistJsonObjs[0].=
getDataObject());=0A=
	CNNPlaylistManager.getInstance().advanceTo('hottplaylist',0);=0A=
}=0A=
HOTTPlaylistManager.prototype.HOTTContentWrite =3D function(obj) {=0A=
	this.dataObject =3D obj;=0A=
	callControllerMethod('setEmailEnabled',true);=0A=
	str =3D '';=0A=
	if (obj =3D=3D null) {=0A=
		str +=3D '<div class=3D"cnnHtVidBoxHead"></div><div =
class=3D"cnnHtVidBoxCourtesy"><img =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/icons/video_icon.gi=
f" width=3D"16" height=3D"10" border=3D"0" alt=3D"" =
class=3D"cnnVidIcon"> <a href=3D"http://www.cnn.com/video/"><b>CNN VIDEO =
&#187;</b></a></div>';=0A=
	} else {=0A=
		str +=3D '<div class=3D"cnnHtVidBoxHead">'+((obj.headline !=3D null) ? =
obj.headline : '')+' <span class=3D"cnnHtVidTime">'+((obj.trt !=3D null) =
? (CNNPlayer.secondsIntoMinutes(obj.trt)) : =
'')+'</span></div><p>'+((obj.description !=3D null) ? obj.description : =
'')+'</p><div class=3D"cnnHtVidBoxCourtesy"><b>'+((obj.providedBy !=3D =
null) ? ('Source: ' + =
CNNPlaylistManager.providedResponse(obj.providedBy)) : =
'')+'</b><br>'+((obj.dateCreated !=3D null) ? ('<b>Added</b> =
'+obj.dateCreated) : '')+'<br><br><img =
src=3D"http://i.l.cnn.net/cnn/.element/img/2.0/global/icons/video_icon.gi=
f" width=3D"16" height=3D"10" border=3D"0" alt=3D"" =
class=3D"cnnVidIcon"> <a href=3D"http://www.cnn.com/video"><b>CNN VIDEO =
&#187;</b></a></div>';=0A=
	}=0A=
	document.getElementById('cnnHtVideoTextContent').innerHTML =3D str;=0A=
}=0A=
=0A=
=0A=
function MOSCPlaylistManager() {}=0A=
MOSCPlaylistManager.prototype.MOSCIEBannerAd =3D null;=0A=
MOSCPlaylistManager.prototype.MOSCBannerAdWrite =3D =
function(cnnad_url,adId) {=0A=
	this.MOSCIEBannerAd =3D cnnad_url;=0A=
	if (document.getElementById('cnnDefault336Space') !=3D null) =0A=
		childrenNodes =3D =
document.getElementById('cnnDefault336Space').childNodes;=0A=
	else=0A=
		childrenNodes =3D document.getElementById('adHolder').childNodes;=0A=
	var wroteIt =3D false;=0A=
	for (var i =3D 0; i < childrenNodes.length; i++) {=0A=
		if (childrenNodes[i].id !=3D null && =
childrenNodes[i].id.indexOf('ad-') =3D=3D 0) {=0A=
			wroteIt =3D true;=0A=
  		bannerDiv =3D document.getElementById(childrenNodes[i].id);=0A=
   		iframeId =3D bannerDiv.id.slice(3);=0A=
			for (var j =3D 0; j < window.frames.length; j++) {=0A=
    		try {=0A=
					if (window.frames[j].location.href.indexOf('domId=3D'+iframeId) > =
-1) {=0A=
						window.frames[j].location.replace( cnnad_url + '&domId=3D' + =
iframeId);=0A=
   					break;=0A=
					}=0A=
    		} catch(err) {}=0A=
    	}=0A=
    break;=0A=
		}=0A=
	}=0A=
	if (wroteIt =3D=3D false) {=0A=
		var iFrameHTML =3D '<iframe hspace=3D"0" vspace=3D"0" =
marginHeight=3D"0" marginWidth=3D"0" src=3D"' + cnnad_url + =
'&page.allowcompete=3Dyes&domId=3D' + adId + '" border=3D"0" =
frameBorder=3D"0" height=3D"0" width=3D"0" scrolling=3D"no"  =
id=3D"'+adId+'" style=3D"position: absolute; visibility: hidden;" =
></iframe>';=0A=
		document.getElementById('cnnDefault336Space').innerHTML =3D iFrameHTML;=0A=
	}=0A=
}=0A=
MOSCPlaylistManager.prototype.MOSUnload =3D function() {=0A=
	if (this.flashDetection()) {=0A=
		if (document.all) {=0A=
			if (!this.mosSlateActive) {=0A=
				CNNPlayer.getInstance('','Mosaic Unload').pause();=0A=
			}=0A=
		}=0A=
		else {=0A=
			if (this.mosSlateActive =3D=3D false)=0A=
				CNNPlayer.getInstance('','Mosaic Unload FF').getMediaPlayer().stop();=0A=
			CNNPlayer.getInstance('','Mosaic Unload 2').fini();=0A=
			this.unHighlight();=0A=
			this.activePlaylist =3D null;=0A=
			document.getElementById('cnnVPFlashLargeContainer').innerHTML =3D '';=0A=
			document.getElementById('controlsContainerReal').innerHTML =3D '';=0A=
			$('fullScreenContainer').style.display =3D 'none';=0A=
			$('fullScreenDoubleClick').style.display =3D 'none';=0A=
			$('fullScreenUpgrade').style.display =3D 'none';=0A=
		}=0A=
	}=0A=
}=0A=
MOSCPlaylistManager.prototype.MOSCLoadFromArray =3D =
function(ar,startVid) {=0A=
	this.moscarray =3D ar;=0A=
	if(startVid !=3D ""){=0A=
		if(this.startVideo !=3D startVid){=0A=
			this.startVideo =3D startVid;=0A=
		}=0A=
	}=0A=
	this.testCookies();=0A=
	setTimeout("CNNPlaylistManager.getInstance().MOSCFlashTimer()",1000);=0A=
}=0A=
MOSCPlaylistManager.prototype.MOSCFlashTimer =3D function() {=0A=
	var ar =3D this.moscarray;=0A=
	if (this.noCookies =3D=3D true) {=0A=
		=
setTimeout("CNNPlaylistManager.getInstance().MOSCNoCookieTimer()",1000);=0A=
	} else if (this.flashDetection()) {=0A=
		if (this.cnnIsIntl) {=0A=
//			=
xmp.util.SettingsManager.getInstance().getGlobalContextNode().getNodeForP=
ath("rootUrlMap/adMan")._map["rootUrl"] =3D "http://edition.cnn.com";=0A=
		}=0A=
		vidString =3D 'VideoDefault';=0A=
		this.slateSize =3D '576x324';=0A=
		if (cnnDefaultTab =3D=3D null || cnnDefaultTab !=3D 'cnnSTCVideo')=0A=
			vidString =3D 'VideoNonDefault';=0A=
		if (typeof videoJsonUrls !=3D "undefined") {=0A=
			if (videoJsonUrls.length < 2) {=0A=
				vidString =3D 'CNNMosaicSingle'+vidString;=0A=
			} else {=0A=
				vidString =3D 'CNNMosaicMulti'+vidString;=0A=
			}=0A=
		}=0A=
		if(this.startVideo =3D=3D null){=0A=
			this.vidString =3D vidString;=0A=
		}else{=0A=
			this.vidString =3D 'CNNMosaicMultiVideoNonDefault';=0A=
		}=0A=
		this.vidContext =3D 'CNNMosaic';=0A=
		if (document.all) {=0A=
			if (this.mosPreloaded =3D=3D false) {=0A=
				CNNPlaylistManager.isBootStrapped =3D MOSCIsBootStrapped;=0A=
				CNNPlayer.create();		=0A=
			} else {=0A=
				if (this.MOSCIEBannerAd !=3D null) { =
this.MOSCBannerAdWrite(this.MOSCIEBannerAd); }=0A=
				if (!this.mosSlateActive) {=0A=
					CNNPlayer.getInstance('','Mosaic Flash Timer').play();=0A=
				}=0A=
			}=0A=
		}=0A=
		else {=0A=
			if (this.mosPreloaded =3D=3D false) {=0A=
				CNNPlaylistManager.isBootStrapped =3D MOSCIsBootStrapped;=0A=
				CNNPlayer.create();		=0A=
			} else {=0A=
				this.onlyCallMeOnce =3D false;=0A=
				CNNPlaylistManager.getInstance().MOSCWritePlaylistUI();=0A=
				CNNPlaylistManager.getInstance().MOSCWriteSplash();=0A=
			}=0A=
		}=0A=
	} else {=0A=
		setTimeout("CNNPlaylistManager.getInstance().MOSCNoFlashTimer()",1000);=0A=
	}=0A=
}=0A=
MOSCPlaylistManager.prototype.MOSCBootStrapCallback =3D function() {=0A=
	var ar =3D this.moscarray;=0A=
	if (document.all) {=0A=
		this.mosPreloaded =3D true;=0A=
		this.playlists['mosplaylist'] =3D new this.playlist(ar,0);=0A=
		this.setPlaylist('mosplaylist',MOSCPlaylistUICallback);=0A=
	} else {=0A=
		this.playlists['mosplaylist'] =3D new this.playlist(ar,0);=0A=
		this.setPlaylist('mosplaylist',MOSCPlaylistUICallback);=0A=
	}=0A=
}=0A=
MOSCPlaylistManager.prototype.MOSCNoFlashTimer =3D function() {=0A=
	document.getElementById('cnnVPFlashLargeContainer').innerHTML =3D "<div =
class=3D\"cnnNoFlashContainer\"><div class=3D\"cnnNoFlash\"><p =
class=3D\"cnnTopGraf\">This CNN.com feature is optimized for Adobe Flash =
Player version =
"+(((window.navigator.platform.toLowerCase()).indexOf('mac') > -1) ? '9' =
: '8')+" or higher.<\/p><p><b>You are currently using Flash Player " + =
parseInt(CNN_FlashDetect.prototype.getVersion()) + "<\/b><\/p><a =
href=3D\"http://www.adobe.com/go/getflashplayer\" =
target=3D\"blank\"><img =
src=3D\"http://i.l.cnn.net/cnn/.element/img/2.0/global/noflash/install_bt=
n.gif\" class=3D\"cnnGetBtn\" width=3D\"155\" height=3D\"31\" =
alt=3D\"Get Flash Player\" border=3D\"0\"><\/a><\/div><\/div>";	=0A=
}=0A=
MOSCPlaylistManager.prototype.MOSCNoCookieTimer =3D function() {=0A=
	document.getElementById('cnnVPFlashLargeContainer').innerHTML =3D "<div =
style=3D\"width:576px;height:324px;position:relative;background:#f4f4f4;\=
"><div =
style=3D\"position:absolute;top:50px;left:88px;width:400px;height:200px;b=
ackground:#f4f4f4;font-family:arial, =
sans-serif;color:#838383;font-size:11px;\"><p style=3D\"margin:15px 33px =
12px 33px;text-align:center;\"><b>COOKIES DISABLED</b><br><br>Please =
enable cookies to view CNN videos.<\/div><\/div>";	=0A=
}=0A=
MOSCPlaylistManager.prototype.MOSCWritePlaylistUI =3D function() {=0A=
	tempStr =3D '<div><img src=3D"http://i.l.cnn.net/cnn/images/1.gif" =
width=3D"1" height=3D"6" border=3D"0" alt=3D""></div>';=0A=
	playList =3D this.playlists['mosplaylist'].playlistJsonObjs;=0A=
	if (playList.length < 2) {=0A=
		document.getElementById('mosVidPlayList').style.display =3D 'none';=0A=
	}=0A=
	if (playList !=3D null) {=0A=
		rowCounter =3D 0;=0A=
		for (var i =3D 0; i < playList.length; i++) {=0A=
			if (i =3D=3D 0 )=0A=
				tempStr +=3D '<div class=3D"mos_video_box_active" id=3D"mos_'+i+'">';=0A=
			else=0A=
				tempStr +=3D '<div class=3D"mos_video_box" id=3D"mos_'+i+'">';=0A=
			tempStr +=3D '<div class=3D"mos_tz_image"><img src=3D"' + =
CNNPlaylistManager.findImageSize(playList[i].getDataObject().images,"44x2=
5")+'" width=3D"45" height=3D"25" alt=3D"" border=3D"0"></div>';=0A=
			tempStr +=3D '<a href=3D"#" =
onclick=3D"CNNPlaylistManager.getInstance().advanceTo(\'mosplaylist\','+i=
+'); return =
false;"><b>'+playList[i].getDataObject().headline+'</b></a><br>'+CNNPlaye=
r.secondsIntoMinutes(playList[i].getDataObject().trt);=0A=
			tempStr +=3D '</div>';=0A=
			rowCounter++;=0A=
			if (rowCounter =3D=3D 3) { tempStr +=3D '<div =
class=3D"clear"></div>'; rowCounter =3D 0; }=0A=
		}=0A=
		tempStr +=3D '<div class=3D"clear"><img =
src=3D"http://i.l.cnn.net/cnn/images/1.gif" width=3D"1" height=3D"6" =
border=3D"0" alt=3D""></div>';=0A=
=0A=
		document.getElementById('mosVidPlayList').innerHTML =3D tempStr;=0A=
	}=0A=
	var so =3Dnew =
SWFObject("http://i.cdn.turner.com/cnn/video/xmp/MediaControls.swf", =
"mediacontrols" , "500", "33", 8, "#FFFFFF", true);=0A=
	so.addParam("wmode","transparent");=0A=
	so.addParam("allowscriptAccess", "always");=0A=
	so.addVariable("FLASHVAR_eventHandler", =
"CNNPlayer.getActivePlayer().handleEvent");		=0A=
	so.write("controlsContainerReal");   	=0A=
	$('fullScreenContainer').style.display =3D 'block';			=0A=
}=0A=
MOSCPlaylistManager.prototype.MOSCWriteSplash =3D function() {=0A=
	this.playlistType =3D 'mos';=0A=
	this.playStartSlate =3D true;=0A=
	var startIndex =3D 0;=0A=
	if(this.startVideo !=3D null){=0A=
		var foundIt =3D false;=0A=
		var videoArray =3D this.playlists['mosplaylist'].playlistJsonObjs;=0A=
		for(var i =3D 0; i<videoArray.length && !foundIt; i++){=0A=
			if(videoArray[i].getDataObject().location =3D=3D this.startVideo || =
videoArray[i].getDataObject().id =3D=3D this.startVideo){=0A=
				foundIt =3D true;=0A=
				startIndex =3D i;=0A=
			}=0A=
		}=0A=
	}=0A=
	=
this.MOSContentWrite(this.playlists['mosplaylist'].playlistJsonObjs[start=
Index].getDataObject());=0A=
	CNNPlaylistManager.getInstance().advanceTo('mosplaylist',startIndex);=0A=
	this.startVideo =3D null;=0A=
}=0A=
MOSCPlaylistManager.prototype.MOSContentWrite =3D function(obj) {=0A=
	this.dataObject =3D obj;=0A=
	callControllerMethod('setEmailEnabled',true);=0A=
	str =3D '';=0A=
	if (obj =3D=3D null) {=0A=
		str +=3D '<b style=3D"font-size:12px;"></b> <span =
style=3D"color:#9b9b9b;"><span><br><br><br =
style=3D"line-height:5px;"><b></b> &nbsp;&nbsp;';=0A=
	} else {=0A=
		str +=3D '<b style=3D"font-size:12px;">'+((obj.headline !=3D null) ? =
obj.headline : '')+'</b> <span style=3D"color:#9b9b9b;">'+((obj.trt !=3D =
null) ? (CNNPlayer.secondsIntoMinutes(obj.trt)) : =
'')+'</span><br>'+((obj.description !=3D null) ? obj.description : =
'')+'<br>';=0A=
		str +=3D '<div style=3D"color:#CA0002;">'=0A=
		if (obj.relateds !=3D null) {=0A=
			for (var i =3D 0; i < obj.relateds.length; i++) {=0A=
				str +=3D '&#8226; <a =
href=3D"'+obj.relateds[i].url+'">'+obj.relateds[i].headline+'</a><br>';=0A=
			}=0A=
		}=0A=
		str +=3D '</div>';=0A=
		str +=3D '<br style=3D"line-height:5px;">'+((obj.providedBy !=3D null =
&& obj.dateCreated !=3D null) ? '<b>'+((obj.providedBy !=3D null) ? =
('Source: ' + CNNPlaylistManager.providedResponse(obj.providedBy)) : =
'')+'</b> &nbsp;<span style=3D"color:#9b9b9b;">|</span>&nbsp; =
'+((obj.dateCreated !=3D null) ? ('<b>Added</b> '+obj.dateCreated) : '') =
: '');		=0A=
	}=0A=
	document.getElementById('mosVidDesc').innerHTML =3D str;=0A=
}=0A=
=0A=
=0A=
=0A=
=0A=
function BVPPlaylistManager() {}=0A=
BVPPlaylistManager.prototype.BVPMNumVidsInList =3D 12;=0A=
BVPPlaylistManager.prototype.BVPMVideoSelected =3D =
function(videoId,section) {=0A=
	if (this.noCookies =3D=3D false) {=0A=
		this.switchToMyList =3D false;=0A=
		load_Play_List('navNext_Up');=0A=
		if (this.splashActive) {=0A=
			this.splashActive =3D false;=0A=
			=
document.getElementById('cnnVPFlashLargeContainer').style.backgroundImage=
 =3D '';=0A=
			document.getElementById('cnnVPFlashLargeContainer').innerHTML =3D '';=0A=
		}=0A=
		CNNPlaylistManager.getInstance().activePlaylist =3D null;=0A=
		tempArray =3D new Array();=0A=
		var l =3D cnnSectionData[section].length;=0A=
		for (var i =3D 0; i < l; i++) {=0A=
			if (cnnSectionData[section][i] =3D=3D videoId) {=0A=
				tempArray =3D this.BVPMGeneratePlaylistFromStart(i,section);=0A=
				break;=0A=
			}=0A=
		}=0A=
		this.playlists['bvpplaylist'] =3D new this.playlist(tempArray,0);=0A=
		this.setPlaylist('bvpplaylist',BVPPlaylistUICallback);=0A=
	}=0A=
}=0A=
BVPPlaylistManager.prototype.BVPMGeneratePlaylistFromStart =3D =
function(startPointer,section) {=0A=
	listSize =3D this.BVPMNumVidsInList;=0A=
	if (listSize > cnnSectionData[section].length) { listSize =3D =
cnnSectionData[section].length; }=0A=
	tempList =3D new Array();=0A=
	tempList[tempList.length] =3D cnnSectionData[section][startPointer++];=0A=
	while (tempList.length < listSize) {=0A=
		if (startPointer =3D=3D cnnSectionData[section].length) { startPointer =
=3D 0; }=0A=
		tempList[tempList.length] =3D cnnSectionData[section][startPointer++];=0A=
	}=0A=
	if (this.loadFirstVideo !=3D null) {=0A=
		this.playStartSlate =3D false;=0A=
		var foundIt =3D -1;=0A=
		for (var i =3D 0;i < tempList.length; i++) {=0A=
			if (tempList[i] =3D=3D this.loadFirstVideo) {=0A=
				foundIt =3D i;=0A=
			}=0A=
		}=0A=
		if (foundIt < 0) {=0A=
			tempList.pop();=0A=
		} else {=0A=
			tempList.splice(foundIt,1);=0A=
		}=0A=
		tempList.unshift(this.loadFirstVideo);=0A=
		this.loadFirstVideo =3D null;=0A=
	}=0A=
	this.tab =3D currSectionNav;=0A=
	return tempList;=0A=
}=0A=
BVPPlaylistManager.prototype.BVPMLoadSingleVideo =3D function(jsonURL) {=0A=
	this.playStartSlate =3D false;=0A=
	this.skipStartSlateButLoadSynch =3D true;=0A=
	this.playlists['bvpplaylist'] =3D new this.playlist(new =
Array(jsonURL),0);=0A=
	this.setPlaylist('bvpplaylist',BVPPlaylistUICallbackFromStart);=0A=
}=0A=
BVPPlaylistManager.prototype.BVPMWritePlaylistUI =3D function() {=0A=
	tempStr =3D '';=0A=
	playList =3D this.playlists['bvpplaylist'].playlistJsonObjs;=0A=
	if (playList !=3D null) {=0A=
		for (var i =3D 0; i < playList.length; i++) {=0A=
			tempStr +=3D '<div class=3D"box_item" id=3D"nextup_' + i + '"><a =
href=3D"#" =
onclick=3D"CNNPlaylistManager.getInstance().advanceTo(\'bvpplaylist\','+i=
+'); return false;"><img src=3D"' + =
CNNPlaylistManager.findImageSize(playList[i].getDataObject().images,"44x2=
5");=0A=
			tempStr +=3D '" width=3D"45';=0A=
			tempStr +=3D '" height=3D"25';=0A=
			tempStr +=3D '" border=3D"0" alt=3D"" /></a><a href=3D"#" =
onclick=3D"CNNPlaylistManager.getInstance().advanceTo(\'bvpplaylist\','+i=
+'); return false;">' + playList[i].getDataObject().headline;=0A=
			tempStr +=3D '</a> <span class=3D"duration">' + =
CNNPlayer.secondsIntoMinutes(playList[i].getDataObject().trt);=0A=
			tempStr +=3D '</span></div>'=0A=
		}=0A=
		WTPO_writeToLayer(tempStr, "Play_Box");=0A=
	}=0A=
	else {=0A=
		tempStr =3D '<div id=3D"nextup_0" =
style=3D"text-align:center;margin-top:40px;color:#949494;"><b>There are =
no videos in your playlist.<br>Please make your selections =
below.</b></div>';=0A=
		WTPO_writeToLayer(tempStr, "Play_Box");=0A=
	}=0A=
}=0A=
BVPPlaylistManager.prototype.BVPMGetSplashPlaylist =3D function(sec) {=0A=
	this.playlists['bvpplaylist'] =3D new =
this.playlist(this.BVPMGeneratePlaylistFromStart(((sec =3D=3D =
'top_stories') ? 1 : 0),sec),0);=0A=
	this.setPlaylist('bvpplaylist',BVPPlaylistUICallbackFromStart);=0A=
}=0A=
BVPPlaylistManager.prototype.BVPMWriteSplash =3D function() {=0A=
	this.playlistType =3D 'bvp';=0A=
	if (this.noCookies =3D=3D false) {=0A=
		CNNPlaylistManager.getInstance().advanceTo('bvpplaylist',0);=0A=
		=
this.BVPMWriteContent(this.playlists['bvpplaylist'].playlistJsonObjs[0].g=
etDataObject());=0A=
		if =
(this.playlists['bvpplaylist'].playlistJsonObjs[0].getDataObject().provid=
edBy !=3D null) {=0A=
			document.getElementById('providedByL').innerHTML =3D '<b>Source: =
'+CNNPlaylistManager.providedResponse(this.playlists['bvpplaylist'].playl=
istJsonObjs[0].getDataObject().providedBy)+'</b>';=0A=
			document.getElementById('providedByS').innerHTML =3D '<b>Source: =
'+CNNPlaylistManager.providedResponse(this.playlists['bvpplaylist'].playl=
istJsonObjs[0].getDataObject().providedBy)+'</b>';=0A=
		}=0A=
		else {=0A=
			document.getElementById('providedByL').innerHTML =3D ''; =0A=
			document.getElementById('providedByS').innerHTML =3D ''; =0A=
		}=0A=
		if =
(this.playlists['bvpplaylist'].playlistJsonObjs[0].getDataObject().dateCr=
eated !=3D null) {=0A=
			document.getElementById('addedOnL').innerHTML =3D '<b>Added On</b> =
'+this.playlists['bvpplaylist'].playlistJsonObjs[0].getDataObject().dateC=
reated;=0A=
			document.getElementById('addedOnS').innerHTML =3D '<b>Added On</b> =
'+this.playlists['bvpplaylist'].playlistJsonObjs[0].getDataObject().dateC=
reated;=0A=
		}=0A=
		else {=0A=
			document.getElementById('addedOnL').innerHTML =3D ''; =0A=
			document.getElementById('addedOnS').innerHTML =3D ''; =0A=
		}=0A=
	} else {=0A=
		document.getElementById('cnnVPFlashLargeContainer').innerHTML =3D =
"<div class=3D\"cnnVideoMessageContainer\"><div =
class=3D\"cnnVideoMessage\"><p class=3D\"cnnTopGraf\"><b>COOKIES =
DISABLED</b><br><br>Please enable cookies to view CNN =
videos.<\/div><\/div>";=0A=
	}=0A=
}=0A=
BVPPlaylistManager.prototype.BVPMStartFromSplash =3D function() {=0A=
	this.splashActive =3D false;=0A=
	=
document.getElementById('cnnVPFlashLargeContainer').style.backgroundImage=
 =3D '';=0A=
	document.getElementById('cnnVPFlashLargeContainer').innerHTML =3D '';=0A=
	=
CNNPlaylistManager.getInstance().BVPMVideoSelected(cnnSectionData['top_st=
ories'][0],'top_stories');=0A=
}=0A=
BVPPlaylistManager.prototype.BVPMWriteContent =3D function(obj) {=0A=
	this.dataObject =3D obj;=0A=
	callControllerMethod('setEmailEnabled',true);=0A=
	if (obj !=3D null) {=0A=
		str =3D '<div class=3D"bvp_deschead"><b>'+((obj.headline !=3D null) ? =
obj.headline : '')+'</b> <span class=3D"bvp_desctrt">'+((obj.trt !=3D =
null) ? CNNPlayer.secondsIntoMinutes(obj.trt) : '')+'</span></div>';=0A=
		str +=3D '<div class=3D"bvp_desctext">'+((obj.description !=3D null) ? =
obj.description : '');=0A=
		str +=3D '<div class=3D"bvp_desclinks">'=0A=
		if (obj.relateds !=3D null) {=0A=
			for (var i =3D 0; i < obj.relateds.length; i++) {=0A=
				str +=3D '<b>&#8226;</b> <a =
href=3D"'+obj.relateds[i].url+'">'+obj.relateds[i].headline+'</a><br>';=0A=
			}=0A=
		}=0A=
		str +=3D '</div>';=0A=
		str +=3D '</div>';=0A=
		document.getElementById('contentL').innerHTML =3D str;=0A=
		document.getElementById('contentS').innerHTML =3D str;=0A=
	} else {=0A=
		document.getElementById('contentL').innerHTML =3D '';=0A=
		document.getElementById('contentS').innerHTML =3D '';=0A=
	}=0A=
}=0A=
=0A=
function MYPlaylistManager() {}=0A=
MYPlaylistManager.prototype.MYPMStorage =3D null;=0A=
MYPlaylistManager.prototype.MYPMLoadFromStorage =3D function() {=0A=
	this.playlistType =3D 'bvp';=0A=
	=0A=
	if (document.all) {=0A=
		try {=0A=
			document.getElementById('dataInstanceTest').load('IEStorageTest');=0A=
		} catch(err) {=0A=
			this.noIEStorage =3D true;=0A=
		}=0A=
	}=0A=
	=0A=
	this.testCookies();=0A=
	try{=0A=
	if (this.noIEStorage =3D=3D false && this.noCookies =3D=3D false) {=0A=
		this.MYPMStorage =3D StorageManager.getInstance().getStorage();=0A=
		this.MYPMStorage.setOnload( MYPlaylistDataIsLoaded );=0A=
		this.MYPMStorage.load();=0A=
	} else {=0A=
		this.playlists['myplaylist'] =3D new this.playlist(new Array(),0);=0A=
		loadFirstSection(); =0A=
		this.MYPMWritePlaylistUI();=0A=
	}=0A=
	}catch(e){}=0A=
}=0A=
MYPlaylistManager.prototype.getCurrentVideoTab =3D function() {=0A=
	return =
this.playlists['myplaylist'].tabList[this.playlists['myplaylist'].pointer=
];=0A=
}=0A=
MYPlaylistManager.prototype.MYPMSaveToStorage =3D function() {=0A=
	if (this.MYPMStorage =3D=3D null) {=0A=
		this.MYPMStorage =3D StorageManager.getInstance().getStorage();=0A=
	}=0A=
	for (var i =3D 0; i < this.playlists['myplaylist'].jsonList.length; =
i++) {=0A=
		if =
(this.MYPMStorage.contains(this.playlists['myplaylist'].jsonList[i]) =
=3D=3D false) {=0A=
			var currentVideo =3D new =
myPlaylistVideo(this.playlists['myplaylist'].jsonList[i],this.playlists['=
myplaylist'].tabList[i]);=0A=
			storageRet =3D =
this.MYPMStorage.put(this.playlists['myplaylist'].jsonList[i],currentVide=
o,new Date(new Date().getTime() + 3*24*3600000 ));=0A=
			//storageRet =3D =
this.MYPMStorage.put(this.playlists['myplaylist'].jsonList[i],this.playli=
sts['myplaylist'].jsonList[i],new Date(new Date().getTime() + =
3*24*3600000 ));=0A=
		}=0A=
	}=0A=
	this.MYPMStorage.save();=0A=
}=0A=
MYPlaylistManager.prototype.MYPMAddToPlaylist =3D function(val) {=0A=
	if (this.MYPMStorage.contains(val) =3D=3D false && =
this.playlists['myplaylist'].jsonList.length < 15) {=0A=
		this.playlists['myplaylist'].jsonList.push(val);=0A=
		this.playlists['myplaylist'].tabList.push(currSectionNav);=0A=
		if (CNNPlaylistManager.getInstance().activePlaylist =3D=3D =
'myplaylist') {=0A=
			CNNPlayer.getInstance('','MYPMAddToPlaylist').appendToPlayList(val);=0A=
		} else { =0A=
			this.switchToMyList =3D true; =0A=
		}=0A=
		o =3D 0;=0A=
		this.setPlaylist('myplaylist',MYPlaylistUICallbackFromAppend);=0A=
		try{=0A=
		this.MYPMSaveToStorage();=0A=
		}catch(e){}=0A=
		//document.getElementById(val.slice(val.lastIndexOf('/')+1)).innerHTML =
=3D 'in playlist';=0A=
		makePlaylistAdderUnclickable(val);		=0A=
		load_Play_List('navMyPlay_List');=0A=
	}=0A=
}=0A=
MYPlaylistManager.prototype.MYPMDataLoadedCB =3D function() {=0A=
	tempJsonArray =3D new Array();=0A=
	tempTabArray =3D new Array();=0A=
	for (var i =3D 0; i < this.MYPMStorage.allKeys.length; i++) {=0A=
		if (this.MYPMStorage.allKeys[i].indexOf('.json') > -1) {=0A=
			var thisObj =3D =
this.MYPMStorage.dataObjects[this.MYPMStorage.allKeys[i]];=0A=
			tempJsonArray[tempJsonArray.length] =3D thisObj.id;=0A=
			tempTabArray[tempTabArray.length] =3D thisObj.tab;=0A=
		}=0A=
	}=0A=
	this.playlists['myplaylist'] =3D new =
this.playlist(tempJsonArray,0,tempTabArray);=0A=
	this.setPlaylist('myplaylist',MYPlaylistUICallback);=0A=
}=0A=
MYPlaylistManager.prototype.MYPMRemove =3D function(it) {=0A=
	pl =3D this.playlists['myplaylist'];=0A=
	toRemove =3D '';=0A=
	if (pl.pointer !=3D it || =
CNNPlaylistManager.getInstance().activePlaylist !=3D 'myplaylist') {=0A=
		tempArray =3D pl.jsonList;=0A=
		tempJsonList =3D new Array();=0A=
		tempTabList =3D new Array();=0A=
		for (i =3D 0; i < pl.jsonList.length; i++) {=0A=
			if (i !=3D it) {=0A=
				tempJsonList.push(pl.jsonList[i]);=0A=
				tempTabList.push(pl.tabList[i]);=0A=
			}=0A=
			else {=0A=
				toRemove =3D pl.jsonList[i];=0A=
				tabToRemove =3D pl.tabList[i];=0A=
			}=0A=
		}=0A=
		this.playlists['myplaylist'].jsonList =3D tempJsonList;=0A=
		this.playlists['myplaylist'].tabList =3D tempTabList;=0A=
		if (CNNPlaylistManager.getInstance().activePlaylist =3D=3D =
'myplaylist') {=0A=
			CNNPlayer.getInstance('','MYPMRemove').removeFromPlayList(toRemove);=0A=
		}=0A=
		this.setPlaylist('myplaylist',MYPlaylistUICallbackFromAppend);=0A=
		this.MYPMStorage.remove(toRemove);=0A=
		try{=0A=
		this.MYPMSaveToStorage();=0A=
		}catch(e){}=0A=
		makePlaylistAdderClickable(toRemove);=0A=
		=
//document.getElementById(toRemove.slice(toRemove.lastIndexOf('/')+1)).in=
nerHTML =3D '<a =
href=3D"javascript:CNNPlaylistManager.getInstance().MYPMAddToPlaylist(\''=
+toRemove+'\',\'\');" class=3D"aplink">add to my playlist</a>';=0A=
	}=0A=
}=0A=
MYPlaylistManager.prototype.MYPMWritePlaylistUI =3D function() {=0A=
	tempStr =3D '';=0A=
	playList =3D this.playlists['myplaylist'].playlistJsonObjs;=0A=
	if (playList !=3D null && playList.length > 0) {=0A=
		for (var i =3D 0; i < playList.length; i++) {=0A=
			tempStr +=3D '<div class=3D"box_item" id=3D"myup_' + i + '"><div =
id=3D"myupgraydiv_'+i+'" style=3D"float:right;margin-top:5px;"><a =
href=3D"javascript:CNNPlaylistManager.getInstance().MYPMRemove('+i+');">'=
;=0A=
			tempStr +=3D '<img name=3D"myupgray_'+i+'" id=3D"myupgray_'+i+'" =
src=3D"/video/bvp/images/close_btn.gif" width=3D"12" height=3D"12" =
alt=3D"" border=3D"0"></a></div>';=0A=
			tempStr +=3D '<a href=3D"#" =
onclick=3D"CNNPlaylistManager.getInstance().advanceTo(\'myplaylist\','+i+=
'); return false;"><img src=3D"' + =
CNNPlaylistManager.findImageSize(playList[i].getDataObject().images,"44x2=
5") + '" width=3D"45" height=3D"25" border=3D"0" alt=3D"" /></a>';=0A=
			tempStr +=3D '<a href=3D"#" =
onclick=3D"CNNPlaylistManager.getInstance().advanceTo(\'myplaylist\','+i+=
'); return false;">' + playList[i].getDataObject().headline + '</a> =
<span class=3D"duration">' + =
CNNPlayer.secondsIntoMinutes(playList[i].getDataObject().trt) + =
'</span></div>';=0A=
		}=0A=
		WTPO_writeToLayer(tempStr, "My_Play_Box");=0A=
		WTPO_writeToLayer('<a =
href=3D"javascript:load_Play_List(\'navMyPlay_List\');"><div>MY&nbsp;PLAY=
LIST&nbsp;&nbsp;<span =
style=3D"color:#949494;">'+playList.length+'</span></div></a>&nbsp;', =
'myPlaylistQuantity');=0A=
	}=0A=
	else {=0A=
		if (this.noIEStorage =3D=3D true) {=0A=
			tempStr =3D '<div id=3D"myup_0" =
style=3D"text-align:center;margin-top:40px;color:#949494;"><b>IE =
Persistent storage is disabled.<br>Please enable to use the "My =
Playlist" feature.</b></div>';=0A=
		}=0A=
		else if (this.noCookies =3D=3D true) {=0A=
			tempStr =3D '<div id=3D"myup_0" =
style=3D"text-align:center;margin-top:40px;color:#949494;"><b>Persistent =
storage is turned off<br>due to cookies being disabled.<br>Please enable =
to use the "My Playlist" feature.</b></div>';=0A=
		} else {=0A=
			tempStr =3D '<div id=3D"myup_0" =
style=3D"text-align:center;margin-top:40px;color:#949494;"><b>There are =
no videos in your playlist.<br>Please make your selections =
below.</b></div>';=0A=
		}=0A=
		WTPO_writeToLayer(tempStr, "My_Play_Box");=0A=
		WTPO_writeToLayer('<a =
href=3D"javascript:load_Play_List(\'navMyPlay_List\');"><div>MY&nbsp;PLAY=
LIST&nbsp;&nbsp;<span =
style=3D"color:#949494;">0</span></div></a>&nbsp;', =
'myPlaylistQuantity');=0A=
	}=0A=
	if (CNNPlaylistManager.getInstance().activePlaylist =3D=3D =
'myplaylist') {=0A=
		this.highlight();=0A=
	}=0A=
}=0A=
=0A=
=0A=
MYPlaylistDataIsLoaded =3D function() { =
CNNPlaylistManager.getInstance().MYPMDataLoadedCB(); }=0A=
MYPlaylistUICallback =3D function() { loadFirstSection(); =
CNNPlaylistManager.getInstance().MYPMWritePlaylistUI(); }=0A=
MYPlaylistUICallbackFromAppend =3D function() { =
CNNPlaylistManager.getInstance().MYPMWritePlaylistUI(); }=0A=
BVPPlaylistUICallback =3D function() { =
CNNPlaylistManager.getInstance().BVPMWritePlaylistUI(); =
CNNPlaylistManager.getInstance().advanceTo('bvpplaylist',0);}=0A=
BVPPlaylistUICallbackFromStart =3D function() { =
CNNPlaylistManager.getInstance().BVPMWritePlaylistUI(); =
CNNPlaylistManager.getInstance().BVPMWriteSplash()}=0A=
MOSCPlaylistUICallback =3D function() { =
CNNPlaylistManager.getInstance().MOSCWritePlaylistUI(); =
CNNPlaylistManager.getInstance().MOSCWriteSplash()}=0A=
HOTTPlaylistUICallback =3D function() { =
CNNPlaylistManager.getInstance().HOTTWriteSplash()}=0A=
T1PlaylistUICallback =3D function() { =
CNNPlaylistManager.getInstance().T1WriteSplash()}=0A=
SAPlaylistUICallback =3D function() { =
CNNPlaylistManager.getInstance().SAWriteSplash()}=0A=
=0A=
MOSCIsBootStrapped =3D function(success) { =0A=
	if (success) {=0A=
		CNNPlaylistManager.getInstance().MOSCBootStrapCallback(); =0A=
	} else {=0A=
		CNNPlaylistManager.getInstance().errorSlate();=0A=
	}=0A=
}=0A=
HOTTIsBootStrapped =3D function(success) { =0A=
	if (success) {=0A=
		CNNPlaylistManager.getInstance().HOTTBootStrapCallback(); =0A=
	} else {=0A=
		CNNPlaylistManager.getInstance().errorSlate();=0A=
	}=0A=
}=0A=
T1IsBootStrapped =3D function(success) { =0A=
	if (success) {=0A=
		CNNPlaylistManager.getInstance().T1BootStrapCallback(); =0A=
	} else {=0A=
		CNNPlaylistManager.getInstance().errorSlate();=0A=
	}=0A=
}=0A=
SAIsBootStrapped =3D function(success) {=0A=
	CNNPlaylistManager.getInstance().SABootStrapCallback(success);=0A=
}=0A=
=0A=
function flipBVPImage(imgName,srcName,onOff,ad) {=0A=
	if (ieVersion() =3D=3D 0 || ieVersion() >=3D 7) {=0A=
		document.images[imgName+'Img'].src =3D =
'/video/bvp/images/'+srcName+'_'+onOff+'.png';=0A=
	}=0A=
	else {=0A=
		if (ad =3D=3D null) ad =3D '';=0A=
		document.getElementById(imgName+'_button'+ad).runtimeStyle.filter =3D =
"progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D'/video/bvp/ima=
ges/"+srcName+"_"+onOff+".png')";=0A=
	}=0A=
}=0A=
=0A=
function makeOn() { flipBVPImage('play','play','on'); }=0A=
function makeOff() { flipBVPImage('play','play','off'); }=0A=
function emailOn() { flipBVPImage('email','email','on'); }=0A=
function emailOff() { flipBVPImage('email','email','off'); }=0A=
function moveOn1() { flipBVPImage('replay','rply','on'); } =0A=
function moveOut1() { flipBVPImage('replay','rply','off'); }=0A=
=0A=
function ieVersion() {=0A=
	var ua =3D window.navigator.userAgent;=0A=
  var msie =3D ua.indexOf ( "MSIE " );=0A=
  if ( msie > 0 )      // If Internet Explorer, return version number=0A=
  	return parseInt (ua.substring (msie+5, ua.indexOf (".", msie )));=0A=
  else                 // If another browser, return 0=0A=
    return 0;=0A=
}=0A=
=0A=
CNNPlaylistManager.prototype.videoWasLinked =3D function(){=0A=
        var locHref =3D '' + location.href;=0A=
        if(locHref.indexOf('/video/#/')>-1){=0A=
                var videoUrl =3D =
locHref.slice(locHref.indexOf('/#/')+2)+".json";=0A=
                var thisVideo =3D =
this.playlists[this.activePlaylist].activeJson();=0A=
                return videoUrl=3D=3DthisVideo;=0A=
        }else if(locHref.indexOf('/video/?/')>-1){=0A=
		var videoUrl =3D locHref.slice(locHref.indexOf('/?/')+2)+".json";=0A=
		var thisVideo =3D this.playlists[this.activePlaylist].activeJson();=0A=
		return videoUrl=3D=3DthisVideo;=0A=
	}else{=0A=
                return false;=0A=
        }=0A=
}=0A=
=0A=
=0A=
=0A=

------=_NextPart_000_0049_01C889C6.D6BF72A0--
