From: <Saved by Windows Internet Explorer 7>
Subject: Tomb of the Unknowns caught in battle - CNN.com
Date: Thu, 28 Aug 2008 10:25:33 -0400
MIME-Version: 1.0
Content-Type: multipart/related;
	type="multipart/alternative";
	boundary="----=_NextPart_000_0000_01C908F8.678A5380"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3350

This is a multi-part message in MIME format.

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/cnn/images/1.gif

R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAQAICRAEAOw==

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/header/header_cnn_com_logo.gif

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
smURLGDLBAQBADs=

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/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_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/images/1.gif

R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAQAICRAEAOw==

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/images/1.gif

R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAQAICRAEAOw==

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/baseplate/corner_dg_TL.gif

R0lGODlhBAAEAKIAAP///9ra2uPj4/b29vT09Ovr6wAAAAAAACH5BAAAAAAALAAAAAAEAAQAAAMJ
GCEUBUBAMGYCADs=

------=_NextPart_000_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/.element/img/2.0/global/story_tools/mixx_share.gif

R0lGODlhVAAPAMQAAMQkLdY+RqsSG/7+/uVOVvn5+fPz8/z8/O7u7ujo6PLy8v39/ff39/j4+Pb2
9sUjLOrq6vHx8cMfKPT09MQhKsQhKcIVH+np6cUiK8cnL/v7++vr6+bm5ufn58oAAv///yH5BAAA
AAAALAAAAABUAA8AAAX/4CcuBgJxHaemXYuqb8vCrJuu9x3bNMrTulZCISp+Gh0F42BsOp/QqHQ6
XUQSjSIDUaB6v+Cwc+v4LBLdZmDNXou9nDe40DkYJs4AYc/fC+RScYBeBhEbGnkEAIuMAH9FHpAf
HpSTIpGRlk2CTZSYl5eZnqGZRQcQHQNqBBYAqgOwjkaVlZqitk6ckruflrelTS1Peq7FA7KSvaW1
k8BFupCio7+go5sdw4rH28ig3re+3kbQs7iemLXOz+QfxNzHj+LoyribTtbU4b7MRSkGiRIwPKDw
oEKGeIPsJZxioE6HNEYESJwoceETdhZFFODAxAGXjCAzktGSpAGTkCjBHyxQgKUJCQQXcvCQUWOH
jRk0fdSouZOnzhk2OQwxEgIAOw==

------=_NextPart_000_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/cnn/.element/img/2.0/global/1x1pixel.gif

R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAQAICRAEAOw==

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/baseplate/corner_dg_BL.gif

R0lGODlhBAAEAKIAAP///9ra2uPj4/b29vT09Ovr6wAAAAAAACH5BAAAAAAALAAAAAAEAAQAAAMJ
OLCyEGWFIEgCADs=

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/art_icn.gif

R0lGODlhCwAMAMQSAP///6+vr7CwsOzu78wAAPDw8LW1tfb397S0tK+vsNzc3Nvb27a2tvz8/P7+
/rm5udTU1P39/f///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEA
ABIALAAAAAALAAwAAAU6YCCOSCGdAqACTWCYUroCwcKYKaHTAPTKqwDAoXjkdqMAAjgDRASp5AgA
bc6gB6noIEgMvmBwQisNAQA7

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/art_icn_grayed.gif

R0lGODlhCwAMALMIAMDAwP///+zu7/Dw8Pb39/39/fz8/P7+/v///wAAAAAAAAAAAAAAAAAAAAAA
AAAAACH5BAEAAAgALAAAAAALAAwAAAQpEMgJBrog6GCkRdkWTFY2jWMVbtlxvtQqBoWUxuksSkTM
S4KgUOjzRQAAOw==

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/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_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/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_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/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_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/cnn/2008/US/08/27/tomb.unknowns/art.tomb3.arlington.jpg

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
u1evtf8ASEe8On2vo1nTt1uzXb/tdzscX/fblZ7hMbixnUDhDfSfTffvpjur9LHTncPeOtur+3fV
PXH1CWfeDqeLtN0S6V+1dJdzdr6Z7aWe6S9HdqL+223a982mCe8l3CV20tkhubi9ZubIre1t6IFC
Nq2K37sXO39pup5Jtyk2zduuOobXu3bbt2m2HYBB0ht0LOu7Td7LZt76e2bfth2a7tOjtx6Wtrbf
2vv4rzfvX/UdybY7Vd34Hgb2+z3Pb4OjH9L7LuW+b71bvfRJvd4d0tDvHSW39NWXczaZut4tx3eU
XlntNzD0paX0kZ3Jlo64+aiZtctzfNfHAEpGldDbh9ZF3ufZSO37C7T1lf77v3Scffbp7rfp6Dt1
0/snUN9227jbj1p01Zb5tHSO53H9IbHu+3dNfonUMVpf/P3FwbX9ZvmSvELKhGmdmL763d22HtRu
/ebtrt1l0d1HdbFa9133vb6HpfqzZGj6NIOtNzmnjt9pjthttz3CuZIH3LG2c237jbHbQ+5iuvlb
GbcA0jtE2H1MSdWbvcdN7D0zJ23se5nY/buldtuuhLy86ovO2+5WnaaPrqbb5o2fIXthJN1HvMtz
vFwx021iyvYozL6jZtlVQhFF9LmxfUv3J7WfQN1J3O3zrHpjuF1R1k+0+tHpnqDtP0d01FaWje2W
/dTvsrmHfu0/S1zY7O3dtm2uzbuFi0/nbndWUe53ksVncxOyAtvp56j683Lrfsce5uzdzOou1/d+
861/Udv6z+nrdeneo+ir2z6j7XN6Y2nqm86K7d9OW1uJNtn6juJtybbRbS2Wee0dfXrNujvXCQ7I
6B6C3f67957FfS/10On+rtz7j7T0N3J6w+sno7qLtHsXT16OpOmWdDTbT0zs+0X/AGe6bn3l93Df
bm+z2fb7jbpr+c3VrB1KRYsuW1AoR6/632jb9m606w2fbGtbtu07puFtt7Wymdoggu5Io0lIaXjS
0eYgLnUwZmvNjY5rTpOOCEITQAVjCIgdH5rXIZFwLTgmWNASD0OaWtIXADVgF+ys78mtOCXpAj4U
KYA+Jq6cFEDAEGooBmEqL8jOCA4DIY/en8KkCYgRp96Ox40AYMTF1OaCW5OOJXw5UARfGNGOC5/7
CgBYsUnUMHZUABcxpLQRkfMeS/xoAw5oj1EMBzTPj7q5WIA34AAF1Eg4HI0hHDp0uAKnjzHH7Ko3
ONdrcA/EY4ffUmKMvbGwqXaioUDJONM1fAEoXYjTirnYewBKRiRc3UpQeT8PtoAj6aqHEBpHJPvz
oAH6TjhG1EXUURMM6cgRLHIrm6mOJV33VevkaMtYI2l58rUKlU/bW4xa4uGNwz1gBF4eBFAFF6v/
AHur1PLoRf8Ai/Z7qANcgX02ckCfDyHvWtjnH2Lqf7f8PKmA2xU45f4aETfgLGuoZ/5apmdOR7zL
x/yrUmxN+pSur36f3UAZOpXKuXHQufhUXAljqbnw/lrEYxGqDPj/AC86YD2OgZIngmVADUerBF92
lfvpoug+zUozyH8tXQNg1CqOVf8AL+6tDMO3Urfjz4af30ANR6vTdn8WPw8uNAA36lCZf8H76ABH
Vq4/5aztya04It1Jx4/ypUFhI1RqcuGnn40ATk1aW/F/k8aAMHVo4ImPwrQAGbUgz/ypQArIqH/y
+CUAYaqfi4fyplwrmtySLPXxz46akAMer1Dnw/lX31RuBx1HL3pWYwzdWn8f/FooQEHLgvjki5eF
WwF5NSszROGn7+K1AE2LpwXLHUn3rQibcDTdWjBfdpT3LVmdeRSfVqCqvjoX7qGaW4In/qfGukcu
fCq18mSASavRb8SIEXT/ALexa6BlHc6kK6uH8q5+HGgCj836n/1VT/Av8EoA/9k=

------=_NextPart_000_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/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_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC/ugc_TL.gif

R0lGODlhBAAEALMAAP////X6/+7y+O70++Tr9OXs9PX4+/f5/OTs9ePr9PP4/u3z+gAAAAAAAAAA
AAAAACH5BAAAAAAALAAAAAAEAAQAAAQMEABTgEDjJBXICkEEADs=

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/.element/img/2.0/global/ugc-open-arrow.gif

R0lGODlhDAALALMAAEF4rleIuFCDtZS004mszujx+WqWwdvn8/H3/bTL4j93rb/T5z11rPX6/wAA
AAAAACH5BAAAAAAALAAAAAAMAAsAAAQusMlJp2I4Z9WI/kRTCB8mFFJSMgllfEZ1ABlwVM2QDXiD
BIwAotdYMBZECZISAQA7

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/.element/img/2.0/global/ugc-close-arrow.gif

R0lGODlhDAALALMAAEF4rleIuFCDtZS004mszujx+WqWwdvn8/H3/bTL4j93rb/T5z11rPX6/wAA
AAAAACH5BAAAAAAALAAAAAAMAAsAAAQosDVFiryYMZFw1oxxeA2oAQPymUywXKz5lrELm6h6ayKp
cSQJxUKKAAA7

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.l.cnn.net/cnn/.element/img/2.0/mosaic/util/loading.gif

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

------=_NextPart_000_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/2008/POLITICS/08/28/dnc.day/tzmos.obamaafterspeech.ap.jpg

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

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/2008/images/03/21/tzmos.flag.filer.jpg

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
6cB4YkZj0Zj/2Q==

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_rail/grey_corner_TL.gif

R0lGODlhBAAEAKIAAPn5+fz8/Pb29v////Ly8gAAAAAAAAAAACH5BAAAAAAALAAAAAAEAAQAAAMJ
OBMyQCRAImYCADs=

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/.element/img/2.0/content/ads/advertisement_right_rail.gif

R0lGODlhOwAFAIABAMnJyQAAACH5BAEAAAEALAAAAAA7AAUAAAI2DBB2iaZ4WnxszeYue9LljXWe
h40WlCjk2qGUGKbL+2kzpNVbFe+y+eu1QDOTZSc5JV2Z46oAADs=

------=_NextPart_000_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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

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
bdlop622Sxev7fbbcG8d99x0p03Ah17X7VBAADs=

------=_NextPart_000_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/cnn/video/us/2008/08/28/lane.jesus.moth.kltv.60x45.jpg

/9j/4AAQSkZJRgABAQEASABIAAD//gAMQXBwbGVNYXJrCv/bAIQAAQEBAQEBAQEBAQICAQICAwIC
AgICAwMDAgMEBAQEBAQEBAQFBgUEBQYFBAQFBwUGBgYHBwcEBQcIBwcIBgcHBwECAgICAgIDAgID
BwUEBQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcH/8QB
ogAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoLAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ
CgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJ
ChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeI
iYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq
8fLz9PX29/j5+hEAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMz
UvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3
eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna
4uPk5ebn6Onq8vP09fb3+Pn6/8AAEQgALQA8AwEhAAIRAQMRAf/aAAwDAQACEQMRAD8A+XfHFv4+
8YaVZ6RpMmkWmu2swWGCbRLuOyc7XLKJjLKWBBjYcuxAJZ2KgV5lpfw0+NqiSVdb0KOKOdYzLay3
cKxu250UOY8ncYzyQOACBhiV/leNCm73n1uvu7W6dPv6Wf6zTrwhTUZR/Iq6h4b+Jb63LJrWpWGy
AO0bNqc6rG67gw8w2pjAyVbBfjPoMDU8NeF/FlxNJY3Gl2V3reow+Rbw2WsNPI/mEL+7VLBXkJZc
qituY5GF+9SlQpu7VXXTp+t/0d79DSNejFXs7f15n2X8XfifJpnxKafSvDF2LyLRNI0aabU4rjTm
066tDqwkDrNbyTRhzeRASLExHB2nnHinxy+IviLxmnh7SdP8MRstndTyTXg1FrhGhYCSIRlYkkmc
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
vXSKb6E/8TSN/wDNouMP/DJ/98n/2Q==

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/cnn/video/politics/2008/08/27/sot.dnc.clinton.entire.cnn.60x45.jpg

/9j/4AAQSkZJRgABAQEASABIAAD//gAMQXBwbGVNYXJrCv/bAIQAAQEBAQEBAQEBAQICAQICAwIC
AgICAwMDAgMEBAQEBAQEBAQFBgUEBQYFBAQFBwUGBgYHBwcEBQcIBwcIBgcHBwECAgICAgIDAgID
BwUEBQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcH/8QB
ogAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoLAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ
CgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJ
ChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeI
iYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq
8fLz9PX29/j5+hEAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMz
UvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3
eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna
4uPk5ebn6Onq8vP09fb3+Pn6/8AAEQgALQA8AwEhAAIRAQMRAf/aAAwDAQACEQMRAD8A/joikjgg
Mkxwigkmuc0SafVviV8OVidkZ9YtIYyhwyhp416jnncfzxX+i/jljvYcB47AU/iqJN7aRhUg/k3J
xs+ykfn2UU+bHxm+n6pn+lL+yXaP/wAJVoqqTjdH0zx0r9N/20P2rfg78MfDyfCvW9Xefxi1nFPc
wWqxuumqyr5YuHZh5byK+9UAZtq7mCh4y/8AIHFM4UquW1qjtGEnKT8k0/8AgLzsepRoVcVKVCir
ylt/wT+WH/goLpV3r+meE/GWiRxXHh6K4mS4mhljZ7dpFj2CRASyg4Iz0B4ONy5/AX9tuRE+FXg6
2cgSyayJRxn5VhmB/wDQhX9deF2c5bnfh9iMRgJ3tKspxe8Jcl0n6xtJNNrXuml+JcXZfjMF4lZP
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
b5Xrr3vXP//Z

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/cnn/video/showbiz/2008/08/27/sbt.britney.performing.cnn.60x45.jpg

/9j/4AAQSkZJRgABAQEASABIAAD//gAMQXBwbGVNYXJrCv/bAIQAAQEBAQEBAQEBAQICAQICAwIC
AgICAwMDAgMEBAQEBAQEBAQFBgUEBQYFBAQFBwUGBgYHBwcEBQcIBwcIBgcHBwECAgICAgIDAgID
BwUEBQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcH/8QB
ogAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoLAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ
CgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJ
ChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeI
iYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq
8fLz9PX29/j5+hEAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMz
UvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3
eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna
4uPk5ebn6Onq8vP09fb3+Pn6/8AAEQgALQA8AwEhAAIRAQMRAf/aAAwDAQACEQMRAD8A/nq+DnwQ
t/DPhi21XUrAr4n1GFLq4jMLB7GPb8ijc2QxBLkYU5fac7a5TxXounw23iGe38UXMsOmtJJP5ZiV
bhoojLJH5jHClVBGBjkHkbSB8vUmk2+n6EKneSt/V/6/4Jyfwy8c+DvEz3Phu98JSfZxYgrPNA00
t1L8vl+awkxFGI2d9wVydiRYAlaWL3rTfEHw78PXSaBb6TpdlqiqZXjbSbyTzyRuG1UYt06Ahh8v
TPFYT5oNwe/X0/4BtSoUqiu010/rTvc9Y8L+HfFHinWorP4f+FdPvNQngnuWs7XQb17gJBG8s7eV
5e8qkMTzOwTaqIzE4UkexJ8D/jhp0Elzqfgu+tFsTqgu0m8H6lizfSkabURIz2j7DZxq0lxuY+Sq
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

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/cnn/video/politics/2008/08/27/sotvo.dnc.obama.stage.cnn.60x45.jpg

/9j/4AAQSkZJRgABAQEASABIAAD//gAMQXBwbGVNYXJrCv/bAIQAAQEBAQEBAQEBAQICAQICAwIC
AgICAwMDAgMEBAQEBAQEBAQFBgUEBQYFBAQFBwUGBgYHBwcEBQcIBwcIBgcHBwECAgICAgIDAgID
BwUEBQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcH/8QB
ogAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoLAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ
CgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJ
ChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeI
iYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq
8fLz9PX29/j5+hEAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMz
UvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3
eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna
4uPk5ebn6Onq8vP09fb3+Pn6/8AAEQgALQA8AwEhAAIRAQMRAf/aAAwDAQACEQMRAD8A/CL/AIJi
adLrWk/HHTFGUgbSp1XnguLxT/6APyr+z7/glF+z/q+t/D59XubfybeLXpcBhgsnlQMDj3ya/v3j
XM6eW+H2JlU0tGFl6zS/zP5IlVn/AMRpx1GMbpQjJrrZ4amvzaP6DfG3wzsPGfhW30K7h2IiAQsM
Z4GOfrX8NH/Bzz+zHNH4y/YY0HwtC0l1cWXji6mBPAWGTw0gJ/Gf9a/jjLs4lDD1sFP4JzjJ/wDg
ab/I/faFKvCtSnNWgotvv8LP5brX4b+ImtRL9jA2nGCcGue1rwlqujTK2oRJFGcAF3UA4wMc/h+d
f6eYzG4LLcLUxuYYiFGhDWU6kowhFNpLmlJqK1aWr3dj4zDZlSxeK+rYe85vZJNt6X0S1MS9028h
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
7PhfxT88pt/7nZ//2Q==

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/cnn/video/politics/2008/08/28/sot.dnc.beau.biden.overcome.cnn.60x45.jpg

/9j/4AAQSkZJRgABAQEASABIAAD//gAMQXBwbGVNYXJrCv/bAIQAAQEBAQEBAQEBAQICAQICAwIC
AgICAwMDAgMEBAQEBAQEBAQFBgUEBQYFBAQFBwUGBgYHBwcEBQcIBwcIBgcHBwECAgICAgIDAgID
BwUEBQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcH/8QB
ogAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoLAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ
CgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJ
ChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeI
iYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq
8fLz9PX29/j5+hEAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMz
UvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3
eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna
4uPk5ebn6Onq8vP09fb3+Pn6/8AAEQgALQA8AwEhAAIRAQMRAf/aAAwDAQACEQMRAD8A/kr/AGKr
m1sv2gPh293MI4vNu0DHu7WdwqL+Lsqj3Ir90vBunRCP4+aasalPsEVwMj0MbE/mTX9leC9OdPH1
q8lvgpL/AMAr03/7ceR424qlL6MGIwqfv0s+ozfkqmArpP5ui/uPwg+PFiLL43eLpTz9otrOXp6R
+X/7JWP4I8GeJviH4p0jwb4Q0qa88QX0ghggggllbJ6sUiVnKqOTtUnAOAelfumCxmD4fnxJmeY1
PZ4ahUqVqk7N8sFShVnKyTk7R5nZJtpaJux+dZFCrjcryyjQjzTnCEYpbt/CkvV6E/xE8CeKvhhr
+r+FvGGlTWuqWc8ts3mwTRrMyH7yCVVfBBVsMqsAwyoJxXlulW/2zUI4f4erH0Xv2/zkVnHiLK+L
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

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/cnn/video/politics/2008/08/27/sot.hillary.supporter.cnn.60x45.jpg

/9j/4AAQSkZJRgABAQEASABIAAD//gAMQXBwbGVNYXJrCv/bAIQAAQEBAQEBAQEBAQICAQICAwIC
AgICAwMDAgMEBAQEBAQEBAQFBgUEBQYFBAQFBwUGBgYHBwcEBQcIBwcIBgcHBwECAgICAgIDAgID
BwUEBQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcH/8QB
ogAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoLAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ
CgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJ
ChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeI
iYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq
8fLz9PX29/j5+hEAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMz
UvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3
eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna
4uPk5ebn6Onq8vP09fb3+Pn6/8AAEQgALQA8AwEhAAIRAQMRAf/aAAwDAQACEQMRAD8A/iv+Mvwf
+KPgvxd401Px9aWwki1m9tdR1O1uIL3Tn1FZSLmCC8td9pdSI7rkW7uMMHX5AWHJ+JPHWp+IrHSW
ubkrb2EFtaQfvAJZ47eC3tUU4XaoEdvGRgY4O4yO245qtCpUq1bqS5pL3bJPXRrSyT0aVk7W0RDw
k8vjTw01ZqEe7VrWtd35rbXvJXvq2fbf7JnwT1v9puz8WfDJb3Tyi6XbC11G4slnvtC2Smci1eKZ
fIjlNzKu2USLKPOcIskaMnj37Q37GXj79nfxdqek+NNStYvCa20l5p+qssjC7jSe3gZMLGMTA3Ku
Y8gbVbazkKrefHNGs0hlS0c9Y3a5eZ7Xe0dFvvslolf2IZROvlDzNS92Mkmuqjom/O19fK+p8nvp
VmZlSHXLNodgbeUnXJIB2kFCdwJ28ZGRwSOa+1vAfx3/AGcfh98PdD0zxf8AsDfCzxp4nthFBcaz
q3jL4jW17ffIztLNb6XrlpbqzZUAxRoqFdrIScj3L4yMXGGHU+fli5xXOqfM1HnbWqdot9bJtuPQ
8eFKjz88asLK75Z8yukr2VmrO+2rV+jR8ia7pEeq+JbySwsbDSzqE8lza6HYm/nXTvNlbZZRiXzr
gsnEaiWSSQgKWdiSx+oPhf8AF34AeEfAXh3w74t/ZY+D/inxHbRyG617xHf/ABUi1K/aSWSVROmk
a7Z2KmJHWBfIt4wVhUsXcvI/LRn7apSdaKhBOzbT5ZLlmtleVuZRatrdx1cec3w1PDe0brVYJNXs
1NpN2f2derW7Wjv0b6X/AIKB+Fr74AfHTxb+ytZ/EXTvFGheDruCQ+INL0mOxh168vLaO9muJIhP
cBZIvtQsQI5BGYbKIBV5z8LO8aRWBhVxfIVckpgjk7Sg6MOmS3JOAOASc7wlCLgmlbW/f83oldvV
u7be5GIqSqV6jm72bs0rX87LRX3stD9Tf+CVUfjbSvjTaeMNM8Oz6j4ZjVrC8s4JmtZbhXMbyrFK
EKq5VY/4txIXCFgrp+yX7VH7P97+0h8DvH2l2+l3mna5e6jt8N6RqljDDc3V3HERA4kuT9olkbLx
s77ZCiMzSFQFPwmfYuFDM1Uhbnh7PR2vdS5tLv79treb/SOFsuli8olQqxfJU9pqtknHl100vay3
36apfzYeIP2Rfib4eg1G9uYIZLASXFrp80V1Z7b+7t5AtxBh51eNoYw8suVPlAwbwouIifNNL8F+
NbfwXfeI5dJVPA1zcGyubiI2klzCweJiGj3icJlYwu8CNmI2ncQa/RaMcHVoe2pV4u7XK72dnay5
W0/fvfyt2kmfnVbA4qhUlQlB8yunptbdX2069Ufb37M/wx8FfDD4z+H/AB3430W51pvBaWnijSLS
y1bTdJTWmjuftFpOy6iqT31sQYblooIpJpLZtmIikhi+cfDX7Inxk8ZaRBq/hf4b+Ib6IM8V39j0
ieeO1uAxPlF043CMxMQeRvrDD4XF/Wq0cbVptS5FSjBSu7Q5pylKSVk1OHKuVO6e6krdKwuHqU4L
DU5N7ycpJaNvlXLutnrdp6Wta8vn7xtpGm6B4o1fSdLvpLjS4JTHb3Eqw754wo2ORFJIqhhg7Q7b
QcbiQaw7Yh2iQuvys2HMe/OOVyG425HPHAJ4PSsIyvFS2v30fzvY8xxak4bvbTW/ofol+w54o8Ze
FtUudT0/VWS0aRbeziikZTGw/eEkfxDLAAnJGGAxk5/oJsfjRo3xX8KXkf7RfwfHxEltLWOG0spr
tEtrNMMpe7Wdwk6BzE+1klZTCrohdFr854gSlnHPTfK1bX5at+m999ND9Z4TqOllKpVY80ZXut+r
srPSzW6ejT9T8VfDP7KHjP8AaC/aG8YC416+8K/DzxJr2sanpV5o6f2wrz2t3bCUhZbm0wttFd3D
mUiNo1t5FKAtx03w48R/BD4bfEb4YfDx5NZ0DxLd+Nzpfjr7TBqWnXNxpJuITPa2xFwFxanT9qLL
mSc6sreU01vAIPtsPh5uhh6NnKKpR10jzS5FyuV9bS5dNbSV9WlZ/G43EUKOOxtac7RVaaja8uWN
5P3Ur7N7JXTeiTZ97/8ABUz4C/AH4OftceDPgL8C/h/4n/4XBcX2s+JU1W/XUr3UG8LXel6ZcW7W
kBkQXv2Mx+IbZN8TXLLYRRzSStHur9DvHf8AwQ28T+N73RL34D/tO6O/wzt9MgisR4q8MNJqCmbd
ePuuNLnjgukJut6y+VG2G2YZUWR/Vw819fwzpTf7unGaV7azi425rN2STte7SstE2YrEOnHnhpO7
i3ztNpWl52+K2iV2rtto/jG+O3hPUtD13T9a1G9hmn1YSXOYbZ4tzKQjMNzuWUkY+9gFWAHWvKtG
0W+1a8jjtbZjasyRSyhSIod5Cgu2CFGefw4pQpVnaHsJRko35ZJ8yio813fW3L7139n3tjwK3JGq
71Iu73W129l03drd9D9FvBXw+1f4f6HDNF5n2NQJI50bHOFOVI6/eHIr1S3/AGlvFvgfR4L2LUYj
pd9dPp6XV1au9v8Aao0EjL5zARGRQY8xhiy+YhKYJI+OWEp5tVlKTSfXWz106+dj7yGKq5TRSivd
S7X0X/Av+Z5Ld+PF8V2XgXwj4Tex1n4hy61qGpypZ2WrrLd6pqd9bQC2V4ZJJ9xitYYF+ySxo6XE
UZiaSEySeP8Ajrx5aa/8TvB+sfHC8mPg/TPFM0uu+H9GhsrbU7Z5mibUjZW0dvbx6cgaBFjsX8uG
3kJWFNpl2/XYZR+q8ip/BCmottXtomn1927utG90t0fG4qcp16jlUVpynKSSdr3b897WXbq1uqXi
L44eIfiP8b/A/wC0Z4m1i/gbw/L4eeaWxvrK31KCW08sl9PjfcMCaGWRGWFkiygkGSN/9ff7PP8A
wUag+C3wL+F3gn4Za74j8b/DW3057bw94hhtdPeS602zuJ9NtROHsY3ikEVkhEUkaSJG0SvuYFm6
aVH6tKnTjBxVla99U4KWja13Wt3ba97hSaqTdaUrya6NbJtO6V7O8dnZ21tZo+Ivix/wQu1HwR8F
/Bvi+b4caNH8XJIriK40vSpdf1Cwjupp/wB0TLcNcSSFbdIV2MpjWV7jbvBjZf1d/Zj/AOCDHhHS
P2Crjwr4z8G2sX7Sdz9p8RadIk322Kxna2mhTSUe5MM8dpOszPKRNA/nyBy2yJI1+owtejktTLs0
hBTr0akZzSm0puMoycFo3GDScW2m3fZrQ8nNcq/tPLswyynU9nGvSnTjK3NyOcXFStdXcW+a3MtV
utzivhN/wRm8S/Gj4U+E/HvwF+KunQ6j513pniHw14tjezvPB+oWrCCazkksVuTM6yLKQZIbYmJo
JNv73C/Y/wAL/wDgmj8Rf2bv2Zv2hvhbrvw38KfEX4i239neO/Dunk3hsJ7q5nlsdWtN0VxaXl44
0/TbSZAywhZboRxb23M3xtbgr+zeKsVgZ3ng4uUl7ydSVDl9rGalFezk5UrTjOL5JaTS5XZfX8Nc
eZbi8mybNc3UqbnOhDEeyjyuMnUjSrwhGrdwmp89NU6qbhL3ZttO/wDIV+2b+whpvwv+Ftx+0j4K
RbLwbpurpoVtaaVIk9l4l1V3hnENr8/2u1dLC5jaS3uossYb54ZHRHit/g2z1+11L4J+Ntcvtaca
3Bem30bw3FpBdJkZIvtt5dXj+V+52RNAsKl33xhgiqz7/Q4kyalleZ1sC3alTbtzS6TjGSUm73aW
ie+iduh6nFmTV+GOKczyRq7hNONmptU2uendxhTi5uE4+05YRipuSjpZnkngnwta+J7fwhp+l3dr
c6le3J0+6t5CLKHTi0vlw7rhlbzGy4mdyrARsqh9ykL6X8Lv2q9f+C/hVPAz6VLqFhHcSXVlKbry
gkExDhQu0/xF2OT1cjtXVVzNZhg6eU8r56bV302k4xXpGN9eqa8z4ajltSUvarVTvZX7NJv8bfcf
2PD/AIO1f2ENV0TU4fCH7Lfx+Hix7eW3066f4deHr63iuypEDTQxeIopJ0VyhaJZYmYZAdCQw/Lj
Rf8Agu7+xn4k+HtleftGeMf2v9R/an0+/wBUvdI+JXgvw14f8MXRtJ555rWymgTxFLH9hcyI8lnG
qwxAtFbqoBkk/EOFfpbZdkMcXWqeD3E+Kx3NSVL2mTqpSjD33Xp1aTxHvqtC0dOWSjGVpJOSf87Y
j6RdXErkpeF/FihKMk3HKGpX0tKMliNHF77rWzR9n/s0/wDB0l+yL8PvEOh+LtZ/Zu+PF74g8T+E
7IfFC10PwVobWF947tktI31TSLYa1HHAl6JL/wC1gpG0ht9NdY1f7Q0mL+1t/wAHWP7L/wAT9c+H
GrfB34KfG3TbTTLC/j1fSPEng7Q/sPiRbi70iWGGeKHW3HlrFa3jicfvUfyo0ws8kkek/pXZBLiu
GZYbwl4ulhaTlGNN5V+85I+0jhYtxxTcXToRowl70m/Zyled2387V8dMdPJMXlmD8MOKIuvKUk1k
rcbVJRliLp4h83tKkq0n29ooq1lb86/25f8Agtn+zZ+138Jfi78G/hl+zz8X18Naxf6L4y8ODUPD
GnJNYeN7WZbG6nmay1J0kt59FubuF2MUk813HbTPhpJXr8ALv9oXSorW8s/+FW63bwTbvKtk090j
MTRrmQmSZ2Z5ZPNkcAhAXOwKuEX8+x30ipZpjq1T/iGHFK5lFJLKOZxdlLlSWISUY2lGmla1OMbR
SVl9tS+k7iJ4bDKv4X8W1akIxpqTylvmp0Y+xpavENtqjGkpXvad1zNWb4W0+JPibUWZdB8AeI7n
zisEi/2U9wZSqhEiwGI4XagCqvAUY6VyutfEbWtV1CfUta8O66L6c+aT/ZgQMG5yqhgACSTgAD0r
pj9I+CrT+q+FvFKm2r2yluV0pW0+sOz5ebazav5nl0/pH4zkpqHhfxXpe1sn6XV9VX11tfsz/9k=

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/cnn/video/politics/2008/08/27/sot.hillary.entire.cnn.60x45.jpg

/9j/4AAQSkZJRgABAQEASABIAAD//gAMQXBwbGVNYXJrCv/bAIQAAQEBAQEBAQEBAQICAQICAwIC
AgICAwMDAgMEBAQEBAQEBAQFBgUEBQYFBAQFBwUGBgYHBwcEBQcIBwcIBgcHBwECAgICAgIDAgID
BwUEBQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcH/8QB
ogAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoLAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ
CgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJ
ChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeI
iYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq
8fLz9PX29/j5+hEAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMz
UvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3
eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna
4uPk5ebn6Onq8vP09fb3+Pn6/8AAEQgALQA8AwEhAAIRAQMRAf/aAAwDAQACEQMRAD8A/jSEYaGQ
AYBI/rW9pOnXKgT/AGVzGBwdh5z07V/ryotcvkfllWcYwk5O3/DHQeG/B+seNfFWj+FNKEceo3ty
YVkunKRQAAs7yMASFRVZjgMcKcAnAP6Ny/sGfB6+fw54L0v9ofU4vinPYHUbxL/wnAmlbZY0ktra
OaO/aX7UysG8sRyCRZYjGxLbD+M+KPjPlPhhmOU5bisKsRPFc8pqNVQnRpqUYxm4OMnJVJOahdxT
dOSvu4+/knDmMzzCVsThXZU7Je62puzbSa2aSV9/iXlf8zvjV8HvH/wM8eal4A+JGiGy8RQATbc7
o7iJiwWSNv4lyrKehVkdGAZWA80sbKW7mjVYz5RbBYDgev6V04HMsNxXKjmuTS9pSxHvRtZ2ve6l
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
ziNr/sV//dz/2Q==

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/cnn/video/politics/2008/08/27/newtest.cnn.60x45.jpg

/9j/4AAQSkZJRgABAQEASABIAAD//gAMQXBwbGVNYXJrCv/bAIQAAQEBAQEBAQEBAQICAQICAwIC
AgICAwMDAgMEBAQEBAQEBAQFBgUEBQYFBAQFBwUGBgYHBwcEBQcIBwcIBgcHBwECAgICAgIDAgID
BwUEBQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcH/8QB
ogAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoLAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ
CgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJ
ChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeI
iYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq
8fLz9PX29/j5+hEAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMz
UvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3
eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna
4uPk5ebn6Onq8vP09fb3+Pn6/8AAEQgALQA8AwEhAAIRAQMRAf/aAAwDAQACEQMRAD8A/E34GfsS
/F34lwfEO1vJfDmpaYZDbapYaXFI4M+mkRsgkuYIoQLiRIppFhnmjPmBt0csZ3ebwD4jfBX9ozUv
Bd34BurGw1GXXNSttHjtpzYrc3qo8+oRXEbIbKSKNLGFo3luImlkAEAhnQvri6NK8MLQxL9ulFPl
jZ01zcy5ZSjyuzkmk4tPktK6k0/psNhcThsLTzXE4e9GbXLd6Slb7UU1JX95XTVufTVJn9Sv7IX7
OH7OfiD4fWeuXXwu0Gzv5QDqyXun2sl2yjYTcTzyKXy5KPznaxAOCAK/Dv8A4KBfsM+A/BH7eHhf
wd+x14Dv/Eula8kOt+JNKXWoZtKtdUe4NlcWz3IkRre6jIE72zTsxN7CGi2Q4k8fLM7q1MdicVzW
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
UlzLK7xatpZ+3V1a1j//2Q==

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/cnn/video/weather/2008/08/27/vo.az.woman.drives.into.flood.knxv.60x45.jpg

/9j/4AAQSkZJRgABAQEASABIAAD//gAMQXBwbGVNYXJrCv/bAIQAAQEBAQEBAQEBAQICAQICAwIC
AgICAwMDAgMEBAQEBAQEBAQFBgUEBQYFBAQFBwUGBgYHBwcEBQcIBwcIBgcHBwECAgICAgIDAgID
BwUEBQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcH/8QB
ogAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoLAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ
CgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJ
ChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeI
iYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq
8fLz9PX29/j5+hEAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMz
UvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3
eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna
4uPk5ebn6Onq8vP09fb3+Pn6/8AAEQgALQA8AwEhAAIRAQMRAf/aAAwDAQACEQMRAD8A/NGDR9I1
D98EntL3dtUP3zgDOOVzxxkHPTpmtWfQws3nC6lGojBLrKGPYAlZDnHH97tjJr4u76n1SszoIS86
PLcRRvYyQhGlEOwSjd8q7i2CvLHGeMH1qHTdHujeeXaW/k2QAKq91HIAOmMfMVH0Izke9K99CraH
TppFnBMZ5FElySAcJtLDjjfxgfh3xWxFcw29o8CRIj8tJMc7yMfdJJHp6d/elohWbMK8ldIka3MY
kLKVVlZmGeASBnHbtzXg/wAS9Otx4ghXW7FHvxapnDum0bnIHUZ9c+/tXrcPO+cYf/t7/wBIkabI
9tt7G2gaE/Z5bm7QcPPGGfGcnlCF4OBj0C9TzV26f50thGVdiP3cKgAsT8oz07Hr6duSPKZmkxgh
8pxJJbgc/MGBIPr3OcHj/CrG4SBY95SLb84RCPXsD9PwqbvYtRYySGOOdAs7eQBuPLEDjHHvUVz5
fCTwSsm3aF+cbBgnuPm5J/8A1VDb1sx22ZTSS3nOBMYgzglQjF2TdwxIXouSTjaMqMMTXzz8VbxI
fENmhRnP2JPmMjc/PJjuR0wODj0r2uHr/wBs4eP+L/0iQrdD6Xa4uZpURWAt+CfMJy3+7k88+g/C
p2miEzPGUdoyAzFT8z8ggBfrzz2XnORXkPcF1GMVZgpKlwWYIgLHPPHH4/Su20HwJ4q8XpdXHhzQ
bm5SItudzDbw5A+4JJCvzcjgbuoJAFT0stQclGPNJlXUvAt3aWd8t5qfl6lZg/bLOKe4R4sMoARi
gScKS2948op2jcSwFcnbaVc2bWt22p3lvHLJmVftTB3QnnkKBjKjvg4GeaSjJL3jOnWjVuo9CQWE
uya2WwIJky0rBwzcnGWP3vfAGSSSOmPlL44mceLNPV4SuNOQBUXIA82buRXucPaZxQ/7e/8ASJGl
7H1NDJJbj5Qu8EYK/MO2ODxn8P8AGkM6WgghRWwD8zSFTubJ9h6d+fSvH3QeR13he78HXeqSW3iq
/lg02XhXtkTKkY2ht5/dgYz8sbM2TnHFebeMjJ4S1TU9P8D/ABU1Cazvxsu10qSe3lxyrK6E+WGC
KEEh3n5idq4AJh6ig2pRvF23/r+mcWMpzlGCUranlOk6lb6DdWOl2d7/AGdoqTR+daCNWN07Hd5k
0zjcT0HXADEDAwB6vr/jfStOLXCBFPIDxIxQA8gt82QMsFyP65OtSbqO7JoypUYySevX/gHD6R8U
bbUzqQ1C7WCZBsQruAdB2Kggtz7knI64Jrwvx14iHivWYtQS08lY4BAEMhPRnbuP9r9K9PJW6WZ0
anbm/GLBYxKCb3Psmzt/tkvlwrL5ON0vy7QAOck5Ax9Pp14qJnlQR7o4wmdu6do49pyTjox598fS
vGO+60PM/FHjiPTJDZxmM3KcRmFECLnJbDgD+6M/Lnv2r5j13xBqDX95fTXck12SAZXcnoMde/AA
5z0961pQ7nk4yu5y5OiZhy63cS433mS+G256dDg9vw5zUUPiDULkGK6uG3PwoGAv44HA4rsp0rpq
xx8zaaIf7SkeYRRuck4baRhufTtyO5qw11E4j+0QEyBcckNjv+HXpXdgYqOKpPrr+TITMqf/AIKP
+G7q2trYfszfGISoArKPBcJUgAAKB9rG0DG3pggD5QQc8zqH/BQWwu7maSP9mb4upGYxEqt4LRvL
wo5XN1kHIA68BjjoK/mGPj5UlJRj4ZcTt9v7Jf8A8vP59n9J+EoKMPCzitP/ALFC/wDmk8j1L9su
XVbhpJP2efiu8rN8xbwiCw7Y/wBfz0xWbN+1bDJNHIf2dvizgfNIh8GKQ7eh/wBI6Yren9IGV1GH
hlxO32/sn/7uebL6SblJt+F3FX/ho/8Avgxrv9qC0uJAbX9nD4prJnkDwj19v9ef85q1H+1HHbx+
XF+zn8V92Du3eEBx7Z87OK3h9IebSgvDLihv/sU//fA4/STSvfwt4q/8M/8A98EDftVyuXSP9nb4
pZYjcB4Q5OM9vPqL/hp+T+L9nL4qbu+PCOP/AGtWuF+kSqdeMv8AiGPFDfllOuz/AOogn/iZLt4W
8Vf+Gj/74P/Z

------=_NextPart_000_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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

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

------=_NextPart_000_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/right_rail/grey_corner_BL.gif

R0lGODlhBAAEAKIAAPn5+fz8/Pb29v////Ly8gAAAAAAAAAAACH5BAAAAAAALAAAAAAEAAQAAAMJ
KLSxNGCNEUQCADs=

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/footer/corner_footer_tl.gif

R0lGODlhBQAFAKIAAOTk5Nvb29zc3OPj4+rq6uDg4Nra2uvr6yH5BAAAAAAALAAAAAAFAAUAAAMM
aBqjRceUQwWl4J4EADs=

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/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_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
Content-Location: http://www.cnn.com/cookie.crumb

R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/footer/corner_footer_bl.gif

R0lGODlhBQAFAKIAANvb2+Xl5dzc3OPj4+Dg4Nra2uvr6wAAACH5BAAAAAAALAAAAAAFAAUAAAML
GLYmbIWwEhctYCQAOw==

------=_NextPart_000_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i2.cdn.turner.com/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_0000_01C908F8.678A5380
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://i.cdn.turner.com/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_0000_01C908F8.678A5380
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
}
.cnnInline {
	DISPLAY: inline
}
.cnnWsnr {
	WHITE-SPACE: nowrap
}
.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-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.cdn.turner.com/cnn/.element/img/2.0/global/dropdowns/shdw_ce=
nter.png); 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.cdn.turner.com/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.cdn.turner.com/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.cdn.turner.com/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.cdn.turner.com/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.cdn.tu=
rner.com/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.cdn.tu=
rner.com/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.cdn.tu=
rner.com/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.cdn.tu=
rner.com/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.cdn.tu=
rner.com/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; =
LINE-HEIGHT: 14px; 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.cdn.turner.com/cnn/.element/img/2.0/global/dropdowns/shdw_ce=
nter.png); 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.cdn.turner.com/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.cdn.turner.com/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.cdn.turner.com/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.cdn.turner.com/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.cdn.tu=
rner.com/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.cdn.tu=
rner.com/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.cdn.tu=
rner.com/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.cdn.tu=
rner.com/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.cdn.tu=
rner.com/cnn/.element/img/2.0/global/dropdowns/shdw_BR.png', =
sizingMethod=3D'crop')
}
.cnnShareThisItem {
	CLEAR: both
}
.cnnShareThisItem A {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 25px; BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/icons/share_sprit=
e.gif) no-repeat 0px 2px; PADDING-BOTTOM: 4px; PADDING-TOP: 3px
}
.cnnEmbeddShare .cnnShareThisItem A {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 25px; BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/icons/share_sprit=
e.gif) no-repeat 0px 2px; PADDING-BOTTOM: 4px; PADDING-TOP: 3px
}
.cnnEmbeddShare .cnnShareThisItem A:hover {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 25px; BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/icons/share_sprit=
e.gif) no-repeat 0px 2px; PADDING-BOTTOM: 4px; PADDING-TOP: 3px
}
.cnnEmbeddShare .cnnShareThisItem A:visited {
	COLOR: #004276
}
.cnnShareThisItem A.cnnShareMixx {
	BACKGROUND-POSITION: 0px 2px
}
.cnnShareThisItem A.cnnShareMixx:hover {
	BACKGROUND-POSITION: 0px 2px
}
* HTML .cnnShareThisItem A.cnnShareMixx {
	WIDTH: 70px
}
*:first-child + HTML .cnnShareThisItem A.cnnShareMixx {
	WIDTH: 70px
}
.cnnShareThisItem A.cnnShareDigg {
	BACKGROUND-POSITION: 0px -25px
}
.cnnShareThisItem A.cnnShareDigg:hover {
	BACKGROUND-POSITION: 0px -25px
}
.cnnShareThisItem A.cnnShareFacebook {
	BACKGROUND-POSITION: 0px -52px
}
.cnnShareThisItem A.cnnShareFacebook:hover {
	BACKGROUND-POSITION: 0px -52px
}
.cnnShareThisItem A.cnnShareDelicious {
	BACKGROUND-POSITION: 0px -80px
}
.cnnShareThisItem A.cnnShareDelicious:hover {
	BACKGROUND-POSITION: 0px -80px
}
.cnnShareThisItem A.cnnShareReddit {
	BACKGROUND-POSITION: 0px -107px
}
.cnnShareThisItem A.cnnShareReddit:hover {
	BACKGROUND-POSITION: 0px -107px
}
.cnnShareThisItem A.cnnShareStumbleUpon {
	BACKGROUND-POSITION: 0px -137px
}
.cnnShareThisItem A.cnnShareStumbleUpon:hover {
	BACKGROUND-POSITION: 0px -137px
}
.cnnShareThisItem A.cnnShareMyspace {
	BACKGROUND-POSITION: 0px -166px
}
.cnnShareThisItem A.cnnShareMyspace:hover {
	BACKGROUND-POSITION: 0px -166px
}
.cnnEmbeddShare .cnnShareThisItem A {
	COLOR: #004276
}
.cnnEmbeddShare .cnnShareThisItem A:hover {
	COLOR: #ca0002; BACKGROUND-COLOR: #fff
}
.cnnEmbeddShare {
	FONT-SIZE: 11px; COLOR: #949494; LINE-HEIGHT: 16px
}
.cnnEmbeddShare A {
	PADDING-RIGHT: 2px; DISPLAY: inline; PADDING-LEFT: 2px; FONT-SIZE: =
10px; PADDING-BOTTOM: 1px; COLOR: #ca0002; PADDING-TOP: 2px; =
WHITE-SPACE: nowrap
}
.cnnEmbeddShare A:hover {
	BACKGROUND: #c90000; COLOR: #fff
}
.cnnEmbeddShare A.cnnMixx {
	PADDING-RIGHT: 2px; PADDING-LEFT: 21px; BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/icons/share_sprit=
e.gif) no-repeat 0px 0px; PADDING-BOTTOM: 2px; PADDING-TOP: 0px
}
.cnnEmbeddShare A.cnnMixx:hover {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/global/icons/share_sprit=
e.gif) #c90000 no-repeat 0px 0px
}
DIV.cnnEmbeddShare {
	DISPLAY: inline
}
#cnnEmbeddShareSpan {
	DISPLAY: inline; POSITION: relative
}
#cnnEmbeddShareSpan .cnnOverlayMenuContainer {
	LEFT: 0px; POSITION: absolute; TOP: 0px
}
#cnnEmbeddShareSpan #cnnShareThisStory124 {
	LEFT: 0px; POSITION: absolute; TOP: 0px
}
#cnnEmbeddShareSpan {
	Z-INDEX: 99999
}
.cnnEmbeddShare .cnnShareThisTitle {
	POSITION: relative
}
.cnnEmbeddShare .cnnShareThisTitle A {
	RIGHT: 0px; WIDTH: 16px; POSITION: absolute; TOP: 0px
}
.cnnEmbeddShare .cnnShareThisTitle A:hover {
	BACKGROUND: #fff
}
* HTML .cnnEmbeddShare .cnnShareThisTitle A {
	RIGHT: 18px
}
.cnnEmbeddShare A.cnnOverlayLnk:visited {
	COLOR: #ca0002
}
.cnnEmbeddShare A.cnnOverlayLnk:hover {
	COLOR: #fff
}
* HTML .cnnAttribution {
	PADDING-TOP: 12px
}
DIV#cnnHeader {
	MIN-WIDTH: 1002px; BACKGROUND: #fff; MARGIN-BOTTOM: 12px; WIDTH: auto; =
BORDER-BOTTOM: #c00 6px solid; FONT-FAMILY: Arial,sans-serif; 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: #000000; PADDING-TOP: 6px
}
.cnnHtAdvertLnks {
	PADDING-TOP: 17px
}
.cnnHtAdvertHead {
	FONT-WEIGHT: bold; COLOR: #000000
}
.cnnHtAdvertHead A {
	PADDING-LEFT: 4px; FONT-WEIGHT: normal; FONT-SIZE: 11px
}
.cnnHtAdvertLnks A {
	FONT-WEIGHT: bold; TEXT-DECORATION: underline
}
.cnnHtAdvertTitle {
	FONT-WEIGHT: bold; COLOR: #000000
}
#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 {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/content/quick_vote/btn_v=
ote.gif) no-repeat left top; VERTICAL-ALIGN: bottom; WIDTH: 39px; =
MARGIN-RIGHT: 4px; HEIGHT: 17px
}
.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,sans-serif
}
#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 32px 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: -45px
}
.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.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
}
.cnnDDWire .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
}
.cnnDDWire .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
}
.cnnDDWire .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
}
#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.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/adv_li=
nks/corner_ltg_TR.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnDDWireLtg .cnnWireBox .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
}
.cnnDDWireLtg .cnnWireBox .cnnBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/adv_li=
nks/corner_ltg_BR.gif) no-repeat 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnDDWireLtg .cnnWireBox .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
}
#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.cdn.turner.com/cnn/.element/img/2.0/global/dropdowns/shdw_ce=
nter.png); 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.cdn.turner.com/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.cdn.turner.com/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.cdn.turner.com/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.cdn.turner.com/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.cdn.tu=
rner.com/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.cdn.tu=
rner.com/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.cdn.tu=
rner.com/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.cdn.tu=
rner.com/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.cdn.tu=
rner.com/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
}
.cnnAdvertTxt336C {
	PADDING-RIGHT: 1px; PADDING-LEFT: 0pt; MARGIN-BOTTOM: -5px; =
PADDING-BOTTOM: 0px; 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
}
.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
}
#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
}
#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/se_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; PADDING-BOTTOM: 12px; OVERFLOW: =
hidden; HEIGHT: 4px
}
#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
}
.cnnWireBox2Header IMG {
	DISPLAY: block
}
.cnnWireBox2Footer IMG {
	DISPLAY: block
}
#cnnBoxSeContent {
	FONT-SIZE: 16px; FONT-FAMILY: Helvetica,Arial,sans-serif; TEXT-ALIGN: =
center
}
TABLE.cnnSetEdition TD {
	FONT-SIZE: 16px; FONT-FAMILY: Helvetica,Arial,sans-serif
}
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_0000_01C908F8.678A5380
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
}
.cnnOpinMosaic {
	DISPLAY: inline
}
.cnnOpinMosaic A.realmLink {
	FONT-WEIGHT: bold; FONT-SIZE: 11px; COLOR: #004276
}
.cnnOpinMosaic A.realmLink:hover {
	COLOR: #ca0002
}
#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.cdn.turner.com/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.cdn.turner.com/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.cdn.turner.com/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.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/icn_article_=
grayed.gif) no-repeat 0px 0px
}
#cnnTabNav LI.currentRight SPAN.cnnArticleTab {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/icn_article_=
grayed.gif) no-repeat 0px 0px
}
#cnnTabNav LI.current SPAN.cnnArticleTab {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/icn_article_=
grayed.gif) no-repeat 0px 0px
}
#cnnTabNav LI A SPAN.cnnVideoTab {
	PADDING-LEFT: 20px; BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/icn_videos.g=
if) no-repeat 0px 1px
}
#cnnTabNav LI.currentLeft SPAN.cnnVideoTab {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/icn_videos_g=
rayed.gif) no-repeat 0px 1px
}
#cnnTabNav LI.currentRight SPAN.cnnVideoTab {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/icn_videos_g=
rayed.gif) no-repeat 0px 1px
}
#cnnTabNav LI.current SPAN.cnnVideoTab {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/icn_videos_g=
rayed.gif) no-repeat 0px 1px
}
#cnnTabNav LI A SPAN.cnnPhotoTab {
	PADDING-LEFT: 22px; BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/icn_photos.g=
if) no-repeat 0px 0px
}
#cnnTabNav LI.currentLeft SPAN.cnnPhotoTab {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/icn_photos_g=
rayed.gif) no-repeat 0px 0px
}
#cnnTabNav LI.currentRight SPAN.cnnPhotoTab {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/icn_photos_g=
rayed.gif) no-repeat 0px 0px
}
#cnnTabNav LI.current SPAN.cnnPhotoTab {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/icn_photos_g=
rayed.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.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/bg_tab_curre=
nt_left.gif) no-repeat left top
}
#cnnTabNav LI.current A:hover {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/bg_tab_curre=
nt_left.gif) no-repeat left top
}
#cnnTabNav LI.current {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/bg_tab_curre=
nt_right.gif) #fff no-repeat right top
}
#cnnTabNav LI.currentLeft A {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/bg_tab_curre=
nt_first.gif) no-repeat left top
}
#cnnTabNav LI.currentLeft A:hover {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/bg_tab_curre=
nt_first.gif) no-repeat left top
}
#cnnTabNav LI.currentLeft {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/bg_tab_curre=
nt_right.gif) #fff no-repeat right top
}
#cnnTabNav LI.currentRight A {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/bg_tab_curre=
nt_left.gif) no-repeat left top
}
#cnnTabNav LI.currentRight A:hover {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/bg_tab_curre=
nt_left.gif) no-repeat left top
}
#cnnTabNav LI.currentRight {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/lnk/tabs_cur=
rent_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.cdn.turner.com/cnn/.element/img/2.0/global/pic_changer/imgCh=
ngBG.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.cdn.turner.com/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.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
}
.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
}
.cnnUGCBox .cnnUGCBox .cnnUGCBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC/b_=
ugc_TR_bg.gif) repeat-x 100% 0px; OVERFLOW: hidden; HEIGHT: 4px
}
.cnnUGCBox .cnnUGCBox .cnnUGCBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC/b_=
ugc_BR_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.cdn.turner.com/cnn/.element/img/2.0/mosaic/content/ads/adtil=
e.gif) #fff 0px 0px; PADDING-BOTTOM: 9px; PADDING-TOP: 9px; TEXT-ALIGN: =
center
}
.cnnWireBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/basepl=
ate/corner_wire_TR_bg.gif) #fff no-repeat 100% 0px; OVERFLOW: hidden; =
HEIGHT: 4px
}
.cnnWireBoxFooter {
	BACKGROUND: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/basepl=
ate/corner_wire_BR._bg.gif) #fff no-repeat 100% 0px; OVERFLOW: hidden; =
HEIGHT: 4px
}
#cnnRightCol .cnnWireBoxHeader {
	BACKGROUND: =
url(http://i.cdn.turner.com/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.cdn.turner.com/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.cdn.turner.com/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.cdn.turner.com/cnn/.element/img/2.0/mosaic/content/ads/adtil=
e.gif) #fff 0px 0px; 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.cdn.turner.com/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.cdn.turner.com/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.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
}
#cnnRightCol #cnnMostPopMosaic .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
}
.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.cdn.turner.com/cnn/.element/img/2.0/mosaic/util/video_backgr=
ound.gif); MARGIN: 0px 7px 0px 0px; WIDTH: 58px; HEIGHT: 42px
}
.mos_video_box_active .mos_tz_image {
	FLOAT: left; BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/util/video_backgr=
ound.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.cdn.turner.com/cnn/.element/img/2.0/mosaic/util/video_backgr=
ound_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.cdn.turner.com/cnn/.element/img/2.0/global/noflash/flash_log=
o.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.cdn.turner.com/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
}
.cnnBackstory {
	PADDING-RIGHT: 0px; PADDING-LEFT: 8px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 8px; BORDER-BOTTOM: #f1f1f1 1px solid; HEIGHT: 22px
}
.cnnBackstitle {
	FONT-WEIGHT: bold; FONT-SIZE: 14px; PADDING-BOTTOM: 8px; COLOR: #004276
}
A.cnnBacklink {
	FONT-SIZE: 10px; COLOR: #004276
}
.cnnBacktext {
	FONT-SIZE: 10px; COLOR: #4c4c4c
}

------=_NextPart_000_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.e/css/2.0/CNNVideoControlsBVP.css

.Pause_Disabled_BVP {
	FONT-SIZE: 1px; LEFT: 6px; WIDTH: 35px; LINE-HEIGHT: 1px; POSITION: =
absolute; TOP: 4px; HEIGHT: 25px
}
.Pause_ActiveOff_BVP {
	FONT-SIZE: 1px; LEFT: 6px; WIDTH: 35px; LINE-HEIGHT: 1px; POSITION: =
absolute; TOP: 4px; HEIGHT: 25px
}
.Play_Disabled_BVP {
	FONT-SIZE: 1px; LEFT: 6px; WIDTH: 35px; LINE-HEIGHT: 1px; POSITION: =
absolute; TOP: 4px; HEIGHT: 25px
}
.Play_ActiveOff_BVP {
	FONT-SIZE: 1px; LEFT: 6px; WIDTH: 35px; LINE-HEIGHT: 1px; POSITION: =
absolute; TOP: 4px; HEIGHT: 25px
}
.Embed_Disabled_BVP {
	FONT-SIZE: 1px; LEFT: 403px; WIDTH: 39px; LINE-HEIGHT: 1px; POSITION: =
absolute; TOP: 11px; HEIGHT: 12px
}
.Embed_ActiveOff_BVP {
	FONT-SIZE: 1px; LEFT: 403px; WIDTH: 39px; LINE-HEIGHT: 1px; POSITION: =
absolute; TOP: 11px; HEIGHT: 12px
}
.Share_Disabled_BVP {
	FONT-SIZE: 1px; LEFT: 451px; WIDTH: 43px; LINE-HEIGHT: 1px; POSITION: =
absolute; TOP: 11px; HEIGHT: 9px
}
.Share_ActiveOff_BVP {
	FONT-SIZE: 1px; LEFT: 451px; WIDTH: 43px; LINE-HEIGHT: 1px; POSITION: =
absolute; TOP: 11px; HEIGHT: 9px
}
.Fullscreen_Disabled_BVP {
	FONT-SIZE: 1px; LEFT: 503px; WIDTH: 65px; LINE-HEIGHT: 1px; POSITION: =
absolute; TOP: 11px; HEIGHT: 10px
}
.Fullscreen_ActiveOff_BVP {
	FONT-SIZE: 1px; LEFT: 503px; WIDTH: 65px; LINE-HEIGHT: 1px; POSITION: =
absolute; TOP: 11px; HEIGHT: 10px
}
.Volume_Disabled_BVP {
	FONT-SIZE: 1px; LEFT: 326px; WIDTH: 12px; LINE-HEIGHT: 1px; POSITION: =
absolute; TOP: 11px; HEIGHT: 10px
}
.Volume_Semi_BVP {
	FONT-SIZE: 1px; LEFT: 326px; WIDTH: 12px; LINE-HEIGHT: 1px; POSITION: =
absolute; TOP: 11px; HEIGHT: 10px
}
.Volume_Full_BVP {
	FONT-SIZE: 1px; LEFT: 326px; WIDTH: 12px; LINE-HEIGHT: 1px; POSITION: =
absolute; TOP: 11px; HEIGHT: 10px
}
.TimelineTrackBackground_BVP {
	FONT-SIZE: 1px; Z-INDEX: 50; LEFT: 45px; WIDTH: 218px; LINE-HEIGHT: =
1px; POSITION: absolute; TOP: 13px; HEIGHT: 6px; BACKGROUND-COLOR: =
#dedede
}
.TimelineTrackBuffer_BVP {
	FONT-SIZE: 1px; Z-INDEX: 51; WIDTH: 0%; LINE-HEIGHT: 1px; HEIGHT: 100%; =
BACKGROUND-COLOR: #ca0002
}
.TimelineHandlerBacker_BVP {
	FONT-SIZE: 1px; Z-INDEX: 100; LEFT: 45px; WIDTH: 218px; LINE-HEIGHT: =
1px; POSITION: absolute; TOP: 10px; HEIGHT: 12px
}
.TimelineHandlerDisabled_BVP {
	FONT-SIZE: 1px; WIDTH: 19px; LINE-HEIGHT: 1px; HEIGHT: 12px
}
.TimelineHandlerEnabled_BVP {
	FONT-SIZE: 1px; WIDTH: 19px; LINE-HEIGHT: 1px; HEIGHT: 12px
}
.TimelineHandlerDisabled_BVP {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/scrubberDisable=
d.gif)
}
.TimelineHandlerEnabled_BVP {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/scrubberActive.=
gif)
}
.VolumeTrackBackground_BVP {
	FONT-SIZE: 1px; Z-INDEX: 50; LEFT: 342px; WIDTH: 42px; LINE-HEIGHT: =
1px; POSITION: absolute; TOP: 13px; HEIGHT: 5px; BACKGROUND-COLOR: =
#dedede
}
.VolumeHandlerBacker_BVP {
	FONT-SIZE: 1px; Z-INDEX: 100; LEFT: 342px; WIDTH: 42px; LINE-HEIGHT: =
1px; POSITION: absolute; TOP: 10px; HEIGHT: 10px
}
.VolumeHandlerEnabled_BVP {
	FONT-SIZE: 1px; BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/volumeActive.gi=
f); WIDTH: 10px; LINE-HEIGHT: 1px; HEIGHT: 10px
}
.Embed_Disabled_BVP {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/embedDisabled.g=
if)
}
.Embed_ActiveOff_BVP {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/embedActiveOff.=
gif); CURSOR: pointer
}
.Share_Disabled_BVP {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/shareDisabled.g=
if)
}
.Share_ActiveOff_BVP {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/shareActiveOff.=
gif); CURSOR: pointer
}
.Fullscreen_Disabled_BVP {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/fullscreenDisab=
led.gif)
}
.Fullscreen_ActiveOff_BVP {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/fullscreenActiv=
eOff.gif); CURSOR: pointer
}
.Pause_Disabled_BVP {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/pauseDisabled.g=
if)
}
.Pause_ActiveOff_BVP {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/pauseActiveOff.=
gif); CURSOR: pointer
}
.Play_Disabled_BVP {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/playDisabled.gi=
f)
}
.Play_ActiveOff_BVP {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/playActiveOff.g=
if); CURSOR: pointer
}
.Volume_Disabled_BVP {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/volumeDisabled.=
gif)
}
.Volume_Semi_BVP {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/volumeSemi.gif)=

}
.Volume_Full_BVP {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/volumeFull.gif)=

}
.TimeSpent_BVP {
	FONT-WEIGHT: bold; FONT-SIZE: 8pt; COLOR: #dedede; FONT-FAMILY: =
Helvetica; POSITION: absolute
}
.Duration_BVP {
	FONT-WEIGHT: bold; FONT-SIZE: 8pt; COLOR: #dedede; FONT-FAMILY: =
Helvetica; POSITION: absolute
}
.TimeSep_BVP {
	FONT-WEIGHT: bold; FONT-SIZE: 8pt; COLOR: #dedede; FONT-FAMILY: =
Helvetica; POSITION: absolute
}
.TimeSpent_BVP {
	LEFT: 270px; TOP: 8px
}
.Duration_BVP {
	LEFT: 296px; TOP: 8px
}
.TimeSep_BVP {
	LEFT: 292px; TOP: 8px
}
#fullscreenDoubleClick {
	DISPLAY: none; Z-INDEX: 9999; LEFT: 429px; POSITION: absolute; TOP: =
307px
}
#fullscreenUpgrade {
	DISPLAY: none; Z-INDEX: 9999; LEFT: 431px; POSITION: absolute; TOP: =
297px
}
#embedOverlay {
	DISPLAY: none; FONT-WEIGHT: bold; Z-INDEX: 9999; LEFT: 1px; =
BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/back.png); =
WIDTH: 574px; COLOR: #ffffff; POSITION: absolute; TOP: 172px; HEIGHT: =
152px
}
#embedTitle {
	FONT-SIZE: 16px; LEFT: 18px; POSITION: absolute; TOP: 12px
}
#shareTitle {
	FONT-SIZE: 16px; LEFT: 18px; POSITION: absolute; TOP: 12px
}
#embedDesc1 {
	FONT-SIZE: 10px; LEFT: 18px; POSITION: absolute; TOP: 32px
}
#embedForm {
	FONT-WEIGHT: bold; FONT-SIZE: 11px; LEFT: 18px; WIDTH: 530px; COLOR: =
#000000; POSITION: absolute; TOP: 57px
}
#embedDesc2 {
	DISPLAY: none; FONT-SIZE: 10px; LEFT: 18px; POSITION: absolute; TOP: =
97px
}
#embedButton {
	DISPLAY: none; LEFT: 18px; POSITION: absolute; TOP: 116px
}
#shareOverlay {
	DISPLAY: none; FONT-WEIGHT: bold; Z-INDEX: 9999; LEFT: 1px; =
BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/back.png); =
WIDTH: 574px; COLOR: #ffffff; POSITION: absolute; TOP: 172px; HEIGHT: =
152px
}
#embedClose {
	LEFT: 556px; BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/close.png); =
WIDTH: 12px; CURSOR: pointer; POSITION: absolute; TOP: 6px; HEIGHT: 12px
}
#shareClose {
	LEFT: 556px; BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/close.png); =
WIDTH: 12px; CURSOR: pointer; POSITION: absolute; TOP: 6px; HEIGHT: 12px
}
#shareEmail {
	LEFT: 91px; WIDTH: 131px; POSITION: absolute; TOP: 51px; HEIGHT: 67px
}
#shareEmailOver {
	LEFT: 91px; WIDTH: 131px; POSITION: absolute; TOP: 51px; HEIGHT: 67px
}
.shareEmail {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/big.normal.emai=
l.png)
}
.shareEmailOver {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/big.over.email.=
png); CURSOR: pointer
}
#shareDivider {
	LEFT: 246px; WIDTH: 1px; POSITION: absolute; TOP: 45px; HEIGHT: 89px; =
BACKGROUND-COLOR: #97978f
}
#shareContainer {
	LEFT: 271px; BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/icon.container.=
png); WIDTH: 210px; POSITION: absolute; TOP: 30px; HEIGHT: 110px
}
#shareIcons {
	Z-INDEX: 10001; LEFT: 285px; POSITION: absolute; TOP: 51px
}
.shareCell {
	PADDING-RIGHT: 15px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: =
10px; PADDING-BOTTOM: 0px; PADDING-TOP: 6px
}
#shareMixx A {
	PADDING-RIGHT: 0px; PADDING-LEFT: 26px; PADDING-BOTTOM: 0px; WIDTH: =
100px; COLOR: #4c87c1; PADDING-TOP: 0px; BACKGROUND-REPEAT: no-repeat
}
#shareDigg A {
	PADDING-RIGHT: 0px; PADDING-LEFT: 26px; PADDING-BOTTOM: 0px; WIDTH: =
100px; COLOR: #4c87c1; PADDING-TOP: 0px; BACKGROUND-REPEAT: no-repeat
}
#shareFacebook A {
	PADDING-RIGHT: 0px; PADDING-LEFT: 26px; PADDING-BOTTOM: 0px; WIDTH: =
100px; COLOR: #4c87c1; PADDING-TOP: 0px; BACKGROUND-REPEAT: no-repeat
}
#shareDelicious A {
	PADDING-RIGHT: 0px; PADDING-LEFT: 26px; PADDING-BOTTOM: 0px; WIDTH: =
100px; COLOR: #4c87c1; PADDING-TOP: 0px; BACKGROUND-REPEAT: no-repeat
}
#shareReddit A {
	PADDING-RIGHT: 0px; PADDING-LEFT: 26px; PADDING-BOTTOM: 0px; WIDTH: =
100px; COLOR: #4c87c1; PADDING-TOP: 0px; BACKGROUND-REPEAT: no-repeat
}
#shareStumbleupon A {
	PADDING-RIGHT: 0px; PADDING-LEFT: 26px; PADDING-BOTTOM: 0px; WIDTH: =
100px; COLOR: #4c87c1; PADDING-TOP: 0px; BACKGROUND-REPEAT: no-repeat
}
#shareMyspace A {
	PADDING-RIGHT: 0px; PADDING-LEFT: 26px; PADDING-BOTTOM: 0px; WIDTH: =
100px; COLOR: #4c87c1; PADDING-TOP: 0px; BACKGROUND-REPEAT: no-repeat
}
#shareMixx A {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/mixx.png)
}
#shareDigg A {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/digg.png)
}
#shareFacebook A {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/facebook.png)
}
#shareDelicious A {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/delicious.png)
}
#shareReddit A {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/reddit.png)
}
#shareStumbleupon A {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/stumbleupon.png=
)
}
#shareMyspace A {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/myspace.png)
}
#endReplay {
	LEFT: 45px; WIDTH: 131px; POSITION: absolute; TOP: 90px; HEIGHT: 67px
}
#endReplayOver {
	LEFT: 45px; WIDTH: 131px; POSITION: absolute; TOP: 90px; HEIGHT: 67px
}
.endReplay {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/big.normal.repl=
ay.png)
}
.endReplayOver {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/big.over.replay=
.png); CURSOR: pointer
}
#endShare {
	LEFT: 399px; WIDTH: 131px; POSITION: absolute; TOP: 90px; HEIGHT: 67px
}
#endShareOver {
	LEFT: 399px; WIDTH: 131px; POSITION: absolute; TOP: 90px; HEIGHT: 67px
}
.endShare {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/big.normal.shar=
e.png)
}
.endShareOver {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/big.over.share.=
png); CURSOR: pointer
}
#endEmbed {
	LEFT: 222px; WIDTH: 131px; POSITION: absolute; TOP: 90px; HEIGHT: 67px
}
#endEmbedOver {
	LEFT: 222px; WIDTH: 131px; POSITION: absolute; TOP: 90px; HEIGHT: 67px
}
.endEmbed {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/big.normal.embe=
d.png)
}
.endEmbedOver {
	BACKGROUND-IMAGE: =
url(http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/big.over.embed.=
png); CURSOR: pointer
}

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/js/2.0/csi_include.js

function cnnGetId(query) =0A=
{=0A=
	var queryId =3D cnnGetQueryId( query);=0A=
	var wId =3D cnnGetWindowNameId();=0A=
	=0A=
	var idsMatch =3D (queryId =3D=3D wId);=0A=
	=0A=
	var imageObj =3D document.createElement('img');=0A=
	=
imageObj.setAttribute('src','http://i.cdn.turner.com/cnn/images/1.gif?csi=
TestMatch=3D'+idsMatch);=0A=
	if(document.documentElement)=0A=
	{=0A=
		document.documentElement.appendChild( imageObj );=0A=
	} =0A=
	return queryId;=0A=
=0A=
}=0A=
function cnnGetWindowNameId()=0A=
{=0A=
	if(window.name && (window.name.indexOf('csiDataIframe')=3D=3D0))=0A=
	{=0A=
		return window.name.substring(13);=0A=
	}=0A=
	return '';=0A=
}=0A=
=0A=
function cnnGetQueryId(query)=0A=
{=0A=
	var keyValPairs =3D query.split('&');=0A=
	if(!keyValPairs)=0A=
	{=0A=
		keyValPairs =3D new Array();=0A=
		keyValPairs[keyValPairs.length]=3Dquery;=0A=
	}=0A=
	for(var counter=3D0;counter<keyValPairs.length;counter++) =0A=
	{=0A=
		var keyVal =3D keyValPairs[counter].split('=3D');=0A=
=0A=
		if(keyVal[0]=3D=3D'csiID') =0A=
		{=0A=
			return keyVal[1];=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
function cnnSend() =0A=
{=0A=
	var paramStr =3D location.hash;=0A=
	if(!paramStr)=0A=
	{=0A=
		paramStr =3D location.search.substring(1);=0A=
	}=0A=
	var docId =3D cnnGetId( paramStr 	);=0A=
	if(document.mainForm.htmlArea && document.mainForm.htmlArea.value) =0A=
 	{=0A=
		var rawHtml =3D document.mainForm.htmlArea.value;=0A=
		if(rawHtml) =0A=
	 	{=0A=
			top.CSIManager.getInstance().callBackHtml(rawHtml, docId);=0A=
		}=0A=
	}=0A=
	else  if(document.mainForm.jsCode.value) =0A=
 	{=0A=
		var rawJS =3D document.mainForm.jsCode.value;=0A=
		if(rawJS) =0A=
	 	{=0A=
			top.CSIManager.getInstance().callBackJS( eval('('+rawJS+')'), docId);=0A=
		}=0A=
	}=0A=
}=0A=
var oldonloadfunction =3D window.onunload;=0A=
function dummyonunload(evt)=0A=
{=0A=
	if(oldonloadfunction)=0A=
	{=0A=
		oldonloadfunction(evt);=0A=
	}=0A=
}=0A=
window.onunload=3Ddummyonunload;=0A=
=0A=
var oldshowpagefunction =3D window.onshowpage;=0A=
function cnnshowpageSend(evt)=0A=
{=0A=
=0A=
        if(evt.persisted)=0A=
	{=0A=
		cnnSend();=0A=
	}=0A=
	oldshowpagefunction(evt);=0A=
}=0A=

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: multipart/alternative;
	boundary="----=_NextPart_001_009B_01C908F8.67A22140"


------=_NextPart_001_009B_01C908F8.67A22140
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.cnn.com/2008/US/08/27/tomb.unknowns/index.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" =
"http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<HTML=20
lang=3Den><HEAD><TITLE>Tomb of the Unknowns caught in battle - =
CNN.com</TITLE>
<SCRIPT src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/ad_head0.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT src=3D"http://i.cdn.turner.com/cnn/cnn_adspaces/cnn_adspaces.js" =

type=3Dtext/javascript></SCRIPT>

<META content=3D"Tomb of the Unknowns caught in battle - CNN.com" =
name=3DTITLE>
<META=20
content=3D"The Tomb of the Unknowns at Arlington National Cemetery is at =
the center of combat between preservationists and cemetery officials."=20
name=3Ddescription>
<META content=3D"By Mike Mount CNN Pentagon Producer " name=3DAUTHOR>
<META content=3DUS name=3DSECTION>
<META content=3D"" name=3DSUBSECTION>
<META=20
content=3D"George W. Bush, U.S. Armed Forces, Culture and Lifestyle, =
Arlington National Cemetery, Potomac River, World History, John Metzler, =
Vietnam, United States, John Hildreth, National Trust for Historic =
Preservation, History, Armed Forces, Washington, Historic Buildings, =
Virginia"=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("Tomb of the Unknowns caught in battle");var =
cnnShareDesc =3D encodeURIComponent("The Tomb of the Unknowns at =
Arlington National Cemetery is at the center of combat between =
preservationists and cemetery officials.");</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>

<SCRIPT=20
src=3D"http://i.cdn.turner.com/cnn/.element/ssi/js/1.3/oo_engine.js"></SC=
RIPT>
<!-- 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=
// share redefine=0A=
</SCRIPT>

<SCRIPT language=3DJavaScript type=3Dtext/javascript>var cnnCurrTime =3D =
new Date(1219933429881); var cnnCurrHour =3D 10; var cnnCurrMin =3D 23; =
var cnnCurrDay=3D'Thu';</SCRIPT>

<SCRIPT type=3Dtext/javascript>=0A=
// FORMAT: cnnad_register(type,width,height,url);=0A=
cnnad_registerAd("article", 336, 850, =
"/cnn_adspaces/2.0/us/intg_story/rgt.336x850.ad");=0A=
cnnad_registerAd("video", 336, 850, =
"/cnn_adspaces/2.0/us/intg_story/video.336x280_sync.ad");=0A=
=0A=
overrideVideoAd =3D =
'/cnn_adspaces/2.0/us/intg_story/video.preroll_lg.ad';=0A=
overrideSyncAd =3D =
'/cnn_adspaces/2.0/us/intg_story/video.336x280_sync.ad';=0A=
=0A=
var cnnVideoCmpntAd =3D =
'/cnn_adspaces/2.0/us/intg_story/lft2.180x150.ad';=0A=
var cnnPhotoCmpntAd =3D =
'/cnn_adspaces/2.0/us/intg_story/lft3.180x150.ad';=0A=
var otherTab1Ad =3D '/cnn_adspaces/2.0/us/intg_story/lft4.180x150.ad';=0A=
var otherTab2Ad =3D '/cnn_adspaces/2.0/us/intg_story/lft5.180x150.ad';=0A=
=0A=
var cnnDefault336Ad =3D '/cnn_adspaces/2.0/us/intg_story/rgt.336x850.ad';=0A=
var cnnDefault180Ad =3D '/cnn_adspaces/2.0/us/intg_story/lft.180x150.ad';=0A=
=0A=
</SCRIPT>

<SCRIPT language=3DJavaScript type=3Dtext/javascript>var cnnForum =3D =
'US'; var cnnThread =3D '/2008/US/08/27/tomb.unknowns/index.html';var =
cnnReaderOpinions =3D true; var cnnFirstPub =3D new Date('Wed Aug 27 =
12:31:23 EDT 2008');</SCRIPT>

<SCRIPT=20
src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/blogs.js?siteid=3Dcnni=
nline"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT type=3Dtext/javascript>=0A=
	var storage;=0A=
	function cnnRecommendStories()=0A=
	{=0A=
		var topic_array =3D =
[{key:'George_W_Bush',weight:17},{key:'U_S_Armed_Forces',weight:16},{key:=
'Culture_and_Lifestyle',weight:43},{key:'Arlington_National_Cemetery',wei=
ght:69},{key:'Potomac_River',weight:16}];=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/us/2007/11/11/natpkg.tomb.guards.cnn.json","/video/us/2008/=
05/26/vo.bush.wreath.pool.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.16705" 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://i2.cdn.turner.com/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/US/08/27/tomb.unknowns/index.html#Content=
Area"><IMG=20
style=3D"DISPLAY: none" height=3D1 alt=3D"Skip to main content" =
hspace=3D0=20
src=3D"http://i2.cdn.turner.com/cnn/images/1.gif" width=3D10 =
align=3Dright=20
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://i.cdn.turner.com/cnn/.element/img/2.0/global/nav/header/hea=
der_cnn_com_logo.gif"=20
width=3D148 border=3D0></A><SPAN class=3DcnnSectName> /US</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.cdn.turner.com/cnn/.element/img/2.0/global/nav/header/hea=
der_google_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://i2.cdn.turner.com/cnn/.element/img/2.0/global/nav/header/he=
ader_search_btn.gif">=20
</FORM></DIV></DIV></DIV></DIV>
<DIV class=3DcnnNavStretch>
<DIV class=3DcnnHeaderNav>
<UL class=3DcnnNavigation>
  <LI class=3DcnnNavLeft></LI>
  <LI><A=20
  title=3D"Breaking News, U.S., World Weather Entertainment and Video =
News from CNN.com"=20
  href=3D"http://www.cnn.com/">Home</A> </LI>
  <LI><A=20
  title=3D"World News International Headlines Stories and Video from =
CNN.com"=20
  href=3D"http://www.cnn.com/WORLD/">World</A> </LI>
  <LI><A class=3DcnnCurPage=20
  title=3D"U.S. News Headlines Stories and Video from CNN.com"=20
  href=3D"http://www.cnn.com/US/">U.S.</A> </LI>
  <LI><A title=3D"2008 Election and Politics News from CNN.com"=20
  href=3D"http://www.cnn.com/POLITICS/">Politics</A> </LI>
  <LI><A title=3D"Crime News Courts Celebrity Docket and Law News from =
CNN.com"=20
  href=3D"http://www.cnn.com/CRIME/">Crime</A> </LI>
  <LI><A title=3D"Entertainment News Celebrities Movies and TV from =
CNN.com"=20
  href=3D"http://www.cnn.com/SHOWBIZ/">Entertainment</A> </LI>
  <LI><A title=3D"Health News Medicine Diet Fitness and Parenting from =
CNN.com"=20
  href=3D"http://www.cnn.com/HEALTH/">Health</A> </LI>
  <LI><A=20
  title=3D"Technology Computers Internet and Personal Tech News from =
CNN.com"=20
  href=3D"http://www.cnn.com/TECH/">Tech</A> </LI>
  <LI><A title=3D"Travel News Vacations Destinations and Video from =
CNN.com"=20
  href=3D"http://www.cnn.com/TRAVEL/">Travel</A> </LI>
  <LI><A title=3D"Living News Personal Work and Home from CNN.com"=20
  href=3D"http://www.cnn.com/LIVING/">Living</A> </LI>
  <LI class=3Doffsite><A=20
  title=3D"Business financial personal finance news from CNNMoney"=20
  href=3D"http://money.cnn.com/?cnn=3Dyes">Business</A> </LI>
  <LI class=3Doffsite><A=20
  title=3D"Breaking news real-time scores and daily analysis from Sports =
Illustrated SI.com"=20
  href=3D"http://www.cnn.com/si/?cnn=3Dyes">Sports</A> </LI>
  <LI class=3Doffsite><A title=3D"Analysis Opinion, Multimedia and Blogs =
TIME"=20
  href=3D"http://www.cnn.com/time/">Time.com</A> </LI></UL>
<UL class=3DcnnUtilityNavigation>
  <LI class=3DcnnVideo><A title=3D"Video Breaking News Videos from =
CNN.com"=20
  href=3D"http://www.cnn.com/video/?iref=3Dvideoglobal">Video</A> </LI>
  <LI class=3DcnnIreport><A=20
  title=3D"Unedited Unfiltered News iReport.com from CNN.com"=20
  href=3D"http://www.cnn.com/exchange/?iref=3Direportglobal">iReport</A> =
</LI>
  <LI class=3DcnnImpact><A title=3D"Impact Your World Special Reports =
from CNN.com"=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/ELECTION/2008/conventions/">Political =
Conventions</A> =95=20
<A =
href=3D"http://topics.cnn.com/topics/hurricanes_and_cyclones">Hurricanes<=
/A> =95=20
<A href=3D"http://www.cnn.com/SPECIALS/2008/black.in.america/">Black In=20
America</A> =95 <A=20
href=3D"http://www.cnn.com/SPECIALS/2008/american.road.trips/">American =
Road=20
Trip</A> =95 <A =
href=3D"http://www.cnn.com/SPECIALS/2008/having.it.all/">Work/Life=20
Balance</A> =95 <A class=3DcnnTopMore =
href=3D"http://www.cnn.com/topics/">more topics=20
=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 "US";=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://i2.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/ba=
seplate/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(1219895702912,['=
August 27, 2008 -- Updated 0355 GMT (1155 HKT)','updated 11:55 p.m. EDT, =
Wed August 27, 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><A class=3DcnnShareMixx =
id=3DcnnSBtnMixx>Mixx</A> <A=20
  class=3DcnnShareDigg id=3DcnnSBtnDigg>Digg</A> <A =
class=3DcnnShareFacebook=20
  id=3DcnnSBtnFacebook>Facebook</A> <A class=3DcnnShareDelicious=20
  id=3DcnnSBtnDelicious>del.icio.us</A> <A class=3DcnnShareReddit=20
  id=3DcnnSBtnReddit>reddit</A> <A class=3DcnnShareStumbleUpon=20
  id=3DcnnSBtnStumbleUpon>StumbleUpon</A> <A class=3DcnnShareMyspace=20
  id=3DcnnSBtnMyspace>MySpace</A> </DIV>
  <SCRIPT type=3Dtext/javascript> cnnSetShareLnks(); </SCRIPT>
  </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 =
alt=3DShare=20
  =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/global/story_tools/mi=
xx_share.gif"=20
  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/US/08/27/tomb.unknowns/index.html#"><IMG =

  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/US/08/27/tomb.unknowns/index.html#"><IMG =

  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/US/08/27/tomb.unknowns/index.html#"><IMG =

  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>Tomb of the Unknowns caught in battle</H1><!-- google_ad_section_end =
--><!--endclickprintinclude--></DIV>
<DIV id=3DcnnHeaderRightCol><!--startclickprintinclude-->
<UL>
  <LI class=3DcnnHiliteHeader>Story Highlights<!-- =
google_ad_section_start -->
  <LI>Debate centers on whether to fix cracks on Tomb of Unknowns or =
replace=20
  it<BR>
  <LI>Repairing it would cost an estimated $65,000; replacing it would =
cost $2.2=20
  million<BR>
  <LI>Cemetery officials want a replica structure; say cheap fixes won't =

  preserve it<BR>
  <LI>Preservationists say a replica would crack over time, just like =
the=20
  current one<BR><!-- google_ad_section_end =
--><!--startclickprintexclude-->
  <LI class=3DcnnNextStory id=3DcnnNextStoryCSI><A=20
  =
href=3D"http://www.cnn.com/2008/US/08/27/tomb.unknowns/index.html?iref=3D=
nextin">Next=20
  Article in U.S. =BB</A>
  <SCRIPT type=3Dtext/javascript>=0A=
if(window.location.pathname.indexOf('/2008/US/08/27/tomb.unknowns/index.h=
tml')!=3D-1){=0A=
var nxtStryCSIMgr =3D =
CSIManager.getInstance().call('/.element/ssi/auto/2.0/sect/US/nextStory0.=
exclude.html','','cnnNextStoryCSI');}=0A=
					=0A=
						=0A=
if(window.location.pathname.indexOf('/2008/US/08/27/lesbian.activist.dies=
/index.html')!=3D-1){=0A=
var nxtStryCSIMgr =3D =
CSIManager.getInstance().call('/.element/ssi/auto/2.0/sect/US/nextStory1.=
exclude.html','','cnnNextStoryCSI');}=0A=
					=0A=
						</SCRIPT>
<!--endclickprintexclude--></LI></UL><!--endclickprintinclude--></DIV>
<DIV class=3Dclear><IMG height=3D1 alt=3D""=20
src=3D"http://i2.cdn.turner.com/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://i2.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/ba=
seplate/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/US/08/27/tomb.unknowns/index.html#cnnSTCT=
ext"><SPAN><IMG=20
  class=3Doff height=3D12 alt=3D""=20
  =
src=3D"http://i2.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/art_icn.=
gif"=20
  width=3D11 border=3D0><IMG class=3Don height=3D12 alt=3D""=20
  =
src=3D"http://i2.cdn.turner.com/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/US/08/27/tomb.unknowns/video.html#cnnSTCV=
ideo"><SPAN><IMG=20
  class=3Doff height=3D14 alt=3D""=20
  =
src=3D"http://i2.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/video.gi=
f"=20
  width=3D16 border=3D0><IMG class=3Don height=3D14 alt=3D""=20
  =
src=3D"http://i2.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/active/v=
ideo.gif"=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/US/08/27/tomb.unknowns/photos.html#cnnSTC=
Photo"><SPAN><IMG=20
  class=3Doff height=3D14 alt=3D""=20
  =
src=3D"http://i2.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/photos.g=
if"=20
  width=3D16 border=3D0><IMG class=3Don height=3D14 alt=3D""=20
  =
src=3D"http://i2.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/active/p=
hotos.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://i2.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/ba=
seplate/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-->
<DIV id=3DcnnSCByLine>By Mike Mount<BR>CNN Pentagon =
Producer<BR></DIV><!--startclickprintexclude-->
<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>ARLINGTON, Virginia (CNN)</B> -- The Tomb of the Unknowns at =
Arlington=20
National Cemetery is at the center of combat between preservationists =
and=20
cemetery officials.</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=3D"Cemetery officials say cracks like this one, which cuts =
diagonally across the Tomb, puts the monument at risk."=20
src=3D"http://i2.cdn.turner.com/cnn/2008/US/08/27/tomb.unknowns/art.tomb3=
.arlington.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-->Preservationists say a replica would also=20
crack over time and that fixing the monument is the better =
option.<!--=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.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/bas=
eplate/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/US/08/27/tomb.unknowns/imgChng/p1-0=
.init.exclude.html',2,1);=0A=
=0A=
//CNN.imageChanger.load('cnnImgChngr','imgChng/p1-0.exclude.html');=0A=
</SCRIPT>
<!--endclickprintexclude-->
<P>The giant marble sarcophagus marking the location of unknown U.S. =
service=20
members has been battling the elements since it opened to the public in =
1932.=20
More than 70 years later, it is showing the scars, with cracks =
encircling=20
it.</P>
<P>The sarcophagus contains the remains of three unknown service members =
who=20
were killed in World War I, World War II and the Korean War. The remains =
of a=20
fourth service member, who died during the Vietnam War, were removed =
from the=20
tomb and identified in 1998.</P>
<P>On its most famous inscription -- "Here rests in honored glory an =
American=20
soldier known but to God" -- a crack cuts diagonally across the =
words.<B>=20
</B></P>
<P>Those scars are at the center of a debate: Should the memorial be =
fixed or=20
replaced with a replica? <SPAN class=3DcnnEmbeddedMosLnk><IMG =
height=3D14 alt=3DPhoto=20
src=3D"http://i2.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/photos.g=
if"=20
width=3D16 border=3D0> <A=20
onclick=3D"CNN_changeMosaicTab('cnnPhotoCmpnt','photos.html',true);"=20
href=3D"http://www.cnn.com/2008/US/08/27/tomb.unknowns/index.html#cnnSTCP=
hoto">See=20
photos of Tomb's cracks and its history =BB</A></SPAN></P>
<P>"The overall appearance of the memorial is not what it should be and =
we know=20
this is a problem," said John C. Metzler Jr., the superintendent of =
Arlington=20
National Cemetery.</P>
<P>As the cracks worsen, cemetery officials say, the threat of a =
degraded=20
monument will detract from the dignity and respect afforded to those =
buried at=20
what many consider the nation's most sacred site. They would like an =
exact=20
replica made with similar marble.</P><!--startclickprintexclude-->
<DIV class=3DcnnStoryElementBox>
<H4>Don't Miss</H4>
<UL class=3DcnnRelated>
  <LI><B class=3Dwool></B><A =
href=3D"http://www.arlingtoncemetery.net/tombofun.htm"=20
  target=3Dnew>Tomb of the Unknowns</A>=20
  <LI><B class=3Dwool></B><A href=3D"http://www.preservationnation.org/" =

  target=3Dnew>National Trust for Historic Preservation</A> =
</LI></UL></DIV><!--endclickprintexclude-->
<P>Historical preservationists say it should not be replaced and that =
the cracks=20
should simply be fixed as needed. </P>
<P>"A replica is not the same thing as the original," said John Hildreth =
of the=20
<A class=3DcnnInlineTopic=20
href=3D"http://topics.cnn.com/topics/national_trust_for_historic_preserva=
tion">National=20
Trust for Historic Preservation</A>, a leading historical preservation=20
organization.</P>
<P>Located high on a hill overlooking Washington on the Virginia side of =
the=20
Potomac River, the Tomb of the Unknowns is diligently looked after by =
the U.S.=20
military's ceremonial Old Guard 24 hours a day. <SPAN=20
class=3DcnnEmbeddedMosLnk><IMG height=3D14 alt=3DVideo=20
src=3D"http://i2.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/video.gi=
f"=20
width=3D16 border=3D0> <A=20
onclick=3D"CNN_changeMosaicTab('cnnVideoCmpnt','videos.html',true,'/');" =

href=3D"http://www.cnn.com/2008/US/08/27/tomb.unknowns/index.html#cnnSTCV=
ideo">Watch=20
Tomb guard: "Everything we do is for the Unknowns" =BB</A></SPAN></P>
<P>Cemetery officials estimate more than 4 million people visit the =
cemetery and=20
the <A class=3DcnnInlineTopic=20
href=3D"http://topics.cnn.com/topics/arlington_national_cemetery">Tomb =
of the=20
Unknowns</A> every year, making it one of the most popular destinations =
in the=20
Washington area. </P>
<P>Since the early 1960s, the marble walls that make up the main =
monument at the=20
Tomb have been developing fissures from natural cracking, made worse by=20
Washington's brutal quick freezes and thaws. </P>
<P>The cracks have been slowly growing each year, threatening the look =
and=20
delicate carvings on the front of the structure rarely seen by the =
public.</P>
<P>The monument has undergone two repairs, one in 1975 and the last one =
in 1989,=20
with grout used as filler. Since then, other significant cracks have=20
appeared.<SPAN class=3DcnnEmbeddedMosLnk><IMG height=3D14 alt=3DVideo=20
src=3D"http://i2.cdn.turner.com/cnn/.element/img/2.0/mosaic/tabs/video.gi=
f"=20
width=3D16 border=3D0> <A=20
onclick=3D"CNN_changeMosaicTab('cnnVideoCmpnt','videos.html',true,'/video=
/us/2008/05/26/vo.bush.wreath.pool');"=20
href=3D"http://www.cnn.com/2008/US/08/27/tomb.unknowns/index.html#cnnSTCV=
ideo">Watch=20
President Bush lay wreath at Tomb of the Unknowns =BB</A></SPAN></P>
<P>"The cracks continue to grow. And I can't predict what the weather is =
going=20
to continue to do to the monument," Metzler said.</P>
<P>For years, Arlington National Cemetery, which falls under the control =
of the=20
Department of the Army, has been looking to replace the 48-ton monument =
and its=20
fault lines with one that is virtually identical.</P>
<P>Metzler says following the rules of the National Historic =
Preservation Act=20
and locating unblemished marble that will hold up to the weather has =
slowed the=20
replacement process.</P>
<P>The possibility of replacement -- which the cemetery said would not =
disturb=20
the actual tombs encasing the remains -- has outraged preservationists.=20
Hildreth's group, the Washington-based National Trust for Historic =
Preservation,=20
and its allies successfully lobbied Congress to force the cemetery to =
examine=20
all repair options.</P>
<P>"Cemetery officials heard our concerns and were not very receptive to =

changing their plans," Hildreth said. "If they were to replace the =
monument with=20
the same marble material, it would eventually start cracking again."</P>
<P>Metzler and cemetery officials reported back to Congress this month =
and=20
decided to continue to repair the cracks as needed -- but will still =
pursue=20
replacing the monument entirely, if requirements to the National =
Historic=20
Preservation Act can be met.</P>
<P>"For now, we will intermittently repair the monument with grouting =
process=20
that should hold for several years at a time," Metzler told CNN.</P>
<P>The report said cemetery officials believe the "cracks cannot be =
repaired=20
indefinitely without the monument acquiring a patched, worn and shabby=20
appearance, which is the antithesis of its purpose and contrary to =
[Arlington=20
National Cemetery's] mission of maintaining a dignified, fitting =
memorial to our=20
country's fallen soldiers."</P>
<P>Metzler said it is impossible to say when or if the memorial would be =

replaced because it hinges on whether all of the criteria are met in the =

Preservation Act.</P>
<P>The National Trust contends that the cost of repairing it far =
outweighs the=20
cost replacing the structure.</P>
<P>The cemetery's report to Congress lists a replacement and related =
costs could=20
total $2.2 million, while the cost for a one-time repair would be about=20
$65,000.</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>Metzler's concerns are not just out of dignity and respect for those =
troops=20
buried at the Tomb, but also for the tourists and other visitors that =
come to=20
the monument.</P>
<P class=3DcnnInline>"I worry that as the cracks worsen it will =
eventually take=20
away from the visitor's experience," Metzler said. =
<!--startclickprintexclude-->
<DIV class=3DcnnWsnr style=3D"DISPLAY: inline"><SPAN =
class=3DcnnEmbeddedMosLnk><A=20
onclick=3Dreturn(ET());=20
href=3D"http://www.cnn.com/2008/US/08/27/tomb.unknowns/index.html#">E-mai=
l to a=20
friend</A> <IMG height=3D14 alt=3D"E-mail to a friend"=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/util/email.gif=
"=20
width=3D17 border=3D0></SPAN>=20
<DIV class=3DcnnEmbeddShare id=3DcnnEmbeddShareSpan>
<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><A class=3DcnnShareMixx =
id=3DcnnSBtnMixxBot>Mixx</A> <A=20
class=3DcnnShareDigg id=3DcnnSBtnDiggBot>Digg</A> <A =
class=3DcnnShareFacebook=20
id=3DcnnSBtnFacebookBot>Facebook</A> <A class=3DcnnShareDelicious=20
id=3DcnnSBtnDeliciousBot>del.icio.us</A> <A class=3DcnnShareReddit=20
id=3DcnnSBtnRedditBot>reddit</A> <A class=3DcnnShareStumbleUpon=20
id=3DcnnSBtnStumbleUponBot>StumbleUpon</A> <A class=3DcnnShareMyspace=20
id=3DcnnSBtnMyspaceBot>MySpace</A> </DIV></DIV><!-- /cnnShareThisContent =
--></DIV><!-- /cnnShareContent --></DIV><!-- /cnnShareBoxContent -->
<DIV class=3DcnnShareBoxFooter>
<DIV class=3DcnnShareBoxFooterBL></DIV>
<DIV class=3DcnnShareBoxFooterBR></DIV></DIV></DIV></DIV></DIV>| <A =
class=3DcnnMixx=20
id=3DcnnMixxEmbedLnk=20
href=3D"http://www.cnn.com/2008/US/08/27/tomb.unknowns/234">Mixx it</A> =
| <A=20
class=3DcnnOverlayLnk id=3DcnnEmbedShareLnk=20
href=3D"javascript:cnnShowOverlay('cnnShareThisStory124');">Share</A></DI=
V></DIV><!--endclickprintexclude-->
<P></P>
<P class=3DcnnTopics><B>All About</B> <A=20
href=3D"http://topics.cnn.com/topics/Arlington_National_Cemetery">Arlingt=
on=20
National Cemetery</A> =95 <A=20
href=3D"http://topics.cnn.com/topics/U_S_Armed_Forces_Activities">U.S. =
Armed=20
Forces Activities</A> =95 <A=20
href=3D"http://topics.cnn.com/topics/War_and_Conflict">War and =
Conflict</A></P><!--startclickprintexclude--><!--endclickprintexclude--><=
!--endclickprintinclude--><!-- /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>
  <SCRIPT type=3Dtext/javascript> cnnSetShareLnks(); </SCRIPT>

  <LI><A onmouseover=3DcnnImgSwap(this,1) onclick=3Dreturn(ET());=20
  onmouseout=3DcnnImgSwap(this,0)=20
  =
href=3D"http://www.cnn.com/2008/US/08/27/tomb.unknowns/index.html#"><IMG =

  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/US/08/27/tomb.unknowns/index.html#"><IMG =

  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/US/08/27/tomb.unknowns/index.html#"><IMG =

  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><A =
name=3Dsoundoff></A>
<SCRIPT type=3Dtext/javascript>=0A=
function cnnToggleNestedContent(el,lnk,num,desc)=0A=
{=0A=
	if (cnnLockToggle) { 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 "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).parentNode.innerHTML =3D "";=0A=
				}=0A=
			}=0A=
		}=0A=
	);=0A=
}=0A=
=0A=
function CNN_submitUserComment(form)=0A=
{=0A=
	var cnnSubmitForm =3D true;=0A=
=0A=
	if(typeof(cnnThread) !=3D "undefined") { $(form).threadName.value =3D =
cnnThread; }=0A=
	if(typeof(cnnForum) !=3D "undefined") { $(form).forumName.value  =3D =
cnnForum; }=0A=
=0A=
	var errorDivs =3D $(form).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=
		new Effect.Opacity('cnnROCFrm',=0A=
			{=0A=
				duration:1.0,=0A=
				from:1.0,=0A=
				to:0,=0A=
				beforeStart:function() {=0A=
			  		document.forms[form].submit();=0A=
				},=0A=
				afterFinish: function(obj)=0A=
				{=0A=
					var target =3D $(form).target;=0A=
					if( target )=0A=
					{=0A=
						if( $(target) && $(target).contentWindow && =
$(target).contentWindow.location )=0A=
						{=0A=
							$(target).contentWindow.location =3D 'about:blank';=0A=
						}=0A=
					}=0A=
					Form.reset(form);=0A=
					$('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> | <a =
href=3D\"/exchange/ireports/topics/forms/2007/09/sound.off.html \">Send =
a video comment via iReport<\/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=
</SCRIPT>

<DIV class=3Dclear><IMG height=3D1 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/images/1.gif" width=3D1 =
border=3D0></DIV>
<DIV class=3DcnnUGCBox>
<DIV class=3DcnnUGCBoxHeader><IMG height=3D4 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC=
/ugc_TL.gif"=20
width=3D4></DIV>
<DIV class=3DcnnBoxContent>
<DIV class=3DcnnUGCHeader>
<H3 class=3DcnnOpinionClosed><A=20
onclick=3D"cnnToggleUGC('cnnOpinionContainer',this); return false"=20
href=3D"javascript:void(0);"><IMG class=3Dopened height=3D11 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/global/ugc-open-arrow=
.gif"=20
width=3D12 border=3D0><IMG class=3Dclosed height=3D11 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/global/ugc-close-arro=
w.gif"=20
width=3D12 border=3D0>Sound Off: <SPAN>Your opinions and comments=20
</SPAN></A></H3></DIV>
<DIV id=3DcnnOpinionContainer style=3D"DISPLAY: none">
<DIV id=3Dobjectid></DIV>
<DIV class=3DcnnUGCBoxFooterMeta>
<DIV class=3DcnnPostCommentsLnk id=3DcnnCommentFooter><A=20
onclick=3D"cnnToggleNestedContent('cnnROCFrm',this, null, true);"=20
href=3D"javascript:void(0)">Post a comment</A> | <A=20
href=3D"http://www.ireport.com/ir-topic-stories.jspa?topicId=3D7233">iRep=
ort.com:=20
Put your thoughts on video</A></DIV>
<DIV class=3DcnnExpandCommentsLnk></DIV></DIV>
<DIV class=3DcnnUGCCommentFrm id=3DcnnROCFrm style=3D"DISPLAY: none">
<H4>Post a comment</H4>
<FORM id=3DcnnROCSubFrm name=3DcnnROCSubFrm=20
action=3Dhttp://comments.cnn.com/comments/post.jspa =
target=3Dcnnusercomment><INPUT=20
type=3Dhidden value=3Dcnn@cnn.com name=3Demail> <INPUT type=3Dhidden =
value=3D1=20
name=3DcreateForum> <INPUT type=3Dhidden name=3DforumName> <INPUT =
type=3Dhidden=20
name=3DthreadName>=20
<DIV class=3DcnnNameCol><LABEL id=3DcnnUserResponseName=20
for=3Dname>Name</LABEL><BR><INPUT id=3Dname name=3Dname> </DIV>
<DIV class=3DcnnLocalCol><LABEL id=3DcnnUserResponseLocation=20
for=3Dlocation>Location</LABEL><BR><INPUT id=3Dlocation =
name=3Dlocation><BR></DIV>
<DIV class=3DcnnCommentCol><LABEL id=3DcnnUserResponseComment=20
for=3Dbody>Comment</LABEL><BR><TEXTAREA id=3Dbody name=3Dbody =
rows=3D10></TEXTAREA>=20
<DIV><A onclick=3D"CNN_submitUserComment('cnnROCSubFrm'); return false;" =

href=3D"javascript:void(0);">Submit</A></DIV></DIV></FORM><IFRAME=20
id=3Dcnnusercomment style=3D"LEFT: 0px; BOTTOM: 0px; POSITION: absolute" =

name=3Dcnnusercomment marginWidth=3D0 marginHeight=3D0=20
src=3D"http://svcs.cnn.com/weather/wrapper.jsp?&amp;csiID=3Dcsi1" =
frameBorder=3D0=20
width=3D1 scrolling=3Dno height=3D1></IFRAME></DIV>
<DIV class=3DcnnUGCCommentFrm id=3DcnnROCFrmComplete=20
style=3D"DISPLAY: none"></DIV></DIV></DIV>
<DIV class=3DcnnUGCBoxFooter><IMG height=3D4 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/UGC=
/ugc_BL.gif"=20
width=3D4></DIV></DIV>
<SCRIPT type=3Dtext/javascript>=0A=
	var initialRequestNum =3D commentsWindow + cnnInitialDisplay + 1;=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'+initialRequestNum,'objectid', =
CNN_loadReaderOpinion, false, 'cnnComments');	=0A=
</SCRIPT>

<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/2008/POLITICS/08/28/dnc.day/index.html?iref=3D=
topnews"><IMG=20
      alt=3D""=20
      =
src=3D"http://i.cdn.turner.com/cnn/2008/POLITICS/08/28/dnc.day/tzmos.obam=
aafterspeech.ap.jpg"=20
      border=3D0></A></TD>
    <TD><A=20
      =
href=3D"http://www.cnn.com/2008/POLITICS/08/28/dnc.day/index.html?iref=3D=
topnews"><STRONG>Next=20
      up: Obama and the era of change</STRONG></A></TD>
    <TD><A =
href=3D"http://www.cnn.com/linkto/ticker.html?iref=3Dtopnews"><IMG=20
      alt=3D""=20
      =
src=3D"http://i.cdn.turner.com/cnn/2008/images/03/21/tzmos.flag.filer.jpg=
"=20
      border=3D0></A></TD>
    <TD><A=20
      =
href=3D"http://www.cnn.com/linkto/ticker.html?iref=3Dtopnews"><STRONG>Tic=
ker:=20
      McCain picks his VP</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://i2.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/ri=
ght_rail/grey_corner_TL.gif"=20
width=3D4 border=3D0></DIV>
<DIV class=3DcnnRRBoxContent>
<DIV class=3DcnnRRad id=3DadHolder>
<DIV id=3DcnnDefault336Space></DIV>
<DIV class=3DcnnAdvertTxt336C><IMG height=3D5 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/content/ads/advertise=
ment_right_rail.gif"=20
width=3D59 border=3D0></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/CRIME/08/27/duncan.death.ap/index.html?ir=
ef=3Dmpstoryview">Jury=20
  says child killer should die</A> </LI>
  <LI><B>2 </B><A=20
  =
href=3D"http://www.cnn.com/2008/WORLD/asiapcf/08/27/japan.snakes.ap/index=
.html?iref=3Dmpstoryview">51=20
  poisonous snakes found in flat</A> </LI>
  <LI><B>3 </B><A=20
  =
href=3D"http://www.cnn.com/2008/CRIME/08/27/fla.missing.girl/index.html?i=
ref=3Dmpstoryview">Trace=20
  of decomp found in mom's car</A> </LI>
  <LI><B>4 </B><A=20
  =
href=3D"http://www.cnn.com/2008/WORLD/weather/08/28/gustav/index.html?ire=
f=3Dmpstoryview">Gustav=20
  heads for Jamaica</A> </LI>
  <LI><B>5 </B><A=20
  =
href=3D"http://www.cnn.com/2008/POLITICS/08/27/dnc.reportcard.clinton/ind=
ex.html?iref=3Dmpstoryview">Convention=20
  report card: Clinton</A> </LI>
  <LI><B>6 </B><A=20
  =
href=3D"http://www.cnn.com/2008/POLITICS/08/28/clintons.tubbs.jones/index=
.html?iref=3Dmpstoryview">A=20
  family's loyalty to the Clintons</A> </LI>
  <LI><B>7 </B><A=20
  =
href=3D"http://www.cnn.com/2008/POLITICS/08/27/dnc.main/index.html?iref=3D=
mpstoryview">It's=20
  official: Dems nominate Obama</A> </LI>
  <LI><B>8 </B><A=20
  =
href=3D"http://www.cnn.com/2008/POLITICS/08/27/dnc.reportcard.biden/index=
.html?iref=3Dmpstoryview">Convention=20
  report card: Joe Biden</A> </LI>
  <LI><B>9 </B><A=20
  =
href=3D"http://www.cnn.com/2008/TECH/08/28/microsoft.broswer.explorer.ap/=
index.html?iref=3Dmpstoryview">Web=20
  surf without leaving a trace</A> </LI>
  <LI><B>10 </B><A=20
  =
href=3D"http://www.cnn.com/2008/WORLD/europe/08/28/russia.georgia.cold.wa=
r/index.html?iref=3Dmpstoryview">Putin=20
  accuses U.S. over Georgia</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/HEALTH/family/08/27/gifted.kids/index.html?im=
w=3DY&amp;iref=3Dmpstoryemail">Is=20
  your kid really gifted? Probably not</A> </LI>
  <LI><B>2 </B><A=20
  =
href=3D"http://cnn.com/2008/LIVING/wayoflife/08/27/lw.help.im.turning.int=
o.my.mom/index.html?imw=3DY&amp;iref=3Dmpstoryemail">Help,=20
  I'm turning into my mother</A> </LI>
  <LI><B>3 </B><A=20
  =
href=3D"http://cnn.com/2008/LIVING/personal/08/26/o.divorce.dreams/index.=
html?imw=3DY&amp;iref=3Dmpstoryemail">She's=20
  happily married, dreaming of...</A> </LI>
  <LI><B>4 </B><A=20
  =
href=3D"http://cnn.com/2008/TECH/08/27/digital.scrolls/index.html?imw=3DY=
&amp;iref=3Dmpstoryemail">Dead=20
  Sea Scrolls go from parchment to...</A> </LI>
  <LI><B>5 </B><A=20
  =
href=3D"http://cnn.com/2008/LIVING/worklife/08/27/cb.jobs.that.pay.70k/in=
dex.html?imw=3DY&amp;iref=3Dmpstoryemail">15=20
  jobs that pay $70,000 per year</A> </LI>
  <LI><B>6 </B><A=20
  =
href=3D"http://cnn.com/2008/US/08/27/lesbian.activist.dies/index.html?imw=
=3DY&amp;iref=3Dmpstoryemail">Lesbian=20
  activist who fought for...</A> </LI>
  <LI><B>7 </B><A=20
  =
href=3D"http://cnn.com/2008/CRIME/08/27/duncan.death.ap/index.html?imw=3D=
Y&amp;iref=3Dmpstoryemail">Child=20
  killer smiles as he hears death...</A> </LI>
  <LI><B>8 </B><A=20
  =
href=3D"http://cnn.com/2008/WORLD/asiapcf/08/27/japan.snakes.ap/index.htm=
l?imw=3DY&amp;iref=3Dmpstoryemail">Bite=20
  reveals 51 poisonous snakes in...</A> </LI>
  <LI><B>9 </B><A=20
  =
href=3D"http://cnn.com/2008/POLITICS/08/27/candidates.education/index.htm=
l?imw=3DY&amp;iref=3Dmpstoryemail">Commentary:=20
  Education lost in hubbub...</A> </LI>
  <LI><B>10 </B><A=20
  =
href=3D"http://cnn.com/2008/HEALTH/conditions/08/27/hiv.nyc/index.html?im=
w=3DY&amp;iref=3Dmpstoryemail">New=20
  York's HIV rate 3 times higher...</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=3Dbigfoot&amp;type=3Dnews&=
amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpstoriessearch">bigfoot</A=
>=20
  </LI>
  <LI><B>2 </B><A=20
  href=3D"http://search.cnn.com/search.jsp?query=3Dbig =
foot&amp;type=3Dnews&amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpstor=
iessearch">big=20
  foot</A> </LI>
  <LI><B>3 </B><A=20
  =
href=3D"http://search.cnn.com/search.jsp?query=3Dibm&amp;type=3Dnews&amp;=
sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpstoriessearch">ibm</A>=20
  </LI>
  <LI><B>4 </B><A=20
  href=3D"http://search.cnn.com/search.jsp?query=3Dpregnant =
man&amp;type=3Dnews&amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpstori=
essearch">pregnant=20
  man</A> </LI>
  <LI><B>5 </B><A=20
  href=3D"http://search.cnn.com/search.jsp?query=3Dcaylee =
anthony&amp;type=3Dnews&amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmps=
toriessearch">caylee=20
  anthony</A> </LI>
  <LI><B>6 </B><A=20
  =
href=3D"http://search.cnn.com/search.jsp?query=3Dcaylee&amp;type=3Dnews&a=
mp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpstoriessearch">caylee</A> =

  </LI>
  <LI><B>7 </B><A=20
  =
href=3D"http://search.cnn.com/search.jsp?query=3Dsasquatch&amp;type=3Dnew=
s&amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpstoriessearch">sasquatc=
h</A>=20
  </LI>
  <LI><B>8 </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>9 </B><A=20
  href=3D"http://search.cnn.com/search.jsp?query=3Dbernie =
mac&amp;type=3Dnews&amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpstori=
essearch">bernie=20
  mac</A> </LI>
  <LI><B>10 </B><A=20
  href=3D"http://search.cnn.com/search.jsp?query=3Dcasey =
anthony&amp;type=3Dnews&amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmps=
toriessearch">casey=20
  anthony</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/us/2008/08/28/lane.jesus.moth.kl=
tv?iref=3Dmpvideosview">A=20
  wing and a prayer<IMG height=3D45 alt=3D"A wing and a prayer"=20
  =
src=3D"http://i2.cdn.turner.com/cnn/video/us/2008/08/28/lane.jesus.moth.k=
ltv.60x45.jpg"=20
  width=3D60 border=3D0></A> </LI>
  <LI><B>2 </B><A=20
  =
href=3D"http://www.cnn.com/video/#/video/politics/2008/08/27/sot.dnc.clin=
ton.entire.cnn?iref=3Dmpvideosview">Bill=20
  Clinton wows Democrats<IMG height=3D45 alt=3D"Bill Clinton wows =
Democrats"=20
  =
src=3D"http://i2.cdn.turner.com/cnn/video/politics/2008/08/27/sot.dnc.cli=
nton.entire.cnn.60x45.jpg"=20
  width=3D60 border=3D0></A> </LI>
  <LI><B>3 </B><A=20
  =
href=3D"http://www.cnn.com/video/#/video/showbiz/2008/08/27/sbt.britney.p=
erforming.cnn?iref=3Dmpvideosview">Britney=20
  performing at VMAs?<IMG height=3D45 alt=3D"Britney performing at =
VMAs?"=20
  =
src=3D"http://i2.cdn.turner.com/cnn/video/showbiz/2008/08/27/sbt.britney.=
performing.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/08/27/sotvo.dnc.ob=
ama.stage.cnn?iref=3Dmpvideosview">Obama=20
  makes 'surprise' visit<IMG height=3D45 alt=3D"Obama makes 'surprise' =
visit"=20
  =
src=3D"http://i2.cdn.turner.com/cnn/video/politics/2008/08/27/sotvo.dnc.o=
bama.stage.cnn.60x45.jpg"=20
  width=3D60 border=3D0></A> </LI>
  <LI><B>5 </B><A=20
  =
href=3D"http://www.cnn.com/video/#/video/politics/2008/08/28/sot.dnc.beau=
.biden.overcome.cnn?iref=3Dmpvideosview">Tragedy=20
  shaped Biden<IMG height=3D45 alt=3D"Tragedy shaped Biden"=20
  =
src=3D"http://i2.cdn.turner.com/cnn/video/politics/2008/08/28/sot.dnc.bea=
u.biden.overcome.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/politics/2008/08/27/sot.dnc.clin=
ton.entire.cnn?iref=3Dmpvideosemail">Bill=20
  Clinton wows Democrats<IMG height=3D45 alt=3D"Bill Clinton wows =
Democrats"=20
  =
src=3D"http://i2.cdn.turner.com/cnn/video/politics/2008/08/27/sot.dnc.cli=
nton.entire.cnn.60x45.jpg"=20
  width=3D60 border=3D0></A> </LI>
  <LI><B>2 </B><A=20
  =
href=3D"http://www.cnn.com/video/?/video/politics/2008/08/27/sot.hillary.=
supporter.cnn?iref=3Dmpvideosemail">Clinton=20
  supporter may not vote<IMG height=3D45 alt=3D"Clinton supporter may =
not vote"=20
  =
src=3D"http://i2.cdn.turner.com/cnn/video/politics/2008/08/27/sot.hillary=
.supporter.cnn.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/08/26/sot.hillary.=
entire.cnn?iref=3Dmpvideosemail">Clinton=20
  supports Obama<IMG height=3D45 alt=3D"Clinton supports Obama"=20
  =
src=3D"http://i2.cdn.turner.com/cnn/video/politics/2008/08/27/sot.hillary=
.entire.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/08/27/sotvo.obama.=
nominated.cnn?iref=3Dmpvideosemail">Democrats=20
  nominate Obama<IMG height=3D45 alt=3D"Democrats nominate Obama"=20
  =
src=3D"http://i2.cdn.turner.com/cnn/video/politics/2008/08/27/newtest.cnn=
.60x45.jpg"=20
  width=3D60 border=3D0></A> </LI>
  <LI><B>5 </B><A=20
  =
href=3D"http://www.cnn.com/video/?/video/weather/2008/08/27/vo.az.woman.d=
rives.into.flood.knxv?iref=3Dmpvideosemail">Car=20
  swept along by flood<IMG height=3D45 alt=3D"Car swept along by flood"=20
  =
src=3D"http://i2.cdn.turner.com/cnn/video/weather/2008/08/27/vo.az.woman.=
drives.into.flood.knxv.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=3Dmichelle =
obama&amp;type=3Dnews&amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpvid=
eossearch">michelle=20
  obama</A> </LI>
  <LI><B>3 </B><A=20
  href=3D"http://search.cnn.com/search.jsp?query=3Djohn =
kerry&amp;type=3Dnews&amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpvid=
eossearch">john=20
  kerry</A> </LI>
  <LI><B>4 </B><A=20
  href=3D"http://search.cnn.com/search.jsp?query=3Dhillary =
clinton&amp;type=3Dnews&amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpv=
ideossearch">hillary=20
  clinton</A> </LI>
  <LI><B>5 </B><A=20
  =
href=3D"http://search.cnn.com/search.jsp?query=3Dbiden&amp;type=3Dnews&am=
p;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpvideossearch">biden</A>=20
  </LI>
  <LI><B>6 </B><A=20
  =
href=3D"http://search.cnn.com/search.jsp?query=3Dkerry&amp;type=3Dnews&am=
p;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpvideossearch">kerry</A>=20
  </LI>
  <LI><B>7 </B><A=20
  href=3D"http://search.cnn.com/search.jsp?query=3Djoe =
biden&amp;type=3Dnews&amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpvid=
eossearch">joe=20
  biden</A> </LI>
  <LI><B>8 </B><A=20
  href=3D"http://search.cnn.com/search.jsp?query=3Dbeau =
biden&amp;type=3Dnews&amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpvid=
eossearch">beau=20
  biden</A> </LI>
  <LI><B>9 </B><A=20
  href=3D"http://search.cnn.com/search.jsp?query=3Dbill =
clinton&amp;type=3Dnews&amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpv=
ideossearch">bill=20
  clinton</A> </LI>
  <LI><B>10 </B><A=20
  =
href=3D"http://search.cnn.com/search.jsp?query=3Dgeorgia&amp;type=3Dnews&=
amp;sortBy=3Ddate&amp;intl=3Dfalse&amp;iref=3Dmpvideossearch">georgia</A>=
=20
  </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><!--include =
virtual=3D"/.element/ssi/www/auto/2.0/mostpopular/mp.topics.txt" -->
<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/us/intg_story_article/adlinks.336x280.ad';
var cnnVideoContAd =3D =
'/cnn_adspaces/2.0/us/intg_story_video/adlinks.336x280.ad';
var cnnPhotoContAd =3D =
'/cnn_adspaces/2.0/us/intg_story_photo/adlinks.336x280.ad';
var otherTab1ContAd =3D =
'/cnn_adspaces/2.0/us/intg_story_other/adlinks.336x280.ad';
var otherTab2ContAd =3D =
'/cnn_adspaces/2.0/us/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 id=3DcnnLnkMopt=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=3D"><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 id=3DcnnLnkPt=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=3D">Par=
t Time=20
Jobs</A></SPAN><BR>=95 <SPAN class=3Dtext><A id=3DcnnLnkSal=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=
">Sales=20
&amp; Marketing Jobs</A></SPAN><BR>=95 <SPAN class=3Dtext><A =
id=3DcnnLnkCs=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=
">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
id=3DcnnLnkSiteID type=3Dhidden value=3Dcbcnn name=3Dlr> <INPUT =
id=3DQSTS type=3Dhidden=20
value=3DALL,US name=3DQSSTS> <INPUT id=3DSearchBtn type=3Dhidden =
value=3DSearch=20
name=3DSearchBtn> <INPUT id=3DMXJobSrchCriteria_JobTypes type=3Dhidden=20
name=3DMXJobSrchCriteria_JobTypes> <SPAN =
class=3DcnnCB336Keyword>keyword(s):</SPAN>=20
<INPUT class=3DCBkeywordBox id=3Dkeyword maxLength=3D25 =
name=3DQSKWD><BR><SPAN=20
class=3DcnnCB354CityTxt>enter city:</SPAN> <INPUT class=3DCBkeywordBox =
id=3Dkeyword=20
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 id=3DcnnLnkMopt2=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=3D">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/US/08/27/tomb.unknowns/index.html#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>
<SCRIPT type=3Dtext/javascript>cnnSetCBVars();</SCRIPT>
<!-- AD IMAGE -->
<DIV class=3DcnnAdvertTxt336B=20
style=3D"MARGIN-BOTTOM: -5px; PADDING-BOTTOM: 0px; OVERFLOW: =
visible"><IMG=20
height=3D5 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/content/ads/advertise=
ment_right_rail.gif"=20
width=3D59 border=3D0></DIV><!-- /AD IMAGE --></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://i2.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/ri=
ght_rail/grey_corner_BL.gif"=20
width=3D4 border=3D0></DIV></DIV></DIV>
<DIV class=3Dclear><IMG height=3D1 alt=3D""=20
src=3D"http://i2.cdn.turner.com/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://i2.cdn.turner.com/cnn/.element/img/2.0/mosaic/base_skins/ba=
seplate/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.cdn.turner.com/cnn/.element/img/2.0/global/nav/footer/cor=
ner_footer_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/newsletters/membercenter.do"=
>Preferences</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.cdn.turner.com/cnn/.element/img/2.0/global/nav/footer/foo=
ter_google_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.cdn.turner.com/cnn/.element/img/2.0/global/nav/footer/foo=
ter_search_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.cdn.turner.com/cnn/.element/img/2.0/global/nav/footer/cor=
ner_footer_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"=20
rel=3Dnofollow>Terms of service</A> &nbsp;|&nbsp; <A=20
href=3D"http://www.cnn.com/privacy.html" rel=3Dnofollow>Privacy =
guidelines</A>=20
&nbsp;|&nbsp; <A =
href=3D"http://www.cnn.com/services/advertise/main.html"=20
rel=3Dnofollow>Advertise with us</A> &nbsp;|&nbsp; <A=20
href=3D"http://www.cnn.com/about/">About us</A> &nbsp;|&nbsp; <A=20
href=3D"http://www.cnn.com/feedback/" rel=3Dnofollow>Contact us</A> =
&nbsp;|&nbsp; <A=20
href=3D"http://www.cnn.com/help/" rel=3Dnofollow>Help</A></DIV></DIV>
<DIV class=3Dclear><IMG height=3D1 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/images/1.gif" width=3D1=20
border=3D0></DIV></DIV></DIV><!-- /cnnFooter -->
<SCRIPT =
src=3D"http://content.dl-rms.com/rms/mother/5721/nodetag.js"></SCRIPT>
<IMG id=3DTargetImage height=3D1 alt=3D""=20
src=3D"http://i.cdn.turner.com/cnn/images/1.gif" width=3D1=20
onload=3DgetAdHeadCookie(this) name=3DTargetImage><IMG =
id=3DTargetImageDE height=3D1=20
alt=3D"" src=3D"http://i.cdn.turner.com/cnn/images/1.gif" width=3D1=20
onload=3DgetDEAdHeadCookie(this) name=3DTargetImageDE><IMG =
id=3DcookieCrumb height=3D0=20
alt=3D"" hspace=3D0 src=3D"http://i.cdn.turner.com/cnn/images/1.gif" =
width=3D0=20
align=3Dright border=3D0 name=3DcookieCrumb> <!-- SiteCatalyst code -->
<SCRIPT language=3DJavaScript=20
src=3D"http://i.cdn.turner.com/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>
<LINK =
href=3D"http://i.cdn.turner.com/cnn/.e/css/2.0/CNNVideoControlsBVP.css"=20
type=3Dtext/css rel=3Dstylesheet><!--[if LT IE 7]>=0A=
<link rel=3D"stylesheet" type=3D"text/css" =
href=3D"http://i.cdn.turner.com/cnn/.e/css/2.0/CNNVideoControlsIEPNGFIX.c=
ss">=0A=
<![endif]-->
<SCRIPT =
src=3D"http://i.cdn.turner.com/cnn/.e/js/2.0/scripts/scriptaculous.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://i.cdn.turner.com/cnn/.e/js/2.0/video/common/primary.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://i.cdn.turner.com/cnn/.e/js/2.0/video/xmp/xmp_net.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://i.cdn.turner.com/cnn/.e/js/2.0/video/xmp/xmp_util.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://i.cdn.turner.com/cnn/.e/js/2.0/video/xmp/xmp_views.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://i.cdn.turner.com/cnn/.e/js/2.0/video/xmp/xmp_playerapi.js" =

type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://i.cdn.turner.com/cnn/.e/js/2.0/video/xmp/xmp_playerapi_nati=
ve.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://i.cdn.turner.com/cnn/.e/js/2.0/video/xmp/xmp_playlistapi.js=
"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://i.cdn.turner.com/cnn/.e/js/2.0/video/xmp/xmp_services.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://i.cdn.turner.com/cnn/.e/js/2.0/video/xmp/xmp_baseplayer.js"=
=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://i.cdn.turner.com/cnn/.e/js/2.0/video/common/cnnplayer.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://i.cdn.turner.com/cnn/.e/js/2.0/video/common/trigger_command=
s.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://i.cdn.turner.com/cnn/.e/js/2.0/video/common/bvplisteners.js=
"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://i.cdn.turner.com/cnn/.e/js/2.0/video/common/playlistmanager=
.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://i.cdn.turner.com/cnn/.e/js/2.0/video/common/videoControls.j=
s"=20
type=3Dtext/javascript></SCRIPT>
</BODY></HTML>

------=_NextPart_001_009B_01C908F8.67A22140
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://svcs.cnn.com/weather/wrapper.jsp?&csiID=csi1

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Diso-8859-1">
<SCRIPT type=3Dtext/javascript> var cnnDocDomain=3D'';
 if(location.hostname.indexOf('cnn.com')>0) { cnnDocDomain=3D'cnn.com'; =
}
 if(location.hostname.indexOf('turner.com')>0) {=20
 cnnDocDomain=3D'turner.com'; }
 if(cnnDocDomain) { document.domain =3D cnnDocDomain;} </SCRIPT>

<SCRIPT =
src=3D"http://i.cdn.turner.com/cnn/.element/js/2.0/csi_include.js"=20
type=3Dtext/javascript></SCRIPT>

<META content=3D"MSHTML 6.00.6000.16705" name=3DGENERATOR></HEAD>
<BODY onload=3DcnnSend()>
<FORM name=3DmainForm><TEXTAREA id=3DhtmlArea>=20



=09




&lt;span class=3D"cnnHeadWeather"&gt;&lt;a =
href=3D"http://weather.cnn.com/weather/forecast.jsp?iref=3Dwxglobaldefaul=
t"&gt;Weather Forecast&lt;/a&gt;&lt;/span&gt;



=20
 </TEXTAREA> </FORM></BODY></HTML>

------=_NextPart_001_009B_01C908F8.67A22140--

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/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_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/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=
var cnnad_interstitialPID =3D null;=0A=
var cnnad_interstitialPlaying =3D false;=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_debug (m)=0A=
{=0A=
	if (typeof(console) !=3D 'undefined' && typeof(console.debug) !=3D =
'undefined')=0A=
	{=0A=
		console.debug(m);=0A=
	}=0A=
}=0A=
=0A=
function cnnad_error (m)=0A=
{=0A=
	if (typeof(console) !=3D 'undefined' && typeof(console.error) !=3D =
'undefined')=0A=
	{=0A=
		console.error(m);=0A=
	}=0A=
}=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_isBlocking (id)=0A=
{=0A=
	var blocking =3D false;=0A=
=0A=
	if(document.getElementById('ad-'+id).style.display =3D=3D=3D 'none')=0A=
	{=0A=
		blocking =3D true;=0A=
	}=0A=
=0A=
	else if (cnnad_interstitialPlaying =3D=3D=3D true)=0A=
	{=0A=
		blocking =3D true;=0A=
	}=0A=
=0A=
	return blocking;=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.position =3D 'absolute';=0A=
	iframe.style.top =3D '-20px';=0A=
	iframe.style.left =3D '-20px';=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_createAdHelper (adId, cnnad_url, cnnad_height, =
cnnad_width, target)=0A=
{=0A=
	if (cnnad_isBlocking(adId))=0A=
	{=0A=
		=
window.setTimeout(function(){cnnad_createAdHelper(adId,cnnad_url,cnnad_he=
ight,cnnad_width,target);},1000);=0A=
	}=0A=
	else=0A=
	{=0A=
		var d =3D document.getElementById('ad-' + adId);=0A=
		if (d)=0A=
		{=0A=
			d.appendChild(cnnad_createIframe(adId,cnnad_url));=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 + =
'" border=3D"0" frameBorder=3D"0" height=3D"0" width=3D"0" =
scrolling=3D"no"  id=3D"'+adId+'" style=3D"position: absolute; top: =
-20px; left: -20px;" ></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 + '" border=3D"0" =
frameBorder=3D"0" height=3D"0" width=3D"0" scrolling=3D"no"  =
id=3D"'+adId+'" style=3D"position: absolute; top: -20px; left: -20px;" =
></iframe>';=0A=
			}=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
function =
cnnad_createAdNoTileId(adId,cnnad_url,cnnad_height,cnnad_width,target) {=0A=
	cnnad_url =3D cnnad_preview(cnnad_url);=0A=
	cnnad_url +=3D 'domId=3D' + adId;=0A=
	=
cnnad_createAdHelper(adId,cnnad_url,cnnad_height,cnnad_width,target,false=
);=0A=
}=0A=
=0A=
function cnnad_createAd(adId,cnnad_url,cnnad_height,cnnad_width,target) {=0A=
	cnnad_url =3D cnnad_preview(cnnad_url);=0A=
	cnnad_url +=3D '&tile=3D' + cnnad_tileID + '&domId=3D' + adId;=0A=
	=
cnnad_createAdHelper(adId,cnnad_url,cnnad_height,cnnad_width,target,false=
);=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=
	var e =3D document.getElementById(cnnad_id);=0A=
	if (e)=0A=
	{=0A=
		e.style.position =3D 'relative';=0A=
		e.style.left =3D '0px';=0A=
		e.style.top =3D '0px';=0A=
=0A=
		if (e.style.visibility =3D=3D=3D 'hidden')=0A=
		{=0A=
			e.style.visibility =3D 'visible';=0A=
		}=0A=
		if (e.style.display =3D=3D=3D 'none')=0A=
		{=0A=
			e.style.display =3D 'block';=0A=
		}=0A=
	}=0A=
	else =0A=
	{=0A=
		cnnad_error("Could not find element by id: " + cnnad_id);=0A=
	}=0A=
}=0A=
=0A=
function cnnad_setAdSize(docId,height,width) {=0A=
	var i =3D document.getElementById(docId);=0A=
        if (i)=0A=
	{=0A=
                i.height =3D height;=0A=
                i.width =3D width;=0A=
        }=0A=
	else =0A=
	{=0A=
		cnnad_error("Could not find element by id: " + cnnad_id);=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=
    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);=0A=
    }=0A=
}=0A=
=0A=
function cnnad_swapAd (id, newAdLoc)=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.display =3D 'none';=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=
											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=
								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=
function cnnad_endInterstitial(adId)=0A=
{=0A=
	// remove the interstitial node=0A=
	var adNode =3D document.getElementById('interstitial'+adId);=0A=
	if(adNode && adNode.parentNode)=0A=
	{=0A=
		adNode.parentNode.removeChild(adNode);=0A=
	}=0A=
=0A=
	// remove the interstitial related CSS node=0A=
	var styleNode =3D document.getElementById('interstitialcss' + adId);=0A=
	if (styleNode && styleNode.parentNode)=0A=
	{=0A=
		styleNode.parentNode.removeChild(styleNode);=0A=
	}=0A=
=0A=
	// for IE, we need to add another style to make sure tables show up=0A=
	if (typeof(document.createStyleSheet) !=3D 'undefined')=0A=
	{=0A=
		var cssNode =3D document.createStyleSheet();=0A=
		cssNode.addRule('table','{display:inline}');=0A=
	}=0A=
=0A=
	cnnad_interstitialPlaying =3D false;=0A=
}=0A=
=0A=
function cnnad_startInterstitial(adId,cnnad_url,timeout) =0A=
{=0A=
	cnnad_interstitialPlaying =3D true;=0A=
	var adUrl =3D  cnnad_url + '&tile=3D' + cnnad_tileID + =
'&page.allowcompete=3Dyes&domId=3D' + adId;=0A=
	document.write('<div id=3D"interstitial'+adId+'" class=3D"interstitial" =
align=3D"center"><iframe ALLOWTRANSPARENCY=3D"true" hspace=3D"0" =
vspace=3D"0" marginHeight=3D"0" marginWidth=3D"0" src=3D"'+adUrl+'" =
border=3D"0" frameBorder=3D"0" height=3D"0" width=3D"0" scrolling=3D"no" =
id=3D"'+adId+'"></iframe></div>');=0A=
	if(!timeout) { timeout =3D 1500;}=0A=
	cnnad_interstitialPID =3D =
window.setTimeout('cnnad_endInterstitial("'+adId+'");',timeout);=0A=
}=0A=
=0A=
function cnnad_resetInterstitial(adId,timeout)=0A=
{=0A=
	cnnad_interstitialPlaying =3D true;=0A=
	var elem =3D document.getElementById(adId)=0A=
	if (null !=3D elem && elem.height > 20 && elem.width > 20)=0A=
	{=0A=
		if(cnnad_interstitialPID)=0A=
		{=0A=
			window.clearTimeout(cnnad_interstitialPID);=0A=
		}=0A=
		if(!timeout) { timeout =3D 15000;}=0A=
		cnnad_interstitialPID =3D =
window.setTimeout('cnnad_endInterstitial("'+adId+'");',timeout);=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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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;

function CNN_getCookies() {
	var hash =3D new Array;
	if ( document.cookie ) {
		var cookies =3D document.cookie.split( '; ' );
		for ( var i =3D 0; i < cookies.length; i++ ) {
			var namevaluePairs =3D cookies[i].split( '=3D' );
			hash[namevaluePairs[0]] =3D unescape( namevaluePairs[1] ) || null;
		}
	}
	return hash;
}

function CNN_parseCookieData( cookieDataString ) {
	var cookieValues =3D new Object();
	var separatePairs =3D cookieDataString.split( '&' );
	for ( var i =3D 0; i < separatePairs.length; i++  ) {
		var separateValues =3D separatePairs[i].split( ':' );
		cookieValues[separateValues[0]] =3D separateValues[1] || null;
	}
	return cookieValues;
}

function CNN_setCookie( name, value, hours, path, domain, secure ) {
		var numHours =3D 0;

		if ( hours) {
			if ( (typeof(hours) =3D=3D 'string') && Date.parse(hours) ) { // =
already a Date string
				numHours =3D hours;
			} else if ( typeof(hours) =3D=3D 'number' ) { // calculate Date from =
number of hours
				numHours =3D ( new Date((new Date()).getTime() + hours*3600000) =
).toGMTString();
			}
		}

		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.

}


function CNN_killCookie( name, path, domain ) {
	var allCookies =3D CNN_getCookies();

	var theValue =3D allCookies[ name ] || null; // We need the value to =
kill the cookie
	if ( theValue ) {
		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
	}
}


var allCookies =3D CNN_getCookies();
var cnnDomainArray =3D location.hostname.split( '.' );
var cnnCurrDomain =3D ( cnnDomainArray.length > 1 ) ? '.' + =
cnnDomainArray[cnnDomainArray.length-2] + '.' + =
cnnDomainArray[cnnDomainArray.length-1] : '';

var pagetypeTS=3D"";

function cnnRenderTimeStamp(date,timeString) {
	var cnnIsIntl =3D (location.hostname.indexOf('edition.') > -1) ? true : =
false;
	cnnStoryPublishTime =3D (date) ? new Date(date) : cnnStoryPublishTime;
	var days =3D new Array('Sun','Mon','Tue','Wed','Thur','Fri','Sat');
	var months =3D new Array('January', 'February', 'March', 'April', =
'May', 'June', 'July', 'August', 'September', 'October', 'November', =
'December');

    var cnnTimeStampDiff =3D cnnCurrTime.getTime() - =
cnnStoryPublishTime.getTime();

    var daysDifference =3D Math.floor(cnnTimeStampDiff/1000/60/60/24);

    cnnTimeStampDiff -=3D daysDifference*1000*60*60*24

    var hoursDifference =3D Math.floor(cnnTimeStampDiff/1000/60/60);

    cnnTimeStampDiff -=3D hoursDifference*1000*60*60

    var minutesDifference =3D Math.floor(cnnTimeStampDiff/1000/60);

    cnnTimeStampDiff -=3D minutesDifference*1000*60

	var cnnDays =3D (daysDifference > 1) ? "days" : "day";
	var cnnHours =3D (hoursDifference > 1) ? "hours" : "hour";
	var cnnMinutes =3D (minutesDifference > 1) ? "minutes" : "minute";
	var cnnHPMinutes =3D "min";
	var cnnCMSTimeString =3D '';
	var cnnBlankString =3D "";

	if (timeString) {
		cnnCMSTimeString =3D (cnnIsIntl) ? timeString[0] : timeString[1];
	}	else { //for legacy support
		cnnCMSTimeString =3D "updated " + (!cnnIsIntl ? =
days[cnnStoryPublishTime.getUTCDay()] : '') + " " + =
months[cnnStoryPublishTime.getUTCMonth()] + " " + =
cnnStoryPublishTime.getUTCDate() + ", " + =
cnnStoryPublishTime.getUTCFullYear();
	}


	if (hoursDifference > 4 && daysDifference >=3D 0 || daysDifference >=3D =
1) {
		switch(pagetypeTS) {
			case "homepage": //t2 formatted
				return cnnBlankString;
			break;
			case "mosaic":
				return "<div class=3D\"cnnGryTmeStmp\">" + cnnCMSTimeString + =
"<\/div>";
			break;
			case "section":
			default:
				if (pagetypeTS =3D=3D 'section' && cnnIsIntl) {
					return "<div class=3D\"cnnGryTmeStmp\">" + cnnCMSTimeString + =
"<\/div>";
				} else {
					return "<div class=3D\"cnnGryTmeStmp\">updated " + (!cnnIsIntl ? =
days[cnnStoryPublishTime.getUTCDay()] : '') + " " + =
months[cnnStoryPublishTime.getUTCMonth()] + " " + =
cnnStoryPublishTime.getUTCDate() + ", " + =
cnnStoryPublishTime.getUTCFullYear() + "<\/div>";
				}
		}
	} else if( hoursDifference <=3D 4 && hoursDifference >=3D 1) {
		switch(pagetypeTS) {
			case "homepage": //t2 formatted
				return cnnBlankString;
			break;
			case "mosaic":
			default:
				if (minutesDifference > 0) {
					return "<div class=3D\"cnnGryTmeStmp\">updated " + hoursDifference =
+ " "+cnnHours+", " + minutesDifference + " "+cnnMinutes+" ago<\/div>";
				} else {
					return "<div class=3D\"cnnGryTmeStmp\">updated " + hoursDifference =
+ " "+cnnHours+" ago<\/div>";
				}
		}
	} else {
		switch(pagetypeTS) {
			case "homepage": //t2 formatted
				if(hoursDifference < 1 && minutesDifference > 0){
					return '<span>' + minutesDifference + " min<\/span>";
				} else {
					return "<span>1 min<\/span>";
				}
			break;
			case "mosaic":
			default:
				if(hoursDifference < 1 && minutesDifference > 0){
					return "updated " + minutesDifference + " "+cnnMinutes+" ago";
				} else {
					return "updated 1 minute ago";
				}
		}

	}
}

function cnnRenderBackStoryTimeStamp(date,timeString) {
	cnnStoryPublishTime =3D new Date(date);
	var days =3D new Array('Sun','Mon','Tue','Wed','Thur','Fri','Sat');
	var months =3D new Array('January', 'February', 'March', 'April', =
'May', 'June', 'July', 'August', 'September', 'October', 'November', =
'December');
    var cnnTimeStampDiff =3D cnnCurrTime.getTime() - =
cnnStoryPublishTime.getTime();
    var daysDifference =3D Math.floor(cnnTimeStampDiff/1000/60/60/24);
    cnnTimeStampDiff -=3D daysDifference*1000*60*60*24
    var hoursDifference =3D Math.floor(cnnTimeStampDiff/1000/60/60);
    cnnTimeStampDiff -=3D hoursDifference*1000*60*60
    var minutesDifference =3D Math.floor(cnnTimeStampDiff/1000/60);
    cnnTimeStampDiff -=3D minutesDifference*1000*60
	var cnnDays =3D (daysDifference > 1) ? "days" : "day";
	var cnnHours =3D (hoursDifference > 1) ? "hours" : "hour";
	var cnnMinutes =3D (minutesDifference > 1) ? "minutes" : "minute";
	var cnnCMSTimeString =3D '';
	if (timeString) {
		cnnCMSTimeString =3D timeString;
	}
	if (hoursDifference > 4 && daysDifference >=3D 0 || daysDifference >=3D =
1) {
		return "<span class=3D\"cnnDate\">" + cnnCMSTimeString + "<\/span>";
	} else if( hoursDifference <=3D 4 && hoursDifference >=3D 1) {
		if (minutesDifference > 0) {
			return "<span class=3D\"cnnDate\">updated " + hoursDifference + " =
"+cnnHours+", " + minutesDifference + " "+cnnMinutes+" ago<\/span>";
		} else {
			return "<span class=3D\"cnnDate\">updated " + hoursDifference + " =
"+cnnHours+" ago<\/span>";
		}
	} else {
		if(hoursDifference < 1 && minutesDifference > 0){
			return "<span class=3D\"cnnDate\" style=3D\"color:#CB0003;\">updated =
" + minutesDifference + " "+cnnMinutes+" ago</span>";
		} else {
			return "<span class=3D\"cnnDate\" style=3D\"color:#CB0003;\">updated =
1 minute ago</span>";
		}
	}
}

function cnnRenderT1TimeStamp(date,useLongFormat) {

	cnnStoryPublishTime =3D (date) ? new Date(date) : cnnStoryPublishTime;
	var cnnTimeStampString;
	var nullString=3D"";



    var cnnTimeStampDiff =3D cnnCurrTime.getTime() - =
cnnStoryPublishTime.getTime();

    var daysDifference =3D Math.floor(cnnTimeStampDiff/1000/60/60/24);

    cnnTimeStampDiff -=3D daysDifference*1000*60*60*24

    var hoursDifference =3D Math.floor(cnnTimeStampDiff/1000/60/60);

    cnnTimeStampDiff -=3D hoursDifference*1000*60*60

    var minutesDifference =3D Math.floor(cnnTimeStampDiff/1000/60);

    cnnTimeStampDiff -=3D minutesDifference*1000*60

    var secondsDifference =3D Math.floor(cnnTimeStampDiff/1000);


	var cnnDays =3D (daysDifference > 1) ? "days" : "day";
	var cnnHours =3D (hoursDifference > 1) ? "hours" : "hour";
	var cnnMinutes =3D (minutesDifference > 1) ? "minutes" : "minute";
	var cnnSeconds =3D (secondsDifference > 1) ? "seconds" : "second";
	var cnnHPMinutes =3D (minutesDifference > 1) ? "minutes" : "minute";
	var cnnHPSeconds =3D (secondsDifference > 1) ? "secs" : "sec";

	if (pagetypeTS=3D=3D'homepage') {

			cnnTimeStampString =3D 'updated ';

		if(hoursDifference < 1 && minutesDifference > 0){
			cnnTimeStampString +=3D minutesDifference + " =
"+(useLongFormat?cnnMinutes:cnnHPMinutes)+" ago";
		} else if(hoursDifference < 1 && minutesDifference < 1) {
			cnnTimeStampString +=3D secondsDifference + " =
"+(useLongFormat?cnnSeconds:cnnHPSeconds)+" ago";
		} else if(hoursDifference >=3D 1) {
			return nullString;
		}
		return '<span>'+cnnTimeStampString+'</span>';
	}

}


function CNN_submitUserComment(form) {
var cnnSubmitForm =3D true;

if(typeof(cnnThread) !=3D "undefined") {
	$(form).threadName.value =3D cnnThread;
}
if(typeof(cnnForum) !=3D "undefined") {
  $(form).forumName.value  =3D cnnForum;
}

var errorDivs =3D $('cnnROCSubFrm').getElementsByClassName('cnnError');
for (var i =3D 0; i<errorDivs.length; i++) {
	errorDivs[i].remove();
}

allFormEls =3D Form.getElements(form);
for(i =3D 0; i < allFormEls.length; i++) {
    //do something to each form field
    allFormEls[i].value =3D =
allFormEls[i].value.strip().stripScripts().stripTags();
    if (allFormEls[i].value =3D=3D "") {
    		if (allFormEls[i].name =3D=3D "name") {
    			new Insertion.Before('cnnUserResponseName',' <span =
id=3D"cnnUserResponseNameError" class=3D"cnnError">&raquo;<\/span>');
    		}
    		if (allFormEls[i].name =3D=3D "location") {
    			new Insertion.Before('cnnUserResponseLocation',' <span =
id=3D"cnnUserResponseNameError" class=3D"cnnError">&raquo;<\/span>');
    		}
    		if (allFormEls[i].name =3D=3D "body") {
    			new Insertion.Before('cnnUserResponseComment',' <span =
id=3D"cnnUserResponseNameError" class=3D"cnnError">&raquo;<\/span>');
    		}
    	cnnSubmitForm =3D false;
	}
}

	if (cnnSubmitForm) {

			new Effect.Opacity('cnnROCFrm',
					{
						duration:1.0,
						from:1.0,
						to:0,
						beforeStart:function() {
					  		document.cnnROCSubFrm.submit();
						},
						afterFinish: function(obj)
							{
							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>";
									new Effect.Opacity('cnnROCFrmComplete',
										{
											duration:1.0,
											from:0,
											to:1.0,
											beforeUpdate:function(obj) {
												$('cnnROCFrm').hide();
												obj.element.show();
											}
										}
									);
							}

					}
				);
	}
}

function CNN_toggleSubmissionForm(show,hide) {

new Effect.Opacity(hide,
					{
						duration:1.0,
						from:1.0,
						to:0,
						afterFinish: function(obj)
							{
								new Effect.Opacity(show,
										{
											duration:1.0,
											from:0,
											to:1.0,
											beforeUpdate:function(obj) {
												$(hide).hide();
												obj.element.show();
											}
										}
									);
							}
					}
				)


}

function cnnShowExtendedComments(el) {
	var block =3D =
document.getElementsByClassName('cnnExtended',el.parentNode.parentNode);
	if (block && block.length > 0) {
		cnnToggleUGC(block[0],el);
		el.style.display =3D "none";
	}
}

function cnnHideExtendedComments(el) {
	var block =3D el.parentNode.parentNode;
	var blockLinks =3D block.parentNode.getElementsByTagName('a');
	if (block) {
		cnnToggleUGC(block,el);
			for (var i=3D0; i < blockLinks.length; i++) {
				blockLinks[i].style.display =3D "inline";
		}
	}
}

function cnnShowMore(el) {
	var block =3D =
document.getElementsByClassName('cnnExtended',el.parentNode.parentNode);
	var initialGraph =3D el.parentNode.getElementsByTagName('p');
	if (block && block.length > 0) {
el.parentNode.hide();
block[0].show();
	}
}

function cnnShowLess(el) {
	var block =3D el.parentNode.parentNode;
	var blockLinks =3D block.parentNode.getElementsByTagName('p');

	block.hide();
	blockLinks[0].show();

}

function cnnToggleUGC(el,lnk) {
	if (cnnLockToggle) {
		return;
	}

	cnnLockToggle =3D true;
	var cnnToggleClass =3D (lnk.parentNode.className.indexOf('Closed') > =
-1) ? true : false;

		Effect.toggle(el,'blind',
		{
			beforeStart:function(obj) {
				try {
					lnk.blur();
				} catch(e) {};
				if (cnnToggleClass) {
				switch(lnk.parentNode.className) {
					case 'cnnOpinionClosed':
						lnk.parentNode.className =3D 'cnnOpinion';
					break;
					case 'cnnIReportClosed':
						lnk.parentNode.className =3D 'cnnIReport';
					break;
					case 'cnnBlogsClosed':
						lnk.parentNode.className =3D 'cnnBlogs';
						Sphere.Widget.search();
					break;
					default:
				}
				}

			},
			afterFinish:function(obj) {
				if (!cnnToggleClass) {
				switch(lnk.parentNode.className) {
					case 'cnnOpinion':
						lnk.parentNode.className =3D 'cnnOpinionClosed';
					break;
					case 'cnnIReport':
						lnk.parentNode.className =3D 'cnnIReportClosed';
					break;
					case 'cnnBlogs':
						lnk.parentNode.className =3D 'cnnBlogsClosed';
					break;
					default:
				}
				}
				cnnLockToggle =3D false;
			}
		}
	);
}

function cnnToggleNestedContent(el,lnk,num,desc) {
if (cnnLockToggle) {
	return;
}

cnnLockToggle =3D true;
var cnnLnkTxt =3D "Last 3 comments only";
		Effect.toggle(el,'blind',
		{
			duration:0.5,
			afterFinish: function() {
				if(!desc) {
					if (lnk.innerHTML =3D=3D cnnLnkTxt) {
						lnk.innerHTML =3D "See all " + num + " comments";
					} else {
						lnk.innerHTML =3D cnnLnkTxt;
					}
				}
				cnnLockToggle =3D false;
			},
			beforeStart: function() {
				if(desc) {
					$(lnk).style.display =3D "none";
				}

			}
		}

		);


}


function CNN_displayBlogContent(widgetLoading,widgetContent) {
	if (!$(widgetLoading) || !$(widgetContent)) {
		return;
	}

			Effect.BlindUp(widgetLoading,
				{
					afterFinish:function(obj) {
						$(obj.element.id).remove();
					}
				}
			);
			Effect.BlindDown(widgetContent);
}


var cnnHasOpenPopup =3D 0;
// this is for opening pop-up windows
function CNN_openPopup( url, name, widgets, openerUrl )
{
	var host =3D location.hostname;
	if (window =3D=3D top) { window.top.name =3D "opener"; }
	var popupWin =3D window.open( url, name, widgets );
	if(popupWin) {cnnHasOpenPopup =3D 1;}
	if ( popupWin && popupWin.opener ) {
		if ( openerUrl )
		{
			popupWin.opener.location =3D openerUrl;
		}
	}
	if ( popupWin) {
		popupWin.focus();
	}
}

function cnnImgSwap( strId, intSwap ) {
	// assumes 2 images: image.gif and image_over.gif
	var imgObj =3D (typeof(strId) =3D=3D "object") ? =
strId.getElementsByTagName('img')[0] : document.getElementById( strId );
	var strTemp =3D imgObj.src;
	var intStrLength =3D strTemp.length;
	var intChop, strEnd;

	if ( intSwap ) {
		if (strTemp.indexOf('_over.gif') =3D=3D -1) {
			intChop =3D intStrLength - 4;
			strEnd =3D '_over.gif';
		}
	} else {
		if (strTemp.indexOf('_over.gif') > -1) {
			intChop =3D intStrLength - 9;
			strEnd =3D '.gif';
		}
	}

	if (typeof(intChop) !=3D "undefined") {
		strTemp =3D strTemp.substring( 0, intChop );
	}

	if (typeof(strEnd) !=3D "undefined") {
		imgObj.src =3D strTemp + strEnd;
	}
}

/*

Flash Detect and Render
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

The CNN_FlashObject takes a few required arguments...

	name ......... the id/name of the object/embed
	src .......... the URL of the swf
	width ........ (i think this should be required)
	height ....... (i think this should be required)

...and some optional arguments...

	parameters ... this is a "hash" of keys and values
		{ menu: "true", play: "false", loop: "false" }
		(or set this to null or an empty string to skip)

	flashVars .... this is a hash or a string
		{ cs_url: "/football/nfl/scoreboards/today/" }
		- or -
		"cs_url=3D/football/nfl/scoreboards/today/"


Sample Usage:
if ( new CNN_FlashDetect().detectVersion( 6 ) ) {

	var cnn_Scoreboard =3D new CNN_FlashObject( "cnnScoreboard",
		"/.element/img/2.0/swf/nfl_scoreboard.swf",
		420, 85, null, "cs_url=3D/football/nfl/scoreboards/today/" );

	cnn_Scoreboard.writeHtml();

} else {
	document.write( 'alternate html' );
}

Of course, if you plan to have Flash in lots of places on a page,
it might make more sense to make a global variable for the detection.
You could go as far as creating a session-based cookie...

*/

var VBS_Result =3D false;

function CNN_FlashDetect() { }

CNN_FlashDetect.prototype.maxVersionToDetect =3D 8;
CNN_FlashDetect.prototype.minVersionToDetect =3D 3;

CNN_FlashDetect.prototype.hasPlugin =3D ( navigator.mimeTypes &&
		navigator.mimeTypes.length &&
		navigator.mimeTypes["application/x-shockwave-flash"] &&
		navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin );

CNN_FlashDetect.prototype.hasActiveX =3D window.ActiveXObject;

CNN_FlashDetect.prototype.hasWinIE =3D ( navigator.userAgent &&
		( navigator.userAgent.indexOf( "MSIE" ) !=3D -1 ) &&
		navigator.appVersion &&
		( navigator.appVersion.indexOf( "Win" ) !=3D -1 ) );

CNN_FlashDetect.prototype.getVersion =3D function () {
	var versionNum =3D 0;
	var i =3D 0;

	if ( this.hasActiveX ) {
		var activeXObject =3D false;
		for ( i =3D this.maxVersionToDetect; i >=3D this.minVersionToDetect && =
!activeXObject; versionNum =3D ( activeXObject ? i : versionNum ), i-- ) =
{
			try {
				activeXObject =3D new ActiveXObject( =
"ShockwaveFlash.ShockwaveFlash." + i );
			} catch( e ) {
				// do nothing
			}
		}
	} else if ( this.hasWinIE ) {
		VBS_Result =3D false;
		for ( i =3D this.maxVersionToDetect; i >=3D this.minVersionToDetect && =
!VBS_Result; versionNum =3D ( VBS_Result ? i : versionNum ), i-- ) {
			execScript( 'on error resume next: VBS_Result =3D IsObject( =
CreateObject( "ShockwaveFlash.ShockwaveFlash.' + i + '" ) )', 'VBScript' =
);
		}
	} else if ( this.hasPlugin ) {
		if ( navigator.plugins && navigator.plugins.length && =
navigator.plugins["Shockwave Flash"] ) {
			var words =3D navigator.plugins["Shockwave Flash"].description.split( =
" " );
			for ( i =3D 0; i < words.length; ++i ) {
				if ( isNaN( parseInt( words[i] ) ) )
					continue;
				versionNum =3D words[i];
			}
		}
	}

	return ( versionNum );
}

CNN_FlashDetect.prototype.detectVersion =3D function ( num ) {
	var isVersionSupported =3D false;

	if ( ! isNaN( num ) ) {
		isVersionSupported =3D ( this.getVersion() >=3D parseInt( num ) );
	}

	return ( isVersionSupported );
}


function CNN_FlashObject( p_name, p_src, p_width, p_height, =
p_parameters, p_flashVars ) {
	this.m_name			=3D p_name;
	this.m_src			=3D p_src;
	this.m_width		=3D p_width;
	this.m_height		=3D p_height;
	this.m_flashVars	=3D p_flashVars;

// constructor
	if ( p_parameters )
	{
		this.setParams( p_parameters );
	}
}

// Declare member properties
CNN_FlashObject.prototype.m_name =3D '';
CNN_FlashObject.prototype.m_src =3D '';
CNN_FlashObject.prototype.m_width =3D '';
CNN_FlashObject.prototype.m_height =3D '';
CNN_FlashObject.prototype.m_flashVars =3D '';

CNN_FlashObject.prototype.m_params =3D {
	menu:		"false",
	quality:	"high",
	allowScriptAccess:		"always",
	wmode:		"transparent"

};

CNN_FlashObject.prototype.setParam =3D function ( p_name, p_value ) {
	this.m_params[ p_name ] =3D p_value;
}

CNN_FlashObject.prototype.setParams =3D function ( p_paramHash ) {
	if ( typeof p_paramHash =3D=3D "object" ) {
		for ( var param in p_paramHash ) {
			if ( p_paramHash[param] ) {
				this.setParam( param, p_paramHash[param] );
			}
		}
	}
}

CNN_FlashObject.prototype.getParam =3D function ( p_name ) {
	return ( this.m_params[ p_name ] );
}

CNN_FlashObject.prototype.getParams =3D function () {
	return ( this.m_params );
}

CNN_FlashObject.prototype.getFlashVarsString =3D function () {
	var flashVarsString =3D '';

	if ( typeof this.m_flashVars =3D=3D "string" ) {
		flashVarsString =3D this.m_flashVars;
	} else if ( typeof this.m_flashVars =3D=3D "object" ) {
		for ( var flashVar in this.m_flashVars ) {
			if ( flashVarsString !=3D '' ) {
				flashVarsString +=3D "&";
			}
			flashVarsString +=3D flashVar + "=3D" + escape( =
this.m_flashVars[flashVar] );
		}
	}

	return ( flashVarsString );
}

CNN_FlashObject.prototype.getAttributeString =3D function ( p_attr, =
p_value ) {
	return ( p_value ? ' ' + p_attr + '=3D"' + p_value + '"' : '' );
}

CNN_FlashObject.prototype.getParamTag =3D function ( p_name, p_value ) {
	return ( p_value ? '<param name=3D"' + p_name + '" value=3D"' + p_value =
+ '">' : '' );
}

CNN_FlashObject.prototype.getHtml =3D function () {
	var htmlString =3D '';
	var eachParam =3D '';
	var flashUrl =3D 'http://www.macromedia.com/go/getflashplayer';

// open object
	htmlString +=3D '<object type=3D"application/x-shockwave-flash" \
					classid=3D"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"';
	htmlString +=3D this.getAttributeString( 'pluginspage', flashUrl );
	htmlString +=3D this.getAttributeString( 'id', this.m_name );
	htmlString +=3D this.getAttributeString( 'data', this.m_src );
	htmlString +=3D this.getAttributeString( 'width', this.m_width );
	htmlString +=3D this.getAttributeString( 'height', this.m_height );
	htmlString +=3D '>';
	htmlString +=3D this.getParamTag( 'movie', this.m_src );
	for ( eachParam in this.getParams() ) {
		htmlString +=3D this.getParamTag( eachParam, this.getParam( eachParam =
) );
	}
	htmlString +=3D this.getParamTag( 'flashVars', =
this.getFlashVarsString() );

// open embed
	htmlString +=3D '<embed type=3D"application/x-shockwave-flash"';
	htmlString +=3D this.getAttributeString( 'pluginspage', flashUrl );
	htmlString +=3D this.getAttributeString( 'name', this.m_name );
	htmlString +=3D this.getAttributeString( 'src', this.m_src );
	htmlString +=3D this.getAttributeString( 'width', this.m_width );
	htmlString +=3D this.getAttributeString( 'height', this.m_height );
	for ( eachParam in this.getParams() ) {
		htmlString +=3D this.getAttributeString( eachParam, this.getParam( =
eachParam ) );
	}
	htmlString +=3D this.getAttributeString( 'flashVars', =
this.getFlashVarsString() );
	htmlString +=3D '>';

// close embed
	htmlString +=3D '<\/embed>';

// close object
	htmlString +=3D '<\/object>';

	return ( htmlString );
}

CNN_FlashObject.prototype.writeHtml =3D function () {
	document.write( this.getHtml() );
}

CNN_FlashObject.prototype.writeMosaicHtml =3D function (id) {
	document.getElementById(id).innerHTML =3D  this.getHtml();
}


//   story comments functions
//=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=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

var commentsWindow =3D 25;
var currentPage =3D 1;
var cnnInitialDisplay =3D 3;
var nextLink =3D false;
var loadingComments =3D false;
var firstTimeNested =3D true;
var getThisMany =3D 0;

//gets next set of comments - of length: commentsWindow*currentPage
function CNN_getNextComments(){
	if(loadingComments){ return; }
	loadingComments=3Dtrue;
	currentPage++;
	getThisMany =3D commentsWindow * currentPage + cnnInitialDisplay + 1;

	window.setTimeout(function() {=09
		=
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);
	},500);
}

//handler for CNN_getNextComments
function CNN_loadNextIntoOpinionBox(obj){
    var CNN_comment =3D '';
	var hideableComments =3D '';
	var makeHidden =3D 'visible';
	for (var xx =3D 0; xx < cnnInitialDisplay; xx++){
    		var clObject =3D obj.rss.channel.item[xx];
		hideableComments +=3D CNN_generateACommentDiv(clObject);
    	}
    	for (var xx =3D ((currentPage-1) * =
commentsWindow)+cnnInitialDisplay; xx < obj.rss.channel.item.length; =
xx++) {
		var clObject =3D obj.rss.channel.item[xx];
			if (xx < (getThisMany -1))	{=09
				CNN_comment +=3D CNN_generateACommentDiv(clObject);
			}
    	}
        if(obj.rss.channel.item.length < getThisMany || =
(obj.rss.channel.item.length-((currentPage-1) * =
commentsWindow))+cnnInitialDisplay < commentsWindow){
		document.getElementById('nextLink').style.visibility =3D "hidden";
		nextLink =3D false;
	}
	var nextLinkHtmlVisible =3D 'visible';
	if(!nextLink){
		nextLinkHtmlVisible=3D'hidden';
	}

	var cnnShowExpandedLnk =3D =
$('cnnOpinionContainer').getElementsByClassName('cnnExpandCommentsLnk');
	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>';
	loadingComments =3D false;
	return "<div id=3D'allComments'>"+hideableComments+"<div =
id=3D'cnnOpinionSubContainer'>"+document.getElementById("cnnOpinionSubCon=
tainer").innerHTML+CNN_comment+"</div></div>";
}

//builds a single comment element
function CNN_generateACommentDiv(clObject){
		var CNN_comment =3D '';
        CNN_comment +=3D '                <div class=3D"cnnUGCBox">';
        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>';
        CNN_comment +=3D '                        <div =
class=3D"cnnBoxContent">';
        CNN_comment +=3D '                                <div =
class=3D"cnnMeta">';
        CNN_comment +=3D                                  '<span =
class=3D"cnnContributor">'+clObject['jf:author']+'<\/span><br>';
        CNN_comment +=3D cnnRenderTimeStamp(clObject['pubDate']);
        CNN_comment +=3D '                                <\/div>';
        CNN_comment +=3D '                                <p>';
        CNN_comment +=3D clObject['description'].truncate(300,' ...<a =
href=3D"javascript:void(0);" onclick=3D"cnnShowMore(this);return =
false">more<\/a>');
        CNN_comment +=3D '                                <\/p>';

        CNN_comment +=3D '                                <div =
class=3D"cnnExtended" style=3D"display:none;"><p>';
        CNN_comment +=3D clObject['description'];
        CNN_comment +=3D '                                <a =
href=3D"javascript:void(0);" onclick=3D"cnnShowLess(this);return =
false;">less<\/a><\/p><\/div>';


        CNN_comment +=3D '                        <\/div>';
        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>';
        CNN_comment +=3D '                <\/div>';
	return CNN_comment;
}

//empties the comments
function CNN_clearOutComments(){
	currentPage =3D 0;
	document.getElementById("cnnOpinionSubContainer").innerHTML=3D'';
}

//shows/hides comments + next link appropraitely
function CNN_ToggleNestedStoryContent(el,lnk,num,desc) {
	if (cnnLockToggle) {
		return;
	}
	cnnLockToggle =3D true;
	var cnnLnkTxt =3D "Last 3 comments only";
		Effect.toggle(el,'blind',
		{
			duration:0.5,
			afterFinish: function() {
				if(!desc) {
					if (lnk.innerHTML =3D=3D cnnLnkTxt) {
						lnk.innerHTML =3D "Next " + commentsWindow + " comments &raquo;";
						nextLink =3D false;
						currentPage =3D 0;
						CNN_clearOutComments();
						document.getElementById('nextLink').style.visibility =3D "hidden";
					} else {
						if(!firstTimeNested){
							CNN_getNextComments();
						}					=09
						if(firstTimeNested && (num < (commentsWindow * currentPage + =
cnnInitialDisplay + 1))) {
							nextLink =3D false;
						} else {
							nextLink =3D true;
							document.getElementById('nextLink').style.visibility =3D =
"visible";
						}
						firstTimeNested =3D false;
						lnk.innerHTML =3D cnnLnkTxt;

					}
				}
				cnnLockToggle =3D false;
			},
			beforeStart: function() {
				if(desc) {
					$(lnk).style.display =3D "none";
				}

			}
		}

	);
}

//initial load
function CNN_loadReaderOpinion(obj) {

	if (typeof cnnFirstPub !=3D "undefined") {
	    var cnnTimeDiff =3D cnnCurrTime.getTime() - cnnFirstPub.getTime();
    	var hoursDifference =3D Math.floor(cnnTimeDiff/1000/60/60);
		if (hoursDifference > 23) {
			cnnCommentsClosed =3D true;
		}
	}

if (typeof cnnExtendCommenting !=3D "undefined" && cnnExtendCommenting) =
{
	cnnCommentsClosed =3D false;
}


if (typeof cnnCommentsClosed !=3D "undefined" && cnnCommentsClosed) {
	if ($('cnnCommentFooter')) {
		$('cnnCommentFooter').remove();
	}
	if ($('cnnROCFrm')) {
		$('cnnROCFrm').remove();
	}
	if ($('cnnROCFrmComplete')) {
		$('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.";
		$('cnnROCFrmComplete').show();
	}
}

			var CNN_comment =3D '';


		if(!obj || !obj.rss || !obj.rss.channel || !obj.rss.channel.item) {
    	CNN_comment +=3D '		<div class=3D"cnnUGCBox">';
    	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>';
    	CNN_comment +=3D '			<div class=3D"cnnBoxContent">';
    	CNN_comment +=3D '<p style=3D"margin-left:6px;">No comments =
yet.<\/p>';
    	CNN_comment +=3D '			<\/div>';
    	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>';
    	CNN_comment +=3D '		<\/div>';

			return CNN_comment;
		}


    if (typeof(obj.rss.channel.item.length) =3D=3D "undefined") {
				var clObject =3D obj.rss.channel.item;
    	CNN_comment +=3D '		<div id=3D"cnnOpinionSubContainer"><div =
class=3D"cnnUGCBox">';
    	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>';
    	CNN_comment +=3D '			<div class=3D"cnnBoxContent">';
    	CNN_comment +=3D '				<div class=3D"cnnMeta">';
    	CNN_comment +=3D 					'<span =
class=3D"cnnContributor">'+clObject['jf:author']+'<\/span><br>';
    	CNN_comment +=3D cnnRenderTimeStamp(clObject['pubDate']);
    	CNN_comment +=3D '				<\/div>';
    	CNN_comment +=3D '				<p>';
    	CNN_comment +=3D clObject['description'].truncate(300,' ...<a =
href=3D"javascript:void(0);" onclick=3D"cnnShowMore(this);return =
false">more<\/a>');
    	CNN_comment +=3D '				<\/p>';

      	CNN_comment +=3D '				<div class=3D"cnnExtended" =
style=3D"display:none;"><p>';
    	CNN_comment +=3D clObject['description'];
    	CNN_comment +=3D '				<a href=3D"javascript:void(0);" =
onclick=3D"cnnShowLess(this);return false;">less<\/a><\/p><\/div>';


    	CNN_comment +=3D '			<\/div>';
    	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>';
    	CNN_comment +=3D '		<\/div><\/div>';

		return CNN_comment;

    }



		var cnnShowExpandedCont =3D =
$('cnnOpinionContainer').parentNode.getElementsByTagName('a')[0];

		var cnnShowExpandedLnk =3D =
$('cnnOpinionContainer').getElementsByClassName('cnnExpandCommentsLnk');


			var numLength =3D obj.rss.channel.item.length;
			var displayNum =3D numLength - 1;
			if (numLength > 3) {
				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>';
			}
		if (numLength >=3D 1 && (typeof(cnnReaderOpinions) !=3D "undefined" && =
cnnReaderOpinions)) {
			cnnToggleUGC('cnnOpinionContainer',cnnShowExpandedCont)
		}

    for (var xx =3D 0; xx < numLength; xx++) {
				var clObject =3D obj.rss.channel.item[xx];
				if(xx =3D=3D 0){
					CNN_comment+=3D'<div id=3D"allComments">';
				}
				if(xx =3D=3D cnnInitialDisplay)
				{
					CNN_comment+=3D'<div id=3D"cnnOpinionSubContainer" =
style=3D"display:none;">';
				}


		if(xx < (commentsWindow * currentPage + cnnInitialDisplay)) {
	    	CNN_comment +=3D '		<div class=3D"cnnUGCBox">';
    		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>';
	    	CNN_comment +=3D '			<div class=3D"cnnBoxContent">';
    		CNN_comment +=3D '				<div class=3D"cnnMeta">';
    		CNN_comment +=3D 					'<span =
class=3D"cnnContributor">'+clObject['jf:author']+'<\/span><br>';
    		CNN_comment +=3D cnnRenderTimeStamp(clObject['pubDate']);
    		CNN_comment +=3D '				<\/div>';
    		CNN_comment +=3D '				<p>';
    		CNN_comment +=3D clObject['description'].truncate(300,' ...<a =
href=3D"javascript:void(0);" onclick=3D"cnnShowMore(this);return =
false">more<\/a>');
	    	CNN_comment +=3D '				<\/p>';

    	  	CNN_comment +=3D '				<div class=3D"cnnExtended" =
style=3D"display:none;"><p>';
    		CNN_comment +=3D clObject['description'];
    		CNN_comment +=3D '				<a href=3D"javascript:void(0);" =
onclick=3D"cnnShowLess(this);return false;">less<\/a><\/p><\/div>';


    		CNN_comment +=3D '			<\/div>';
    		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>';
    		CNN_comment +=3D '		<\/div>';
		}
				if(xx =3D=3D displayNum)
				{
					CNN_comment+=3D'<\/div></div>';
				}
    }

	return CNN_comment;
}

//   story comments functions
//=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=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

/* share link functions=20
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */
function cnnSetShareLnks() {
	// mixx
	var mixxURL =3D =
'http://www.mixx.com/submit/story?page_url=3D'+encodeURIComponent(locatio=
n.href)+'&title=3D'+cnnShareTitle+'&description=3D'+cnnShareDesc+'&partne=
r=3DCNN';
	if($('cnnSBtnMixx')) {
		$('cnnSBtnMixx').href =3D mixxURL;
		$('cnnSBtnMixx').target=3D"_blank";
	}
	if($('cnnSBtnMixxBot')) {
		$('cnnSBtnMixxBot').href =3D mixxURL;
		$('cnnSBtnMixxBot').target=3D"_blank";
	}
	if($('cnnMixxEmbedLnk')) {
		$('cnnMixxEmbedLnk').href =3D mixxURL;
		$('cnnMixxEmbedLnk').target=3D"_blank";
	}
	// Digg
	var diggURL =3D =
'http://digg.com/submit?phase=3D2&url=3D'+encodeURIComponent(location.hre=
f)+'&title=3D'+cnnShareTitle+'&bodytext=3D'+cnnShareDesc;
	if($('cnnSBtnDigg')) {
		$('cnnSBtnDigg').href =3D diggURL;
		$('cnnSBtnDigg').target=3D"_blank";
	}
	if($('cnnSBtnDiggBot')) {
		$('cnnSBtnDiggBot').href =3D diggURL;
		$('cnnSBtnDiggBot').target=3D"_blank";
	}
	// Facebook
	var facebookURL =3D =
'http://www.facebook.com/share.php?u=3D'+encodeURIComponent(location.href=
);
	if($('cnnSBtnFacebook')) {
		$('cnnSBtnFacebook').href =3D facebookURL;
		$('cnnSBtnFacebook').target=3D"_blank";
	}
	if($('cnnSBtnFacebookBot')) {
		$('cnnSBtnFacebookBot').href =3D facebookURL;
		$('cnnSBtnFacebookBot').target=3D"_blank";
	}
	// del.icio.us
	var deliciousURL =3D =
'http://del.icio.us/post?v=3D4&partner=3Dcnn&noui&jump=3Dclose&url=3D'+en=
codeURIComponent(location.href)+'&title=3D'+cnnShareTitle+'delicious';
	if($('cnnSBtnDelicious')) {
		$('cnnSBtnDelicious').href =3D deliciousURL;
		$('cnnSBtnDelicious').target=3D"_blank";
	}
	if($('cnnSBtnDeliciousBot')) {
		$('cnnSBtnDeliciousBot').href =3D deliciousURL;
		$('cnnSBtnDeliciousBot').target=3D"_blank";
	}
	// reddit
	var redditURL =3D =
'http://reddit.com/submit?url=3D'+encodeURIComponent(location.href)+'&tit=
le=3D'+cnnShareTitle;
	if($('cnnSBtnReddit')) {
		$('cnnSBtnReddit').href =3D redditURL;
		$('cnnSBtnReddit').target=3D"_blank";
	}
	if($('cnnSBtnRedditBot')) {
		$('cnnSBtnRedditBot').href =3D redditURL;
		$('cnnSBtnRedditBot').target=3D"_blank";
	}
	// stumbleupon
	var stumbleuponURL =3D =
'http://www.stumbleupon.com/submit?url=3D'+encodeURIComponent(location.hr=
ef)+'&title=3D'+cnnShareTitle;
	if($('cnnSBtnStumbleUpon')) {
		$('cnnSBtnStumbleUpon').href =3D stumbleuponURL;
		$('cnnSBtnStumbleUpon').target=3D"_blank";
	}
	if($('cnnSBtnStumbleUponBot')) {
		$('cnnSBtnStumbleUponBot').href =3D stumbleuponURL;
		$('cnnSBtnStumbleUponBot').target=3D"_blank";
	}
	// myspace
	var myspaceURL =3D 'http://www.myspace.com/Modules/PostTo/Pages/?' + =
't=3D' + cnnShareTitle + '&c=3D' + cnnShareDesc + '&u=3D' + =
encodeURIComponent(location.href);
	if($('cnnSBtnMyspace')) {
		$('cnnSBtnMyspace').href =3D myspaceURL;
		$('cnnSBtnMyspace').target=3D"_blank";
	}
	if($('cnnSBtnMyspaceBot')) {
		$('cnnSBtnMyspaceBot').href =3D myspaceURL;
		$('cnnSBtnMyspaceBot').target=3D"_blank";
	}
}

/* main page market box
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D */
/* called on focus */
function cnnMbChangeTxtClass( obj ) {
	if(obj.className =3D=3D 'cnnTxtMBGetQuote') {
		obj.value =3D '';
		obj.className =3D 'cnnTxtMBGetQuoteType';
	}
}

/* called on blur */
function cnnMbCheckTxtClass( obj ) {
	if((obj.className =3D=3D 'cnnTxtMBGetQuoteType') && (obj.value =3D=3D =
'')) {
		obj.className =3D 'cnnTxtMBGetQuote';
		obj.value =3D 'enter symbol';
	}
}
/* end main page market box
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D */

/* search functions
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */

var cnnStrInvalidSrchMsg =3D 'Please enter a valid search term and try =
again.'+"\n"+'HTML, URLs, and Scripts are not allowed.';

function cnnSearch( frm ) {
	if($('cnnHeadSrchTxt').value !=3D '') {
		if(!cnnVerifySearchString($('cnnHeadSrchTxt').value)) =
{alert(cnnStrInvalidSrchMsg);}
		else {
			var strSearchLoc =3D cnnGetSearchLoc();
			strSearchLoc +=3D 'query=3D' + =
cnnLeftTrim($('cnnHeadSrchTxt').value);

			strSearchLoc +=3D '&';
			strSearchLoc +=3D 'type=3D' + $('cnnHeadSrchType').value;
			strSearchLoc +=3D '&';
			strSearchLoc +=3D 'sortBy=3Ddate';
			if(location.hostname.indexOf('edition') < 0) {
				strSearchLoc +=3D '&';
				strSearchLoc +=3D 'intl=3Dfalse';
			} else {
				strSearchLoc +=3D '&';
				strSearchLoc +=3D 'intl=3Dtrue';
			}
			location.href =3D strSearchLoc;
		}
	}
	return false;
}

function cnnVerifySearchString( srchTerm ) {
	var htmlRegEx =3D new =
RegExp('[\w*|\W*]*<[[\w*|\W*]*|/[\w*|\W*]]>[\w*|\W*]*');

	if(htmlRegEx.exec(srchTerm) || (srchTerm =3D=3D null) || =
(cnnLeftTrim(srchTerm).length =3D=3D 0) || (srchTerm.indexOf(">") >=3D =
0) || (srchTerm.indexOf(";") >=3D 0) ){
		return false;
	}
	else return true;
}

function cnnGetSearchLoc() {
	var strSearchLoc =3D 'http://search.cnn.com/search.jsp?'; // default

	if(location.hostname.indexOf('qai') !=3D -1) {
		strSearchLoc =3D 'http://search.qai.cnn.com/cnnrelaunch/search.jsp?'
	}
	else if(location.hostname.indexOf('beta') !=3D -1) {
		strSearchLoc =3D 'http://search.cnn.com/search.jsp?'
	}

	return strSearchLoc;
}

function cnnLeftTrim(sString) {
	while (sString.substring(0,1) =3D=3D ' ') {
		sString =3D sString.substring(1, sString.length);
	}
	return sString;
}

function cnnFootSearch( frm ) {
	if($('cnnFootSrchTxt').value !=3D '') {
		if(!cnnVerifySearchString($('cnnFootSrchTxt').value)) =
{alert(cnnStrInvalidSrchMsg);}
		else {

			var strSearchLoc =3D cnnGetSearchLoc();
			strSearchLoc +=3D 'query=3D' + =
cnnLeftTrim($('cnnFootSrchTxt').value);
			strSearchLoc +=3D '&';
			strSearchLoc +=3D 'type=3Dweb';
			strSearchLoc +=3D '&';
			strSearchLoc +=3D 'sortBy=3Ddate';
			if(location.hostname.indexOf('edition') < 0) {
				strSearchLoc +=3D '&';
				strSearchLoc +=3D 'intl=3Dfalse';
			} else {
				strSearchLoc +=3D '&';
				strSearchLoc +=3D 'intl=3Dtrue';
			}
			location.href =3D strSearchLoc;
		}
	}
	return false;
}

function cnnUpdateSrchType( searchType ) {
	if($('cnnHeadSrchType')) {
		$('cnnHeadSrchType').value =3D searchType;
	}
	cnnUpdateSrchTypeLnks( searchType );
}

function cnnUpdateSrchTypeLnks( searchType ) {
	if($('cnnHeadSrchTypeArea')) {
		switch(searchType) {
			case 'web':
				$('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>';
				break;
			case 'news':
				$('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>';
				break;
			case 'video':
				$('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>';
				break;
			default:
				break;
		}
	}
}

/* end search functions
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */

/* cnn live video popup
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */
var cnnVidServer =3D '';
function cnnLiveVideo( strWhich ) {
	if(!strWhich) {
		strWhich =3D '1';
	}
	var strVidLoc =3D cnnVidServer + =
'/video/live/live.html?stream=3Dstream' + strWhich;
	=
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')
}
/* end cnn live video popup
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */


function cnnVideo(mode, arg, expiration) {
	video_url =3D '/video/#' + arg;

	if(mode =3D=3D 'live') { cnnLiveVideo(arg); }
	else if(top.location =3D=3D self.location) { location.href =3D =
video_url; }
	else { vid_win =3D window.open(video_url, 'vid_win'); }
}


/* main page video box (domestic & intl)
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */
var cnnMpVpCurPage =3D 1;
var cnnMpVpLock =3D false;
function cnnMpVpBlur( lnk ) {
	try {
		lnk.blur();
	} catch(e) {};
}
/*
 * cnnMpVpNext() and cnnMpVpPrev()
 * are called from previous and next buttons
 */
function cnnMpVpNext( lnk ) {
	cnnMpVpBlur( lnk );
	if((cnnMpVpCurPage < 3)&&(!cnnMpVpLock)) {
		cnnMpVpSlideLeft();
	}
}

function cnnMpVpPrev( lnk ) {
	cnnMpVpBlur( lnk );
	if((cnnMpVpCurPage > 1)&&(!cnnMpVpLock)) {
		cnnMpVpSlideRight();
	}
}

/*
 * cnnMpVpPage( intPage )
 * called from clicking on gray dot icon
 */
function cnnMpVpPage( intPage, lnk ) {
	cnnMpVpBlur( lnk );
	if((cnnMpVpCurPage !=3D intPage)&&(!cnnMpVpLock)) {
		if(cnnMpVpCurPage < intPage) {
			if((intPage - cnnMpVpCurPage) > 1) {
				cnnMpVpSlideDoubleLeft();
			}
			else {
				cnnMpVpSlideLeft();
			}
		}
		else {
			if((cnnMpVpCurPage - intPage) > 1) {
				cnnMpVpSlideDoubleRight();
			}
			else {
				cnnMpVpSlideRight();
			}
		}
	}
}

function cnnLockMpVp( intDur ) {
	var cnnLockDur =3D intDur * 100;
	cnnMpVpLock =3D true;
	setTimeout(function() { cnnMpVpLock =3D false; },cnnLockDur);
}
function cnnMpVpSlideLeft() {
	cnnLockMpVp(3);
	new Effect.MoveBy( 'cnnMpVidCtnt0', 0, -336 , {duration: 0.3} );
	new Effect.MoveBy( 'cnnMpVidCtnt1', 0, -336 , {duration: 0.3} );
	new Effect.MoveBy( 'cnnMpVidCtnt2', 0, -336 , {duration: 0.3} );
	cnnMpVpCurPage++;
	cnnMpVpMoveDot();
	cnnMpVpUpdateBtns();
}

function cnnMpVpSlideDoubleLeft() {
	cnnLockMpVp(6);
	new Effect.MoveBy( 'cnnMpVidCtnt0', 0, -672 , {duration: 0.6} );
	new Effect.MoveBy( 'cnnMpVidCtnt1', 0, -672 , {duration: 0.6} );
	new Effect.MoveBy( 'cnnMpVidCtnt2', 0, -672 , {duration: 0.6} );
	cnnMpVpCurPage++;
	cnnMpVpCurPage++;
	cnnMpVpMoveDot();
	cnnMpVpUpdateBtns();
}

function cnnMpVpSlideRight() {
	cnnLockMpVp(3);
	new Effect.MoveBy( 'cnnMpVidCtnt0', 0, 336 , {duration: 0.3} );
	new Effect.MoveBy( 'cnnMpVidCtnt1', 0, 336 , {duration: 0.3} );
	new Effect.MoveBy( 'cnnMpVidCtnt2', 0, 336 , {duration: 0.3} );
	cnnMpVpCurPage--;
	cnnMpVpMoveDot();
	cnnMpVpUpdateBtns();
}

function cnnMpVpSlideDoubleRight() {
	cnnLockMpVp(6);
	new Effect.MoveBy( 'cnnMpVidCtnt0', 0, 672 , {duration: 0.6} );
	new Effect.MoveBy( 'cnnMpVidCtnt1', 0, 672 , {duration: 0.6} );
	new Effect.MoveBy( 'cnnMpVidCtnt2', 0, 672 , {duration: 0.6} );
	cnnMpVpCurPage--;
	cnnMpVpCurPage--;
	cnnMpVpMoveDot();
	cnnMpVpUpdateBtns();
}

function cnnMpDotMouseOver( id ) {
	$(id).src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/gray_ac=
tive_status.gif';
}

// image change functions
function cnnMpVpMoveDot() {
	for(i=3D1;i<4;i++) {
		$('cnnMpVidDot'+i).src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/gray_st=
atus.gif';
		$('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';}
		$('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';}
	}
	$('cnnMpVidDot'+cnnMpVpCurPage).src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/gray_ac=
tive_status.gif';
	$('cnnMpVidDot'+cnnMpVpCurPage).onmouseover =3D function() {}
	$('cnnMpVidDot'+cnnMpVpCurPage).onmouseout =3D function() {}
}
function cnnMpVpUpdateBtns() {
	if(cnnMpVpCurPage > 1) {
		$('cnnMpVidBtnL').style.cursor =3D'auto';
		$('cnnMpVidBtnL').src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/left_re=
d_btn.gif';
		$('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'; }
		$('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'; }
	}
	else {
		$('cnnMpVidBtnL').style.cursor =3D'default';
		$('cnnMpVidBtnL').src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/left_gr=
ay_btn.gif';
		$('cnnMpVidBtnL').onmouseover =3D function() {}
		$('cnnMpVidBtnL').onmouseout =3D function() {}
	}

	if(cnnMpVpCurPage < 3) {
		$('cnnMpVidBtnR').style.cursor =3D'auto';
		$('cnnMpVidBtnR').src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/right_r=
ed_btn.gif';
		$('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';}
		$('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';}
	}
	else {
		$('cnnMpVidBtnR').style.cursor =3D'default';
		$('cnnMpVidBtnR').src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/content/in_the_news/right_g=
ray_btn.gif';
		$('cnnMpVidBtnR').onmouseover =3D function() {}
		$('cnnMpVidBtnR').onmouseout =3D function() {}
	}
}
/* end main page video box
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */


/* intl market box
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */
function cnnWbMarkets( intWhich ) {
	for(i=3D1;i<4;i++) {
		if(i=3D=3DintWhich) {
			$('cnnWbMarkets' + i).style.display =3D 'block';
			$('cnnWbMarketsTab' + i).className =3D 'active';
		}
		else {
			$('cnnWbMarkets' + i).style.display =3D 'none';
			$('cnnWbMarketsTab' + i).className =3D '';
		}
	}
}
/* end intl market box
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */



function cnnMosaicLoadGal( gal, lnk ) {
var cnn_gallery_config =3D (location.hostname.indexOf('edition.') > -1) =
? 'intl' : 'www';
if ( new CNN_FlashDetect().detectVersion( 6 ) ) {
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);
cnn_Photos.writeMosaicHtml('cnnPhotoPlayer');
} else {
CNN_noFlash();
}

	// change the id
	if($('cnnCurGal')) {
		$('cnnCurGal').id =3D '';
	}
	lnk.parentNode.parentNode.id =3D 'cnnCurGal';

}

function cnnMosaicSelGalTab( intTab ) {
	// change the tabs
	for(i=3D1;i<7;i++) {
		if($('cnnPT'+i)) {
			tabObj =3D $('cnnPT'+i);
			if(i !=3D intTab) {
				tabObj.className =3D '';
			}
			else {
				tabObj.className =3D 'cnnPTCurrent';
			}
		}
	}

	// show/hide the sections
	for(i=3D1;i<7;i++) {
		if($('cnnPPSect'+i)) {
			obj =3D $('cnnPPSect'+i);
			if(i !=3D intTab) {
				obj.style.display =3D 'none';
			}
			else {
				obj.style.display =3D 'block';
			}
		}
	}
}

/* minor topic search */
function cnnUpdateMtSrch(obj){
	obj.value=3D'';
	obj.style.color=3D(obj.style.color=3D=3D""?"#000000":"")
}

/* local box main page */
function cnnUpdateTxtElem(obj, strTxt) {
	if(obj.value =3D=3D strTxt) {
		obj.value=3D'';
		obj.style.color=3D(obj.style.color=3D=3D""?"#000":"");
	}
	else if(obj.value =3D=3D '') {
		obj.value =3D strTxt;
		obj.style.color=3D(obj.style.color=3D=3D""?"#ccc":"");
	}// else user entered something, leave it alone
}

/* breaking news banners
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */
function cnnRenderGenericBanner(object,flashURL,leftColor,rightColor)
{
	if (allCookies['cnnLastClosedBannerId'] =3D=3D object.id)
	{
		// don't render anything if the banner has been closed.
		return '';
	}

	var myHtml =3D '<div id=3D"cnnBannerContent"><div id=3D"cnnBannerTopic" =
class=3D"'+leftColor+'">';

	if (!(object.type =3D=3D 'Live Breaking News' || object.type =3D=3D =
'Live Developing Story') || !(new CNN_FlashDetect().detectVersion( 8 )))
	{
		myHtml +=3D '<div id=3D"cnnBannerHeader"><div =
id=3D"cnnBannerHeaderTxt">'+object.title+'<\/div><\/div>';
	}
	else
	{
		leftColor =3D 'cnnTransparent';// put transparency behind swf files
		myHtml =3D '<div id=3D"cnnBannerContent"><div id=3D"cnnBannerTopic" =
class=3D"'+leftColor+'">';
		var cnn_AnimatedBanner =3D new CNN_FlashObject( =
"cnnAnimatedBannerTitle", flashURL, 211, 73, null, { bn_title: =
object.title } );
		myHtml +=3D cnn_AnimatedBanner.getHtml();
	}

	myHtml +=3D '<\/div><div id=3D"cnnBannerBox" =
class=3D"'+rightColor+'">';
	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>';

	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)
	{
		myHtml +=3D '<img class=3D"cnnBannerPhoto" src=3D"'+object.image+'" =
width=3D"87" height=3D"49" alt=3D"" />';
	}
=09
	myHtml +=3D '<div id=3D"cnnBannerHeadline"';
	if (object.size =3D=3D 'small')
	{
		myHtml +=3D ' class=3D"small"';
	}
	myHtml +=3D '>'+object.content;
	if((object.options) && (object.options !=3D '') && (object.type =3D=3D =
'Breaking News')) {// email link
		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>';
	}
	myHtml +=3D '<\/div>';
	if (object.pipe !=3D 0 || object.tv !=3D 0)
	{
		myHtml +=3D '<div id=3D"cnnBannerWatchNow">Watch Now: ';
		if (object.tv !=3D 0)
		{
			myHtml +=3D 'on CNN TV';
			if (object.pipe !=3D 0)
			{
				myHtml +=3D ' <span class=3D"cnnGreyTxt">or <\/span>';
			}
		}
		if (object.pipe !=3D 0)
		{
			myHtml +=3D '<a =
href=3D"javascript:cnnLiveVideo(\''+object.pipe+'\');">Live on CNN.com =
&raquo;<\/a>';
		}
		myHtml +=3D '<\/div>';
	}

	myHtml +=3D '<\/div><\/div><\/div><div class=3D"cnnPad12Top" =
style=3D"clear:both;"> <\/div>';

	return myHtml;
}

function cnnRenderDomesticBanner(object){
	var =
flashURL=3D'http://i.cdn.turner.com/cnn/.element/swf/2.0/breaking_news/bn=
_dom.swf';
	var leftColor=3D'';
	var rightColor=3D'';
	switch (object.type) {
		case 'Live Breaking =
News':leftColor=3D'cnnRed';rightColor=3D'cnnBlack';break;
		case 'Breaking =
News':leftColor=3D'cnnBlack';rightColor=3D'cnnRed';break;
		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;
		case 'Developing =
Story':leftColor=3D'cnnBlack';rightColor=3D'cnnYellow';break;
		case 'Watch Now':leftColor=3D'cnnBlue';rightColor=3D'cnnBlue';break;
		case 'Live Election =
Coverage':leftColor=3D'cnnBlackElex';rightColor=3D'cnnDrkBlue';break;
		default:return '';
	}
	return cnnRenderGenericBanner(object,flashURL,leftColor,rightColor);
}

function cnnRenderInternationalBanner(object){
	var =
flashURL=3D'http://i.cdn.turner.com/cnn/.element/swf/2.0/breaking_news/bn=
_int.swf';
	var leftColor=3D'';
	var rightColor=3D'cnnYellow';
	switch (object.type) {
		case 'Live Breaking =
News':leftColor=3D'cnnYellow';rightColor=3D'cnnBlack';break;
		case 'Breaking News':leftColor=3D'cnnBlack';break;
		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;
		case 'Developing Story':leftColor=3D'cnnBlack';break;
		case 'Watch Now':leftColor=3D'cnnBlue';rightColor=3D'cnnBlue';break;
		default:return '';
	}
	return cnnRenderGenericBanner(object,flashURL,leftColor,rightColor);
}

/* end breaking news banners
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */


/* global event handlers
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */
function cnnMouseDown(e) {
	if (cnnDropdownOpen) cnnDD.mouseDownBody(e);
	if (cnnOverlayMenuOpen) cnnOverlayMouseDownBody(e);
	return true;
}
/* end global event handlers
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */


/* styled overlay menus
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */
var cnnOverlayOpenId =3D "";
var cnnOverlayClickedId =3D "";
var cnnOverlayMenuOpen =3D false;

// Map menu id's to button classes, for determining later on if the =
current menu
// is one with non-default behavior.
var cnnOverlayClass =3D [];


function cnnInitOverlay() {
	document.body.onmousedown =3D cnnMouseDown;

	// Overlay menus with default behavior
	cnnAddOverlayEvents("cnnOverlayLnk");

	// Add code here for overlay menus with non-default behavior
}


function cnnShowOverlay(menuId) {
	if ($(menuId)) {
		// If the menu is already open, close it
		if ($(menuId).style.display =3D=3D "block") {
			$(menuId).style.display =3D "none";
		}
		else {
			$(menuId).style.display =3D "block";
			cnnOverlayOpenId =3D menuId;
		    cnnOverlayMenuOpen =3D true;
			cnnOverlayClickedId =3D "";
		}
	}

	// Add code here for overlay menus with non-default behavior
}


function cnnHideOverlay(menuId) {
	if ($(menuId)) {
		$(menuId).style.display =3D "none";
		cnnOverlayOpenId =3D '';
	    cnnOverlayMenuOpen =3D false;
	}

	// Add code here for overlay menus with non-default behavior
}


function cnnGetOverlayMenuId(btn) {
	// Get the id parameter from href=3D"javascript:foo('myId')"
	return btn.href.substring(btn.href.indexOf("'") + 1, =
btn.href.lastIndexOf("'"));
}


function cnnAddOverlayEvents(btnClass) {
	var btnArray =3D document.getElementsByClassName(btnClass);
	for (var i =3D 0; i < btnArray.length; i++) {
		// button
		var btn =3D btnArray[i];
		btn.onmousedown =3D cnnOverlayMouseDownBtn;

		// menu
		var menuId =3D cnnGetOverlayMenuId(btn);
		if ($(menuId)) {
			$(menuId).onmousedown =3D cnnOverlayMouseDownMenu;
		}

		// Store the button class associated with the menu id
	    cnnOverlayClass[menuId] =3D btnClass;

		// Mac Safari image-rollover bug
		if ((navigator.userAgent.indexOf("Safari") !=3D -1)
		 && (navigator.userAgent.indexOf("Mac") !=3D -1)) {
			// If cnnImgSwap() is called by the onmouseout event
			if (btn.onmouseout && btn.onmouseout.toString().indexOf("cnnImgSwap") =
!=3D -1) {
				// Make onclick call the onmouseout event handler
				btn.onclick =3D function onclick() { this.onmouseout(); return true; =
};
			}
		}
	}
}


function cnnOverlayMouseDownBtn(e) {
	// Get the menu id
	var menuId =3D cnnGetOverlayMenuId(this);
	cnnOverlayClickedId =3D menuId;
	return true;
}


function cnnOverlayMouseDownMenu(e) {
	// Get the menu id
	cnnOverlayClickedId =3D this.id;
	return true;
}


function cnnOverlayMouseDownBody(e) {
	// Close the open overlay menu, unless the mouse is inside the menu
	// or the menu button.
	if (cnnOverlayOpenId !=3D cnnOverlayClickedId) {
		cnnHideOverlay(cnnOverlayOpenId);
	}
	cnnOverlayClickedId =3D "";
	return true;
}
/* end styled overlay menus
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */


/* styled dropdowns
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */
var cnnDropdownOpen =3D false;

// CNN dropdown menu (JavaScript object literal)
var cnnDD =3D {
	curId: "", // id of currently-open dropdown
	ignoreMouseDownBody: false,
	menus: [],

	rowHeight: 17,
	combinedBorderWidth: 20,
	scrollbarWidth: 18,

	minMenuWidth: 105,
	maxMenuWidth: 400,
	defaultMenuWidth: 205,
	defaultRowWidth: 150,
	combinedRowLRPad: 18,
	scrollbarRPad: 12,


	buildDisabledDropdown: function(menuId, buttonWidth, buttonClass, =
hiddenListSuffix) {
		// default parameters
		if (!buttonWidth) buttonWidth =3D 140;
		if (!buttonClass) buttonClass =3D 'cnnDDWireLtg';

		var wrapId =3D menuId + "_wrap";
		var listId =3D menuId + "_list" + (hiddenListSuffix ? '_' + =
hiddenListSuffix : '');

		if ($(wrapId) && $(listId)) {

			// hide the <select>
			$(listId).style.display =3D "none";

			// Get the displayed value for the first select option
			var listItems =3D $(listId).options;
			var buttonText =3D listItems[0].innerHTML;

			var buttonTextLPad =3D 10;
			var buttonTextRPad =3D 34;
			var buttonTextWidth =3D buttonWidth - (buttonTextLPad + =
buttonTextRPad);

			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;';
			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;';

			switch (buttonClass) {
				case 'cnnDDWire':
					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;';
					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;';
					break;
				case 'cnnBlkBgWhtBox':
					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;';
					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;';
					break;
			}


			// build content for the button
			var strContent =3D "\n\n\n\n";
			strContent +=3D '	<div class=3D"cnnDDContainer" =
style=3D"width:'+buttonWidth+'px;">'+"\n";

			strContent +=3D '		<div class=3D"'+buttonClass+'">'+"\n";
			strContent +=3D '			<div class=3D"cnnDDBtn" onmousedown=3D"return =
cnnDD.mouseDownBtn(event, \''+menuId+'\');" onclick=3D"return =
cnnDD.open(\''+menuId+'\')" style=3D"'+rightBgStyle+'">'+"\n";
			strContent +=3D '				<table width=3D"'+buttonWidth+'" border=3D"0" =
cellspacing=3D"0" cellpadding=3D"0">'+"\n";
			strContent +=3D '					<tr>'+"\n";
			strContent +=3D '						<td width=3D"'+buttonTextLPad+'"><div =
class=3D"cnnDDBtnLeft" style=3D"'+leftBgStyle+'"></div></td>'+"\n";
			strContent +=3D '						<td width=3D"'+buttonTextWidth+'">'+"\n";
			strContent +=3D '							<div class=3D"cnnDDValueContainer">'+"\n";
			strContent +=3D '								<div id=3D"'+menuId+'_Val" =
class=3D"cnnDDValue" =
style=3D"width:'+buttonTextWidth+'px;color:#c5c5c5;">'+buttonText+'</div>=
'+"\n";
			strContent +=3D '						</td>'+"\n";
			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";
			strContent +=3D '					</tr>'+"\n";
			strContent +=3D '				</table>'+"\n";
			strContent +=3D '			</div><!--/cnnDDBtn -->'+"\n\n";
			strContent +=3D '		</div><!--/'+buttonClass+' -->'+"\n\n";

			strContent +=3D '	</div><!--/cnnDDContainer -->'+"\n";
			strContent +=3D "\n\n";

			// draw the new content
			$(wrapId).innerHTML =3D strContent;

			// reset the list
			$(listId).selectedIndex =3D 0;

		}//else id of select not found [ abort ]
	},

	buildDropdown: function(menuId, buttonWidth, menuWidth, numVisibleRows, =
buttonClass, hiddenListSuffix) {
		// default parameters
		if (!buttonWidth) buttonWidth =3D 140;
		if (!menuWidth) menuWidth =3D this.defaultMenuWidth;
		if (!numVisibleRows) numVisibleRows =3D 10;
		if (!buttonClass) buttonClass =3D 'cnnDDWireLtg';

		if (menuWidth < this.minMenuWidth) menuWidth =3D this.minMenuWidth;
		if (menuWidth > this.maxMenuWidth) menuWidth =3D this.maxMenuWidth;

		var wrapId =3D menuId + "_wrap";
		var listId =3D menuId + "_list" + (hiddenListSuffix ? '_' + =
hiddenListSuffix : '');

		this.menus[menuId] =3D new Array();
		this.menus[menuId].listId =3D listId;
		this.menus[menuId].updateFirstRow =3D false;

		if ($(wrapId) && $(listId)) {
			// hide the <select>
			$(listId).style.display =3D "none";

			var displayedValue =3D new Array();
			var internalValue =3D new Array();
			var disabledRow =3D new Array();

			var listItems =3D $(listId).options;
			for (var i=3D0;i<listItems.length;i++) {
				displayedValue[i] =3D listItems[i].innerHTML;
				internalValue[i] =3D listItems[i].value;
				disabledRow[i] =3D listItems[i].disabled;
			}
			var selectedRow =3D $(listId).selectedIndex;

			// If no row was explicitly selected
			if (selectedRow =3D=3D 0) {
				// See if the first row matches one of the later rows
				for (i=3D1;i<displayedValue.length;i++) {
					if (displayedValue[i] =3D=3D displayedValue[0]) {
						selectedRow =3D i;
						this.menus[menuId].updateFirstRow =3D true;
						break;
					}
				}
			}
			var buttonText =3D displayedValue[selectedRow];
			var numRows =3D displayedValue.length;

			var buttonTextLPad =3D 10;
			var buttonTextRPad =3D 34;
			var buttonTextWidth =3D buttonWidth - (buttonTextLPad + =
buttonTextRPad);

			// minus left and right borders
			var fullRowWidth =3D menuWidth - this.combinedBorderWidth;

			// without scrollbar
			var visibleRowsHeight =3D numRows * this.rowHeight;
			var rowWidth =3D fullRowWidth;

			// with scrollbar
			if (numRows > numVisibleRows) {
				visibleRowsHeight =3D numVisibleRows * this.rowHeight;
				rowWidth -=3D 10;
			}

			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;';
			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;';

			switch (buttonClass) {
				case 'cnnDDWire':
					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;';
					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;';
					break;
				case 'cnnBlkBgWhtBox':
					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;';
					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;';
					break;
			}


			// build content for the menu
			var strContent =3D "\n\n\n\n";
			strContent +=3D '	<div class=3D"cnnDDContainer" =
style=3D"width:'+buttonWidth+'px;">'+"\n";

			strContent +=3D '		<div class=3D"cnnDDBoxContainer">'+"\n";
			strContent +=3D '		<div class=3D"cnnDDBox" id=3D"'+menuId+'" =
style=3D"width:'+menuWidth+'px;" onmousedown=3D"return =
cnnDD.mouseDown(event, \''+menuId+'\');">'+"\n";
			strContent +=3D '			<div class=3D"cnnDDBoxHeader"><div =
class=3D"cnnDDBoxHeaderTL"></div><div =
class=3D"cnnDDBoxHeaderTR"></div></div>'+"\n";
			strContent +=3D '			<div class=3D"cnnDDBoxContent">'+"\n";

			strContent +=3D '				<div class=3D"cnnDDContent" =
style=3D"width:'+fullRowWidth+'px;">'+"\n";
			strContent +=3D '					<div class=3D"cnnPad6Top"></div>'+"\n";
			strContent +=3D '					<div class=3D"cnnDDList" =
style=3D"height:'+visibleRowsHeight+'px; width:'+rowWidth+'px;">'+"\n";
			strContent +=3D '						<ul>'+"\n";

			for (var i=3D0;i<displayedValue.length;i++) {
				if ((i=3D=3D0) && (this.menus[menuId].updateFirstRow)) {
					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";
				}
				else if (disabledRow[i]) {
					strContent +=3D '						<li =
class=3D"cnnDDSeparator"><span>'+displayedValue[i]+'</span></li>'+"\n";
				}
				else {
					strContent +=3D '						<li><a =
href=3D"javascript:cnnDD.select('+i+',\''+this.encodeAttr(displayedValue[=
i])+'\',\''+this.encodeAttr(internalValue[i])+'\');">'+displayedValue[i]+=
'</a></li>'+"\n";
				}
			}
			strContent +=3D '						</ul>'+"\n";
			strContent +=3D '					</div>'+"\n";
			strContent +=3D '					<div class=3D"cnnPad8Top"></div>'+"\n";
			strContent +=3D '				</div><!-- /cnnDDContent -->'+"\n";

			strContent +=3D '			</div><!-- /cnnDDBoxContent -->'+"\n";
			strContent +=3D '			<div class=3D"cnnDDBoxFooter"><div =
class=3D"cnnDDBoxFooterBL"></div><div =
class=3D"cnnDDBoxFooterBR"></div></div>'+"\n";
			strContent +=3D '		</div><!--/cnnDDBox-->'+"\n";
			strContent +=3D '		</div><!--/cnnDDBoxContainer-->'+"\n";

			strContent +=3D '		<div class=3D"'+buttonClass+'">'+"\n";
			strContent +=3D '			<div class=3D"cnnDDBtn" onmousedown=3D"return =
cnnDD.mouseDownBtn(event, \''+menuId+'\');" onclick=3D"return =
cnnDD.open(\''+menuId+'\')" style=3D"'+rightBgStyle+'">'+"\n";
			strContent +=3D '				<table width=3D"'+buttonWidth+'" border=3D"0" =
cellspacing=3D"0" cellpadding=3D"0">'+"\n";
			strContent +=3D '					<tr>'+"\n";
			strContent +=3D '						<td width=3D"'+buttonTextLPad+'"><div =
class=3D"cnnDDBtnLeft" style=3D"'+leftBgStyle+'"></div></td>'+"\n";
			strContent +=3D '						<td width=3D"'+buttonTextWidth+'">'+"\n";
			strContent +=3D '							<div class=3D"cnnDDValueContainer">'+"\n";
			strContent +=3D '								<div id=3D"'+menuId+'_Val" =
class=3D"cnnDDValue" =
style=3D"width:'+buttonTextWidth+'px;">'+buttonText+'</div>'+"\n";
			strContent +=3D '						</td>'+"\n";
			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";
			strContent +=3D '					</tr>'+"\n";
			strContent +=3D '				</table>'+"\n";
			strContent +=3D '			</div><!--/cnnDDBtn -->'+"\n\n";
			strContent +=3D '		</div><!--/'+buttonClass+' -->'+"\n\n";

			strContent +=3D '	</div><!--/cnnDDContainer -->'+"\n";
			strContent +=3D "\n\n";

			// draw the new content
			$(wrapId).innerHTML =3D strContent;

			// capture mousedown
			document.body.onmousedown =3D cnnMouseDown;
		}//else id of select not found [ abort ]
	},

	buildOverlay: function(menuId, menuWidth, numVisibleRows, dx, dy) {
		// default parameters
		if (!menuWidth) menuWidth =3D this.defaultMenuWidth;
		if (!numVisibleRows) numVisibleRows =3D 10;

		if (menuWidth < this.minMenuWidth) menuWidth =3D this.minMenuWidth;
		if (menuWidth > this.maxMenuWidth) menuWidth =3D this.maxMenuWidth;

		var leftPos =3D -20;
		var topPos =3D 1;
		if (dx) leftPos +=3D dx;
		if (dy) topPos +=3D dy;

		var wrapId =3D menuId + "_wrap";
		var listId =3D menuId + "_list";
		var titleId =3D menuId + "_title";

		if ($(wrapId) && $(titleId) && $(listId)) {
			// hide the list
			$(listId).style.display =3D "none";

			var title =3D $(titleId).innerHTML;

			// Get the displayed value for each select option
			var listItems =3D $(listId).getElementsByTagName('li');
			var displayedList =3D new Array();
			for (var i=3D0;i<listItems.length;i++) {
				displayedList[i] =3D listItems[i].innerHTML;
			}

			var numRows =3D displayedList.length;

			var menuTitleRPad =3D 60;
			var menuTitleWidth =3D menuWidth - menuTitleRPad;

			// minus left and right borders
			var fullRowWidth =3D menuWidth - this.combinedBorderWidth;

			// without scrollbar
			var visibleRowsHeight =3D numRows * this.rowHeight;
			var rowWidth =3D menuWidth - this.combinedBorderWidth;

			// with scrollbar
			if (numRows > numVisibleRows) {
				visibleRowsHeight =3D numVisibleRows * this.rowHeight;
				rowWidth -=3D 10;
			}


			// build content for the menu
			var strContent =3D "\n\n\n\n";
			strContent +=3D ' <div class=3D"cnnDDOvrBoxContainer">'+"\n";
			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";
			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";
			strContent +=3D '			<div class=3D"cnnDDBoxHeader"><div =
class=3D"cnnDDBoxHeaderTL"></div><div =
class=3D"cnnDDBoxHeaderTR"></div></div>'+"\n";
			strContent +=3D '			<div class=3D"cnnDDBoxContent">'+"\n";
			strContent +=3D '				<div class=3D"cnnDDOvrCloseContainer"><div =
class=3D"cnnDDOvrClose" onclick=3D"cnnDD.close(); return true;"><img =
src=3D"http://i.cdn.turner.com/cnn/.element/img/2.0/global/dropdowns/over=
lay_close.png" width=3D"12" height=3D"12" alt=3D"" =
border=3D"0"></div></div>'+"\n";
			strContent +=3D '				<div class=3D"cnnDDContent" =
style=3D"width:'+fullRowWidth+'px;">'+"\n";
			strContent +=3D '					<div class=3D"cnnDDOvrTitle" =
style=3D"width:'+menuTitleWidth+'px;overflow:hidden;">'+title+'</div>'+"\=
n";
			strContent +=3D '					<div class=3D"cnnDDList" =
style=3D"height:'+visibleRowsHeight+'px;width:'+rowWidth+'px;">'+"\n";
			strContent +=3D '						<ul>'+"\n";

			for (var i=3D0;i<displayedList.length;i++) {
				strContent +=3D '					<li>'+displayedList[i]+'</li>'+"\n";
			}
			strContent +=3D '						</ul>'+"\n";
			strContent +=3D '					</div><!-- /cnnDDList -->'+"\n";
			strContent +=3D '					<div class=3D"cnnPad12Top"></div>'+"\n";
			strContent +=3D '				</div><!-- /cnnDDContent -->'+"\n";
			strContent +=3D '			</div><!-- /cnnDDBoxContent -->'+"\n";
			strContent +=3D '			<div class=3D"cnnDDBoxFooter"><div =
class=3D"cnnDDBoxFooterBL"></div><div =
class=3D"cnnDDBoxFooterBR"></div></div>'+"\n";
			strContent +=3D '		</div><!--/cnnDDOvrBox-->'+"\n";
			strContent +=3D ' </div><!--/cnnDDOvrBoxContainer-->'+"\n";
			strContent +=3D "\n\n";
			// draw the new content
			$(wrapId).innerHTML =3D strContent;

			// capture mousedown
			document.body.onmousedown =3D cnnMouseDown;

		}//else id of select not found [ abort ]
	},


	select: function(index, displayedValue, internalValue) {
		if ($(this.curId)) {
			var menuId =3D this.curId;

			// close the dropdown
			this.close();

			// change the displayed dropdown value (button text)
			if ($(menuId + '_Val')) {
				$(menuId + '_Val').innerHTML =3D displayedValue;
			}

			// set the first row of the menu to the current value
			if ((this.menus[menuId].updateFirstRow) && $(menuId + '_hdnVal')) {
				$(menuId+'_hdnVal').innerHTML =3D '<a =
href=3D"javascript:cnnDD.select(' + index + ',\'' + =
this.encodeAttr(displayedValue) + '\',\'' + =
this.encodeAttr(internalValue) + '\')">' + displayedValue + '</a>';
			}

			var listId =3D this.menus[menuId].listId;
			if ($(listId)) {
				// if the value has changed
				if ($(listId).selectedIndex !=3D index) {
					// set the index of the selected option for the invisible <select>
					$(listId).selectedIndex =3D index;

					// If an onchange event handler exists
					if ($(listId).onchange) {
						$(listId).onchange();
					}
				}
			}

			// if a callback function exists
			try {
				var onChoose =3D eval(menuId + '_OnChoose');
				if (onChoose) {
					onChoose();
				}
			}
			catch(err) {
			}
		}
	},

	open: function(id) {
		if($(id)) {
			// Was the same menu clicked again?
			var sameMenu =3D (this.curId =3D=3D id);

			// If a menu is already open
			this.close();

			// If a different menu was clicked
			if (!sameMenu) {
				$(id).style.display =3D "block";
				this.curId =3D id;
				cnnDropdownOpen =3D true;
			}
		}
	},

	close: function() {
		if ($(this.curId)) {
			$(this.curId).style.display =3D "none";
			this.curId =3D '';
			cnnDropdownOpen =3D false;
		}
	},

	encodeAttr: function(str) {
		str=3Dstr.replace(/\\/g,'\\\\');
		str=3Dstr.replace(/\'/g,'\\\'');
		str=3Dstr.replace(/\"/g,'&quot;');
		str=3Dstr.replace(/\0/g,'\\0');
		return str;
	},

	mouseDown: function(e, id) {
		this.ignoreMouseDownBody =3D true;
		return true;
	},

	mouseDownBtn: function(e, id) {
		// True if the same dropdown button was clicked again.
		this.ignoreMouseDownBody =3D (id && (this.curId =3D=3D id));
		return true;
	},

	mouseDownBody: function(e) {
		if (!this.ignoreMouseDownBody) {
			this.close();
		}
		this.ignoreMouseDownBody =3D false;
		return true;
	}
}
/* end styled dropdowns
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */


/* most popular module
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */
var cnnMpActiveId =3D 'cnnMpStory';
var cnnMpLock =3D false;
var cnnie =3D false;
function cnnToggleMP(idShow) {

	if (cnnMpActiveId && cnnMpActiveId !=3D idShow) {

		if(!cnnMpLock) {
			cnnMpLock =3D true;

			if(cnnie) {
				cnnToggleMPIE(idShow);
			}
			else {
				// hide the old
				var elHide =3D $(cnnMpActiveId);

				Effect.toggle(elHide,'blind',
				{
					duration:0.25,
					beforeStart:function()
					{
						var cnnHideHead =3D idShow + '-head';
						$(cnnHideHead).className=3D"active";
					}
				}

				);

				// display the new
				var elShow =3D $(idShow);

				Effect.toggle(elShow,'blind',
				{
					duration:0.25,
					beforeStart:function(obj)
					{
						var cnnShowHead =3D cnnMpActiveId + '-head';
						$(cnnShowHead).className =3D "closed";
					},

					afterFinish:function(obj)
					{
						cnnMpActiveId =3D idShow;
					}
				}
				);
			}// end if cnnie

			// delay the unlock
			setTimeout("cnnMpLock =3D false;",250);

		}// end if !cnnMpLock

	}// end same id
}

function cnnToggleMPIE(idShow) {

	var elHide =3D $(cnnMpActiveId);
	var elShow =3D $(idShow);

	// hide the red header
	var cnnHideHead =3D idShow + '-head';
	$(cnnHideHead).className=3D"active";

	new Effect.Parallel(
	[
		new Effect.SlideUp(elHide),
		new Effect.SlideDown(elShow)
	], {
		duration: 0.04
	});

	// show the previously active red header
	var cnnShowHead =3D cnnMpActiveId + '-head';
	$(cnnShowHead).className =3D "closed";

	// reset the active id
	cnnMpActiveId =3D idShow;

}

function cnnToggleMPNoSlide(idShow) {

	if (cnnMpActiveId && cnnMpActiveId !=3D idShow) {

		var elHide =3D $(cnnMpActiveId);
		var cnnHideHead =3D idShow + '-head';
		$(cnnHideHead).className=3D"active";
		elHide.style.display=3D'none';

		var elShow =3D $(idShow);
		var cnnShowHead =3D cnnMpActiveId + '-head';
		$(cnnShowHead).className =3D "closed";
		elShow.style.display=3D'block';

		cnnMpActiveId =3D idShow;

	}

}

/* most popular module tab functions */
function cnnMpStories( intWhich ) {
	for(i=3D1;i<4;i++) {
		if(i=3D=3DintWhich) {
			$('cnnMpStories' + i).style.display =3D 'block';
			$('cnnMpStoriesTab' + i).className =3D 'active';
		}
		else {
			$('cnnMpStories' + i).style.display =3D 'none';
			$('cnnMpStoriesTab' + i).className =3D '';
		}
	}
	$('cnnMpStoriesTab'+ intWhich).blur();
}

function cnnMpVideos( intWhich ) {
	for(i=3D1;i<4;i++) {
		if(i=3D=3DintWhich) {
			$('cnnMpVideos' + i).style.display =3D 'block';
			$('cnnMpVideosTab' + i).className =3D 'active';
		}
		else {
			$('cnnMpVideos' + i).style.display =3D 'none';
			$('cnnMpVideosTab' + i).className =3D '';
		}
	}
	$('cnnMpVideosTab'+ intWhich).blur();
}

/* most popular module init function */
function cnnInitMP() {
	$('cnnMpTopic').style.display =3D 'none';
	$('cnnMpVideo').style.display =3D 'none';
	$('cnnMostPopMod').style.display =3D 'block';
}

/* end most popular module
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */

/* politics T1 video/story tabs */
function cnnPolShowStories() {
	$('cnnPolT2Videos').style.display =3D "none";
	$('cnnPolVideoTab').style.display =3D "none";
	$('cnnT1Video').style.display =3D "none";
	$('cnnT1Story').style.display =3D "block";
	$('cnnPolStoryTab').style.display =3D "block";
	$('cnnPolT2Stories').style.display =3D "block";
}
function cnnPolShowVideos() {
	$('cnnPolT2Videos').style.display =3D "block";
	$('cnnPolVideoTab').style.display =3D "block";
	$('cnnT1Video').style.display =3D "block";
	$('cnnT1Story').style.display =3D "none";
	$('cnnPolStoryTab').style.display =3D "none";
	$('cnnPolT2Stories').style.display =3D "none";
}

/* cnn affiliates (us section)
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */
function cnnAffiliates_SetGoBtn(url) {
	var btnOff =3D =
"http://i.cdn.turner.com/cnn/.element/img/2.0/sect/us/affiliates/go_btn_d=
isabled.gif";
	var btnOn =3D =
"http://i.cdn.turner.com/cnn/.element/img/2.0/sect/us/affiliates/go_btn.g=
if";
	var goButtonId =3D 'cnnAffiliatesGoBtn';
	if ($(goButtonId)) {
		if (url) {
			$(goButtonId).innerHTML =3D '<a id=3D"cnnAffiliatesGoLink" =
href=3D"'+url+'" target=3D"_blank"><img src=3D"'+btnOn+'" width=3D"29" =
height=3D"23" border=3D"0" alt=3D""></a>';
		}
		else {
			$(goButtonId).innerHTML =3D '<img src=3D"'+btnOff+'" width=3D"29" =
height=3D"23" border=3D"0" alt=3D"">';
		}
	}
}

function cnnAffiliates_SelectRegion(selectObj) {
	var region =3D selectObj.value.toLowerCase();
		if (region) {
		var mapId =3D 'cnnAffiliatesMap';
		if ($(mapId)) {
			$(mapId).src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/sect/us/affiliates/affiliat=
es_' + region + '.gif';
		}
		// reset the list
		var affiliatesId =3D 'cnnDDAffiliatesCity_list_' + region;
		if ($(affiliatesId)) {
			$(affiliatesId).selectedIndex =3D 0;
		}
		cnnDD.buildDropdown('cnnDDAffiliatesCity', 252, 270, 10, 'cnnDDWire', =
region);
		cnnAffiliates_SetGoBtn();
	}
	// no region selected
	else {
		var mapId =3D 'cnnAffiliatesMap';
		if ($(mapId)) {
			$(mapId).src =3D =
'http://i.cdn.turner.com/cnn/.element/img/2.0/sect/us/affiliates/affiliat=
es_default.gif';
		}
		cnnDD.buildDisabledDropdown('cnnDDAffiliatesCity', 252, 'cnnDDWire', =
'northeast');
		cnnAffiliates_SetGoBtn();
	}
}

function cnnAffiliates_SelectCity(selectObj) {
	var url =3D selectObj.value;
	cnnAffiliates_SetGoBtn(url);
}

/* end cnn affiliates (us section)
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */

/* cnet product reviews widget
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */
function cnnSearchCnet() {
	switch(document.tsearch.nodeid.value) {
		case "more":
		=
window.open("http://cnn-cnet.com.com/2001-1_7-0.html?part=3Dcnn-cnet&subj=
=3Dre&tag=3Dsearch");
		break;
		case "6500":
		=
window.open("http://cnn-cnet.com.com/4323-6530_7-6509025.html?part=3Dcnn-=
cnet&subj=3Dre&tag=3Dsearch");
		break;
		case "6501":
		=
window.open("http://cnn-cnet.com.com/4323-6530_7-6509037.html?part=3Dcnn-=
cnet&subj=3Dre&tag=3Dsearch");
		break;
		case "3504":
		=
window.open("http://cnn-cnet.com.com/4323-6525_7-6509098.html?part=3Dcnn-=
cnet&subj=3Dre&tag=3Dsearch");
		break;
		case "3000":
		=
window.open("http://cnn-cnet.com.com/4323-6526_7-6509032.html?part=3Dcnn-=
cnet&subj=3Dre&tag=3Dsearch");
		break;
		case "3127":
		=
window.open("http://cnn-cnet.com.com/4323-6522_7-6509058.html?part=3Dcnn-=
cnet&subj=3Dre&tag=3Dsearch");
		break;
		case "6463":
		=
window.open("http://cnn-cnet.com.com/4323-6531_7-6509125.html?part=3Dcnn-=
cnet&subj=3Dre&tag=3Dsearch");
		break;
		case "6450":
		=
window.open("http://cnn-cnet.com.com/4323-6532_7-6509081.html?part=3Dcnn-=
cnet&subj=3Dre&tag=3Dsearch");
		break;
		case "3132":
		=
window.open("http://cnn-cnet.com.com/4323-6528_7-6509067.html?part=3Dcnn-=
cnet&subj=3Dre&tag=3Dsearch");
		break;
		case "3243":
		=
window.open("http://cnn-cnet.com.com/4323-6523_7-6509031.html?part=3Dcnn-=
cnet&subj=3Dre&tag=3Dsearch");
		break;
	}
	return false;
}
/* end cnet product reviews widget
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */

/* partner box output
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */
function cnnPartnerRand_Asort(){ return (Math.round(Math.random())-0.5); =
}

function cnnPrintPartnerOutput() {
	var cnnPartner_Data =3D new Array();
	// name, logo, feed location, subscribe link, logo link
          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");
          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", "/linkto/subs/ew.html", "/ew/?cnn=3Dyes");
          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", "/linkto/subs/people.html", =
"http://www.people.com/people");
          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");
          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", "/linkto/subs/si.html", "/si/?cnn=3Dyes");

	cnnPartner_Data.sort(cnnPartnerRand_Asort);

	for(var i =3D 0;i < 2;i++) {

		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">';
		if(cnnPartner_Data[i][3] !=3D "") {
			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>';
		}
		temp_partner_html +=3D '<div>';
		if(cnnPartner_Data[i][4] !=3D "") {
			temp_partner_html +=3D '<a href=3D"' + cnnPartner_Data[i][4] + '">';
		}
		temp_partner_html +=3D '<img src=3D"' + cnnPartner_Data[i][1] + '" =
class=3D"cnnPartLogo" border=3D"0" alt=3D"">';
		if(cnnPartner_Data[i][4] !=3D "") {
			temp_partner_html +=3D '</a>';
		}
		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>';

		Element.update('randPartner_' + i, temp_partner_html);
		new Ajax.Updater('cnnPartnerInclude_' + i, cnnPartner_Data[i][2], =
{asynchronous:true, method:'get'});

	}
}

function cnnMpPartnerRotate() {
	var intRandom =3D Math.floor(Math.random()*2);
	switch(intRandom) {
		case 0:
			$('cnnMpPartnerEW').style.display =3D "block";
			break;
		case 1:
			$('cnnMpPartnerPeople').style.display =3D "block";
			break;
		default:
			break;
	}
}
/* end partner box output
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */

/* main page most popular overlay
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */
function cnnShowMoPo() {
	$('cnnOpacity').style.display =3D "block";
	$('cnnMoPo').style.display =3D "block";
}

function cnnHideMoPo() {
	$('cnnMoPo').style.display =3D "none";
	new Effect.Opacity('cnnOpacity', {duration:0.1, from:0.5, to:0.0});

	// reset opacity
	setTimeout("$('cnnOpacity').style.display =3D \"none\";new =
Effect.Opacity('cnnOpacity', {duration:0.1, from:0.0, to:0.8});",500)
}

/* partner box omniture tracking
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */
var cnnPSproducts=3D"";
var cnnProducts =3D new Array();
/* end partner box output
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 */

/* set edition js
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */
var cnnDomestic_Host =3D 'www.cnn.com';
var cnnIntl_Host =3D 'edition.cnn.com';
var cnnUserEd_Pref =3D allCookies['SelectedEdition'];
var cnnShow_setPref =3D false;
var cnnUEPHost_Val =3D location.hostname;
var cnnOn_Dom_Flag;

if(location.hostname.indexOf(cnnDomestic_Host) > -1) { cnnOn_Dom_Flag =
=3D 1; }

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>';

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>'; }
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>'; }

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>';

if(cnnUserEd_Pref) {
	if(location.hostname =3D=3D "cnn.com") {
		if(cnnUserEd_Pref =3D=3D 'www') { location.replace('http://' + =
cnnDomestic_Host); }
		else{ location.replace('http://' + cnnIntl_Host); }
	}
}
else {
	cnnShow_setPref =3D true;
}

function cnnSetPrefBox_Close(pref_flag) {
	if (document.getElementById) { =
document.getElementById('cnnSetEditionContainer').style.display =3D =
'none'; }
	else if (document.all) { =
document.all['cnnSetEditionContainer'].style.display =3D 'none'; }
}

function cnnSetEditionBox() {

	Element.update('cnnSetEditionContainer', cnnSetPrefBox_HTML);
	if (document.getElementById) { =
document.getElementById('cnnSetEditionContainer').style.display =3D =
'block'; }
	else if (document.all) { =
document.all['cnnSetEditionContainer'].style.display =3D 'block'; }
	if(!cnnUserEd_Pref) {
		if(location.hostname.indexOf(cnnIntl_Host) > -1) { =
CNN_setCookie('SelectedEdition', 'edition', 854400, '/', '.cnn.com'); }
		else { CNN_setCookie('SelectedEdition', 'www', 854400, '/', =
'.cnn.com'); }
	}

}

function cnnSetEdPref_cooKie() {
	form_obj =3D document.getElementById('cnnsetPref_Form');
	cookie_val =3D (form_obj.edition[0].checked) ? =
form_obj.edition[0].value : form_obj.edition[1].value;
	CNN_setCookie('SelectedEdition', cookie_val, 854400, '/', '.cnn.com');
	cnnSetPrefBox_Close(1);
	current_loc =3D "" + document.location + '';
	if(cookie_val =3D=3D 'www') {
		if(location.hostname.indexOf(cnnDomestic_Host) < 0) {
			if(location.hostname.indexOf(cnnIntl_Host) > -1) {
				current_loc =3D current_loc.replace(/^http:\/\/.+\.com/, 'http://' + =
cnnDomestic_Host);
				location.replace(current_loc);
			}
		}
	}
	else {
		if(location.hostname.indexOf(cnnIntl_Host) < 0) {
			if(location.hostname.indexOf(cnnDomestic_Host) > -1) {
				current_loc =3D current_loc.replace(/^http:\/\/.+\.com/, 'http://' + =
cnnIntl_Host);
				location.replace(current_loc);
			}
		}
	}
}

/* end set edition js
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */

/* make cnn your home js
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */
var cnnHPbkmrk =3D "http://www.cnn.com";
if(location.hostname =3D=3D "edition.cnn.com") {
	cnnHPbkmrk =3D "http://edition.cnn.com";
}

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>';

function cnnMakeHPBox_Close() {
	if (document.getElementById) { =
document.getElementById('cnnMakeHPContainer').style.display =3D 'none'; =
}
	else if (document.all) { =
document.all['cnnMakeHPContainer'].style.display =3D 'none'; }
}

function cnnMakeHPBox() {
	if(document.all) {
		Element.update('cnnMakeHPContainer', cnnMakeHPBox_HTML);
		document.all['cnnMakeHPContainer'].style.display =3D 'block';
	}
	else {
	=
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');
	}

}

/* end make cnn your home js
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */

/* career builder widget variables js
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */
cnnCBIds =3D {
	'mpot': 'cbcnn_mpot',
	'pt': 'cbcnn_pt',
	'sal': 'cbcnn_sal',
	'cs': 'cbcnn_cs',
	'mopt': 'cbcnn_mopt',
	'_160': 'cbcnn160'
};

/*
	cnnSetCBVars --
		Sets the site id links and the hidden search field on the form.
*/
function cnnSetCBVars() {
	// using cnnSectionName and cnnMosaicDetect to determine what suffix =
should be affixed.
	var cnnWhichSection =3D typeof(cnnSectionName) =3D=3D "undefined" ? "" =
: cnnSectionName;
	var cnnIsMosaic =3D typeof(cnnMosaicDetect) !=3D "undefined" && =
cnnMosaicDetect =3D=3D "mosaic" ? true : false;
=09
	switch(cnnWhichSection)
	{
		case "World":			cnnSuffix =3D cnnIsMosaic ? "WSP" : "WMP";	break;
		case "US":				cnnSuffix =3D cnnIsMosaic ? "USSP" : "USMP";	break;
		case "Politics":		cnnSuffix =3D cnnIsMosaic ? "PSP" : "PMP";	break;
		case "Entertainment":	cnnSuffix =3D cnnIsMosaic ? "ESP" : "EMP";	=
break;
		case "Health":			cnnSuffix =3D cnnIsMosaic ? "HSP" : "HMP";	break;
		case "Tech":			cnnSuffix =3D cnnIsMosaic ? "" : "TMP";		break;
		case "Living":			cnnSuffix =3D cnnIsMosaic ? "LSP" : "LMP";	break;
		default:				cnnSuffix =3D "";
	}
=09
	ids =3D Object.clone(cnnCBIds);
	for(cnnprop in ids)=20
	{
		ids[cnnprop] +=3D cnnSuffix;
	}


	// Maps code ids (html ids in code) to site ids=20
	var cnnMapLnkId =3D {
		"cnnLnkMopt" : ids.mopt,=20
		"cnnLnkPt" : ids.pt,=20
		"cnnLnkSal" : ids.sal,=20
		"cnnLnkCs" : ids.cs,=20
		"cnnLnkMopt2" : ids.mopt=20
	};
=09
	var cnnMapFormId =3D {
		"cnnLnkSiteID" : ids._160=20
	};
	=09
	for(id in cnnMapLnkId)
	{
		if($(id) !=3D null)
		{
			$(id).href =3D $(id).href.replace(/siteid=3D/, "siteid=3D" + =
cnnMapLnkId[id]);
		}
	}
=09
	for(id in cnnMapFormId)
	{
		if($(id) !=3D null)
		{
			$(id).value =3D cnnMapFormId[id];
		}
	}
}
/* career builder widget variables js
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */

var cnnDocDomain=3D'';
if(location.hostname.indexOf('cnn.com')>0) { cnnDocDomain=3D'cnn.com'; }
if(location.hostname.indexOf('turner.com')>0) { =
cnnDocDomain=3D'turner.com'; }
if(cnnDocDomain) { document.domain =3D cnnDocDomain; }


------=_NextPart_000_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.element/ssi/js/1.3/oo_engine.js

/* OnlineOpinion (S3tS,1424b) */=0A=
/* This product and other products of OpinionLab, Inc. are protected by =
U.S. Patent No. 6606581, 6421724, 6785717 B1 and other patents pending. =
*/=0A=
var custom_var,_sp=3D'%3A\\/\\/',_rp=3D'%3A//',_poE=3D0.0, =
_poX=3D0.0,_sH=3Dscreen.height,_d=3Ddocument,_w=3Dwindow,_ht=3Descape(_w.=
location.href),_hr=3D_d.referrer,_tm=3D(new =
Date()).getTime(),_kp=3D0,_sW=3Dscreen.width;_d.onkeypress=3D_fK;function=
 _fK(_e){if(!_e)_e=3D_w.event;var _k=3D(typeof =
_e.which=3D=3D'number')?_e.which:_e.keyCode;if((_kp=3D=3D15&&_k=3D=3D12))=
_w.open('https://secure.opinionlab.com/pageviewer/pv_controlboard.html?ur=
l=3D'+_fC(_ht),'PageViewer','height=3D529,width=3D705,screenX=3D'+((_sW-7=
05)/2)+',screenY=3D'+((_sH-529)/2)+',top=3D'+((_sH-529)/2)+',left=3D'+((_=
sW-705)/2)+',status=3Dyes,toolbar=3Dno,menubar=3Dno,location=3Dno,resizab=
le=3Dyes');_kp=3D_k};function =
_fC(_u){_aT=3D_sp+',\\/,\\.,-,_,'+_rp+',%2F,%2E,%2D,%5F';_aA=3D_aT.split(=
',');for(i=3D0;i<5;i++){eval('_u=3D_u.replace(/'+_aA[i]+'/g,_aA[i+5])')}r=
eturn _u};function =
O_LC(){_w.open('https://secure.opinionlab.com/ccc01/comment_card.asp?time=
1=3D'+_tm+'&time2=3D'+(new =
Date()).getTime()+'&prev=3D'+_fC(escape(_hr))+'&referer=3D'+_fC(_ht)+'&he=
ight=3D'+_sH+'&width=3D'+_sW+'&custom_var=3D'+custom_var,'comments','widt=
h=3D535,height=3D192,screenX=3D'+((_sW-535)/2)+',screenY=3D'+((_sH-192)/2=
)+',top=3D'+((_sH-192)/2)+',left=3D'+((_sW-535)/2)+',resizable=3Dyes,copy=
history=3Dyes,scrollbars=3Dno')};function =
_fPe(){if(Math.random()>=3D1.0-_poE){O_LC();_poX=3D0.0}};function =
_fPx(){if(Math.random()>=3D1.0-_poX)O_LC()};window.onunload=3D_fPx;functi=
on O_GoT(_p){_d.write('<a href=3D\'javascript:O_LC()\' =
class=3D\'realmLink\'>'+_p+'</a>');_fPe()}
------=_NextPart_000_0000_01C908F8.678A5380
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_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/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_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://content.dl-rms.com/rms/mother/5721/nodetag.js

(function(){=0A=
  var pfs=3D{ "http://www.cnn.com/test/index.sc.html" : { "nid" : 17647 =
, "tr" : 1 },=0A=
"http://www.cnn.com/POLITICS/" : { "nid" : 4486 , "tr" : 1 },=0A=
"http://www.cnn.com/SHOWBIZ/" : { "nid" : 17569 , "tr" : 1 },=0A=
"http://www.cnn.com/LIVING/" : { "nid" : 17570 , "tr" : 1 },=0A=
"http://www.cnn.com/TRAVEL/" : { "nid" : 4485 , "tr" : 1 },=0A=
"http://www.cnn.com/HEALTH/" : { "nid" : 12187 , "tr" : 1 },=0A=
"http://www.cnn.com/WORLD/" : { "nid" : 4481 , "tr" : 1 },=0A=
"http://www.cnn.com/CRIME/" : { "nid" : 17568 , "tr" : 1 },=0A=
"http://www.cnn.com/TECH/" : { "nid" : 4487 , "tr" : 1 },=0A=
"http://www.cnn.com/US/" : { "nid" : 4482 , "tr" : 1 },=0A=
"http://weather.cnn.com" : { "nid" : 4483 , "tr" : 1 } =
},d=3Ddocument,w=3Dwindow,u=3D(w.gm_fake_href)?w.gm_fake_href:w.location.=
href;=0A=
=0A=
  function z(n){=0A=
	if (Math.random()>=3Dpfs[n]['tr']) return;=0A=
=0A=
	var z=3Dd.createElement('SCRIPT');=0A=
	z.src=3D'http://content.dl-rms.com/dt/s/'+pfs[n]['nid']+'/s.js';=0A=
	z.type=3D'text/javascript';=0A=
	d.getElementsByTagName('head')[0].appendChild(z);=0A=
  }=0A=
  function r(){=0A=
	var n=3D"";=0A=
=0A=
	while (1) {try {=0A=
	for (p in pfs)=0A=
	  if (u.substring(0,p.length)=3D=3Dp && p.length > n.length) =0A=
		n=3Dp;=0A=
=0A=
	if (n.length > 0) {z(n);return;}=0A=
	} catch (e) {}=0A=
	if (w=3D=3Dtop) break;=0A=
=0A=
	if (w=3D=3Dwindow&&u!=3Ddocument.referrer)u=3Ddocument.referrer;=0A=
	else w=3Dw.parent;=0A=
	}=0A=
=0A=
  }=0A=
=0A=
  if (d.readyState=3D=3D"complete"){=0A=
	r();=0A=
  } else if (w.addEventListener){ =0A=
	w.addEventListener("load", r, false);=0A=
  } else if (w.attachEvent){ =0A=
	w.attachEvent("onload", r);=0A=
  }=0A=
})();
------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/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=
	s.campaign=3Ds.getQueryParam('cid');=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('/people/','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=
	var url46=3Ds.linkHandler('/arabic/','e');=0A=
	var url47=3Ds.linkHandler('arabic.cnn.com/','e');=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=
s.eVar24 =3D cnnQueryParam('cid');=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=
 * 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=
s.trackingServerSecure=3D"smetrics.cnn.com"=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_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.e/js/2.0/scripts/scriptaculous.js

// 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_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.e/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: "${{omnitureEdition}}"}],=0A=
nodes: [=0A=
{name: "BasePlayer", =0A=
map: [=0A=
{key: "Ad metering image URL", value: =
"http://i2.cdn.turner.com/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\'}, {type: \'nielsenTrack\', =
data: \'start\'}]"}, =0A=
{key: "end", value: "[{type: \'omnitureTrack\', data: \'end\'},{type: =
\'nielsenTrack\', data: \'end\'}]"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "TriggerCommands", =0A=
map: [=0A=
{key: "omnitureTrack", value: "CNN.BVPOmnitureTriggerCommand"}, =0A=
{key: "webstatTrack", value: "CNN.WebstatTriggerCommand"},=0A=
{key: "nielsenTrack", value: "CNN.NielsenTriggerCommand"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "CNNHotTopic", =0A=
map: [=0A=
{key: "omniture account", value: "${{omnitureEdition}}"}],=0A=
nodes: [=0A=
{name: "BasePlayer", =0A=
map: [=0A=
{key: "Ad metering image URL", value: =
"http://i2.cdn.turner.com/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\'}, {type: \'nielsenTrack\', =
data: \'start\'}]"}, =0A=
{key: "end", value: "[{type: \'omnitureTrack\', data: \'end\'},{type: =
\'nielsenTrack\', data: \'end\'}]"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "TriggerCommands", =0A=
map: [=0A=
{key: "omnitureTrack", value: "CNN.HotTopicOmnitureTriggerCommand"}, =0A=
{key: "webstatTrack", value: "CNN.WebstatTriggerCommand"},=0A=
{key: "nielsenTrack", value: "CNN.NielsenTriggerCommand"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "CNNHomePage", =0A=
map: [=0A=
{key: "omniture account", value: "${{omnitureEdition}}"}],=0A=
nodes: [=0A=
{name: "BasePlayer", =0A=
map: [=0A=
{key: "Ad metering image URL", value: =
"http://i2.cdn.turner.com/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\'}, {type: \'nielsenTrack\', =
data: \'start\'}]"}, =0A=
{key: "end", value: "[{type: \'omnitureTrack\', data: \'end\'},{type: =
\'nielsenTrack\', data: \'end\'}]"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "TriggerCommands", =0A=
map: [=0A=
{key: "omnitureTrack", value: "CNN.T1OmnitureTriggerCommand"}, =0A=
{key: "webstatTrack", value: "CNN.WebstatTriggerCommand"},=0A=
{key: "nielsenTrack", value: "CNN.NielsenTriggerCommand"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "CNNMosaic", =0A=
map: [=0A=
{key: "omniture account", value: "${{omnitureEdition}}"}],=0A=
nodes: [=0A=
{name: "BasePlayer", =0A=
map: [=0A=
{key: "Ad metering image URL", value: =
"http://i2.cdn.turner.com/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\'}, {type: \'nielsenTrack\', =
data: \'start\'}]"}, =0A=
{key: "end", value: "[{type: \'omnitureTrack\', data: \'end\'},{type: =
\'nielsenTrack\', data: \'end\'}]"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "TriggerCommands", =0A=
map: [=0A=
{key: "omnitureTrack", value: "CNN.MosaicOmnitureTriggerCommand"}, =0A=
{key: "webstatTrack", value: "CNN.WebstatTriggerCommand"},=0A=
{key: "nielsenTrack", value: "CNN.NielsenTriggerCommand"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "SAVP", =0A=
map: [=0A=
{key: "omniture account", value: "${{omnitureEdition}}"}],=0A=
nodes: [=0A=
{name: "BasePlayer", =0A=
map: [=0A=
{key: "Ad metering image URL", value: =
"http://i2.cdn.turner.com/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\'}, {type: \'nielsenTrack\', =
data: \'start\'}]"}, =0A=
{key: "end", value: "[{type: \'omnitureTrack\', data: \'end\'},{type: =
\'nielsenTrack\', data: \'end\'}]"}],=0A=
nodes: []=0A=
}]=0A=
}, =0A=
{name: "TriggerCommands", =0A=
map: [=0A=
{key: "omnitureTrack", value: "CNN.SpecialsOmnitureTriggerCommand"}, =0A=
{key: "webstatTrack", value: "CNN.WebstatTriggerCommand"},=0A=
{key: "nielsenTrack", value: "CNN.NielsenTriggerCommand"}],=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://${{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://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=

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.e/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.555.2010

if(typeof(window)!=3D=3D'undefined'){var deconcept;if(typeof =
deconcept=3D=3D=3D"undefined"){deconcept=3D{};}
deconcept.hop=3Dfunction(m,k){if(typeof(m.hasOwnProperty)=3D=3D=3D'undefi=
ned'){return true;}
return m.hasOwnProperty(k);};if(typeof =
deconcept.util=3D=3D=3D"undefined"){deconcept.util=3D{};}
if(typeof =
deconcept.SWFObjectUtil=3D=3D=3D"undefined"){deconcept.SWFObjectUtil=3D{}=
;}
deconcept.SWFObject=3Dfunction(_1,id,w,h,_5,c,_7,_8,_9,_a,_b){if(!documen=
t.getElementById){return;}
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);}
if(id){this.setAttribute("id",id);}
if(w){this.setAttribute("width",w);}
if(h){this.setAttribute("height",h);}
if(_5){this.setAttribute("version",new =
deconcept.PlayerVersion(_5.toString().split(".")));}
this.installedVer=3Ddeconcept.SWFObjectUtil.getPlayerVersion();if(c){this=
.addParam("bgcolor",c);}
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]);}}
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");}
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]+"\" ";}}
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");}
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]+"\" />";}}
var pa=3Dthis.getVariablePairs().join("&");if(pa.length>0){ja+=3D"<param =
name=3D\"flashvars\" value=3D\""+pa+"\" />";}ja+=3D"</object>";}
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);}}
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"));}}
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");}
catch(e){try{sa=3Dnew =
ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");ta=3Dnew =
deconcept.PlayerVersion([6,0,21]);sa.AllowScriptAccess=3D"always";}
catch(e2){if(ta.major=3D=3D=3D6){return ta;}}try{sa=3Dnew =
ActiveXObject("ShockwaveFlash.ShockwaveFlash");}
catch(e3){}}if(sa!=3D=3Dnull){ta=3Dnew =
deconcept.PlayerVersion(sa.GetVariable("$version").split(" =
")[1].split(","));}}
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;}
if(this.major>fv.major){return true;}
if(this.minor<fv.minor){return false;}
if(this.minor>fv.minor){return true;}
if(this.rev<fv.rev){return false;}return =
true;};deconcept.util=3D{getRequestParameter:function(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));}}}
return"";}};deconcept.SWFObjectUtil.cleanupSWFs=3Dfunction(){if(window.op=
era||!document.all){return;}
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;}
if(Array.prototype.push=3D=3D=3Dnull){Array.prototype.push=3Dfunction(za)=
{this[this.length]=3Dza;return this.length;};}
var getQueryParamValue=3Ddeconcept.util.getRequestParameter;var =
FlashObject=3Ddeconcept.SWFObject;var SWFObject=3Ddeconcept.SWFObject;}
var xmp;if(!xmp){xmp=3D{};}else if(typeof xmp!=3D=3D"object"){throw new =
Error("xmp already exists and is not an object");}
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{};}
Ba=3DBa[Aa[i]];}};xmp.extractErrorMessage=3Dfunction(e){if(e instanceof =
Error){return('Error name: '+e.name+', Error message: '+e.message);}
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).");}
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);}
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]];}
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;}
if(Ra=3D=3D=3D45){if(i!=3D=3D0){return false;}
continue;}
if(Ra=3D=3D=3D46){if(!Pa){return false;}
Qa++;if(Qa>1){return false;}
continue;}
return false;}
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;';}
else{Va+=3Dc;}
break;default:Va+=3Dc;break;}
Wa=3Dc;}
Va=3DVa.replace(/\r/g,'');if(Ua){Va=3DVa.replace(/\n/g,'<br>');Va=3DVa.re=
place(/\t/g,'&nbsp;&nbsp;&nbsp;&nbsp;');}
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+"\".");}
for(var =
i=3D0;i<Xa.length;i++){if(Ya[i]=3D=3D=3Dxmp.UNKNOWN_TYPE||typeof(Xa[i])=3D=
=3D=3DYa[i]){continue;}
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);}
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";}
else{if(fb<10){gb+=3D"0"+fb;}
else{gb+=3Dfb;}}}
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";}
else{if(ib<10){gb+=3D"0"+ib;}
else{gb+=3Dib;}}}
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);}
else{mb+=3D(kb+'.swf');}
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);}
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;}
sb=3Dxmp.getDomParent(sb);}
return =
null;};xmp.insertDomChildBefore=3Dfunction(ub,vb,wb){wb=3D(wb)?wb:null;if=
(xmp.isIEBrowser()&&(wb=3D=3D=3Dnull)){ub.insertBefore(vb);}
else{ub.insertBefore(vb,wb);}};xmp.addComboOption=3Dfunction(xb,yb){if(xm=
p.isIEBrowser()){xb.add(yb);}
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;}
else =
if(typeof(document.styleSheets[0].insertRule)!=3D=3D'undefined'){document=
.styleSheets[0].insertRule(zb+'  '+Ab,0);Bb=3Dtrue;}}
catch(e){}
return Bb;};xmp.getPixelUnits=3Dfunction(Cb){return =
parseInt(Cb,10)+"px";};xmp.DERIVE_CLASS=3Dfunction(Db,Eb){function =
Inheritance(){}
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;}
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';}
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];}
break;}
break;default:break;}}
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);}
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;}
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);}}
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]]);}
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();}
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));}
return true;}
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");}
this._initTag(zc);this._startTimer();}
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;}
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));}
this.getResponse()._setText(Bc);}
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);}
else if(typeof Bc=3D=3D=3D'object'&&Bc!=3D=3Dnull){Cc=3DBc;}
if(Cc!=3D=3Dnull){this.getResponse()._setJsonObject(Cc);}
else{throw new Error('Requested JSON but got wrong data type:'+Bc);}}}
catch(e){this.getResponse()._setError(e);}
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();}
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');}
if(ok){Oc=3Dxmp.net.ContentTypes._calc(Oc);ok=3D(Oc!=3D=3Dxmp.net.Content=
Types.INVALID);}
if(ok){if(!Pc){Pc=3Dnull;}
ok=3D((Pc=3D=3D=3Dnull)||(typeof Pc=3D=3D=3D'object'));}
if(!ok){throw new xmp.util.internals.InvalidArgsError('Invalid =
arguments, please read documentation for =
xmp.net.AjaxRequestManager.prototype.request.');}
var Qc=3Dthis._findConfiguration(Mc);if(!Qc){throw new Error('Could not =
find proper configuration for URL root type: '+Mc);}
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';}
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' & ';}}}
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;}
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);}
else{this._logReponseReport(nd);}}
else{this._logReponseReport(nd);}
nd.getCallback().call(nd.getResponse());}
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;}
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;}}
this._logger.info("Dropping loaded data, could not find transport for: =
"+Ad);}
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;}
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;}
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());}
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;}}
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());}
else{Od+=3D('Response Text: '+this.getText()+'\n');Od+=3D('Response =
JSON: '+((this.getJsonObject()=3D=3D=3Dnull)?'null':'not =
null')+'\n');Od+=3D'SUCCESS';}
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;}
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);=
}
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);}
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);}
else{je=3Dnew Error(he);}
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);}
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();}
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.');}
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,[]);}
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;}
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');}
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;}
se.xhrAddRequestHeader(qe._getHandle(),ve,ue.value);}}
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');}
return;}
var =
Ae=3Dthis._create_cb;this._create_cb=3Dnull;if(Ae=3D=3D=3Dnull){this.logg=
er.critical("Unexpected: creation callback is null.");return;}
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;}}
catch(e){this._logger.warn('Error executing FSCommand: =
'+De,e);}};xmp.net.FlashXhrTransportManager.prototype.onInit=3Dfunction(I=
e,Je){try{this.handleInit();}
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));}
catch(e2){this._handleTransportError(Me,e2,true);}}
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);}
catch(e2){this._handleTransportError(Qe,e2,false);}}
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);}
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);}
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);}
else{this._handleError(Ye,false);this.close(Xe);}}
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);}}
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();}
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);}
else{this.handleError("MockTransportError","No mock data found for =
"+this._url);}}
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;}
else{vf=3Dtf;uf=3D"";}
this.getResponse()._setText(uf);if(this.getContentType()=3D=3D=3Dxmp.net.=
ContentTypes.JSON){if(!vf){vf=3Dthis._getManager()._parseJson(uf);}
this.getResponse()._setJsonObject(vf);}
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();}
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+/,'');}
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);}}
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;}
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);}}
this._requestObject.send(null);this._startTimer();}
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);}
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);}}
catch(e){this.getResponse()._setError(e);}
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();}
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;}}
catch(e){continue;}}
xmp.net.XhrTransport._factory=3Dfunction(){throw new =
Error('XMLHttpRequest not =
supported.');};xmp.net.XhrTransport._factory();return null;};
------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.e/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.555.2010

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.555.2010";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_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.e/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.555.2010

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);}
if(ca.indexOf(" ")!=3D=3D-1){throw new xmp.OverlayError("Validating =
group.","Invalid overlay group.  Group cannot contain spaces.",this);}
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);}
if(da.indexOf(" ")!=3D=3D-1){throw new xmp.OverlayError("Validating =
name.","Invalid overlay name.  Name cannot contain spaces.",this);}
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{};}=

catch(e){this._handleError("Constructing =
overlay.",e);}};xmp.Overlay.prototype.open=3Dfunction(fa){try{this.viewpo=
rt=3Dfa;this.refresh();}
catch(e){this._handleError("Opening =
overlay.",e);}};xmp.Overlay.prototype.close=3Dfunction(){try{this.viewpor=
t=3Dnull;this._destoryNativeOverlay();}
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();}}
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());}}
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;}
this.setZOrder();this.getNativeOverlay().style.display=3Dthis.display;}
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;}
this.display=3Dxmp.DISPLAY_NONE;this.getNativeOverlay().style.display=3Dt=
his.display;}
catch(e){this._handleError("Hiding =
overlay.",e);}};xmp.Overlay.prototype.refresh=3Dfunction(){try{if(false=3D=
=3D=3Dthis.viewportExists()){return;}
this._destoryNativeOverlay();if(true=3D=3D=3Dthis.isVisible()){this.show(=
);}
else{this.getNativeOverlay();}}
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;}}
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);}
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);}
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);}
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);}
if(!Ka.style.zIndex||Ka.style.zIndex<=3D0){Ka.style.zIndex=3D1;}
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);}
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();}
this.opened=3Dfalse;this.listener.onDestroyViewport(this.type,this.name);=
}
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};}=

catch(e){this.setError("Retrieving viewport size.",e);}
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);}
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);}
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);}}}
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=
;}
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);}
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);}
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);}
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);}
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();}
catch(e){this.setError("Handling =
open.",e);}};xmp.FlashViewport.prototype.onCreated=3Dfunction(){try{this.=
setCreated();}
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));}
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;}
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();}
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;}
this.display=3Dxmp.DISPLAY_NONE;this.getNativeOverlay().style.display=3Dt=
his.display;this.destoryMediaPlayer();}
catch(e){this._handleError("Hiding media =
overlay.",e);}};xmp.MediaOverlay.prototype.onPropertyChange=3Dfunction(cc=
,dc){if(cc!=3D=3Dxmp.MEDIA_OVERLAY_NODE){return;}
if(false=3D=3D=3Dthis.viewportExists()||false=3D=3D=3Dthis.isVisible()){r=
eturn;}
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();}
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;}
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);}
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);}
else if(Ic=3D=3D=3Dxmp.SLATE_OVERLAY){return new =
xmp.SlateOverlay(Fc,Gc,Hc,Jc);}
else if(Ic=3D=3D=3Dxmp.MEDIA_OVERLAY){return new =
xmp.MediaOverlay(Fc,Gc,Hc,Jc);}
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;}
if(!this.origViewportRect){var =
Zc=3Dthis.viewport.getSize();this.setPlacement(Zc.width,Zc.height);}
this.viewport.moveTo(this.nonVisibleViewportRect.left,this.nonVisibleView=
portRect.top,this.nonVisibleViewportRect.width,this.nonVisibleViewportRec=
t.height,false);this.getNativeOverlay().style.display=3Dthis.display;}
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;}
if(this.origViewportRect){this.viewport.moveTo(this.origViewportRect.left=
,this.origViewportRect.top,this.origViewportRect.width,this.origViewportR=
ect.height,false);}
this.display=3Dxmp.DISPLAY_NONE;this.getNativeOverlay().style.display=3Dt=
his.display;}
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);}
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+"\".");}
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);}
else =
if(this.activeViewport.mime_type!=3D=3Drd){this.activeViewport.reset(sd);=
}
if(false=3D=3D=3Dud.isOpen()){try{ud.open(sd);return true;}
catch(e){ud.close();throw e;}}
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);}
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;}}
catch(e){throw e;}
finally{this.activeViewport=3DAd;}
return true;}
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);}
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];}}
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();}
else if(Kd=3D=3D=3Dxmp.OVERLAY_GROUP_HIDE){Ld.hide();}
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()});}
if(Pd){Qd=3DQd.concat(Pd);}
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);}
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)));}
catch(e){}
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);}
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);}
pe[te.getName()]=3Dnull;}};}();
------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.e/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.555.2010

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;}
for(var =
i=3D0;i<this.transitionTable.length;i++){if(this.transitionTable[i]=3D=3D=
=3Dma){return true;}}
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.");}
if(this.name.indexOf(" ")!=3D=3D-1){throw new =
xmp.MediaPlayerError("Validating media player name.","Invalid media =
player name.  Name cannot contain spaces.");}
this.listeners[0].onInitialized();}
catch(e){this._handleMethodError("Initializing.",e);}};xmp.MediaPlayer.pr=
ototype.fini=3Dfunction(){try{this.close();this.viewManager.close();xmp.N=
ativePlayerRegistry.destoryGroup(this.name);}
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+"\".");}
this.viewManager.setViewportConfig(Xa,Ya);}
catch(e){this._handleMethodError("Setting viewport =
configuration.",e);}};xmp.MediaPlayer.prototype.getViewport=3Dfunction(){=
try{return new xmp.ViewportProxy(this.viewManager);}
catch(e){this._handleMethodError("Retrieving viewport.",e);}
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;}
this._validateNode(Za);if(false=3D=3D=3Dthis._initNativePlayer(Za)){this.=
_handleNativePlayerReady(Za);}}
catch(e){this._handleMethodError("Opening.",e);}};xmp.MediaPlayer.prototy=
pe.close=3Dfunction(){try{this._close();this.viewManager.close();this._se=
tNullPlayer();}
catch(e){this._handleMethodError("Closing.",e);}};xmp.MediaPlayer.prototy=
pe.play=3Dfunction(){try{this.state.play(this);}
catch(e){this._handleMethodError("Playing.",e);}};xmp.MediaPlayer.prototy=
pe.pause=3Dfunction(){try{this.state.pause(this);}
catch(e){this._handleMethodError("Pausing.",e);}};xmp.MediaPlayer.prototy=
pe.stop=3Dfunction(){try{this.state.stop(this);}
catch(e){this._handleMethodError("Stopping.",e);}};xmp.MediaPlayer.protot=
ype.rewind=3Dfunction(){try{this.state.rewind(this);}
catch(e){this._handleMethodError("Rewinding.",e);}};xmp.MediaPlayer.proto=
type.fastForward=3Dfunction(){try{this.state.fastForward(this);}
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);}
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);}
catch(e){this._handleMethodError("Checking information or action =
available.",e);}
return =
false;};xmp.MediaPlayer.prototype.getPosition=3Dfunction(){try{return =
this.state.getPosition(this);}
catch(e){this._handleMethodError("Retrieving position.",e);}
return 0;};xmp.MediaPlayer.prototype.getDuration=3Dfunction(){try{return =
this.state.getDuration(this);}
catch(e){this._handleMethodError("Retrieving duration.",e);}
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);}
catch(e){this._handleMethodError("Setting =
volume.",e);}};xmp.MediaPlayer.prototype.getVolume=3Dfunction(){try{retur=
n this.state.getVolume(this);}
catch(e){this._handleMethodError("Retrieving volume.",e);}
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);}
catch(e){this._handleMethodError("Setting =
mute.",e);}};xmp.MediaPlayer.prototype.getMute=3Dfunction(){try{return =
this.state.getMute(this);}
catch(e){this._handleMethodError("Retrieving mute.",e);}
return =
false;};xmp.MediaPlayer.prototype.setFullscreen=3Dfunction(db){try{xmp.va=
lidateArguments(arguments,[xmp.BOOLEAN_TYPE],"MediaPlayer.setFullscreen")=
;this.state.setFullscreen(this,db);}
catch(e){this._handleMethodError("Setting =
fullscreen.",e);}};xmp.MediaPlayer.prototype.getFullscreen=3Dfunction(){t=
ry{return this.state.getFullscreen(this);}
catch(e){this._handleMethodError("Retrieving fullscreen.",e);}
return =
false;};xmp.MediaPlayer.prototype.getBufferingProgress=3Dfunction(){try{r=
eturn this.state.getBufferingProgress(this);}
catch(e){this._handleMethodError("Retrieving buffering progress.",e);}
return =
null;};xmp.MediaPlayer.prototype.addEventListener=3Dfunction(eb){try{xmp.=
validateArguments(arguments,[xmp.OBJECT_TYPE],"MediaPlayer.addEventListen=
er");this._addListener(eb);}
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+"\".");}
if(gb=3D=3D=3Dxmp.MOCK_MIME_TYPE){this.player=3Dhb;return false;}
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;}
return false;}
return true;}
catch(e){this._setNullPlayer();throw e;}
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;}
this._notifyStateChange(jb,kb);this._notifyTimelineChange(this.state.getP=
osition(this),this.state.getDuration(this));this.state.play(this);return;=
}
else{if(jb=3D=3D=3Dxmp.ENDED){this._notifyTimelineChange(this.state.getPo=
sition(this),this.state.getDuration(this));this.state.ended(this);}
else if(jb=3D=3D=3Dxmp.CONNECTING){this.bandwidthRecorder.start();}}
this._notifyStateChange(jb,kb);}
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;}
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();}
else if(rb=3D=3D=3Dxmp.PAUSE){this.pause();}
else if(rb=3D=3D=3Dxmp.STOP){this.stop();}
else if(rb=3D=3D=3Dxmp.REWIND){this.rewind();}
else if(rb=3D=3D=3Dxmp.FAST_FORWARD){this.fastForward();}
else if(rb=3D=3D=3Dxmp.SEEKABLE){this.seek(parseInt(sb,10));}
else if(rb=3D=3D=3Dxmp.IS_AVAILABLE){tb=3Dthis.isAvailable(sb);}
else if(rb=3D=3D=3Dxmp.GET_POSITION){tb=3Dthis.getPosition();}
else if(rb=3D=3D=3Dxmp.GET_DURATION){tb=3Dthis.getDuration();}
else if(rb=3D=3D=3Dxmp.GET_VOLUME){tb=3Dthis.getVolume();}
else if(rb=3D=3D=3Dxmp.SET_VOLUME){this.setVolume(parseInt(sb,10));}
else if(rb=3D=3D=3Dxmp.GET_MUTE){tb=3Dthis.getMute();}
else if(rb=3D=3D=3Dxmp.SET_MUTE){this.setMute(xmp.TRUE=3D=3D=3Dsb);}
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;}
if(Db=3D=3D=3Dnull){return;}
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);}
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});}
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);}
else{this._error();if(this._urlStrategy.tryFailover(this,this.node,e)){re=
turn;}
this._logAppError(Ib);for(var =
i=3D0;i<this.listeners.length;i++){this.listeners[i].onError(this.node,Ib=
);}}}
catch(e2){}};xmp.MediaPlayer.prototype._logAppError=3Dfunction(Jb){if(Jb.=
getInnerError()instanceof =
xmp.NativePlayerConnectionError){this._logger.critical(Jb.message,Jb);}
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.");}
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.");}
var Mb=3DKb.getURI();if(!Mb||Mb.length=3D=3D=3D0){throw new =
xmp.InvalidPlayableNodeError("Validating playable node URI.","Invalid =
playable node.  Missing URI.");}
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);}
Nb.create({group:this.name,viewport:this.viewManager.getActiveViewport(),=
volume:0,mute:false,node:null,fullscreenEnabled:false,stretchToFit:false}=
);this.player=3DNb;}
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.");}
if(false=3D=3D=3Dxmp.isDefined(Sb.onInitialized)){throw new =
xmp.MediaPlayerError("Validating listener.","Invalid media player event =
listener.  Missing \"onInitialized\" handler.");}
if(false=3D=3D=3Dxmp.isDefined(Sb.onError)){throw new =
xmp.MediaPlayerError("Validating listener.","Invalid media player event =
listener.  Missing \"onError\" handler.");}
if(false=3D=3D=3Dxmp.isDefined(Sb.onStateChange)){throw new =
xmp.MediaPlayerError("Validating listener.","Invalid media player event =
listener.  Missing \"onStateChange\" handler.");}
if(false=3D=3D=3Dxmp.isDefined(Sb.onTimelineChange)){throw new =
xmp.MediaPlayerError("Validating listener.","Invalid media player event =
listener.  Missing \"onTimelineChange\" handler.");}
if(false=3D=3D=3Dxmp.isDefined(Sb.onCreateViewport)){throw new =
xmp.MediaPlayerError("Validating listener.","Invalid media player event =
listener.  Missing \"onCreateViewport\" handler.");}
if(false=3D=3D=3Dxmp.isDefined(Sb.onDestroyViewport)){throw new =
xmp.MediaPlayerError("Validating listener.","Invalid media player event =
listener.  Missing \"onDestroyViewport\" handler.");}
if(false=3D=3D=3Dxmp.isDefined(Sb.onPlugInError)){throw new =
xmp.MediaPlayerError("Invalid media player event listener.  Missing =
\"onPlugInError\" handler.");}
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.");}
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;}
if(jc!=3D=3Dnull){if(jc instanceof =
xmp.PlugInError){this.onPlugInError(jc);}
else{this.onError(ic,jc);xmp.handleFatalError(jc);}
return;}
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;}
this.close();var qc=3Dthis.getNative();var =
rc=3Dxmp.getDomParent(qc);rc.removeChild(qc);}
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.";}
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;}
else if(Hc=3D=3D=3Dxmp.BUFFERING){this.bufferingProgress=3DIc;}
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);}
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;}
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);}
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=
);}}
else{Xc=3DparseInt(Uc,10);}}
else{Wc=3DparseInt(Uc,10);}}
else{Vc=3DparseInt(Uc,10);Vc=3D((true=3D=3D=3DisNaN(Vc))?-1:Vc);}
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);}
if((gd[i].maxVersion!=3D=3D-1)&&(gd[i].version>gd[i].maxVersion)){throw =
new xmp.UnsupportedPlugInVersionError("Validating native player plugin =
version.",dd,ad);}
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);}
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);}
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);}
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);}
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);}
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);}
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;}
try{this.validatePlatform(Hd.getName(),Id.getStreamingMode());}
catch(e){this.handleApplyError(Hd,Id,e,false);return false;}
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;}
this.playerPolicy.getLogger().debug("Applying playing policy =
\""+Jd.type+"\" to playable =
node.");this.setPolicy(Hd.getName(),Ld,Id);return true;}
catch(e2){var =
Md=3Dthis.handleApplyError(Hd,Id,e2,this.canFailover(Jd.type,Id,i,Jd.medi=
a));if(true=3D=3D=3DMd){continue;}
return false;}}
var Nd=3D[];try{Nd=3Dthis.playerPolicy.getSizes();}
catch(e3){}
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;}
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);}
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);}
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());}
return =
be;};xmp.AbstractPlayingPolicy.prototype.getHost=3Dfunction(ce,de){if(-1=3D=
=3D=3Dde.url_mask.indexOf(xmp.HOST_PARAMETER)){return"";}
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+"\".");}
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;}}
return =
false;};xmp.AbstractPlayingPolicy.prototype.validateSize=3Dfunction(qe,re=
){if(false=3D=3D=3Dthis.urlMaskContainsSize(qe,re)){return true;}
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;}
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;}
return true;}}
catch(e){}
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.");}
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();}}
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);}
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);}
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.");}
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);}}
catch(e){this.playerPolicy.getLogger().fatal("\n\n"+e.message,e);if(e.plu=
gIn){ff.onPlugInError(e);}
else if(true=3D=3D=3D(e instanceof =
xmp.UnsupportedPlatformError)){ff.onUnsupportedPlatformError(e);}}
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);}
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;}
this.validate(of,pf);rf=3Dqf.players[pf];if(rf){return rf;}
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;}}
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;}
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);}
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;}
catch(e){jf.warn("\n\n"+e.message,e);if(i=3D=3D=3D0){Df=3De;}
if(i=3D=3D=3D(Cf-1)){throw Df;}}}},destoryGroup:function(Ef){var =
Ff=3Dthis.findGroup(Ef);if(!Ff){return;}
for(var =
Gf=3Dxmp.MapIterator.create(Ff.players);Gf.hasNext();Gf.next()){var =
Hf=3DGf.currentValue();Hf.fini();}
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"";}
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;}
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+"\".");}
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+".");}
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\".");}
this.strategy=3Dxmp.PlayingPolicyFactory.createStrategy(Pg,this);this.get=
Logger().debug("Created player policy \""+Pg+"\" strategy.");}
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.");}
if(Sg.minVersion.length=3D=3D=3D0){throw new =
xmp.PlayingPolicyError("Validating plugin.","Missing plugin =
\""+Sg.displayName+"\" minimum version.");}
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;}
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);}
return =
this.failover;},getSizes:function(){this.init();if(!this.playerSizes){thi=
s.initPlayerSizes();}
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];}}}
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.");}
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.");}
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.");}
this.modes.push(fh);}
return =
this.modes;},getStreamingModes:function(){this.init();if(!this.modes){thr=
ow new xmp.PlayingPolicyError("Retrieving streaming modes.","Missing =
modes.");}
if(this.modes.length=3D=3D=3D0){throw new =
xmp.PlayingPolicyError("Validating streaming modes.","Missing modes.");}
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.");}
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+"\".");}
this.bootstrapMedia.push(kh);}
return =
this.bootstrapMedia;},getBootstrapMedia:function(){this.init();if(!this.b=
ootstrapMedia){throw new xmp.PlayingPolicyError("Retrieving bootstrap =
media.","Missing media.");}
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.");}
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.");}
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);}
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.");}
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.");}
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.");}
if(false=3D=3D=3Dthis.isMimeTypeSupported(zh)){continue;}
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.");}
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.");}
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+".");}
Dh.push(Eh);}
vh[zh]=3DDh;}
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.");}
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.");}
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.");}
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+"\".");}
Lh.push({name:Jh[j],playersGroup:Mh,modes:{}});}
if(xmp.util.internals.BrowserDetect.OS=3D=3D=3DIh.getName()){this.initPla=
tformPlugInOverrides(Ih);}
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.");}
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.");}
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.");}
if(false=3D=3D=3Dxmp.isDefined(this.getMediaType(Uh))){throw new =
xmp.PlayingPolicyError("Validating playback priority group =
media.","Invalid "+Qh.getName()+" media type \""+Uh+"\".");}
Th.push(Uh);}
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.");}
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.");}
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.");}
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.");}
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.");}
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]+".");}
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.");}
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+".");}
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.");}
var =
li=3Dji.getString(ig,xmp.NO_DEFAULT_VALUE);if(li.length>0){ki.minVersion=3D=
li;}
var =
mi=3Dji.getString(jg,xmp.NO_DEFAULT_VALUE);if(mi.length>0){ki.maxVersion=3D=
mi;}
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;}
var ti=3Dsi.length;for(var =
i=3D0;i<ti;i++){if(ri=3D=3D=3Dsi[i].name){return si[i];}}
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;}}
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;}}
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);}
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);}
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()});}
if(cj){dj=3Ddj.concat(cj);}
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);}
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);}
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));}
catch(e){this.handleError(hk,xmp.IS_AVAILABLE,e);}
return =
false;};xmp.DefaultPlaybackMode.prototype.getPosition=3Dfunction(jk){try{=
return parseInt(this.getPlayer(jk).getPosition(),10);}
catch(e){this.handleError(jk,xmp.GET_POSITION,e);}
return =
0;};xmp.DefaultPlaybackMode.prototype.getDuration=3Dfunction(kk){try{retu=
rn parseInt(this.getPlayer(kk).getDuration(),10);}
catch(e){this.handleError(kk,xmp.GET_DURATION,e);}
return =
0;};xmp.DefaultPlaybackMode.prototype.getVolume=3Dfunction(lk){try{return=
 this.getPlayer(lk).getVolume();}
catch(e){this.handleError(lk,xmp.GET_VOLUME,e);}
return =
0;};xmp.DefaultPlaybackMode.prototype.setVolume=3Dfunction(mk,nk){try{thi=
s.getPlayer(mk).setVolume(nk);}
catch(e){this.handleError(mk,xmp.SET_VOLUME,e);}};xmp.DefaultPlaybackMode=
.prototype.getMute=3Dfunction(ok){try{return =
this.getPlayer(ok).getMute();}
catch(e){this.handleError(ok,xmp.GET_MUTE,e);}
return =
false;};xmp.DefaultPlaybackMode.prototype.setMute=3Dfunction(pk,qk){try{t=
his.getPlayer(pk).setMute(qk);}
catch(e){this.handleError(pk,xmp.SET_MUTE,e);}};xmp.DefaultPlaybackMode.p=
rototype.getFullscreen=3Dfunction(rk){try{return =
this.getPlayer(rk).getFullscreen();}
catch(e){this.handleError(rk,xmp.GET_FULLSCREEN,e);}
return =
false;};xmp.DefaultPlaybackMode.prototype.setFullscreen=3Dfunction(sk,tk)=
{try{this.getPlayer(sk).setFullscreen(tk);}
catch(e){this.handleError(sk,xmp.SET_FULLSCREEN,e);}};xmp.DefaultPlayback=
Mode.prototype.getBufferingProgress=3Dfunction(uk){try{return =
this.getPlayer(uk).getBufferingProgress();}
catch(e){this.handleError(uk,xmp.GET_BUFFERING_PROGRESS,e);}
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);}
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();}
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();}
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();}
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();}
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);}
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();}
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();}
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;}
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();}
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);}
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();}
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;}
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;}
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);}
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;}}
Cl.call(Al,Bl);};xmp.ContextualUrlStrategy.prototype._setFailoverStrategy=
=3Dfunction(Dl,El){try{if(El instanceof xmp.PlugInError){return;}
var Fl=3Dthis._getStrategyName(Dl);this._logger.critical('Failing over =
for strategy: =
'+Fl,El);this._mapStrategyNameToStrategyObject[Fl]=3Dthis._defaultStrateg=
y;}
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.');}
this._loadMimeTypeToUrlStrategyMap();var =
Jl=3Dthis._mapMimeTypeToUrlStrategy[Il];if(!xmp.isNonEmptyString(Jl)){Jl=3D=
'Simple';this._mapMimeTypeToUrlStrategy[Il]=3DJl;}
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;}
if(this._logger.isInfoEnabled()){this._logger.info('For mime-type: =
'+Kl.getMimeType()+', requested strategy: '+Ll+', actual strategy: =
'+Ml.getName());}
return =
Ml;};xmp.ContextualUrlStrategy.prototype._createStrategy=3Dfunction(Nl){i=
f(Nl=3D=3D=3D'Simple'){return this._defaultStrategy;}
if(Nl=3D=3D=3D'Octoshape'){return new xmp.OctoshapeUrlStrategy();}
if(Nl=3D=3D=3D'OctoshapeConditional'){if(xmp.InternalUserDetection.getIns=
tance().isInternal()&&xmp.OctoshapeUrlStrategy.canUse()){return new =
xmp.OctoshapeUrlStrategy();}
else{return this._defaultStrategy;}}
throw new Error('Unrecogonized URL strategy name: =
'+Nl);};xmp.ContextualUrlStrategy.prototype._loadMimeTypeToUrlStrategyMap=
=3Dfunction(){if(this._mapMimeTypeToUrlStrategy!=3D=3Dnull){return;}
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();}
return =
xmp.InternalUserDetection._instance;};xmp.InternalUserDetection.prototype=
.isInternal=3Dfunction(){if(!this._isInited){throw new =
Error('InternalUserDetection not initialized.');}
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;}
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;}
else{this._logger.info('Primary check returned true, and secondary check =
turned OFF, IS an internal user.');this._finish(Sl,true);return;}}
else{this._logger.info('Primary check returned: =
'+this._primaryCheckResult+', NOT an internal =
user.');this._finish(Sl,false);return;}}
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;}
if(cc=3D=3D=3D'***'){return 1;}
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];}}}
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();}
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();}
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;}
return xmp.OctoshapeUrlStrategy._canUseInternal();}
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;}
try{var lm=3Dnew =
xmp.util.Callback('OctoshapeUrlStrategy',this._handleTimer,this);lm.setMe=
tadata('relayCb',km);lm.setMetadata('node',jm);this._doTimer(lm);}
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);}
if(this._logger.isDebugEnabled()){this._logger.debug('Node: =
'+nm.getBestId()+', timer duration: '+om+', tries: '+pm+', status: =
'+qm);}
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);}
else{try{this._doTimer(wm);}
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;}
if(this._checkOctoPlugin(Am=3D=3D=3D(this._OCTO_TRY_LIMIT-1))){return =
this._octoPlugin.getStatus(true);}
else{return =
this._OCTO_STATE_PLUGIN_INITIALIZING;}};xmp.OctoshapeUrlStrategy.prototyp=
e._checkOctoPlugin=3Dfunction(Cm){if(this._octoPlugin){return true;}
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');}
else{return false;}}
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');}
catch(ex){this._logger.info('Error creating Octoshape =
ActiveXObject',ex);this._initializingOctoPlugin=3Dnull;}}
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];}
if(!Em){throw new =
xmp.PlugInNotFoundError(this._VALIDATE_OCTO,this._getPluginInfo());}
if(!Em.enabledPlugin){throw new =
xmp.PlugInDisabledError(this._VALIDATE_OCTO,this._getPluginInfo(),this._O=
CTO_MIME_TYPE);}
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');}
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;}
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_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.e/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.555.2010

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;}
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;}
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;}
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);}
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;}
this.object=3Dqa.getDataObject();this.validateObject();this.object.open(t=
his.getGroup(),this,this.getNative(),this.node);this.node=3Dnull;}
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.");}
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.");}
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_TRANSPARENCY=3D"wmode";=
xmp.ALLOW_FULLSCREEN_ACCESS=3D"allowFullScreen";xmp.ALWAYS_ACCESS=3D"alwa=
ys";xmp.QUALITY=3D"quality";xmp.QUALITY_HIGH=3D"high";xmp.WINDOW_MODE=3D"=
wmode";xmp.TRANSPARENT_WINDOW_MODE=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_EXEC=
UTE_COMMAND_METHOD=3D"onExecuteCommand";xmp.FLASH_PLAYER_TRIGGER_METHOD=3D=
"onTrigger";xmp.SCRIPT_ELEMENT_TAG=3D"script";xmp.FLASH_ERROR_CALLBACK=3D=
"errorCallback";xmp.FLASH_INITIALIZATION_CALLBACK=3D"initializationCallba=
ck";xmp.FLASH_STATE_CHANGE_CALLBACK=3D"stateChangeCallback";xmp.FLASH_STA=
TE_EXECUTE_COMMAND_CALLBACK=3D"executeCommandCallback";xmp.FLASH_TRIGGER_=
CALLBACK=3D"triggerCallback";xmp.EXECUTE_COMMAND_RESULT=3D"executeCommand=
Result";xmp.FLASH_NATIVE_PLAYER_COMPONENT=3D"native_player_component";xmp=
.FLASH_CONNECTION_ERROR=3D"ConnectionError";xmp.FLASH_PLAYER_SWF_BASE_NAM=
E=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.";}
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));}
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);}
for(var i=3DIa;(i>=3D3&&i>=3DHa);i--){try{return =
this.getActiveXVersion(new =
ActiveXObject(xmp.FLASH_ACTIVEX_BASE_PROGID+i));}
catch(tempE){}}}
throw new xmp.PlugInNotFoundError("Validating native player =
plugin.",Ga);}
else{var =
Ja=3Dnavigator.mimeTypes[xmp.FLASH_PLUGIN_MIME_TYPE];if(!Ja){throw new =
xmp.PlugInNotFoundError("Validating native player plugin.",Ga);}
if(!Ja.enabledPlugin){throw new xmp.PlugInDisabledError("Validating =
native player plugin.",Ga,xmp.FLASH_PLUGIN_MIME_TYPE);}
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);}
var La=3DJa.enabledPlugin.description;var Ma=3DLa.split(" ");var =
Na=3DMa[2].split(".");var Oa=3DNa[0];var Pa=3DNa[1];var =
Qa=3DMa[3];if(Qa=3D=3D=3D""){Qa=3DMa[4];}
if(Qa[0]=3D=3D=3D"d"){Qa=3DQa.substring(1);}else =
if(Qa[0]=3D=3D=3D"r"){Qa=3DQa.substring(1);if(Qa.indexOf("d")>0){Qa=3DQa.=
substring(0,Qa.indexOf("d"));}}
var Ra=3DOa+"."+Pa+"."+Qa;return Ra;}
return"";};xmp.FlashPlayer.prototype.create=3Dfunction(Sa){if(true=3D=3D=3D=
this.attach(Sa)){return;}
Sa.id=3Dxmp.FLASH+Sa.group;xmp.FlashPlayer.base.create.call(this,Sa);var =
Ta=3DSa.viewport.getNative();var Ua=3Dnew =
SWFObject(xmp.makeSWFPath(xmp.FLASH_PLAYER_SWF_BASE_NAME,true),Sa.id,Ta.s=
tyle.width,Ta.style.height,xmp.FLASH_VERSION,xmp.BLACK_BACKGROUND_COLOR);=
Ua.addParam(xmp.ALLOW_SCRIPT_ACCESS,xmp.ALWAYS_ACCESS);Ua.addParam(xmp.QU=
ALITY,xmp.QUALITY_HIGH);Ua.addParam(xmp.ALLOW_TRANSPARENCY,"transparent")=
;Ua.addParam(xmp.ALLOW_FULLSCREEN_ACCESS,xmp.TRUE);Ua.addVariable(xmp.FLA=
SH_BUFFER_TIME,this.getConfigProperty(xmp.FLASH_BUFFER_TIME_CONFIG));Ua.a=
ddVariable(xmp.FLASH_STREAMING_VIDEO_ADAPTER,this.getConfigProperty(xmp.F=
LASH_STREAMING_VIDEO_ADAPTER_CONFIG));Ua.addVariable(xmp.FLASH_FULLSCREEN=
_ENABLED,((true=3D=3D=3Dthis.isFullscreenEnabled())?xmp.TRUE:xmp.FALSE));=
Ua.addVariable(xmp.FLASH_INITIALIZATION_CALLBACK,this.getCallbackMethod(x=
mp.FLASH_PLAYER_INITIALIZATION_METHOD));Ua.addVariable(xmp.FLASH_STATE_CH=
ANGE_CALLBACK,this.getCallbackMethod(xmp.FLASH_PLAYER_STATE_CHANGE_METHOD=
));Ua.addVariable(xmp.FLASH_TRIGGER_CALLBACK,this.getCallbackMethod(xmp.F=
LASH_PLAYER_TRIGGER_METHOD));Ua.addVariable(xmp.FLASH_STATE_EXECUTE_COMMA=
ND_CALLBACK,this.getCallbackMethod(xmp.FLASH_PLAYER_EXECUTE_COMMAND_METHO=
D));Ua.addVariable(xmp.FLASH_ERROR_CALLBACK,this.getCallbackMethod(xmp.FL=
ASH_PLAYER_ERROR_METHOD));Ua.addVariable(xmp.VOLUME,Sa.volume);Ua.addVari=
able(xmp.MUTE,((true=3D=3D=3DSa.mute)?xmp.TRUE:xmp.FALSE));Ua.write(Ta.id=
);};xmp.FlashPlayer.prototype.attach=3Dfunction(Va){Va.id=3DVa.viewport.g=
etName();xmp.FlashPlayer.base.attach.call(this,Va);if(Va.viewport.getType=
()!=3D=3Dxmp.DHTML_VIEWPORT&&Va.viewport.getType()!=3D=3Dxmp.FLASH_VIEWPO=
RT){throw new xmp.InvalidNativePlayerViewportError("Creating native =
player.","Invalid native player viewport \""+Va.viewport.getType()+"\".  =
Supported viewports:  DHTML, Flash",this);}
if(Va.viewport.getType()!=3D=3Dxmp.FLASH_VIEWPORT){return false;}
var =
Wa=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:Va.volume},{name:xmp.MUTE,value:((true=3D=3D=3DVa.mu=
te)?xmp.TRUE:xmp.FALSE)}];var Xa=3DWa.length;for(var i=3D0;i<Xa;i++){var =
Ya=3DWa[i];this.getNative().SetVariable(Ya.name,Ya.value);}
this.setCreated();return =
true;};xmp.FlashPlayer.prototype.translateState=3Dfunction(Za){return =
Za;};xmp.FlashPlayer.prototype.getActiveXVersion=3Dfunction($a){var =
ab=3D$a.GetVariable(xmp.FLASH_VERSION_VARIABLE);var bb=3Dab.split(" =
")[1];return =
bb.replace(/,/g,xmp.VERSION_DELIMITER);};xmp.FlashPlayer.prototype.onInit=
=3Dfunction(){try{this.getNative().style.zIndex=3Dxmp.NATIVE_PLAYER_Z_IND=
EX;this.setCreated();}
catch(e){this.setError("Initializing.",e);}};xmp.FlashPlayer.prototype.on=
StateChange=3Dfunction(cb,db){try{var =
eb=3Dthis.translateState(cb);if(eb.length>0){this.setState(eb,db);}}
catch(e){this.setError("Handling state =
change.",e);}};xmp.FlashPlayer.prototype.onTrigger=3Dfunction(fb,gb){try{=
this.setTrigger(fb,gb);}
catch(e){this.setError("Handling =
trigger.",e);}};xmp.FlashPlayer.prototype.onExecuteCommand=3Dfunction(hb,=
ib){var =
jb=3Dnull;try{jb=3Dxmp.FlashPlayer.base.executeCommand.call(this,hb,ib);}=

catch(e){this.setError("Execute command.",e);}
return =
jb;};xmp.FlashPlayer.prototype.onError=3Dfunction(kb,lb,mb){try{var =
nb=3D[{label:"Flash Error Type",text:kb}];if(mb){nb.push({label:"Flash =
Error Code",text:mb});}
var ob=3D((kb=3D=3D=3Dxmp.FLASH_CONNECTION_ERROR)?new =
xmp.NativePlayerConnectionError("Connecting to media.",lb,this,nb):new =
xmp.NativePlayerError("Handling =
error.",lb,this,nb));this.setError(null,ob);}
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(pb,qb){xmp.ImagePlayer.ctor.call=
(this,xmp.IMAGE_PLAYER,pb,qb);};xmp.DERIVE_CLASS(xmp.AbstractNativePlayer=
,xmp.ImagePlayer);xmp.ImagePlayer.prototype.open=3Dfunction(rb){this.url=3D=
rb.getURI();this.timeLimit=3Drb.getTimeLimitInSeconds();this.position=3D0=
;if(true=3D=3D=3Dthis.isDHTML()){this.setState(xmp.CONNECTING);this.getNa=
tive().src=3Dthis.url;}
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();}
xmp.ImagePlayer.base.close.call(this);};xmp.ImagePlayer.prototype.play=3D=
function(){if(-1!=3D=3Dthis.timeLimit){this.startMonitor();}
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();}
xmp.ImagePlayer.base.ended.call(this);this.close();};xmp.ImagePlayer.prot=
otype.isAvailable=3Dfunction(sb){return(sb=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(tb){if(true=3D=3D=3Dthis.attach(tb)){return;}
tb.id=3Dxmp.IMAGE_PLAYER+tb.group;xmp.ImagePlayer.base.create.call(this,t=
b);this.volume=3Dtb.volume;this.mute=3Dtb.mute;var =
ub=3Dtb.viewport.getNative();ub.innerHTML=3D"<img =
style=3D'background-color:  #000000' id=3D'"+tb.id+"' =
width=3D'"+(ub.style.width)+"' height=3D'"+(ub.style.height)+"' =
src=3D'"+tb.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(vb,wb){this.position++;};xmp.ImagePlayer.prototype.attach=3Df=
unction(xb){xb.id=3Dxb.viewport.getName();this.volume=3Dxb.volume;this.mu=
te=3Dxb.mute;xmp.ImagePlayer.base.attach.call(this,xb);if(xb.viewport.get=
Type()!=3D=3Dxmp.DHTML_VIEWPORT&&xb.viewport.getType()!=3D=3Dxmp.FLASH_VI=
EWPORT){throw new xmp.InvalidNativePlayerViewportError("Creating native =
player.","Invalid native player viewport \""+xb.viewport.getType()+"\".  =
Supported viewports:  DHTML,  Flash",this);}
if(xb.viewport.getType()!=3D=3Dxmp.FLASH_VIEWPORT){return false;}
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,xb.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(yb){return =
this.getCallbackMethod(yb).replace(/\'/g,"\"");};xmp.ImagePlayer.prototyp=
e.translateState=3Dfunction(zb){return =
zb;};xmp.ImagePlayer.prototype.onInit=3Dfunction(){try{this.setCreated();=
}
catch(e){this.setError("Initializing.",e);}};xmp.ImagePlayer.prototype.on=
StateChange=3Dfunction(Ab,Bb){try{var =
Cb=3Dthis.translateState(Ab);if(Cb.length>0){this.setState(Cb,Bb);}}
catch(e){this.setError("Handling state =
change.",e);}};xmp.ImagePlayer.prototype.onError=3Dfunction(Db,Eb,Fb){try=
{var Gb=3Dnull;if(true=3D=3D=3Dthis.isDHTML()){Gb=3Dnew =
xmp.NativePlayerConnectionError("Connecting to media.","Unable to =
connect to \""+this.getNative().src+"\"",this);}
else{var Hb=3D[{label:"Flash Error =
Type",text:Db}];if(Fb){Hb.push({label:"Flash Error Code",text:Fb});}
Gb=3D((Db=3D=3D=3Dxmp.FLASH_CONNECTION_ERROR)?new =
xmp.NativePlayerConnectionError("Connecting to media.",Eb,this,Hb):new =
xmp.NativePlayerError("Handling error.",Eb,this,Hb));}
this.setError(null,Gb);}
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(Ib,Jb){xmp.MockNativePla=
yer.ctor.call(this,xmp.MOCK_NATIVE,Ib,Jb);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(Kb){this.node=3DKb;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());}
this.node=3Dnull;xmp.MockNativePlayer.base.close.call(this);};xmp.MockNat=
ivePlayer.prototype.fini=3Dfunction(){this.close();};xmp.MockNativePlayer=
.prototype.onSetState=3Dfunction(Lb,Mb){xmp.MockNativePlayer.base.onSetSt=
ate.call(this,Lb,Mb);var =
Nb=3DLb.getMetadata(xmp.CONTEXT,{});if(Nb.type=3D=3D=3Dxmp.PLAY){this.sim=
ulatePlay();}};xmp.MockNativePlayer.prototype.play=3Dfunction(){this.setS=
tate(xmp.PLAY);};xmp.MockNativePlayer.prototype.simulatePlay=3Dfunction()=
{var Ob=3Dthis.node;this.logger.info("play(): =
"+Ob.getURI());this.logger.info("Node type: =
"+Ob.getNodeTypeName());this.playInstance++;var =
Pb=3Dthis.createTimer({object:this,id:"position =
change",interval:this.realTimePositionChangeInterval,handler:this.onSimul=
atedPositionChange,context:this.playInstance});Pb.start();this.startMonit=
or();};xmp.MockNativePlayer.prototype.onSimulatedPositionChange=3Dfunctio=
n(Qb,Rb){var Sb=3Dthis.node;var =
Tb=3DQb.getMetadata(xmp.CONTEXT,-1);if(!Sb||Tb!=3D=3Dthis.playInstance){R=
b.stop();}
else =
if(this.position>=3Dthis.duration){Rb.stop();this.stopMonitor();this.setS=
tate(xmp.ENDED);}
else{this.position+=3Dthis.positionChangeInterval;}};xmp.MockNativePlayer=
.prototype._getDuration=3Dfunction(){var Ub=3D-1;var =
Vb=3Dthis.node;if(Vb.isContentType()||Vb.isAdType()){var =
Wb=3DVb.getPlayableData();Ub=3DWb.getTotalRunTime();}
if(Ub<=3D0){Ub=3D3;}
return =
Ub;};xmp.MockNativePlayer.prototype.pause=3Dfunction(){if(this.node!=3D=3D=
null){this.logger.info("pause(): "+this.node.getURI());}
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());}
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());}
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());}
xmp.MockNativePlayer.base.fastForward.call(this);this.setState(xmp.FAST_F=
ORWARD);};xmp.MockNativePlayer.prototype.seek=3Dfunction(Xb){if(this.node=
!=3D=3Dnull){this.logger.info("seek(): "+this.node.getURI()+" to "+Xb);}
xmp.MockNativePlayer.base.seek.call(this);this.setPosition(Xb);this.setSt=
ate(xmp.SEEKABLE);};xmp.MockNativePlayer.prototype.ended=3Dfunction(){if(=
this.node!=3D=3Dnull){this.logger.info("ended(): "+this.node.getURI());}
xmp.MockNativePlayer.base.ended.call(this);};xmp.MockNativePlayer.prototy=
pe.isAvailable=3Dfunction(Yb){return =
true;};xmp.MockNativePlayer.prototype.getPosition=3Dfunction(){return =
this.position;};xmp.MockNativePlayer.prototype.getDuration=3Dfunction(){r=
eturn =
this.duration;};xmp.MockNativePlayer.prototype.validate=3Dfunction(Zb){};=
xmp.MockNativePlayer.prototype.onValidatePlugIn=3Dfunction($b){};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(ac,bc){return =
this.listener.onNativePlayerExecuteCommand(ac,bc);};xmp.MockNativePlayer.=
prototype.create=3Dfunction(cc){this.data=3Dcc;};xmp.MockNativePlayer.pro=
totype.attach=3Dfunction(dc){this.data=3Ddc;};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(ec,fc){this.state=3Dnew =
xmp.QuicktimeStateMachine(this);xmp.QuickTimePlayer.ctor.call(this,xmp.QU=
ICKTIME,ec,fc);};xmp.DERIVE_CLASS(xmp.AbstractNativePlayer,xmp.QuickTimeP=
layer);xmp.QuickTimePlayer.prototype.open=3Dfunction(gc){this.state.open(=
gc);};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(hc){xmp.QuickTimePlayer.base.seek.call(this,hc);this.state.seek(=
hc);};xmp.QuickTimePlayer.prototype.ended=3Dfunction(){xmp.QuickTimePlaye=
r.base.ended.call(this);this.state.ended();};xmp.QuickTimePlayer.prototyp=
e.isAvailable=3Dfunction(ic){return =
this.state.isAvailable(ic);};xmp.QuickTimePlayer.prototype.onValidatePlug=
In=3Dfunction(jc){this.validateQuicktime();if(jc.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(kc){this.state.setVolume(kc);};xmp.QuickTimePlayer.prototype.getMute=3D=
function(){return =
this.state.getMute();};xmp.QuickTimePlayer.prototype.setMute=3Dfunction(l=
c){this.state.setMute(lc);};xmp.QuickTimePlayer.prototype.create=3Dfuncti=
on(mc){mc.id=3Dxmp.QUICKTIME+mc.group;xmp.QuickTimePlayer.base.create.cal=
l(this,mc);if(mc.viewport.getType()!=3D=3Dxmp.DHTML_VIEWPORT){throw new =
xmp.InvalidNativePlayerViewportError("Creating native player.","Invalid =
native player viewport \""+mc.viewport.getType()+"\".  Supported =
viewports:  DHTML",this);}
var =
nc=3Dmc.viewport.getNative();if(true=3D=3D=3Dxmp.isIEBrowser()){nc.innerH=
TML=3D"<object id=3D'"+mc.id+"' width=3D'"+nc.style.width+"' =
height=3D'"+nc.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'"+mc.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=3Dmc.stretchToFit)?"TOFIT":"ASPECT")+"' =
/>"+"<param name=3D'loop' value=3D'false' />"+"<param name=3D'kioskmode' =
value=3D'true' /></object>";}
else{nc.innerHTML=3D"<embed type=3D'video/quicktime' name=3D'"+mc.id+"' =
width=3D'"+nc.style.width+"' height=3D'"+nc.style.height+"' =
src=3D'"+mc.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=3Dmc.stretchToFit)?"TOFIT":"ASPECT")+"' =
loop=3D'false' kioskmode=3D'true'></embed>";}
this.state.create(mc);this.setCreated();};xmp.QuickTimePlayer.prototype.v=
alidateQuicktime=3Dfunction(){var =
oc=3Dthis.getPlugInInfo(xmp.QUICKTIME);var =
pc=3D"0.0.0.0";if(true=3D=3D=3Dxmp.isIEBrowser()){try{var qc=3Dnew =
ActiveXObject(xmp.QUICKTIME_VERSION_CHECK_PROGID);var =
rc=3Dqc.QuickTimeVersion.toString(16);pc=3Drc.substr(0,1)+"."+rc.substr(1=
,1)+"."+rc.substr(2,1)+"."+rc.substr(3);}
catch(e){throw new xmp.PlugInNotFoundError("Validating native player =
plugin.",oc);}
this.validatePlugInVersion(xmp.QUICKTIME,pc);}
else{var sc=3Dnavigator.mimeTypes[xmp.QUICKTIME_MIME_TYPE];if(!sc){throw =
new xmp.PlugInNotFoundError("Validating native player plugin.",oc);}
if(!sc.enabledPlugin){throw new xmp.PlugInDisabledError("Validating =
native player plugin.",oc,xmp.QUICKTIME_MIME_TYPE);}
var =
tc=3Dsc.enabledPlugin.name;if(tc.indexOf(xmp.QUICKTIME)=3D=3D=3D-1){throw=
 new xmp.PlugInDisabledError("Validating native player =
plugin.",oc,xmp.QUICKTIME_MIME_TYPE);}
pc=3Dtc.split(" =
")[2];this.validatePlugInVersion(xmp.QUICKTIME,pc);}};xmp.QuickTimePlayer=
.prototype.validateFlip4Mac=3Dfunction(){var uc;var =
vc=3Dthis.getPlugInInfo(xmp.FLIP4MAC);var =
wc=3Dnavigator.plugins.length;for(var i=3D0;i<wc;i++){var =
xc=3Dnavigator.plugins[i];uc=3Dxc.name;var =
yc=3Duc.length;if(uc.indexOf(xmp.FLIP4MAC)!=3D=3D-1){var zc=3Duc.split(" =
")[4];this.validatePlugInVersion(xmp.FLIP4MAC,zc);return;}}
throw new xmp.PlugInNotFoundError("Validating native player =
plugin.",vc);};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(Ac){this.player=3DAc;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(Bc){if(false=3D=3D=3Dthis.checkForStaticUrl()){this.init=
State();this.url=3DBc.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();}
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(Cc){this.player.=
getNative().SetRate(xmp.QUICKTIME_NORMAL_RATE);this.player.getNative().Se=
tTime(Cc*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(Dc){var Ec=3Dthis.operations[this.state];for(var =
Fc=3Dxmp.MapIterator.create(Ec);Fc.hasNext();Fc.next()){var =
Gc=3DFc.currentValue();if(Gc.state=3D=3D=3DDc){if(false=3D=3D=3Dthis.live=
){return true;}
else{return(true=3D=3D=3DGc.live);}}}
return =
false;};xmp.QuicktimeStateMachine.prototype.getPosition=3Dfunction(){try{=
return =
Math.floor(this.player.getNative().GetTime()/this.player.getNative().GetT=
imeScale());}
catch(e){}
return =
0;};xmp.QuicktimeStateMachine.prototype.getDuration=3Dfunction(){try{var =
Hc=3Dthis.live;var =
Ic=3Dthis.player.getNative().GetDuration();if(true=3D=3D=3Dthis.isInitial=
izing()){Hc=3Dthis.isLive(Ic);}
return((true=3D=3D=3DHc||Ic=3D=3D=3D0)?0:Math.floor(Ic/this.player.getNat=
ive().GetTimeScale()));}
catch(e){}
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(Jc){this.player.getNative().SetVolume(Math.floor(((Jc.toFixed(1)+1)=
*0.01)*xmp.QUICKTIME_VOLUME_MAX));this.volume=3DJc;this.muted=3Dthis.getM=
ute();};xmp.QuicktimeStateMachine.prototype.getMute=3Dfunction(){var =
Kc=3Dthis.player.getNative().GetMute();return(Kc=3D=3D=3Dtrue||Kc=3D=3D=3D=
1);};xmp.QuicktimeStateMachine.prototype.setMute=3Dfunction(Lc){this.play=
er.getNative().SetMute(Lc);this.muted=3DLc;this.volume=3DMath.floor(((thi=
s.player.getNative().GetVolume()+1)/xmp.QUICKTIME_VOLUME_MAX)*100);};xmp.=
QuicktimeStateMachine.prototype.create=3Dfunction(Mc){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);}
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);}
this.url=3DMc.node.getURI();this.staticUrl=3Dthis.url;this.volume=3DMc.vo=
lume;this.muted=3DMc.muted;this.initState();};xmp.QuicktimeStateMachine.p=
rototype.onStateChange=3Dfunction(Nc,Oc){try{if(this.state=3D=3D=3Dxmp.ER=
RORS){return;}
if(true=3D=3D=3Dthis.canGetPluginStatus()){var =
Pc=3Dthis.getRawPluginStatus();if(!Pc){return;}
var =
Qc=3Dthis.translateState(Pc);if(Qc.length>0){if(false=3D=3D=3Dthis.stateH=
andlers[Qc].apply(this,[Pc,Qc])){return;}}}
if(false=3D=3D=3Dthis.isInitializing()){var =
Rc=3Dthis.getPosition();if(this.state!=3D=3Dxmp.ENDED&&Rc>0&&(Rc>=3Dthis.=
getDuration())&&false=3D=3D=3Dthis.live){this.setState(xmp.ENDED,true);}}=
}
catch(e){this.setError(null,e);}};xmp.QuicktimeStateMachine.prototype.onC=
onnectionTimeout=3Dfunction(Sc,Tc){try{this.stopConnectionTimeoutMonitor(=
);if(this.state=3D=3D=3Dxmp.ERRORS){return;}
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;}}
catch(e2){this.setError(null,e2);}};xmp.QuicktimeStateMachine.prototype.t=
ranslateState=3Dfunction(Uc){if(Uc.indexOf(xmp.QUICKTIME_ERROR)=3D=3D=3D-=
1&&false=3D=3D=3Dthis.validateUrl()){return"";}
for(var i=3D0;i<this.transitionTable.length;i++){var =
Vc=3Dthis.transitionTable[i];if(Uc.indexOf(Vc.nativeState)=3D=3D=3D0){if(=
0=3D=3D=3DVc.currentState.length){return Vc.transitionState;}
else{for(var =
j=3D0;j<Vc.currentState.length;j++){if(this.state=3D=3D=3DVc.currentState=
[j]){return Vc.transitionState;}}}}}
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(Wc,X=
c,Yc){this.state=3DWc;if(true=3D=3D=3DXc){var =
Zc=3D((Wc=3D=3D=3Dxmp.QUICKTIME_LOAD_BUFFERING||Wc=3D=3D=3Dxmp.QUICKTIME_=
WAIT_BUFFERING||Wc=3D=3D=3Dxmp.QUICKTIME_BUFFERING_COMPLETE)?xmp.BUFFERIN=
G:Wc);this.player.setState(Zc,Yc);}};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($c,ad){this.opened=3Dfalse;var bd=3D"Unknown =
error.";if(true=3D=3D=3Dthis.isInitializing()){bd=3D"Error connecting to =
\""+this.url+"\".";}
this.setError(null,this.createConnectionError($c,"Connecting to =
media.",bd));return =
false;};xmp.QuicktimeStateMachine.prototype.onConnected=3Dfunction(cd,dd)=
{this.player.startMonitor();this.setState(xmp.CONNECTED,true);return =
true;};xmp.QuicktimeStateMachine.prototype.onConnecting=3Dfunction(ed,fd)=
{this.player.startMonitor();this.setState(xmp.CONNECTING,true);return =
true;};xmp.QuicktimeStateMachine.prototype.onOpen=3Dfunction(gd,hd){this.=
opened=3Dtrue;this.live=3Dthis.isLive(this.player.getNative().GetDuration=
());this.setVolume(this.volume);if(true=3D=3D=3Dthis.muted){this.setMute(=
true);}
this.setState(xmp.OPEN,true);this.player.setState(xmp.FIRST_FRAME_RENDERE=
D);return =
true;};xmp.QuicktimeStateMachine.prototype.onBuffering=3Dfunction(jd,kd){=
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[kd]=
=3Dthis.operations[this.state];}
var ld=3Dthis.getRawBytesTotal();var =
md=3D((kd=3D=3D=3Dxmp.QUICKTIME_BUFFERING_COMPLETE)?ld:this.getRawBytesLo=
aded());var =
nd=3D((ld<=3D0)?0:Math.floor((md/ld)*100));nd=3D((99=3D=3D=3Dnd)?100:nd);=
if(false=3D=3D=3Dthis.bufferingComplete&&(false=3D=3D=3Dthis.isLive(this.=
getRawDuration())||kd=3D=3D=3Dxmp.QUICKTIME_WAIT_BUFFERING||kd=3D=3D=3Dxm=
p.QUICKTIME_LOAD_BUFFERING||kd=3D=3D=3Dxmp.QUICKTIME_BUFFERING_COMPLETE))=
{this.setState(kd,true,{percent:nd,bytesDownloaded:md,bytesTotal:ld});}
this.bufferingComplete=3D(100=3D=3D=3Dnd);if(kd=3D=3D=3Dxmp.QUICKTIME_LOA=
D_BUFFERING&&true=3D=3D=3Dthis.bufferingComplete){this.onOpen(jd,kd);}
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(o=
d){return(xmp.QUICKTIME_INITIAL_LIVE_DURATION=3D=3D=3Dod||0=3D=3D=3Dod||-=
1=3D=3D=3Dod);};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(pd){var =
qd=3D((this.errorCodeDesc[pd])?this.errorCodeDesc[pd]:"(Unknown)");return=
 pd+" =
"+qd;};xmp.QuicktimeStateMachine.prototype.getErrorCodes=3Dfunction(rd){v=
ar sd=3D[];var =
td=3Drd.substring(rd.indexOf(":")+1);if(td.indexOf(xmp.QUICKTIME_ERROR_CO=
DE_DELIMITER)=3D=3D=3D-1){sd.push(this.getErrorCodeDesc(parseInt(td,10)))=
;}
else{while(td.length>0){var =
ud=3Dtd.indexOf(xmp.QUICKTIME_ERROR_CODE_DELIMITER);if(ud=3D=3D=3D-1){sd.=
push(this.getErrorCodeDesc(parseInt(td,10)));break;}
else{sd.push(this.getErrorCodeDesc(parseInt(td.substring(0,ud),10)));td=3D=
td.substring(ud+1);}}}
return =
sd;};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(vd,wd,xd){var =
yd=3D[];if(vd&&vd.indexOf(xmp.QUICKTIME_ERROR)=3D=3D=3D0){yd.push({label:=
"QuickTime Error Codes",text:this.getErrorCodes(vd).join(", ")});}
return new =
xmp.NativePlayerConnectionError(wd,xd,this.player,yd);};xmp.QuicktimeStat=
eMachine.prototype.getRawDuration=3Dfunction(){try{return =
this.player.getNative().GetDuration();}
catch(e){}
return =
0;};xmp.QuicktimeStateMachine.prototype.getRawMaxTimeLoaded=3Dfunction(){=
try{return this.player.getNative().GetMaxTimeLoaded();}
catch(e){}
return =
0;};xmp.QuicktimeStateMachine.prototype.getRawBytesLoaded=3Dfunction(){tr=
y{return this.player.getNative().GetMaxBytesLoaded();}
catch(e){}
return =
0;};xmp.QuicktimeStateMachine.prototype.getRawBytesTotal=3Dfunction(){try=
{return this.player.getNative().GetMovieSize();}
catch(e){}
return =
0;};xmp.QuicktimeStateMachine.prototype.getRawPluginStatus=3Dfunction(){t=
ry{return this.player.getNative().GetPluginStatus();}
catch(e){}
return =
null;};xmp.QuicktimeStateMachine.prototype.checkForStaticUrl=3Dfunction()=
{if(this.staticUrl){this.staticUrl=3Dnull;return true;}
return =
false;};xmp.QuicktimeStateMachine.prototype.setError=3Dfunction(zd,e){thi=
s.setState(xmp.ERRORS,false);this.player.setError(zd,e);};xmp.QuicktimeSt=
ateMachine.prototype.validateUrl=3Dfunction(){try{var =
Ad=3Dthis.player.getNative().GetURL();if(!Ad){return false;}
return(Ad.length>0&&(Ad=3D=3D=3Dthis.url));}
catch(e){}
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(Bd,Cd){xmp.WindowsMediaPlayer.ctor.call(this,xmp.WINDOWS_MEDIA,Bd,Cd=
);this.initCallbackStates();};xmp.DERIVE_CLASS(xmp.AbstractNativePlayer,x=
mp.WindowsMediaPlayer);xmp.WindowsMediaPlayer.prototype.open=3Dfunction(D=
d){this.getNative().URL=3DDd.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(Ed){this.getNative().controls.currentPosition=3DEd;xmp.WindowsMedi=
aPlayer.base.seek.call(this,Ed);this.setState(xmp.SEEKABLE);};xmp.Windows=
MediaPlayer.prototype.isAvailable=3Dfunction(Fd){if(Fd=3D=3D=3Dxmp.FULLSC=
REEN){return(true=3D=3D=3Dthis.isFullscreenEnabled()&&this.getNative().pl=
ayState=3D=3D=3Dxmp.WINDOWS_MEDIA_PLAYING);}
return =
this.getNative().controls.isAvailable(xmp.WindowsMediaUtility.getCommand(=
[Fd]));};xmp.WindowsMediaPlayer.prototype.onValidatePlugIn=3Dfunction(Gd)=
{var Hd=3Dthis.getPlugInInfo(xmp.WINDOWS_MEDIA);try{var Id=3Dnew =
ActiveXObject(xmp.WINDOWS_MEDIA_ACTIVEX_PROGID);this.validatePlugInVersio=
n(xmp.WINDOWS_MEDIA,Id.versionInfo);return;}
catch(e){if((e instanceof xmp.InvalidPlugInVersionError)||(e instanceof =
xmp.UnsupportedPlugInVersionError)){throw e;}}
throw new xmp.PlugInNotFoundError("Validating native player =
plugin.",Hd);};xmp.WindowsMediaPlayer.prototype.getPosition=3Dfunction(){=
return =
this.getNative().controls.currentPosition;};xmp.WindowsMediaPlayer.protot=
ype.getDuration=3Dfunction(){var =
Jd=3Dthis.getNative().currentMedia;if(Jd=3D=3D=3Dnull){return 0;}
return =
Jd.duration;};xmp.WindowsMediaPlayer.prototype.getVolume=3Dfunction(){ret=
urn =
this.getNative().settings.volume;};xmp.WindowsMediaPlayer.prototype.setVo=
lume=3Dfunction(Kd){this.getNative().settings.volume=3DKd;};xmp.WindowsMe=
diaPlayer.prototype.getMute=3Dfunction(){return =
this.getNative().settings.mute;};xmp.WindowsMediaPlayer.prototype.setMute=
=3Dfunction(Ld){this.getNative().settings.mute=3DLd;};xmp.WindowsMediaPla=
yer.prototype.getFullscreen=3Dfunction(){return =
this.getNative().fullScreen;};xmp.WindowsMediaPlayer.prototype.setFullscr=
een=3Dfunction(Md){if(false=3D=3D=3Dthis.isFullscreenEnabled()){throw =
new xmp.NativePlayerUnsupportedError("Invoking \"setFullscreen\" =
method.","Fullscreen disabled.",this);}
this.getNative().fullScreen=3DMd;};xmp.WindowsMediaPlayer.prototype.creat=
e=3Dfunction(Nd){Nd.id=3Dxmp.WINDOWS_MEDIA+Nd.group;xmp.WindowsMediaPlaye=
r.base.create.call(this,Nd);if(Nd.viewport.getType()!=3D=3Dxmp.DHTML_VIEW=
PORT){throw new xmp.InvalidNativePlayerViewportError("Creating native =
player.","Invalid native player viewport \""+Nd.viewport.getType()+"\".  =
Supported viewports:  DHTML",this);}
var Od=3DNd.viewport.getNative();Od.innerHTML=3D"<object =
id=3D'"+Nd.id+"' width=3D'"+Od.style.width+"' =
height=3D'"+Od.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=3DNd.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'"+Nd.volume+"'/>"+"<param =
name=3D'mute' =
value=3D'"+((true=3D=3D=3DNd.mute)?xmp.TRUE:xmp.FALSE)+"'/></object>"+"<s=
cript language =3D 'jscript' for=3D'"+Nd.id+"' =
event=3Dplaystatechange(newstate)>"+this.getCallbackMethod(xmp.WINDOWS_ME=
DIA_PLAYER_PLAY_STATE_CHANGE_METHOD)+"(newstate);</script>"+"<script =
language =3D 'jscript' for=3D'"+Nd.id+"' =
event=3Dopenstatechange(newstate)>"+this.getCallbackMethod(xmp.WINDOWS_ME=
DIA_PLAYER_OPEN_STATE_CHANGE_METHOD)+"(newstate);</script>"+"<script =
language =3D 'jscript' for=3D'"+Nd.id+"' =
event=3Dbuffering(start)>"+this.getCallbackMethod(xmp.WINDOWS_MEDIA_PLAYE=
R_BUFFERING_METHOD)+"(start);</script>"+"<script language =3D 'jscript' =
for=3D'"+Nd.id+"' event=3D'scriptcommand(name, =
data)'>"+this.getCallbackMethod(xmp.WINDOWS_MEDIA_PLAYER_TRIGGER_METHOD)+=
"(name, data);</script>"+"<script language =3D 'jscript' =
for=3D'"+Nd.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(Pd,Qd){=
var Rd=3Dthis.callbackStates[Pd];for(var =
i=3D0;i<Rd.length;i++){if(Qd=3D=3D=3DRd[i].state){return =
Rd[i].player_state;}}
return"";};xmp.WindowsMediaPlayer.prototype.onPlayStateChange=3Dfunction(=
Sd){try{if(Sd=3D=3D=3Dxmp.WINDOWS_MEDIA_STOPPED){this.getLogger().warn("P=
lay state changed to \"Stopped\".");}
var =
Td=3Dthis.translateState(xmp.PLAY_STATE_CHANGE,Sd);if(Td.length>0){this.s=
etState(Td);}}
catch(e){this.setError("Handling play state =
change.",e);}};xmp.WindowsMediaPlayer.prototype.onOpenStateChange=3Dfunct=
ion(Ud){try{var =
Vd=3Dthis.translateState(xmp.OPEN_STATE_CHANGE,Ud);if(Vd.length>0){this.s=
etState(Vd);}}
catch(e){this.setError("Handling open state =
change.",e);}};xmp.WindowsMediaPlayer.prototype.onBuffering=3Dfunction(Wd=
){try{var =
Xd=3D((true=3D=3D=3DWd)?this.getNative().network.bufferingProgress:100);t=
his.setState(xmp.BUFFERING,{percent:Xd,bytesDownloaded:0,bytesTotal:0});i=
f(100=3D=3D=3DXd){this.setState(xmp.FIRST_FRAME_RENDERED);}}
catch(e){this.setError("Handling =
buffering.",e);}};xmp.WindowsMediaPlayer.prototype.onTrigger=3Dfunction(Y=
d,Zd){try{this.setTrigger(Yd,Zd);}
catch(e){this.setError("Handling =
trigger.",e);}};xmp.WindowsMediaPlayer.prototype.onError=3Dfunction(){try=
{var $d=3Dnull;var ae=3Dthis.getNative().Error.item(0).errorCode;var =
be=3Dthis.getNative().Error.item(0).errorDescription;var =
ce=3D[{label:"Windows Media Error =
Code",text:xmp.WindowsMediaUtility.getErrorCodeDesc(ae)}];if(true=3D=3D=3D=
xmp.WindowsMediaUtility.isConnectionError(ae)){$d=3Dnew =
xmp.NativePlayerConnectionError("Connecting to media.",be,this,ce);}
else{$d=3Dnew xmp.NativePlayerError("Handling error.",be,this,ce);}
this.setError(null,$d);}
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(de,ee){xmp.WindowsMediaPlugInPlayer.ctor.call(this,xmp.WIN=
DOWS_MEDIA_PLUGIN,de,ee);this.initCallbackStates();};xmp.DERIVE_CLASS(xmp=
.AbstractNativePlayer,xmp.WindowsMediaPlugInPlayer);xmp.WindowsMediaPlugI=
nPlayer.prototype.open=3Dfunction(fe){this.setState(xmp.CONNECTING);this.=
getNative().url=3Dfe.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(ge){this.getNative().seek(ge);xmp.WindowsMediaPlugI=
nPlayer.base.rewind.call(this);this.setState(xmp.SEEKABLE);};xmp.WindowsM=
ediaPlugInPlayer.prototype.isAvailable=3Dfunction(he){return =
this.getNative().isAvailable(xmp.WindowsMediaUtility.getCommand([he]));};=
xmp.WindowsMediaPlugInPlayer.prototype.onValidatePlugIn=3Dfunction(ie){va=
r je=3Dthis.getPlugInInfo(xmp.TURNER_MEDIA_PLUGIN);var =
ke=3Dnavigator.mimeTypes[xmp.WINDOWS_MEDIA_PLUGIN_MIME_TYPE];if(!ke){thro=
w new xmp.PlugInNotFoundError("Validating native player plugin.",je);}
if(!ke.enabledPlugin){throw new xmp.PlugInDisabledError("Validating =
native player plugin.",je,xmp.WINDOWS_MEDIA_PLUGIN_MIME_TYPE);}
var =
le=3Dke.enabledPlugin.name;if(le.indexOf(xmp.TURNER_MEDIA_PLUGIN_NAME)=3D=
=3D=3D-1){throw new xmp.PlugInDisabledError("Validating native player =
plugin.",je,xmp.WINDOWS_MEDIA_PLUGIN_MIME_TYPE);}
this.validatePlugInVersion(xmp.TURNER_MEDIA_PLUGIN,le.substr(le.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(me){this.getNative().volume=3DMath.floor(me);};xmp.WindowsMe=
diaPlugInPlayer.prototype.getMute=3Dfunction(){return =
this.getNative().mute;};xmp.WindowsMediaPlugInPlayer.prototype.setMute=3D=
function(ne){this.getNative().mute=3Dne;};xmp.WindowsMediaPlugInPlayer.pr=
ototype.getFullscreen=3Dfunction(){return =
this.getNative().fullscreen;};xmp.WindowsMediaPlugInPlayer.prototype.setF=
ullscreen=3Dfunction(oe){this.getNative().fullscreen=3Doe;};xmp.WindowsMe=
diaPlugInPlayer.prototype.create=3Dfunction(pe){pe.id=3Dxmp.WINDOWS_MEDIA=
_PLUGIN+pe.group;xmp.WindowsMediaPlugInPlayer.base.create.call(this,pe);i=
f(pe.viewport.getType()!=3D=3Dxmp.DHTML_VIEWPORT){throw new =
xmp.InvalidNativePlayerViewportError("Creating native player.","Invalid =
native player viewport \""+pe.viewport.getType()+"\".  Supported =
viewports:  DHTML",this);}
var qe=3Dpe.viewport.getNative();qe.innerHTML=3D"<embed id=3D'"+pe.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=3Dpe.stretchToFit)?xmp.TRUE:xmp.FALSE)+"' =
windowlessvideo=3D'true'"+"' volume=3D'"+pe.volume+"' =
mute=3D'"+((true=3D=3D=3Dpe.mute)?xmp.TRUE:xmp.FALSE)+"' =
enablecontextmenu=3D'false' width=3D'"+qe.style.width+"' =
height=3D'"+qe.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(re){var =
se=3Dthis.callbackStates[re];return((se)?se:"");};xmp.WindowsMediaPlugInP=
layer.prototype.onStateChange=3Dfunction(te,ue){try{var =
ve=3Dthis.translateState(te);if(ve.length>0){var =
we=3D((ve=3D=3D=3Dxmp.BUFFERING)?{percent:parseInt(ue,10),bytesDownloaded=
:0,bytesTotal:0}:null);this.setState(ve,we);if(ve=3D=3D=3Dxmp.BUFFERING&&=
100=3D=3D=3Dwe.percent){this.setState(xmp.FIRST_FRAME_RENDERED);}}}
catch(e){this.setError("Handling state =
change.",e);}};xmp.WindowsMediaPlugInPlayer.prototype.onError=3Dfunction(=
xe,ye){try{var ze=3Dnull;var Ae=3DparseInt(ye,10);var =
Be=3D[{label:"Windows Media Error =
Code",text:xmp.WindowsMediaUtility.getErrorCodeDesc(Ae)}];if(true=3D=3D=3D=
xmp.WindowsMediaUtility.isConnectionError(Ae)){ze=3Dnew =
xmp.NativePlayerConnectionError("Connecting to media.",xe,this,Be);}
else{ze=3Dnew xmp.NativePlayerError("Handling error.",xe,this,Be);}
this.setError(null,ze);}
catch(e){this.setError("Handling =
error.",e);}};xmp.WindowsMediaPlugInPlayer.prototype.onTrigger=3Dfunction=
(Ce,De){try{this.setTrigger(Ce,De);}
catch(e){this.setError("Handling =
trigger.",e);}};xmp.WindowsMediaPlugInPlayer.prototype.createCallbackMeth=
od=3Dfunction(Ee){return =
xmp.escapeHtml(this.getCallbackMethod(Ee),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(Fe){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();}
return =
this.commands[Fe];},getErrorCodeDesc:function(Ge){this.initConnectionErro=
rCodes();return((this.connectionErrorCodes[Ge])?this.connectionErrorCodes=
[Ge]:Ge);},isConnectionError:function(He){this.initConnectionErrorCodes()=
;return((this.connectionErrorCodes[He])?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)";}}};}();=0A=

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.e/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.555.2010

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.");}
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);}
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;}
if(na.isContentType()&&na.getNodeType()._getParent()._isContentCompositeT=
ype()){if(ma){if(na._getPatternAddress().isSibling(ka._getPatternAddress(=
),true)){return na;}}
else{if(na.getNodeType()._getParent().getId()=3D=3D=3Dla){var =
oa=3Dna._getPatternAddress().getParent();if(oa.isSibling(ka._getPatternAd=
dress(),true)){return na;}}}}}
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.");}
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.");}}
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();}
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);}}
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.");}
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);}
catch(e){throw =
this._createExtensionGuardException(e,'RuleFactory.createRule');}
this._ruleIdToRuleMap[Da]=3DEa;}
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();}
catch(e){throw =
this._createExtensionGuardException(e,'RuleFactory.getCreatableRuleIds');=
}
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.");}
if(typeof this._ruleIdToFactoryMap[Ja]!=3D=3D"undefined"){throw new =
xmp.playlistapi.internals.PlayListError("Rule "+Ja+" found in more than =
one factory.");}
this._ruleIdToFactoryMap[Ja]=3DHa;}}
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;}
else =
if(Qa>this._LOOK_AHEAD_AND_BEHIND_MAX){Qa=3Dthis._LOOK_AHEAD_AND_BEHIND_M=
AX;}
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));}}
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);}
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;}
else{this._returnNodeToPool(Za);}}
if(Ya!=3D=3Dnull){this._lastNode=3DYa;}
return =
Ya;};xmp.playlistapi.AdPatternPlayList.prototype._safeRunRulesForNode=3Df=
unction($a){try{return this._runRulesForNode($a);}
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.');}
return false;}
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.');}
return true;}
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);}
catch(e){throw this._createExtensionGuardException(e,'Rule.isPlayable =
for rule: '+this._ruleSetRunContext.getCurrentRuleContext().getId());}
if(!fb){if(this._logger.isDebugEnabled()){this._logger.debug('Node: =
'+bb.getBestId()+', Rule ID: '+db.getId()+' FAILED.');}
return false;}
else{if(this._logger.isDebugEnabled()){this._logger.debug('Node: =
'+bb.getBestId()+', Rule ID: '+db.getId()+' SUCCEEDED.');}}}
if(this._logger.isDebugEnabled()){this._logger.debug('Node: =
'+bb.getBestId()+' ALL RULES SUCCEEDED.');}
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;}
gb.push(this._internalPlayListArray[i]);}
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);}}
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);}
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);}}
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.");}
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;}
return(this._currentNode!=3D=3Dnull);};xmp.playlistapi.PlayListIterator.p=
rototype._getNextCore=3Dfunction(){try{this._playList._checkLockedForModi=
fication();this._playList._lockForModification();return =
this._playList._getNextRuleFilteredPlayableNode();}
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'.");}
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'=
);}
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());}
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());}
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++;}}
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=
{};}
if(!hc){hc=3D'default';}
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.");}
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.");}
if(qc.length<1){throw new =
xmp.util.internals.InvalidArgsError("RuleContext at least one applicable =
type.");}
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;}
for(var =
i=3D0;i<this._applicableTypeArray.length;i++){if(this._applicableTypeArra=
y[i]=3D=3D=3Dvc){return true;}}
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(', '));}
var Ac=3Dthis._buildHelper(zc.root,true);zc=3Dnull;return Ac;}
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;}}
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);}
else{var =
Ic=3Dthis._patternMap[Gc._getPatternName()];this._buildChildren(Gc,Ic);}}=

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);}
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));}}
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);}
else{if(typeof =
Zc.nodeTypes=3D=3D=3D"object"){ad=3Dad.concat(Zc.nodeTypes);}}
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;}}
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.");}
if(kd<1){throw new =
xmp.util.internals.InvalidArgsError("CompositePlayableNodeType must have =
a repeat count of 1 or greater.");}
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;}
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.");}
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();}
if(vd.isContentType()){if(td=3D=3D=3D-1){td=3Di;}
else{throwContentChildException();}}}
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'.");}
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());}
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());}
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));}}
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);}
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;}
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];}
while(Zd.indexOf('//')>-1){Zd=3DZd.replace(/\/\//g,'/');}
return =
Yd+Zd;};xmp.playlistapi.internals.ParameterMap.prototype.expandString=3Df=
unction(ae){if(typeof ae!=3D=3D'string'){return ae;}
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;}
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);}}
ae=3Dthis._makeContextObjectSubs(ae);if(be){ae=3Dae.replace(/__PROTECT_DO=
LLAR_ESCAPE__/g,'${');}}
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;}
var le=3Dhe.indexOf('}',ke+1);if(le=3D=3D=3D-1){je=3Dfalse;break;}
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;}
var qe=3Doe.substr(0,pe);var re=3Doe.substr(pe+1);var =
se=3Dthis._contextObjectMap[qe];if(!se){continue;}
var te=3Dnull;try{te=3Dxmp.util.JsonPath.evaluate(se,re);}
catch(e){te=3Dnull;this._logger.warn('Error evaluating JSON Path: =
'+re,e);}
if(te!=3D=3Dnull){var =
ue=3Dhe.length;he=3Dme+te+ne;ie+=3D(he.length-ue);}}
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;}
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;}
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);}
else{throw new xmp.util.internals.InvalidArgsError('Unknown directive =
type: '+Ee.patternDirective.type);}}
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;}
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;}}
else{if(Pe){if(Re.getRepeatIndex()!=3D=3DSe.getRepeatIndex()){return =
false;}}}}
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',';}}=

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();}
if(this._traverseToPatternAddress.getLength()=3D=3D=3D0){this._build_stat=
e=3Dthis._STATE_BUILD;}
this._buildHelper($e,0);this._initializeNodes();}
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);}
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', ';}}
this._logger.debug(gf);}
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;}}
if(this._build_state!=3D=3Dthis._STATE_TRAVERSE_TO_ADDRESS&&hf._isDeferre=
d()){hf=3Dthis._buildDeferredContentComposite(hf);}
var nf=3Dhf._getRepeatCount();var of=3Dhf._getChildCount();for(var =
pf=3Dkf;pf<nf;pf++){if(this._contentMetaResourceIdArray.length=3D=3D=3D0)=
{break;}
this._parentIdCounter++;if(this._build_state=3D=3D=3Dthis._STATE_BUILD){l=
f=3D0;}
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();}}}
else{if(this._build_state=3D=3D=3Dthis._STATE_BUILD){this._buildLeaf(hf,j=
f);}
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'));}
else{var =
vf=3Dthis._contentMetaResourceIdArray.shift();uf._linkData(this._playable=
DataProvider,vf);}}
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;}
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);}
catch(e){var zf=3Dnew =
xmp.baseplayer.ApplicationError(e,'badAdPattern',null,[{label:'cause',tex=
t:e.message}]);this._logger.warn(zf.message,zf);}
if(xf.getPlayableData()=3D=3D=3Dnull){var =
Af=3Dxf.getMetaResource('primary');xf._setData(new =
xmp.util.PlayableData((Af)?Af.getId():''));}
if(!xf.isContentType()&&xf.getNodeType()._getParent()._isContentComposite=
Type()){this._fixContentCompositeSibling(xf,yf);}
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);}
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'}];}
else{Hf=3DGf.getDataObject().pattern;}
var If=3Dnew =
xmp.playlistapi.internals.AdPatternBuilder(this._playList._getParameterMa=
pInternal());If._buildDeferredContentComposite(Ef,Hf);}
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_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.e/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.555.2010

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();}
catch(e){this._handleError("Initializing.",e);}};xmp.ControlStream.protot=
ype.fini=3Dfunction(){if(this.reader){this.reader.close();}
if(this.startDelayTimer){this.startDelayTimer.stop();this.startDelayTimer=
=3Dnull;}
if(this.refreshResourcesTimer){this.refreshResourcesTimer.stop();this.ref=
reshResourcesTimer=3Dnull;}
this._resetReconnect();};xmp.ControlStream.prototype._start=3Dfunction(){=
if(0=3D=3D=3Dthis.startDelay){this._handleStart();}
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.");}
if(false=3D=3D=3Dxmp.isDefined(ca.onControlStreamError)){throw new =
xmp.ControlStreamError("Validating listener.","Invalid control stream =
listener.  Missing \"onControlStreamError\" handler.");}
if(false=3D=3D=3Dxmp.isDefined(ca.onControlStreamTrigger)){throw new =
xmp.ControlStreamError("Validating listener.","Invalid control stream =
listener.  Missing \"onControlStreamTrigger\" handler.");}
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.");}
if(da.label.length=3D=3D=3D0){throw new =
xmp.ControlStreamError("Validating resource.","Missing control stream =
resource label.");}
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.");}
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+"\".");}
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.");}
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.");}
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.");}
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;}
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;}
catch(e){if(Aa){if(false=3D=3D=3DAa.initialized){try{this.listener.onCont=
rolStreamTriggerInit(Aa.name,null);}
catch(e2){}
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;}
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;}
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.");}
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.");}
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();}
catch(e){this._handleError("Starting after =
delay.",e);}};xmp.ControlStream.prototype._onRefreshResources=3Dfunction(=
Oa,Pa){try{this._refreshResources(false);}
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);}
this._logError(Ra);if(!this.listener){xmp.handleFatalError(Ra);}
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);}
catch(e){var Xa=3D"TRIGGER PROCESSING ERROR.";if(Ua){Xa=3D"TRIGGER =
\""+Ua.name+"\" PROCESSING ERROR.";}
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...");}
this._resetReconnect();return;}
this.reconnectRetryCount++;this.logger.warn("Control stream reconnect =
retry =
"+this.reconnectRetryCount+"...");this._connect();this._refreshResources(=
false);}
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;}}
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;}
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());}
this._setResource(xmp.WEB_RESOURCE_CACHING_CONTEXT,mb,jb.getJsonObject(),=
true,kb);}
catch(e){var nb=3D"";if(e instanceof =
xmp.ControlStreamError){nb=3De.message;}
else{nb=3D"Unable to retrieve control stream resource \""+mb.name+"\" =
from url \""+mb.webUrl+"\". \n\n"+e.message;}
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);}
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();}
else if(ub=3D=3D=3Dxmp.ENDED){throw new =
xmp.ControlStreamReaderError("Handling native player state =
change.","Control stream ended.");}}
catch(e){this._handleError("Handling native player state =
change.",e);}};xmp.ControlStreamReader.prototype.onNativePlayerTrigger=3D=
function(wb,xb){try{this.listener.onReaderTrigger(wb,xb);}
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;=
}
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;}
if(Qb=3D=3D=3Dnull){return;}
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);}
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+"\".");}
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;}
return false;}
return true;}
catch(e){this._setNullPlayer();throw e;}
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);}
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);}
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();}
catch(e){this._handleError("Initializing.",e);}};xmp.ImageRetriever.proto=
type.fini=3Dfunction(){if(this.startDelayTimer){this.startDelayTimer.stop=
();this.startDelayTimer=3Dnull;}
if(this.refreshResourcesTimer){this.refreshResourcesTimer.stop();this.ref=
reshResourcesTimer=3Dnull;}};xmp.ImageRetriever.prototype._start=3Dfuncti=
on(){if(0=3D=3D=3Dthis.startDelay){this._handleStart();}
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.");}
if(false=3D=3D=3Dxmp.isDefined(lc.onRetrieveImage)){throw new =
xmp.ImageRetrieverError("Validating listener.","Invalid image retriever =
listener.  Missing \"onRetrieveImage\" handler.");}
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.");}
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.");}
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+").");}
catch(e){var yc=3D"";if(e instanceof =
xmp.ImageRetrieverError){yc=3De.message;}
else{yc=3D"Error retrieving image resource \""+wc.name+"\" from url =
\""+xc+"\". \n\n"+e.message;}
this.logger.warn(yc);}}}
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);}
this._logError(Ec);if(!this.listener){xmp.handleFatalError(Ec);}
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();}
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.");}
if(!this.services){this.services=3D{};}
var Kc=3Dthis.services[Jc];if(Kc){return Kc;}
if(Jc=3D=3D=3Dxmp.CONTROL_STREAM_SERVICE){Kc=3Dnew =
xmp.ControlStream();this.services[Jc]=3DKc;return Kc;}
else if(Jc=3D=3D=3Dxmp.IMAGE_RETRIEVER_SERVICE){Kc=3Dnew =
xmp.ImageRetriever();this.services[Jc]=3DKc;return Kc;}
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_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.e/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.555.2010

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);}
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);}
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.");}
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);}
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;}}
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());}
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());}
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;}
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);}
if(rb.isError()){return true;}
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.");}
if(typeof Mb[id]!=3D=3D'undefined'){this._logger.warn('Skipping =
duplicate ID: '+id);continue;}
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;}
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;}
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());}
return =
Rb;};xmp.baseplayer.internals.GenericMetaFileLoader.prototype._notifyPerF=
ile=3Dfunction(Tb){if(Tb.isLoaded()){this._loadedCount++;this._notifyPerF=
ileCore(Tb);}
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());}}
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();}}
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);}
else{var Wb=3Dthis._handleMap[Vb.getId()];if(Wb.h!=3D=3DVb){throw new =
Error('Unexpected, handles not the same reference.');}
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;}
catch(e){try{if(Yb!=3D=3Dnull){Yb._setErrorMessage(xmp.extractErrorMessag=
e(e));}}
catch(e2){this._logger.warn('Second chance error handling created file =
request',e2);}
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());}
else{if(xmp.net.ContentTypes.TEXT!=3D=3Dthis._CONTENT_TYPE){throw new =
Error('Unexpected content type');}
dc._setRawData(bc.getText());}}
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());}
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;}
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.');}
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);}
nc=3Dqc+nc;}
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.');}
var =
wc=3Dxmp.baseplayer.BasePlayer._fatalException;xmp.PlayerPolicy.validateB=
ootstrap(this);if(wc=3D=3D=3Dxmp.baseplayer.BasePlayer._fatalException){t=
his._bootStrapper.bootStrap(this);}
else{this.handleBootstrapped(false);}}
catch(e){this.handleBootstrappedInternal(e);}};xmp.baseplayer.BasePlayer.=
prototype.fini=3Dfunction(){if(this._mediaPlayer!=3D=3Dnull){this._mediaP=
layer.fini();this._mediaPlayer=3Dnull;}
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");}
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);}
Tc._setData(((Rc.metadata)?Rc.metadata:new =
xmp.util.PlayableData('DEFAULT')));}
if(Sc){var Uc=3DSc.length;for(var =
i=3D0;i<Uc;i++){Tc.setMetadata(Sc[i].name,Sc[i].value);}}
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],'');}}
else{if(!xmp.isNonEmptyString(Vc)){throw new =
xmp.util.internals.InvalidArgsError('The adPatternKey parameter must be =
a non-empty string');}
Wc=3DXc.getString(Vc,'');}
if(!xmp.isNonEmptyString(Wc)){throw new =
xmp.util.internals.InvalidArgsError('Failed to find ad pattern relative =
URL.');}
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");}
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");}
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);}
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.");}
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,'')});}
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);}
if(!this._isStillCurrentNode(te)){return;}
if(ve.canCompleteNow(te)){if(te.getPlayableData().isError()){ve.handleErr=
or(te,te.getPlayableData().getError());return;}
ve.handleValidate(te);ve.handleComplete(te);var =
we=3Dxmp.util.internals.MockTestMode.getInstance();if(we.isActive()){we.o=
verrideMimeType(te);}
if(!this._isStillCurrentNode(te)){return;}
te.getPlayableData().setRuntimeMetadata('history_played',true);ve.handleR=
ender(te);}
else{if(!ue){throw new Error('_renderNode: prevent infinite loop');}
var xe=3Dnew =
xmp.util.Callback('gotAsynchCompleteCallback',this._gotAsynchCompleteCall=
back,this);ve.handleCompleteAsynch(te,xe);}}
catch(e){this._logger.warn("Error rendering node: =
"+te.getBestId(),e);try{ve.handleError(te,e);}
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());}
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;}
else{De=3Dxmp.FatalException.createFatalException(xmp.XmpErrorCodes.FATAL=
_UNSPECIFIED_ERROR,'BasePlayer',xmp.extractErrorMessage(e));}
xmp.baseplayer.BasePlayer._fatalException=3DDe;this._logger.fatal('fatal =
exception',De);this.handleFatalException(De);}
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);}
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();}
catch(afterEx){this._raiseFatalException(afterEx);ex=3DafterEx;}}
else{this._raiseFatalException(ex);}
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);}
else{this.getMediaPlayer().seek(Ee-10);}}
else{this.getMediaPlayer().seek(Ee+10);}};xmp.baseplayer.BasePlayer.proto=
type.setVolume=3Dfunction(){var =
Ge=3Dthis.getMediaPlayer().getVolume();if((Ge+10)>100){Ge=3D0;}
else{Ge=3DGe+10;}
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.');}
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;}
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();}
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)=
;}
var =
af=3Dwindow.document.getElementById(this._ID_PREFIX+'log_output_area_scro=
ll_clip');if(af){af.scrollTop=3Daf.scrollHeight;}}}
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);}
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}');}
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';}
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);}
xmp.util.Logger.getInstance().fatal("ErrorLogger",mf,nf);}
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";}
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;}}
if(xmp.isFirefoxBrowser()){this.showErrorFirefox(rf,sf);}
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+"'/>");}
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;}
this._numPosts++;if(this._reportingDiv=3D=3D=3Dnull){this.createHiddenFor=
m(dg,eg);}
else{this.populateHiddenForm(dg,eg);}
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;}
return =
ig;};xmp.baseplayer.InstrumentationLoggerListener._HttpPostHandler.protot=
ype._extractErrorCode=3Dfunction(mg){if(mg instanceof =
xmp.FatalException){return mg.getFatalErrorCode();}
if(mg instanceof xmp.CriticalException){return =
mg.getCriticalErrorCode();}
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();}
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);}
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;}
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.");}
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.");}}
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);}
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);}}}
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);}
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]);}
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);}
else{this._array.splice(hh,0,jh);}
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;}}
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());}
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();}
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.");}
if(typeof(Gh[Hh])!=3D=3D'undefined'){this._logger.info('Dropping =
duplicate content ID: '+Hh);continue;}
Gh[Hh]=3DHh;Fh.push(Hh);}
Dh=3DFh;if(Dh.length=3D=3D=3D0){throw new =
xmp.util.internals.InvalidArgsError("The 'mridArray' argument must =
contain at least one unique id.");}
if(Eh.length=3D=3D=3D0){Eh=3DDh[0];}
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'.");}
this._advanceToId=3DEh;this._pdMapArray.removeAll();return =
this.handleLoadContent('loadContent','Batch',Dh,0);}
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);}
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();}
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;}
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;}
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++;}
this._pdMapArray.move(fi.i,gi);if(ei){this._advanceToId=3Dci;}
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.");}
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();}
else{var a=3Dthis.getLookAheadNodeArray();for(var =
i=3D0;i<a.length;i++){var ki=3Da[i];if(ki.isContentType()){return =
ki.getPlayableData().getMetaResourceId();}}}}
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);}
else{si=3D{e:null,j:ri.getJsonObject()};}
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);}
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);}
var yi=3Dthis._calcAdvanceToIndex();var zi=3D-1;if(yi>=3D0){zi=3Dyi;}
else{if(wi<0&&vi){wi=3D-1;}
zi=3D(wi+1);}
if(zi<0){this._logger.warn('Invalid refreshFromIndex, correcting to 0: =
'+zi);zi=3D0;}
this._xmpPlayList.setContentMetaResourceIds(this._pdMapArray.extractIdArr=
ay(zi));this._xmpPlayList.getIterator().first();if(yi>=3D0&&this._canAdva=
nce()){this.advance();}
this._notifyPLMods();};xmp.baseplayer._PLCtx.prototype._initXmpPlayList=3D=
function(Ai){try{if(Ai.e!=3D=3Dnull){throw Ai.e;}
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]);}
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();}
this._currentNode=3DCi;if(Ci.isContentType()){this._currentContentNode=3D=
Ci;}
if(this._stateListener){this._stateListener.onAdvance();}}
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.");}}
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());}
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");}
if(Oi=3D=3D=3DPi){throw new xmp.util.internals.InvalidArgsError("The =
'mrid' argument must NOT be the same value as the 'afterMrid' value.");}
if(typeof(Qi)!=3D=3D'boolean'){throw new =
xmp.util.internals.InvalidArgsError("The 'setPos' argument must be of =
boolean type.");}
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.");}}
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.");}}
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.");}}
return =
Si;};xmp.baseplayer._PLCtx.prototype._calcRunState=3Dfunction(){if(this._=
isRunning()){return'running';}
else{return this._isValidNode(this._previousNode)?'stopped':'never =
started';}};xmp.baseplayer._PLCtx.prototype._notifyPLStarted=3Dfunction()=
{try{this._owner.handlePlayListStarted();}
catch(e){this._logger.warn('Error calling =
handlePlayListStarted',e);}};xmp.baseplayer._PLCtx.prototype._notifyPLEnd=
ed=3Dfunction(){try{this._owner.handlePlayListEnded();}
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);}
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.");}
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[];}
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",";=
}}
aj+=3D"]";try{return =
xmp.net.AjaxRequestManager.getInstance()._parseJson(aj);}
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);}
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([]);}
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;}
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()});}
else{try{xmp.net.AjaxRequestManager.getInstance()._parseJavaScript(hj.get=
Text());this._latch.called(cb.getId(),{e:null});}
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;}
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);}
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'&';}
xj+=3Dwj;}
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'';}
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();}
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();}
return =
xmp.baseplayer.internals.AdMeteringImagePool._singeltonInstance;};xmp.bas=
eplayer.internals.AdMeteringImagePool.prototype.setPingImage=3Dfunction(B=
j){this._init();if(this._initializedState!=3D=3D1){return'';}
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);}
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);}
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);}}
catch(e){xmp.handleFatalError(e);this._initializedState=3D0;throw e;}
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);}
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;}
if(this._maxCacheTime=3D=3D=3D0){return true;}
if(this._maxCacheTime<=3Dthis._getAgeInSeconds()){return true;}
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();}
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));}
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.');}}
catch(e){fk._setErrorMessage(xmp.extractErrorMessage(e));fk._setAsLoaded(=
);}}
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));}
fk._addListener(dk);}
else =
if(fk.isLoaded()){if(this._logger.isDebugEnabled()){this._logger.debug('R=
equest handle FOUND in cache, already loaded: '+this._makeKeyH(fk));}
fk._notifyListener(dk);}}
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);}}
for(var =
i=3D0;i<jk.length;i++){lk=3Djk[i];try{kk=3Dthis._makeKeyH(lk);delete =
this._map[kk];}
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;}
return false;}
catch(e){this._logger.warn('Error checking for expiration: '+pk,e);}
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;}}}
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);}
catch(e){Ak=3Dnull;this._logger.warn('Error getting global trigger for =
type: '+uk.getNodeTypeName(),e);}
if(Ak!=3D=3Dnull){wk=3DAk.concat(wk);}}}
if(wk.length>0){return new xmp.baseplayer.internals.Trigger(vk,wk);}
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});}
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);}
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();}
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));}
try{var Jk=3Dxmp.getNamespacedMethod(Ik);var Kk=3Dnew Jk();return Kk;}
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;}
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;}
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);}
else{xmp.baseplayer.internals.AdStatusReporter._cb=3Dnew =
xmp.util.Callback('adStatus',xmp.baseplayer.internals.AdStatusReporter.du=
mmySetAdStatus,null);}
xmp.baseplayer.internals.AdStatusReporter._cb.setAddThisToCallback(false)=
;}
try{xmp.baseplayer.internals.AdStatusReporter._cb.call('SMARTCOUNT: =
'+$k);}
catch(ex){}
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;}
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());}}
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)');}
if(this._resBundle.isLoaded()||this._resBundle.isError()){xmp.util.Timer.=
doSimpleCallback(this._createCb(null,'endAsynch',this._end));return =
true;}
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();}
else if(gl=3D=3D=3Dthis._AD_SERVER_TYPE){this._doAdServerComplete();}
else{throw new Error('Unrecognized phase: '+gl);}}
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);}
else if(jl.getType()=3D=3D=3D'synch_unit'){var =
nl=3Dxmp.baseplayer.internals.Ad.getAdServerRoot();jl._setRawData(nl+ml);=
jl.setDataType('url');}}
else{jl._setErrorMessage(ll.getErrorMessage());}}
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());}
else{ol._setErrorMessage(ql.getErrorMessage());}
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;}
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());}}
if(!this._resBundle.isError()){this._resBundle._setRawData('Loaded');}
try{this._callback.call(this._resBundle);}
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)=
;}
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;}
xmp.baseplayer.internals.AdServerPageController.getInstance().waitUntilRe=
ady(new =
xmp.util.Callback('_doCompositeJob',this._doCompositeJob,this));}
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);}
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)');}
if(this._resBundle.isLoaded()||this._resBundle.isError()){xmp.util.Timer.=
doSimpleCallback(this._createCb(null,'endAsynch',this._end));return =
true;}
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', ';}}
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;}
if(!this._resBundle.isError()){if(this._resBundle.getCount()=3D=3D=3Dthis=
._resBundle.getErrorCount()){this._resBundle._setErrorMessage('All =
resources in composite failed.');}}
if(!this._resBundle.isError()){this._resBundle._setRawData('Loaded');}
try{this._callback.call(this._resBundle);}
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;}
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;}
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;}}
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);}
if(zm.length!=3D=3D0){this._logger.warn(Bm);this._logger.warn('Error: =
'+zm);um._setErrorMessage(zm);continue;}
if(Am=3D=3D=3D'url'){var =
Cm=3Dxmp.baseplayer.internals.Ad.getAdServerRoot();um._setRawData(Cm+ym);=
}
else if(Am=3D=3D=3D'videoJson'){try{var =
Dm=3Dxmp.net.AjaxRequestManager.getInstance()._parseJson(ym);um._setRawDa=
ta(Dm);}
catch(parseEx){this._logger.warn('Parse error with ad type: '+tm+', =
'+xmp.extractErrorMessage(parseEx));um._setErrorMessage(xmp.extractErrorM=
essage(parseEx));}}
else{um._setRawData(ym);}}
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;}
return =
Jm;};xmp.baseplayer.internals.VideoCompositeAdMetaFileLoader.prototype._d=
ecodeOpt=3Dfunction(Km,Lm){if(xmp.isNonEmptyString(Km)){return =
xmp.Base64.decode(Km);}
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();}
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;}
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]);}}
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);}
else{var =
Vm=3Dthis.getNowMs()-this._startTime;if(Vm>30000){this._stopReadyTimer();=
this._logger.warn('Failed to get initial ad server data.');}
else{return;}}
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;}
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();}
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;}
this._loadAdMan();}
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)');}
if(this._resBundle.isLoaded()||this._resBundle.isError()){xmp.util.Timer.=
doSimpleCallback(this._createCb(null,'endAsynch',this._end));return =
true;}
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;}
if(!this._resBundle.isError()){if(this._resBundle.getCount()=3D=3D=3Dthis=
._resBundle.getErrorCount()){this._resBundle._setErrorMessage('All =
resources in composite failed.');}}
if(!this._resBundle.isError()){this._resBundle._setRawData('Loaded');}
try{this._callback.call(this._resBundle);}
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.');}
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.');}
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+'".');}
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.');}
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".');}
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).';}
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;}
if(Bn>0){zn=3Dzn.substr(Bn);}
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;}
return =
An;};xmp.baseplayer.internals.VideoCompositeAdMetaFileLoader2.prototype._=
handleAdServerARMResponse=3Dfunction(En,Fn){try{this._handleAdServerARMRe=
sponseInternal(En,Fn);}
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;}
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());}
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);}
catch(parseEx){this._logger.warn('Parse error with ad type: =
'+Kn.res.getType()+', =
'+xmp.extractErrorMessage(parseEx));Kn.res._setErrorMessage(xmp.extractEr=
rorMessage(parseEx));}}
else{Kn.res._setRawData(Ln.data);}}
else{Kn.res._setErrorMessage(Ln.data);}}
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)=
;}
this._latch.called(Yn.getId(),Zn);};xmp.baseplayer.internals.VideoComposi=
teAdMetaFileLoader2.prototype._handleLatchComplete=3Dfunction(cb){try{thi=
s._doAdManComplete();}
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});}
else{co._setErrorMessage(fo.getErrorMessage());}}
if(bo.length=3D=3D=3D0){this._end();}
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.");}
if(typeof no[id]!=3D=3D'undefined'){this._logger.warn('Skipping =
duplicate ID: '+id);continue;}
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;}
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;}
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());}
return =
so;};xmp.baseplayer.internals.VideoContentMetaFileLoader.prototype._notif=
yPerFile=3Dfunction(uo){if(uo.isLoaded()){this._loadedCount++;this._notif=
yPerFileCore(uo);}
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(=
));}}
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();}}
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);}
else{var yo=3Dthis._handleMap[xo.getId()];if(yo.h!=3D=3Dxo){throw new =
Error('Unexpected, handles not the same reference.');}
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;}
catch(e){try{if(Ao!=3D=3Dnull){Ao._setErrorMessage(xmp.extractErrorMessag=
e(e));}}
catch(e2){this._logger.warn('Second chance error handling created file =
request',e2);}
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=
());}
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());}
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());}
else{Ro._setErrorMessage(Qo.getErrorMessage());}
if(this._owner!=3D=3Dnull){this._owner._release(this);this._owner=3Dnull;=
}
try{this._callback.call(this._playableNode);}
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);}
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);}
catch(e2){try{this._com_logger.warn('Error calling handleError while =
dispatching: '+vp+' on '+yp.listener.getId()+' node listener.',e2);}
catch(e3){}}}
if(zp.return_type=3D=3D=3Dxmp.BOOLEAN_TYPE&&false=3D=3D=3DAp){return =
false;}}
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());}
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);}
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);}
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;}
tq.setMetadata("image",yq[xmp.PlayerPolicy.getSizeFromPlayer(xq)]);}
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);}
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());}
else{var Hq=3DFq.getAssociatedResourceBundleType();var =
Iq=3DGq.getMetaResource(Hq);if(Iq.isError()){Fq.getPlayableData()._setErr=
orMessage(Iq.getErrorMessage());}
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;}
if(this._firstFrameTimer){this._firstFrameTimer.stop();}
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;}
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:"download-url",value:"h=
ttp://www.flip4mac.com/downloads/wmv_components/Flip4Mac%20WMV%202.1.3.10=
.dmg"}],nodes:[]},{name:"Octoshape",map:[{key:"display-name",value:"Octos=
hape =
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_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.e/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=
	var returnVal;=0A=
	if (CNNPlaylistManager.getInstance().controller !=3D null) {=0A=
		// we're using the DHTML control structure=0A=
		var cntl =3D CNNPlaylistManager.getInstance().controller;=0A=
		returnVal =3D cntl.handleXMPEvent(p_method, p_arg);=0A=
	} =0A=
	else {=0A=
		try {=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=
		catch(err) {=0A=
			// catch error and ignore, usually caused by xmp loading before =
controller plugin=0A=
		}=0A=
	}=0A=
	=0A=
	if ( typeof(returnVal) !=3D "undefined" ) return returnVal;=0A=
}=0A=
=0A=
function callControllerMethodZZ(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=
		buildMap['edition'] =3D 'edition';=0A=
		buildMap['omnitureEdition'] =3D 'cnnintl';=0A=
	} else if (cnnIsIntlUS) {=0A=
		buildMap['edition'] =3D 'us';=0A=
		buildMap['omnitureEdition'] =3D 'cnn2global';=0A=
	} else {=0A=
		buildMap['edition'] =3D 'www';=0A=
		buildMap['omnitureEdition'] =3D 'cnn2global';=0A=
	}		=0A=
	xmp.baseplayer.BasePlayer.configure([cnnXmpPrimaryJsonObj], buildMap);=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_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.e/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=
=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=
};=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=
=0A=
=0A=
CNN.NielsenTriggerCommand =3D function() {=0A=
};=0A=
=0A=
CNN.NielsenTriggerCommand.prototype.doCommand =3D function(context) {=0A=
	var isTurnerDomain =3D false;=0A=
	if (location.hostname.indexOf('turner.com')>0) { isTurnerDomain =3D =
true; }=0A=
=0A=
	if (!isTurnerDomain) { 	// don't add tracking image to internal player=0A=
		var cnnScRandom =3D Math.ceil(Math.random()*1000000000);=0A=
  		var cnnScTitle =3D =
escape(context.getPlayableNode().getPlayableData().getDataObject().headli=
ne);=0A=
		switch (context.getTriggerType()) {=0A=
			case 'start':{=0A=
				var cnnScImgt1 =3D 'dav0-' + cnnScTitle;=0A=
				break;=0A=
			}=0A=
			case 'end':{=0A=
				var cnnScImgt1 =3D 'dav2-' + cnnScTitle;=0A=
				break;=0A=
			}=0A=
			default:{=0A=
				return false;=0A=
			}=0A=
		}=0A=
=0A=
		var cnnScImgSrc =3D =
'http://secure-us.imrworldwide.com/cgi-bin/m?ci=3Dus-100120&tl=3D' + =
cnnScImgt1 + '&c6=3Dvc,b01&cc=3D1&rnd=3D' + cnnScRandom;=0A=
		cnnScImg =3D new Image();=0A=
		cnnScImg.src =3D cnnScImgSrc;=0A=
	}=0A=
};=0A=
=0A=

------=_NextPart_000_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.e/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 (CNNPlaylistManager.getInstance().controller =3D=3D null && =
node.getNodeTypeId() !=3D "NextUpSlate" && node.getNodeTypeId() !=3D =
"EndSlate" && node.getNodeTypeId() !=3D "StartSlate" && =0A=
			node.getNodeTypeId() !=3D "ErrorSlate") {=0A=
		callControllerMethod('togglePlay',false);	=0A=
	}=0A=
	if (CNNPlaylistManager.getInstance().playlistType =3D=3D 'bvp' && =
node.getNodeTypeId() =3D=3D "NextUpSlate") {=0A=
		hideTaboolaObject();=0A=
	}=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=
			if (CNNPlaylistManager.getInstance().controller =3D=3D null) { =
callControllerMethod('togglePlay',true); }=0A=
			callControllerMethod('setTime',position);=0A=
		}=0A=
	}=0A=
};=0A=
CNNPlayerListener.prototype.handleError =3D function( node, err ) {=0A=
	if (CNNPlaylistManager.getInstance().playlistType =3D=3D 'bvp' && =
node.isContentType() && =
!CNNPlaylistManager.getInstance('bvpplayer').isSmall) {=0A=
		hideTaboolaObject();=0A=
		clearComments();=0A=
	}=0A=
	if (node.isContentType()) {=0A=
	  CNNPlaylistManager.getInstance().isVideoError =3D true;=0A=
	  CNNPlaylistManager.getInstance().errorObject =3D err;=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('commentsPadding').style.paddingBottom =3D =
'5px'; 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=
		hideTaboolaObject();=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=
	callControllerMethod('turnOffSharing', true);=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=
	callControllerMethod('turnOffSharing', true);=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=
		try { if (!CNNPlaylistManager.getInstance('bvpplayer').isSmall) { =0A=
			clearComments(); =0A=
			if (window.displayOverlay !=3D null) {=0A=
				window.displayOverlay.videoDone(); =0A=
				window.displayOverlay.enableButton(true); =0A=
			}=0A=
} else { hideTaboolaObject(); } } catch(err) { }=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=
	if (CNNPlaylistManager.getInstance().playlistType =3D=3D 'bvp') {=0A=
		hideTaboolaObject();=0A=
	}=0A=
	callControllerMethod('turnOffSharing', true);=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=
	if (CNNPlaylistManager.getInstance().playlistType =3D=3D 'bvp') {=0A=
		hideTaboolaObject();=0A=
	}=0A=
	callControllerMethod('turnOffSharing', true);=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=
		CNNPlaylistManager.getInstance().sensitiveSynchDisplaying =3D true;=0A=
		overrideContext.addResource(houseAd); =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().playlistType =3D=3D 'bvp') {=0A=
		hideTaboolaObject();=0A=
	}=0A=
	if (!CNNPlaylistManager.getInstance('bvpplayer').isSmall) { =
clearComments();}=0A=
	callControllerMethod('endSlateStarted', true);=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=
	if (CNNPlaylistManager.getInstance().playlistType =3D=3D 'bvp') { =
hideTaboolaObject(); }=0A=
	callControllerMethod('setEnabled',false);=0A=
	callControllerMethod('setTime',0);=0A=
	if (CNNPlaylistManager.getInstance().controller =3D=3D null) { =
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=
	if (false =3D=3D node.getPlayableData().getDataObject().isEmbeddable ||=0A=
	( (node.getPlayableData().getDataObject().subcategory =3D=3D 'Main =
Sail' || =0A=
		 node.getPlayableData().getDataObject().subcategory =3D=3D 'Living =
Golf' ||=0A=
		 node.getPlayableData().getDataObject().subcategory =3D=3D 'Revealed') =
&&=0A=
		 node.getPlayableData().getDataObject().section =3D=3D =
'/video/international'))=0A=
	{=0A=
		CNNPlaylistManager.getInstance().doNotEmbed =3D true;=0A=
	} else {=0A=
		CNNPlaylistManager.getInstance().doNotEmbed =3D false;=0A=
	}=0A=
	callControllerMethod('newVideo', true);=0A=
	callControllerMethod('newVideo', true);=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('commentsPadding').style.paddingBottom =
=3D '18px'; 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=
		if (CNNPlaylistManager.getInstance().controller =3D=3D null) { =
callControllerMethod('togglePlay',false);	}=0A=
		CNNPlaylistManager.getInstance().isVideoError =3D true;=0A=
		this.getPlayer().advance();=0A=
	}=0A=
	else {=0A=
		callControllerMethod('videoStarted', true);=0A=
		this.getPlayer().getMediaPlayer().open( node );=0A=
		if (CNNPlaylistManager.getInstance().playlistType =3D=3D 'bvp' && =
DetectFlashVer(9,0,0)) {=0A=
			try {=0A=
				if (window.displayOverlay =3D=3D null) {=0A=
					window.displayOverlay =3D =
trcAttachOverlay('cnnVPFlashLargeContainer', =
node.getPlayableData().getDataObject().id, 'taboolaEventHandler', { =
link_target: 'local' });=0A=
				} else {=0A=
					=
window.displayOverlay.playVideo(node.getPlayableData().getDataObject().id=
);=0A=
					window.displayOverlay.enableButton(true);=0A=
				}=0A=
			} catch(err) {=0A=
=0A=
				try {=0A=
					=0A=
				countdown =3D null;=0A=
				window.displayOverlay.style.display =3D 'none';=0A=
				window.displayOverlay =3D null;=0A=
				window.displayOverlay =3D =
trcAttachOverlay('cnnVPFlashLargeContainer', =
node.getPlayableData().getDataObject().id, 'taboolaEventHandler', { =
link_target: 'local' });=0A=
	=0A=
				}			catch(err) { }=0A=
=0A=
			}=0A=
		}=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=
	if (CNNPlaylistManager.getInstance().controller =3D=3D null) { =
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/rgt.336x280.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=
		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=
			} else {=0A=
				overrideContext.addResource(extra336Ad);=0A=
			}=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_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.e/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.realTab =3D 'notab';=0A=
	this.t1PageType =3D 'Unknown T1 Page';=0A=
	this.singleUrl =3D null;=0A=
	this.doNotEmbed =3D false;=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.cdn.turner.com/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.innerError._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.innerError._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.innerError._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.innerError._code >=3D =
xmp.XmpErrorCodes.CRITICAL_UNSPECIFIED_AJAX_ERROR && =
this.errorObject.innerError._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=
	this.replay =3D function() {=0A=
		=
this.advanceTo(this.activePlaylist,(this.playlists[this.activePlaylist].j=
sonList.length-1));=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.cdn.turner.com/cnn/.element/img/2.0/global/misc/"+id+".no.phot=
o.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.innerError._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.cdn.turner.com/cnn/.element/img/2.0/global/noflash/instal=
l_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("http://i.cdn.turner.com/cnn/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=
=0A=
		CNNPlaylistManager.getInstance().controller =3D new =
CoreVideoControls('htControlsContainer');=0A=
		var c =3D CNNPlaylistManager.getInstance().controller;=0A=
		c.addButton('play', CoreVideoControls_Play.init, 'Play_Disabled_HOT', =
'Play_ActiveOff_HOT', 'Play_ActiveOff_HOT', =
CoreVideoControls_Play.clickEvent);=0A=
		c.addButton('pause', CoreVideoControls_Pause.init, =
'Pause_Disabled_HOT','Pause_ActiveOff_HOT','Pause_ActiveOff_HOT', =
CoreVideoControls_Pause.clickEvent);=0A=
		c.addButton('embed', CoreVideoControls_Embed.init, =
'Embed_Disabled_HOT','Embed_ActiveOff_HOT','Embed_ActiveOff_HOT', =
CoreVideoControls_Embed.clickEvent);=0A=
		c.addButton('share', CoreVideoControls_Share.init, =
'Share_Disabled_HOT','Share_ActiveOff_HOT','Share_ActiveOff_HOT', =
CoreVideoControls_Share.clickEvent);=0A=
		c.addButton('volume', CoreVideoControls_VolumeButton.init, =
'Volume_Disabled_HOT','Volume_Semi_HOT','Volume_Full_HOT', =
CoreVideoControls_VolumeButton.clickEvent);=0A=
		c.addScrubber('volume', CoreVideoControls_VolumeScrubber.init, =
'VolumeTrackBackground_HOT',null,'VolumeHandlerBacker_HOT',null,'VolumeHa=
ndlerEnabled_HOT',CoreVideoControls_VolumeScrubber.slideChangeEvent, =
CoreVideoControls_VolumeScrubber.slideChangeEvent);=0A=
		c.addScrubber('timeline', CoreVideoControls_Timeline.init, =
'TimelineTrackBackground_HOT', 'TimelineTrackBuffer_HOT', =
'TimelineHandlerBacker_HOT', 'TimelineHandlerDisabled_HOT', =
'TimelineHandlerEnabled_HOT', CoreVideoControls_Timeline.slideEvent, =
CoreVideoControls_Timeline.changeEvent);=0A=
		c.addClock('time and duration', CoreVideoControls_Clock.init, =
'TimeSpent_HOT','Duration_HOT','TimeSep_HOT');=0A=
		c.initialize(function() { });=0A=
=0A=
=0A=
//		var so =3Dnew =
SWFObject("http://i.cdn.turner.com/cnn/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.cdn.turner.com/cnn/.element/img/2.0/global/noflash/instal=
l_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.cdn.turner.com/cnn/.element/img/2.0/global/icons/video_ic=
on.gif" 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.cdn.turner.com/cnn/.element/img/2.0/global/icons/video_ic=
on.gif" 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('controlsContainer').innerHTML =3D '';=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=
					// if this.startVideo isn't at the pointer, move to it=0A=
					var p =3D this.playlists[this.activePlaylist].pointer;=0A=
					var new_p =3D 0;=0A=
					var vid_array =3D =
this.playlists[this.activePlaylist].playlistJsonObjs;=0A=
					var ct =3D vid_array.length;=0A=
					for (var i=3D0; i < ct; i++) {=0A=
						if (vid_array[i].getDataObject().location =3D=3D this.startVideo =
|| vid_array[i].getDataObject().id =3D=3D this.startVideo) {=0A=
							new_p =3D i;=0A=
							break;=0A=
						}=0A=
					}=0A=
					if ((new_p !=3D p) && (new_p !=3D 0)) {=0A=
						CNNPlaylistManager.getInstance().advanceTo('mosplaylist',new_p);=0A=
					}=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.cdn.turner.com/cnn/.element/img/2.0/global/noflash/insta=
ll_btn.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.cdn.turner.com/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.cdn.turner.com/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=
=0A=
		CNNPlaylistManager.getInstance().controller =3D new =
CoreVideoControls('controlsContainer');=0A=
		var c =3D CNNPlaylistManager.getInstance().controller;=0A=
		c.addButton('play', CoreVideoControls_Play.init, 'Play_Disabled_BVP', =
'Play_ActiveOff_BVP', 'Play_ActiveOff_BVP', =
CoreVideoControls_Play.clickEvent);=0A=
		c.addButton('pause', CoreVideoControls_Pause.init, =
'Pause_Disabled_BVP','Pause_ActiveOff_BVP','Pause_ActiveOff_BVP', =
CoreVideoControls_Pause.clickEvent);=0A=
		c.addButton('embed', CoreVideoControls_Embed.init, =
'Embed_Disabled_BVP','Embed_ActiveOff_BVP','Embed_ActiveOff_BVP', =
CoreVideoControls_Embed.clickEvent);=0A=
		c.addButton('share', CoreVideoControls_Share.init, =
'Share_Disabled_BVP','Share_ActiveOff_BVP','Share_ActiveOff_BVP', =
CoreVideoControls_Share.clickEvent);=0A=
		c.addButton('fullscreen', CoreVideoControls_Fullscreen.init, =
'Fullscreen_Disabled_BVP','Fullscreen_ActiveOff_BVP','Fullscreen_ActiveOf=
f_BVP', CoreVideoControls_Fullscreen.clickEvent);=0A=
		c.addButton('volume', CoreVideoControls_VolumeButton.init, =
'Volume_Disabled_BVP','Volume_Semi_BVP','Volume_Full_BVP', =
CoreVideoControls_VolumeButton.clickEvent);=0A=
		c.addScrubber('volume', CoreVideoControls_VolumeScrubber.init, =
'VolumeTrackBackground_BVP',null,'VolumeHandlerBacker_BVP',null,'VolumeHa=
ndlerEnabled_BVP',CoreVideoControls_VolumeScrubber.slideChangeEvent, =
CoreVideoControls_VolumeScrubber.slideChangeEvent);=0A=
		c.addScrubber('timeline', CoreVideoControls_Timeline.init, =
'TimelineTrackBackground_BVP', 'TimelineTrackBuffer_BVP', =
'TimelineHandlerBacker_BVP', 'TimelineHandlerDisabled_BVP', =
'TimelineHandlerEnabled_BVP', CoreVideoControls_Timeline.slideEvent, =
CoreVideoControls_Timeline.changeEvent);=0A=
		c.addClock('time and duration', CoreVideoControls_Clock.init, =
'TimeSpent_BVP','Duration_BVP','TimeSep_BVP');=0A=
		c.initialize(function() { });=0A=
=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("controlsContainer");   	=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=
	var taboolaSel =3D false;=0A=
	if (section =3D=3D 'taboola') {=0A=
		taboolaSel =3D true;=0A=
		section =3D loadingSection;=0A=
	}=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=
		if (taboolaSel =3D=3D true && tempArray.length =3D=3D 0) {=0A=
			tempArray =3D this.BVPMGeneratePlaylistFromStart(1,section);=0A=
			tempArray.pop();=0A=
			tempArray.splice(0,1,videoId);=0A=
		}=0A=
		this.playlists['bvpplaylist'] =3D new this.playlist(tempArray,0);=0A=
		this.setPlaylist('bvpplaylist',BVPPlaylistUICallback);=0A=
		if (taboolaSel =3D=3D true) { this.realTab =3D this.tab; this.tab =3D =
'taboola'; }=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_0000_01C908F8.678A5380
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://i.cdn.turner.com/cnn/.e/js/2.0/video/common/videoControls.js

function CoreVideoControls(parentDiv) {=0A=
	this.parentDiv =3D $(parentDiv);=0A=
	this.buttons =3D new Array();=0A=
	this.scrubbers =3D new Array();=0A=
	this.clocks =3D new Array();=0A=
	this.amScrubbing =3D false;=0A=
	this.duration =3D null;=0A=
	this.initList =3D new Array();=0A=
	this.endSlateActive =3D false;=0A=
}=0A=
=0A=
CoreVideoControls.prototype.initialize =3D function(callbackMethod) {=0A=
	for (var i =3D 0; i < this.initList.length; i++) {=0A=
		this.initList[i]();=0A=
	}=0A=
	callbackMethod();=0A=
}=0A=
=0A=
CoreVideoControls.prototype.handleXMPEvent =3D function(p_method, p_arg) =
{=0A=
		var returnVal;=0A=
		switch(p_method) {=0A=
			case 'endSlateStarted':=0A=
				this.endSlateActive =3D true;=0A=
				this.enableShare();=0A=
				this.enableEmbed();=0A=
				break;=0A=
			case 'newVideo':=0A=
				this.hideEmbed();=0A=
				this.hideShare();=0A=
				break;=0A=
			case 'videoStarted':=0A=
				this.endSlateActive =3D false;=0A=
				this.enableShare();=0A=
				if (CNNPlaylistManager.getInstance().doNotEmbed =3D=3D false)=0A=
					this.enableEmbed();=0A=
				this.enableFullscreen();=0A=
				break;=0A=
			case 'turnOffSharing':=0A=
				this.disableShare();=0A=
				this.disableEmbed();=0A=
				break;=0A=
			case 'setEnabled':=0A=
				if (p_arg =3D=3D false) {=0A=
					this.disablePause();=0A=
					this.disableShare();=0A=
					this.disableEmbed();=0A=
					this.disableFullscreen();=0A=
					this.disableTimelineScrubber();=0A=
				}=0A=
				if (p_arg =3D=3D true) {=0A=
					this.enablePause();=0A=
				}=0A=
				break;=0A=
			case 'setVolume':=0A=
				this.scrubbers['volume'].scrubberPointer.setValue((p_arg/100));=0A=
				break;=0A=
			case 'setTime':=0A=
				this.setTime(p_arg);=0A=
				break;=0A=
			case 'setDuration':=0A=
				this.setDuration(p_arg);=0A=
				break;=0A=
			case 'togglePlay':=0A=
				if (p_arg =3D=3D true) {=0A=
					this.enablePause();=0A=
				} else {=0A=
					this.enablePlay();=0A=
				}=0A=
				break;=0A=
			case 'setScrubberEnabled':=0A=
				if (p_arg =3D=3D true) {=0A=
					this.enableTimelineScrubber();=0A=
				} else {=0A=
					this.disableTimelineScrubber();=0A=
				}=0A=
				break;=0A=
			case 'setLoadedPercent':=0A=
				this.setTimelineScrubberBuffer(p_arg);=0A=
				break;=0A=
			case 'getVolume':=0A=
				returnVal =3D 100 * this.scrubbers['volume'].scrubberPointer.value;=0A=
				break;=0A=
		}=0A=
		return returnVal;=0A=
}=0A=
=0A=
/* 	**********************************************=0A=
=0A=
	End		-	Initialization =0A=
	Start 	- 	Play=0A=
=0A=
	********************************************** */=0A=
	=0A=
function CoreVideoControls_Play() { }=0A=
=0A=
CoreVideoControls_Play.prototype.swapPlayPause =3D function(hide,show) {=0A=
	$(hide).style.display =3D 'none';=0A=
	$(show).style.display =3D 'block';=0A=
}=0A=
=0A=
CoreVideoControls_Play.prototype.disablePlay =3D function() {=0A=
	if ($('playLayer')) {=0A=
		this.swapPlayPause('pauseLayer','playLayer');=0A=
		$('playLayer').className =3D this.buttons['play'].classes['disabled'];=0A=
		$('playLayer').onclick =3D function() { }=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Play.prototype.enablePlay =3D function() {=0A=
	if ($('playLayer')) {=0A=
		this.swapPlayPause('pauseLayer','playLayer');=0A=
		$('playLayer').className =3D this.buttons['play'].classes['activeOff'];=0A=
		$('playLayer').onclick =3D this.buttons['play'].clickEvent;=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Play.init =3D function() {=0A=
	// place the play button=0A=
	var divObj =3D document.createElement('div');=0A=
	divObj.setAttribute('id','playLayer');=0A=
	divObj.className =3D =
CNNPlaylistManager.getInstance().controller.buttons['play'].classes['disa=
bled'];=0A=
	divObj.style.display =3D 'none';=0A=
	=
CNNPlaylistManager.getInstance().controller.parentDiv.appendChild(divObj)=
;=0A=
}=0A=
=0A=
CoreVideoControls_Play.clickEvent =3D function() {=0A=
	CNNPlaylistManager.getInstance().controller.hideShare();=0A=
	CNNPlaylistManager.getInstance().controller.hideEmbed();=0A=
	if (CNNPlaylistManager.getInstance().playlistType =3D=3D 'bvp') {=0A=
		try {=0A=
			if (window.displayOverlay !=3D null)=0A=
				window.displayOverlay.enableButton(true);=0A=
		} catch(err) {  }=0A=
	}=0A=
	CNNPlayer.getActivePlayer().handleEvent('playPressed');=0A=
}=0A=
=0A=
/* 	**********************************************=0A=
=0A=
	End		-	Play =0A=
	Start 	- 	Pause=0A=
=0A=
	********************************************** */=0A=
=0A=
function CoreVideoControls_Pause() { }=0A=
=0A=
CoreVideoControls_Pause.prototype.disablePause =3D function() {=0A=
	if ($('pauseLayer')) {=0A=
	this.swapPlayPause('playLayer','pauseLayer');=0A=
	$('pauseLayer').className =3D this.buttons['pause'].classes['disabled'];=0A=
	$('pauseLayer').onclick =3D function() { }=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Pause.prototype.enablePause =3D function() {=0A=
	if ($('pauseLayer')) {=0A=
		this.swapPlayPause('playLayer','pauseLayer');=0A=
		$('pauseLayer').className =3D =
this.buttons['pause'].classes['activeOff'];=0A=
		$('pauseLayer').onclick =3D this.buttons['pause'].clickEvent;=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Pause.init =3D function() {=0A=
	// place the pause disabled button=0A=
	var divObj =3D document.createElement('div');=0A=
	divObj.setAttribute('id','pauseLayer');=0A=
	divObj.className =3D =
CNNPlaylistManager.getInstance().controller.buttons['pause'].classes['dis=
abled'];=0A=
	=
CNNPlaylistManager.getInstance().controller.parentDiv.appendChild(divObj)=
;=0A=
}=0A=
=0A=
CoreVideoControls_Pause.clickEvent =3D function() {=0A=
	CNNPlayer.getActivePlayer().handleEvent('pausePressed');=0A=
}=0A=
=0A=
/* 	**********************************************=0A=
=0A=
	End		-	Play/Pause=0A=
	Start 	- 	Embed=0A=
=0A=
	********************************************** */=0A=
=0A=
function CoreVideoControls_Embed() { }=0A=
=0A=
CoreVideoControls_Embed.prototype.disableEmbed =3D function() {=0A=
	if ($('embedLayer')) {=0A=
		this.hideEmbed();=0A=
		$('embedLayer').className =3D =
this.buttons['embed'].classes['disabled'];=0A=
		$('embedLayer').onclick =3D function() { }=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Embed.prototype.enableEmbed =3D function() {=0A=
	if ($('embedLayer') && CNNPlaylistManager.getInstance().doNotEmbed =
=3D=3D false) {=0A=
		$('embedLayer').className =3D =
this.buttons['embed'].classes['activeOff'];=0A=
		$('embedLayer').onclick =3D this.buttons['embed'].clickEvent;=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Embed.prototype.showEmbed =3D function() {=0A=
	if ($('embedLayer')) {=0A=
		if (this.endSlateActive =3D=3D false) {=0A=
			CNNPlayer.getActivePlayer().handleEvent('pausePressed');=0A=
			if (CNNPlaylistManager.getInstance().playlistType =3D=3D 'bvp') {=0A=
				try {=0A=
					if (window.displayOverlay !=3D null)=0A=
						window.displayOverlay.enableButton(false);=0A=
				} catch(err) {  }=0A=
			}=0A=
		}=0A=
		var p =3D CNNPlaylistManager.getInstance();=0A=
		var hosturl =3D 'http://www.cnn.com/video/savp/evp/?loc=3Ddom&vid=3D';=0A=
		if (location.hostname.indexOf('edition.') > -1) {=0A=
			hosturl =3D 'http://edition.cnn.com/video/savp/evp/?loc=3Dint&vid=3D';=0A=
		}=0A=
		$('embedForm').value =3D '<iframe =
src=3D"'+hosturl+p.playlists[p.activePlaylist].playlistJsonObjs[p.playlis=
ts[p.activePlaylist].pointer].getDataObject().id+'" height=3D"393" =
width=3D"406" allowtransparency=3D"true" frameborder=3D"0" =
scrolling=3D"no"></iframe>';=0A=
		$('embedOverlay').style.display =3D 'block';=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Embed.prototype.hideEmbed =3D function(restart) {=0A=
	if ($('embedLayer')) {=0A=
		$('embedOverlay').style.display =3D 'none';=0A=
		if (this.endSlateActive) {=0A=
			$('endReplay').style.display =3D 'block';=0A=
			$('endEmbed').style.display =3D 'block';=0A=
			$('endShare').style.display =3D 'block';=0A=
			if ($('thumBs')) {=0A=
				$('thumBs').style.display =3D 'block';=0A=
				$('thumbOverlay').style.display =3D 'block';=0A=
			}=0A=
		} else {=0A=
			if (restart) {=0A=
				CNNPlayer.getActivePlayer().handleEvent('playPressed');=0A=
				if (CNNPlaylistManager.getInstance().playlistType =3D=3D 'bvp') {=0A=
					try {=0A=
						if (window.displayOverlay !=3D null)=0A=
							window.displayOverlay.enableButton(true);=0A=
					} catch(err) {  }=0A=
				}=0A=
			}=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Embed.init =3D function() {=0A=
	var divObj =3D document.createElement('div');=0A=
	divObj.setAttribute('id','embedLayer');=0A=
	divObj.className =3D =
CNNPlaylistManager.getInstance().controller.buttons['embed'].classes['dis=
abled'];=0A=
	=
CNNPlaylistManager.getInstance().controller.parentDiv.appendChild(divObj)=
;=0A=
	var divObj =3D document.createElement('div');=0A=
	divObj.setAttribute('id','embedOverlay');=0A=
	divObj.innerHTML =3D '<div id=3D"embedClose" =
onclick=3D"CNNPlaylistManager.getInstance().controller.hideEmbed(true);">=
</div><div id=3D"embedButton"><a =
href=3D"javascript:CNNPlaylistManager.getInstance().controller.copyEmbed(=
)"><img border=3D"no" =
src=3D"http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/copy.png"></=
a></div><input onfocus=3D"this.select();" id=3D"embedForm"><div =
id=3D"embedTitle">Embed this video</div><div id=3D"embedDesc1">Copy and =
paste this code into your blog/website</div><div id=3D"embedDesc2">Or =
click on the button to copy the code</div>';=0A=
	if ($('mosVidContainer')) {=0A=
		$('mosVidContainer').appendChild(divObj);=0A=
	} else {=0A=
		$('htVidContainer').appendChild(divObj);=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Embed.clickEvent =3D function() {=0A=
	if ($('embedOverlay').style.display =3D=3D 'block') {=0A=
		CNNPlaylistManager.getInstance().controller.hideEmbed(true);=0A=
	} else {=0A=
		CNNPlaylistManager.getInstance().controller.hideShare();=0A=
		if (CNNPlaylistManager.getInstance().controller.endSlateActive =3D=3D =
true) {=0A=
			$('endReplay').style.display =3D 'none';=0A=
			$('endEmbed').style.display =3D 'none';=0A=
			$('endShare').style.display =3D 'none';=0A=
			if ($('thumBs')) {=0A=
				$('thumBs').style.display =3D 'none';=0A=
				$('thumbOverlay').style.display =3D 'none';=0A=
			}=0A=
		}=0A=
		CNNPlaylistManager.getInstance().controller.showEmbed();=0A=
	}=0A=
}=0A=
=0A=
/* 	**********************************************=0A=
=0A=
	End		-	Embed =0A=
	Start 	- 	Share=0A=
=0A=
	********************************************** */=0A=
=0A=
function CoreVideoControls_Share() { }=0A=
=0A=
CoreVideoControls_Share.prototype.disableShare =3D function() {=0A=
	if ($('shareLayer')) {=0A=
		this.hideShare();=0A=
		$('shareLayer').className =3D =
this.buttons['share'].classes['disabled'];=0A=
		$('shareLayer').onclick =3D function() { }=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Share.prototype.enableShare =3D function() {=0A=
	if ($('shareLayer')) {=0A=
		$('shareLayer').className =3D =
this.buttons['share'].classes['activeOff'];=0A=
		$('shareLayer').onclick =3D this.buttons['share'].clickEvent;=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Share.prototype.showShare =3D function() {=0A=
	if ($('shareLayer')) {=0A=
		if (this.endSlateActive =3D=3D false) {=0A=
			CNNPlayer.getActivePlayer().handleEvent('pausePressed');=0A=
			if (CNNPlaylistManager.getInstance().playlistType =3D=3D 'bvp') {=0A=
				try {=0A=
					if (window.displayOverlay !=3D null)=0A=
						window.displayOverlay.enableButton(false);=0A=
				} catch(err) {  }=0A=
			}=0A=
		}=0A=
		var p =3D CNNPlaylistManager.getInstance();=0A=
		$('shareOverlay').style.display =3D 'block';=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Share.prototype.hideShare =3D function(restart) {=0A=
	if ($('shareLayer')) {=0A=
		$('shareOverlay').style.display =3D 'none';=0A=
		if (this.endSlateActive) {=0A=
			$('endReplay').style.display =3D 'block';=0A=
			$('endEmbed').style.display =3D 'block';=0A=
			$('endShare').style.display =3D 'block';=0A=
			if ($('thumBs')) {=0A=
				$('thumBs').style.display =3D 'block';=0A=
				$('thumbOverlay').style.display =3D 'block';=0A=
			}=0A=
		} else {=0A=
			if (restart) {=0A=
				CNNPlayer.getActivePlayer().handleEvent('playPressed');=0A=
				if (CNNPlaylistManager.getInstance().playlistType =3D=3D 'bvp') {=0A=
					try {=0A=
						if (window.displayOverlay !=3D null)=0A=
							window.displayOverlay.enableButton(true);=0A=
					} catch(err) {  }=0A=
				}=0A=
			}=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Share.prototype.shareVideo =3D function(shareType) {=0A=
	var p =3D CNNPlaylistManager.getInstance();=0A=
	var dataObj =3D =
p.playlists[p.activePlaylist].playlistJsonObjs[p.playlists[p.activePlayli=
st].pointer].getDataObject();=0A=
	var linkUrl =3D null;=0A=
	var hstName =3D (location.hostname.indexOf('edition.') > -1) ? =
'edition' : 'www';=0A=
	var vidUrl =3D =
encodeURIComponent('http://'+hstName+'.cnn.com/video/?JSONLINK=3D'+dataOb=
j.id);=0A=
	var desc =3D encodeURIComponent(dataObj.description);=0A=
	var headline =3D encodeURIComponent(dataObj.headline);=0A=
	switch (shareType) {=0A=
		case 'mixx':=0A=
			linkUrl =3D =
'http://www.mixx.com/submit/video?page_url=3D'+vidUrl+'&title=3D'+headlin=
e+'&description=3D'+desc+'&partner=3DCNN';=0A=
			break;=0A=
		case 'digg':=0A=
			linkUrl =3D =
'http://digg.com/submit?phase=3D2&url=3D'+vidUrl+'&title=3D'+headline+'&b=
odytext=3D'+desc;=0A=
			break;=0A=
		case 'facebook':=0A=
			var faceLink =3D 'http://'+hstName+'.cnn.com/video/data/2.0' + =
dataObj.id + '.html';=0A=
			linkUrl =3D =
'http://www.facebook.com/sharer.php?u=3D'+encodeURIComponent(faceLink)+'&=
t=3D'+headline;=0A=
			break;=0A=
		case 'delicious':=0A=
			linkUrl =3D =
'http://del.icio.us/post?v=3D4&partner=3Dcnn&noui&jump=3Dclose&url=3D'+vi=
dUrl+'&title=3D'+headline;=0A=
			break;=0A=
		case 'reddit':=0A=
			linkUrl =3D =
'http://reddit.com/submit?url=3D'+vidUrl+'&title=3D'+headline;=0A=
			break;=0A=
		case 'stumbleupon':=0A=
			linkUrl =3D =
'http://www.stumbleupon.com/submit?url=3D'+vidUrl+'&title=3D'+headline;=0A=
			break;=0A=
		case 'myspace':=0A=
			linkUrl =3D =
'http://www.myspace.com/Modules/PostTo/Pages/?t=3D'+headline+'&c=3D'+desc=
+'&u=3D'+vidUrl;=0A=
			break;=0A=
	}=0A=
	if (linkUrl !=3D null) {=0A=
		window.open(linkUrl,'videoShareLink');=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Share.init =3D function() {=0A=
	var divObj =3D document.createElement('div');=0A=
	divObj.setAttribute('id','shareLayer');=0A=
	divObj.className =3D =
CNNPlaylistManager.getInstance().controller.buttons['share'].classes['dis=
abled'];=0A=
	=
CNNPlaylistManager.getInstance().controller.parentDiv.appendChild(divObj)=
;=0A=
	var divObj =3D document.createElement('div');=0A=
	divObj.setAttribute('id','shareOverlay');=0A=
	divObj.innerHTML =3D '<div id=3D"shareContainer"></div><div =
id=3D"shareIcons"><table border=3D"0" cellpadding=3D"0" =
cellspacing=3D"0"><tr><td id=3D"shareMixx" class=3D"shareCell"><a =
href=3D"javascript:CNNPlaylistManager.getInstance().controller.shareVideo=
(\'mixx\')">Mixx</a></td><td id=3D"shareReddit" class=3D"shareCell"><a =
href=3D"javascript:CNNPlaylistManager.getInstance().controller.shareVideo=
(\'reddit\')">reddit</a></td></tr><tr><td id=3D"shareDigg" =
class=3D"shareCell"><a =
href=3D"javascript:CNNPlaylistManager.getInstance().controller.shareVideo=
(\'digg\')">Digg</a></td><td id=3D"shareStumbleupon" =
class=3D"shareCell"><a =
href=3D"javascript:CNNPlaylistManager.getInstance().controller.shareVideo=
(\'stumbleupon\')">StumbleUpon</a></td></tr><tr><td id=3D"shareFacebook" =
class=3D"shareCell"><a =
href=3D"javascript:CNNPlaylistManager.getInstance().controller.shareVideo=
(\'facebook\')">Facebook</a></td><td id=3D"shareMyspace" =
class=3D"shareCell"><a =
href=3D"javascript:CNNPlaylistManager.getInstance().controller.shareVideo=
(\'myspace\')">MySpace</a></td></tr><tr><td id=3D"shareDelicious" =
class=3D"shareCell"><a =
href=3D"javascript:CNNPlaylistManager.getInstance().controller.shareVideo=
(\'delicious\')">del.icio.us</a></td></tr></table></div><div =
id=3D"shareDivider"></div><div =
onclick=3D"CNNPlaylistManager.getInstance().emailVideo();" =
class=3D"shareEmail" =
onmouseover=3D"this.className=3D\'shareEmailOver\';" =
onmouseout=3D"this.className=3D\'shareEmail\';" =
id=3D"shareEmail"></div><div id=3D"shareClose" =
onclick=3D"CNNPlaylistManager.getInstance().controller.hideShare(true);">=
</div><div id=3D"shareTitle">Share this video</div>';=0A=
	if ($('mosVidContainer')) {=0A=
		$('mosVidContainer').appendChild(divObj);=0A=
	} else {=0A=
		$('htVidContainer').appendChild(divObj);=0A=
	}=0A=
}=0A=
=0A=
=0A=
=0A=
CoreVideoControls_Share.clickEvent =3D function() {=0A=
	if ($('shareOverlay').style.display =3D=3D 'block') {=0A=
		CNNPlaylistManager.getInstance().controller.hideShare(true);=0A=
	} else {=0A=
		CNNPlaylistManager.getInstance().controller.hideEmbed();=0A=
		if (CNNPlaylistManager.getInstance().controller.endSlateActive =3D=3D =
true) {=0A=
			$('endReplay').style.display =3D 'none';=0A=
			$('endEmbed').style.display =3D 'none';=0A=
			$('endShare').style.display =3D 'none';=0A=
			if ($('thumBs')) {=0A=
				$('thumBs').style.display =3D 'none';=0A=
				$('thumbOverlay').style.display =3D 'none';=0A=
			}=0A=
		}=0A=
		CNNPlaylistManager.getInstance().controller.showShare();=0A=
	}=0A=
}=0A=
=0A=
/* 	**********************************************=0A=
=0A=
	End		-	Share=0A=
	Start 	- 	Fullscreen=0A=
=0A=
	********************************************** */=0A=
=0A=
function CoreVideoControls_Fullscreen() { }=0A=
=0A=
CoreVideoControls_Fullscreen.prototype.fullscreenDiv =3D null;=0A=
CoreVideoControls_Fullscreen.prototype.fullscreenHide =3D false;=0A=
=0A=
CoreVideoControls_Fullscreen.prototype.disableFullscreen =3D function() {=0A=
	if ($('fullscreenLayer')) {=0A=
		$('fullscreenLayer').className =3D =
this.buttons['fullscreen'].classes['disabled'];=0A=
		$('fullscreenLayer').onclick =3D function() { }=0A=
		$('fullscreenLayer').onmouseover =3D function() { }=0A=
		$('fullscreenLayer').onmouseover =3D function() { }=0A=
		=
CNNPlaylistManager.getInstance().controller.fullscreenDiv.style.display =
=3D 'none';=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Fullscreen.prototype.enableFullscreen =3D function() {=0A=
	if ($('fullscreenLayer')) {=0A=
		$('fullscreenLayer').className =3D =
this.buttons['fullscreen'].classes['activeOff'];=0A=
		$('fullscreenLayer').onclick =3D this.buttons['fullscreen'].clickEvent;=0A=
		$('fullscreenLayer').onmouseover =3D function() { =
CNNPlaylistManager.getInstance().controller.fullscreenHide =3D false; =
CNNPlaylistManager.getInstance().controller.fullscreenDiv.style.display =
=3D 'block'; }=0A=
		$('fullscreenLayer').onmouseout =3D function() { =0A=
			if (CNNPlaylistManager.getInstance().controller.fullscreenDiv.id =
=3D=3D 'fullscreenUpgrade') {=0A=
				CNNPlaylistManager.getInstance().controller.fullscreenHide =3D true;=0A=
				setTimeout("if =
(CNNPlaylistManager.getInstance().controller.fullscreenHide) { =
CNNPlaylistManager.getInstance().controller.fullscreenDiv.style.display =
=3D 'none'; }",3000);=0A=
			} else {=0A=
				=
CNNPlaylistManager.getInstance().controller.fullscreenDiv.style.display =
=3D 'none';=0A=
			}=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Fullscreen.init =3D function() {=0A=
	var divObj =3D document.createElement('div');=0A=
	divObj.setAttribute('id','fullscreenLayer');=0A=
	divObj.className =3D =
CNNPlaylistManager.getInstance().controller.buttons['fullscreen'].classes=
['disabled'];=0A=
	=
CNNPlaylistManager.getInstance().controller.parentDiv.appendChild(divObj)=
;=0A=
	// build the div for the fullscreen item=0A=
	var fullScreenBubbleCheck =3D DetectFlashVer(9,0,115);=0A=
	if (fullScreenBubbleCheck) {=0A=
		divObj =3D document.createElement('div');=0A=
		divObj.setAttribute('id','fullscreenDoubleClick');=0A=
		divObj.innerHTML =3D '<img =
src=3D"http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/flashDoubleC=
lick.gif">';=0A=
		$('mosVidContainer').appendChild(divObj);=0A=
		CNNPlaylistManager.getInstance().controller.fullscreenDiv =3D =
$('fullscreenDoubleClick');=0A=
	}=0A=
	else {=0A=
		divObj =3D document.createElement('div');=0A=
		divObj.setAttribute('id','fullscreenUpgrade');=0A=
		divObj.innerHTML =3D '<a =
href=3D"http://www.adobe.com/products/flashplayer/" =
target=3D"_blank"><img border=3D"no" =
src=3D"http://i.cdn.turner.com/cnn/.e/img/2.0/video/controls/flashUpgrade=
.gif"></a>';=0A=
		$('mosVidContainer').appendChild(divObj);=0A=
		CNNPlaylistManager.getInstance().controller.fullscreenDiv =3D =
$('fullscreenUpgrade');=0A=
	}=0A=
=0A=
}=0A=
=0A=
CoreVideoControls_Fullscreen.clickEvent =3D function() {=0A=
	CNNPlayer.getActivePlayer().handleEvent('fullscreenPressed');=0A=
}=0A=
=0A=
/* 	**********************************************=0A=
=0A=
	End		-	Fullscreen=0A=
	Start 	- 	Timeline=0A=
=0A=
	********************************************** */=0A=
=0A=
function CoreVideoControls_Timeline() { }=0A=
=0A=
CoreVideoControls_Timeline.prototype.enableTimelineScrubber =3D =
function() {=0A=
	if ($('timelineTrackBackground')) {=0A=
	this.scrubbers['timeline'].scrubberPointer.disabled =3D false;=0A=
	$('timelineHandler').className =3D =
this.scrubbers['timeline'].classes['handlerEnabled'];=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Timeline.prototype.disableTimelineScrubber =3D =
function() {=0A=
	if ($('timelineTrackBackground')) {=0A=
	this.scrubbers['timeline'].scrubberPointer.disabled =3D true;=0A=
	$('timelineHandler').className =3D =
this.scrubbers['timeline'].classes['handlerDisabled'];=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Timeline.prototype.setTimelineScrubberBuffer =3D =
function(val) {=0A=
	if ($('timelineTrackBackground')) {=0A=
	$('timelineTrackBuffer').style.width =3D ('' + (val * 100) + '%');=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Timeline.prototype.doneTimelineScrubbing =3D =
function(val) {=0A=
	if ($('timelineTrackBackground')) {=0A=
	=
CNNPlayer.getActivePlayer().getMediaPlayer().seek(Math.floor(this.duratio=
n * val));=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Timeline.init =3D function() {=0A=
	// place the background layer for the handle=0A=
	var divObj =3D document.createElement('div');=0A=
	divObj.setAttribute('id','timelineTrackBackground');=0A=
	divObj.className =3D =
CNNPlaylistManager.getInstance().controller.scrubbers['timeline'].classes=
['trackBackground'];=0A=
	=
CNNPlaylistManager.getInstance().controller.parentDiv.appendChild(divObj)=
;=0A=
=0A=
	// fill the background layer=0A=
	var divObj =3D document.createElement('div');=0A=
	divObj.setAttribute('id','timelineTrackBuffer');=0A=
	divObj.className =3D =
CNNPlaylistManager.getInstance().controller.scrubbers['timeline'].classes=
['trackBuffer'];=0A=
	$('timelineTrackBackground').appendChild(divObj);=0A=
=0A=
	// create the handle encloser=0A=
	var divObj =3D document.createElement('div');=0A=
	divObj.setAttribute('id','timelineHandlerBacker');=0A=
	divObj.className =3D =
CNNPlaylistManager.getInstance().controller.scrubbers['timeline'].classes=
['handlerBacker'];=0A=
	=
CNNPlaylistManager.getInstance().controller.parentDiv.appendChild(divObj)=
;=0A=
	=0A=
	// create the handle=0A=
	var divObj =3D document.createElement('div');=0A=
	divObj.setAttribute('id','timelineHandler');=0A=
	divObj.className =3D =
CNNPlaylistManager.getInstance().controller.scrubbers['timeline'].classes=
['handlerDisabled'];=0A=
	$('timelineHandlerBacker').appendChild(divObj);=0A=
=0A=
	=
CNNPlaylistManager.getInstance().controller.scrubbers['timeline'].scrubbe=
rPointer =3D new Control.Slider('timelineHandler', =
'timelineHandlerBacker', {=0A=
		onSlide: =
CNNPlaylistManager.getInstance().controller.scrubbers['timeline'].slideEv=
ent,=0A=
		onChange: =
CNNPlaylistManager.getInstance().controller.scrubbers['timeline'].changeE=
vent,=0A=
		disabled: true=0A=
	});=0A=
}=0A=
=0A=
CoreVideoControls_Timeline.slideEvent =3D function(val) {=0A=
	CNNPlaylistManager.getInstance().controller.amScrubbing =3D true;=0A=
}=0A=
=0A=
CoreVideoControls_Timeline.changeEvent =3D function(val) {=0A=
	CNNPlaylistManager.getInstance().controller.amScrubbing =3D false;=0A=
	CNNPlaylistManager.getInstance().controller.doneTimelineScrubbing(val);=0A=
}=0A=
=0A=
/* 	**********************************************=0A=
=0A=
	End		-	Timeline =0A=
	Start 	- 	Volume Button=0A=
=0A=
	********************************************** */=0A=
=0A=
function CoreVideoControls_VolumeButton() { }=0A=
=0A=
CoreVideoControls_VolumeButton.prototype.setVolumeButton =3D =
function(val) {=0A=
	this.buttons['volume'].isMuted =3D false;=0A=
	if (val < 0.3333 ) {=0A=
		$('volumeLayer').className =3D =
this.buttons['volume'].classes['disabled'];=0A=
	} else if (val >=3D 0.3333 && val < 0.6666) {=0A=
		$('volumeLayer').className =3D =
this.buttons['volume'].classes['activeOff'];=0A=
	} else if (val >=3D 0.6666) {=0A=
		$('volumeLayer').className =3D =
this.buttons['volume'].classes['activeOn'];=0A=
	}=0A=
	CNNPlayer.getActivePlayer().handleEvent('volumeChanged');=0A=
}=0A=
=0A=
CoreVideoControls_VolumeButton.init =3D function() {=0A=
	// place the volume mutted button=0A=
	CNNPlaylistManager.getInstance().controller.buttons['volume'].isMuted =
=3D false;=0A=
	CNNPlaylistManager.getInstance().controller.buttons['volume'].lastDrop =
=3D 0;=0A=
	var divObj =3D document.createElement('div');=0A=
	divObj.setAttribute('id','volumeLayer');=0A=
	divObj.className =3D =
CNNPlaylistManager.getInstance().controller.buttons['volume'].classes['di=
sabled'];=0A=
	divObj.onclick =3D function() { =
CNNPlaylistManager.getInstance().controller.buttons['volume'].clickEvent(=
); }=0A=
	=
CNNPlaylistManager.getInstance().controller.parentDiv.appendChild(divObj)=
;=0A=
}=0A=
=0A=
CoreVideoControls_VolumeButton.clickEvent =3D function() {=0A=
	var c =3D CNNPlaylistManager.getInstance().controller;=0A=
	if (c.buttons['volume'].isMuted) {=0A=
		=
c.scrubbers['volume'].scrubberPointer.setValue(c.buttons['volume'].lastDr=
op);=0A=
		c.setVolumeButton(c.buttons['volume'].lastDrop);=0A=
	} else {=0A=
		c.buttons['volume'].lastDrop =3D =
c.scrubbers['volume'].scrubberPointer.value;=0A=
		c.scrubbers['volume'].scrubberPointer.setValue(0);=0A=
		c.setVolumeButton(0);=0A=
		c.buttons['volume'].isMuted =3D true;=0A=
	}=0A=
}=0A=
=0A=
/* 	**********************************************=0A=
=0A=
	End		-	Volume Button =0A=
	Start 	- 	Volume Scrubber=0A=
=0A=
	********************************************** */=0A=
=0A=
function CoreVideoControls_VolumeScrubber() { }=0A=
=0A=
CoreVideoControls_VolumeScrubber.slideChangeEvent =3D function(val) {=0A=
	CNNPlaylistManager.getInstance().controller.setVolumeButton(val);=0A=
}=0A=
=0A=
CoreVideoControls_VolumeScrubber.init =3D function() {=0A=
	// place the background layer for the handle=0A=
	var divObj =3D document.createElement('div');=0A=
	divObj.setAttribute('id','volumeTrackBackground');=0A=
	divObj.className =3D =
CNNPlaylistManager.getInstance().controller.scrubbers['volume'].classes['=
trackBackground'];=0A=
	=
CNNPlaylistManager.getInstance().controller.parentDiv.appendChild(divObj)=
;=0A=
=0A=
	// create the handle encloser=0A=
	var divObj =3D document.createElement('div');=0A=
	divObj.setAttribute('id','volumeHandlerBacker');=0A=
	divObj.className =3D =
CNNPlaylistManager.getInstance().controller.scrubbers['volume'].classes['=
handlerBacker'];=0A=
	=
CNNPlaylistManager.getInstance().controller.parentDiv.appendChild(divObj)=
;=0A=
	=0A=
	// create the handle=0A=
	var divObj =3D document.createElement('div');=0A=
	divObj.setAttribute('id','volumeHandler');=0A=
	divObj.className =3D =
CNNPlaylistManager.getInstance().controller.scrubbers['volume'].classes['=
handlerEnabled'];=0A=
	$('volumeHandlerBacker').appendChild(divObj);=0A=
=0A=
	=
CNNPlaylistManager.getInstance().controller.scrubbers['volume'].scrubberP=
ointer =3D new Control.Slider('volumeHandler', 'volumeHandlerBacker', {=0A=
		onSlide: =
CNNPlaylistManager.getInstance().controller.scrubbers['volume'].slideEven=
t,=0A=
		onChange: =
CNNPlaylistManager.getInstance().controller.scrubbers['volume'].changeEve=
nt=0A=
	});=0A=
}=0A=
=0A=
/* 	**********************************************=0A=
=0A=
	End		-	Volume Scrubber=0A=
	Start 	- 	Time and Duration=0A=
=0A=
	********************************************** */=0A=
=0A=
function CoreVideoControls_Clock() { }=0A=
=0A=
CoreVideoControls_Clock.prototype.calculateTime =3D function(val) {=0A=
	if ($('timeLayer')) {=0A=
	if (val > 59) {=0A=
		var minutes =3D Math.floor(val / 60);=0A=
		seconds =3D (val % 60);=0A=
		var seconds =3D val - (60 * minutes);=0A=
		if (seconds < 10) seconds =3D ('' + "0") + seconds;=0A=
		return (minutes + ":" + seconds);=0A=
	} else {=0A=
		if (val < 10) val =3D ('' + "0") + val;=0A=
		return ("0:" + val);=0A=
	}=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Clock.prototype.setDuration =3D function(val) {=0A=
	if ($('timeLayer')) {=0A=
	if ( val ) {=0A=
		this.duration =3D val;=0A=
		$('durationLayer').innerHTML =3D this.calculateTime(val);=0A=
	}=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Clock.prototype.setTime =3D function(val) {=0A=
	if ($('timeLayer')) {=0A=
	$('timeLayer').innerHTML =3D this.calculateTime(val);=0A=
	if (this.duration !=3D null && this.amScrubbing =3D=3D false) {=0A=
		=
this.scrubbers['timeline'].scrubberPointer.setValueExternally(val/this.du=
ration);=0A=
	}=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Clock.prototype.resetTimeDuration =3D function() {=0A=
	if ($('timeLayer')) {=0A=
	this.setTime(0);=0A=
	this.setDuration(0);=0A=
	}=0A=
}=0A=
=0A=
CoreVideoControls_Clock.init =3D function() {=0A=
	var divObj =3D document.createElement('div');=0A=
	divObj.setAttribute('id','timeLayer');=0A=
	divObj.className =3D =
CNNPlaylistManager.getInstance().controller.clocks['time and =
duration'].classes['time'];=0A=
	=
CNNPlaylistManager.getInstance().controller.parentDiv.appendChild(divObj)=
;=0A=
	$('timeLayer').innerHTML =3D "0:00";=0A=
=0A=
	var divObj =3D document.createElement('div');=0A=
	divObj.setAttribute('id','sepLayer');=0A=
	divObj.className =3D =
CNNPlaylistManager.getInstance().controller.clocks['time and =
duration'].classes['sep'];=0A=
	=
CNNPlaylistManager.getInstance().controller.parentDiv.appendChild(divObj)=
;=0A=
	$('sepLayer').innerHTML =3D "/";=0A=
=0A=
	var divObj =3D document.createElement('div');=0A=
	divObj.setAttribute('id','durationLayer');=0A=
	divObj.className =3D =
CNNPlaylistManager.getInstance().controller.clocks['time and =
duration'].classes['duration'];=0A=
	=
CNNPlaylistManager.getInstance().controller.parentDiv.appendChild(divObj)=
;=0A=
	$('durationLayer').innerHTML =3D "0:00";=0A=
}=0A=
=0A=
/* 	**********************************************=0A=
=0A=
	End		-	Time and Duration =0A=
	Start 	- 	add<object> abstracts=0A=
=0A=
	********************************************** */=0A=
=0A=
CoreVideoControls.prototype.addButton =3D =
function(buttonName,buttonInit,disabledClass,activeOffClass,activeOnClass=
,clickEvent) {=0A=
	this.buttons[buttonName] =3D new =
CoreVideoControls.Button(disabledClass,activeOffClass,activeOnClass,click=
Event);=0A=
	this.initList[this.initList.length] =3D buttonInit;=0A=
}=0A=
=0A=
CoreVideoControls.prototype.addClock =3D =
function(clockName,clockInit,timeClass,durationClass,sepClass) {=0A=
	this.clocks[clockName] =3D new =
CoreVideoControls.Clock(timeClass,durationClass,sepClass);=0A=
	this.initList[this.initList.length] =3D clockInit;=0A=
}=0A=
=0A=
CoreVideoControls.prototype.addScrubber =3D =
function(scrubberName,scrubberInit,trackBackground,trackBuffer,handlerBac=
ker,handlerDisabled,handlerEnabled,slideEvent,changeEvent) {=0A=
	this.scrubbers[scrubberName] =3D new =
CoreVideoControls.Scrubber(trackBackground,trackBuffer,handlerBacker,hand=
lerDisabled,handlerEnabled,slideEvent,changeEvent);=0A=
	this.initList[this.initList.length] =3D scrubberInit;=0A=
}=0A=
=0A=
CoreVideoControls.inheritAll =3D function() {=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=
/* 	**********************************************=0A=
=0A=
	End 	- 	add<object> abstracts=0A=
	Start 	- 	<object> abstracts=0A=
=0A=
	********************************************** */=0A=
=0A=
CoreVideoControls.Button =3D =
function(disabledClass,activeOffClass,activeOnClass,clickEvent) {=0A=
	this.classes =3D new Array();=0A=
	this.classes['disabled'] =3D disabledClass;=0A=
	this.classes['activeOff'] =3D activeOffClass;=0A=
	this.classes['activeOn'] =3D activeOnClass;=0A=
	this.clickEvent =3D clickEvent;=0A=
}=0A=
=0A=
CoreVideoControls.Clock =3D function(time,duration,sep) {=0A=
	this.classes =3D new Array();=0A=
	this.classes['time'] =3D time;=0A=
	this.classes['duration'] =3D duration;=0A=
	this.classes['sep'] =3D sep;=0A=
}=0A=
=0A=
CoreVideoControls.Scrubber =3D =
function(trackBackground,trackBuffer,handlerBacker,handlerDisabled,handle=
rEnabled,slideEvent,changeEvent) {=0A=
	this.classes =3D new Array();=0A=
	this.classes['trackBackground'] =3D trackBackground;=0A=
	this.classes['trackBuffer'] =3D trackBuffer;=0A=
	this.classes['handlerBacker'] =3D handlerBacker;=0A=
	this.classes['handlerEnabled'] =3D handlerEnabled;=0A=
	this.classes['handlerDisabled'] =3D handlerDisabled;=0A=
	this.slideEvent =3D slideEvent;=0A=
	this.changeEvent =3D changeEvent;=0A=
}=0A=
=0A=
Control.Slider.prototype.setValueExternally =3D function(sliderValue, =
handleIdx){=0A=
	if(!this.active) {=0A=
		this.activeHandleIdx =3D handleIdx || 0;=0A=
		this.activeHandle    =3D this.handles[this.activeHandleIdx];=0A=
		this.updateStyles();=0A=
	}=0A=
	handleIdx =3D handleIdx || this.activeHandleIdx || 0;=0A=
	if(this.initialized && this.restricted) {=0A=
		if((handleIdx>0) && (sliderValue<this.values[handleIdx-1]))=0A=
			sliderValue =3D this.values[handleIdx-1];=0A=
		if((handleIdx < (this.handles.length-1)) && =
(sliderValue>this.values[handleIdx+1]))=0A=
			sliderValue =3D this.values[handleIdx+1];=0A=
	}=0A=
	sliderValue =3D this.getNearestValue(sliderValue);=0A=
	this.values[handleIdx] =3D sliderValue;=0A=
	this.value =3D this.values[0]; // assure backwards compat=0A=
	=0A=
	this.handles[handleIdx].style[this.isVertical() ? 'top' : 'left'] =3D =0A=
	this.translateToPx(sliderValue);=0A=
	=0A=
	this.drawSpans();=0A=
}=0A=
=0A=
CoreVideoControls.inheritAll(CoreVideoControls,CoreVideoControls_Play,Cor=
eVideoControls_Pause,CoreVideoControls_Embed,CoreVideoControls_Share,Core=
VideoControls_Fullscreen,CoreVideoControls_Timeline,CoreVideoControls_Vol=
umeButton,CoreVideoControls_VolumeScrubber,CoreVideoControls_Clock);=0A=

------=_NextPart_000_0000_01C908F8.678A5380--

