From: <Saved by Microsoft Internet Explorer 5>
Subject: Google Teams Up With Cell Industry
Date: Sun, 16 Dec 2007 14:12:59 -0500
MIME-Version: 1.0
Content-Type: multipart/related;
	type="text/html";
	boundary="----=_NextPart_000_0000_01C83FED.C3179200"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3198

This is a multi-part message in MIME format.

------=_NextPart_000_0000_01C83FED.C3179200
Content-Type: text/html;
	charset="Windows-1252"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.washingtonpost.com/wp-dyn/content/article/2007/11/05/AR2007110500434_pf.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>Google Teams Up With Cell Industry</TITLE>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dwindows-1252">
<META content=3D"" name=3Dkeywords></META>
<META=20
content=3D"Google made its first major foray into the wireless industry =
yesterday with an announcement that it would partner with cellphone =
carriers, makers and software developers to create a new system for =
mobile phones, a crucial move as it seeks to expand its advertising =
empire."=20
name=3Ddescription></META>
<SCRIPT =
src=3D"http://media3.washingtonpost.com/wp-srv/ad/ad_v2.js"></SCRIPT>

<SCRIPT language=3Djavascript>=0A=
<!--=0A=
thisNode =3D 'technology';=0A=
commercialNode =3D'technology';=0A=
// -->=0A=
</SCRIPT>

<SCRIPT language=3DJavaScript>var =
SA_Message=3D"SACategory=3D"+'technology';</SCRIPT>

<SCRIPT language=3Djavascript=20
src=3D"http://media3.washingtonpost.com/wp-srv/ad/ad_configurations_artic=
le_v2.js"></SCRIPT>

<SCRIPT language=3Djavascript=20
src=3D"http://media3.washingtonpost.com/wp-srv/popjs/popupCampaignClasses=
.js"></SCRIPT>

<SCRIPT>var adTemplate =3D templateConfigs[PRINTER_FRIENDLY];</SCRIPT>

<SCRIPT>var adTemplate =3D =
templateConfigs[PRINTER_FRIENDLY_FLEX];</SCRIPT>
<LINK media=3Dprint=20
href=3D"http://media3.washingtonpost.com/wp-srv/css/article/pf.css"=20
rel=3Dstylesheet>
<META content=3D"MSHTML 6.00.2900.3243" name=3DGENERATOR></HEAD>
<BODY>
<SCRIPT language=3Djavascript>=0A=
<!--=0A=
// OMNITURE VARIABLES=0A=
var wp_photo_gallery =3D '';=0A=
var wp_photo_name =3D '';=0A=
var wp_search_keywords =3D '';=0A=
var wp_search_type =3D '';=0A=
var wp_sectionfront =3D '';=0A=
var wp_content_type =3D 'article' ;=0A=
var wp_content_id =3D 'AR2007110500434' ;=0A=
var wp_headline =3D ('') ? '' : 'Google Teams Up With Cell Industry' ;=0A=
var wp_page_name =3D 'wp - article - ' + wp_content_id + ' - Google =
Teams Up With Cell Industry' ;=0A=
var wp_section =3D 'technology'.split('/')[0] ;=0A=
var wp_subsection =3D ('technology'.indexOf('/') !=3D -1 ) ? =
'technology'.replace(/\//g,' - ') : '' ;=0A=
var wp_author =3D 'Kim Hart' ;=0A=
var wp_page_num =3D '' ;=0A=
var wp_hierarchy =3D 'technology'.replace(/\//g,'|')+'|articles' ;=0A=
var wp_application =3D ('') ? 'partner - ' : '' ;=0A=
var wp_source =3D 'Post' ;=0A=
var wp_blog_name =3D '' ;=0A=
var wp_events =3D (wp_page_num =3D=3D 1) ? 'event4' : '' ;=0A=
// -->=0A=
</SCRIPT>
<!-- SiteCatalyst code version: H.7.Copyright 1997-2006 Omniture, Inc. =
More info available athttp://www.omniture.com -->
<SCRIPT language=3DJavaScript=20
src=3D"http://media.washingtonpost.com/wp-srv/javascript/omniture/s_code.=
js"></SCRIPT>

<SCRIPT language=3DJavaScript>=0A=
<!--=0A=
/* SiteCatalyst code version: H.7.Copyright 1997-2006 Omniture, Inc. =
More info available athttp://www.omniture.com */=0A=
/* You may give each page an identifying name, server, and channel on =
the next lines. */=0A=
=0A=
if (typeof(wp_section) !=3D "undefined")=0A=
{=0A=
	wp_section =3D wp_section.replace(/\//, " - ");=0A=
}=0A=
if (typeof(wp_subsection) !=3D "undefined")=0A=
{=0A=
	wp_subsection =3D wp_subsection.replace(/\//, " - ");=0A=
}=0A=
/* need to test */=0A=
=0A=
if (typeof(wp_page_name) !=3D "undefined")=0A=
{=0A=
	s.pageName=3Dwp_page_name.replace(/<[a-zA-Z\/][^>]*>/g,"");=0A=
=0A=
	//remove session id=0A=
	s.pageName=3Ds.pageName.replace(/\;jsessionid\=3D.{23}/g,"");=0A=
}=0A=
else=0A=
{=0A=
	s.pageName=3D"wp - " + document.location.pathname + " - " + =
document.title;=0A=
=0A=
	//remove html=0A=
	s.pageName=3Ds.pageName.replace(/<[a-zA-Z\/][^>]*>/g,"");=0A=
=0A=
	//remove session id=0A=
	s.pageName=3Ds.pageName.replace(/\;jsessionid\=3D.{23}/g,"");=0A=
=0A=
	//var doc_url =3D document.location.href;=0A=
=0A=
	//if (doc_url.indexOf("ac2/wp-dyn?")>0)=0A=
	//{=0A=
	//	s.prop50=3Ddoc_url.substr(doc_url.indexOf("ac2/wp-dyn?")+10);=0A=
	//}=0A=
}=0A=
=0A=
if(typeof(wp_channel) !=3D "undefined")=0A=
{=0A=
	s.channel=3D(wp_channel.indexOf("wp - ")>=3D0)?wp_channel:"wp - " + =
wp_channel;=0A=
}=0A=
else if(typeof(wp_section) !=3D "undefined")=0A=
{=0A=
	s.channel=3D(wp_section.indexOf("wp - =
")>=3D0)?wp_section.split('/')[0]:"wp - " + wp_section.split('/')[0];=0A=
}=0A=
else if (typeof(wp_hierarchy) !=3D "undefined")=0A=
{=0A=
	s.channel=3D(wp_hierarchy.indexOf("wp - =
")>=3D0)?wp_hierarchy.split('|')[0]:"wp - " + wp_hierarchy.split('|')[0];=0A=
}=0A=
else=0A=
{=0A=
	s.channel=3D"wp - nocategory";=0A=
}=0A=
=0A=
s.server=3D"washingtonpost.com";=0A=
s.pageType=3D"";=0A=
if (typeof(wp_sectionfront) !=3D "undefined")=0A=
{=0A=
	wp_sectionfront=3Dwp_sectionfront.toLowerCase();=0A=
	s.prop1=3D(wp_sectionfront.indexOf("wp - =
")>=3D0||wp_sectionfront.length =3D=3D 0)?wp_sectionfront:"wp - " + =
wp_sectionfront;=0A=
}=0A=
if (typeof(wp_subsection) !=3D "undefined")=0A=
{=0A=
	wp_subsection =3D wp_subsection.toLowerCase();=0A=
	s.prop2=3D(wp_subsection.indexOf("wp - ")>=3D0||wp_subsection.length =
=3D=3D 0)?wp_subsection:"wp - " + wp_subsection;=0A=
}=0A=
if (typeof(wp_content_type) !=3D "undefined")=0A=
{=0A=
	s.prop3=3Dwp_content_type.toLowerCase();=0A=
}=0A=
if (typeof(wp_source) !=3D "undefined")=0A=
{=0A=
	s.prop4=3Dwp_source.toLowerCase();=0A=
}=0A=
else=0A=
{=0A=
	s.prop4=3D"washingtonpost.com";=0A=
}=0A=
=0A=
if (typeof(wp_author) !=3D "undefined")=0A=
{=0A=
	s.prop5=3Dwp_author.toLowerCase();=0A=
}=0A=
if (typeof(wp_search_keywords) !=3D "undefined")=0A=
{=0A=
	s.prop6=3Dwp_search_keywords.toLowerCase();=0A=
}=0A=
if (typeof(wp_search_type) !=3D "undefined")=0A=
{=0A=
	s.prop7=3Dwp_search_type.toLowerCase();=0A=
}=0A=
s.prop8=3D"";=0A=
s.prop9=3D"";=0A=
s.prop10=3D"";=0A=
s.prop11=3D"";=0A=
if (typeof(wp_content_id) !=3D "undefined")=0A=
{=0A=
	s.prop12=3Dwp_content_id;=0A=
	if ( typeof(wp_application) !=3D "undefined" && wp_application )=0A=
	{=0A=
	      s.prop13 =3D "" ;=0A=
	}=0A=
	if (typeof(wp_headline) !=3D "undefined" && wp_content_id !=3D "")=0A=
	{=0A=
		s.prop13=3Dwp_headline + " - " + wp_content_id;=0A=
	}=0A=
}=0A=
if (typeof(wp_page_num) !=3D "undefined")=0A=
{=0A=
	s.prop14=3Dwp_page_num;=0A=
}=0A=
if (typeof(wp_printed) !=3D "undefined") {=0A=
	s.prop19=3D"printed page";=0A=
}=0A=
if (typeof(wp_search_result_count) !=3D "undefined")=0A=
{=0A=
	s.prop21=3Dwp_search_result_count;=0A=
}=0A=
if (typeof(wp_story_id) !=3D "undefined")=0A=
{=0A=
	s.prop22=3Dwp_story_id;=0A=
}=0A=
if (typeof(wp_blog_name) !=3D "undefined")=0A=
{=0A=
	s.prop25=3Dwp_blog_name;=0A=
}=0A=
if (typeof(wp_application) !=3D "undefined")=0A=
{=0A=
	s.prop32=3Dwp_application;=0A=
}=0A=
function getUserName()=0A=
{=0A=
	var username;=0A=
	if (document.cookie.indexOf("wpniuser") !=3D -1)=0A=
	{=0A=
	    var start =3D (document.cookie.indexOf("wpniuser") + 9);=0A=
	    var end =3D   (document.cookie.indexOf(";",start)) =3D=3D -1 ? =
document.cookie.length : document.cookie.indexOf(";",start);=0A=
		username =3D document.cookie.substring(start,end);=0A=
	}=0A=
	return username;=0A=
}=0A=
=0A=
s.prop41=3DgetUserName();=0A=
=0A=
/* E-commerce Variables */=0A=
s.campaign=3D"";=0A=
s.state=3D"";=0A=
s.zip=3D"";=0A=
if ( typeof(wp_events) !=3D "undefined" ) {=0A=
	s.events =3D (typeof s.events !=3D 'undefined' && s.events) ? =
s.events+','+wp_events : wp_events ;=0A=
} else {=0A=
	s.events=3D"";=0A=
}=0A=
s.products=3D"";=0A=
s.purchaseID=3D"";=0A=
s.eVar1=3D"";=0A=
s.eVar2=3D"";=0A=
s.eVar3=3D"";=0A=
s.eVar4=3D"";=0A=
s.eVar5=3D"";=0A=
s.eVar6=3D"";=0A=
s.eVar7=3D"";=0A=
s.eVar8=3D"";=0A=
s.eVar9=3D"";=0A=
s.eVar10=3D"";=0A=
/* Hierarchy Variables */=0A=
if (typeof(wp_hierarchy) !=3D "undefined")=0A=
{=0A=
	s.hier1=3D wp_hierarchy.toLowerCase();=0A=
}=0A=
else=0A=
{=0A=
	s.hier1=3D"nocategory";=0A=
}=0A=
=0A=
s.hier2=3D"washingtonpost.com|" + s.hier1;=0A=
=0A=
function setWpStoryIdForOmniture( wp_story_id ) {=0A=
	s.prop22 =3D wp_story_id ;=0A=
}=0A=
/************* DO NOT ALTER ANYTHING BELOW THIS LINE ! **************/=0A=
var s_code=3Ds.t();if(s_code)document.write(s_code)=0A=
//-->=0A=
</SCRIPT>

<SCRIPT language=3DJavaScript>=0A=
<!--=0A=
if(navigator.appVersion.indexOf('MSIE')>=3D0)document.write(unescape('%3C=
')+'\!-'+'-')=0A=
//-->=0A=
</SCRIPT>
<!--/DO NOT REMOVE/--><!-- End SiteCatalyst code version: H.7. -->
<STYLE>#pfmnav {
	BACKGROUND: #0d3159; MARGIN-BOTTOM: 15px; FONT: 11px Arial; COLOR: =
#fff; TEXT-DECORATION: none
}
#pfmnav .pad {
	PADDING-RIGHT: 6px; PADDING-LEFT: 6px; PADDING-BOTTOM: 6px; WIDTH: =
760px; PADDING-TOP: 6px
}
#pfmnav A {
	FONT-WEIGHT: bold; COLOR: #fff; TEXT-DECORATION: none
}
.wp_pipe {
	FONT-WEIGHT: normal
}
</STYLE>
<A href=3D"http://www.washingtonpost.com/?nav=3Dpf"><IMG height=3D30=20
alt=3Dwashingtonpost.com=20
src=3D"http://media.washingtonpost.com/wp-srv/ssi/globalnav/wpdotcom_190x=
30.gif"=20
width=3D190 vspace=3D2 border=3D0></A>=20
<DIV id=3Dpfmnav>
<DIV class=3Dpad><A =
href=3D"http://www.washingtonpost.com/?nav=3Dpf">NEWS</A> <SPAN=20
class=3Dwp_pipe>|</SPAN> <A=20
href=3D"http://www.washingtonpost.com/wp-dyn/content/opinions/?nav=3Dpf">=
OPINIONS</A>=20
<SPAN class=3Dwp_pipe>|</SPAN> <A=20
href=3D"http://www.washingtonpost.com/wp-dyn/content/sports/?nav=3Dpf">SP=
ORTS</A>=20
<SPAN class=3Dwp_pipe>|</SPAN> <A=20
href=3D"http://www.washingtonpost.com/wp-dyn/content/artsandliving/?nav=3D=
pf">ARTS=20
&amp; LIVING</A> <SPAN class=3Dwp_pipe>|</SPAN> <A style=3D"FONT-WEIGHT: =
normal"=20
href=3D"http://www.washingtonpost.com/wp-dyn/content/liveonline/?nav=3Dpf=
">Discussions</A>=20
<SPAN class=3Dwp_pipe>|</SPAN> <A style=3D"FONT-WEIGHT: normal"=20
href=3D"http://www.washingtonpost.com/wp-dyn/content/photo/?nav=3Dpf">Pho=
tos &amp;=20
Video</A> <SPAN class=3Dwp_pipe>|</SPAN> <A style=3D"FONT-WEIGHT: =
normal"=20
href=3D"http://www.washingtonpost.com/wp-dyn/content/artsandliving/citygu=
ide/?nav=3Dpf">City=20
Guide</A> <SPAN class=3Dwp_pipe>|</SPAN> <A=20
href=3D"http://www.washingtonpost.com/wp-srv/admin/classifieds/?nav=3Dpf"=
>CLASSIFIEDS</A>=20
<SPAN class=3Dwp_pipe>|</SPAN> <A=20
href=3D"http://www.washingtonpost.com/wl/jobs/home?nav=3Dpf">JOBS</A> =
<SPAN=20
class=3Dwp_pipe>|</SPAN> <A=20
href=3D"http://www.washingtonpost.com/wp-dyn/content/cars/?nav=3Dpf">CARS=
</A> <SPAN=20
class=3Dwp_pipe>|</SPAN> <A=20
href=3D"http://www.washingtonpost.com/wp-dyn/content/realestate/?nav=3Dpf=
">REAL=20
ESTATE</A> </DIV></DIV>
<DIV>
<DIV style=3D"PADDING-LEFT: 17px; FLOAT: right">
<SCRIPT>=0A=
<!--=0A=
document.write('<div id=3D"toolbox_ad_right">') ;=0A=
// -->=0A=
</SCRIPT>
<!--/wp-adv/ssi/toolbox/article/right/index.html -->
<SCRIPT language=3Djavascript type=3Dtext/javascript>=0A=
<!--=0A=
=0A=
if(typeof commercialNode =3D=3D 'undefined') commercialNode =3D 'news';=0A=
if(typeof now =3D=3D 'undefined') now =3D '04180000';=0A=
=0A=
if ( now < '04300000' )=0A=
{=0A=
 document.write('<s\cript language=3D"javascript" =
type=3D"text/javascript" =
src=3D"http://ad.doubleclick.net/adj/wpni.'+commercialNode+';ad=3Dlogo;or=
d=3D'+Math.floor(Math.random() * 1000000)+'?"></script>');=0A=
 }=0A=
//-->=0A=
</SCRIPT>

<SCRIPT>=0A=
<!--=0A=
document.write('</div>') ;=0A=
if ( ( adTemplate & TOOLBOX_RIGHT ) =3D=3D TOOLBOX_RIGHT )=0A=
{=0A=
if ( document.getElementById )=0A=
document.getElementById('toolbox_ad_right').style.display=3D'block' ;=0A=
}=0A=
// -->=0A=
</SCRIPT>

<SCRIPT>=0A=
<!--=0A=
if ( show_doubleclick_ad && ( adTemplate & BIGBOX_FLEX ) =3D=3D =
BIGBOX_FLEX  )=0A=
{=0A=
document.write('<div style=3D"margin-top:4px; =
margin-bottom:4px;clear:left;">') ;=0A=
document.writeln ('<div><img =
src=3D"http://media3.washingtonpost.com/wp-srv/hp/img/ad_label_leftjust.g=
if" alt=3D"ad_icon" width=3D"100" height=3D"13" border=3D"0"/></div>' );=0A=
}=0A=
// -->=0A=
</SCRIPT>

<SCRIPT>=0A=
if ( show_doubleclick_ad && ( adTemplate & BIGBOX_FLEX ) =3D=3D =
BIGBOX_FLEX  )=0A=
{=0A=
placeAd('ARTICLE',commercialNode,5,'!category=3Dmicrosoft;',true) ;=0A=
}=0A=
</SCRIPT>

<SCRIPT language=3Djavascript>=0A=
<!--=0A=
if ( show_doubleclick_ad && ( adTemplate & BIGBOX_FLEX ) =3D=3D =
BIGBOX_FLEX  )=0A=
{=0A=
document.write('</div>') ;=0A=
}=0A=
// -->=0A=
</SCRIPT>
</DIV>
<STYLE>.correction {
	MARGIN-TOP: 8px; FONT-SIZE: 11px; MARGIN-BOTTOM: 8px; PADDING-BOTTOM: =
10px; COLOR: #333333; PADDING-TOP: 10px; BORDER-BOTTOM: #cccccc 1px =
solid; FONT-FAMILY: arial,sans-serif
}
.correction STRONG {
	TEXT-TRANSFORM: uppercase; COLOR: #cc0000
}
</STYLE>

<DIV style=3D"MARGIN-RIGHT: 165px"></DIV><FONT size=3D+2><B>Google Teams =
Up With=20
Cell Industry</B></FONT><BR>
<P><FONT size=3D-1>By Kim Hart<BR>Washington Post Staff =
Writer<BR>Tuesday,=20
November 6, 2007; D01<BR></FONT>
<P>
<P><A=20
href=3D"http://www.washingtonpost.com/ac2/related/topic/Google+Inc.?tid=3D=
informline"=20
target=3D"">Google</A> made its first major foray into the wireless =
industry=20
yesterday with an announcement that it would partner with cellphone =
carriers,=20
makers and software developers to create a new system for mobile phones, =
a=20
crucial move as it seeks to expand its advertising empire.</P>
<P>Unlike <A=20
href=3D"http://financial.washingtonpost.com/custom/wpost/html-qcn.asp?dis=
pnav=3Dbusiness&amp;mwpage=3Dqcn&amp;symb=3DAAPL&amp;nav=3Del"=20
target=3D"">Apple</A>'s iPhone, Google's project does not involve =
designing a new=20
device. Instead, it plans to offer a free software system that would =
make it=20
easier to surf the Web on phones and allow most cellphones to work more =
like=20
computers. The system is designed to try to overcome the challenges of=20
navigating the Web on a small device and to encourage the cellphone =
industry to=20
liberalize what it has allowed customers to do with their phones. A =
greater=20
audience would mean more potential advertising dollars for companies =
like=20
Google.</P>
<P>The alliance is made up of nearly three-dozen companies, including <A =

href=3D"http://projects.washingtonpost.com/post200/2007/NXTL/" =
target=3D"">Sprint=20
Nextel</A>, T-Mobile, <A=20
href=3D"http://www.washingtonpost.com/ac2/related/topic/QUALCOMM+Inc.?tid=
=3Dinformline"=20
target=3D"">Qualcomm</A> and <A=20
href=3D"http://www.washingtonpost.com/ac2/related/topic/Motorola+Inc.?tid=
=3Dinformline"=20
target=3D"">Motorola</A>, to design the system, which will be available =
to=20
software developers next week and to customers using specially equipped=20
cellphones in the second half of next year. Although the 34 partners =
said they=20
support Google's software, not all have formally committed to using it. =
The=20
final agreements are most likely to involve revenue-sharing =
arrangements.</P>
<P>The agreement could signal enormous change for the wireless industry =
and may=20
have regulatory implications for Google, which has brought its campaign =
for more=20
accessible cellphones to Washington in recent months. It also spells a =
strategic=20
shift for carriers Sprint and T-Mobile, which are trying to keep pace =
with=20
larger rivals as wireless consumers demand increasingly sophisticated=20
services.</P>
<P>Google says its new cellphone technology, Android, is also part of =
the firm's=20
attempt to force wireless carriers and cellphone makers to give up some =
of their=20
control over which features and services consumers can access with their =

cellphones, often at sluggish Web-browsing speeds. Google's end game is =
to=20
create a system in which cellphone service is subsidized through ads, =
similar to=20
the way many Web services are offered now, the company has said.</P>
<P>Google-powered software would loosen those restraints by allowing =
thousands=20
of companies to develop new services, such as social-networking sites =
and mobile=20
video portals, without needing permission from carriers -- a move that =
Google's=20
partners say would accelerate the growth of new mobile features.</P>
<P>Putting Google's popular search, e-mail and <A=20
href=3D"http://www.washingtonpost.com/ac2/related/topic/YouTube+Inc.?tid=3D=
informline"=20
target=3D"">YouTube</A> video applications in front of more cellphone =
users=20
positions the company to tap into a growing market for mobile =
advertising.=20
Search on cellphones generates $30 million in revenue in the United =
States and=20
is expected to grow to $1.4 billion by 2012, according to Kelsey Group, =
a market=20
research firm.</P>
<P>"A vast majority of people do their local business face-to-face or =
over the=20
phone, said John Gauntt, <A=20
href=3D"http://www.washingtonpost.com/ac2/related/topic/eMarketer+Inc.?ti=
d=3Dinformline"=20
target=3D"">eMarketer</A> senior analyst. "That's a huge swath of =
business that=20
occurs outside the World Wide Web."</P>
<P>Google's plans could threaten the mobile dominance of <A=20
href=3D"http://www.washingtonpost.com/ac2/related/topic/Yahoo!+Inc.?tid=3D=
informline"=20
target=3D"">Yahoo</A>'s search platform and <A=20
href=3D"http://financial.washingtonpost.com/custom/wpost/html-qcn.asp?dis=
pnav=3Dbusiness&amp;mwpage=3Dqcn&amp;symb=3DMSFT&amp;nav=3Del"=20
target=3D"">Microsoft</A>'s operating system, which enjoy lucrative =
arrangements=20
with carriers and cellphone manufacturers, according to some =
analysts.</P>
<P>"This is the most direct challenge that Google has offered Microsoft =
to=20
date," said technology analyst Roger Kay of Endpoint Technologies =
Associates.=20
"Microsoft has to take a real deep breath and decide what it is going to =
do=20
here."</P>
<P>But Andy Rubin, Google's director of mobile platforms, said cellphone =

advertising still has a long way to go.</P>
<P>"You won't see a completely ad-driven cellphone based on this for =
quite some=20
time," he said yesterday during a conference call.</P>
<P>Meanwhile, the strategy comes with significant risks for carriers =
like Sprint=20
and T-Mobile, which are betting that by giving up control over what =
consumers do=20
with their phones, they will attract more subscribers.</P>
<P>Albert Lin, managing director of American Technology Research, said =
those=20
carriers could end up cannibalizing their own offerings -- like ring =
tones, for=20
example -- with those developed by outside parties. But Sprint and =
T-Mobile face=20
steep competition from larger rivals AT&amp;T and <A=20
href=3D"http://www.washingtonpost.com/ac2/related/topic/Verizon+Communica=
tions+Inc.?tid=3Dinformline"=20
target=3D"">Verizon Wireless</A>, so they are willing to try a new =
strategy, he=20
said.</P>
<P>Sprint is in a particularly weak competitive position, having lost =
more than=20
1 million customers over the past year.</P>
<P>Sprint acknowledged that joining Google's alliance could challenge =
some of=20
its existing arrangements with other companies such as Pandora, which =
streams=20
music to Sprint's cellphones, and Loopt, which lets customers locate and =
chat=20
with friends, said John Garcia, Sprint's senior vice president of =
product=20
development.</P>
<P>"It's a step we've taken quite conscientiously, but we're betting =
that giving=20
customers the full array of what's available to them will be more =
profitable=20
than restricting them to the things we choose for them," Garcia =
said.</P>
<P>Google's approach differs from <A=20
href=3D"http://www.washingtonpost.com/ac2/related/topic/Apple+Inc.?tid=3D=
informline"=20
target=3D"">Apple</A>'s approach with its iconic iPhone. While Google is =
actively=20
encouraging programmers to build applications for its new system, Apple =
has been=20
reluctant to open its iPhone to outside developers, partly because of =
security=20
concerns.</P>
<P>Yesterday's announcement could also affect Google's position in a =
federal=20
auction of the last big swath of valuable wireless airwaves. Google =
successfully=20
lobbied regulators to require networks built with those airwaves to =
allow=20
cellphone subscribers to use a greater selection of applications.</P>
<P>Now that it has enticed two national carriers to open their networks =
to its=20
technology, Google has less incentive to make a multibillion-dollar bid =
for=20
airwaves so it could build its own wireless network, said Blair Levin, =
an=20
analyst with Stifel Nicolaus.</P>
<P>"The larger strategic goal is to make their applications available on =
all=20
networks," he said of Google.</P>
<P><I>Staff writer Mike Musgrove contributed to this report.</I></P>
<P><I></I></P>
<P></P>
<SCRIPT>=0A=
var comments_url =3D =
"http://www.washingtonpost.com/wp-dyn/content/article/2007/11/05/AR200711=
0500434_Comments.html" ;=0A=
var article_id =3D "AR2007110500434" ;=0A=
</SCRIPT>
<SPAN class=3Ddisplay:none; id=3DpubDate value=3D"1194325200000"=20
name=3D"pubDate"></SPAN><LINK media=3Dall=20
href=3D"http://www.washingtonpost.com/wp-srv/css/commentslinks.css"=20
rel=3Dstylesheet>
<SCRIPT>=0A=
<!--=0A=
var COMMENTS_ALLOWED =3D false ;=0A=
var COMMENTS_ACTIVE =3D false ;=0A=
=0A=
var comments_period =3D ( typeof wp_article !=3D "undefined" && typeof =
wp_article.comments_period !=3D "undefined" && ( =
wp_article.comments_period !=3D "" || wp_article.comments_period =3D=3D =
"0" ) && wp_article.comments_period >=3D 0 ) ? =
wp_article.comments_period : 3 ;=0A=
=0A=
articleCommentsUrl =3D document.location.href;=0A=
if ( typeof comments_url =3D=3D 'undefined' ) {=0A=
	var article_pathname =3D document.location.pathname;=0A=
	var comments_url =3D =
article_pathname.split(".")[0]+"_Comments."+article_pathname.split(".")[1=
];=0A=
}=0A=
if ( typeof article_id =3D=3D 'undefined' ) {=0A=
	var article_id =3D articleCommentsUrl.split("/").pop(); =0A=
	var article_id =3D article_id.split(".")[0];=0A=
	article_id =3D article_id.replace(/(.*)_(\d+|\w+)/, =
function(match,submatch1,offset,string) { return submatch1; } ) ;=0A=
}=0A=
=0A=
function checkDaysOld(daysOld) {=0A=
	var todayString =3D 'December 16, 2007';=0A=
	var today =3D new Date(todayString).getTime();=0A=
=0A=
	var daysOld =3D 86400 * daysOld * 1000;=0A=
	var pubDate =3D document.getElementById("pubDate");=0A=
	if(pubDate !=3D null) {=0A=
		pubDate =3D pubDate.getAttribute("value");=0A=
		return (today - pubDate > daysOld )?true:false;=0A=
	} else {=0A=
		return false;=0A=
	}=0A=
}=0A=
=0A=
if ( typeof thisNode =3D=3D 'undefined' )=0A=
	thisNode =3D 'admin' ;=0A=
cmt_ancestor =3D thisNode.split('/')[0] ;=0A=
=0A=
// (black list) && (white list) of ancestors and sections goes here=0A=
if ( 	!( thisNode.match(/\/wires$/) || =
thisNode.match(/^artsandliving\/(entertainmentguide|entertainmentnews|tra=
vel\/index)($|\/)/) || thisNode.match(/^business\/(portfolio)($|\/)/) || =
thisNode.match(/^metro\/(obituaries)($|\/)/) )=0A=
			&&=0A=
		( =
thisNode.match(/^(artsandliving|business|cars|education|health|jobs|media=
|metro|nation|realestate|religion|politics|sports|technology|world|kidspo=
st|media)($|\/)/) || =
thisNode.match(/^print\/(washpostmagazine|style|sundayarts|sundaysource)(=
$|\/)/) || thisNode.match(/^opinions($|\/)/) || =
thisNode.match(/^opinion\/(columns)($|\/)/) ))=0A=
{=0A=
	COMMENTS_ALLOWED =3D true ;=0A=
	if(!checkDaysOld(comments_period) ) {=0A=
		document.write("<style>#ArticleCommentsWrapper =
{display:block};</style>"); =0A=
		COMMENTS_ACTIVE =3D true ;=0A=
	} else {=0A=
		document.write('<p class=3D"posted"><a href=3D"'+comments_url+'">View =
all comments</a> that have been posted about this article.</p>');=0A=
	}=0A=
} else {=0A=
	document.write('');=0A=
}=0A=
// -->=0A=
</SCRIPT>

<SCRIPT>=0A=
<!--=0A=
function getDisplayUserName()=0A=
{=0A=
	var output =3D 'Your washingtonpost.com User ID' ;=0A=
	//check to the see if the user is signed in=0A=
	if (document.cookie.indexOf("wpniuser") !=3D -1)=0A=
	{=0A=
		var start =3D (document.cookie.indexOf("wpniuser") + 9) ;=0A=
		var end =3D (document.cookie.indexOf(";",start)) =3D=3D -1 ? =
document.cookie.length : document.cookie.indexOf(";",start) ;=0A=
		cookieuser =3D document.cookie.substring(start,end) ;=0A=
=0A=
		// show their username and registration links=0A=
		if ( cookieuser.indexOf("@") !=3D -1)=0A=
			cookieuser =3D cookieuser.substring(0,cookieuser.indexOf("@")) ;=0A=
=0A=
		// cookieuser =3D cookieuser.trim() ;=0A=
		if ( cookieuser )=0A=
			output +=3D (', '+cookieuser+',') ;=0A=
	}=0A=
	output +=3D ' will be displayed with your comment.' ;=0A=
	return output ;=0A=
}=0A=
// -->=0A=
</SCRIPT>

<DIV id=3DArticleCommentsWrapper>
<DIV class=3Dcomments>
<DIV class=3Dhdr>
<DIV style=3D"FLOAT: left">
<P class=3Daction>Post a Comment</P></DIV>
<DIV style=3D"FLOAT: right">
<SCRIPT =
src=3D"http://www.washingtonpost.com/wp-srv/ad/comments_box.js"></SCRIPT>=

</DIV>
<DIV style=3D"CLEAR: both"></DIV><BR>
<SCRIPT>=0A=
document.write('<p class=3D"posted"><a href=3D"'+comments_url+'">View =
all comments</a> that have been posted about this article.</p>');=0A=
</SCRIPT>

<DIV id=3Dcomment-data-pluck>
<P style=3D"WIDTH: 400px"></P>
<SCRIPT language=3DJavaScript>=0A=
try{document.domain=3D"washingtonpost.com";}catch(e){};=0A=
</SCRIPT>

<SCRIPT language=3Djavascript=20
src=3D"http://community.washingtonpost.com/ver1.0/SiteLifeProxy"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT>=0A=
</SCRIPT>

<SCRIPT =
language=3DJavaScript>gSiteLife.CommentsInput("ExternalResource",article_=
id,comments_url);</SCRIPT>
</DIV>
<DIV class=3Dclearboth></DIV>
<P>Comments that include profanity or personal attacks or other =
inappropriate=20
comments or material will be removed from the site. Additionally, =
entries that=20
are unsigned or contain "signatures" by someone other than the actual =
author=20
will be removed. Finally, we will take steps to block users who violate =
any of=20
our posting standards, terms of use or privacy policies or any other =
policies=20
governing this site. Please review the <A=20
href=3D"http://www.washingtonpost.com/wp-srv/liveonline/delphi/delphirule=
s.htm">full=20
rules</A> governing commentaries and discussions. You are fully =
responsible for=20
the content that you post.</P>
<DIV class=3Dclearboth></DIV></DIV></DIV></DIV><!-- start the copyright =
for the articles -->
<DIV id=3DarticleCopyright style=3D"CLEAR: both" =
align=3Dcenter>=A9&nbsp;2007&nbsp;The=20
Washington Post Company</DIV><!-- end the copyright for the aricles =
--><!-- start the copyright for the secions --><!-- end the copyright =
for the secions -->
<SCRIPT>=0A=
<!--=0A=
document.write('<div id=3D"ad_links_bottom" align=3D"center">') ;=0A=
// -->=0A=
</SCRIPT>

<DIV align=3Dcenter>
<SCRIPT=20
src=3D"http://www.washingtonpost.com/wp-adv/adproducts/advertisingLinks/a=
dvertisingLinks_v2.js"></SCRIPT>
</DIV>
<SCRIPT language=3Djavascript>=0A=
<!--=0A=
document.write('</div>') ;=0A=
if (! ( ( adTemplate & AD_LINKS_BOTTOM ) =3D=3D AD_LINKS_BOTTOM ) )=0A=
{=0A=
if ( document.getElementById )=0A=
document.getElementById('ad_links_bottom').style.display=3D'none' ;=0A=
}=0A=
// -->=0A=
</SCRIPT>
</DIV>
<SCRIPT =
src=3D"http://media.washingtonpost.com/wp-srv/javascript/resize.js"=20
type=3Dtext/javascript></SCRIPT>
<!-- Begin Revenue Science Code -->
<DIV style=3D"DISPLAY: none">
<SCRIPT src=3D"http://media.washingtonpost.com/wp-adv/dm/dm_client.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT type=3Dtext/javascript>=0A=
if (document.domain !=3D '') {=0A=
rs =3D (typeof thisNode !=3D 'undefined')?thisNode.split("/")[0] + "/" + =
thisNode.split("/")[1]:null;=0A=
 =0A=
if (typeof thisNode !=3D 'undefined' && rs.split("/")[1] =3D=3D =
'undefined') rs =3D thisNode.split("/")[0];=0A=
 =0A=
DM_addToLoc("thisNode",rs);=0A=
DM_tag();=0A=
 =0A=
var DM_CSID =3D "J05531";=0A=
var DM_UIDS =3D 3;=0A=
var DM_CHN =3D document.location.hostname;=0A=
var DM_PIX =3D "pix01.revsci.net";=0A=
var DM_BPIX =3D "pix01.revsci.net";=0A=
var DM_UIDD =3D document.location.hostname;=0A=
 =0A=
DM_addToLoc("thisNode", rs);=0A=
 =0A=
//transmits reg info to revSci=0A=
//if(static_wpatc)=0A=
if(typeof(static_wpatc) !=3D "undefined" && static_wpatc)=0A=
{=0A=
 WPATCargArray =3D static_wpatc.split(';')=0A=
 for(x=3D0;x<WPATCargArray.length-2;x++)=0A=
 {=0A=
  =
DM_addToLoc(WPATCargArray[x].split('=3D')[0],WPATCargArray[x].split('=3D'=
)[1]);=0A=
 }=0A=
}=0A=
=0A=
DM_tag();=0A=
}=0A=
</SCRIPT>
<NOSCRIPT><IMG=20
src=3D"http://pix01.revsci.net/J05531/a3/0/0/0/0/0/0/0/0/0/noscript.gif">=
</NOSCRIPT>=20
</DIV><!-- End Revenue Science Code -->
<SCRIPT language=3DJavaScript=20
src=3D"http://media.washingtonpost.com/wp-srv/javascript/omniture/omnitur=
e-utils.js"></SCRIPT>

<SCRIPT>try{echoOmniture()}catch(e){}</SCRIPT>

<SCRIPT=20
src=3D"http://media.washingtonpost.com/wp-srv/javascript/placeSiteMetrix.=
js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT type=3Dtext/javascript>placeSiteMetrix();</SCRIPT>
</BODY></HTML>

------=_NextPart_000_0000_01C83FED.C3179200
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://media.washingtonpost.com/wp-srv/ssi/globalnav/wpdotcom_190x30.gif

R0lGODlhvgAeAOYAAP///wAAAP8AAP88PP/Nzf9FRUZGRv/j48HBwTExMZmZmf/z8/9RUf8bGw0N
DfHx8eHh4f/Fxf80NPz8/NbW1lpaWrGxsRoaGvr6+qamptnZ2eXl5f+srI2Njb29vf/d3YGBgWlp
aZ2dncnJyVFRUSAgIP98fP9bW0pKSs7Ozn5+fv+EhP8qKhISEqysrCwsLF5eXhAQED4+Pv8hIf+b
mwICAv8FBQUFBU1NTQcHB/8UFDk5OWVlZXV1dWFhYTU1NZKSktLS0nFxcf/t7fT09B0dHYWFhf9l
ZQEBAUJCQv7+/szMzAkJCYqKiv+MjP9qahYWFm1tbf/o6P8LC+7u7sbGxvj4+AsLC6mpqf+yshQU
FCgoKOjo6Li4uP/S0pWVlVZWVlRUVKCgoKKiov+lpSoqKhgYGNDQ0Ovr67W1tfb29tzc3IiIiCQk
JCYmJt/f37u7u/+8vB4eHurq6v90dEBAQP9LS3p6ei8vL/+Wlv/8/MPDwzw8PP/X1//4+P8BASH5
BAAAAAAALAAAAAC+AB4AAAf/gACCg4SFhoeIghNqahOJj5CRkpOUlZaXmJmRGjs7FJqgoaKjpKWX
KQEBI6asra6vsINBLS0piBMbsbq7vLGztYdvKCVjvcbHyJa/toYZqQbJ0dLTAMuHnExfox4hIo7U
kUoiIcXgutaHXMyiKgF13+aJEwYBOPG+tOuwTQEk8PeGJoAJAAPgK3QYJv2bpCBABSUBIyUEZeXR
QhgBeGiC+EgPJBdNxBRaAmRkBzYPAHThkcTAHSJUmiggIkgMDj49qFRrcYGCCxR1wigQJE4FBABi
OnBBAEYGDiNqCHlgaUAIlwcyASAwkOMHGyyCuBgJYwBHj3UQmowhosBAnQoZ/wSp+cLGyhwhLUPs
MbSBDYkkOECsKeSChAweQWomyMGng4WFHE4MGHCCBkclkSczoOERgB8yJvpkKSDhBAEAB55MfiJF
UIcAOaoQCtEi5SB6OwAAuZEqlQx+UHLx6/0DwxsoRQb2DtADwAQ5AeAAaBOA6/IK3zpcWf7jdQsA
FQJAyRGghMoXy8UbEdQlwAUS6ZsAQOMgwB30vVvIH5SB+vISIvBXQ35LAMCEeLwlAI8UBQjg4IN9
ALAAAw8+OMAHErIggIYP6kCDBA/+McACAFBRBkGDoLFFAEMJYgF5XVgwYBIidAGCGTfcsAUVXGiR
g0xtGPDAGxeQF0IXY9ATQ/9iK3oAAB4DkmCBCwPVAFYGA+6gABwgFFFDDiUQIcYLDmxBAhtVXBBA
Cz0AcQceqXSg1RU13NCDB2PsUB4XE0BxYBFAeNABnDeABQAc9V3Q5h3U3eACAEToKUQGL7yAAABC
lODAC2A08c0CIP7BwAorDCCAFwA0KMAAJqxghwB/sLCAHiAKUEAWJtjwoAlZnAArGYI0pMUnADQU
AAoTDYQDEQkcW5EgFMiBxAtWpBGAGTpxIcgZZmTEERdFsAgAek42a48gGPwQgAoTqMuHToKsUQYS
WwwmgkOCoBCAG6sIggZ8UKAxQn13DHJGCwF0AcAFOg4Wlro7YDBBswlQwNH/G822AZMWNzj5wEQA
+BBACIWs4KAThDhxAAd/CGACRwA4ASvKIErA0REOmiCIHjMIcAKJRKAXhXMyBMBEDU5WkeMeVSDh
wF6EvPbCAxt0u0M5ABzMhMJEJREACOMGUG4AIhHFQwBRaJADE04S0pAbR/FDQjU1MBEXIRBAN8YS
NwAjyAPNihQu1i46cAMFFCDBBNQGQ5GwEl5vAQTMAqE4iBIsiGqIHqYWYAiFEjAowAqDcADraYI8
IYAdQwgChHhUBBFAAiGMDEAISCQBwGs/RCVVAG1oK4IWAdTAhwUAaBCDFokNMhDY5AKQABLID1IB
ElEgEEAZ8MriQBFx9wOA/wfA01SIyCosUUMJuQxStEhQOODwIA+4ER0W7iwEQNFgI1ACEgHAwxcq
UrmCDOIDU/gDBzanAwHQwBAs00EfCvCHBwqCAAKwQWsEQQdRtQ5SzerA2RTAhQsUwQUrQp4RAiAD
mAmCfMETRApgcKAAYOEN+SBEGL4WtnJRjxDhEYL2EmC+QVCAJ+GbG/m24EIAKEEI61JfCY7iPrIB
QAtQoOIgJoCeLtzLACAjir6EIAgI3MFxGZmAEgZiQCd6wQZ/yAIDBbDAQsRBAA2YoADyMIgIZHCD
AKCDABjwwWIhgWHgu10AwmUAR4zBPfMThDO20D5BVEFfCUjDBfwmiB1CT/9s0vuh9dAWhL41bxAW
AF4SAVAF8fRrEBjQUwekqMX9WVFN0iHECFqAhBRoDwqRnE8JxDWINfBgQAViIyEW0IA/kM4QM/jD
E5poAgHM4AMU5KMgIvAHDXJEkISk3/RsB4A9kCcA1VtDt5pDCK+9QFspaB8qyjCGInASAJ7sYSir
J4jwwGACKyLZ5UhAr1VSAT0oeJYgVpiDINCSEO9bGBLCcL4AbOEBVlDTQwhxthwMBgLEskIbfqhM
QlDomoTwwhBMZoM4EIIADTwC5/bYxz8OApyFLNaa+jUB+BhAoWdzgArWYIUqwKcGL5hAQypGBSjK
AAFmuGc+ozc9foInAGD/AEAPUiGENWCgCgPRURIdca8AJMECGoBDCMhTAVYiYYoQvWV9KkABDKQg
BAMCGwDYkIowpIECXQiPfbTSAi3AAQNNYEIOzgAAZS7gCCf4wBs3RIM+EMAJOiAAMwUwhRVEgAB5
aOAUDqAEEGkTANz0JgcHmVMiyCE3RMHS3f4Gn0Wi5wb6ioEaXFAfKNjPhmtIxSsB4LXmOE5hapot
APSlOyLs0D0vmFEL4NoOGUykB7xxT3ZRoBNr5eANhFjRUC7ABAPcwAF4QFg/zIeBKPSGYQFAQgUS
MoJw3aBZI1MjPeyRBwcdAQAc0FU3W3YqAMShgQ5qWTeB5YcGCABlTvSj/wAOMAicDSCnunnUIJpq
G/oJoQxX2FQXKJCECugEDkmIARNeUBII4AAHGiCECmQgEh/IwBY8kAHjAAACGahgECrAwxWu8AIL
IOAGcjhKBnwMDywYQA4OgMIOmsCRFMgADNoaRBRk0AUMqGkJGdhCDlqQABUotCYGKMIVLpAEbQxC
AySAwg1K8BLn9Hg9EWiADoAFAALYwcHWPMEHP3CCnuGRAQSAiB+OMAA5CsILAyjAEDiSB1aRiBD6
SwQVRhCEJg4iBSMo4igmoIElKIEIVTiDI1pZBPAmYg1VCEKmETGHLwPACiNYQhgLQYE9nLIQb9hD
lg8h2UJIIQIRwDAAhn2AbCkowdMGIcU8cuDmQbiAXt0jBRrUJJtoe5sX+pJBIWqnO1ZsOwDd/ra6
X2EB3sAAAW+gABtiEIAAmZvb6863K9jAmxvYMxXYaQV9ArBjfRtcFC5IQhEucIEEGGHWoaBCAi6g
j4NbHBRz2EAlXTEBLkBg1xcPuchHfohAAAA7

------=_NextPart_000_0000_01C83FED.C3179200
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://pix01.revsci.net/J05531/a3/0/0/0/0/0/0/0/0/0/noscript.gif

R0lGODlhAQABAIAAANvf7wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==

------=_NextPart_000_0000_01C83FED.C3179200
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
Content-Location: http://media3.washingtonpost.com/wp-srv/css/article/pf.css

.print_hide {
	DISPLAY: none
}
#pfmnav {
	DISPLAY: none
}

------=_NextPart_000_0000_01C83FED.C3179200
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.washingtonpost.com/wp-srv/css/commentslinks.css

.comments A:link {
	COLOR: #0c4790; TEXT-DECORATION: underline
}
.comments A:visited {
	COLOR: #0c4790; TEXT-DECORATION: underline
}
.comments A:hover {
	COLOR: #cc0000; TEXT-DECORATION: underline
}
.comments A:active {
	COLOR: #cc0000; TEXT-DECORATION: underline
}
.comments {
	FONT: 11px arial; WIDTH: 100%
}
.comments .hdr {
	BORDER-RIGHT: #ccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #ccc 1px =
solid; PADDING-LEFT: 5px; MARGIN-BOTTOM: 15px; PADDING-BOTTOM: 5px; =
BORDER-LEFT: #ccc 1px solid; LINE-HEIGHT: 1.2; PADDING-TOP: 5px; =
BORDER-BOTTOM: #ccc 1px solid; BACKGROUND-COLOR: #eee
}
.comments .hdr H3 {
	MARGIN: 0px; FONT: bold 13px Arial, Helvetica, sans-serif; COLOR: #c00
}
.comments P {
	PADDING-RIGHT: 0px; PADDING-LEFT: 7px; PADDING-BOTTOM: 10px; MARGIN: =
0px; PADDING-TOP: 0px
}
.comments P.posted {
	FONT-WEIGHT: bold
}
.comments P.action {
	FONT: bold 13px Arial, Helvetica, sans-serif; COLOR: #c00
}
.comments LABEL {
	FONT-WEIGHT: bold
}
.comments LABEL STRONG {
	FONT-WEIGHT: normal
}
.comments FORM {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.comments #comment-data {
	PADDING-RIGHT: 15px; FLOAT: left; WIDTH: 180px; MARGIN-RIGHT: 15px; =
POSITION: relative; TEXT-ALIGN: left
}
.comments #comment-data-pluck {
	PADDING-RIGHT: 15px; PADDING-LEFT: 5px; FLOAT: left; WIDTH: 400px; =
POSITION: relative; BACKGROUND-COLOR: #eeeeee; TEXT-ALIGN: left
}
.comments TEXTAREA#comment-text {
	WIDTH: 370px
}
.comments .clearboth {
	CLEAR: both
}
.comments P.posted {
	FONT-SIZE: 11px; COLOR: #999999; FONT-FAMILY: arial
}
.entry P.posted {
	FONT-SIZE: 11px; COLOR: #999999; FONT-FAMILY: arial
}
#blurb P {
	MARGIN-TOP: 0px; FONT: 13px/140% Arial, Helvetica, sans-serif
}
#blurb .byline {
	FONT-WEIGHT: bold; COLOR: #333
}
.comments .entry {
	BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium =
none; BORDER-BOTTOM: medium none
}
.comments .entry P {
	BORDER-RIGHT: medium none; BORDER-TOP: medium none; FONT: 14px/140% =
"Times New Roman", Times, serif; BORDER-LEFT: medium none; COLOR: #333; =
BORDER-BOTTOM: medium none
}
.comments .entry .posted {
	PADDING-RIGHT: 7px; PADDING-LEFT: 7px; MARGIN-BOTTOM: 15px; =
PADDING-BOTTOM: 7px; FONT: bold 11px Arial, Helvetica, sans-serif; =
COLOR: #999; PADDING-TOP: 0px; BORDER-BOTTOM: #999 1px dotted
}
P.postedLink {
	FONT: bold 11px/130% Arial, Helvetica, sans-serif; COLOR: #333
}
.comments .removeEntry {
	BORDER-RIGHT: #999 1px dotted; PADDING-RIGHT: 7px; BORDER-TOP: #999 1px =
dotted; PADDING-LEFT: 7px; PADDING-BOTTOM: 7px; MARGIN: 7px; =
BORDER-LEFT: #999 1px dotted; PADDING-TOP: 7px; BORDER-BOTTOM: #999 1px =
dotted
}
.comments .removeEntry P {
	BORDER-RIGHT: medium none; BORDER-TOP: medium none; FONT: 13px/140% =
"Times New Roman", Times, serif; BORDER-LEFT: medium none; COLOR: #333; =
BORDER-BOTTOM: medium none
}
.comments .removeEntry P.posted {
	BORDER-RIGHT: 0px; PADDING-RIGHT: 0px; BORDER-TOP: 0px; PADDING-LEFT: =
0px; PADDING-BOTTOM: 0px; FONT: bold 11px Arial, Helvetica, sans-serif; =
BORDER-LEFT: 0px; COLOR: #999; PADDING-TOP: 0px; BORDER-BOTTOM: 0px
}
.commentlinks {
	PADDING-BOTTOM: 7px; FONT: bold 11px Arial, Helvetica, sans-serif; =
WIDTH: 400px; COLOR: #666
}
.commentlinks A {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
#comments_error {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 3px; COLOR: #c00; PADDING-TOP: 3px
}
DIV.SL_StaffRecommends_Container {
	BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #000000 1px solid; =
FONT-WEIGHT: bold; FONT-SIZE: 10px; Z-INDEX: 4; BORDER-LEFT: #000000 1px =
solid; WIDTH: 340px; BORDER-BOTTOM: #000000 1px solid; FONT-FAMILY: =
Verdana; POSITION: absolute; BACKGROUND-COLOR: #cccccc; TEXT-ALIGN: left
}

------=_NextPart_000_0000_01C83FED.C3179200
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://media3.washingtonpost.com/wp-srv/ad/ad_v2.js

wpniDomain =3D 'washingtonpost.com';

function getQSValue( name )
{
	  var locString=3D(arguments[1])?arguments[1]:window.location.href;
//first test to see if the qs variable at all. if not, return null.
  var regex =3D new RegExp( "[\\?&;]"+name );
  var results =3D regex.exec( locString );
  if(!results) return null;
//ok, it's there. get the value.

  var regex =3D new RegExp( "[\\?&;]"+name+"=3D([^&#]*)" );
  var results =3D regex.exec( locString );
  return (results=3D=3Dnull)?"":results[1]
}

// BEGIN import rev. science segments
if (document.domain !=3D '')
{=09
	document.write('<s\cript type=3D"text/javascript" =
src=3D"http://js.revsci.net/gateway/gw.js?csid=3DJ05531"></s\cript>');
}
// END import rev. science segments


function doubleClickTestCode()
{
	if(typeof this.dctCodeValue =3D=3D 'undefined')
	{
		this.dctCodeValue =3D '';
		var queryResult =3D getQSValue('test_ads');
=09
		if(queryResult !=3D null)
		{
			this.dctCodeValue =3D 'kw=3Dtest_' + =
((queryResult!=3D'')?queryResult:'ads') + ';';=09
		}
	}
	return this.dctCodeValue
}

//hack for JF ads
=09
	if (location.href.indexOf('politicalads') !=3D -1) {thisNode =3D =
'politics'; commercialNode=3D'politics'}
=09
function getQueryVariable(variable)
{=20
=09
	var query =3D location.href.split('?')[1];=20
	if(!query)
	{
		return null
	}
	var vars =3D query.split("&");
	for (var i=3D0;i<vars.length;i++)
	{=20
		var pair =3D vars[i].split("=3D");=20
		if (pair[0] =3D=3D variable)
		{=20
		=09
			return pair[1];=20
		}=20
	}
	return null
}=20


function realEstateAreaId()
    {
    	if(typeof this.returnREAIValue =3D=3D 'undefined')
    	{
    		this.returnREAIValue =3D '';
	   		if(getQueryVariable('areaId'))
    		{
    			this.returnREAIValue =3D 'areaId=3D' + getQueryVariable('areaId') =
+ ";"
    		}
    		if(typeof hs !=3D 'undefined' && typeof hs.geo_area_id !=3D =
'undefined')
    		{
    			geo_area_id_array =3D hs.geo_area_id.split(';');
    			for(var x in geo_area_id_array)
    			{
    				if(typeof geo_area_id_array[x] =3D=3D 'string')
					{
						this.returnREAIValue +=3D 'areaId=3D' + geo_area_id_array[x] + ';'
					}
    			}
    		}
    	}
    	return this.returnREAIValue
    }

function popUnders()
{
	//these two variables control everything=09
	maxPer24 =3D 5;
	minutesBetween =3D 2;
	//end
	minuteInMillis =3D 60000;
	dayInMillis =3D 86400000;
	rightNow =3D new Date();
	rightNowNum =3D parseInt(rightNow.getTime());
	rightNowPlusDay =3D rightNowNum + dayInMillis;
	rightNowPlusYear =3D rightNowNum + (dayInMillis * 365);
	rightNowPlusDayString =3D new Date(rightNowPlusDay);
	rightNowPlusYearString =3D new Date(rightNowPlusYear);
	popUnderRetValue =3D ''
	=09
	if (getCookie('popUnderAds'))
	{=09
		cookieString=3DgetCookie('popUnderAds');
	=09
		cookieArray=3DcookieString.split('/');

		newCookieArray =3D new Array();
		newCookieArrayIndex =3D 0;=09
	=09
		for(var x=3D1;x<cookieArray.length+1;x++)
		{	var z =3D parseInt(rightNowNum) - parseInt(cookieArray[x]);
			if(z < dayInMillis)
			{=09
				newCookieArray[newCookieArrayIndex] =3D cookieArray[x];
				newCookieArrayIndex++;
				testOutputDate =3D new Date(parseInt(cookieArray[x]));
			}
		}
	=09
	=09
		var underDailyLimit =3D newCookieArray.length < maxPer24;
		var enufTimeSinceLast =3D rightNowNum - =
parseInt(newCookieArray[newCookieArray.length-1]) > (minutesBetween * =
minuteInMillis);
		var noPopOnLastPage=3DcookieString.match('popOnLast=3Dfalse/');
		newCookieString =3D "popOnLast=3Dfalse/";
	=09
		if((underDailyLimit && noPopOnLastPage && enufTimeSinceLast) || =
newCookieArray.length =3D=3D 0)
		{
			popUnderRetValue =3D 'ad=3Dpop';
			newCookieArray.push(rightNowNum);
			newCookieString =3D "popOnLast=3Dtrue/";
		}
		else
		{
		=09
		}
=09
	=09
		for(var x=3D0;x<newCookieArray.length;x++)
		{
			newCookieString +=3D newCookieArray[x] + '/';
		}
	=09
		newCookieString =3D =
newCookieString.substring(0,newCookieString.length-1);
		=
setCookie('popUnderAds',''+newCookieString+'',''+rightNowPlusYearString.t=
oString()+'','/','.washingtonpost.com','');

	}
	else
	{=09
		//make sure you can write a cookie at all
		=
setCookie('popUnderAds','*',''+rightNowPlusYearString.toString()+'','/','=
.washingtonpost.com','');
		if(!getCookie('popUnderAds'))
		{
			return '';
		}
		//if so, proceed
	=09
		=
setCookie('popUnderAds','popOnLast=3Dtrue/'+rightNowNum+'',''+rightNowPlu=
sYearString.toString()+'','/','.washingtonpost.com','');
		popUnderRetValue=3D'ad=3Dpop;'
	}
	return popUnderRetValue;
}

function isAnyOfTheseInTheUrl()
{
	var returnValue =3D false;
		for(var x=3D0;x<arguments.length;x++)
		{
			if(location.href.match(arguments[x]))
			{
				returnValue =3D true;
			}
		}
	return returnValue
}

function interstitials()
{=09
	if(typeof this.intReturnValue =3D=3D 'undefined' && =
isAnyOfTheseInTheUrl('washingtonpost.com') && =
!isAnyOfTheseInTheUrl('no_interstitials'))
	{
		popUnderVal =3D =
(!isAnyOfTheseInTheUrl('g=3D1','o=3D','sid=3D','reload=3Dtrue'))?popUnder=
s():'';
		this.intReturnValue =3D "dcopt=3Dist;" + popUnderVal;
	}
	else
	{
			this.intReturnValue =3D ''
	}
	return this.intReturnValue;
}


function getCookie(name) {
	var cookie =3D " " + document.cookie;
	var search =3D " " + name + "=3D";
	var setStr =3D null;
	var offset =3D 0;
	var end =3D 0;
	if (cookie.length > 0) {
		offset =3D cookie.indexOf(search);
		if (offset !=3D -1) {
			offset +=3D search.length;
			end =3D cookie.indexOf(";", offset)
			if (end =3D=3D -1) {
				end =3D cookie.length;
			}
			setStr =3D unescape(cookie.substring(offset, end));
		}
	}
	return(setStr);
}

function setCookie (name, value, expires, path, domain, secure) {
      document.cookie =3D name + "=3D" + escape(value) +
        ((expires) ? "; expires=3D" + expires : "") +
        ((path) ? "; path=3D" + path : "") +
        ((domain) ? "; domain=3D" + domain : "") +
        ((secure) ? "; secure" : "");
}

var debugAdCode =3D false;
var show_doubleclick_ad =3D true ;
if (document.domain =3D=3D 'www.shoplocal.com') thisNode =3D =
'shoplocal';
if (location.href.indexOf("debugAdCode")+1) debugAdCode =3D true ;
show_doubleclick_ad =3D (location.href.match('no_ads'))?false:true
if (typeof thisNode =3D=3D 'undefined') thisNode =3D (typeof adNode !=3D =
'undefined')?adNode:'technology';
if (typeof commercialNode =3D=3D 'undefined' || commercialNode =3D=3D =
'one') commercialNode =3D (typeof thisNode !=3D 'undefined' && thisNode =
!=3D 'one')?thisNode:'technology';



var _rs  =3D ''; // revenue science data
var _poe =3D ''; // point of entry
var _tc =3D 'tile'; // tiling category
var _cn =3D ''; // commercial node
var _an =3D false; // ad node
var _t =3D '';
var urlLoc =3D new String(document.location.href);



(typeof thisNode !=3D 'undefined')?_tn =3D thisNode:null;


blu =3D (typeof blu_name !=3D 'undefined')?true:false;


if (typeof commercialNode !=3D 'undefined' && commercialNode !=3D '') {

_cn =3D 'cn=3Dyes;pnode=3D'+thisNode.split("/")[0]+';';
_an =3D true;


}
var static_wpatc =3D getWPATCookie();

// changed on first call to placeAd
var firstTimeCalled =3D true ;
var firstTimeCalledNew =3D true ;
var adUniqueNumber =3D (typeof spec_ord !=3D =
'undefined')?spec_ord:Math.floor(Math.random() * 1000000000000000000);


var newsAncestorAsString =3D new String("") ;

// changed on first call to placeAd or when assertive is true
var adAncestor =3D new String() ;
var adNode =3D new String() ;
var adSite =3D new String() ;
var adZone =3D new String() ;
var adSiteZone =3D new String() ;
var adDir =3D new String() ;
var adArgs =3D 0 ;

function tileNum()
{
	this.tnReturnValue =3D (typeof this.tnReturnValue !=3D =
'undefined')?this.tnReturnValue+1:1;
	return this.tnReturnValue
}

function revSci()
{
	if (typeof rsinetsegs !=3D 'undefined' && typeof this.rsReturnValue =
=3D=3D 'undefined')
	{
		this.rsReturnValue =3D '';
		for(i=3D0;i<rsinetsegs.length;i++)
		{
			this.rsReturnValue +=3D =
"rs=3D"+rsinetsegs[i].replace("J05531_","j")+";"
		}
	}
	return this.rsReturnValue;
}

function spotCanceller(tileNum)
{
 return (location.href.match('no_spot'+tileNum))?true:false;
}

function placeAd(layer,node,kw,pos,dir,w,h,tile)
{
	if(spotCanceller(arguments[2])) return;
							=09
	if (typeof node =3D=3D 'undefined' || node =3D=3D 'one') node =3D =
(typeof thisNode !=3D 'undefined' && thisNode !=3D =
'one')?thisNode:'technology';
=09
	// 'Date Lab' & 'Making It' article hacks
	if (typeof wp_headline !=3D 'undefined' && wp_headline =3D=3D 'Making =
It'){ node =3D 'smallbiz/makingit' }
	if (typeof wp_headline !=3D 'undefined' && wp_headline.match('Date =
Lab')){ node =3D 'artsandliving/datelab' }

	// 'The Fix' politics blog
	if (document.location.href.match('thefix') && node =3D=3D =
'politics/fedpage') { node =3D 'politics/fedpage/thefix' }

	// 'Government Inc' business blog
	if (document.location.href.match('government-inc') && node =3D=3D =
'business') { node =3D 'business/govinc' }
=09
	// 'Opinions Leaders' blog
	var opLead =3D new =
Array('benchconference','capitol-briefing','sleuth','the-talk');
	var opNode =3D new Array('opinion/columns/blogs','politics/fedpage')
=09
	for(op=3D0;op<opLead.length;op++){
		for(opN in opNode)
		if (document.location.href.match(opLead[op]) && node =3D=3D =
opNode[opN] && now >=3D "11050000") { node =3D opNode[opN]+'/opleaders' =
}
	}
=09
	// Fed Diary blog
	if (thisNode.match('feddiary/fedpage')) { node +=3D '/feddiary' }
=09
=09

    node+=3D(node=3D=3D'washingtonpost.com')? ( '/hp' + ( ( =
location.href.match('reload=3Dtrue') )? 'refresh' : '') ) :'';


	=09
	if (show_doubleclick_ad)
	{
=09
		if (thisNode =3D=3D 'opinion/columns/politics/feddiary') {node =3D =
'opinion/politics/feddiary'}
=09


		heavy=3D"heavy=3Dn;"

		if (typeof document.referrer !=3D "undefined")
		{
			if (document.referrer =3D=3D '')=20
			{=09
				heavy=3D"heavy=3Dy;"
				=
setCookie('heavy','y',''+wpniPOE.toString()+'','/','.washingtonpost.com',=
'')
			}
		else
			{
				heavy=3D"heavy=3Dy;"
				=
setCookie('heavy','y',''+wpniPOE.toString()+'','/','.washingtonpost.com',=
'')
			}
		}

		// This is a temporary hack for Fantasy Jobs ( Chris Stith: added =
7/20/2006 )=20
		agent =3D navigator.userAgent.toLowerCase();
		if ((agent.indexOf('firefox') !=3D -1 || agent.indexOf('safari') !=3D =
-1) && node =3D=3D 'sports/fantasyjob' && kw =3D=3D 4)
		{ document.write('<div =
style=3D"position:absolute;top:353;padding-left:45;">')}


		=09
  		if (node.indexOf("/") =3D=3D -1) node +=3D "/" ;
		var na =3D =
[arguments[0],arguments[1],arguments[2],arguments[3],arguments[4]] ;
    	adArgs =3D 5 ;
    	platform =3D na[0] ;
    	//if (_an) {node =3D cleanNode(commercialNode)}
		//else node =3D cleanNode(na[1]) ;
		node =3D cleanNode(na[1]) ;
=09
		if (location.href.indexOf('http://www.uclick.com/client/wpc/wpdoc/') =
!=3D -1)
		{
			node =3D 'artsandliving/crosswords/sudoku'
		}


		if (node.indexOf("media") >=3D 0 || node.indexOf("gallery") >=3D 0) =
node =3D 'photo';

		//temp fix for email-friend problem
		if (node =3D=3D '') node =3D 'technology';
		//temp fix for contentconversion
		if (node =3D=3D 'contentconversion') node =3D 'nation';
		//temp fix for uncategorized
		if (node =3D=3D 'uncategorized') node =3D 'technology';
		if (node =3D=3D 'high schools') node =3D 'technology';
		if (node =3D=3D 'wizards') node =3D 'technology';
		if (node =3D=3D 'search/newssearch' && location.href.match("adv")) =
node =3D 'search/newsadvanced';

		tile =3D na[2] ;
		kw =3D na[3];
		flexdisplay =3D na[4] ;
=09
		pos =3D setPosition(tile);
		//turned off for multiple size switch 6/18/07
		//w =3D setWidth(tile); h =3D setHeight(tile); f =3D =
setFlexvalue(tile);

		// Fantasy Football one-off for Nissan
		oo_url =3D document.location.href;
		if (oo_url.indexOf("LI2005042101450") !=3D -1) kw=3D 'kw=3Dcruise;';=20
		if (oo_url.indexOf("DI2005083101900") !=3D -1) kw=3D 'kw=3Dredskins;'; =

		if (oo_url.indexOf("test_ads") !=3D -1) kw +=3D 'kw=3Dwpni_test;';
		if (oo_url.indexOf("smallbusiness101") !=3D -1) kw =3D =
'kw=3Dsmallbus101;';
		if (oo_url.indexOf("DI2005100501552") !=3D -1) kw=3D =
'kw=3Dsmallbus101;';
		if (oo_url.indexOf("DI2005100500899") !=3D -1) kw=3D =
'kw=3Dsmallbus101;';
		if (oo_url.indexOf("DI2005110101296") !=3D -1) kw=3D =
'kw=3Dsmallbus101;';
		if (oo_url.indexOf("DI2005102001378") !=3D -1) kw=3D =
'kw=3Dsmallbus101;';
		if (oo_url.indexOf("DI2005103101365") !=3D -1) kw=3D =
'kw=3Dsmallbus101;';
		if (oo_url.indexOf("DI2005102602804") !=3D -1) kw=3D =
'kw=3Dsmallbus101;';
		if (oo_url.indexOf("DI2005101100729") !=3D -1) kw=3D =
'kw=3Dsmallbus101;';
		if (oo_url.indexOf("welcome_to_post.html") !=3D -1) kw =3D =
'kw=3Dremix;';
		if (oo_url.indexOf("GA2006021301885_metaRefresher.htm") !=3D -1) kw =
=3D 'kw=3Dolympics;'
		if (oo_url.indexOf("/wp-srv/sports/interactives/olympics06/") !=3D -1) =
kw =3D 'kw=3Dolympics;'
		if (oo_url.indexOf("AR2005040701359") !=3D -1) kw =3D =
'kw=3Dmontgomery;';
		if (oo_url.indexOf("cherryblossom/06/") !=3D -1) kw =3D =
'kw=3Dcherryblossom;';
		if (oo_url.indexOf("onbalance") !=3D -1) kw =3D 'kw=3Donbalance;';
		if (tile =3D=3D 10){kw =3D 'kw=3Dshermans;';};
=09
		if (kw.indexOf(';') =3D=3D -1)
		{
			kw =3D kw + ';'
		}=09
=09
    	if ( firstTimeCalledNew )
		{
	  		adAncestor =3D getAdAncestor(node) ;
		 	adSite =3D getAdSite(adAncestor) ;
		  	adNode =3D getAdNode(node,adAncestor) ;
			adZone =3D getAdZone(adNode) ;
	  		adDir =3D getAdDir(node) ;
	  		firstTimeCalledNew =3D true;

			if (adZone)
	  			adSiteZone =3D adSite + "/" + adZone ;
			else
	  			adSiteZone =3D adSite ;
	  	}


		//this is where the old interstitial routine went--is backed up in =
oldinterstitial.js
=09
		//turned off for multiple size swith 6/18/07
		//(flexdisplay)?adSize =3D "":adSize =3D 'sz=3D'+w+'x'+h+';';

		passArticle =3D (platform.toLowerCase().indexOf("article") !=3D =
-1)?'article':'';
		page_a =3D (passArticle.indexOf("article") !=3D =
-1)?'page=3Darticle;':'page=3Dsection;';
		if (passArticle !=3D 'article' ) page_a =3D =
'page=3Dsection;front=3Dy;'
		//&& commercialNode.split("/").length =3D=3D 1
		if (typeof v2 !=3D 'undefined')
		{
			if ( typeof adTemplate !=3D 'undefined' && (( adTemplate & =
BANNER_FLEX_TOP ) =3D=3D BANNER_FLEX_TOP && ( adTemplate & =
BIG_FLEX_RIGHT ) =3D=3D BIG_FLEX_RIGHT) ) _t =3D (tile =3D=3D =
1)?'t=3Dy;':'';
		}
=09
		//var keyvalues =3D =
adSiteZone+";"+static_wpatc+inter_value+adDir+kw+"pos=3D"+pos+";"+adSize+=
setFlexvalue(tile)+_cn+_tc+"=3D"+tile+";ord=3D"+adUniqueNumber + "?" ;
=09
		dtile =3D (typeof dfpcomp =3D=3D =
'undefined')?'':"dfpcomp=3D"+dfpcomp+";";


		var exempt =3D "";
		if (thisNode =3D=3D 'nation' || thisNode.indexOf("nation/special") =
!=3D -1)
		{
			exempt =3D "!category=3Dsupremecourt;";
		}
		if (tile =3D=3D 20 && location.href.match('/article/'))
		{
			exempt +=3D "!c=3Dintrusive;";
		}
=09
		var fedpage =3D new =
Array('opinion/columns/politics/feddiary','opinion/columns/politics/kamen=
a','opinion/columns/politics/sarasohnj','opinion/columns/politics/lanec',=
'opinion/columns/politics/offcamera','politics/congress')

		for (i=3D0; i<fedpage.length; i++)
		{
			if (thisNode =3D=3D fedpage[i])
			{
				exempt =3D 'dir=3Dfedpage;'
			}
		}

		// wpid TEST!
		if(typeof(wpidTestCheck) =3D=3D 'undefined')
		{
			var url =3D document.location.href.split('?')[0];
			url =3D url.toLowerCase()
			var urlarray =3D url.split('/');
			var tail =3D urlarray[urlarray.length -1];
			if (tail.indexOf('nav=3D') !=3D -1)
			{
				tail =3D tail.substring(0,tail.indexOf('nav=3D'));
			}
			var illegals =3D =
['test_ads','debugAdCode','?test_ads','?debugadcode','wpidtest','?templat=
e_test','?','=3D','/','\\',':',';',',','*','(',')','&','$','%','@','!','^=
','+',' ','[',']','{','}','.html','.htm','.',];
			for (i=3D0;i<illegals.length;i++)
			{
				sRE =3D new RegExp('(\\' + illegals[i] + ')', 'g');
				tail =3D tail.replace(sRE,"");
			}
			if (tail =3D=3D 'index' || tail =3D=3D '')
			{
				tail =3D urlarray[urlarray.length -2];
			}
			var nodedump =3D thisNode.split('/');
			var wpidnode =3D '';
			for (i=3D0;i < nodedump.length;i++)
			{
				wpidnode +=3D nodedump[i];
			}
			wpid =3D 'wpid=3D'+wpidnode+'_'+tail;
			if (wpid.length > 55)
			{
				wpid =3D wpid.substring(0,55);
			}
			if (url.indexOf('?wpidtest') !=3D -1)
			{
				prompt('wpid',wpid);
			}
			wpidTestCheck =3D 1;
=09
			if(typeof wpid =3D=3D 'undefined')
			{
				wpid=3D''
			}
		=09
		=09
			//small biz hack
			sba =3D new =
Array('jobs_inside-job','liveonlinespecialsjobs_di2006102000737','liveonl=
inejobsslayterm_talk_di2006100900744','liveonlinespecialsjobs_di200610200=
0740','liveonlinespecialsjobs_di2006102000739','liveonlinespecialsjobs_di=
2006102000738','opinioncolumnsbusinessslayterm_ar2006101400332','jobs_ar2=
006102001235','jobs_success-stories','liveonline_smallbusiness101','liveo=
nline_di2005110101296','liveonlinespecialsjobs_di2006022700702','liveonli=
ne_di2005101100729','liveonline_di2005100500899','liveonline_di2005103101=
365','liveonline_di2005100501552','liveonline_di2005110101296','liveonlin=
ejobsslayterm_talk_di2005111601352','liveonline_di2005102001378','technol=
ogywashtech_ar2005112000918','opinioncolumnsbusinessslayterm_ar2005102900=
440','jobscareernews_ar2005111101484','jobscareernews_ar2005101401501','j=
obscareernews_ar2005101401472','jobs_ar2005100501786','jobscareernews_ar2=
005101000794');
			var sbatest=3Dwpidnode+'_'+tail;
			for(i in sba)
			{
				if(sbatest =3D=3D sba[i]){wpid+=3D';kw=3Dsmallbiz';}
			}
			//end small biz hack
		}
		//end wpid
		grp =3D '';
		if (location.href.indexOf('financial') !=3D -1) {grp =3D =
"grp=3Dfinancial;"}

		/*if(commercialNode=3D=3D'washingtonpost.com' && tile=3D=3D20)
		{=09
			tile =3D 15;
			pos =3D 'ad15';
		}*/

		if(tile=3D=3D99)
		{
			config['adServerURL'] =3D  "http://ad.doubleclick.net/pfadx/wpni." + =
node + ";";
			config['additionalAdTargetingParams'] =3D  ";" + static_wpatc +  =
heavy + 'ad=3Dvideo;' + grp + kw +  _rs + poe + ";";
=09
			if(location.href.match('debugAdCode'))
			{
				var output =3D "config['adServerURL']:" + config['adServerURL'] + =
"\n\r";
				output +=3D "config['additionalAdTargetingParams']:" + =
config['additionalAdTargetingParams'] + "\n\r";
				alert(output);
			} =20
		}
	=09
			if(wpid =3D=3D 'wpid=3Dpolitics_politics' && tile =3D=3D 6 && now < =
'03292359')
			{
				adSiteZone =3D 'wpni.politics/bigbox'
			}
	=09
		function setPos(argTile)
		{
			if(argTile=3D=3D'16' || argTile=3D=3D'6' || argTile=3D=3D'5')
			{
				return "pos=3Dad5;"
			}
			return "pos=3Dad" + tile + ";";
		}
		var thisTileVal =3D tileNum()
	=09
		if(tile =3D=3D 20 && location.href.match('/article/'))
		{
			adSiteZoneArray =3D adSiteZone.split('/');
			adSiteZone =3D '';
			for(var a =3D 0; a< adSiteZoneArray.length;a++)
			{
				adSiteZone +=3D adSiteZoneArray[a] + '/';
				if(a=3D=3D0) adSiteZone +=3D 'inlinead/';
			}
			adSiteZone =3D adSiteZone.substring(0,adSiteZone.length-1)
		}
		var keyvalues =3D adSiteZone + ";" + static_wpatc +  adDir + heavy + =
doubleClickTestCode() + interstitials() + realEstateAreaId() +  grp + kw =
+ setPos(tile) + dtile + setFlexvalue(tile) + _t + ((typeof revSci() =
!=3D 'undefined')?revSci():'') + _rs + poe + page_a + _cn + _tc + "=3D" =
+ thisTileVal + ";"+wpid+ ";"+exempt+"ord=3D" + adUniqueNumber + "?";
=09
		// end if (show_doubleclick_ad)

		// adSiteZone =3D wpni.site (if article is first param them site has =
aritlce appended to it.
		// static_wpatc =3D registration data
		// inter_value =3D interstitial value;
		// adDir =3D key values for the node
		// pos =3D ad position #.
		// adSize =3D size of ad;
		// f =3D flex display value;
		// _rs =3D revenue science values
		// _cn =3D commercial node;
		// _tc =3D tile category (tile v. ptile)
		// adUniqueNumber =3D random number=09
		var adCode =3D "" ;
		if(tile =3D=3D 20 && location.href.match('/article/'))
		{
		=09
			adCode +=3D ('<iframe width=3D"336" height=3D"280" frameborder=3D"0" =
scrolling=3D"no" marginwidth=3D"0" marginheight=3D"0" =
src=3D"http://ad.doubleclick.net/adi/'+keyvalues+'">');
			adCode +=3D ('</iframe>');

		}
		else
		{
			adCode +=3D ('<script language=3D"JavaScript1.1" =
src=3D"http://ad.doubleclick.net/adj/'+keyvalues+'">');
			adCode +=3D ('</script>');
		=09
		}
		if ( (typeof ceTag !=3D 'undefined') && (ceTag) ) adCode =3D '';
		if (debugAdCode) {  adCode +=3D debugTextArea(adCode); }
	=09
=09
		if(tile!=3D99)
		{
			if (tile =3D=3D 24)
			{=20
				document.writeln ('<div align=3D"left" style=3D"padding:6px 0px 4px =
0px"><img =
src=3D"http://media3.washingtonpost.com/wp-srv/hp/img/ad_label_leftjust.g=
if" alt=3D"ad_icon" width=3D"100" height=3D"13" border=3D"0"/></div>' ); =
=20
			}
			if (tile =3D=3D 7 && thisNode =3D=3D "artsandliving/cityguide")
			{
				document.write('<img =
src=3D"http://media.washingtonpost.com/wp-srv/hp/img/ad_label_vertical_sm=
all.jpg" border=3D"0" width=3D"14" height=3D"33">');
			}
			else if(tile =3D=3D 7 && thisNode !=3D "business" && =
(location.href.indexOf('?test_ads') !=3D -1))
			//else if(tile =3D=3D 7 || tile =3D=3D 24) // Turn on ad label for =
tile 24 ('save and share box')
		  	{=09
				document.write('<div style=3D"padding-top:10px"><img =
src=3D"http://media.washingtonpost.com/wp-srv/hp/img/ad_label_leftjust.gi=
f" border=3D"0" width=3D"100" height=3D"13" valign=3D"top"></div>');
		  	}
			if (document.domain =3D=3D 'washingtonpost.homescape.com' || =
document.domain =3D=3D 'washingtonpost.homehunter.com')
			{
				if (typeof sponsor !=3D 'undefined' && sponsor)
				{
					if (tile !=3D 5) document.write(adCode);
				}
				else document.write(adCode);
			}
			else document.write(adCode.toString());
		}
	=09

	}// end of show_doubleclick_ad test
=09
	firstTimeCalled =3D false ;
} //end of placeAd





function setPosition(tile)
{
  var p =3D "ad"+tile ;
  // document.write(p) ;
  if (tile =3D=3D 4 || tile =3D=3D 5 || tile =3D=3D 6) var p =3D "ad6";
  return p ;
}

function setWidth(tile)
{
  var wi ;
  if ( tile >=3D 1 && tile <=3D 1) { wi =3D "728"; } // top leaderboard
  else if ( tile >=3D 2 && tile <=3D 2 ) { wi =3D "728"; } // bottom =
leaderboard
  else if ( tile >=3D 3 && tile <=3D 3 ) { wi =3D "160"; } // skyscraper =
left only
  else if ( tile >=3D 4 && tile <=3D 4 ) { wi =3D "160"; } // skyscraper =
only
  else if ( tile >=3D 5 && tile <=3D 5 ) { wi =3D "300"; } // big box =
and skyscraper
  else if ( tile >=3D 6 && tile <=3D 6 ) { wi =3D "336"; } // =
skyscraper, big box and half page
  else if ( tile >=3D 7 && tile <=3D 7 ) { wi =3D "446"; } // feature =
bar
  else if ( tile >=3D 8 && tile <=3D 8 ) { wi =3D "336"; } // travel =
tile
  else if ( tile >=3D 9 && tile <=3D 9 ) { wi =3D "479"; } // rss tile
  else if ( tile >=3D 10 && tile <=3D 10 ) { wi =3D "336"; } // travel =
tile right
  else if ( tile >=3D 11 && tile <=3D 11 ) { wi =3D "120"; } // 120x60 =
tile
  else if ( tile >=3D 12 && tile <=3D 12 ) { wi =3D "260"; } // 260X30 =
tile
  else if ( tile >=3D 13 && tile <=3D 13 ) { wi =3D "300"; } // 300x190 =
tile
  else if ( tile >=3D 14 && tile <=3D 14 ) { wi =3D "300"; } // 300x45 =
tile
  else if ( tile >=3D 15 && tile <=3D 15 ) { wi =3D "120"; } // 120x240 =
tile
  else if ( tile >=3D 16 && tile <=3D 16 ) { wi =3D "336"; } // 120x240 =
tile
  else if ( tile >=3D 17 && tile <=3D 17 ) { wi =3D "88"; } // 88x31
  else if ( tile >=3D 18 && tile <=3D 18 ) { wi =3D "180"; } // 180x20
  else if ( tile >=3D 19 && tile <=3D 19 ) { wi =3D "336"; } // 336x35
  else if ( tile =3D=3D 20 ) { wi =3D "300"; } // big box=20
	else if ( tile >=3D 22 && tile <=3D 22 ) { wi =3D "110"; } // 110x90 =
tile
	else if ( tile >=3D 23 && tile <=3D 23 ) { wi =3D "446"; } // 446x45 =
blog feature bar
	else if ( tile >=3D 24 && tile <=3D 24 ) { wi =3D "208"; } // 208x40
	else if ( tile >=3D 25 && tile <=3D 25 ) { wi =3D "314"; } // 314x57
	else if ( tile >=3D 26 && tile <=3D 26 ) { wi =3D "336"; } // 336x60
	else if ( tile >=3D 27 && tile <=3D 27 ) { wi =3D "120"; } // 120x30
	else if ( tile >=3D 28 && tile <=3D 28 ) { wi =3D "180"; } // 180x31
	else if ( tile >=3D 29 && tile <=3D 29 ) { wi =3D "234"; } // 234x60
	else if ( tile >=3D 30 && tile <=3D 30 ) { wi =3D "293"; } // 293x100
	else if ( tile >=3D 31 && tile <=3D 31 ) { wi =3D "160"; } // 160x146
	else if ( tile >=3D 32 && tile <=3D 32 ) { wi =3D "336"; } // 336x200
=09
    //99 is for brightcove

/*TM 06/20/06 this hack recreates old tile 12 left sky for real estate =
area maps. if the url
contains areaId, which is the variable the RE maps use, then tile 12 is =
a sky*/
if (tile =3D=3D 12 && location.href.indexOf('areaId') !=3D -1) =
{wi=3D"160"}

  // document.write(wi) ;
  return wi ;
}

function setHeight(tile)
{
  var he ;
  if ( tile >=3D 1 && tile <=3D 1) { he =3D "90"; } // top leaderboard
  else if ( tile >=3D 2 && tile <=3D 2 ) { he =3D "90"; } // bottom =
leaderboard
  else if ( tile >=3D 3 && tile <=3D 3 ) { he =3D "600"; } // skyscraper =
left only
  else if ( tile >=3D 4 && tile <=3D 4 ) { he =3D "600"; } // skyscraper =
only
  else if ( tile >=3D 5 && tile <=3D 5 ) { he =3D "250"; } // big box =
and skyscraper
  else if ( tile >=3D 6 && tile <=3D 6 ) { he =3D "850"; } // =
skyscraper, big box and half page
  else if ( tile >=3D 7 && tile <=3D 7 ) { he =3D "33"; } // feature bar
  else if ( tile >=3D 8 && tile <=3D 8 ) { he =3D "45"; } // travel tile
  else if ( tile >=3D 9 && tile <=3D 9 ) { he =3D "40"; } // rss tile
  else if ( tile >=3D 10 && tile <=3D 10 ) { he =3D "45"; } // travel =
tile right
  else if ( tile >=3D 11 && tile <=3D 11 ) { he =3D "60"; } // 120x60
  else if ( tile >=3D 12 && tile <=3D 12 ) { he =3D "30"; } // 260X30
  else if ( tile >=3D 13 && tile <=3D 13 ) { he =3D "190"; } // 300x190
  else if ( tile >=3D 14 && tile <=3D 14 ) { he =3D "45"; } // 300x45
  else if ( tile >=3D 15 && tile <=3D 15 ) { he =3D "240"; } // 120x240
  else if ( tile >=3D 16 && tile <=3D 16 ) { he =3D "850"; } // 120x240
  else if ( tile >=3D 17 && tile <=3D 17 ) { he =3D "31"; } // 88x31
  else if ( tile >=3D 18 && tile <=3D 18 ) { he =3D "20"; } // 180x20
  else if ( tile >=3D 19 && tile <=3D 19 ) { he =3D "35"; } // 336x35
	else if ( tile =3D=3D 20 ) { he =3D "250"; } // big box=20
	else if ( tile >=3D 22 && tile <=3D 22 ) { he =3D "90"; } // 110x90 =
tile
	else if ( tile >=3D 23 && tile <=3D 23 ) { he =3D "45"; } // 446x45 =
blog feature bar
	else if ( tile >=3D 24 && tile <=3D 24 ) { he =3D "40"; } // 208x40
	else if ( tile >=3D 25 && tile <=3D 25 ) { he =3D "57"; }
	else if ( tile >=3D 26 && tile <=3D 26 ) { he =3D "60"; } // 336x60
	else if ( tile >=3D 27 && tile <=3D 27 ) { he =3D "30"; } // 120x30
	else if ( tile >=3D 28 && tile <=3D 28 ) { he =3D "31"; } // 180x31
	else if ( tile >=3D 29 && tile <=3D 29 ) { he =3D "60"; } // 234x60
	else if ( tile >=3D 30 && tile <=3D 30 ) { he =3D "100"; } // 293x100
	else if ( tile >=3D 31 && tile <=3D 31 ) { he =3D "146"; } // 160x146
	else if ( tile >=3D 32 && tile <=3D 32 ) { he =3D "200"; } // 336x200
=09
	//99 is for brightcove
=09
/*TM 06/20/06 see above*/
if (tile =3D=3D 12 && location.href.indexOf('areaId') !=3D -1) =
{he=3D"600"}
  // document.write(he) ;
 =20
  return he ;
}

function setFlexvalue(tile) {
  var fv ;
  if ( tile >=3D 1 && tile <=3D 2) { fv =3D "ad=3Dlb;sz=3D728x90;"; } // =
top leaderboard
  else if ( tile >=3D 2 && tile <=3D 2 ) { fv =3D =
"ad=3Dlb;sz=3D728x90;"; } // bottom leaderboard
  else if ( tile >=3D 3 && tile <=3D 3 ) { fv =3D =
"ad=3Dss;sz=3D160x600;"; } // skyscraper left only
  else if ( tile >=3D 4 && tile <=3D 4 ) { fv =3D =
"ad=3Dss;sz=3D160x600;"; } // skyscraper only
  else if ( tile >=3D 5 && tile <=3D 5 ) { fv =3D =
"ad=3Dss;ad=3Dbb;sz=3D160x600,300x250;"; } // big box and skyscraper
  else if ( tile >=3D 6 && tile <=3D 6 ) { fv =3D =
"ad=3Dss;ad=3Dbb;ad=3Dhp;sz=3D160x600,300x250,336x850;"; } // half page
  else if ( tile >=3D 7 && tile <=3D 7 ) { fv =3D =
"ad=3Dfb;sz=3D446x33;"; } // feature bar
  else if ( tile >=3D 8 && tile <=3D 8 ) { fv =3D =
"ad=3Dtt;sz=3D336x45;"; } // travel tile
  else if ( tile >=3D 9 && tile <=3D 9 ) { fv =3D =
"ad=3Drss;sz=3D479x40;"; } // rss tile
  else if ( tile >=3D 10 && tile <=3D 10) { fv =3D =
"ad=3Dtt;sz=3D336x45;"; } // travel tile right
  else if ( tile >=3D 11 && tile <=3D 11) { fv =3D =
"ad=3Dtl;sz=3D120x60;"; } // 120x60
  else if ( tile >=3D 12 && tile <=3D 12) { fv =3D =
"ad=3D260x30;sz=3D260x30;"; } // 260X30
  else if ( tile >=3D 13 && tile <=3D 13) { fv =3D =
"ad=3Dre300;sz=3D300x190;"; } // 300x190
  else if ( tile >=3D 14 && tile <=3D 14) { fv =3D =
"ad=3Dtiff;sz=3D300x45;"; } // 300x45
  else if ( tile >=3D 15 && tile <=3D 15) { fv =3D =
"ad=3Dvb;sz=3D120x240;"; } // 120x240
  else if ( tile >=3D 16 && tile <=3D 16) { fv =3D =
"ad=3Dbb;ad=3Dhp;sz=3D300x250,336x850;"; } // 120x240
  else if ( tile >=3D 17 && tile <=3D 17 ) { fv =3D =
"ad=3D88x31;sz=3D88x31;";} // 88x31
  else if ( tile >=3D 18 && tile <=3D 18 ) { fv =3D =
"ad=3D180x20;sz=3D180x20;"; } // 180x20
  else if ( tile >=3D 19 && tile <=3D 19 ) { fv =3D =
"ad=3D336x35;sz=3D336x35;";} // 336x35
  else if ( tile >=3D 20 && tile <=3D 20 ) { fv =3D =
"ad=3Dbb;sz=3D300x250;";} // 300x250
  else if ( tile >=3D 22 && tile <=3D 22 ) { fv =3D =
"ad=3D110x90;sz=3D110x90;"; } // 110x90 tile
  else if ( tile >=3D 23 && tile <=3D 23) { fv =3D =
"ad=3Dblog;sz=3D446x45;"; } // 446x45 blog feature bar
  else if ( tile >=3D 24 && tile <=3D 24) { fv =3D =
"ad=3D208x40;sz=3D208x40;"; } // 446x45 blog feature bar
  else if ( tile >=3D 25 && tile <=3D 25) { fv =3D =
"ad=3D314x57;sz=3D314x57;"; } // 314x57=20
  else if ( tile >=3D 26 && tile <=3D 26) { fv =3D =
"ad=3D336x60;sz=3D336x60;"; } // 336x60
  else if ( tile >=3D 27 && tile <=3D 27) { fv =3D =
"ad=3D120x30;sz=3D120x30;"; } // 120x30
  else if ( tile >=3D 28 && tile <=3D 28) { fv =3D =
"ad=3Dtoolbox_tile;sz=3D180x31;"; } // 180x31
  else if ( tile >=3D 29 && tile <=3D 29 ) { fv =3D =
"ad=3Dcars_tile;sz=3D234x60;"; } // 234x60=20
  else if ( tile >=3D 30 && tile <=3D 30 ) { fv =3D =
"ad=3D293x100;sz=3D293x100;"; } // 293x100
  else if ( tile >=3D 31 && tile <=3D 31 ) { fv =3D =
"ad=3D160x146;sz=3D160x146"; } // 160x146
  else if ( tile >=3D 32 && tile <=3D 32 ) { fv =3D =
"ad=3D336x200;sz=3D336x200"; } // 336x200
  //99 is for brightcove

/*TM see above*/
if (tile >=3D 12 && tile <=3D 12 && location.href.indexOf('areaId') !=3D =
-1) {fv=3D"ad=3Dss120;sz=3D160x600;"}

return fv ;

}


function mkKeyword(myKeyword,myNode)
{
  if (myKeyword =3D=3D "" )
  {
    if (myNode.indexOf("/") !=3D -1 )
    {
      nodeAry =3D myNode.split("/") ;
      myKeyword =3D nodeAry[1] ;
	}
  }
  return myKeyword ;
}






function debugTextArea(ac)
{
  var re =3D new RegExp("\"","g") ;
  ac =3D ac.replace(re,"\\\"") ;
  return '<form><textarea wrap=3Dphysical cols=3D\"+55+\" =
rows=3D\"+10+\">'+ac+'</textarea></form>';
}

function getWPATCookie()
{
  if (document.cookie.indexOf("WPATC") !=3D -1)
  {
    var start =3D (document.cookie.indexOf("WPATC") + 6);
    var end =3D (document.cookie.indexOf(";",start)) =3D=3D -1 ? =
document.cookie.length : document.cookie.indexOf(";",start);
    var cookie =3D document.cookie.substring(start,end) + ";";
    while (cookie.indexOf(":") !=3D -1)
      cookie =3D =
cookie.substring(0,cookie.indexOf(":"))+";"+cookie.substring(cookie.index=
Of(":")+1,cookie.length);
    if (cookie.lastIndexOf(";") !=3D cookie.length - 1) cookie +=3D ';';
    if (cookie.indexOf("=3D") =3D=3D 0) cookie =3D =
cookie.substring(cookie.indexOf(";")+1,cookie.length);
  }
  else var cookie =3D "" ;
  return cookie ;
}



//Revenue Science Values
/*
function (name) {
	var cookie =3D " " + document.cookie;
	var search =3D " " + name + "=3D";
	var setStr =3D null;
	var offset =3D 0;
	var end =3D 0;
	if (cookie.length > 0) {
		offset =3D cookie.indexOf(search);
		if (offset !=3D -1) {
			offset +=3D search.length;
			end =3D cookie.indexOf(";", offset)
			if (end =3D=3D -1) {
				end =3D cookie.length;
			}
			setStr =3D unescape(cookie.substring(offset, end));
		}
	}
	return(setStr);
}*/

var crumbs =3D =
(getCookie("DMSEG"))?"".concat(getCookie("DMSEG")).split("&"):"";
var segments =3D (crumbs[5])?crumbs[5]:"";
var seg =3D (segments)?segments.split(","):"";


// mimic revenue science value for rss users
// check to see if url has "rss" and set up a value
// that AMs can target to
// added 6/28/05 sja
function setCookie (name, value, expires, path, domain, secure) {
      document.cookie =3D name + "=3D" + escape(value) +
        ((expires) ? "; expires=3D" + expires : "") +
        ((path) ? "; path=3D" + path : "") +
        ((domain) ? "; domain=3D" + domain : "") +
        ((secure) ? "; secure" : "");
}

function createTime() {
var cDate =3D new Date();
var cMil =3D cDate.getTime();
var e =3D cMil % (1000 * 60 * 60 * 24);
var r =3D (1000 * 60 * 60 * 24) - e;
var nr =3D 28 * 24 * 60 * 60 * 1000;
return(nr);
}

var wpniPOE =3D new Date();
var interval =3D 0;

var wpniWeek =3D wpniPOE.getTime() + createTime();
wpniPOE.setTime(wpniWeek);

if (urlLoc.indexOf('nav=3Drss') !=3D -1)
{_rs+=3D"fromrss=3Dy;";
setCookie('rss_now','true',''+wpniPOE.toString()+'','/','.washingtonpost.=
com','');
setCookie('rss','true',''+wpniPOE.toString()+'','/','.washingtonpost.com'=
,'');
}
else
{_rs+=3D"fromrss=3Dn;";
setCookie('rss_now','false',''+wpniPOE.toString()+'','/','.washingtonpost=
.com','');
}

if (getCookie("rss") =3D=3D 'true') {_rs +=3D 'rss=3Dy;'}
else _rs +=3D 'rss=3Dn;';

=09

var poe =3D 'poe=3Dno;';
if (getCookie("wp_poe") =3D=3D null || getCookie("wp_poe") =3D=3D =
"false") {
poe =3D 'poe=3Dyes;';
setCookie("wp_poe","true","","/",".washingtonpost.com",'')
}

if (getCookie("wp_poe") =3D=3D null && =
!(urlLoc.match("washingtonpost.com")))
{
	poe =3D 'poe=3Dno;';
}

// end rss code
/**
 * crk added 17 July 2002
 * methods for 5 parameter placeAd call
 * placeAd(platform,node,tile,kw,assertive)
 **/

  // get ancestor from node
  function getAdAncestor(node)
  {
	var end =3D node.indexOf("/") ;
	if ( end =3D=3D -1 )
	  return node ;
    else
	{
	  var adAncestor =3D node.substring(0,end) ;=09
      return adAncestor ;
	}
  }

  // get adSite
  function getAdSite(ancestor)
  {
    if ( isNewsAncestor(ancestor) )
      return "wpni.news" ;
    else
      return "wpni."+ancestor ;
  }
 =20
  // get ad node
  function getAdNode(node,ancestor)
  {
    if ( isNewsAncestor(ancestor) )
	  return node ;
	else
	{
	  var start =3D node.indexOf("/")+1 ;
	  if (start)
        return node.substring(start) ;
	  else
	    return "" ;
	}
  }

  // get ad node
  function getAdZone(node)
  {
    var ary =3D new Array() ;
	if ( node.indexOf("/") !=3D -1 )
	  ary =3D node.split("/") ;
	else
	  ary[0] =3D node ;

	if ( ary.length <=3D 2 )
	  return node ;
	else
	{
	  var zone =3D '' ;
	  for(var i=3D0; i<2; i++)
	  {
	    zone +=3D ary[i] ;
		if (i=3D=3D0) zone +=3D "/" ;
	  }
	  return zone ;
	}
  }
 =20
  function getAdDir(node)
  {
    var page =3D "" ;
    var ary =3D new Array() ;
	if ( node.indexOf("/") !=3D -1 )
	  ary =3D node.split("/") ;
	else
	  ary[0] =3D node ;

	var dir =3D '' ;
	for(var i=3D0; i<ary.length; i++)
	{
	  // parse out article string if present in ancestor
	  if ( i =3D=3D 0 &&
	       ary[i].indexOf("article") !=3D -1 &&
		   ary[i].indexOf("article") =3D=3D ary[i].length - "article".length =
&&
		   ary[i] !=3D "article" )
	  {
	    ary[i] =3D ary[i].substring(0,ary[i].indexOf("article")) ;
		page =3D "page=3Darticle;" ;
	  }
	  dir +=3D "dir=3D"+ary[i]+";" ;
	}
	return "dir=3D"+ary[ary.length-1]+"node;"+dir+page ;
  }

  // check if adSite should be wpni.news
  function isNewsAncestor(ancestor)
  {
    if ( newsAncestorAsString !=3D null &&
	     newsAncestorAsString !=3D ""   &&
		 newsAncestorAsString.indexOf(","+ancestor+",") !=3D -1
	   )
      return true  ;
    else
	  return false ;
  }
 =20
  function cleanNode(node)
  {
	if ( node.charAt(node.length-1) =3D=3D "/" )
	  return node.substring(0,node.length-1) ;
	else
	  return node ;
  }
// begin: for inline article ad
function getInlineAdGraf(container_id,obstacle_id) {
	if ( document.getElementById(obstacle_id) && =
document.getElementById(container_id) ) {
		var obstacle =3D document.getElementById(obstacle_id);
		var bottom_of_obstacle =3D obstacle.offsetTop+obstacle.offsetHeight ;

		var container =3D document.getElementById(container_id);
		var bottom_of_container =3D container.offsetTop+container.offsetHeight =
;

		var grafs =3D container.getElementsByTagName("p");
		for( var i=3D0; i<grafs.length; i++ ) {
			var graf =3D grafs[i] ;
			// if ( (graf.offsetTop > bottom_of_obstacle) && (bottom_of_container =
- bottom_of_obstacle > 200) ) {
			if ( graf.offsetTop > bottom_of_obstacle + =
document.getElementById("content_column_table").clientHeight + 200) {
				return graf ;
			}
		}
	}
	return false;
}
function getInlineAdGraf2(container_id,obstacle_id,clearance) {
	if ( document.getElementById(obstacle_id) && =
document.getElementById(container_id) ) {
		if ( typeof clearance =3D=3D "undefined" ) {
			clearance =3D 200 ;
		}
		var obstacle =3D document.getElementById(obstacle_id);
		var bottom_of_obstacle =3D =
findPosition(obstacle_id).y+obstacle.offsetHeight ;

		var container =3D document.getElementById(container_id);
		var bottom_of_container =3D =
findPosition(container_id).y+container.offsetHeight ;

		var grafs =3D container.getElementsByTagName("p");
		for( var i=3D0; i<grafs.length; i++ ) {
			var graf =3D grafs[i] ;
			if ( (findPositionByElement(graf).y > bottom_of_obstacle + clearance) =
) {
				return graf ;
			}
		}
	}
	return false;
}
function move_the_inline_ad(parent,ad,sibling) {
	if ( parent && ad && sibling )
		parent.insertBefore( ad, sibling ) ;
}
// end: for inline article ad

//start of wpniAds object
wpniAds =3D new Object();
wpniAds.utils =3D new Object();
wpniAds.utils.visibilityByTagName =3D function()
{
	for(var a =3D 1; a < arguments.length; a++)
	{
		badElements =3D document.getElementsByTagName(arguments[a]);
		for(var b =3D 0;b< badElements.length;b++)
		{
				badElements[b].style.visibility =3D arguments[0];
		}
	}
}

wpniAds.utils.wabs =3D new Object();

wpniAds.utils.wabs.recalc =3D function ()
{
	var rootElement =3D (document.compatMode !=3D =
'BackCompat')?document.documentElement:document.body;
	this.bodyheight =3D rootElement.scrollHeight;
	this.bodywidth =3D rootElement.scrollWidth;
	this.scrollheight=3D rootElement.scrollTop;
	this.scrollwidth=3D rootElement.scrollLeft;
	this.windowheight =3D rootElement.clientHeight;
	this.windowwidth=3D rootElement.clientWidth;	=09
}


wpniAds.utils.preLoadImages =3D new Object();
wpniAds.utils.preLoadImages.loadedArray =3D new Array();
wpniAds.utils.preLoadImages.execute =3D function ()
{
	for(var a =3D 0; a < arguments.length; a++)
	{
		if(!this.loadedArray[arguments[a]])
		{
			this.loadedArray[arguments[a]] =3D new Image();
			this.loadedArray[arguments[a]].src =3D arguments[a];
		}
	}
}

wpniAds.utils.listenerAttacher =3D function(_event,_func,_bool)
{
	if(window.addEventListener)
		{
			window.addEventListener(_event,_func,_bool);
			return true;
		}
		else if(window.attachEvent)
		{
			window.attachEvent('on'+_event,_func);
			return true;
		}
		return false;
}



wpniAds.utils.resizeDiv =3D new Object();
wpniAds.utils.resizeDiv.posWords =3D new Object();
wpniAds.utils.resizeDiv.posWords.width =3D 'left';
wpniAds.utils.resizeDiv.posWords.height =3D 'top';

wpniAds.utils.resizeDiv.window =3D function(_element,_dir)
{=09
	document.getElementById(_element).style[_dir]=3D =
wpniAds.utils.wabs['window' + _dir] + 'px';
	document.getElementById(_element).style[this.posWords[_dir]] =3D =
wpniAds.utils.wabs['scroll' + _dir] + 'px';
}
wpniAds.utils.resizeDiv.body =3D function(_element,_dir)
{
	document.getElementById(_element).style[_dir] =3D =
wpniAds.utils.wabs['body' + _dir] + 'px';
	document.getElementById(_element).style[this.posWords[_dir]] =3D '0px';
}
wpniAds.utils.resizeDiv.max =3D function(_element,_dir)
{
	var totalRangeWindow =3D wpniAds.utils.wabs['window'+_dir] + =
wpniAds.utils.wabs['scroll' + _dir];
	var totalRangeBody =3D wpniAds.utils.wabs['body' + _dir];
=09
	var HigherString =3D Math.max(totalRangeWindow,totalRangeBody) + 5
=09
	document.getElementById(_element).style[_dir] =3D HigherString + 'px';
	document.getElementById(_element).style[this.posWords[_dir]] =3D =
'-5px';
}





wpniAds.utils.resizeDiv.execute =3D function (_element,_dimension,_goal)
{=09
	wpniAds.utils.wabs.recalc();
	this[_goal](_element,_dimension)
}

//end of wpniAds object

//start of cbIntercept

wpniAds.utils.preLoadImages.execute("http://www.washingtonpost.com/wp-srv=
/images/Jobs-splash-page_graphic.gif");

cbIntercept =3D new Object();

cbIntercept.attachListeners =3D function()
{
	if(this.listenersAttached) return true;
	if(!wpniAds.utils.listenerAttacher('resize',cbIntercept.resize,false)) =
this.listenersAttached =3D false;
	if(!wpniAds.utils.listenerAttacher('scroll',cbIntercept.resize,false)) =
this.listenersAttached =3D false;
	this.listenersAttached =3D true;
	return this.listenersAttached;
}

cbIntercept.resize =3D function ()
{
=09
	var thisFunc =3D wpniAds.utils.resizeDiv;
	thisFunc.execute('cbIntAbs','width','max')
	thisFunc.execute('cbIntAbs','height','max')
	thisFunc.execute('cbIntContAbs','width','window')
	thisFunc.execute('cbIntContAbs','height','window')
}

cbIntercept.close =3D function ()
{
	cbIntercept.execute('none');
	return true;
}

cbIntercept.leaveSite =3D function ()
	{
			cbIntercept.execute('none')
			=
window.open('http://www.careerbuilder.com/?lr=3Dcbwpni&siteid=3Dcbwpni001=
&nid=3Droll_findajob')
	}
=09
cbIntercept.execute =3D function()
{
=09
	if(!cbIntercept.attachListeners()) return;
=09

	if(!arguments[0]) arguments[0] =3D 'block';
=09
	//check to see if cbContainer DIV is there. If not, intializes it.
	if(document.getElementById && =
!document.getElementById('cbIntContainer'))
	{
		cbIntContainerDIV =3D document.createElement('DIV');
		cbIntContainerDIV.id =3D 'cbIntContainer';
		cbIntContainerDIV.style.position =3D 'relative';
		cbIntContainerDIV.style.display =3D 'none';=09
		cbIntContainerDIV.style.zIndex =3D '10000';
		//cbIntContainerDIV.style.width=3D"20%";
		cbIntAbsDIV =3D document.createElement('DIV');
		cbIntAbsDIV.id =3D 'cbIntAbs';
		cbIntAbsDIV.style.position =3D 'absolute';
		cbIntAbsDIV.style.zIndex =3D '10001';
		cbIntAbsDIV.style.backgroundColor =3D '#777';
		cbIntAbsDIV.style.filter =3D "alpha(opacity=3D80)";
		cbIntAbsDIV.style.opacity =3D .8;
=09
		cbIntAbsContDIV =3D document.createElement('DIV');
		cbIntAbsContDIV.id =3D 'cbIntContAbs';
		cbIntAbsContDIV.style.position =3D 'absolute';
		cbIntAbsContDIV.style.zIndex =3D '10002';
		cbIntAbsContDIV.style.textAlign =3D =
((navigator.userAgent.toLowerCase().match("firefox"))?'-moz-':'') + =
'center';

		cbIntAbsContDIV.innerHTML =3D '<div style=3D"display: table; =
height:100%;width:100%;text-align:center;#position: relative;"><div =
style=3D" #position: absolute; #top: 50%;#left:50%;display: table-cell; =
vertical-align: middle;"><div style=3D"#position: relative; #top: =
-50%;#left:-50%;"><img style=3D"cursor:pointer" =
src=3D"http://www.washingtonpost.com/wp-srv/images/Jobs_SplashPage_REV4.g=
if" usemap=3D"#cbMap" border=3D"0" width=3D"429" height=3D"342" /><map =
name=3D"cbMap"><area shape=3D"rect" coords=3D"360,0,428,20"  onclick =3D =
"cbIntercept.close()" target=3D"_blank"/><area shape=3D"rect" =
coords=3D"0,0,360,251" =
href=3D"http://www.washingtonpost.com/wl/jobs/home?nav=3Dcbsplash"/><area=
 shape=3D"rect" coords=3D"360,20,428,251" =
href=3D"http://www.washingtonpost.com/wl/jobs/home?nav=3Dcbsplash"/><area=
 shape=3D"rect" coords=3D"0,254,428,341" =
href=3D"javascript:cbIntercept.leaveSite()"/></map></div></div></div>';
		=20
		cbIntContainerDIV.appendChild(cbIntAbsDIV);
		cbIntContainerDIV.appendChild(cbIntAbsContDIV);
	=09
		=
document.body.insertBefore(cbIntContainerDIV,document.body.firstChild);
	}
=09
=09
	if(document.getElementById && =
document.getElementById('cbIntContainer'))
	{
		if(arguments[0] =3D=3D 'block')
		{
			this.resize();
		}
		document.getElementById('cbIntContainer').style.display =3D =
arguments[0];
		wpniAds.utils.visibilityByTagName((arguments[0] =3D=3D =
'block')?'hidden':'visible','embed','object','select','iframe')
	}
=09
}
//end of cbIntercept
------=_NextPart_000_0000_01C83FED.C3179200
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://media3.washingtonpost.com/wp-srv/ad/ad_configurations_article_v2.js

if (typeof commercialNode =3D=3D 'undefined' || commercialNode =3D=3D =
'one') commercialNode =3D (typeof thisNode !=3D 'undefined' && thisNode =
!=3D 'one')?thisNode:'technology';

function getCookie(name) {
	var cookie =3D " " + document.cookie;
	var search =3D " " + name + "=3D";
	var setStr =3D null;
	var offset =3D 0;
	var end =3D 0;
	if (cookie.length > 0) {
		offset =3D cookie.indexOf(search);
		if (offset !=3D -1) {
			offset +=3D search.length;
			end =3D cookie.indexOf(";", offset)
			if (end =3D=3D -1) {
				end =3D cookie.length;
			}
			setStr =3D unescape(cookie.substring(offset, end));
		}
	}
	return(setStr);
}

function flashChecker() {
plugIn =3D false;
plugInVersion =3D 0;
if(typeof ActiveXObject !=3D 'undefined')
{
	for(var i=3D0;i<12;i++)
	{try{var flash =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash." + =
i);plugInVersion =3D i;plugIn =3D 'You Are Running Explorer Flash '  + =
plugInVersion}catch(e){}
	}
}
else if(navigator.mimeTypes && =
navigator.mimeTypes["application/x-shockwave-flash"] && =
navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin){var =
y =3D navigator.plugins["Shockwave Flash"].description;plugInVersion =3D =
y.charAt(y.indexOf('.')-1); plugIn =3D "You Are Running Mozilla Flash " =
+ plugInVersion}
else {plugIn =3D 'Not Sure--There is No ActiveXObject, nor is there a =
Mozilla Flash'};
return plugIn;
}

function activeXChecker () {
	return(typeof ActiveXObject !=3D 'undefined')?true:false
}

function contentCategories(_commercialNode)
{
	if(_commercialNode.charAt(_commercialNode.length-1) !=3D '/')
	{
		_commercialNode +=3D '/';
	}
=09
	var returnValue =3D false;
	var contCatArray =3D new Array();


	contCatArray['Lifestyle'] =3D new Array(
'wpni.onfaith.blog','jobs','jobsarticle','admin','adminarticle','artsandl=
iving','artsandlivingarticle','cityguide','entertainment','fantasy.fleafl=
icker','foodarticle','health','healtharticle','home','homearticle','jezeb=
elstomb','kidspost','kidspostarticle','loudounextra','photo','photoarticl=
e','print','printarticle','science','shoplocal','shopping','smartliving',=
'sports','style','stylearticle','television','travel','traveldirectory','=
travel.sidestep','travelarticle','weather','weatherarticle','religion','c=
ars','food','pets','sportsarticle');
	contCatArray['ExecNews'] =3D new =
Array('postglobal.blog','smallbiz','mypost','mypost.discussions','mywashp=
ost','allbusiness','business','businessarticle','digest','digestarticle',=
'education','educationarticle','washingtonpost.com','liveonline','liveonl=
inearticle','metro','metroarticle','nation','nationarticle','news','newsa=
rticle','opinion','opinionarticle','politics','politicsarticle','reviewed=
.com','technology','traffic','world','worldarticle');
=09
 =20

	for(a in contCatArray)
	{
		for(b in contCatArray[a])
		{
			contCatNode =3D contCatArray[a][b] + '/';
			if (_commercialNode.indexOf(contCatNode)=3D=3D0)
			{
				return a;
			}
		}
	}
}

var adOpsLocalUser =3D getCookie && ( !getCookie('WPATC') || =
getCookie('WPATC').match('C=3D1:') );



function dateToString(date) {
var yyyy =3D date.getYear();
var mm =3D date.getMonth() + 1;
var dd =3D date.getDate();
var hour =3D date.getHours();
var min =3D date.getMinutes();

if (mm < 10) mm =3D "0"+mm;
if (dd < 10) dd =3D "0"+dd;
if (hour < 10) hour =3D "0"+hour;
if (min < 10) min =3D "0"+min;
return ''+mm+dd+hour+min;
}

function getDay(today) {return today.getDay()}
var today =3D new Date();
var now =3D dateToString(today);


var v2 =3D true;
var adTemplate =3D 255 ;

// Define all possible ad positions
var BANNER_FLEX_TOP =3D 1 << 0;
var BANNER_FLEX_BOTTOM =3D 1 << 1;
var SKY_LEFT =3D 1 << 2;
var SKY_RIGHT =3D 1 << 3;
var BIGBOX_FLEX =3D 1 << 4;
var BIG_FLEX_RIGHT =3D 1 << 5;
var AD_LINKS_RIGHT =3D 1 << 6; //Overture Links Right (Not in DART)
var AD_LINKS_BOTTOM =3D 1 << 7; //Overture Links Bottom (Not in DART)
var TEXTLINKS =3D 1 << 8; // WP.com hosted links (Not in DART)
var VM =3D 1 << 9; // Not in DART
var SPONSORSHIP =3D 1 << 10;
var TILE_LEFT =3D 1 << 11; // Not in DART
var TILE_RIGHT =3D 1 << 12; // Not in DART
var TILE_RIGHT_TOP =3D 1 << 13; // 125x125 on Travel
var TOP_JOBS =3D 1 << 14;
var TOOLBOX_LEFT =3D 1 << 15;
var TOOLBOX_RIGHT =3D 1 << 16;
var TOOLBOX_BOTTOM =3D 1 << 17;
var TILE_RIGHT_TOP2 =3D 1 << 18; // 125x125 on Travel on right
var BLOG_FEATUREBAR =3D 1 << 19; // 446x45 blog bar
var INLINE_ARTICLE_AD =3D 1 << 20;
var TOOLBOX_LEFT_180X31 =3D 1 << 21;
var PORTAL_FEATUREBAR =3D 1 << 22; // 336x60 portal featurebar

var GOOGLE_LINKS =3D AD_LINKS_BOTTOM;



// Define all possible ad templates
var NO_ADS =3D 0;
var NEWS =3D 1;
var NEWS_VM =3D 2;
var NEWS_TRAVEL =3D 3;
var NEWS_TECHNOLOGY =3D 4;
var PRINTER_FRIENDLY =3D 5;
var ENLARGED_PHOTO =3D 6;
var PRINTER_FRIENDLY_FLEX =3D 7;
var NEWS_OVERTURE_RIGHT =3D 8;
var NEWS_OVERTURE_RIGHT_VM =3D 9;
var NEWS_NO_OVERTURE =3D 10;
var SIMPLE =3D 11;
var BOTTOM_ONLY =3D 12;
var DEFAULT_TEMPLATE =3D NEWS;
var NEWS_LEFT_SKY =3D 13;
var TRAVEL_BY_TOPIC =3D 14;
var NEWS_BUSINESS =3D 15;
var LOCAL_PORTAL =3D 16;
var NEWS_TRAVEL_NO_TRT =3D 17;
var NEWS_TEST =3D 18;
var WEATHER =3D 19;


if (typeof thisNode =3D=3D 'undefined') thisNode =3D 'news';

// Define contents of ad templates
var templateConfigs =3D new Array();

templateConfigs[ NEWS ]  =3D BANNER_FLEX_TOP + BIG_FLEX_RIGHT + =
AD_LINKS_BOTTOM + AD_LINKS_RIGHT + TOOLBOX_LEFT  + TOOLBOX_RIGHT + =
TOOLBOX_BOTTOM + TEXTLINKS + TILE_LEFT ;

templateConfigs[ NEWS_TEST ]  =3D BANNER_FLEX_TOP + BIG_FLEX_RIGHT + =
AD_LINKS_BOTTOM + AD_LINKS_RIGHT  + TOOLBOX_LEFT + TOOLBOX_RIGHT + =
TOOLBOX_BOTTOM + TEXTLINKS + TILE_LEFT ;

templateConfigs[ NEWS_BUSINESS ]  =3D BANNER_FLEX_TOP + BIG_FLEX_RIGHT + =
AD_LINKS_BOTTOM + AD_LINKS_RIGHT + TOOLBOX_LEFT  + TOOLBOX_RIGHT + =
TOOLBOX_BOTTOM + TEXTLINKS ;

templateConfigs[ NEWS_LEFT_SKY ]  =3D BANNER_FLEX_TOP + BIG_FLEX_RIGHT + =
AD_LINKS_BOTTOM + AD_LINKS_RIGHT + TOOLBOX_LEFT  + TOOLBOX_RIGHT + =
TOOLBOX_BOTTOM + TEXTLINKS ;

templateConfigs[ NEWS_NO_OVERTURE ]  =3D BANNER_FLEX_TOP + =
BIG_FLEX_RIGHT + TOOLBOX_LEFT  + TOOLBOX_RIGHT + TOOLBOX_BOTTOM + =
TEXTLINKS ;

templateConfigs[ NEWS_VM ]  =3D BANNER_FLEX_TOP + BIG_FLEX_RIGHT + =
AD_LINKS_BOTTOM + VM + AD_LINKS_RIGHT + TOOLBOX_LEFT  + TOOLBOX_RIGHT + =
TOOLBOX_BOTTOM + TEXTLINKS ;

templateConfigs[ NEWS_TRAVEL ]  =3D BANNER_FLEX_TOP + BIG_FLEX_RIGHT + =
AD_LINKS_BOTTOM + VM + TILE_RIGHT_TOP + TILE_LEFT  + TILE_RIGHT + =
TEXTLINKS ;

templateConfigs[ NEWS_TRAVEL_NO_TRT ] =3D  templateConfigs[ NEWS_TRAVEL =
] - TILE_RIGHT_TOP

templateConfigs[ TRAVEL_BY_TOPIC ]  =3D BANNER_FLEX_TOP + BIG_FLEX_RIGHT =
+ AD_LINKS_BOTTOM +  TILE_LEFT  + TILE_RIGHT + TEXTLINKS ;

templateConfigs[ NEWS_TECHNOLOGY ]  =3D BANNER_FLEX_TOP + BIG_FLEX_RIGHT =
+ AD_LINKS_BOTTOM + TOOLBOX_LEFT  + TOOLBOX_RIGHT + TOOLBOX_BOTTOM + =
TEXTLINKS ;

templateConfigs[ PRINTER_FRIENDLY ]  =3D SKY_RIGHT + TOOLBOX_RIGHT + =
AD_LINKS_BOTTOM ;

templateConfigs[ PRINTER_FRIENDLY_FLEX ]  =3D BIGBOX_FLEX + =
TOOLBOX_RIGHT + AD_LINKS_BOTTOM ;

templateConfigs[ NEWS_OVERTURE_RIGHT ]  =3D BANNER_FLEX_TOP + =
BIG_FLEX_RIGHT + AD_LINKS_RIGHT + TOOLBOX_LEFT  + TOOLBOX_RIGHT + =
TOOLBOX_BOTTOM + TEXTLINKS ;

templateConfigs[ NEWS_OVERTURE_RIGHT_VM ]  =3D BANNER_FLEX_TOP + =
BANNER_FLEX_TOP + + AD_LINKS_RIGHT + VM + TOOLBOX_LEFT  + TOOLBOX_RIGHT =
+ TOOLBOX_BOTTOM + TEXTLINKS ;

templateConfigs[ ENLARGED_PHOTO ]  =3D SKY_RIGHT;

templateConfigs[ SIMPLE ]  =3D BANNER_FLEX_TOP + BIG_FLEX_RIGHT;

templateConfigs[ BOTTOM_ONLY ]  =3D BANNER_FLEX_BOTTOM;

templateConfigs[ LOCAL_PORTAL ]  =3D BANNER_FLEX_TOP + =
BANNER_FLEX_BOTTOM ;

templateConfigs[ WEATHER ] =3D BANNER_FLEX_TOP +  BIG_FLEX_RIGHT;

templateConfigs[ NO_ADS ] =3D 0;

// Make node-to-template assignments
var nodeConfigs =3D new AdConfigurations();
nodeConfigs.addConfiguration( 'metro/blackmen')
			.addTemplateAssignment ( new TemplateAssignment( BOTTOM_ONLY,1 ) );
nodeConfigs.addConfiguration( 'education')
			.addTemplateAssignment ( new TemplateAssignment( NEWS_VM,1 ) );
nodeConfigs.addConfiguration( 'travel' )
			.addTemplateAssignment ( new TemplateAssignment( NEWS_TRAVEL,1) );
nodeConfigs.addConfiguration( 'travel/jerseyshore' )
			.addTemplateAssignment ( new TemplateAssignment( =
NEWS_TRAVEL_NO_TRT,1) );
nodeConfigs.addConfiguration( 'artsandliving/travel/travelbytopic' )
			.addTemplateAssignment ( new TemplateAssignment( TRAVEL_BY_TOPIC,1) =
);
nodeConfigs.addConfiguration( 'health')
			.addTemplateAssignment ( new TemplateAssignment( NEWS,1 ) );
nodeConfigs.addConfiguration( 'print')
			.addTemplateAssignment ( new TemplateAssignment( NEWS,1 ) );
nodeConfigs.addConfiguration( 'weather')
			.addTemplateAssignment ( new TemplateAssignment( WEATHER,1 ) );
nodeConfigs.addConfiguration( 'realestate')
			.addTemplateAssignment ( new TemplateAssignment( NEWS,1 ) );
nodeConfigs.addConfiguration( 'artsandliving')
			.addTemplateAssignment ( new TemplateAssignment( NEWS,1 ) );
nodeConfigs.addConfiguration( 'business')
			.addTemplateAssignment ( new TemplateAssignment( NEWS_BUSINESS,1 ) );
nodeConfigs.addConfiguration( 'technology')
			.addTemplateAssignment ( new TemplateAssignment( NEWS_TECHNOLOGY,1 ) =
);
nodeConfigs.addConfiguration( 'metro')
			.addTemplateAssignment ( new TemplateAssignment( NEWS,1 ) );
nodeConfigs.addConfiguration( 'admin/classifieds/publicnotices')
			.addTemplateAssignment ( new TemplateAssignment( SIMPLE,1 ) );
nodeConfigs.addConfiguration( 'sports')
			.addTemplateAssignment ( new TemplateAssignment( NEWS_VM,1 ) );
nodeConfigs.addConfiguration( 'print/style')
			.addTemplateAssignment ( new TemplateAssignment( NEWS,1 ) );
nodeConfigs.addConfiguration( 'artsandliving')
			.addTemplateAssignment ( new TemplateAssignment( NEWS_VM,1 ) );
nodeConfigs.addConfiguration( 'politics/special/7')
			.addTemplateAssignment ( new TemplateAssignment( NEWS_NO_OVERTURE,1 ) =
);
nodeConfigs.addConfiguration( 'kidspost')
			.addTemplateAssignment ( new TemplateAssignment( NO_ADS,1 ) );
nodeConfigs.addConfiguration( 'opinion')
			.addTemplateAssignment ( new TemplateAssignment( NEWS,1 ) );
nodeConfigs.addConfiguration( 'world')
			.addTemplateAssignment ( new TemplateAssignment( NEWS,1 ) );
nodeConfigs.addConfiguration( 'politics')
			.addTemplateAssignment ( new TemplateAssignment( NEWS,1 ) );
nodeConfigs.addConfiguration( 'nation')
			.addTemplateAssignment ( new TemplateAssignment( NEWS,1 ) );
nodeConfigs.addConfiguration( 'localportal')
			.addTemplateAssignment ( new TemplateAssignment( LOCAL_PORTAL,1 ) );
nodeConfigs.addConfiguration( 'news/test')
			.addTemplateAssignment ( new TemplateAssignment( NEWS_TEST,1 ) );
// For this node, select a template
adTemplate =3D nodeConfigs.getTemplate( thisNode );


if(thisNode =3D=3D 'mypost')
{
	adTemplate -=3D BANNER_FLEX_TOP
}

adTemplate +=3D INLINE_ARTICLE_AD;

if ((location.href.match('channelthis') && commercialNode =3D=3D =
'artsandliving/blogs') && (now <=3D '11302359')){
commercialNode +=3D '/channelthis';
}

// 'Faster Forward' blog fix
if (location.href.match('fasterforward') && commercialNode =3D=3D =
'technology/blogs'){
commercialNode =3D 'technology/blogs/fasterforward';
}

// 'Going Out Guru's' blog fix
if (location.href.match('goingoutgurus') && commercialNode =3D=3D =
'artsandliving/cityguide/blogs') { commercialNode =3D 'cityguide/blogs' =
}

if(now <=3D "11302359"  || ( contentCategories(commercialNode) =3D=3D =
'ExecNews' && adOpsLocalUser ))
{
	adTemplate +=3D BANNER_FLEX_BOTTOM;
}


if (document.location.href.indexOf("debugAdCode") !=3D -1)
{
	document.writeln("<p>")
	document.writeln("Ad Template: " + adTemplate + '<br/>');
	document.writeln("Local User: " + adOpsLocalUser + '<br/>');
	document.writeln("Content Category: " + =
contentCategories(commercialNode) + '<br/>');
	document.writeln("Flash Version: " + flashChecker() + '<br/>');
	document.writeln("ActiveXObject: " + activeXChecker() + '<br/>');
	document.writeln("<p>")
}

// Define objects
// TemplateAssignment associates a template with a frequency ( 0 <=3D =
frq <=3D 1 )
function TemplateAssignment( tmpl, frq )
{
  this.template =3D tmpl;
  this.frequency =3D ( ( frq >=3D 0 ) && ( frq <=3D 1 ) ) ? frq : 0 ;
}

// NodeTemplateAssignment collects TemplateAssignment objects for a =
specific node
function NodeTemplateAssignment ( node )
{
  this.node =3D node;
  this.templates =3D new Array();
  this.templateCount =3D 0;
 =20
  this.addTemplateAssignment =3D _addAdTemplateAssignment;
  this.selectTemplate =3D _adSelectTemplate;
}

// AdConfigurations collects NodeTemplateAssignments for the site
function AdConfigurations ()
{
  this.configs =3D new Array();
  this.length =3D 0;
 =20
  this.addConfiguration =3D _addAdConfiguration;
  this.getTemplate =3D _adGetTemplate;
}

function _adSelectTemplate()
{
  var base =3D 0;
  var rNum =3D Math.random();
  var rTemplate =3D 0;
 =20
  for (var count =3D 0; count < this.templates.length; count++)
  {
    if ( rNum < this.templates[count].frequency + base )=20
    {
      rTemplate =3D this.templates[count].template;
      break;
      //return this.templates[count].template;
    }
    else
    {
      base +=3D this.templates[count].frequency;
    }
  }
  return rTemplate;
}

function _adGetTemplate ( node )
{
  adTemplate =3D DEFAULT_TEMPLATE;
  var base =3D 0;
  var bestMatch =3D 0;
  for ( var count =3D 0; count < this.length; count++ )
  {
    if ( this.configs[count].node =3D=3D node )
    {
      adTemplate =3D this.configs[count].selectTemplate();
      break;
    }
    else if (( node.indexOf(this.configs[count].node) =3D=3D 0 ) && ( =
this.configs[count].node.length > bestMatch ))
    {
      adTemplate =3D this.configs[count].selectTemplate();
      bestMatch =3D this.configs[count].node.length;
    }
  }
  return templateConfigs[adTemplate];
}

function _addAdTemplateAssignment( templateAssignment )
{
  this.templates[this.templateCount++] =3D templateAssignment;
  return this;
}

function _addAdConfiguration ( n )
{
  this.configs[this.length++] =3D new NodeTemplateAssignment (n);
  return this.configs[this.length - 1];
}

------=_NextPart_000_0000_01C83FED.C3179200
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://media3.washingtonpost.com/wp-srv/popjs/popupCampaignClasses.js

/*
 * Popup Campaign Manager provides the objects and methods needed to =
control multiple popup campaigns
 * It is controlled by popupCampaigns.js; by itself it does nothing that =
you'll see on a page.
 * It needs one preset variable: thisNode must be set to the node to =
which the page belongs before importing this javascript source.
 * TO CHANGE THE DOUBLECLICK CAP OR DOUBLECLICK TIMEFRAME, EDIT =
DClickCap and DClickTimeFrame IN THIS FILE
 */

if ( typeof thisNode =3D=3D 'undefined' ) thisNode =3D 'news';

// CONSTANTS
// REGISTERED|NOT_REGISTERED identify whether the user is defined (based =
on the WPATC cookie).
// To define both user groups, use addition (REGISTERED + NOT_REGISTERED =
=3D=3D all users)
var REGISTERED =3D 1;
var NOT_REGISTERED =3D 2;

// ARTICLE|FRONT|IMPLICIT|EXPLICIT define the types of pages to which a =
mapping applies.
// To combine several page types, use addition=20
// (FRONT + ARTICLE + IMPLICIT =3D=3D all section front and articles in =
this node and all its children)
var ARTICLE =3D 1;
var FRONT =3D 2;
var IMPLICIT =3D 4;
var EXPLICIT =3D 0;

// These constants make the time conversion to milliseconds easier. Take =
a number and multiply it by the appropriate constant
var pcm_DAYS =3D 24 * 60 * 60 * 1000;
var pcm_HOURS =3D 60 * 60 * 1000;
var pcm_MINUTES =3D 60 * 1000;
var TWELVE_HOURS =3D 12 * pcm_HOURS;
var ONE_DAY =3D 1 * pcm_DAYS;
var ONE_WEEK =3D 7 * pcm_DAYS;
var ONE_MONTH =3D 30 * pcm_DAYS;
var pcm_now =3D new Date();

// The following constants are for internal use
var nopops =3D false;
var NA =3D '';
var SESSION =3D 0;
var CAMPAIGN_MANAGER =3D 1;
var INTENSITY =3D 2;
var SUBSCRIBED =3D 3;
var DCLICK =3D 4;
var DCLICK_SESSION_CAP =3D 5; // new code for v4
var POPUP_WIDTH =3D 300;
var POPUP_HEIGHT =3D 400;

var COOKIE_NAME =3D new Array();
var COOKIE_VALUE =3D new Array();

COOKIE_NAME[SESSION] =3D 'wpni_session';
COOKIE_NAME[CAMPAIGN_MANAGER] =3D 'wpni_campaignmanager';
COOKIE_NAME[INTENSITY] =3D 'wpni_campaignintensity';
COOKIE_NAME[SUBSCRIBED] =3D 'WPATC';
COOKIE_NAME[DCLICK] =3D 'dcCount';
COOKIE_NAME[DCLICK_SESSION_CAP] =3D 'dcSessionLimit'; // new code for v4

// DClickCap and DClickTimeFrame apply to DoubleClick popup and popunder =
campaigns
var DClickCap =3D 5; // Maximum number of DoubleClick popups allowed in =
timeframe
var DClickTimeFrame =3D TWELVE_HOURS; // Timeframe applied to DClickCap
var DClickSessionCap =3D 2; // New variable to control popups per =
session
var DClickMinTimeBetweenPopups =3D 60000;
var FORCED_SESSION_EXPIRATON =3D TWELVE_HOURS; // Must match value in =
cookie_code.html

var popupUrl =3D NA;
var pcm_node =3D thisNode; // thisNode must be defined in the file =
calling this js file
var isArticle =3D (location.href.indexOf("/articles/") !=3D -1) ? true : =
false ;
var popupHasBeenDelivered =3D false;
var interstitialIsAllowed =3D true;


// TO DETERMINE IF USER CAME FROM GOOGLE:
var docUrl =3D document.location.href;
var key =3D docUrl.indexOf('?');

if (key !=3D -1) // make sure there are parameters
{
  // get the parameter
  var temp =3D docUrl.substring(key + 1, docUrl.length);
 =20
  // if just "g" was passed in, set the interstitial to false
  if (temp.length =3D=3D 1 && (temp =3D=3D "g" || temp =3D=3D "G" || =
temp =3D=3D "local") )
  {
    interstitialIsAllowed =3D false;
	nopops =3D true;
  }=20
}
// END GOOGLE LOGIC


// Extract cookies that are not campaign specific=20
for (var count =3D 0; count < COOKIE_NAME.length; count++)
{
  var startAt =3D 0;
  if ( (startAt =3D document.cookie.indexOf(COOKIE_NAME[count])) !=3D =
-1)
  {
    startAt +=3D COOKIE_NAME[count].length + 1;
    var endAt =3D (document.cookie.indexOf(";", startAt) =3D=3D -1) ? =
document.cookie.length : document.cookie.indexOf(";", startAt);
    COOKIE_VALUE[count] =3D document.cookie.substring(startAt, endAt);
  }
  else
  {
    COOKIE_VALUE[count] =3D NA;
  }
  //alert ( COOKIE_NAME[count]+'=3D'+COOKIE_VALUE[count] );
}

// New logic to prevent back-to-back interstitials
if ( COOKIE_VALUE[DCLICK_SESSION_CAP].indexOf ("X") !=3D -1 )
{
  interstitialIsAllowed =3D false;=20
  var newCookie =3D =
COOKIE_VALUE[DCLICK_SESSION_CAP].substring(0,COOKIE_VALUE[DCLICK_SESSION_=
CAP].length - 1);
  document.cookie =3D "dcSessionLimit=3D" + newCookie + =
";path=3D/;domain=3D.washingtonpost.com";
}

// New logic to allow for internal timing of DCLICK_SESSION_CAP (v5)
//var dclickTimeBetweenPopups =3D new Date();
//dclickTimeBetweenPopups.setTime ( dclickTimeBetweenPopups.getTime() + =
DClickMinTimeBetweenPopups );

if ( COOKIE_VALUE[DCLICK_SESSION_CAP].indexOf ("|") !=3D -1 )
{
  dclickSessionExpiration =3D =
COOKIE_VALUE[DCLICK_SESSION_CAP].substring(COOKIE_VALUE[DCLICK_SESSION_CA=
P].indexOf("|") + 1);
  COOKIE_VALUE[DCLICK_SESSION_CAP] =3D =
COOKIE_VALUE[DCLICK_SESSION_CAP].substring(0, =
COOKIE_VALUE[DCLICK_SESSION_CAP].indexOf("|"));
  var currentDate =3D new Date();
  var cookieExpiresDate =3D new Date();
  cookieExpiresDate.setTime( parseInt(dclickSessionExpiration) );

  var cookieSetDate =3D new Date();
  cookieSetDate.setTime( parseInt(dclickSessionExpiration) - =
FORCED_SESSION_EXPIRATON );
 =20
  // If cookie was written in past 15 mins, don't allow interstitial
  if ( currentDate.getTime() - cookieExpiresDate.getTime() < 0 ) // If =
the cookie was set to expire in the past 15 minutes
  {
    if ( currentDate.getTime() - cookieSetDate.getTime() < =
DClickMinTimeBetweenPopups )
    {
      interstitialIsAllowed =3D false;
//      alert ("No ad because it's been less than a minute =
("+(currentDate.getTime() - cookieSetDate.getTime())+" < =
"+DClickMinTimeBetweenPopups+")" );
    }
    if ( COOKIE_VALUE[DCLICK_SESSION_CAP] >=3D DClickSessionCap )
    {
      interstitialIsAllowed =3D false;
    }

    //alert ( "Last popup occurred too recently ( "+( =
currentDate.getTime() - cookieSetDate.getTime() =
)+"<"+DClickMinTimeBetweenPopups+")" );
  }
// If cookie is older than 15 mins, expire it
  else
  {
    dclickSessionExpiration =3D new Date();
    dclickSessionExpiration.setTime ( dclickSessionExpiration.getTime() =
- 100000 );
    document.cookie =3D COOKIE_NAME[DCLICK_SESSION_CAP] + =
"=3D1;expires=3D"+dclickSessionExpiration.toGMTString()+";path=3D/;domain=
=3D.washingtonpost.com"; // new code for v4
    //alert ( "Deleting old cookie" );
  }
}

// if ( COOKIE_VALUE[DCLICK_SESSION_CAP] >=3D DClickSessionCap ) =
interstitialIsAllowed=3Dfalse; // new code for v4
if ( COOKIE_VALUE[DCLICK] >=3D DClickCap ) interstitialIsAllowed =3D =
false;
------=_NextPart_000_0000_01C83FED.C3179200
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://media.washingtonpost.com/wp-srv/javascript/omniture/s_code.js

/* SiteCatalyst code version: H.10.
Copyright 1997-2007 Omniture, Inc. More info available at
http://www.omniture.com */
/************************ ADDITIONAL FEATURES ************************
     Plugins
*/
/* Specify the Report Suite ID(s) to track here */
var s_account=3D"wpniglobalprod"
var s=3Ds_gi(s_account)
/************************** CONFIG SECTION **************************/
/* You may add or alter any code config here. */
/* E-commerce Config */
s.currencyCode=3D"USD"
/* Link Tracking Config */
s.trackDownloadLinks=3Dtrue
s.trackExternalLinks=3Dtrue
s.trackInlineStats=3Dtrue
s.linkDownloadFileTypes=3D"exe,zip,wav,mp3,mov,mpg,avi,wmv,doc,pdf,xls"
s.linkInternalFilters=3D"javascript:,"+window.location.host
s.linkLeaveQueryString=3Dfalse
s.linkTrackVars=3D"server"
s.linkTrackEvents=3D"None"
/* Plugin Config */
s.usePlugins=3Dtrue
function s_doPlugins(s) {
	/* Add calls to plugins here */
=09
=09
var URL=3Dwindow.location.host+window.location.pathname;=09
=09
/* Plugin Example: getQueryParam v2.0 */
=20
s.campaign=3Ds.getQueryParam('wpsrc')
s.eVar3=3Ds.getQueryParam('wpisrc')


/* Plugin Example: getValOnce v0.2
s.campaign=3Ds.getValOnce(s.campaign,"s_campaign",0)
*/

/* Set event 1 (page view) on every page */=09
s.events=3Ds.events?s.events+',event1':'event1';

/* Set eVar 1 & 2 to PN and Channel  */=09
s.eVar1=3Ds.pageName;
s.eVar2=3Ds.channel;

/* Set DSLV & New vs Repeat  */=09
s.prop18=3Ds.getNewRepeat();
s.prop17=3Ds.getDaysSinceLastVisit();
s.prop17=3Ds.getAndPersistValue(s.prop17,'s_dslv',0);
s.eVar14=3Ds.prop18;
s.eVar15=3Ds.prop17;

/* Get Visit Num */=09
s.eVar16=3Ds.getVisitNum();

/* Plugin Example: timeparting - EST - hour,day,weekday */
s.prop8=3Ds.getTimeParting('d','-5','2007');
s.prop9=3Ds.getTimeParting('h','-5','2007');
s.prop10=3Ds.getTimeParting('w','-5','2007');

/* Set hierarchy to prop23 */
s.prop23=3Ds.hier1;

/* Set eVar18 to entry content type */
var ct =3D s.prop3
var isEP =3D s.c_r('s_wp_ep');
if(!isEP && ct){s.c_w('s_wp_ep',ct,0)
s.eVar18=3Dct;}

/* Look for Navigation ID - Set prop28 & 29 */
var pp=3Ds.getPreviousPage();
var nid=3Ds.getQueryParam('nid')
if(nid){s.prop28=3Dnid;s.prop29=3Dpp;}

/* Look for homepage id - Set prop 27 if HP value is previous page */
var hpid=3Ds.getQueryParam('hpid');
if(hpid && pp=3D=3D"wp - homepage - national") {s.prop27=3Dpp+' - =
'+hpid;s.eVar19=3Ds.prop27}
if(hpid && pp=3D=3D"wp - homepage - local") {s.prop27=3Dpp+' - =
'+hpid;s.eVar19=3Ds.prop27}
if(hpid && pp=3D=3D"wp - homepage - national override"){s.prop27=3Dpp+' =
- '+hpid;s.eVar19=3Ds.prop27}
if(hpid && pp=3D=3D"wp - homepage - default"){s.prop27=3Dpp+' - =
'+hpid;s.eVar19=3Ds.prop27}

var hpv=3Ds.getQueryParam('hpv');//multimedia check
if(hpid && hpv=3D=3D"local"){pp=3D"wp - homepage - =
local";s.prop27=3Dpp+' - '+hpid;s.eVar19=3Ds.prop27}
if(hpid && hpv=3D=3D"national"){pp=3D"wp - homepage - =
national";s.prop27=3Dpp+' - '+hpid;s.eVar19=3Ds.prop27}
if(hpid && hpv=3D=3D"default"){pp=3D"wp - homepage - =
default";s.prop27=3Dpp+' - '+hpid;s.eVar19=3Ds.prop27}
if(hpid && hpv=3D=3D"override"){pp=3D"wp - homepage - national =
override";s.prop27=3Dpp+' - '+hpid;s.eVar19=3Ds.prop27}

if(s.server=3D=3D"washingtonpost.com jobs"){s.eVar4=3Ds.prop6};

var temp1=3Ds.getQueryParam('reload');var =
temp2=3Ds.getQueryParam('sub');
if(temp1=3D=3D"true"){s.prop31=3D"site reload"};
if(temp2 && temp2.toLowerCase()=3D=3D"ar"){s.prop31=3D"completed sign =
in"};
if(temp2 && temp2.toLowerCase()=3D=3D"new"){s.prop31=3D"completed =
registration"};
s.prop20=3Ds.getQueryParam('tid');s.eVar20=3Ds.prop20;


}
s.doPlugins=3Ds_doPlugins
/************************** PLUGINS SECTION *************************/
/* You may insert any plugins you wish to use here.                 */
/*
 * Plugin: getQueryParam 2.1 - return query string parameter(s)
 */
s.getQueryParam=3Dnew Function("p","d","u",""
+"var =
s=3Dthis,v=3D'',i,t;d=3Dd?d:'';u=3Du?u:(s.pageURL?s.pageURL:s.wd.locati"
+"on);if(u=3D=3D'f')u=3Ds.gtfs().location;while(p){i=3Dp.indexOf(',');i=3D=
i<0?p"
+".length:i;t=3Ds.p_gpv(p.substring(0,i),u+'');if(t)v+=3Dv?d+t:t;p=3Dp.su=
bs"
+"tring(i=3D=3Dp.length?i:i+1)}return v");
s.p_gpv=3Dnew Function("k","u",""
+"var =
s=3Dthis,v=3D'',i=3Du.indexOf('?'),q;if(k&&i>-1){q=3Du.substring(i+1);v"
+"=3Ds.pt(q,'&','p_gvf',k)}return v");
s.p_gvf=3Dnew Function("t","k",""
+"if(t){var =
s=3Dthis,i=3Dt.indexOf('=3D'),p=3Di<0?t:t.substring(0,i),v=3Di<0?'T"
+"rue':t.substring(i+1);if(p.toLowerCase()=3D=3Dk.toLowerCase())return =
s."
+"epa(v)}return ''");

/*
 * Plugin: getAndPersistValue 0.3 - get a value on every page
 */
s.getAndPersistValue=3Dnew Function("v","c","e",""
+"var s=3Dthis,a=3Dnew =
Date;e=3De?e:0;a.setTime(a.getTime()+e*86400000);if("
+"v)s.c_w(c,v,e?a:0);return s.c_r(c);");

/*
 * Plugin: Days since last Visit 1.0.H
 */
s.getDaysSinceLastVisit=3Dnew Function(""
+"var s=3Dthis,e=3Dnew =
Date(),cval,ct=3De.getTime(),c=3D's_lastvisit',day=3D24*"
+"60*60*1000;e.setTime(ct+3*365*day);cval=3Ds.c_r(c);if(!cval){s.c_w(c,"
+"ct,e);return 'First page view or cookies not supported';}else{var d"
+"=3Dct-cval;if(d>30*60*1000){if(d>30*day){s.c_w(c,ct,e);return 'More t"
+"han 30 days';}if(d<30*day+1 && d>7*day){s.c_w(c,ct,e);return 'More "
+"than 7 days';}if(d<7*day+1 && d>day){s.c_w(c,ct,e);return 'Less tha"
+"n 7 days';}if(d<day+1){s.c_w(c,ct,e);return 'Less than 1 day';}}els"
+"e return '';}"
);


/*                                                                 =20
 * Plugin: Visit Number By Month 2.0 - Return the user visit number=20
 */
s.getVisitNum=3Dnew Function(""
+"var s=3Dthis,e=3Dnew =
Date(),cval,cvisit,ct=3De.getTime(),c=3D's_vnum',c2=3D's"
+"_invisit';e.setTime(ct+30*24*60*60*1000);cval=3Ds.c_r(c);if(cval){var"
+" =
i=3Dcval.indexOf('&vn=3D'),str=3Dcval.substring(i+4,cval.length),k;}cvis"=

+"it=3Ds.c_r(c2);if(cvisit){if(str){e.setTime(ct+30*60*1000);s.c_w(c2,'"
+"true',e);return str;}else return 'unknown visit number';}else{if(st"
+"r){str++;k=3Dcval.substring(0,i);e.setTime(k);s.c_w(c,k+'&vn=3D'+str,e)=
"
+";e.setTime(ct+30*60*1000);s.c_w(c2,'true',e);return str;}else{s.c_w"
+"(c,ct+30*24*60*60*1000+'&vn=3D1',e);e.setTime(ct+30*60*1000);s.c_w(c2"
+",'true',e);return 1;}}"
);

/*
 * Plugin: getNewRepeat 1.0 - Return whether user is new or repeat
 */
s.getNewRepeat=3Dnew Function(""
+"var s=3Dthis,e=3Dnew =
Date(),cval,ct=3De.getTime(),y=3De.getYear();e.setTime"
+"(ct+30*24*60*60*1000);cval=3Ds.c_r('s_nr');if(cval.length=3D=3D0){s.c_w=
("
+"'s_nr',ct,e);return 'New';}if(cval.length!=3D0&&ct-cval<30*60*1000){s"
+".c_w('s_nr',ct,e);return 'New';}if(cval<1123916400001){e.setTime(cv"
+"al+30*24*60*60*1000);s.c_w('s_nr',ct,e);return 'Repeat';}else retur"
+"n 'Repeat';");


/*
 * Plugin: getTimeParting 1.3 - Set timeparting values based on time =
zone
 */

s.getTimeParting=3Dnew Function("t","z","y",""
+"dc=3Dnew Date('1/1/2000');var f=3D15;var ne=3D8;if(dc.getDay()!=3D6||"
+"dc.getMonth()!=3D0){return'Data Not Available'}else{;z=3DparseInt(z);"
+"if(y=3D=3D'2009'){f=3D8;ne=3D1};gmar=3Dnew =
Date('3/1/'+y);dsts=3Df-gmar.getDay("
+");gnov=3Dnew Date('11/1/'+y);dste=3Dne-gnov.getDay();spr=3Dnew =
Date('3/'"
+"+dsts+'/'+y);fl=3Dnew Date('11/'+dste+'/'+y);cd=3Dnew Date();"
+"if(cd>spr&&cd<fl){z=3Dz+1}else{z=3Dz};utc=3Dcd.getTime()+(cd.getTimezon=
eO"
+"ffset()*60000);tz=3Dnew Date(utc + =
(3600000*z));thisy=3Dtz.getFullYear("
+");var days=3D['Sunday','Monday','Tuesday','Wednesday','Thursday','Fr"
+"iday','Saturday'];if(thisy!=3Dy){return'Data Not Available'}else{;thi"
+"sh=3Dtz.getHours();thismin=3Dtz.getMinutes();thisd=3Dtz.getDay();var =
dow=3D"
+"days[thisd];var ap=3D'AM';var dt=3D'Weekday';var =
mint=3D'00';if(thismin>3"
+"0){mint=3D'30'}if(thish>=3D12){ap=3D'PM';thish=3Dthish-12};if =
(thish=3D=3D0){th"
+"ish=3D12};if(thisd=3D=3D6||thisd=3D=3D0){dt=3D'Weekend'};var =
timestring=3Dthish+'"
+":'+mint+ap;var daystring=3Ddow;var =
endstring=3Ddt;if(t=3D=3D'h'){return tim"
+"estring}if(t=3D=3D'd'){return daystring};if(t=3D=3D'w'){return en"
+"dstring}}};"
);

/*
 * Plugin: getPreviousPage_v1.1 - return previous page based on event =
list
 */
s.getPreviousPage=3Dnew Function("el",""
+"var s=3Dthis,pid,i,j,e;if(el){if(s.events){while(el){if(pid){break;}i"
+"=3Del.indexOf(',');i=3Di<0?el.length:i;e=3Ds.events;while(e){j=3De.inde=
xOf("
+"',');j=3Dj<0?e.length:j;if(e.substring(0,j)=3D=3Del.substring(0,i)){pid=
=3Ds"
+".p_gpp();}e=3De.substring(j=3D=3De.length?j:j+1);}el=3Del.substring(i=3D=
=3Del.l"
+"ength?i:i+1);}}}else{pid=3Ds.p_gpp();}return pid;");

/*
 * Utility Function: p_gpp
 */
s.p_gpp=3Dnew Function(""
+"var =
s=3Dthis,p,i;p=3Ds.rq(s.un);i=3Dp.indexOf('pid=3D')+4;p=3Dp.substring(i,p=
"
+".length);i=3Dp.indexOf('&');p=3Dp.substring(0,i);p=3Dunescape(p);return=
 p"
+";");

/*
 * Function - read combined cookies v 0.2
 */
s.c_rr=3Ds.c_r;
s.c_r=3Dnew Function("k",""
+"var s=3Dthis,d=3Dnew =
Date,v=3Ds.c_rr(k),c=3Ds.c_rr('s_pers'),i,m,e;if(v)ret"
+"urn v;k=3Ds.ape(k);i=3Dc.indexOf(' =
'+k+'=3D');c=3Di<0?s.c_rr('s_sess'):c;i=3D"
+"c.indexOf(' =
'+k+'=3D');m=3Di<0?i:c.indexOf('|',i);e=3Di<0?i:c.indexOf(';'"
+",i);m=3Dm>0?m:e;v=3Di<0?'':s.epa(c.substring(i+2+k.length,m<0?c.length:=
"
+"m));if(m>0&&m!=3De)if(parseInt(c.substring(m+1,e<0?c.length:e))<d.get"
+"Time()){d.setTime(d.getTime()-60000);s.c_w(s.epa(k),'',d);v=3D'';}ret"
+"urn v;");
/*
 * Function - write combined cookies v 0.2
 */
s.c_wr=3Ds.c_w;
s.c_w=3Dnew Function("k","v","e",""
+"var s=3Dthis,d=3Dnew =
Date,ht=3D0,pn=3D's_pers',sn=3D's_sess',pc=3D0,sc=3D0,pv,sv,"
+"c,i,t;d.setTime(d.getTime()-60000);if(s.c_rr(k)) s.c_wr(k,'',d);k=3Ds"
+".ape(k);pv=3Ds.c_rr(pn);i=3Dpv.indexOf(' =
'+k+'=3D');if(i>-1){pv=3Dpv.substr"
+"ing(0,i)+pv.substring(pv.indexOf(';',i)+1);pc=3D1;}sv=3Ds.c_rr(sn);i=3D=
sv"
+".indexOf(' =
'+k+'=3D');if(i>-1){sv=3Dsv.substring(0,i)+sv.substring(sv.i"
+"ndexOf(';',i)+1);sc=3D1;}d=3Dnew =
Date;if(e){if(e.getTime()>d.getTime())"
+"{pv+=3D' '+k+'=3D'+s.ape(v)+'|'+e.getTime()+';';pc=3D1;}}else{sv+=3D' =
'+k+'"
+"=3D'+s.ape(v)+';';sc=3D1;}if(sc) =
s.c_wr(sn,sv,0);if(pc){t=3Dpv;while(t&&t"
+".indexOf(';')!=3D-1){var =
t1=3DparseInt(t.substring(t.indexOf('|')+1,t.i"
+"ndexOf(';')));t=3Dt.substring(t.indexOf(';')+1);ht=3Dht<t1?t1:ht;}d.set=
"
+"Time(ht);s.c_wr(pn,pv,d);}return v=3D=3Ds.c_r(s.epa(k));");


/* WARNING: Changing any of the below variables will cause drastic
changes to how your visitor data is collected.  Changes should only be
made when instructed to do so by your account manager.*/
s.visitorNamespace=3D"wpni"
s.trackingServer=3D"metrics.washingtonpost.com"
s.trackingServerSecure=3D"smetrics.washingtonpost.com"
s.dc=3D112
//s.vmk=3D"46BF8B07"

/************* DO NOT ALTER ANYTHING BELOW THIS LINE ! **************/
var s_objectID;function s_c2fe(f){var x=3D'',s=3D0,e,a,b,c;while(1){e=3D
f.indexOf('"',s);b=3Df.indexOf('\\',s);c=3Df.indexOf("\n",s);if(e<0||(b>=3D=

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):
'')+(e=3D=3Dc?'\\n':'\\'+f.substring(e,e+1));s=3De+1}else return x
+f.substring(s)}return f}function s_c2fa(f){var =
s=3Df.indexOf('(')+1,e=3D
f.indexOf(')'),a=3D'',c;while(s>=3D0&&s<e){c=3Df.substring(s,s+1);if(c=3D=
=3D',')
a+=3D'","';else if(("\n\r\t ").indexOf(c)<0)a+=3Dc;s++}return =
a?'"'+a+'"':
a}function s_c2f(cc){cc=3D''+cc;var fc=3D'var f=3Dnew Function(',s=3D
cc.indexOf(';',cc.indexOf('{')),e=3Dcc.lastIndexOf('}'),o,a,d,q,c,f,h,x
fc+=3Ds_c2fa(cc)+',"var s=3Dnew Object;';c=3Dcc.substring(s+1,e);s=3D
c.indexOf('function');while(s>=3D0){d=3D1;q=3D'';x=3D0;f=3Dc.substring(s)=
;a=3D
s_c2fa(f);e=3Do=3Dc.indexOf('{',s);e++;while(d>0){h=3Dc.substring(e,e+1);=
if(
q){if(h=3D=3Dq&&!x)q=3D'';if(h=3D=3D'\\')x=3Dx?0:1;else =
x=3D0}else{if(h=3D=3D'"'||h=3D=3D"'"
)q=3Dh;if(h=3D=3D'{')d++;if(h=3D=3D'}')d--}if(d>0)e++}c=3Dc.substring(0,s=
)
+'new Function('+(a?a+',':'')+'"'+s_c2fe(c.substring(o+1,e))+'")'
+c.substring(e+1);s=3Dc.indexOf('function')}fc+=3Ds_c2fe(c)+';return =
s");'
eval(fc);return f}function s_gi(un,pg,ss){var c=3D"function s_c(un,pg,s"
+"s){var s=3Dthis;s.wd=3Dwindow;if(!s.wd.s_c_in){s.wd.s_c_il=3Dnew =
Array;s."
+"wd.s_c_in=3D0;}s._il=3Ds.wd.s_c_il;s._in=3Ds.wd.s_c_in;s._il[s._in]=3Ds=
;s.w"
+"d.s_c_in++;s.m=3Dfunction(m){return =
(''+m).indexOf('{')<0};s.fl=3Dfunct"
+"ion(x,l){return x?(''+x).substring(0,l):x};s.co=3Dfunction(o){if(!o)r"
+"eturn o;var n=3Dnew Object,x;for(x in o)if(x.indexOf('select')<0&&x.i"
+"ndexOf('filter')<0)n[x]=3Do[x];return =
n};s.num=3Dfunction(x){x=3D''+x;for"
+"(var p=3D0;p<x.length;p++)if(('0123456789').indexOf(x.substring(p,p+1"
+"))<0)return 0;return 1};s.rep=3Dfunction(x,o,n){var =
i=3Dx.indexOf(o);wh"
+"ile(x&&i>=3D0){x=3Dx.substring(0,i)+n+x.substring(i+o.length);i=3Dx.ind=
ex"
+"Of(o,i+n.length)}return x};s.ape=3Dfunction(x){var =
s=3Dthis,h=3D'01234567"
+"89ABCDEF',i,c=3Ds.charSet,n,l,e,y=3D'';c=3Dc?c.toUpperCase():'';if(x){x=
=3D'"
+"'+x;if(c=3D=3D'AUTO'&&('').charCodeAt){for(i=3D0;i<x.length;i++){c=3Dx.=
subs"
+"tring(i,i+1);n=3Dx.charCodeAt(i);if(n>127){l=3D0;e=3D'';while(n||l<4){e=
=3Dh"
+".substring(n%16,n%16+1)+e;n=3DparseInt(n/16);l++}y+=3D'%u'+e}else =
if(c=3D"
+"=3D'+')y+=3D'%2B';else =
y+=3Descape(c)}x=3Dy}else{x=3Dx?s.rep(escape(''+x),'+'"
+",'%2B'):x;if(x&&c&&s.em=3D=3D1&&x.indexOf('%u')<0&&x.indexOf('%U')<0){i=
"
+"=3Dx.indexOf('%');while(i>=3D0){i++;if(h.substring(8).indexOf(x.substri=
"
+"ng(i,i+1).toUpperCase())>=3D0)return x.substring(0,i)+'u00'+x.substri"
+"ng(i);i=3Dx.indexOf('%',i)}}}}return x};s.epa=3Dfunction(x){var =
s=3Dthis;"
+"return x?unescape(s.rep(''+x,'+',' ')):x};s.pt=3Dfunction(x,d,f,a){va"
+"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"
+"ubstring(0,y);r=3Ds.m(f)?s[f](t,a):f(t,a);if(r)return =
r;z+=3Dy+d.length"
+";t=3Dx.substring(z,x.length);t=3Dz<x.length?t:''}return =
''};s.isf=3Dfunct"
+"ion(t,a){var =
c=3Da.indexOf(':');if(c>=3D0)a=3Da.substring(0,c);if(t.subst"
+"ring(0,2)=3D=3D's_')t=3Dt.substring(2);return =
(t!=3D''&&t=3D=3Da)};s.fsf=3Dfuncti"
+"on(t,a){var =
s=3Dthis;if(s.pt(a,',','isf',t))s.fsg+=3D(s.fsg!=3D''?',':'')"
+"+t;return 0};s.fs=3Dfunction(x,f){var =
s=3Dthis;s.fsg=3D'';s.pt(x,',','fsf"
+"',f);return s.fsg};s.c_d=3D'';s.c_gdf=3Dfunction(t,a){var =
s=3Dthis;if(!s."
+"num(t))return 1;return 0};s.c_gd=3Dfunction(){var =
s=3Dthis,d=3Ds.wd.locat"
+"ion.hostname,n=3Ds.fpCookieDomainPeriods,p;if(!n)n=3Ds.cookieDomainPeri=
"
+"ods;if(d&&!s.c_d){n=3Dn?parseInt(n):2;n=3Dn>2?n:2;p=3Dd.lastIndexOf('.'=
);"
+"if(p>=3D0){while(p>=3D0&&n>1){p=3Dd.lastIndexOf('.',p-1);n--}s.c_d=3Dp>=
0&&s"
+".pt(d,'.','c_gdf',0)?d.substring(p):d}}return s.c_d};s.c_r=3Dfunction"
+"(k){var s=3Dthis;k=3Ds.ape(k);var c=3D' '+s.d.cookie,i=3Dc.indexOf(' =
'+k+'=3D"
+"'),e=3Di<0?i:c.indexOf(';',i),v=3Di<0?'':s.epa(c.substring(i+2+k.length=
"
+",e<0?c.length:e));return =
v!=3D'[[B]]'?v:''};s.c_w=3Dfunction(k,v,e){var"
+" =
s=3Dthis,d=3Ds.c_gd(),l=3Ds.cookieLifetime,t;v=3D''+v;l=3Dl?(''+l).toUppe=
rCa"
+"se():'';if(e&&l!=3D'SESSION'&&l!=3D'NONE'){t=3D(v!=3D''?parseInt(l?l:0)=
:-60"
+");if(t){e=3Dnew =
Date;e.setTime(e.getTime()+(t*1000))}}if(k&&l!=3D'NONE'"
+"){s.d.cookie=3Dk+'=3D'+s.ape(v!=3D''?v:'[[B]]')+'; =
path=3D/;'+(e&&l!=3D'SESSI"
+"ON'?' expires=3D'+e.toGMTString()+';':'')+(d?' =
domain=3D'+d+';':'');ret"
+"urn s.c_r(k)=3D=3Dv}return 0};s.eh=3Dfunction(o,e,r,f){var =
s=3Dthis,b=3D's_'+"
+"e+'_'+s._in,n=3D-1,l,i,x;if(!s.ehl)s.ehl=3Dnew =
Array;l=3Ds.ehl;for(i=3D0;i<"
+"l.length&&n<0;i++){if(l[i].o=3D=3Do&&l[i].e=3D=3De)n=3Di}if(n<0){n=3Di;=
l[n]=3Dnew"
+" =
Object}x=3Dl[n];x.o=3Do;x.e=3De;f=3Dr?x.b:f;if(r||f){x.b=3Dr?0:o[e];x.o[e=
]=3Df"
+"}if(x.b){x.o[b]=3Dx.b;return b}return =
0};s.cet=3Dfunction(f,a,t,o,b){va"
+"r =
s=3Dthis,r;if(s.apv>=3D5&&(!s.isopera||s.apv>=3D7))eval('try{r=3Ds.m(f)?s=
"
+"[f](a):f(a)}catch(e){r=3Ds.m(t)?s[t](e):t(e)}');else{if(s.ismac&&s.u."
+"indexOf('MSIE =
4')>=3D0)r=3Ds.m(b)?s[b](a):b(a);else{s.eh(s.wd,'onerror'"
+",0,o);r=3Ds.m(f)?s[f](a):f(a);s.eh(s.wd,'onerror',1)}}return r};s.gtf"
+"set=3Dfunction(e){var s=3Dthis;return s.tfs};s.gtfsoe=3Dnew =
Function('e',"
+"'var s=3Ds_c_il['+s._in+'];s.eh(window,\"onerror\",1);s.etfs=3D1;var =
c=3D"
+"s.t();if(c)s.d.write(c);s.etfs=3D0;return =
true');s.gtfsfb=3Dfunction(a)"
+"{return window};s.gtfsf=3Dfunction(w){var =
s=3Dthis,p=3Dw.parent,l=3Dw.locat"
+"ion;s.tfs=3Dw;if(p&&p.location!=3Dl&&p.location.host=3D=3Dl.host){s.tfs=
=3Dp;r"
+"eturn s.gtfsf(s.tfs)}return s.tfs};s.gtfs=3Dfunction(){var =
s=3Dthis;if("
+"!s.tfs){s.tfs=3Ds.wd;if(!s.etfs)s.tfs=3Ds.cet('gtfsf',s.tfs,'gtfset',s.=
"
+"gtfsoe,'gtfsfb')}return s.tfs};s.mr=3Dfunction(sess,q,ta){var =
s=3Dthis,"
+"dc=3Ds.dc,t1=3Ds.trackingServer,t2=3Ds.trackingServerSecure,ns=3Ds.visi=
torN"
+"amespace,unc=3Ds.rep(s.fun,'_','-'),imn=3D's_i_'+s.fun,im,b,e,rs=3D'htt=
p'"
+"+(s.ssl?'s':'')+'://'+(t1?(s.ssl&&t2?t2:t1):((ns?ns:(s.ssl?'102':un"
+"c))+'.'+(s.dc?s.dc:112)+'.2o7.net'))+'/b/ss/'+s.un+'/1/H.10-Pdvu-2/"
+"'+sess+'?[AQB]&ndh=3D1'+(q?q:'')+(s.q?s.q:'')+'&[AQE]';if(s.isie&&!s."
+"ismac){if(s.apv>5.5)rs=3Ds.fl(rs,4095);else =
rs=3Ds.fl(rs,2047)}if(s.d.i"
+"mages&&s.apv>=3D3&&(!s.isopera||s.apv>=3D7)&&(s.ns6<0||s.apv>=3D6.1)){i=
m=3D"
+"s.wd[imn];if(!im)im=3Ds.wd[imn]=3Dnew =
Image;im.src=3Drs;if(rs.indexOf('&p"
+"e=3D')>=3D0&&(!ta||ta=3D=3D'_self'||ta=3D=3D'_top'||(s.wd.name&&ta=3D=3D=
s.wd.name))"
+"){b=3De=3Dnew Date;while(e.getTime()-b.getTime()<500)e=3Dnew =
Date}return "
+"''}return '<im'+'g sr'+'c=3D\"'+rs+'\" width=3D1 height=3D1 border=3D0 =
alt=3D"
+"\"\">'};s.gg=3Dfunction(v){var s=3Dthis;return =
s.wd['s_'+v]};s.glf=3Dfunc"
+"tion(t,a){if(t.substring(0,2)=3D=3D's_')t=3Dt.substring(2);var =
s=3Dthis,v=3Ds"
+".gg(t);if(v)s[t]=3Dv};s.gl=3Dfunction(v){var =
s=3Dthis;if(s.pg)s.pt(v,',',"
+"'glf',0)};s.gv=3Dfunction(v){var s=3Dthis;return =
s['vpm_'+v]?s['vpv_'+v"
+"]:(s[v]?s[v]:'')};s.havf=3Dfunction(t,a){var =
s=3Dthis,b=3Dt.substring(0,4"
+"),x=3Dt.substring(4),n=3DparseInt(x),k=3D'g_'+t,m=3D'vpm_'+t,q=3Dt,v=3D=
s.linkTr"
+"ackVars,e=3Ds.linkTrackEvents;s[k]=3Ds.gv(t);if(s.lnk||s.eo){v=3Dv?v+',=
'+"
+"s.vl_l:'';if(v&&!s.pt(v,',','isf',t))s[k]=3D'';if(t=3D=3D'events'&&e)s[=
k]"
+"=3Ds.fs(s[k],e)}s[m]=3D0;if(t=3D=3D'visitorID')q=3D'vid';else =
if(t=3D=3D'pageURL'"
+"){q=3D'g';s[k]=3Ds.fl(s[k],255)}else =
if(t=3D=3D'referrer'){q=3D'r';s[k]=3Ds.fl("
+"s[k],255)}else if(t=3D=3D'vmk')q=3D'vmt';else =
if(t=3D=3D'charSet'){q=3D'ce';if("
+"s[k]&&s[k].toUpperCase()=3D=3D'AUTO')s[k]=3D'ISO8859-1';else =
if(s[k]&&s.e"
+"m=3D=3D2)s[k]=3D'UTF-8'}else =
if(t=3D=3D'visitorNamespace')q=3D'ns';else if(t=3D=3D'"
+"cookieDomainPeriods')q=3D'cdp';else =
if(t=3D=3D'cookieLifetime')q=3D'cl';els"
+"e if(t=3D=3D'variableProvider')q=3D'vvp';else =
if(t=3D=3D'currencyCode')q=3D'cc'"
+";else if(t=3D=3D'channel')q=3D'ch';else =
if(t=3D=3D'transactionID')q=3D'xact';el"
+"se if(t=3D=3D'campaign')q=3D'v0';else =
if(s.num(x)){if(b=3D=3D'prop')q=3D'c'+n;e"
+"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],"
+"255)}}if(s[k]&&t!=3D'linkName'&&t!=3D'linkType')s.qav+=3D'&'+q+'=3D'+s.=
ape("
+"s[k]);return ''};s.hav=3Dfunction(){var =
s=3Dthis;s.qav=3D'';s.pt(s.vl_t,'"
+",','havf',0);return =
s.qav};s.lnf=3Dfunction(t,h){t=3Dt?t.toLowerCase():"
+"'';h=3Dh?h.toLowerCase():'';var =
te=3Dt.indexOf('=3D');if(t&&te>0&&h.index"
+"Of(t.substring(te+1))>=3D0)return t.substring(0,te);return =
''};s.ln=3Df"
+"unction(h){var s=3Dthis,n=3Ds.linkNames;if(n)return =
s.pt(n,',','lnf',h)"
+";return =
''};s.ltdf=3Dfunction(t,h){t=3Dt?t.toLowerCase():'';h=3Dh?h.toLow"
+"erCase():'';var =
qi=3Dh.indexOf('?');h=3Dqi>=3D0?h.substring(0,qi):h;if(t&"
+"&h.substring(h.length-(t.length+1))=3D=3D'.'+t)return 1;return =
0};s.lte"
+"f=3Dfunction(t,h){t=3Dt?t.toLowerCase():'';h=3Dh?h.toLowerCase():'';if(=
t&"
+"&h.indexOf(t)>=3D0)return 1;return 0};s.lt=3Dfunction(h){var =
s=3Dthis,lft"
+"=3Ds.linkDownloadFileTypes,lef=3Ds.linkExternalFilters,lif=3Ds.linkInte=
rn"
+"alFilters;lif=3Dlif?lif:s.wd.location.hostname;h=3Dh.toLowerCase();if(s=
"
+".trackDownloadLinks&&lft&&s.pt(lft,',','ltdf',h))return 'd';if(s.tr"
+"ackExternalLinks&&(lef||lif)&&(!lef||s.pt(lef,',','ltef',h))&&(!lif"
+"||!s.pt(lif,',','ltef',h)))return 'e';return ''};s.lc=3Dnew Function("
+"'e','var =
s=3Ds_c_il['+s._in+'],b=3Ds.eh(this,\"onclick\");s.lnk=3Ds.co(th"
+"is);s.t();s.lnk=3D0;if(b)return this[b](e);return true');s.bc=3Dnew =
Fun"
+"ction('e','var s=3Ds_c_il['+s._in+'],f;if(s.d&&s.d.all&&s.d.all.cppXY"
+"ctnr)return;s.eo=3De.srcElement?e.srcElement:e.target;eval(\"try{if(s"
+".eo&&(s.eo.tagName||s.eo.parentElement||s.eo.parentNode))s.t()}catc"
+"h(f){}\");s.eo=3D0');s.ot=3Dfunction(o){var =
a=3Do.type,b=3Do.tagName;return"
+" (a&&a.toUpperCase?a:b&&b.toUpperCase?b:o.href?'A':'').toUpperCase("
+")};s.oid=3Dfunction(o){var =
s=3Dthis,t=3Ds.ot(o),p=3Do.protocol,c=3Do.onclick,"
+"n=3D'',x=3D0;if(!o.s_oid){if(o.href&&(t=3D=3D'A'||t=3D=3D'AREA')&&(!c||=
!p||p.to"
+"LowerCase().indexOf('javascript')<0))n=3Do.href;else =
if(c){n=3Ds.rep(s."
+"rep(s.rep(s.rep(''+c,\"\\r\",''),\"\\n\",''),\"\\t\",''),' ','');x=3D"
+"2}else =
if(o.value&&(t=3D=3D'INPUT'||t=3D=3D'SUBMIT')){n=3Do.value;x=3D3}else =
if"
+"(o.src&&t=3D=3D'IMAGE')n=3Do.src;if(n){o.s_oid=3Ds.fl(n,100);o.s_oidt=3D=
x}}re"
+"turn o.s_oid};s.rqf=3Dfunction(t,un){var =
s=3Dthis,e=3Dt.indexOf('=3D'),u=3De>"
+"=3D0?','+t.substring(0,e)+',':'';return =
u&&u.indexOf(','+un+',')>=3D0?s"
+".epa(t.substring(e+1)):''};s.rq=3Dfunction(un){var =
s=3Dthis,c=3Dun.indexO"
+"f(','),v=3Ds.c_r('s_sq'),q=3D'';if(c<0)return =
s.pt(v,'&','rqf',un);retu"
+"rn s.pt(un,',','rq',0)};s.sqp=3Dfunction(t,a){var =
s=3Dthis,e=3Dt.indexOf("
+"'=3D'),q=3De<0?'':s.epa(t.substring(e+1));s.sqq[q]=3D'';if(e>=3D0)s.pt(=
t.su"
+"bstring(0,e),',','sqs',q);return 0};s.sqs=3Dfunction(un,q){var =
s=3Dthis"
+";s.squ[un]=3Dq;return 0};s.sq=3Dfunction(q){var =
s=3Dthis,k=3D's_sq',v=3Ds.c_r"
+"(k),x,c=3D0;s.sqq=3Dnew Object;s.squ=3Dnew =
Object;s.sqq[q]=3D'';s.pt(v,'&',"
+"'sqp',0);s.pt(s.un,',','sqs',q);v=3D'';for(x in s.squ)s.sqq[s.squ[x]]"
+"+=3D(s.sqq[s.squ[x]]?',':'')+x;for(x in =
s.sqq)if(x&&s.sqq[x]&&(x=3D=3Dq||"
+"c<2)){v+=3D(v?'&':'')+s.sqq[x]+'=3D'+s.ape(x);c++}return =
s.c_w(k,v,0)};"
+"s.wdl=3Dnew Function('e','var =
s=3Ds_c_il['+s._in+'],r=3Dtrue,b=3Ds.eh(s.wd,"
+"\"onload\"),i,o,oc;if(b)r=3Dthis[b](e);for(i=3D0;i<s.d.links.length;i++=
"
+"){o=3Ds.d.links[i];oc=3Do.onclick?\"\"+o.onclick:\"\";if((oc.indexOf(\"=
"
+"s_gs(\")<0||oc.indexOf(\".s_oc(\")>=3D0)&&oc.indexOf(\".tl(\")<0)s.eh"
+"(o,\"onclick\",0,s.lc);}return r');s.wds=3Dfunction(){var =
s=3Dthis;if(s"
+".apv>3&&(!s.isie||!s.ismac||s.apv>=3D5)){if(s.b&&s.b.attachEvent)s.b."
+"attachEvent('onclick',s.bc);else if(s.b&&s.b.addEventListener)s.b.a"
+"ddEventListener('click',s.bc,false);else s.eh(s.wd,'onload',0,s.wdl"
+")}};s.vs=3Dfunction(x){var =
s=3Dthis,v=3Ds.visitorSampling,g=3Ds.visitorSamp"
+"lingGroup,k=3D's_vsn_'+s.un+(g?'_'+g:''),n=3Ds.c_r(k),e=3Dnew =
Date,y=3De.ge"
+"tYear();e.setYear(y+10+(y<1900?1900:0));if(v){v*=3D100;if(!n){if(!s.c"
+"_w(k,x,e))return 0;n=3Dx}if(n%10000>v)return 0}return =
1};s.dyasmf=3Dfun"
+"ction(t,m){if(t&&m&&m.indexOf(t)>=3D0)return 1;return =
0};s.dyasf=3Dfunc"
+"tion(t,m){var s=3Dthis,i=3Dt?t.indexOf('=3D'):-1,n,x;if(i>=3D0&&m){var =
n=3Dt."
+"substring(0,i),x=3Dt.substring(i+1);if(s.pt(x,',','dyasmf',m))return "
+"n}return 0};s.uns=3Dfunction(){var =
s=3Dthis,x=3Ds.dynamicAccountSelection"
+",l=3Ds.dynamicAccountList,m=3Ds.dynamicAccountMatch,n,i;s.un.toLowerCas=
"
+"e();if(x&&l){if(!m)m=3Ds.wd.location.host;if(!m.toLowerCase)m=3D''+m;l=3D=
"
+"l.toLowerCase();m=3Dm.toLowerCase();n=3Ds.pt(l,';','dyasf',m);if(n)s.un=
"
+"=3Dn}i=3Ds.un.indexOf(',');s.fun=3Di<0?s.un:s.un.substring(0,i)};s.sa=3D=
fun"
+"ction(un){var s=3Dthis;s.un=3Dun;if(!s.oun)s.oun=3Dun;else =
if((','+s.oun+"
+"',').indexOf(un)<0)s.oun+=3D','+un;s.uns()};s.t=3Dfunction(){var =
s=3Dthis"
+",trk=3D1,tm=3Dnew =
Date,sed=3DMath&&Math.random?Math.floor(Math.random()*1"
+"0000000000000):tm.getTime(),sess=3D's'+Math.floor(tm.getTime()/108000"
+"00)%10+sed,yr=3Dtm.getYear(),vt=3Dtm.getDate()+'/'+tm.getMonth()+'/'+(y=
"
+"r<1900?yr+1900:yr)+' '+tm.getHours()+':'+tm.getMinutes()+':'+tm.get"
+"Seconds()+' '+tm.getDay()+' '+tm.getTimezoneOffset(),tfs=3Ds.gtfs(),t"
+"a=3D'',q=3D'',qs=3D'';s.gl(s.vl_g);s.uns();if(!s.q){var =
tl=3Dtfs.location,a"
+",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',"
+"0)?'Y':'N',hp=3D'',ct=3D'',pn=3D0,ps;if(String&&String.prototype){j=3D\=
"1.1"
+"\";if(j.match){j=3D\"1.2\";if(tm.setUTCDate){j=3D\"1.3\";if(s.isie&&s.i=
"
+"smac&&s.apv>=3D5)j=3D\"1.4\";if(pn.toPrecision){j=3D\"1.5\";a=3Dnew =
Array;i"
+"f(a.forEach){j=3D\"1.6\";i=3D0;o=3Dnew Object;eval(\"try{i=3Dnew =
Iterator(o"
+")}catch(e){}\");if(i&&i.next)j=3D\"1.7\"}}}}}if(s.apv>=3D4)x=3Dscreen.w=
id"
+"th+'x'+screen.height;if(s.isns||s.isopera){if(s.apv>=3D3){v=3Ds.n.javaE=
"
+"nabled()?'Y':'N';if(s.apv>=3D4){c=3Dscreen.pixelDepth;bw=3Ds.wd.innerWi=
dt"
+"h;bh=3Ds.wd.innerHeight;}}s.pl=3Ds.n.plugins}else =
if(s.isie){if(s.apv>=3D"
+"4){v=3Ds.n.javaEnabled()?'Y':'N';c=3Dscreen.colorDepth;if(s.apv>=3D5){b=
w=3D"
+"s.d.documentElement.offsetWidth;bh=3Ds.d.documentElement.offsetHeight"
+";if(!s.ismac&&s.b){eval(\"try{s.b.addBehavior('#default#homePage');"
+"hp=3Ds.b.isHomePage(tl)?'Y':'N'}catch(e){}\");eval(\"try{s.b.addBehav"
+"ior('#default#clientCaps');ct=3Ds.b.connectionType}catch(e){}\")}}}el"
+"se =
r=3D''}if(s.pl)while(pn<s.pl.length&&pn<30){ps=3Ds.fl(s.pl[pn].name,"
+"100)+';';if(p.indexOf(ps)<0)p+=3Dps;pn++}s.q=3D(x?'&s=3D'+s.ape(x):'')+=
(c"
+"?'&c=3D'+s.ape(c):'')+(j?'&j=3D'+j:'')+(v?'&v=3D'+v:'')+(k?'&k=3D'+k:''=
)+(b"
+"w?'&bw=3D'+bw:'')+(bh?'&bh=3D'+bh:'')+(ct?'&ct=3D'+s.ape(ct):'')+(hp?'&=
hp"
+"=3D'+hp:'')+(p?'&p=3D'+s.ape(p):'')}if(s.usePlugins)s.doPlugins(s);var =
"
+"l=3Ds.wd.location,r=3Dtfs.document.referrer;if(!s.pageURL)s.pageURL=3Dl=
;i"
+"f(!s.referrer)s.referrer=3Dr;if(s.lnk||s.eo){var =
o=3Ds.eo?s.eo:s.lnk;if"
+"(!o)return '';var =
p=3Ds.gv('pageName'),w=3D1,t=3Ds.ot(o),n=3Ds.oid(o),x=3Do.s"
+"_oidt,h,l,i,oc;if(s.eo&&o=3D=3Ds.eo){while(o&&!n&&t!=3D'BODY'){o=3Do.pa=
rent"
+"Element?o.parentElement:o.parentNode;if(!o)return =
'';t=3Ds.ot(o);n=3Ds."
+"oid(o);x=3Do.s_oidt}oc=3Do.onclick?''+o.onclick:'';if((oc.indexOf(\"s_g=
"
+"s(\")>=3D0&&oc.indexOf(\".s_oc(\")<0)||oc.indexOf(\".tl(\")>=3D0)return=
"
+" =
''}ta=3Dn?o.target:1;h=3Do.href?o.href:'';i=3Dh.indexOf('?');h=3Ds.linkLe=
a"
+"veQueryString||i<0?h:h.substring(0,i);l=3Ds.linkName?s.linkName:s.ln("
+"h);t=3Ds.linkType?s.linkType.toLowerCase():s.lt(h);if(t&&(h||l))q+=3D'&=
"
+"pe=3Dlnk_'+(t=3D=3D'd'||t=3D=3D'e'?s.ape(t):'o')+(h?'&pev1=3D'+s.ape(h)=
:'')+(l?"
+"'&pev2=3D'+s.ape(l):'');else =
trk=3D0;if(s.trackInlineStats){if(!p){p=3Ds."
+"gv('pageURL');w=3D0}t=3Ds.ot(o);i=3Do.sourceIndex;if(s.gg('objectID')){=
n=3D"
+"s.gg('objectID');x=3D1;i=3D1}if(p&&n&&t)qs=3D'&pid=3D'+s.ape(s.fl(p,255=
))+("
+"w?'&pidt=3D'+w:'')+'&oid=3D'+s.ape(s.fl(n,100))+(x?'&oidt=3D'+x:'')+'&o=
t=3D"
+"'+s.ape(t)+(i?'&oi=3D'+i:'')}}if(!trk&&!qs)return '';if(s.p_r)s.p_r()"
+";var =
code=3D'';if(trk&&s.vs(sed))code=3Ds.mr(sess,(vt?'&t=3D'+s.ape(vt):'"
+"')+s.hav()+q+(qs?qs:s.rq(s.un)),ta);s.sq(trk?'':qs);s.lnk=3Ds.eo=3Ds.li=
"
+"nkName=3Ds.linkType=3Ds.wd.s_objectID=3Ds.ppu=3D'';if(s.pg)s.wd.s_lnk=3D=
s.wd."
+"s_eo=3Ds.wd.s_linkName=3Ds.wd.s_linkType=3D'';return =
code};s.tl=3Dfunction("
+"o,t,n){var =
s=3Dthis;s.lnk=3Ds.co(o);s.linkType=3Dt;s.linkName=3Dn;s.t()};s."
+"ssl=3D(s.wd.location.protocol.toLowerCase().indexOf('https')>=3D0);s.d=3D=
"
+"document;s.b=3Ds.d.body;s.n=3Dnavigator;s.u=3Ds.n.userAgent;s.ns6=3Ds.u=
.ind"
+"exOf('Netscape6/');var =
apn=3Ds.n.appName,v=3Ds.n.appVersion,ie=3Dv.indexO"
+"f('MSIE '),o=3Ds.u.indexOf('Opera =
'),i;if(v.indexOf('Opera')>=3D0||o>0)"
+"apn=3D'Opera';s.isie=3D(apn=3D=3D'Microsoft Internet =
Explorer');s.isns=3D(apn"
+"=3D=3D'Netscape');s.isopera=3D(apn=3D=3D'Opera');s.ismac=3D(s.u.indexOf=
('Mac')>"
+"=3D0);if(o>0)s.apv=3DparseFloat(s.u.substring(o+6));else =
if(ie>0){s.apv"
+"=3DparseInt(i=3Dv.substring(ie+5));if(s.apv>3)s.apv=3DparseFloat(i)}els=
e "
+"if(s.ns6>0)s.apv=3DparseFloat(s.u.substring(s.ns6+10));else =
s.apv=3Dpar"
+"seFloat(v);s.em=3D0;if(String.fromCharCode){i=3Descape(String.fromCharC=
"
+"ode(256)).toUpperCase();s.em=3D(i=3D=3D'%C4%80'?2:(i=3D=3D'%U0100'?1:0)=
)}s.sa"
+"(un);s.vl_l=3D'visitorID,vmk,ppu,charSet,visitorNamespace,cookieDomai"
+"nPeriods,cookieLifetime,pageName,pageURL,referrer,currencyCode,purc"
+"haseID';s.vl_t=3Ds.vl_l+',variableProvider,channel,server,pageType,tr"
+"ansactionID,campaign,state,zip,events,products,linkName,linkType';f"
+"or(var =
n=3D1;n<51;n++)s.vl_t+=3D',prop'+n+',eVar'+n+',hier'+n;s.vl_g=3Ds."
+"vl_t+',trackDownloadLinks,trackExternalLinks,trackInlineStats,linkL"
+"eaveQueryString,linkDownloadFileTypes,linkExternalFilters,linkInter"
+"nalFilters,linkNames';s.pg=3Dpg;s.gl(s.vl_g);if(!ss)s.wds()}",
l=3Dwindow.s_c_il,n=3Dnavigator,u=3Dn.userAgent,v=3Dn.appVersion,e=3Dv.in=
dexOf(
'MSIE =
'),m=3Du.indexOf('Netscape6/'),a,i,s;if(l)for(i=3D0;i<l.length;i++){
s=3Dl[i];if(s.oun=3D=3Dun)return s;else =
if(s.fs(s.oun,un)){s.sa(un);return s
}}if(e>0){a=3DparseInt(i=3Dv.substring(e+5));if(a>3)a=3DparseFloat(i)}
else if(m>0)a=3DparseFloat(u.substring(m+10));else =
a=3DparseFloat(v);if(a
>=3D5&&v.indexOf('Opera')<0&&u.indexOf('Opera')<0){eval(c);return new
s_c(un,pg,ss)}else s=3Ds_c2f(c);return s(un,pg,ss)}function s_co(o){
var s=3Ds_gi("^",1,1);return s.co(o)}function s_gs(un){var =
s=3Ds_gi(un,1,1
);return s.t()}function s_dc(un){var s=3Ds_gi(un,1);return s.t()}

------=_NextPart_000_0000_01C83FED.C3179200
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.washingtonpost.com/wp-srv/ad/comments_box.js

//document.write('<a =
href=3D"http://clk.atdmt.com/OY6/go/wpnxxcsc0460000075oy6/direct;at.Q4_FY=
07_Corporate_CampaignWashingtonpostNewsweek_InteractiveSponsored_By_Tilew=
pnxxcsc0460000075oy6;ct.1/01/"><img =
src=3D"http://www.washingtonpost.com/wp-adv/advertisers/cisco/cisco289.gi=
f" border=3D"0"/></a>');

------=_NextPart_000_0000_01C83FED.C3179200
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://community.washingtonpost.com/ver1.0/SiteLifeProxy

    document.write("<link =
href=3D'http://community.washingtonpost.com/ver1.0/SiteLifeCss' =
rel=3D'stylesheet' type=3D'text/css' />");
    document.write("<script type=3D'text/javascript' =
src=3D'http://community.washingtonpost.com/ver1.0/SiteLifeScripts'></scri=
pt>");
	document.write("<link =
href=3D'http://www.washingtonpost.com/wp-srv/community/css/community.css'=
 rel=3D'stylesheet' type=3D'text/css' />");

///<summary>constructor to create a new SiteLifeProxy</summary>
function SiteLifeProxy(url) {
    // User Configurable Properties - these can be set at any time

    // your apiKey, this value must be set!
    this.apiKey =3D null;

    // sniff the browser for custom behaviors
    this.__isExplorer =3D =
navigator.userAgent.toLowerCase().indexOf('msie') !=3D -1;
    this.__isSafari =3D =
navigator.userAgent.toLowerCase().indexOf('safari') !=3D -1;
    this.__isMac =3D navigator.platform.toLowerCase().indexOf('mac') =
!=3D -1;
    this.__isMacIE =3D this.__isMac && this.__isExplorer;
   =20
    // if enabled, spit out debug information through alert()
    this.debug =3D false;
   =20
    // used to track the id of the handler expecting the results from =
the immediately preceeding method invocation
    // this is used only for testing purposes
    this.lastHandlerId =3D "";
   =20
    // Methods You can Overide
    //
    // OnSuccess(returnValue) - is passed the return value at the end of =
a successful call, default does nothing
    // OnError(msg) - is passed an error message if a problem occurs
    // OnDebug(msg) - is called when debugging is enabled
    =20
    this.__baseUrl =3D url;
    this.__sendInvokeCount =3D 0;
   =20
    this.__eventHandlers =3D new Object();
};

SiteLifeProxy.prototype.AddEventHandler =3D function (event_name, =
callback) {this.__eventHandlers[event_name] =3D callback;}
SiteLifeProxy.prototype.FireEvent =3D function (event_name) {
    if(this.__eventHandlers[event_name]) {
        var A =3D new Array(); for (var i =3D 1; i <  =
this.FireEvent.arguments.length; i++){ A[i - 1] =3D =
this.FireEvent.arguments[i];}
        return this.__eventHandlers[event_name].apply(this, A);
    }
}

SiteLifeProxy.prototype.ScriptId =3D function() { return this.__scriptId =
=3D "_bb_script_" + this.__sendInvokeCount++; }

// Default error handler for the proxy object, simple alert
SiteLifeProxy.prototype.OnError =3D function(msg) {
   alert("OnError: " + msg);
}

// Default debug handler for the proxy object, simple alert
SiteLifeProxy.prototype.OnDebug =3D function(msg) {
    if (this.debug)
        alert("Debug: " + msg);
}

// fetch a named request parameter from the page URL
SiteLifeProxy.prototype.GetParameter =3D function(parameterName) {
    var key =3D parameterName + "=3D";
    var parameters =3D document.location.search.substring(1).split("&");
    for (var i =3D 0; i < parameters.length; i++)
    {
        if (parameters[i].indexOf(key) =3D=3D 0)
            return parameters[i].substring(key.length);
    }
    return null;
};

// browser independent method to get elements by ID
SiteLifeProxy.prototype.GetElement =3D function(id) {
    this.OnDebug("GetElement " + id);
    if (document.getElementById)
        return document.getElementById(id);
    if (document.all)
        return document.all[id];
    this.OnError("No support for GetElement() in this browser");
    return null;
}

// browser independent method to get elements by tag name
SiteLifeProxy.prototype.GetTags =3D function(tagName) {
    this.OnDebug("GetTags " + tagName);
    if (document.getElementsByTagName)
        return document.getElementsByTagName(tagName);
    if (document.all)
       return document.tags(tagName);
    this.OnError("No support for GetTags() in this browser");
    return null;
}

SiteLifeProxy.prototype.EscapeValue =3D function(s) {
    if (s =3D=3D null) return null;
    return encodeURIComponent(s);
};

SiteLifeProxy.prototype.__ArrayValidation =3D function(s)
{
    if ((typeof s =3D=3D 'undefined') || (s.length < 1))
    {
        return false;
    }
    return true;
}

SiteLifeProxy.prototype.__CheckErrorHandler =3D function(onError) {
    this.OnDebug("__CheckErrorHandler " + onError);
    if ((typeof onError =3D=3D 'undefined') || (eval("window." + =
onError) =3D=3D null))
    {
      return "gSiteLife.OnError";
    }
    return onError;
}
SiteLifeProxy.prototype.SetCookie =3D function SetCookie( name, value) {
    var today =3D new Date(); today.setTime( today.getTime() );
   =20
    var expires_date =3D new Date( today.getTime() + 126144000000 );
   =20
    document.cookie =3D name + "=3D" +escape( value ) +
    ";expires=3D" + expires_date.toGMTString() +=20
    ";path=3D/" + ";domain=3Dwashingtonpost.com" ;
}
// validate and fetch arguments, if the argument is missing and =
optional, we return an empty string       =20
SiteLifeProxy.prototype.__GetArgument =3D function(variableName, =
variableValue, isRequired, isArray) {
    this.OnDebug("__GetArgument " + variableName + "," + variableValue + =
"," + isRequired + "," + isArray);
    if (typeof variableValue =3D=3D "undefined" || variableValue =3D=3D =
null || variableValue =3D=3D "")
    {
        if (isRequired)
        {
            this.OnError("Missing required parameter " + variableName);
            this.__isValid =3D false;
            return "";
        }
        else
            return "";
    }
    if (isRequired && isArray)=20
    {
        if (!this.__ArrayValidation(variableValue))=20
        {
            this.OnError("Invalid array parameter " + variableName);
            this.__isValid =3D false;
            return "";
        }
    }
    return "&" + variableName + "=3D" + this.EscapeValue(variableValue);
};

SiteLifeProxy.prototype.__StripAnchorFromUrl =3D function(url) {
    var aIdx =3D url.indexOf("#");
    return aIdx =3D=3D -1 ? url : url.substring(0, aIdx);
}

SiteLifeProxy.prototype.__SafeAppendUrlValue =3D function(url, key, =
value) {
    url +=3D url.indexOf("?") !=3D -1 ? "&" : "?";
    return url + key + "=3D" + value;
}

SiteLifeProxy.prototype.__AppendUrlValues =3D function (url)
{
	time =3D new Date();
    url +=3D this.__GetArgument("plckNoCache", time.getTime(), false, =
false);
    url +=3D this.__GetArgument("plckApiKey", this.apiKey, true, false);
       =20
    return url;
}

SiteLifeProxy.prototype.ReloadPage =3D function(params) {
    var sSearch =3D window.location.search.substring(1);
    var sNVPs =3D sSearch.split('&');
    var newSearch =3D "";
    for(var k in params) {
        if(k =3D=3D "extend") continue;

        if(newSearch =3D=3D "") newSearch +=3D "?"; else newSearch +=3D =
"&";
        newSearch +=3D k + '=3D' + params[k];
    }
    for (var i =3D 0; i < sNVPs.length; i++) {
        var kv =3D sNVPs[i].split('=3D');
        if(kv[0] && kv[0].indexOf('plck') !=3D 0 && ! params[kv[0]]) {
            newSearch +=3D "&" + sNVPs[i];       =20
        }
    }
    window.location.search =3D newSearch;
}

function loadScript (url, callback) {
	var script =3D document.createElement('script');
	script.type =3D 'text/javascript';
	script.charset =3D 'utf-8';
	if (callback)
		script.onload =3D script.onreadystatechange =3D function() {
			if (script.readyState && script.readyState !=3D 'loaded' && =
script.readyState !=3D 'complete')
				return;
			script.onreadystatechange =3D script.onload =3D null;
			callback();
		};
	script.src =3D url;
	document.getElementsByTagName('head')[0].appendChild (script);
}

SiteLifeProxy.prototype.__Send =3D function(url, scriptToUse) {
    this.OnDebug("_Send " + url);
    if (this.__isSafari) {
        loadScript(url);
        return;
    }=20
   =20
   =20
    scriptToUse =3D scriptToUse || this.ScriptId();

    //append our various parameters as necessary
    url =3D this.__AppendUrlValues(url);
    this.OnDebug("_Send (updated) " + url);
    // add the script node to the document
    if (document.createElement && ! this.__isMacIE) {
		var scriptNode =3D document.getElementById(scriptToUse);

		var head =3D this.GetTags('head')[0];
		if ( (scriptNode !=3D null) && (scriptNode !=3D undefined) && =
(!this.__isExplorer) && head.removeChild && (!this.__isSafari)) {
			head.removeChild(scriptNode);
			scriptNode =3D null;
		}
		if(scriptNode =3D=3D null) {
			scriptNode =3D document.createElement('script');
			scriptNode.id =3D scriptToUse;
			scriptNode.setAttribute('type','text/javascript');
			scriptNode.setAttribute('charset', 'utf-8');
			head.appendChild(scriptNode);
        }
        scriptNode.setAttribute('src', url);



        return;
    }

    // could fall back to sync at this point, but will bust if the page =
is already loaded

    this.OnError("No support for async in this browser");
}

SiteLifeProxy.prototype.Logout =3D function(ScriptToUse, IsRestPage) {
    var plckRest =3D IsRestPage ? true : false;
    this.__Send(this.__baseUrl + '/Utility/Logout?plckRedirectUrl=3D' + =
escape(window.location.href) + '&plckRest=3D' + plckRest, ScriptToUse);
    return false;
}

SiteLifeProxy.prototype.AddLoadEvent =3D function(func) {
if(window.addEventListener){
 window.addEventListener("load", func, false);
}else{
 if(window.attachEvent){
   window.attachEvent("onload", func);
 }else{
   if(document.getElementById){
    var oldonload =3D window.onload;
    if (typeof window.onload !=3D 'function') {
      window.onload =3D func;
    } else {
      window.onload =3D function() {
       if (oldonload) {
        oldonload();
       }
       func();
}}}}}}

SiteLifeProxy.prototype.AdInsertHelper =3D function() {
    for(var src in gSiteLife.__adsToInsert) {
        if(src =3D=3D "extend") continue;
        var dest =3D gSiteLife.__adsToInsert[src];
        var parent =3D document.getElementById(dest);
		var newChild =3D document.getElementById(src);
		if( ! parent || ! newChild ) {continue; }
		parent.replaceChild( newChild, document.getElementById(dest + =
"Child"));
		newChild.style.display =3D "block"; parent.style.display =3D "block";
    }
}

SiteLifeProxy.prototype.InsertAds =3D function(source, destination) {
gSiteLife.__adsToInsert =3D new Object();
for(ii=3D0; ii< this.InsertAds.arguments.length; ii+=3D2) { =
gSiteLife.__adsToInsert[this.InsertAds.arguments[ii]] =3D =
this.InsertAds.arguments[ii+1];}
this.AddLoadEvent(gSiteLife.AdInsertHelper);
}

SiteLifeProxy.prototype.TitleTag =3D function() {
 var titleTag =3D document.getElementById("plckTitleTag");
 return titleTag ? titleTag.innerText || titleTag.textContent : null;
 }

SiteLifeProxy.prototype.WriteDiv =3D function(id, divClass) {
    var cssClass =3D divClass ? divClass : "";
    document.write('<div id=3D"'+id+'" class=3D"'+cssClass+'"></div>'); =
return id;
}

SiteLifeProxy.prototype.InnerHtmlWrite =3D function(elementId, =
innerContents ) {
    var el =3D document.createElement("div");
    try {
        if(document.location.href.indexOf("debug=3Dtrue") > -1) {
            el.innerHTML +=3D "<div style=3D'border:1px solid =
red;'><span style=3D'background-color:red; color:white; =
position:absolute; cursor:pointer; font-size:8pt;' =
onclick=3D'DebugShowInnerHTML(\"${plckElementId}\",\"http://community.was=
hingtonpost.com/ver1.0/Proxies/Default.rails\");'>&nbsp;?&nbsp;</span><di=
v>" + innerContents + "</div></div>";
        } else {
            el.innerHTML +=3D innerContents;
            el.style.display =3D "inline";
        }
        var destDiv =3D document.getElementById(elementId);
        while (destDiv.childNodes.length >=3D 1) {
             destDiv.removeChild(destDiv.childNodes[0]);
        }
       =20
        destDiv.appendChild(el);
    } catch (error) {
        alert(elementId + " Error "  + error.number + ": " + =
error.description);
    }
}

SiteLifeProxy.prototype.SortTimeStampDescending =3D =
"TimeStampDescending";
SiteLifeProxy.prototype.SortTimeStampAscending =3D "TimeStampAscending";
SiteLifeProxy.prototype.SortRecommendationsDescending =3D =
"RecommendationsDescending";
SiteLifeProxy.prototype.SortRecommendationsAscending =3D =
"RecommendationsAscending";
SiteLifeProxy.prototype.SortRatingDescending =3D "RatingDescending";
SiteLifeProxy.prototype.SortRatingAscending =3D "RatingAscending";
SiteLifeProxy.prototype.KeyTypeExternalResource =3D "ExternalResource";
       =20
SiteLifeProxy.prototype.PersonaHeaderRequest =3D function(UserId) {
    var url =3D this.__baseUrl + =
'/Persona/PersonaHeader?plckElementId=3DpersonaHDest&plckUserId=3D'+ =
UserId;
    this.__Send(url, "personaHeaderScript");
}
SiteLifeProxy.prototype.PersonaHeader =3D function(UserId) {
    this.WriteDiv("personaHDest", "Persona_Main");
    this.PersonaHeaderRequest(UserId);=20
}
SiteLifeProxy.prototype.Persona =3D function(UserId) {
    this.WriteDiv("personaDest", "Persona_Main");
    var action =3D this.GetParameter("plckPersonaPage");
    if(action && (typeof this[action] =3D=3D 'function')) =
this[action](UserId);
             else this.PersonaHome(UserId);
    }
SiteLifeProxy.prototype.LoadPersonaPage =3D function(PageName, UserId) {
    var params =3D new Object(); params['plckPersonaPage'] =3D PageName; =
params['plckUserId'] =3D UserId;
            params['newspaperUserId'] =3D UserId;
        for(ii=3D2; ii< this.LoadPersonaPage.arguments.length; ii+=3D2) =
{ params[this.LoadPersonaPage.arguments[ii]] =3D =
this.LoadPersonaPage.arguments[ii+1];}
    this.ReloadPage(params);
    return false;
}

SiteLifeProxy.prototype.PersonaHome =3D function(UserId) {
   return this.PersonaSend('PersonaHome', 'personaDest', =
'personaScript', UserId);
}
SiteLifeProxy.prototype.WatchItem =3D =
function(Controller,Method,WatchKey, targetDiv) {
    var url =3D this.__baseUrl + '/'+Controller+'/' + Method + '?' + =
'plckWatchKey=3D' + WatchKey + '&plckElementId=3D' + targetDiv + =
'&plckWatchUrl=3D' + this.EscapeValue(window.location.href);
    this.__Send(url, "AddWatchScript");
    return false;
}
SiteLifeProxy.prototype.PersonaRemoveWatchItem=3D function(UserId, =
WatchKey, Div, View) {
   return this.PersonaSend('PersonaRemoveWatchItem', Div, =
'personaScript', UserId, 'plckWatchView=3D' + View + '&plckWatchKey=3D' =
+ WatchKey);
}
SiteLifeProxy.prototype.PersonaAddFriend=3D function(UserId) {
   return this.PersonaSend('PersonaAddFriend', 'personaHDest', =
'personaScript', UserId);
}
SiteLifeProxy.prototype.PersonaRemoveFriend =3D function(UserId, Friend, =
Div, View, Expanded) {
   if(!Expanded) Expanded =3D "false";
   if (confirm("Are you sure you want to delete this user from your list =
of Friends?") =3D=3D true) {
    return this.PersonaSend('PersonaRemoveFriend', Div, 'personaScript', =
UserId, 'plckFriendView=3D' + View + '&plckFriend=3D' + Friend + =
'&plckExpanded=3D' + Expanded);
   }
   return false;
}
SiteLifeProxy.prototype.PersonaRemovePendingFriend =3D function(UserId, =
PendingFriend, Div) {
   if (confirm("Are you sure you want to delete this user's invite?") =
=3D=3D true) {
    return this.PersonaSend('PersonaRemovePendingFriend', Div, =
'personaScript', UserId, 'plckPendingFriend=3D' + PendingFriend);
   }
   return false;
}
SiteLifeProxy.prototype.PersonaAddPendingFriend =3D function(UserId, =
PendingFriend, Div) {
    return this.PersonaSend('PersonaAddPendingFriend', Div, =
'personaScript', UserId, 'plckPendingFriend=3D' + PendingFriend);
}
SiteLifeProxy.prototype.PersonaMessages =3D function(UserId) {
   var AdParams =3D this.GetParameter('plckCurrentPage') ? =
'plckCurrentPage=3D' + this.GetParameter('plckCurrentPage') : "";
   var scrl =3D this.GetParameter('plckScrollToAnchor');  if(scrl){ =
if(AdParams) {AdParams +=3D'&';} AdParams +=3D 'plckScrollToAnchor=3D' + =
scrl;}
   if(this.GetParameter('plckMessageSubmitted')){if(AdParams) {AdParams =
+=3D'&';} AdParams +=3D 'plckMessageSubmitted=3D' + =
this.GetParameter('plckMessageSubmitted');}
   return this.PersonaSend('PersonaMessages', 'personaDest', =
'personaScript', UserId, AdParams);
}
SiteLifeProxy.prototype.PersonaComments =3D function(UserId) {
   var AdParams =3D this.GetParameter('plckCurrentPage') ? =
'plckCurrentPage=3D' + this.GetParameter('plckCurrentPage') : "";
   return this.PersonaSend('PersonaComments', 'personaDest', =
'personaScript', UserId, AdParams);
}
SiteLifeProxy.prototype.PersonaBlog =3D function(UserId) {
   var AdParams =3D this.GetParameter('plckCurrentPage') ? =
'plckCurrentPage=3D' + this.GetParameter('plckCurrentPage') : "";
   if(AdParams) {AdParams +=3D'&';} AdParams +=3D 'plckBlogId=3D' + =
UserId;
   var url =3D this.__baseUrl + =
'/PersonaBlog/PersonaBlog?plckElementId=3DpersonaDest&plckUserId=3D'+ =
UserId + '&' + AdParams;
   this.__Send(url, 'personaScript');
   return false;
}
SiteLifeProxy.prototype.PersonaProfile =3D function(UserId) {
    return this.PersonaSend('PersonaProfile', 'personaDest', =
'personaScript', UserId);
}
SiteLifeProxy.prototype.PersonaWatchListPaginate =3D function(UserId, =
pageNum) {=20
    return this.PersonaPaginate('WatchList', pageNum, UserId);
}
SiteLifeProxy.prototype.PersonaFriendsPaginate =3D function(UserId, =
pageNum) {=20
    return this.PersonaPaginate('Friends', pageNum, UserId);
}
SiteLifeProxy.prototype.PersonaPendingFriendsPaginate =3D =
function(UserId, pageNum) {=20
    var AdParam =3D "plckPendingFriendsPageNum=3D" + pageNum;
    return this.PersonaPaginate('Friends', 0, UserId,AdParam);
}
SiteLifeProxy.prototype.PersonaMessagesPreviewPaginate =3D =
function(UserId, pageNum) {=20
    return this.PersonaPaginate('MessagesPreview', pageNum, UserId);
}
SiteLifeProxy.prototype.PersonaMessageRemove =3D function(UserId, =
pageNum, MessageKey) {=20
   if (confirm("Are you sure you want to remove this message from the =
page?") =3D=3D true) {
        return this.PersonaSend('PersonaRemoveMessage', 'personaDest', =
'PersonaMessagesPageScript', UserId, 'plckCurrentPage=3D'+ pageNum + =
'&plckMessageKey=3D'+MessageKey);
   }
   return false;
}
SiteLifeProxy.prototype.PersonaSend =3D function(ApiName, DestDiv, =
ScriptName, UserId, AddParams){
    var url =3D this.__baseUrl + '/Persona/' + ApiName + =
'?plckElementId=3D' + DestDiv + '&plckUserId=3D'+ UserId;
    if(AddParams) url +=3D '&' + AddParams;
    this.__Send(url, ScriptName);
    return false;
}

SiteLifeProxy.prototype.PersonaPaginate =3D function(ApiName, PageNum, =
UserId, AddParams){
    var url =3D this.__baseUrl + '/Persona/Persona' + ApiName + '?plck' =
+ ApiName + 'PageNum=3D' + PageNum + '&plckElementId=3DPersona' + =
ApiName + 'Dest&plckUserId=3D'+ UserId;
    if(AddParams) url +=3D '&' + AddParams;   =20
    this.__Send(url, 'Persona'+ ApiName + 'Script');
    return false;
}

SiteLifeProxy.prototype.PersonaPhotoSend =3D function(ApiName, DestDiv, =
ScriptName, UserId, AddParams){
    var url =3D this.__baseUrl + '/PersonaPhoto/' + ApiName + =
'?plckElementId=3D' + DestDiv + '&plckUserId=3D'+ UserId;
    if(AddParams) url +=3D '&' + AddParams;
    this.__Send(url, ScriptName);
    return false;
}

SiteLifeProxy.prototype.PersonaMostRecent =3D function(UserId, PhotoID, =
DestDiv) {
   return this.PersonaPhotoSend('PersonaMostRecent', DestDiv, =
'personaScript', UserId,'plckPhotoID=3D' + PhotoID);
}

SiteLifeProxy.prototype.PersonaCreateGallery =3D function(UserId) {
     return this.PersonaPhotoSend('UserGalleryCreate', =
'personaDestPhoto', 'personaScript', UserId);
}

SiteLifeProxy.prototype.PersonaEditGallery =3D =
function(UserId,GalleryID) {
     return this.PersonaPhotoSend('UserGalleryEdit', 'userGalleryDest', =
'personaScript', UserId,'plckGalleryID=3D' + GalleryID);
}

SiteLifeProxy.prototype.PersonaUploadToUserGallery =3D =
function(GalleryId) {
    var url =3D this.__baseUrl + =
'/Photo/PhotoUpload?plckElementId=3DuserGalleryDest&plckGalleryID=3D'+ =
GalleryId;
    this.__Send(url);
    return false;
}

SiteLifeProxy.prototype.PersonaPhotos =3D function(UserId) {
     return this.PersonaPhotoSend('PersonaPhotos', 'personaDest', =
'personaScript', UserId);
}
SiteLifeProxy.prototype.PersonaAllPhotos =3D function(UserId) {
     return this.PersonaPhotoSend('PersonaAllPhotos', 'personaDest', =
'personaScript', UserId);
}

SiteLifeProxy.prototype.PersonaGalleryPhoto =3D function(UserId) {
     return this.PersonaPhotoSend('PersonaGalleryPhoto', 'personaDest', =
'personaScript', UserId);
}
SiteLifeProxy.prototype.PersonaMyRecentPhotos =3D =
function(UserId,ElementId, PageNum) {
     return this.PersonaPhotoSend('PersonaMyRecentPhotos', ElementId, =
'personaScript', UserId,'plckPageNum=3D' + PageNum);
}

SiteLifeProxy.prototype.PersonaGallery =3D =
function(UserId,GalleryId,PageNum) {
     if(!PageNum){
        PageNum =3D gSiteLife.GetParameter("plckPageNum") ? =
gSiteLife.GetParameter("plckPageNum") : 0;
     }
     if(!GalleryId) {
        GalleryId =3D gSiteLife.GetParameter("plckGalleryID");
     }
     return this.PersonaPhotoSend('PersonaGallery', 'personaDest', =
'personaScript', UserId,'plckGalleryID=3D'+ GalleryId + =
'&plckPageNum=3D' + PageNum);
}

SiteLifeProxy.prototype.UserGalleryList =3D function(UserId,ElementId, =
PageNum) {
     return this.PersonaPhotoSend('UserGalleryList', ElementId, =
'personaScript', UserId,'plckPageNum=3D' + PageNum);
}
SiteLifeProxy.prototype.PersonaGallerySubmissions =3D =
function(UserId,ElementId, PageNum){
     return this.PersonaPhotoSend('PersonaGallerySubmissions', =
ElementId, 'personaScript', UserId,'plckPageNum=3D' + PageNum);
}=20

SiteLifeProxy.prototype.PersonaGalleryPhoto =3D function(UserId) {
    var photoid =3D gSiteLife.GetParameter('plckPhotoID');
    return this.PersonaPhotoSend('PersonaGalleryPhoto', =
'personaDest','personaScript', UserId,'&plckPhotoID=3D' +photoid);
}
SiteLifeProxy.prototype.PersonaRecentGalleryPhoto =3D function(UserId) {
    var photoid =3D gSiteLife.GetParameter('plckPhotoID');
    return this.PersonaPhotoSend('PersonaRecentGalleryPhoto', =
'personaDest','personaScript', UserId,'&plckPhotoID=3D' +photoid);
}

SiteLifeProxy.prototype.LoadPersonaGalleryPage =3D =
function(UserId,GalleryID) {
    var params =3D new Object(); params['plckPersonaPage'] =3D =
'PersonaGallery'; params['plckUserId'] =3D UserId;=20
            params['newspaperUserId'] =3D UserId;
        params['plckGalleryID'] =3D GalleryID;
    this.ReloadPage(params);
    return false;
}
SiteLifeProxy.prototype.LoadPersonaPhotoPage =3D =
function(UserId,PhotoID) {
    var params =3D new Object(); params['plckPersonaPage'] =3D =
'PersonaGalleryPhoto'; params['plckUserId'] =3D UserId;
            params['newspaperUserId'] =3D UserId;
        params['plckPhotoID'] =3D PhotoID;
    this.ReloadPage(params);
    return false;
}
SiteLifeProxy.prototype.LoadPersonaRecentPhotoPage =3D =
function(UserId,PhotoID) {
    var params =3D new Object(); params['plckPersonaPage'] =3D =
'PersonaRecentGalleryPhoto'; params['plckUserId'] =3D UserId;
            params['newspaperUserId'] =3D UserId;
        params['plckPhotoID'] =3D PhotoID;
    this.ReloadPage(params);
    return false;
}=0A=
SiteLifeProxy.prototype.SolicitPhoto =3D function(galleryID) {
	var elementId =3D 'plcksolicit' + galleryID;
	this.WriteDiv(elementId);
    var url =3D this.__baseUrl + '/Photo/SolicitPhoto?plckElementId=3D' =
+ elementId + '&plckGalleryID=3D' +galleryID;
    this.__Send(url);
    return false;
}

SiteLifeProxy.prototype.PhotoUpload =3D function() {
	var elementId =3D 'plcksubmit';
	this.WriteDiv(elementId);
    var galleryID =3D gSiteLife.GetParameter('plckGalleryID');

    var url =3D this.__baseUrl + '/Photo/PhotoUpload?plckElementId=3D' + =
elementId + '&plckGalleryID=3D' +galleryID;
    this.__Send(url);
    return false;
}

SiteLifeProxy.prototype.PublicGallery =3D function() {
    var elementId =3D 'plckgallery';
	this.WriteDiv(elementId);
	var galleryID =3D gSiteLife.GetParameter('plckGalleryID');
    var pageNum =3D gSiteLife.GetParameter('plckPageNum');
=09
    var url =3D this.__baseUrl + '/Photo/PublicGallery?plckElementId=3D' =
+ elementId + '&plckGalleryID=3D' +galleryID + '&plckPageNum=3D' =
+pageNum;
	this.__Send(url);
	return false;
}


SiteLifeProxy.prototype.GalleryPhoto =3D function() {
	var elementId =3D 'plckphoto';
	this.WriteDiv(elementId);
    var photoid =3D gSiteLife.GetParameter('plckPhotoID');

    var url =3D this.__baseUrl + '/Photo/GalleryPhoto?plckElementId=3D' =
+ elementId + '&plckPhotoID=3D' +photoid;
	this.__Send(url);
	return false;
}

SiteLifeProxy.prototype.PublicGalleries =3D function() {
	var elementId =3D 'plckgalleries';
	this.WriteDiv(elementId);
    var pageNum =3D gSiteLife.GetParameter('plckPageNum') ?  =
gSiteLife.GetParameter('plckPageNum') : "0";

    var url =3D this.__baseUrl + =
'/Photo/PublicGalleries?plckElementId=3D' + elementId + =
'&plckPageNum=3D' + pageNum;
    this.__Send(url);
    return false;
}

SiteLifeProxy.prototype.PhotoRecommend =3D =
function(targetid,recommendDiv,isGallery) {
    var url =3D this.__baseUrl + '/Photo/Recommend?plckElementId=3D' + =
recommendDiv + '&plckTargetid=3D' +targetid + '&plckIsGallery=3D' =
+isGallery ;
    this.__Send(url);
    return false;
}
=0A=
//parentKeyType can be any gSiteLife.KeyType* value, but for including =
this widget on an article page the value is=20
//typically gSiteLife.KeyTypeExternalResource
SiteLifeProxy.prototype.Comments =3D function(parentKeyType, parentKey, =
pageSize, sort, showTabs, tab, parentUrl, parentTitle, refreshPage)
{
	return this.CommentsInternal(parentKeyType, parentKey, pageSize, sort, =
showTabs, tab, parentUrl, parentTitle, false, false, null, refreshPage);
};

SiteLifeProxy.prototype.CommentsInput =3D function(parentKeyType, =
parentKey, redirectToUrl)
{   =20
    return this.CommentsInternal(parentKeyType, parentKey, null, =
"TimeStampDescending", null, null, null, null, true, false, =
redirectToUrl, false);
};

SiteLifeProxy.prototype.CommentsOutput =3D function(parentKeyType, =
parentKey, refreshPage, pageSize, sortOrder)
{
    sortOrder =3D sortOrder || "TimeStampDescending";
	return this.CommentsInternal(parentKeyType, parentKey, pageSize, =
sortOrder, null, null, null, null, false, true, null, refreshPage);
}

SiteLifeProxy.prototype.CommentsRefresh =3D function(parentKeyType, =
parentKey, pageSize, sortOrder)
{
    if (!parentKey || parentKey =3D=3D "") throw "Must pass in value for =
parentKey!";
    return this.CommentsInternal(parentKeyType, parentKey, pageSize, =
sortOrder, null, null, null, null, false, false, null, true);
}

SiteLifeProxy.prototype.CommentsInternal =3D function(parentKeyType, =
parentKey, pageSize, sort, showTabs, tab, parentUrl, parentTitle, =
hideView, hideInput, redirectToUrl, refreshPage)
{
    var divId =3D 'Comments_Container';
    if(this.numCommentsWidgets){ divId +=3D this.numCommentsWidgets; } =
else { this.numCommentsWidgets =3D 0; }
   =20
    document.write("<div id=3D'" + divId + "'></div>");
  =20
    this.numCommentsWidgets++;
   =20
    var oldDocOnLoad =3D window.onload;
   =20
    function loadComments() {
        if (oldDocOnLoad !=3D null) {
            oldDocOnLoad();
        }
        gSiteLife.GetComments(parentKeyType, parentKey, parentUrl, =
parentTitle, 0, pageSize, sort, showTabs, tab, hideView, hideInput, =
redirectToUrl, refreshPage, divId);
    }
   =20
    window.onload =3D loadComments;

    return false;
}

SiteLifeProxy.prototype.GetComments =3D function(parentKeyType, =
parentKey, parentUrl, parentTitle, page, pageSize, sort, showTabs, tab, =
hideView, hideInput, redirectTo, refreshPage, divId)
{
    parentKeyType =3D parentKeyType || "ExternalResource";
    parentUrl =3D parentUrl || =
gSiteLife.__StripAnchorFromUrl(window.location.href);
    parentUrl =3D gSiteLife.EscapeValue(parentUrl);
    parentKey =3D parentKey || =
gSiteLife.__StripAnchorFromUrl(window.location.href);
    parentTitle =3D parentTitle || =
gSiteLife.EscapeValue(document.title);
    page =3D page || gSiteLife.GetParameter('plckCurrentPage') || 0;
    pageSize =3D pageSize || 10;
    sort =3D sort || "TimeStampAscending";
    showTabs =3D showTabs || false;
    tab =3D tab || "MostRecent";
    hideView =3D hideView || false;
    hideInput =3D hideInput || false;
    redirectTo =3DgSiteLife.EscapeValue(redirectTo) || "";
    refreshPage =3D refreshPage || false;
   =20
    var url =3D this.__baseUrl +=20
        '/Comment/GetPage.rails?plckTargetKeyType=3D'+ parentKeyType +=20
        '&plckTargetKey=3D' + escape(parentKey) +=20
        "&plckCurrentPage=3D" + page +=20
        "&plckItemsPerPage=3D" + pageSize +=20
        "&plckSort=3D" + sort +=20
        "&plckElementId=3D" + divId +
        "&plckTargetUrl=3D" + parentUrl +
        "&plckTargetTitle=3D" + parentTitle +
        "&plckHideView=3D" + hideView +
        "&plckHideInput=3D" + hideInput +
        "&plckRefreshPage=3D" + refreshPage +
        "&plckRedirectToUrl=3D" + redirectTo ;

    if (showTabs) {
        url =3D url + "&plckShowTabs=3Dtrue&plckTab=3D" + tab;
    }
    this.__Send(url);
    return false;
};

=0A=
SiteLifeProxy.prototype.Blog =3D function(BlogId) {
    this.WriteDiv("blogDest", "Persona_Main");
    var action =3D this.GetParameter("plckBlogPage");
    if(action && action !=3D "Blog" && (typeof this[action] =3D=3D =
'function')){
     return this[action](BlogId);
    }else{
       var AdParams =3D this.GetParameter('plckCurrentPage') ? =
'plckCurrentPage=3D' + this.GetParameter('plckCurrentPage') : "";
       return this.BlogSend('Blog', 'Blog', 'blogDest', 'blogScript', =
BlogId, AdParams);
    }
}
SiteLifeProxy.prototype.LoadBlogPage =3D function(PageName, BlogId) {
    var params =3D new Object(); params['plckBlogPage'] =3D PageName; =
params['plckBlogId'] =3D BlogId;=20
    for(ii=3D2; ii< this.LoadBlogPage.arguments.length; ii+=3D2) { =
params[this.LoadBlogPage.arguments[ii]] =3D =
this.LoadBlogPage.arguments[ii+1];}
    this.ReloadPage(params);
    return false;
}

SiteLifeProxy.prototype.BlogViewEdit =3D function(blogId) {
   return this.BlogSend(null, 'BlogViewEdit', null, null, blogId);
}

SiteLifeProxy.prototype.BlogPostCreate =3D function(blogId) {
   return this.BlogSend(null, 'BlogPostCreate', null, null, blogId, =
'plckRedirectUrl=3D' + this.GetParameter("plckRedirectUrl"));
}

SiteLifeProxy.prototype.BlogPendingComments =3D function(blogId, =
currentPage) {
   if( !currentPage) currentPage =3D 0;
   return this.BlogSend(null, 'BlogPendingComments', null, null, blogId, =
'plckCurrentPage=3D'+currentPage);
}

SiteLifeProxy.prototype.BlogSettings =3D function(blogId) {
   return this.BlogSend(null, 'BlogSettings', null, null, blogId);
}

SiteLifeProxy.prototype.BlogEditPost =3D function(blogId, controller, =
div, script, postId, selection, daysBack) {
	return this.BlogSend(controller, 'BlogPostEdit', div, script, blogId, =
'plckPostId=3D' + postId + '&plckSelection=3D' + selection + =
'&plckDaysBack=3D' + daysBack + '&plckRedirectUrl=3D' + =
this.EscapeValue(window.location.href));
}

SiteLifeProxy.prototype.BlogRemovePost =3D function(blogId, controller, =
div, script, postId, selection, daysBack) {
  if (confirm("Are you sure you want to delete this item?") =3D=3D true) =
{
    return this.BlogSend(controller, 'BlogRemovePost', div, script, =
blogId, 'plckPostId=3D' + postId + '&plckSelection=3D' + selection + =
'&plckDaysBack=3D' + daysBack );
  }
  return false;
}

SiteLifeProxy.prototype.BlogViewPost =3D function(blogId, postId, =
selection, daysBack) {
	if(!postId ) { postId =3D gSiteLife.GetParameter('plckPostId'); }
	return this.BlogSend(null, 'BlogViewPost', null, null, blogId, =
'plckPostId=3D' + postId + '&plckSelection=3D' + selection + =
'&plckDaysBack=3D' + daysBack );
}

SiteLifeProxy.prototype.BlogViewMonth =3D function(blogId, monthId) {
	if(!monthId ) { monthId =3D gSiteLife.GetParameter('plckMonthId'); }
	var AdParams =3D 'plckMonthId=3D' + monthId;
	AdParams +=3D this.GetParameter('plckCurrentPage') ? =
'&plckCurrentPage=3D' + this.GetParameter('plckCurrentPage') : "";
	return this.BlogSend(null, 'BlogViewMonth', null, null, blogId,  =
AdParams);
}

SiteLifeProxy.prototype.AddBlogWatchItem=3D function(blogId, controller, =
script, Url, WatchKey) {
   return this.BlogSend(controller, 'AddBlogWatch', 'plckBlogWatchDiv', =
script, blogId, 'plckWatchKey=3D' + WatchKey + '&plckWatchUrl=3D' + =
this.EscapeValue(Url));
}
SiteLifeProxy.prototype.RemoveBlogWatchItem=3D function(blogId, =
controller, script, WatchKey) {
   return this.BlogSend(controller, 'RemoveBlogWatch', =
'plckBlogWatchDiv', script, blogId, 'plckWatchKey=3D' + WatchKey);
}

SiteLifeProxy.prototype.BlogViewTag =3D function(blogId, tag) {
	if(!tag ) { tag =3D gSiteLife.GetParameter('plckTag'); }
	var AdParams =3D 'plckTag=3D' + tag;
	AdParams +=3D this.GetParameter('plckCurrentPage') ? =
'&plckCurrentPage=3D' + this.GetParameter('plckCurrentPage') : "";
	return this.BlogSend(null, 'BlogViewTag', null, null, blogId, AdParams =
);
}

SiteLifeProxy.prototype.BlogRefreshViewEditList=3D function(blogId, =
controller, div, script, selection, daysBack) {
	return this.BlogSend(controller, 'BlogRefreshViewEditList', div, =
script, blogId, 'plckSelection=3D' + selection + '&plckDaysBack=3D' + =
daysBack  );
}

SiteLifeProxy.prototype.BlogSend =3D function(controller, apiName, =
destDiv, scriptName, blogId, addParams){
    if(!controller) controller =3D this.GetParameter('plckController');
    if(!destDiv) destDiv =3D this.GetParameter('plckElementId');
    if(!scriptName) scriptName =3D this.GetParameter('plckScript');
    var url =3D this.__baseUrl + '/' + controller + '/' + apiName + =
'?plckElementId=3D' + destDiv + '&plckBlogId=3D' + blogId + '&' + =
addParams;
    this.__Send(url, scriptName);
    return false;
}

SiteLifeProxy.prototype.Recommend =3D function(controller, itemId, =
recommendDiv) {
    var url =3D this.__baseUrl + '/' + controller + =
'/Recommend?plckElementId=3D' + recommendDiv + '&plckItemId=3D' +itemId;
    this.__Send(url);
    return false;
}
SiteLifeProxy.prototype.BlogSelectPendingComments =3D function(formId, =
checked) {  =20
    var form =3D document.getElementById(formId);
    for (i=3D0; i<form.elements.length; i++) {
        var input =3D form.elements[i];       =20
        input.checked =3D checked;
    }
}
=0A=

SiteLifeProxy.prototype.Forums =3D function() {
    this.WriteDiv("forumDest", "Forum_Main");
    var action =3D this.GetParameter("plckForumPage");
    if(action && (typeof this[action] =3D=3D 'function')) =
this[action]();
    else this.ForumCategories();
}
SiteLifeProxy.prototype.ForumCategories =3D function() {
    return this.ForumSend("ForumCategories", "forumDest", "ForumMain");
}
SiteLifeProxy.prototype.Forum =3D function() {
    var forumId =3D this.GetParameter('plckForumId');
    var pageNum =3D this.GetParameter('plckCurrentPage');
    if(pageNum =3D=3D null) pageNum =3D 0;
    return this.ForumSend('Forum', 'forumDest', 'ForumMain', =
'plckForumId=3D' + forumId + '&plckCurrentPage=3D' + pageNum);
}
SiteLifeProxy.prototype.ForumDiscussion =3D function() {
    var dId =3D this.GetParameter("plckDiscussionId");
    var adParam =3D "plckDiscussionId=3D" + dId;
    var showLast =3D this.GetParameter("plckShowLastPage"); if(showLast) =
adParam +=3D "&plckShowLastPage=3Dtrue";
    var pageNum =3D this.GetParameter('plckCurrentPage'); if(pageNum =
=3D=3D null) pageNum =3D 0;
    adParam +=3D "&plckCurrentPage=3D" + pageNum;
    return this.ForumSend("ForumDiscussion", "forumDest", "ForumMain", =
adParam);
}
SiteLifeProxy.prototype.ForumCreateDiscussion =3D function() {
    var adParam =3D "plckRedirectUrl=3D" + =
this.GetParameter("plckRedirectUrl");
    var fId =3D this.GetParameter("plckForumId"); adParam +=3D =
"&plckForumId=3D" + fId;
    var curView =3D this.GetParameter("plckCurrentView"); if(curView) =
adParam +=3D "&plckCurrentView=3D" + curView;
    var curPage =3D this.GetParameter("plckCurrentPage"); if(curPage) =
adParam +=3D "&plckCurrentPage=3D" + curPage;
    var dId =3D this.GetParameter("plckDiscussionId"); if(dId) adParam =
+=3D "&plckDiscussionId=3D" + dId;
    return this.ForumSend("ForumCreateDiscussion", "forumDest", =
"ForumMain", adParam);
}
SiteLifeProxy.prototype.ForumMain =3D function() {
    return this.ForumSend("ForumMain", "forumDest", "ForumMain");
}
SiteLifeProxy.prototype.ForumCreatePost =3D function() {
    var adParam =3D "plckDiscussionId=3D" + =
this.GetParameter("plckDiscussionId") + "&plckRedirectUrl=3D" + =
this.EscapeValue(window.location.href);
    var PostId =3D this.GetParameter("plckPostId"); if(PostId) adParam =
=3D adParam + "&plckPostId=3D" + PostId;
    var IsReply =3D this.GetParameter("plckIsReply"); if(IsReply) =
adParam =3D adParam + "&plckIsReply=3D" + IsReply;
    var curPage =3D this.GetParameter("plckCurrentPage"); if(curPage) =
adParam =3D adParam + "&plckCurrentPage=3D" + curPage;
    return this.ForumSend("ForumCreatePost", "forumDest", "ForumMain", =
adParam);
}
SiteLifeProxy.prototype.ForumEditPost =3D function() {
    var adParam =3D "plckDiscussionId=3D" + =
this.GetParameter("plckDiscussionId") + "&plckRedirectUrl=3D" + =
this.EscapeValue(window.location.href);
    var PostId =3D this.GetParameter("plckPostId"); if(PostId) adParam =
=3D adParam + "&plckPostId=3D" + PostId;
    var CurrPage =3D this.GetParameter("plckCurrentPage"); if(!CurrPage) =
CurrPage=3D"0"; adParam =3D adParam + "&plckCurrentPage=3D" + CurrPage;
    return this.ForumSend("ForumEditPost", "forumDest", "ForumMain", =
adParam);
}
SiteLifeProxy.prototype.ForumEditProfile =3D function() {
    return this.ForumSend("ForumEditProfile", "forumDest", "ForumMain", =
"plckRedirectUrl=3D" + this.EscapeValue(window.location.href));
}
SiteLifeProxy.prototype.ToggleExpand =3D function(imageId, divId) {
    var divElem =3D document.getElementById(divId);
    var imgElem =3D document.getElementById(imageId);
    if(divElem.style.display =3D=3D 'none') {=20
        divElem.style.display=3D'block';
        imgElem.src =3D this.__baseUrl + =
"/Content/images/forums/minus.gif"
    }else {
        divElem.style.display=3D'none';
        imgElem.src =3D this.__baseUrl + =
"/Content/images/forums/plus.gif"
    }
}

SiteLifeProxy.prototype.ForumSearch =3D function(suffix) {
    var searchText =3D =
document.getElementById('plckSearchText'+suffix).value;
    searchText =3D FixSearchString(searchText);
    var searchArea =3D =
document.getElementById('plckSearchArea'+suffix).value;
    this.LoadForumPage("ForumSearchPaginate", "plckSearchText", =
searchText, "plckSearchArea", searchArea, "plckCurrentPage", "0");
    return false;
}
SiteLifeProxy.prototype.ForumSearchKeyPress =3D function(event, suffix) =
{
    if(IsEnter(event)){return this.ForumSearch(suffix);}else{return =
true;}
}
SiteLifeProxy.prototype.ForumSearchPaginate =3D function() {=09
    return this.ForumSend('ForumSearchPaginate', 'forumDest', =
'ForumMain', 'plckSearchArea=3D' + this.GetParameter('plckSearchArea') + =
'&plckSearchText=3D' + this.GetParameter('plckSearchText') + =
'&plckCurrentPage=3D' + this.GetParameter('plckCurrentPage'));
}
SiteLifeProxy.prototype.LoadForumPage =3D function(PageName, paramName, =
paramVal) {
    var params =3D new Object(); params['plckForumPage'] =3D PageName;
    for(ii=3D1; ii< this.LoadForumPage.arguments.length; ii+=3D2) { =
params[this.LoadForumPage.arguments[ii]] =3D =
this.LoadForumPage.arguments[ii+1];}
    this.ReloadPage(params);
    return false;
}

SiteLifeProxy.prototype.ForumSend =3D function(ApiName, DestDiv, =
ScriptName, AddParams){
    var url =3D this.__baseUrl + '/Forums/' + ApiName + =
'?plckElementId=3D' + DestDiv;
    if(AddParams) url +=3D '&' + AddParams;
    this.__Send(url, ScriptName);
    return false;
}

SiteLifeProxy.prototype.ForumDiscussionEdit =3D function(discussionId, =
curView, curPage) {
    return this.ForumSend('ForumDiscussionEdit', 'forumDest', =
'ForumMain', 'plckDiscussionId=3D' + discussionId + =
'&plckCurrentView=3D' + curView + '&plckCurrentPage=3D' + curPage + =
'&plckRedirectUrl=3D' + this.EscapeValue(window.location.href));
}

SiteLifeProxy.prototype.ForumDiscussionToggleIsSticky =3D =
function(discussionId, curView, curPage) {
    return this.ForumSend('ForumDiscussionToggleIsSticky', 'forumDest', =
'ForumMain', 'plckDiscussionId=3D' + discussionId + '&plckCurView=3D' + =
curView + '&plckCurrentPage=3D' + curPage);
}

SiteLifeProxy.prototype.ForumDiscussionToggleIsClosed =3D =
function(discussionId, curView, curPage) {
    return this.ForumSend('ForumDiscussionToggleIsClosed', 'forumDest', =
'ForumMain', 'plckDiscussionId=3D' + discussionId + '&plckCurView=3D' + =
curView + '&plckCurrentPage=3D' + curPage );
}

SiteLifeProxy.prototype.ForumDiscussionDelete =3D function(discussionId, =
curPage) {
  if (confirm("Are you sure you want to delete this discussion?") =3D=3D =
true) {
    return this.ForumSend('ForumDiscussionDelete', 'forumDest', =
'ForumMain', 'plckDiscussionId=3D' + discussionId + =
'&plckCurrentPage=3D' + curPage );
  }
  else {
	return false;
  }
}

SiteLifeProxy.prototype.ForumEdit =3D function(forumId, curPage) {
    return this.ForumSend('ForumEdit', 'forumDest', 'ForumMain', =
'plckForumId=3D' + forumId + '&plckCurrentPage=3D' + curPage  );
}

SiteLifeProxy.prototype.ForumToggleIsClosed =3D function(forumId, =
curPage) {
    return this.ForumSend('ForumToggleIsClosed', 'forumDest', =
'ForumMain', 'plckForumId=3D' + forumId + '&plckCurrentPage=3D' + =
curPage  );
}

SiteLifeProxy.prototype.ForumDelete =3D function(forumId) {
  if (confirm("Are you sure you want to delete this forum?") =3D=3D =
true) {
    return this.ForumSend('ForumDelete', 'forumDest', 'ForumMain', =
'plckForumId=3D' + forumId );
  }
  else {
	return false;
  }
}

SiteLifeProxy.prototype.ForumPostDelete =3D function(postId, curPage) {
  if (confirm("Are you sure you want to delete this post?") =3D=3D true) =
{
    return this.ForumSend('ForumPostDelete', 'forumDest', 'ForumMain', =
'plckPostId=3D' + postId + '&plckCurPage=3D' + curPage);
  }
  else {
	return false;
  }
}

SiteLifeProxy.prototype.ForumBlockUser =3D function(postId, userId, =
value, curPage) {
    return this.ForumSend('ForumBlockUser', 'forumDest', 'ForumMain', =
'plckPostId=3D' + postId + '&plckUserId=3D' + userId + '&plckValue=3D' + =
value + '&plckCurPage=3D' + curPage);
}

SiteLifeProxy.prototype.ForumMyDiscussionsPaginate =3D function(pageNum) =
{
    return this.ForumSend('ForumMyDiscussionsPaginate', =
'ForumMyDiscussionsDiv', 'ForumMain', 'plckMyDiscussionsPage=3D' + =
pageNum);
}

SiteLifeProxy.prototype.ForumImage =3D function() {
    var adParam =3D "plckRedirectUrl=3D" + =
this.GetParameter("plckRedirectUrl");
    var pId =3D this.GetParameter("plckPhotoId"); adParam +=3D =
"&plckPhotoId=3D" + pId;
    return this.ForumSend('ForumImage', 'forumDest', 'ForumMain', =
adParam);
}

SiteLifeProxy.prototype.BaseAdParam =3D function () {
    var adParam =3D "plckRedirectUrl=3D" + =
this.EscapeValue(window.location.href);
    var fId =3D this.GetParameter("plckForumId"); adParam +=3D =
"&plckForumId=3D" + fId;
    var curView =3D this.GetParameter("plckCurrentView"); if(curView) =
adParam +=3D "&plckCurrentView=3D" + curView;
    var curPage =3D this.GetParameter("plckCurrentPage"); if(curPage) =
adParam +=3D "&plckCurrentPage=3D" + curPage;
    return adParam;
}

SiteLifeProxy.prototype.ForumJoinGroup =3D function() {
    var adParam =3D this.BaseAdParam();
    var dId =3D this.GetParameter("plckDiscussionId"); if(dId) adParam =
+=3D "&plckDiscussionId=3D" + dId;
    return this.ForumSend("ForumJoinGroup", "forumDest", "ForumMain", =
adParam);
}

SiteLifeProxy.prototype.ForumLeaveGroup =3D function() {
    var adParam =3D this.BaseAdParam();
    var dId =3D this.GetParameter("plckDiscussionId"); if(dId) adParam =
+=3D "&plckDiscussionId=3D" + dId;
    return this.ForumSend("ForumLeaveGroup", "forumDest", "ForumMain", =
adParam);
}

SiteLifeProxy.prototype.ForumGroupMemberList =3D function() {
    var adParam =3D this.BaseAdParam();
    return this.ForumSend("ForumGroupMemberList", "forumDest", =
"ForumMain", adParam);
}

SiteLifeProxy.prototype.ForumInviteUser =3D function() {
    var adParam =3D this.BaseAdParam();
    return this.ForumSend("ForumInviteUser", "forumDest", "ForumMain", =
adParam);
}

SiteLifeProxy.prototype.ForumGroupConfirm =3D function() {
    var adParam =3D this.BaseAdParam();
    var confirmType =3D this.GetParameter("plckConfirmType"); if =
(confirmType) adParam +=3D "&plckConfirmType=3D" + confirmType;
    return this.ForumSend("ForumGroupConfirm", "forumDest", "ForumMain", =
adParam);
}

SiteLifeProxy.prototype.ForumSendInviteToUser =3D function(username, =
email) {
    var adParam =3D this.BaseAdParam();
    var username =3D this.GetParameter("plckUsername"); if (username) =
adParam +=3D "&plckUsername=3D" + username;
    var email =3D this.GetParameter("plckUserEmail"); if (email) adParam =
+=3D "&plckUserEmail" + email;
    return this.ForumSend("ForumSendInviteToUser", "forumDest", =
"ForumMain", adParam);
}
=0A=

SiteLifeProxy.prototype.Recommend =3D function(keyType, targetKey, =
parentUrl) {
    keyType =3D keyType || "ExternalResource";
    targetKey =3D targetKey || =
gSiteLife.__StripAnchorFromUrl(window.location.href);
    parentUrl =3D parentUrl || window.location.href;
    targetKey =3D targetKey;
    var divId =3D "Recommend" + new Date().getTime();
    this.WriteDiv(divId, "Recommend");
    var url =3D this.__baseUrl +=20
        '/Recommend/Recommend?plckElementId=3D' + divId +=20
        '&plckTargetKey=3D' + gSiteLife.EscapeValue(targetKey) +=20
        '&plckTargetKeyType=3D' + keyType +
        '&plckTargetUrl=3D' + gSiteLife.EscapeValue(parentUrl);
    this.__Send(url);
    return false;  =20
}

SiteLifeProxy.prototype.PostRecommendation =3D function(keyType, =
targetKey, recommendDiv, parentTitle, parentUrl) {
    parentUrl =3D parentUrl || window.location.href;
    var url =3D this.__baseUrl +=20
        '/Recommend/PostRecommendation?plckElementId=3D' + recommendDiv =
+=20
        '&plckTargetKey=3D' + gSiteLife.EscapeValue(targetKey) +=20
        '&plckTargetKeyType=3D' + keyType +
        '&plckTargetUrl=3D' + gSiteLife.EscapeValue(parentUrl);
    if(parentTitle) url +=3D '&plckParentTitle=3D' + =
gSiteLife.EscapeValue(parentTitle);
   =20
    this.__Send(url);
    return false;
}
=0A=

SiteLifeProxy.prototype.RateItem =3D function (itemId, itemType, rating, =
targetDiv, parentTitle, parentUrl) {
    var url =3D this.__baseUrl + '/Rating/Rate?plckElementId=3D' + =
targetDiv +=20
        '&plckTargetKey=3D' + gSiteLife.EscapeValue(itemId) +=20
        '&plckTargetKeyType=3D' + itemType +=20
        '&plckRating=3D' + rating +
        '&plckTargetUrl=3D' + gSiteLife.EscapeValue(parentUrl);
        if(parentTitle) url +=3D '&plckParentTitle=3D' + parentTitle;
    this.__Send(url);
    return false;
}

SiteLifeProxy.prototype.Rating =3D function(itemType, itemId, parentUrl) =
{
    itemType =3D itemType || "ExternalResource";
    itemId =3D itemId || =
gSiteLife.__StripAnchorFromUrl(window.location.href);
    parentUrl =3D parentUrl || window.location.href;
    var divId =3D itemId + "_plckRateDiv_" + new Date().getTime() + =
Math.floor(Math.random()*1000);
    this.WriteDiv(divId, "Rating");
    var url =3D this.__baseUrl + '/Rating/GetRating?plckElementId=3D' + =
divId +
        '&plckTargetKey=3D' + gSiteLife.EscapeValue(itemId) +=20
        '&plckTargetKeyType=3D' + itemType +
        '&plckTargetUrl=3D' + gSiteLife.EscapeValue(parentUrl);
    this.__Send(url);
    return false;  =20
}

SiteLifeProxy.prototype.RatingClickStar =3D function (index, targetKey, =
targetKeyType, targetDiv, parentTitle, parentUrl) {
    gSiteLife.RateItem(targetKey, targetKeyType, index, targetDiv, =
parentTitle, parentUrl);
   =20
}

SiteLifeProxy.prototype.RatingFillStar =3D function(index, targetKey) {
    var stars =3D document.getElementsByName(targetKey+"Stars");
    var label =3D document.getElementById(targetKey + "Rating-label");
    var selectedIndex =3D =
parseInt(document.getElementById(targetKey+"Rating-value").value);
   =20
    if (index < 0 && selectedIndex >=3D 0) index =3D selectedIndex;
    for(i=3D1; i <=3D stars.length; i++) {
        if (index > 0 && i <=3D index) {
            stars[i-1].src =3D this.__baseUrl + =
"/Content/images/icons/fullstar.gif";
        }else {
            stars[i-1].src =3D this.__baseUrl + =
"/Content/images/icons/emptystar.gif";
        }
    }
   switch (index) {
        case 0: label.innerHTML =3D "Not rated"; break;
        case 1: label.innerHTML =3D "Horrible!"; break;
        case 2: label.innerHTML =3D "Not for me."; break;
        case 3: label.innerHTML =3D "It's alright."; break;
        case 4: label.innerHTML =3D "I like it."; break;
        case 5: label.innerHTML =3D "I love it!"; break;
        default: label.innerHTML =3D "Not rated";
    }
}
=0A=
SiteLifeProxy.prototype.Review =3D function(parentKeyType, parentKey, =
reviewedTitle, reviewCategory, pageSize, sort, currentPage) {
   =20
    var divId =3D "Reviews_Container";
    this.WriteDiv(divId);
    return this.GetReviews(parentKeyType, parentKey, reviewedTitle, =
reviewCategory, pageSize, sort, currentPage);
}

SiteLifeProxy.prototype.ReviewClickStar =3D function (index, targetKey) =
{
    document.getElementById(targetKey+"Rating-value").value =3D index;
}

SiteLifeProxy.prototype.GetReviews =3D function(parentKeyType, =
parentKey, reviewedTitle, reviewCategory, pageSize, sort, currentPage) {
    parentKeyType =3D parentKeyType || "ExternalResource";
    parentKey =3D gSiteLife.EscapeValue(parentKey) || =
gSiteLife.EscapeValue(gSiteLife.__StripAnchorFromUrl(window.location.href=
));
    reviewedTitle =3D gSiteLife.EscapeValue(reviewedTitle) || =
gSiteLife.EscapeValue(document.title);
    reviewCateogry =3D reviewCategory || "Uncategorized";
    pageSize =3D pageSize || 10;
    sort =3D sort || "TimeStampAscending";
    currentPage =3D currentPage || 0;
    var url =3D this.__baseUrl + =
'/Review/Reviews?plckElementId=3DReviews_Container' +
        '&plckTargetKey=3D' + escape(parentKey) +=20
        '&plckTargetKeyType=3D' + parentKeyType +
        '&plckReviewedTitle=3D' + reviewedTitle +
        '&plckReviewCategory=3D' + reviewCategory +
        '&plckSort=3D' + sort +=20
        '&plckParentUrl=3D' + =
gSiteLife.EscapeValue(gSiteLife.__StripAnchorFromUrl(window.location.href=
)) +=20
        '&plckParentTitle=3D' + gSiteLife.EscapeValue(document.title) +
        '&plckCurrentPage=3D' + currentPage +
        '&plckPageSize=3D' + pageSize;
    this.__Send(url);
    return false;  =20
}
=0A=
SiteLifeProxy.prototype.SummaryArticlesMostCommented =3D function(count) =
{
 return this.SummaryPanel("SummaryArticlesMostCommented", count);=20
}=20
SiteLifeProxy.prototype.SummaryArticlesMostRecommended =3D =
function(count) {
 return this.SummaryPanel("SummaryArticlesMostRecommended", count);=20
}=20
SiteLifeProxy.prototype.SummaryPhotosRecentPhotosByTag =3D =
function(count, tagFilter, filterBySiteOfOrigin) {
 return this.SummaryPanel("SummaryPhotosRecentPhotosByTag", count, =
tagFilter, filterBySiteOfOrigin);=20
}=20
SiteLifeProxy.prototype.SummaryPhotosRecentUserPhotos =3D =
function(count, tagFilter, filterBySiteOfOrigin) {
 return this.SummaryPanel("SummaryPhotosRecentUserPhotos", count, =
tagFilter, filterBySiteOfOrigin);
}=20
SiteLifeProxy.prototype.SummaryPhotosRecentPhotos =3D function(count, =
tagFilter, filterBySiteOfOrigin) {
 return this.SummaryPanel("SummaryPhotosRecentPhotos", count, tagFilter, =
filterBySiteOfOrigin);=20
}=20
SiteLifeProxy.prototype.SummaryPhotosMostRecommendedPhotos =3D =
function(count, filterBySiteOfOrigin) {
 return this.SummaryPanel("SummaryPhotosMostRecommendedPhotos", count, =
"", filterBySiteOfOrigin);=20
}=20
SiteLifeProxy.prototype.SummaryPhotosMostRecommendedUserPhotos =3D =
function(count, filterBySiteOfOrigin) {
 return this.SummaryPanel("SummaryPhotosMostRecommendedUserPhotos", =
count, "", filterBySiteOfOrigin);=20
}=20
SiteLifeProxy.prototype.SummaryPhotosMostRecommendedGalleries =3D =
function(count) {
 return this.SummaryPanel("SummaryPhotosMostRecommendedGalleries", =
count);=20
}=20
SiteLifeProxy.prototype.SummaryForumsRecentDiscussions =3D =
function(count, filterBySiteOfOrigin) {
    return this.SummaryPanel("SummaryForumsRecentDiscussions", count, =
"", filterBySiteOfOrigin);
}=20
SiteLifeProxy.prototype.SummaryBlogsRecent =3D function(count, =
tagFilter) {
    return this.SummaryPanel("SummaryBlogsRecent", count, tagFilter);
}
SiteLifeProxy.prototype.SummaryBlogsRecentPostsByTag =3D function(count, =
tagFilter, filterBySiteOfOrigin) {
 return this.SummaryPanel("SummaryBlogsRecentPostsByTag", count, =
tagFilter, filterBySiteOfOrigin);=20
}=20
SiteLifeProxy.prototype.SummaryBlogsRecentPosts =3D function(count, =
tagFilter, filterBySiteOfOrigin) {
 return this.SummaryPanel("SummaryBlogsRecentPosts", count, tagFilter, =
filterBySiteOfOrigin);=20
}=20
SiteLifeProxy.prototype.SummaryBlogsMostRecommendedPosts =3D =
function(count, tagFilter, filterBySiteOfOrigin) {
    return this.SummaryPanel("SummaryBlogsMostRecommendedPosts", count, =
tagFilter, filterBySiteOfOrigin);
}
SiteLifeProxy.prototype.SummaryPersonaProfileRecent =3D function(count) =
{
    return this.SummaryPanel("SummaryPersonaProfileRecent", count);
}
SiteLifeProxy.prototype.SummaryPanel =3D function(methodName, count, =
tagFilter, filterBySiteOfOrigin) {
    var divId=3D "Summary_Container" + this.SID;
    if(this.numSummaryWidgets){ divId +=3D this.numSummaryWidgets++; } =
else { this.numSummaryWidgets =3D 1; }
    this.WriteDiv(divId, divId);
    return this.SummarySend(methodName, divId, divId + "Script", =
"plckCount", count, "plckTagFilter", tagFilter, =
"plckFilterBySiteOfOrigin", filterBySiteOfOrigin);
}
SiteLifeProxy.prototype.SummarySend =3D function(ApiName, DestDiv, =
ScriptName){

    var url =3D this.__baseUrl + '/Summary/' + ApiName + =
'?plckElementId=3D' + DestDiv;
    for(ii=3D3; ii< this.SummarySend.arguments.length; ii+=3D2) { =
if(this.SummarySend.arguments[ii+1]) { url +=3D "&" + =
this.SummarySend.arguments[ii] + "=3D" + =
this.SummarySend.arguments[ii+1];} }
    this.__Send(url, ScriptName);
    return false;
}
=0A=

SiteLifeProxy.prototype.MyNews =3D function() {
  this.WriteDiv("myNewsDest", "MyNews_Main");
  return this.MyNewsSend("MyNews", "myNewsDest", "myNewsScript");
}

SiteLifeProxy.prototype.MyNews =3D function(userFieldName, =
passwordFieldName) {
  this.WriteDiv("myNewsDest", "MyNews_Main");
  return this.MyNewsSend("MyNews", "myNewsDest", "myNewsScript", =
'plckUserFieldName=3D' +  userFieldName + '&plckPasswordFieldName=3D' + =
passwordFieldName);
}

SiteLifeProxy.prototype.MyNewsSeeMore =3D function() {
  this.WriteDiv("myNewsDest", "MyNews_Main");
  return this.MyNewsSend("MyNewsGroup", "myNewsDest", "myNewsScript", =
"plckGroupName=3D" + this.GetParameter("plckGroupName"));
}

SiteLifeProxy.prototype.MyNewsSeeMore =3D function(userFieldName, =
passwordFieldName) {
  this.WriteDiv("myNewsDest", "MyNews_Main");
  return this.MyNewsSend("MyNewsGroup", "myNewsDest", "myNewsScript", =
"plckGroupName=3D" + this.GetParameter("plckGroupName") + =
'&plckUserFieldName=3D' +  userFieldName + '&plckPasswordFieldName=3D' + =
passwordFieldName);
}

SiteLifeProxy.prototype.MyNewsUpdateOrder =3D function(order) {
    return this.MyNewsSend('MyNewsUpdateOrder', 'myNewsDest', =
'myNewsScript', 'plckOrder=3D' +  order );
}

SiteLifeProxy.prototype.MyNewsSearch =3D function(query, groupId, =
currentPage) {
    return this.MyNewsSend('MyNewsSearch', groupId + '_SearchResult', =
'myNewsScript', 'plckQuery=3D' +  query + '&plckGroupId=3D' + groupId + =
'&plckCurrentPage=3D' + currentPage + '&plckPostBack=3Dtrue');
}

SiteLifeProxy.prototype.MyNewsSend =3D function(ApiName, DestDiv, =
ScriptName, AddParams){
  var url =3D this.__baseUrl + '/MyNews/' + ApiName + =
'?plckElementId=3D' + DestDiv;
  if(AddParams) url +=3D '&' + AddParams;
    this.__Send(url, ScriptName);
    return false;
}=0A=



var gSiteLife =3D new =
SiteLifeProxy("http://community.washingtonpost.com/ver1.0");
gSiteLife.apiKey =3D "${APIKey}";
gSiteLife.SID =3D "";

    // legacy behavior
    gSiteLife.AddEventHandler('ExternalResourceLink', function(rk) =
{return rk;});

if(gSiteLife.GetParameter('plckPersonaPage') && =
gSiteLife.GetParameter('plckPersonaPage').indexOf('PersonaBlog') =3D=3D =
0) {
document.write("<link href=3D" + =
"'http://community.washingtonpost.com/ver1.0/blog/BlogRss?plckBlogId=3D" =
+ gSiteLife.GetParameter('newspaperUserId') + "' title=3D'" + =
gSiteLife.GetParameter('newspaperUserId') + " Blog'" + =
"rel=3D'alternate' type=3D'application/rss+xml' />"); }

------=_NextPart_000_0000_01C83FED.C3179200
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.washingtonpost.com/wp-adv/adproducts/advertisingLinks/advertisingLinks_v2.js

// you can remove this line when you are complete
if ( (typeof adTemplate =3D=3D 'undefined') || ((adTemplate & =
AD_LINKS_BOTTOM) =3D=3D AD_LINKS_BOTTOM) || ((adTemplate & =
AD_LINKS_RIGHT) =3D=3D AD_LINKS_RIGHT) ) {

hasGoogleAds=3D(typeof thisNode =3D=3D 'undefined')?null:true;

if (hasGoogleAds !=3D null) {
var oRan =3D Math.floor(Math.random() * 1000000);
var oUrl =3D document.location.href;

// local variables for yahoo links (_yL)
_yL_section =3D thisNode.split("/")[0];
if (thisNode.split("/")[1] =3D=3D 'travel') _yL_section =3D 'travel';
if (thisNode.split("/")[1] =3D=3D 'style')  _yL_section =3D 'style';
if (thisNode.split("/")[1] =3D=3D 'foodanddining') _yL_section =3D =
'food';
if (thisNode.split("/")[1] =3D=3D 'comics') _yL_section =3D 'comics';

switch(_yL_section) {
=20


// primary categories
case "archives":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'archives_article';
break;

case "business":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'business_article';
break;

case "education":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'education_article';
break;

case "health":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'health_article';
break;

case "technology":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'technology_article';
break;

case "travel":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'travel_article';
break;

case "rentals":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'classified_apartments_article';
break;

case "cars":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'classified_cars_article';
break;

case "jobs":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'classified_jobs_article';
break;

case "merchandise":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'classified_merchandise_article';
break;

case "other":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'classified_other_article';
break;

case "realestate":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'classified_realestate_article';
break;

// tier two categories
case "food":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'othernews_article';
break;

case "metro":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'metro_article';
break;

case "print":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'print_article';
break;


case "style":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'style_article';
break;

case "weather":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'othernews_article';
break;

case "politics":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'politics_article';
break;

case "nation":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'nation_article';
break;

case "world":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'world_article';
break;

case "artsandliving":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'othernews_article';
break;

case "cityguide":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'cityguide_article';
break;

case "style":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'style_article';
break;

case "kidspost":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'kidspost_article';
break;

case "blogs":
	google_ad_client =3D 'ca-washingtonpost-primary_js';
	google_ad_channel =3D 'othernews_article';
break;

// basic categories
case "homepage":
	google_ad_client =3D 'ca-washingtonpost-basic_js';
	google_ad_channel =3D 'homepage';
break;

case "dating":
	google_ad_client =3D 'ca-washingtonpost-basic_js';
	google_ad_channel =3D 'al_dating_article';
break;

case "sports":
	google_ad_client =3D 'ca-washingtonpost-basic_js';
	google_ad_channel =3D 'sports_article';
break;

case "liveonline":
	google_ad_client =3D 'ca-washingtonpost-basic_js';
	google_ad_channel =3D 'discussions_article';
break;

case "photo":
	google_ad_client =3D 'ca-washingtonpost-basic_js';
	google_ad_channel =3D 'photosandvideos_article';
break;

case "opinion":
	google_ad_client =3D 'ca-washingtonpost-basic_js';
	google_ad_channel =3D 'opinions_article';
break;

case "opinions":
	google_ad_client =3D 'ca-washingtonpost-basic_js';
	google_ad_channel =3D 'opinions_article';
break;

case "comics":
	google_ad_client =3D 'ca-washingtonpost-basic_js';
	google_ad_channel =3D 'al_comics_article';
break;

case "crosswords":
	google_ad_client =3D 'ca-washingtonpost-basic_js';
	google_ad_channel =3D 'al_crosswords_article';
break;

default:
	google_ad_client =3D 'ca-washingtonpost-basic_js';
	google_ad_channel =3D 'othernews_article';
break;
}

// from April 10, 2006 to May 25, 2006 only
google_ad_client =3D 'ca-washingtonpost-article-site_js';
google_ad_channel2 =3D google_ad_channel;

debugBoolean =3D (document.location.search.indexOf("debugAdCode")+1 !=3D =
0) ? true : false ;
if ( debugBoolean ) {
	var debugText =3D '<div align=3D"left">' ;
	debugText +=3D 'ad client: ' ;
	debugText +=3D google_ad_client ;
	debugText +=3D '<br/>' ;
	debugText +=3D 'ad channel: ' ;
	debugText +=3D google_ad_channel ;
	debugText +=3D '</div>' ;
	document.write(debugText) ;
}

// reverse commenting before launch
//document.write('<s\cript src=3D"article_display.js"></s\cript>');
 document.write('<s\cript =
src=3D"http://www.washingtonpost.com/wp-adv/adproducts/advertisingLinks/a=
rticle_display.js"></s\cript>');

}
// you can remove this line when you are complete
}

------=_NextPart_000_0000_01C83FED.C3179200
Content-Type: application/octet-stream
Content-Transfer-Encoding: 7bit
Content-Location: http://media.washingtonpost.com/wp-srv/javascript/resize.js

if ( !document.getElementById && !document.all )
{
  if(!window.saveInnerWidth)
  {
    window.onresize = resize ;
    window.saveInnerWidth = window.innerWidth ;
    window.saveInnerHeight = window.innerHeight ;
  }
}

function resize()
{
  if (saveInnerWidth < window.innerWidth ||
      saveInnerWidth > window.innerWidth ||
      saveInnerHeight > window.innerHeight ||
      saveInnerHeight < window.innerHeight )
  {
    window.history.go(0) ;
  }
}


if (typeof adTemplate != 'undefined' && adTemplate == 65680) {
top.window.focus();
}
------=_NextPart_000_0000_01C83FED.C3179200
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://media.washingtonpost.com/wp-adv/dm/dm_client.js

rsUrl =3D document.location.href;=0A=
if (rsUrl.indexOf('www.slate.com') !=3D -1) rs_site =3D 'slate';=0A=
else if (rsUrl.indexOf('www.budgettravelonline') !=3D -1) rs_site =3D =
'bt';=0A=
else if (rsUrl.indexOf('www.msnbc.msn.com') !=3D -1) rs_site =3D 'nw';=0A=
else rs_site =3D 'wp';=0A=
=0A=
=0A=
//<!--Built:10/03/05=0A=
// Start Config // =0A=
 var DM_CSID =3D (rs_site =3D=3D 'wp' || re_site =3D=3D =
'nw')?"F04462":"J05531";=0A=
 var DM_UIDS =3D 3;=0A=
 var DM_CHN =3D document.location.hostname;=0A=
 var DM_PIX =3D "rsi.washingtonpost.com";=0A=
 var DM_BPIX =3D "rsi.washingtonpost.com";=0A=
 var DM_UIDD =3D document.location.hostname;=0A=
 var DM_UIDP =3D "/";=0A=
 var DM_UIDC =3D "";=0A=
 var DM_UIDN =3D "";=0A=
 var DM_UIDE =3D 0;=0A=
 var DM_ADMG =3D 1;=0A=
 var DM_ANLY =3D 1;=0A=
 var DM_RTRY =3D 0;=0A=
 var DM_DREF =3D 0; =0A=
 var DM_LOAD_TIME =3D 0;=0A=
 var DM_TOUT_PIX_PATH =3D "";=0A=
 var DM_CSES =3D 0;=0A=
 var DM_CTST =3D 0;=0A=
 var DM_MULT =3D (rs_site =3D=3D 'wp')?1:0;=0A=
 var DM_FRAG =3D 0;=0A=
 var DM_RCRC =3D 0;=0A=
 var DM_BOOM_ON =3D 0;=0A=
 var DM_BOOM_DMN =3D "";=0A=
 var DM_BOOM_SRC =3D "";=0A=
 var DM_BOOM_DCN =3D "";=0A=
// End Config // =0A=
 var DM_TEST =3D 0; var DM_REQS =3D 0; var _DM_DTE =3D new Date(); var =
_DM_UNV =3D navigator; var _DM_UDC =3D document; var _DM_CHR =3D null; =
var _DM_sImg =3D new Array(); var _DM_evts =3D new Array(); var _DM_hexc =
=3D new =
Array("0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"); =
var _DM_BCL1 =3D "?&=3D%.()"; var _DM_GCL2 =3D =
"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; var =
_DM_TGID =3D "a" + _DM_hexc[(DM_TEST<<3 | DM_REQS<<2| DM_ADMG<<1 | =
DM_ANLY)]; var _DM_name =3D _DM_UDC.title; =
for(_DM_CHR=3D"",i=3D0;i<256;i++) { _DM_CHR +=3D String.fromCharCode(i); =
 } var _DM_CRCTbl =3D new Array( 0x00000000, 0x77073096, 0xee0e612c, =
0x990951ba, 0x076dc419, 0x706af48f, 0xe963a535, 0x9e6495a3, 0x0edb8832, =
0x79dcb8a4, 0xe0d5e91e, 0x97d2d988, 0x09b64c2b, 0x7eb17cbd, 0xe7b82d07, =
0x90bf1d91, 0x1db71064, 0x6ab020f2, 0xf3b97148, 0x84be41de, 0x1adad47d, =
0x6ddde4eb, 0xf4d4b551, 0x83d385c7, 0x136c9856, 0x646ba8c0, 0xfd62f97a, =
0x8a65c9ec, 0x14015c4f, 0x63066cd9, 0xfa0f3d63, 0x8d080df5, 0x3b6e20c8, =
0x4c69105e, 0xd56041e4, 0xa2677172, 0x3c03e4d1, 0x4b04d447, 0xd20d85fd, =
0xa50ab56b, 0x35b5a8fa, 0x42b2986c, 0xdbbbc9d6, 0xacbcf940, 0x32d86ce3, =
0x45df5c75, 0xdcd60dcf, 0xabd13d59, 0x26d930ac, 0x51de003a, 0xc8d75180, =
0xbfd06116, 0x21b4f4b5, 0x56b3c423, 0xcfba9599, 0xb8bda50f, 0x2802b89e, =
0x5f058808, 0xc60cd9b2, 0xb10be924, 0x2f6f7c87, 0x58684c11, 0xc1611dab, =
0xb6662d3d, 0x76dc4190, 0x01db7106, 0x98d220bc, 0xefd5102a, 0x71b18589, =
0x06b6b51f, 0x9fbfe4a5, 0xe8b8d433, 0x7807c9a2, 0x0f00f934, 0x9609a88e, =
0xe10e9818, 0x7f6a0dbb, 0x086d3d2d, 0x91646c97, 0xe6635c01, 0x6b6b51f4, =
0x1c6c6162, 0x856530d8, 0xf262004e, 0x6c0695ed, 0x1b01a57b, 0x8208f4c1, =
0xf50fc457, 0x65b0d9c6, 0x12b7e950, 0x8bbeb8ea, 0xfcb9887c, 0x62dd1ddf, =
0x15da2d49, 0x8cd37cf3, 0xfbd44c65, 0x4db26158, 0x3ab551ce, 0xa3bc0074, =
0xd4bb30e2, 0x4adfa541, 0x3dd895d7, 0xa4d1c46d, 0xd3d6f4fb, 0x4369e96a, =
0x346ed9fc, 0xad678846, 0xda60b8d0, 0x44042d73, 0x33031de5, 0xaa0a4c5f, =
0xdd0d7cc9, 0x5005713c, 0x270241aa, 0xbe0b1010, 0xc90c2086, 0x5768b525, =
0x206f85b3, 0xb966d409, 0xce61e49f, 0x5edef90e, 0x29d9c998, 0xb0d09822, =
0xc7d7a8b4, 0x59b33d17, 0x2eb40d81, 0xb7bd5c3b, 0xc0ba6cad, 0xedb88320, =
0x9abfb3b6, 0x03b6e20c, 0x74b1d29a, 0xead54739, 0x9dd277af, 0x04db2615, =
0x73dc1683, 0xe3630b12, 0x94643b84, 0x0d6d6a3e, 0x7a6a5aa8, 0xe40ecf0b, =
0x9309ff9d, 0x0a00ae27, 0x7d079eb1, 0xf00f9344, 0x8708a3d2, 0x1e01f268, =
0x6906c2fe, 0xf762575d, 0x806567cb, 0x196c3671, 0x6e6b06e7, 0xfed41b76, =
0x89d32be0, 0x10da7a5a, 0x67dd4acc, 0xf9b9df6f, 0x8ebeeff9, 0x17b7be43, =
0x60b08ed5, 0xd6d6a3e8, 0xa1d1937e, 0x38d8c2c4, 0x4fdff252, 0xd1bb67f1, =
0xa6bc5767, 0x3fb506dd, 0x48b2364b, 0xd80d2bda, 0xaf0a1b4c, 0x36034af6, =
0x41047a60, 0xdf60efc3, 0xa867df55, 0x316e8eef, 0x4669be79, 0xcb61b38c, =
0xbc66831a, 0x256fd2a0, 0x5268e236, 0xcc0c7795, 0xbb0b4703, 0x220216b9, =
0x5505262f, 0xc5ba3bbe, 0xb2bd0b28, 0x2bb45a92, 0x5cb36a04, 0xc2d7ffa7, =
0xb5d0cf31, 0x2cd99e8b, 0x5bdeae1d, 0x9b64c2b0, 0xec63f226, 0x756aa39c, =
0x026d930a, 0x9c0906a9, 0xeb0e363f, 0x72076785, 0x05005713, 0x95bf4a82, =
0xe2b87a14, 0x7bb12bae, 0x0cb61b38, 0x92d28e9b, 0xe5d5be0d, 0x7cdcefb7, =
0x0bdbdf21, 0x86d3d2d4, 0xf1d4e242, 0x68ddb3f8, 0x1fda836e, 0x81be16cd, =
0xf6b9265b, 0x6fb077e1, 0x18b74777, 0x88085ae6, 0xff0f6a70, 0x66063bca, =
0x11010b5c, 0x8f659eff, 0xf862ae69, 0x616bffd3, 0x166ccf45, 0xa00ae278, =
0xd70dd2ee, 0x4e048354, 0x3903b3c2, 0xa7672661, 0xd06016f7, 0x4969474d, =
0x3e6e77db, 0xaed16a4a, 0xd9d65adc, 0x40df0b66, 0x37d83bf0, 0xa9bcae53, =
0xdebb9ec5, 0x47b2cf7f, 0x30b5ffe9, 0xbdbdf21c, 0xcabac28a, 0x53b39330, =
0x24b4a3a6, 0xbad03605, 0xcdd70693, 0x54de5729, 0x23d967bf, 0xb3667a2e, =
0xc4614ab8, 0x5d681b02, 0x2a6f2b94, 0xb40bbe37, 0xc30c8ea1, 0x5a05df1b, =
0x2d02ef8d ); var _DM_UID =3D 0;  var _DM_UTZ =3D =
(-1*_DM_DTE.getTimezoneOffset())+720; var _DM_UCS =3D ((DM_CTST) ? =
(_DM_gc(_DM_sc("TC0",1,DM_CHN,"/",0,0)) =3D=3D 1 ? =
1:0)+(_DM_gc(_DM_sc("TC1",1,DM_CHN,"/",1,0)) =3D=3D 1 ? 2:0):0);  var =
_DM_USID =3D ((DM_CSES) ? _DM_sessID():0); var _DM_CNV =3D ""; var =
_DM_LOC =3D _DM_UDC.location.toString(); var _DM_REF =3D =
_DM_UDC.referrer.toString(); var _DM_CLD =3D 0;function DM_tag() { if =
(_DM_CLD =3D=3D 0 || DM_MULT =3D=3D 1) { _DM_CLD =3D 1; switch(DM_UIDS) =
{ case 1: case 2: case 5: var cke =3D _DM_gc(DM_UIDC); =
if(cke=3D=3Dnull){ _DM_UID=3D-1; }else if(cke.indexOf("/")>=3D0 || =
cke.indexOf("?")>=3D0){ _DM_UID=3D-1; }else{ =
_DM_UID=3D"DMID"+DM_UIDS+"=3D"+escape(cke); } break; case 4: if =
((_DM_UID =3D _DM_gc(DM_UIDN)) =3D=3D null) { _DM_UID =3D _DM_genID(); =
_DM_sc(DM_UIDN,_DM_UID,DM_UIDD,DM_UIDP,DM_UIDE,0); } _DM_UID =3D =
"DMID4=3D"+_DM_UID; break; } for(var i=3D0;i<_DM_evts.length;i++){ =
_DM_addNV("DM_EVT."+_DM_evts[i].name,_DM_evts[i].props); } =
if(DM_DREF=3D=3D1) { _DM_addNV("DM_LOC",_DM_encd(_DM_REF,_DM_BCL1,0)); } =
else { _DM_addNV("DM_LOC",_DM_encd(_DM_LOC,_DM_BCL1,0)); } =
_DM_addNV("DM_REF",_DM_encd(_DM_REF,_DM_BCL1,0)); (_DM_UID!=3D0 && =
_DM_UID!=3D-1?_DM_addNV("DM_HID",_DM_encd(_DM_UID,_DM_BCL1,0)):0); =
_DM_addNV("DM_TIT",_DM_encd(_DM_UDC.title.toString(),_DM_BCL1,0)); =
_DM_CNV+=3D"&DM_EOM=3D1"; if(_DM_pack(_DM_CNV)){ if(DM_BOOM_ON){ =
_DM_checkBoom(); } } _DM_rstReq(); } } function _DM_pack(d) { var rdte =
=3D new Date(); var rid =3D _DM_toHex(Math.floor(rdte)); var =
bse=3D"",hdr=3D"",dat=3D"",seq=3D1; var prt=3Dlocation.protocol+"//"; =
var msl=3D(DM_PIX.length>DM_BPIX.length?DM_PIX.length:DM_BPIX.length); =
var mrl=3D2000,usd=3D0; d=3D_DM_encd(d,_DM_GCL2,1); for(var =
shpd=3D0,f=3D1;((DM_FRAG) ? =
(shpd<d.length):(f=3D=3D1));shpd+=3Ddat.length,f++){ =
hdr=3D"/"+DM_CSID+"/"+_DM_TGID+"/"+_DM_UCS+"/"+DM_UIDS+"/"+_DM_UTZ+"/"+se=
q+"/"+_DM_USID+"/"+rid+"/"+_DM_UID+"/"; =
bse=3D"/"+Math.floor(Math.random()*Math.pow(10,9))+".gif?D=3D"; =
lst=3D(shpd+(mrl-msl-(prt+hdr+bse).length-10)>d.length?1:0); =
if(!DM_FRAG){ sts=3D0; }else if(f=3D=3D1&&lst=3D=3D0){ sts=3D1; }else =
if(f>1&&lst=3D=3D0){ sts=3D2; }else if(f>1&&lst=3D=3D1){ sts=3D3; }else{ =
sts=3D0; } hdr+=3Dsts+"/"; usd=3D(prt+hdr+bse).length+msl+8; =
dat=3Dd.substr(shpd,(mrl-usd-(d.charAt(shpd+(mrl-usd-1))=3D=3D'%'?1:(d.ch=
arAt(shpd+(mrl-usd-2))=3D=3D'%'?2:0)))); hdr+=3D_DM_pad(((DM_RCRC) ? =
_DM_toHex(_DM_crc32(dat)):0),8); =
_DM_ship(_DM_toHex(Math.floor(Math.random()*Math.pow(10,9))),prt,DM_PIX,D=
M_BPIX,hdr+bse+dat,0); seq++; } return 1; } function =
_DM_ship(srl,p,s1,s2,u,t) { if(_DM_sImg[srl]=3D=3Dnull) { =
_DM_sImg[srl]=3Dnew Image(2,3); } if (t<2) { _DM_sImg[srl].src =3D =
p+s1+u; } else if(t<4) { _DM_sImg[srl].src =3D p+s2+u; } if =
(DM_LOAD_TIME > 0) { =
setTimeout("isPixLoaded(_DM_sImg['"+srl+"']);",parseInt(DM_LOAD_TIME) * =
1000); } if (DM_RTRY=3D=3D1 && DM_LOAD_TIME=3D=3D0) { =
_DM_sImg[srl].onerror=3D =
function(){setTimeout("_DM_ship('"+srl+"','"+p+"','"+s1+"','"+s2+"','"+u+=
"',"+(t+1)+")",5000);}; } } function isPixLoaded(pix) { var emptyImg =3D =
new Image(); if (pix.complete) { return pix; } else { return pix.src =3D =
DM_TOUT_PIX_PATH; } } function _DM_addNV(n,v) {  _DM_CNV +=3D =
(_DM_CNV?"&":"")+n+"=3D"+v;  } function _DM_genID() { return =
_DM_toHex(Math.floor(_DM_DTE)) =
+"-"+_DM_toHex(Math.floor(Math.random()*Math.pow(10,16))) =
+"-"+_DM_toHex(_DM_crc32("".concat(_DM_UDC.referrer,_DM_UDC.cookie,_DM_UN=
V.userAgent,_DM_UTZ,screen.width,screen.height))); } function =
_DM_sessID() { var sID=3D_DM_gc("DMSID"); if (sID =3D=3D null){ =
sID=3D_DM_gc(_DM_sc("DMSID",_DM_genID(),DM_UIDD,DM_UIDP,0,0));} =
return(sID);  } function _DM_sc(n,v,d,p,e,o) { var _CDTE =3D new Date(); =
if ((n !=3D "" && v !=3D "") && (_DM_gc(n) =3D=3D null || o =3D=3D 1)) { =
_CDTE.setDate(_DM_DTE.getDate()+e); _DM_UDC.cookie =3D n+"=3D"+v+(p !=3D =
"" ? ";path=3D"+p:"")+(d !=3D "" ? ";domain=3D"+d:"")+(e>0 ? =
";expires=3D"+_CDTE.toGMTString():""); }  return n;  } function =
_DM_gc(n) { var co =3D _DM_UDC.cookie; var pos =3D co.indexOf(n+"=3D"); =
return pos !=3D -1 ? co.substring(pos+n.length+1,(co.indexOf("; =
",pos)!=3D -1 ? co.indexOf("; ",pos):co.length)):null;  } function =
_DM_encd(s,chrs,b){ for(var i=3D0,ns=3D"",c=3D"";i<s.length;i++){ =
if((b=3D=3D1 ? chrs.indexOf(s.charAt(i))>=3D0 : =
chrs.indexOf(s.charAt(i))<0)){ ns+=3Ds.charAt(i); }else{ =
if((c=3D_DM_CHR.indexOf(s.charAt(i)))>0) =
ns+=3D"%"+_DM_pad(_DM_toHex(c),2); } } return ns; } function =
_DM_crc32(buf) { i=3D0; cnt =3D buf.length; crc =3D 0xFFFFFFFF; while =
(cnt-- !=3D 0) crc =3D _DM_CRCTbl[(crc ^ =
_DM_CHR.indexOf(buf.charAt(i++))) & 0xFF] ^ (crc >>> 8); crc ^=3D =
0xFFFFFFFF;  crc =3D (crc & 0x7FFFFFFF) + ((crc<0)?0x80000000:0); return =
crc; } function _DM_appendToUrl(u,n,v) { return =
u+((u.indexOf("?")=3D=3D-1)?"?":"&")+n+"=3D"+v; } function _DM_toHex(n){ =
var rmd=3D0,quo=3D0,hex=3D""; if(n < 16) { return _DM_hexc[n]; }else{ =
rmd =3D (n%16); quo =3D Math.floor((n - rmd)/16); return =
(_DM_toHex(quo)+_DM_toHex(rmd)); } } function _DM_pad(d,p){ d +=3D ""; =
while(d.length < p){ d =3D "0"+d; } return d; } function =
_DM_checkBoom(){ var segC=3D"", bomc=3D"",scrc=3D0,bcrc=3D0; if((segC =
=3D _DM_gc("DMSEG")) !=3D null){ if((bomc =3D _DM_gc("DMBOM")) !=3D =
null){ scrc =3D _DM_pad(_DM_toHex(_DM_crc32(segC)),8); bcrc =3D =
bomc.substr(0,bomc.indexOf("&")); if(scrc !=3D bcrc){ =
_DM_sendBoom(segC,scrc,DM_BOOM_DMN,DM_BOOM_SRC,DM_BOOM_DCN); } }else{ =
_DM_sendBoom(segC,_DM_pad(_DM_toHex(_DM_crc32(segC)),8),DM_BOOM_DMN,DM_BO=
OM_SRC,DM_BOOM_DCN); } } } function _DM_sendBoom(segC,crc,dmn,src,dcn){ =
var aTok,segs,rid=3D0,i=3D0,bl=3D"",u=3D""; segC =3D unescape(segC); =
aTok =3D segC.split("&"); if(aTok.length >=3D 6){ if(aTok[5].length > =
0){ segs =3D aTok[5].split(","); while(i < segs.length){ bl +=3D =
"boom=3D"+segs[i]+";"; i++; } rid =3D =
Math.floor(Math.random()*Math.pow(10,9)); u =3D =
"/src=3D"+src+";dcnet=3D"+dcn+";"+bl+"sz=3D1x1;ord=3D"+rid+"?"; =
_DM_ship(rid,location.protocol+"//",dmn,dmn,u,0); _DM_setBoom(crc,1); =
}else{ _DM_setBoom(crc,0); } }else{ _DM_setBoom(crc,0); } } function =
_DM_setBoom(crc,snt){ =
_DM_sc("DMBOM",crc+"&"+_DM_toHex(Math.floor(_DM_DTE))+"&"+snt,DM_CHN,"/",=
0,1); } function _DM_rstReq() { _DM_CNV =3D ""; _DM_LOC =3D =
_DM_UDC.location.toString(); _DM_REF =3D _DM_UDC.referrer.toString(); =
_DM_UID =3D 0; } function DM_event(e,n,v){ for(var =
i=3D0;i<_DM_evts.length;i++){ if(_DM_evts[i].name =3D=3D e){ =
if(_DM_evts[i].props.indexOf("("+_DM_encd(n,_DM_BCL1,0)+".")<0){ =
_DM_evts[i].props+=3D"("+_DM_encd(n,_DM_BCL1,0)+"."+_DM_encd(v,_DM_BCL1,0=
)+")"; return 1; }else{ return 0; } } } =
_DM_evts[_DM_evts.length]=3D{name:_DM_encd(e,_DM_BCL1,0),props:"("+_DM_en=
cd(n,_DM_BCL1,0)+"."+_DM_encd(v,_DM_BCL1,0)+")"}; return 1; } function =
DM_cat(cat) { _DM_addNV("DM_CAT",_DM_encd(cat,_DM_BCL1,0)) } function =
DM_name(f) { _DM_addNV("DM_NAM",_DM_encd(f,_DM_BCL1,0)) } function =
DM_keywords(k) { _DM_addNV("DM_KYW",_DM_encd(k,_DM_BCL1,0)) } function =
DM_segments(s) { _DM_addNV("DM_SEG",_DM_encd(s,_DM_BCL1,0)) } function =
DM_addToLoc(n,v) { _DM_LOC=3D_DM_appendToUrl(_DM_LOC,n,v); =
if(DM_DREF=3D=3D1) { _DM_REF=3D_DM_appendToUrl(_DM_REF,n,v); } }//--> =0A=

------=_NextPart_000_0000_01C83FED.C3179200
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://media.washingtonpost.com/wp-srv/javascript/omniture/omniture-utils.js

var omniture_vars =3D new =
Array('wp_photo_gallery','wp_photo_name','wp_search_keywords','wp_search_=
type','wp_sectionfront','wp_content_type','wp_content_id','wp_headline','=
wp_page_name','wp_section','wp_subsection','wp_author','wp_page_num','wp_=
hierarchy','wp_application','wp_source','wp_blog_name','wp_story_id','wp_=
events');

function echoOmniture() {
	if ( location.search.match(/debugOmniture/) ) {
		var output =3D '' ;
		for (var i=3D0; i<omniture_vars.length; i++) {
			var o_var =3D omniture_vars[i] ;
			try {
				output +=3D '<b>' + o_var + '</b> =3D \'' + eval(o_var) + '\' =
;<br/>' ;
			} catch(error) {
				output +=3D '<b>' + o_var + '</b> is not defined<br/>' ;
			}
		}
		document.write(output);
	}
}
------=_NextPart_000_0000_01C83FED.C3179200
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://media.washingtonpost.com/wp-srv/javascript/placeSiteMetrix.js

function placeSiteMetrix()
{
  if ( typeof(s) =3D=3D"undefined" || (typeof(s) !=3D "undefined" && =
typeof(s.server) =3D=3D "undefined"))
  {=09
  	var output =3D '<!--Tracking code --->';
  	output +=3D '<s\cript type=3D"text/javascript" =
src=3D"http://media.washingtonpost.com/wp-srv/javascript/omniture/wp_omni=
ture.js"></s\cript>';
	output +=3D '<!--Tracking code --->';
	if (location.protocol !=3D "file:")
		document.write(output);
  }
}
------=_NextPart_000_0000_01C83FED.C3179200--
