




if (typeof(disqus_iframe_css) == 'undefined') {
	disqus_iframe_css = '';
}
if (typeof(disqus_def_name) == 'undefined') {
	disqus_def_name = '';
}
if (typeof(disqus_def_email) == 'undefined') {
	disqus_def_email = '';
}
if (typeof(disqus_skip_auth) == 'undefined') {
	disqus_skip_auth = false;
}
if (typeof(disqus_default_text) == 'undefined') {
	disqus_default_text = 'Type your comment here.';
}

(function(){
	
	var ie = document.uniqueID
		&& document.compatMode
		&& !window.XMLHttpRequest
		&& document.execCommand ;

	try {
		if(!!ie) {
			document.execCommand("BackgroundImageCache", false, true);
		}
	} catch(e) {};
})();

var Dsq = new function() {
	this.container = document.getElementById('dsq-content');
	this.jsonData = {"reactions": [], "has_more_reactions": false, "users": {"708ead3dff706cb871012a39aff847ed": {"username": "Big Man", "tumblr": "", "display_name": "Big Man", "url": "http://disqus.com/guest/708ead3dff706cb871012a39aff847ed/", "registered": false, "linkedin": "", "blog": "http://www.ravingblacklunatic.blogspot.com", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "4ec3c0272b87ba5c8ce3a9168cf4e78a": {"username": "Michelle", "tumblr": "", "display_name": "Michelle", "url": "http://disqus.com/guest/4ec3c0272b87ba5c8ce3a9168cf4e78a/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "d05ea8e305211a62ffa34eb705f7eb42": {"username": "Leila Abu-Saba", "tumblr": "", "display_name": "Leila Abu-Saba", "url": "http://disqus.com/guest/d05ea8e305211a62ffa34eb705f7eb42/", "registered": false, "linkedin": "", "blog": "http://bedouina.typepad.com", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "14240024090a37c7947486b97572c09d": {"username": "KXB", "tumblr": "", "display_name": "KXB", "url": "http://disqus.com/guest/14240024090a37c7947486b97572c09d/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "b8b9328e61e0094ae18e247c922f9dc7": {"username": "Jay", "tumblr": "", "display_name": "Jay", "url": "http://disqus.com/guest/b8b9328e61e0094ae18e247c922f9dc7/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "rikyrah": {"username": "rikyrah", "tumblr": "", "display_name": "rikyrah", "url": "http://disqus.com/rikyrah/", "registered": true, "linkedin": "", "blog": "", "remote_domain": null, "points": 3391, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "CraigHickman": {"username": "CraigHickman", "tumblr": "", "display_name": "CraigHickman", "url": "http://disqus.com/CraigHickman/", "registered": true, "linkedin": "", "blog": "http://craighickman.blogspot.com", "remote_domain": null, "points": 1692, "facebook": "", "avatar": "http://media.disqus.com/uploads/users/5/2947/avatar32.jpg", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "bison1": {"username": "bison1", "tumblr": "", "display_name": "bison1", "url": "http://disqus.com/bison1/", "registered": true, "linkedin": "", "blog": "", "remote_domain": null, "points": 34, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "smoothie": {"username": "smoothie", "tumblr": "", "display_name": "smoothie", "url": "http://disqus.com/smoothie/", "registered": true, "linkedin": "", "blog": "http://realpeeplz.blogspot.com/", "remote_domain": null, "points": 13, "facebook": "", "avatar": "http://media.disqus.com/uploads/users/5/3228/avatar32.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "1cbe9f1339df47d6e87bc3b8743188a6": {"username": "JJ", "tumblr": "", "display_name": "JJ", "url": "http://disqus.com/guest/1cbe9f1339df47d6e87bc3b8743188a6/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "2bcfb68e46ed1c3e91653e7834aa2e5e": {"username": "Nellcote", "tumblr": "", "display_name": "Nellcote", "url": "http://disqus.com/guest/2bcfb68e46ed1c3e91653e7834aa2e5e/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "Town": {"username": "Town", "tumblr": "", "display_name": "Town", "url": "http://disqus.com/Town/", "registered": true, "linkedin": "", "blog": "", "remote_domain": null, "points": 5447, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "245857794a8d4da90a73fbb64352b916": {"username": "Miss-Opinion ", "tumblr": "", "display_name": "Miss-Opinion ", "url": "http://disqus.com/guest/245857794a8d4da90a73fbb64352b916/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "delfinajones": {"username": "delfinajones", "tumblr": "", "display_name": "delfinajones", "url": "http://disqus.com/delfinajones/", "registered": true, "linkedin": "", "blog": "", "remote_domain": null, "points": 25, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "78cf91370f7140ca67a173bf80735c6c": {"username": "Get Togetha", "tumblr": "", "display_name": "Get Togetha", "url": "http://disqus.com/guest/78cf91370f7140ca67a173bf80735c6c/", "registered": false, "linkedin": "", "blog": "http://www.gettogetha.com/blog", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "blacksmythe": {"username": "blacksmythe", "tumblr": "", "display_name": "blacksmythe", "url": "http://disqus.com/blacksmythe/", "registered": true, "linkedin": "", "blog": "http://blacksmythe.com/blog", "remote_domain": null, "points": 3, "facebook": "", "avatar": "http://media.disqus.com/uploads/users/6/4060/avatar32.jpg", "delicious": "kspence", "is_remote": false, "verified": true, "flickr": "unbowed", "twitter": "", "remote_domain_name": ""}, "969b43a35cf1f286ea33c8cf69a64ed6": {"username": "Michele", "tumblr": "", "display_name": "Michele", "url": "http://disqus.com/guest/969b43a35cf1f286ea33c8cf69a64ed6/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "B_Serious": {"username": "B_Serious", "tumblr": "", "display_name": "B-Serious", "url": "http://disqus.com/B_Serious/", "registered": true, "linkedin": "", "blog": "http://www.reachblack.blogspot.com", "remote_domain": null, "points": 53, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "hopee": {"username": "hopee", "tumblr": "", "display_name": "hopee", "url": "http://disqus.com/hopee/", "registered": true, "linkedin": "", "blog": "", "remote_domain": null, "points": 160, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "LisaM5432": {"username": "LisaM5432", "tumblr": "", "display_name": "Lisa M", "url": "http://disqus.com/LisaM5432/", "registered": true, "linkedin": "", "blog": "", "remote_domain": null, "points": 687, "facebook": "", "avatar": "http://media.disqus.com/uploads/users/19/8882/avatar32.jpg", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "RonnieB": {"username": "RonnieB", "tumblr": "", "display_name": "RonnieB", "url": "http://disqus.com/RonnieB/", "registered": true, "linkedin": "", "blog": "", "remote_domain": null, "points": 1207, "facebook": "", "avatar": "http://media.disqus.com/uploads/users/5/3549/avatar32.jpg", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "a1899513a93684ede4e06b6dbe9d702a": {"username": "lene", "tumblr": "", "display_name": "lene", "url": "http://disqus.com/guest/a1899513a93684ede4e06b6dbe9d702a/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "jelana": {"username": "jelana", "tumblr": "", "display_name": "jelana", "url": "http://disqus.com/jelana/", "registered": true, "linkedin": "", "blog": "http://columbusadspot.com", "remote_domain": null, "points": 113, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "38c49e2ee2ce46bf31a9db5a2bbcd327": {"username": "roadkill refugee", "tumblr": "", "display_name": "roadkill refugee", "url": "http://disqus.com/guest/38c49e2ee2ce46bf31a9db5a2bbcd327/", "registered": false, "linkedin": "", "blog": "http://roadkillrefugee.wordpress.com", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "ef781b639c890767ebd1ce99011c3afa": {"username": "TRW", "tumblr": "", "display_name": "TRW", "url": "http://disqus.com/guest/ef781b639c890767ebd1ce99011c3afa/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "PTCruiser": {"username": "PTCruiser", "tumblr": "", "display_name": "PTCruiser", "url": "http://disqus.com/PTCruiser/", "registered": true, "linkedin": "", "blog": "", "remote_domain": null, "points": 969, "facebook": "", "avatar": "http://media.disqus.com/uploads/users/5/4271/avatar32.jpg", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "GreenLadyHere": {"username": "GreenLadyHere", "tumblr": "", "display_name": "GreenLadyHere", "url": "http://disqus.com/GreenLadyHere/", "registered": true, "linkedin": "", "blog": "", "remote_domain": null, "points": 600, "facebook": "", "avatar": "http://media.disqus.com/uploads/users/5/4286/avatar32.jpg", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}}, "forum": {"use_media": true, "name": "Jack and Jill Politics", "streaming_realtime": false, "url": "jackandjillpolitics", "allow_anon_post": false, "reactions_enabled": true, "reply_position": 1, "show_avatar": true, "allow_anon_votes": false, "disqus_auth_disabled": false}, "realtime_enabled": false, "request": {"username": "", "is_global_moderator": false, "sharing": {}, "sort": 4, "forum": "jackandjillpolitics", "is_initial_load": true, "is_authenticated": false, "timestamp": "2009-12-09_15:39:05", "remote_domain": "", "page": 1, "is_moderator": false, "display_username": "", "points": null, "subscribe_on_post": 2, "moderator_can_edit": false, "is_remote": false, "is_verified": false, "missing_perm": "login"}, "realtime_paused": false, "posts": {"927616": {"up_voted": false, "ip": "", "has_replies": true, "message": "As a white Jack and Jill reader, I have to agree with points 1 and 2 from RBL, but I'm not so sure about #3.<br><br>I don't think it's that (most) white people expect blacks to be funny or entertaining, but more about the lame \"who would I like to have a beer with\" presidential test (even though I'd much prefer to have a beer with Obama). Just look back to the last 4 elections. The supposedly more beer-worthy candidate has won every time. Humor contributes to that beer-factor that the media plays up so much.<br><br>I'm glad his personality and campaign border on too-serious. Running the country is serious business, we have a lot of serious problems, and the voters need to seriously consider what's happened to our political system, not make jokes about it. The jokes make me laugh to the point of crying. All in all, the serious tone seems quite appropriate to me.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-17_20:34:38", "killed": false, "user_key": "1cbe9f1339df47d6e87bc3b8743188a6", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 2, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "932353": {"up_voted": false, "ip": "", "has_replies": true, "message": "I have a Sistafriend who said the same thing to me last night. Get ready for the attacks on the WeeMichelles. Oh, I can't wait to hear how those mofos try and justify THAT bullshit. <br><br>But, we'll be here, pushing back.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_10:26:05", "killed": false, "user_key": "rikyrah", "has_been_anonymized": false, "edited": false, "author_is_moderator": true, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": 931971, "depth": 3, "points": 0, "author_is_creator": false, "is_realtime": false}, "929026": {"up_voted": false, "ip": "", "has_replies": true, "message": "I had to send Maureen Dowd an email because I'm tired of her constant attempts to make Obama appear an effete elitist with snooty tastes. Imagine a black man who doesn't like sweets, what could be the matter?  What does it mean?   Only in America could the guy who recenlty paid off his student loans be considered an elitist when he's running against a guy whose wife charged almost a million dollars on one credit card in one month.  Somehow because the Obamas shop at Whole Foods and eat \"exotic\" things like arugula, they're out of touch with middle America.  I think some people want him to bust out some fried chicken, lemonade, and a nice piece of watermelon to make the media comfortable.  \"Oh, did you see him spit out the seeds before he drank from his forty?  See, he is black enough.  Now if only he'll spit a rhyme my day will be complete.\"  <br> Another storyline that I found quite amusing was the consternation about some comics inability to make fun of Obama.  If a comedian cannot make a joke about Obama that is not racially based then he needs to find a new career.    <br>  And I couldn't agree more with the comments about suddenly Obama is responsible for everything that comes out about him.  I watched Jon Stewart and his it's \"a fuc*king satire\" moment and complely lost it.  I then watched the editor of the New Yorker, David Remnick, on Charlie Rose, blame Obama (he's too thin skinned) for the media's overreaction; and then he thanked Jon Stewart for his support and understanding.  Are you kidding me?  You put out a cover that could be construed as anti-Muslim and anti-black and somehow it's Obama's fault that people were offended.  Any idea that this cover was in fact intended to highlight the ridiculousness of the smears was erased after five minutes of watching that smug prick bask in the controversy he caused.  I think what has been so surprising about this process is watching the so-called left struggle with their own issues about race.  Suddenly the people who were oh-so-progressive when it comes to race (theoretically) seem to struggle when they are confronted with someone who doesn't fit neatly into those boxes that have been reserved for the \"exotics.\"  (And by the way, if I hear Chris Matthews refer to Obama as exotic one more time, I'm going to scream.)  <br>And If Obama is smart and I know he is, he will continue to keep the media at a respectful distance.  Since  he secured the nomination they have taken great pleasure in twisting his words and perpetuating untruths about his \"shifting\" positions.  Anyone who has heard Obama speak about Iraq for the last 18 months, knows he is saying exactly the same thing today that he said then.  So, why is Mark Halperin of Time magazine on MSNBC this morning (or yesterday)  talking about Obama's flip flop?  They want this race to be close and they will continue to give McCain a free ride.  They are going to scrutinize every move that Obama makes and should he crack a joke, they will call him arrogant and Jon Stewart will call him a douche, again. (Yes, Jon is on my sh*t list with his seeming inability to be critical of the insanity that is McCain.)  That is the minefield that awatis Obama.  The good news is I think he knows it.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-17_23:27:18", "killed": false, "user_key": "hopee", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "931971": {"up_voted": false, "ip": "", "has_replies": true, "message": "Actually I find Barack Obama to be quite hilarious.  He is funny but it goes over most people's heads.  I know sometimes during the debates I would see him being grilled and he would break out into this big grin and you could see the wheels turning in his head, like he was thinking \"Ok I see what's up, punk.\"  I know I was rolling on the floor when he gave that interview to Robin Roberts about \"don't mess with Michelle\" and he had this look on this face that looked like \"and I mean that,\" and Robin Roberts was looking kinda uncomfortable and then he broke out that \"How ya like me now\" grin while Michelle was in the background going \"bwahh haa haa.\"    They either want Obama to go into a rage (which is why they keep attacking Michelle**) or they want him to coon and buck dancing.  And because he's doing neither they can't figure the man out.<br><br>**Once they figure out that going after Michelle is not going to make Obama break down, they will start indirectly attacking the children and they're going to use a Magical Negro to do it.  Bet on it.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_09:42:49", "killed": false, "user_key": "Town", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 3, "is_first_child": false, "email": "", "parent_post_id": 928995, "depth": 2, "points": 0, "author_is_creator": false, "is_realtime": false}, "930948": {"up_voted": false, "ip": "", "has_replies": false, "message": "crap, I meant in a way I've never seen candidates be funny, not comedians. Sorry!", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_07:49:40", "killed": false, "user_key": "a1899513a93684ede4e06b6dbe9d702a", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 930937, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "935430": {"up_voted": false, "ip": "", "has_replies": true, "message": "Do you recall that during the primary debates with Hillary and Edwards and they were  asked about one of their personal shortcomings, and Obama was the only one of the three to give an honest answer?  He said something about wanting his staff not to give him any papers, things too early, because he might misplace them. Afterwards he realize that he didn\u2019t answer the question appropriately and made jokes about it ----saying that he should have said something about not helping little old ladies enough.   It was clearly self defecating humor.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_14:51:35", "killed": false, "user_key": "bison1", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 6, "is_first_child": false, "email": "", "parent_post_id": 932583, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "931463": {"up_voted": false, "ip": "", "has_replies": false, "message": "Thanks for the reminder about Annie Oakley; the shoulder brush (white folks over 25,  and maybe Black folks over 40, didn't get the inside joke); the \"you're likeable enough, Hillary; and many others.<br><br>It's become quite clear that some in the media are expecting that Barack to channel his inner Dave Chapelle--I mean, we all have an inner Dave Chapelle, right?", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_08:45:55", "killed": false, "user_key": "RonnieB", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "927763": {"up_voted": false, "ip": "", "has_replies": false, "message": "Yup,<br>Our cultures and priorities are definitely different", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-17_20:53:08", "killed": false, "user_key": "jelana", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "935062": {"up_voted": false, "ip": "", "has_replies": true, "message": "Early on Michelle was making jokes at Barack's expense - and in that interview with the daughters they made fun of his shoes and his pants for being too old and beat-up. He took it very well.<br><br>And thanks for reminding us about the shoulder brush and the HIlary remarks. I don't watch TV and ignore the debates as much as possible (that's just me) so I missed a lot of that. I did watch the shoulder brush on Youtube and thought it was pretty good even though I am a middle-aged white lady and did NOT get the reference at first. Even without knowing about the song, his timing and delivery made me laugh. All I saw was him brushing it off and that was funny on its own. Then I watched the music video and made the connection. I call that a universal laugh moment if you didn't have to know the reference to find it funny. He then bent over and brushed off his shoes - I thought that was great. <br><br>Re: humorlessness and being \"angry.\" This whole conversation reminds me of how much I keep myself in check about MIddle East issues, because if I so much as list a few Israeli atrocities in a calm voice, I get called angry. The only thing more dangerous in America than an Angry Black Person is an Angry Arab. We Arabs have to step very very carefully around non-Arab people (that includes my African-American sisters and brothers, too) lest our talk of oppression make people uncomfortable. <br><br>Angry Arabs are scary to Americans. The US public has been brainwashed for two generations to believe that angry Arabs are going to come and get their mamas. 9/11 made it all too real. Yep. Can't have any Arab anywhere say anything angry because maybe they'll KILL YOU RIGHT LIKE THAT. Because only Arabs kill thousands of people by bombing with airplanes...", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_14:22:46", "killed": false, "user_key": "d05ea8e305211a62ffa34eb705f7eb42", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "935448": {"up_voted": false, "ip": "", "has_replies": true, "message": "He and everybody   laugh about his bowling score.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_14:52:42", "killed": false, "user_key": "bison1", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 2, "is_first_child": false, "email": "", "parent_post_id": 935430, "depth": 2, "points": 0, "author_is_creator": false, "is_realtime": false}, "931908": {"up_voted": false, "ip": "", "has_replies": false, "message": "You are so right!", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_09:34:57", "killed": false, "user_key": "delfinajones", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "929690": {"up_voted": false, "ip": "", "has_replies": false, "message": "This post was needed.  Maureen Dowd\u2019s wit works with main stream White Americas, but she is out of her element when it comes to Black culture and humor.  Black people understand the twoness that permeates the American landscape.  Black people are often guarded, because we have to be.  Not angry, just mindful. We understand how familiarity can breed disrespect and contempt with those who are only vaguely  familiar with you.<br><br>On the lighter side, I thought the commercial of the car salesman parodying Obama was funny.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_01:25:55", "killed": false, "user_key": "bison1", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "929054": {"up_voted": false, "ip": "", "has_replies": false, "message": "Wait, I forgot about the Hillary , Annie Oakley joke.  That was hilarious actually.  I re-watched that video a couple of times thinking, this dude is funny.  Same thing with the Gramm/Dr. Phil thing.  So you're right.  Barack is funny, maybe it just that some people in the press want him to be funny in a certain way though.  <br><br>As far as the whole military thing, I can't tell you how disappointed I was that the Obama campaign didn't back up Wesley Clark or at least read the interview he gave.  People can have mixed feelings about Wesley Clark, but the man was clearly repeating verbatim what the interviewer asked him, i.e. qualification for President being shot down in a fighter plane, etc (paraphrase).  And then McCain comes out about how he was trying to demean his service.  I thought that whole thing was total BS.  But you're absolutely right.  Even if people do have legitimate questions about McCain's service in this election it seems to be off limits, whereas for Kerry, no one had any qualms about demeaning his service.", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2008-07-17_23:30:35", "killed": false, "user_key": "ef781b639c890767ebd1ce99011c3afa", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 928542, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "935679": {"up_voted": false, "ip": "", "has_replies": false, "message": "thank  you for the correction", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_15:10:41", "killed": false, "user_key": "bison1", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": 935558, "depth": 3, "points": 0, "author_is_creator": false, "is_realtime": false}, "928161": {"up_voted": false, "ip": "", "has_replies": false, "message": "@Nellcote,<br><br>Exactly.  And, to this day, some think Hillary won New Hampshire because of that \"joke.\"", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-17_21:37:57", "killed": false, "user_key": "B_Serious", "has_been_anonymized": false, "edited": false, "author_is_moderator": true, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 928096, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "932004": {"up_voted": false, "ip": "", "has_replies": true, "message": "Should Obama tell more jokes or be a joker?<br><br>Many White Americas have much to learn about Black Americans,  their culture, and sense of self.  I thought the commercial of the car salesman parodying Obama was funny. Obama was being mock. So in answer to Maureen Dowd question, Obama can be mock. Maureen Dowd\u2019s wit works well with main stream White Americas, \u2013 and I have no problems with her Bama spoof \u2013 but she is out of her element when it comes to having an appreciation for black culture and humor. Black people understand how the vines of twoness wrap around American\u2019s landscape.  Black people are often guarded, because we have to be.  Not angry, just mindful. We understand how familiarity can breed disrespect and contempt from those who are only vaguely acquainted with you.  Many Americas do not  know him merely because he has not been on the national political scene for a very long time, they do not know him because many Americans do not really know the nuances and sensibilities of  black behavior.  The closest many every got to seeing it was from watching the televison show \u201cIn Living Color.\u2019", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_09:45:51", "killed": false, "user_key": "bison1", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "935558": {"up_voted": false, "ip": "", "has_replies": true, "message": "I think you mean \"self-deprecating\".  I'm sure Obama has control over his bodily functions.  :)", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_15:00:40", "killed": false, "user_key": "14240024090a37c7947486b97572c09d", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": 935430, "depth": 2, "points": 0, "author_is_creator": false, "is_realtime": false}, "937256": {"up_voted": false, "ip": "", "has_replies": false, "message": "When he did that \"lay off my wife\" line I nearly fell out of my chair, because you knew he was playin' but not really. The smile said yeah, you think I'm joking but I'm not.  So I agree.  People just want to push his buttons and since its hard to figure him out and get him flustered they are literally throwing every attack at him that they can.  <br><br>I hope and pray that they do not go after the weeMichelles.  That would be too much.  I would only march on the rarest of occasions, but a march against attacking those girls would have my name all over it.", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_18:12:58", "killed": false, "user_key": "ef781b639c890767ebd1ce99011c3afa", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": 931971, "depth": 3, "points": 0, "author_is_creator": false, "is_realtime": false}, "932393": {"up_voted": false, "ip": "", "has_replies": false, "message": "Very well said.", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_10:28:52", "killed": false, "user_key": "CraigHickman", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 932004, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "929323": {"up_voted": false, "ip": "", "has_replies": false, "message": "David Gregory is an idiot. He used to be pretty decent. It seems after dancing with Karl Rove he's become just another MSM hack.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_00:14:34", "killed": false, "user_key": "LisaM5432", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "928428": {"up_voted": false, "ip": "", "has_replies": false, "message": "You're on the money.<br><br>As always.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-17_22:04:16", "killed": false, "user_key": "rikyrah", "has_been_anonymized": false, "edited": false, "author_is_moderator": true, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": 928083, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "934701": {"up_voted": false, "ip": "", "has_replies": false, "message": "So he isn't expected to make us laugh...and that makes folks mad that they think he is.<br><br>But he IS expected to tell \"uncomfortable truths\" to the black community? <br><br>I'd rather him crack jokes and be that funny guy, than speak about issues he's got no technical business talking about (black fatherhood has about as much to do with the energy crisis as eating trix does with the space shuttle).", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_13:52:54", "killed": false, "user_key": "blacksmythe", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "935168": {"up_voted": false, "ip": "", "has_replies": false, "message": "I can imagine because \"Muslim\" and \"Arab\" have been the boogeymen (right alongside black people) for the past 30+ years.  If you have the name \"Hussein\" you're automatically deemed to be one of \"dem terr'ists\" even though one of our allies in the Middle East was King HUSSEIN.  Heck, Rachel Ray can't even wear a scarf without it \"meaning something\" (even though Megan McCain wore the same scarf with no backlash.  Cindy McCain probably has one of those scarves tucked away in her closet somewhere).", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_14:33:04", "killed": false, "user_key": "Town", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 935062, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "927413": {"up_voted": false, "ip": "", "has_replies": false, "message": "Standing up and applauding furiously.<br><br>Bravo.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-17_20:06:10", "killed": false, "user_key": "CraigHickman", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 1, "author_is_creator": false, "is_realtime": false}, "927673": {"up_voted": false, "ip": "", "has_replies": false, "message": "JJ,<br><br>I believe #3 is cultural. <br><br>Like RBL, though I have what people consider to be a ' friendly face', and can crack a joke with the best of them,  I'm not one who, goes out of her way to make White people feel comfortable. I don't believe that's my job in life. <br><br>\" Lighten up\" is something I've heard many a time. <br><br>NEVER from Whites who have known me for a long time, and who are in my circle of friends. <br><br>But, yes, I've been told to  'lighten up'. <br><br>I believe RBL sees it through that cultural lens. And, especially being a Black male, who, from the beginning of this country, has always been seen as the most threatening being on the planet. (until Arabs and Muslims came along..but they're late to the game.)", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-17_20:40:30", "killed": false, "user_key": "rikyrah", "has_been_anonymized": false, "edited": false, "author_is_moderator": true, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 927616, "depth": 1, "points": 1, "author_is_creator": false, "is_realtime": false}, "931771": {"up_voted": false, "ip": "", "has_replies": false, "message": "My only issue with Cindy McCain is that the first time I heard her speak was to make a dig at Michelle.  But, I'm still not going to rag on Cindy.  Frankly, she looks shell-shocked.  I wish her well.  It can't be easy being married to John McCain, or going through this process.<br><br>I reserve the right to change my mind about going after her if she decides to go after Michelle again.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_09:18:38", "killed": false, "user_key": "969b43a35cf1f286ea33c8cf69a64ed6", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "934974": {"up_voted": false, "ip": "", "has_replies": false, "message": "Big Man:  Co-signing - BIG TIME!!  That NYKer cover created the biggest, supportive response from Mr. Obama's \"peeps\" than any other.  WE have his back!!!!  ABSOLUTELY!!!!!", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_14:16:17", "killed": false, "user_key": "GreenLadyHere", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 932422, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "928575": {"up_voted": false, "ip": "", "has_replies": false, "message": "\"The supposedly more beer-worthy candidate has won every time. Humor contributes to that beer-factor that the media plays up so much.\"<br><br><br>Yeah, and look where that got us.", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2008-07-17_22:29:21", "killed": false, "user_key": "Town", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": 927616, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "929092": {"up_voted": false, "ip": "", "has_replies": false, "message": "Hope:  Co-signing!", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-17_23:36:04", "killed": false, "user_key": "GreenLadyHere", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "932422": {"up_voted": false, "ip": "", "has_replies": true, "message": "I appreciate all the comments on my point and I appreciate the link from JJP.<br><br><br>I\"m glad folks pointed out all the times Obama did make jokes. I should have mentioned that in my blog. Like so many of y'all have said, Obama can be funny but it's not that Martin Lawrence, Eddie Murphy in Norbit funny. He's not going to be grinning and skinning. He's a Harvard-educated lawyer running for president. He's not going to be making fart jokes in public.<br><br>A lot of you like point 3 in my blog but I really thought point 2 was the most important. Comedians are whining that Obama and his cult members won't let them joke about him, but the reality is that Obama supporters will not let them make racist, demeaning jokes about him. We will not allow him to be dehumanized for profit. It's happened too many times to far too many black folks in power and we are sick of it. <br><br>I'm glad we're taking that stand.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_10:31:57", "killed": false, "user_key": "708ead3dff706cb871012a39aff847ed", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "928711": {"up_voted": false, "ip": "", "has_replies": false, "message": "Thank you for this post. Glad I'm not the only one seeing it. I tried to watch that video but I couldn't bring myself to watch that mess. But this is what always happens. Someone does or says something racist or wrong about him and they run out of angles on the incident and turn it into being Obama's fault. One minute it's outrage against The New Yorker and the next it's oh well he's to blame for the New Yorkers horrible cover. If only HE had a sense of humor about it it would all be better.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-17_22:47:46", "killed": false, "user_key": "245857794a8d4da90a73fbb64352b916", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "936392": {"up_voted": false, "ip": "", "has_replies": false, "message": "Yeah, Rikyrah, I think you and folks on this thread have nailed it down. I have read that folks in the Secret Service who guard Obama, for example, like working for him. I don't think this sort of relationship would be possible if he did not have a sense of humor. I read Dowd's piece with a growing sense of dismay. What's next? Tap dancing on the roof of a car?", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_16:20:40", "killed": false, "user_key": "PTCruiser", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "932425": {"up_voted": false, "ip": "", "has_replies": false, "message": "It will be disguised as \"concern\" for the girls.  Or they will have some reports about black girls/children and somehow tie the Obama girls into it.  And they'll get a person of color to do the dirty -- they want their hands clean.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_10:32:37", "killed": false, "user_key": "Town", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": 932353, "depth": 4, "points": 0, "author_is_creator": false, "is_realtime": false}, "932682": {"up_voted": false, "ip": "", "has_replies": true, "message": "I don't see anyone asking John McCain why can't HE be more entertaining.  Because Lord knows the jokes he's got ain't funny.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_10:54:54", "killed": false, "user_key": "Town", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 1, "is_first_child": true, "email": "", "parent_post_id": 932583, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "934989": {"up_voted": false, "ip": "", "has_replies": false, "message": "town:  tru dat!!!!", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_14:17:26", "killed": false, "user_key": "GreenLadyHere", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": 932682, "depth": 2, "points": 0, "author_is_creator": false, "is_realtime": false}, "928083": {"up_voted": false, "ip": "", "has_replies": true, "message": "Obama can let stuff slide AFTER he wins this election.  Until then, I'm sticking to my new theme for the campaign . . . \"This ain't the time to be cute.\"<br><br>Just focus on winning.  Save the style-points for some other time.<br><br>I don't want to wait for people to \"get it\" when we could just as easily be direct and unequivocal in our message.  Be assertive.  Don't rest on satire to get your point across. . . just make your point. <br><br>So the New Yorker wanted to convey the fact that Obama's not a Muslim?  Well how about this . . . put his face on the cover with the words, \"NOT A MUSLIM\" in big bold red letters across his forehead.  Then have an article dispelling the rumor and making the point that the word \"Muslim\" shouldn't be a perjorative.  <br><br>See, Rush Limbaugh can be \"cute.\"  He can afford to be \"cute\" and \"clever.\"  After all, he's won the past two elections.  We, on the other hand, ain't won jack in a long time.  Stay focused.<br><br>McCain can joke about Ape Rape and get a pat on the back.  But let Obama brush his shoulders off and you've got the MSM asking whether that means he's a sexist.  This brotha can't fart without having some pundit ascribe an ulterior motive.  <br><br>Trust, the media is NOT Obama's friend.  Every one of those journalists would sell their souls if it meant they'd get the exclusive scoop to tear Obama down.  No matter how much they want to see him crack a joke, you'd best believe they've prepared several ways to twist his words for the next manufactured \"nontroversy.\"<br><br>No thank you.  People want to joke?  Fine, talk about his big ears; mock his speech patterns; joke about his skinny frame.  But Obama has no obligation to \"let it slide\" when it comes to matters of race, religion and \"terrorist fist-jabs.\"<br><br>They can call Obama uptight all they want, but there's a reason why people don't \"go there\" with McCain's military service . . . he won't let them.  In fact, his camp makes it clear that you better think twice before you even think about challenging his military record (joking or not).  He's got that game on lock, so much that you can't mention the word \"McCain\" without first prefacing that with \"war hero\" or \"he deserves our honor and respect.\"  That's a walking campaign endorsement.<br><br>No.  There are many ways to show Obama's lighter side.  Take Rachel Maddows advice and go dance with Ellen again; Make a stop on SNL; have a heart-to-heart with Oprah.  <br><br>But draw that line in the sand.  It's the small things that get you in the end.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-17_21:29:05", "killed": false, "user_key": "B_Serious", "has_been_anonymized": false, "edited": false, "author_is_moderator": true, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 4, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "927828": {"up_voted": false, "ip": "", "has_replies": false, "message": "<i>Black people are not here to entertain white people. We are not here to make them laugh, we are not here to make them cry, we are not here to make them angry. We are human beings living our lives just like them. We are under no obligation to make them \u201csmile.\u201d<br><br>Barack Obama is running to be the most powerful politician in America during one of the most unsettled times in this country\u2019s history. And white folks are wondering if he is going to lose because he doesn\u2019t make them smile?</i><br><br>Yes. From this perspective white people are the only real humans and everyone else is just there as objects in relation to that --\"You don't actually exist except as you please or displease ME ME ME.\"  <br><br>So. Ugly.<br><br>Anyway, I think this post is just excellent. <br><br>#3 is extremely accurate, in my view.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-17_20:59:45", "killed": false, "user_key": "4ec3c0272b87ba5c8ce3a9168cf4e78a", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "935512": {"up_voted": false, "ip": "", "has_replies": true, "message": "During the debates  with Hillary, he cracked on Hillary for calling all of his supporters delusional.    He responded with humor, he did not verbally assault Hillary.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_14:57:29", "killed": false, "user_key": "bison1", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": 935448, "depth": 3, "points": 0, "author_is_creator": false, "is_realtime": false}, "935641": {"up_voted": false, "ip": "", "has_replies": false, "message": "In the New Hampshire primary when he wittingly said that \u201cHillary was likeable enough,\u201d it was turned in to a misogynistic comment.  What the dry witty statement was actually inferring was that it was self evident that quite a few people liked her because she was very hard to defeat.   If she weren\u2019t likable, he would not have had such a  ruff time defeating her.  To him, her likeable was not in question, because he was feeling the love for her  at the polls.  The humor, the satire, the wit was lost.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_15:08:30", "killed": false, "user_key": "bison1", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": 935512, "depth": 4, "points": 0, "author_is_creator": false, "is_realtime": false}, "931419": {"up_voted": false, "ip": "", "has_replies": false, "message": "Preach preacha!!", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_08:39:23", "killed": false, "user_key": "RonnieB", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": 928083, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "929631": {"up_voted": false, "ip": "", "has_replies": false, "message": "White Americas have much to learn about Black Americans.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_01:11:38", "killed": false, "user_key": "bison1", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "928096": {"up_voted": false, "ip": "", "has_replies": true, "message": "I try to watch Obama's speeches and things as much as possible & find him to be pretty humorous on occasion.  I laughed when he said \" I think you're likeable enough, Hillary\".  Maybe they just don't get his wry sense of humour.  On the other hand they're apparently all over the satire...", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-17_21:29:41", "killed": false, "user_key": "2bcfb68e46ed1c3e91653e7834aa2e5e", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 6, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "928481": {"up_voted": false, "ip": "", "has_replies": false, "message": "B:  As your NAME bespeaks - Mr. Obama must keep that \"professional, SERIOUS distance from people, lest they get too FAMILIAR and straight into YOUR BUI'NESS!!!<br>Secondly, \"they\" have searched high and low for something derogatory that they can have FUN with and EXPLOIT!  Cain't find it!  That's their PROBLEM!!<br>Keep the \"GAME FACE\" on Mr. Obama!  <br>Great article!!!!!", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-17_22:12:59", "killed": false, "user_key": "GreenLadyHere", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": 928083, "depth": 1, "points": 1, "author_is_creator": false, "is_realtime": false}, "928542": {"up_voted": false, "ip": "", "has_replies": true, "message": "First things first<br>#3 is about the most ACCURATE comment Ive read  on a blog about the currrent topic ever. As a proffesional, and someone who's lead people in the military at a time, I was labled an angry black man b/c I actually had the nerve to be on time, proper, fair in my discipline of subordinates, and most importantly , I didnt kiss any ass. Reguardless the color (but to be fair, a large part of the leadership in the military is white)<br><br>With that said, Baracks been hilarious to me.  I dont know where to begin, Brushing his shoulders off, Calling Hillary Annie Oakley, and calling Senator Gramm Dr. Phil. Got me giggling. But, his humor as much as it makes us laugh, comes off as him being \"uppity\" which i think is code for them saying who does this nigger think he is.<br><br> As to B's point about John McCain's military service. I couldnt agree more. Of course IT SHOULD  BE up for grabs, but rethugs have painted anyone who makes a comment bad about military servicemen as unpatriotic and unworthy of there security. <br>I COULDNT CALL BS MORE TO THIS POINT. If you all knew how much of your Tax dollar was really wasted on the military, I can assure you, it wouldnt be just John McCain who'd be put under the radar, but anyone who's ever ran using it as a backbone of there campaign would be heavinly scrutinized. no matter what party they claim.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-17_22:23:43", "killed": false, "user_key": "smoothie", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "928995": {"up_voted": false, "ip": "", "has_replies": true, "message": "Yeah, I was with you on that one.  I was really confused when they tried to say it was a put down.  I just think he has a wry sense of humor and people want a fake controversy.  So as B-Serious noted above, while people claim they want him to be funny, lighten up, and make jokes, but the minute they don't \"get\" the joke because its over their head, then it will create another controversy.  <br><br>The man CAN'T win.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-17_23:22:01", "killed": false, "user_key": "ef781b639c890767ebd1ce99011c3afa", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 4, "is_first_child": false, "email": "", "parent_post_id": 928096, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "936421": {"up_voted": false, "ip": "", "has_replies": false, "message": "bison1 -<br><br>You did mean \"self-deprecating humor\" didn't you? (:~) Self-defecating humor would have caused a real mess.  (:~)", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_16:23:55", "killed": false, "user_key": "PTCruiser", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": 935430, "depth": 2, "points": 0, "author_is_creator": false, "is_realtime": false}, "932583": {"up_voted": false, "ip": "", "has_replies": true, "message": "As I recall, Obama made appeared on SNL - kinda stiff, but it looked like he was having fun.  He did an intro to Monday Night Football where he seemed to enjoy himself.  During the primaries, he joked about how he took the question, \"What is your biggest weakness?\"  way too seriously. His answer - he needs to be better organized.  Clinton and Edwards answered they care too much.  And when showing up late to a black organization rally, he cracked one about being on CPT.<br><br>Obama is funny - the media is just not listening.<br><br>And keep in mind, he was a law lecturer for a good chunk of his career - not exactly a profession known for hilarity.  I don't see anyone asking Alan Dershowitz why he can't be more like Jerry Seinfeld.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_10:46:43", "killed": false, "user_key": "14240024090a37c7947486b97572c09d", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 9, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "928234": {"up_voted": false, "ip": "", "has_replies": false, "message": "Say it again.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-17_21:44:30", "killed": false, "user_key": "CraigHickman", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 928083, "depth": 1, "points": 1, "author_is_creator": false, "is_realtime": false}, "927852": {"up_voted": false, "ip": "", "has_replies": false, "message": "Well, with anything that can be viewed from many perspectives and cultural lenses, there's probably a bit of truth to each conclusion. I'd just be hesitant to ascribe all, or even most, of the \"humorless\" criticism to racial reasons consider how important this aspect of general election dynamics has been in the past.<br><br>I definitely have noticed pressure on many other black celebrities, to \"lighten up\", and to even plain shut up about social or political issues, but I haven't really noticed that pressure as much towards black politicians. Most nationally known black political figures have had a pretty serious tone about them, and I haven't caught the lighten up vibe much. Maybe I haven't been paying enough attention.<br><br>I'll agree that no matter what the reason, it's a silly issue (sorry :), along with the elitism claims (I thought elite was good?). Luckily, I don't think it'll have any real effect this time, and for once we'll be electing the more serious candidate.<br><br>Anyway, thanks for this blog. It's in my top 3 for politics this season.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-17_21:01:54", "killed": false, "user_key": "1cbe9f1339df47d6e87bc3b8743188a6", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "927728": {"up_voted": false, "ip": "", "has_replies": false, "message": "Speaking of jokes.<br><br>Keith just reported about the 1986 joke McCain told where the punch line was a woman enjoyed being brutally raped by an ape.<br><br>Yes.<br><br>Go right ahead and make the jump. <br><br>Anyway.<br><br>Keith and Rachel talked about how if it was discovered that Barack had told this joke we would be on wall-to-wall special coverage as I type this. But other than Countdown or the blogs, this corporate media is silent.<br><br>Meantime Jesse Jackson uttering the N-word, which, by the way, Fox refuses to let us hear him utter, gets, to my dismay, lots of attention.<br><br>To quote Susan Rice, <i>surreal</i> indeed.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-17_20:49:16", "killed": false, "user_key": "CraigHickman", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 1, "author_is_creator": false, "is_realtime": false}, "932343": {"up_voted": false, "ip": "", "has_replies": false, "message": "This whole sense of humor thing is BS.  It's the MSM taking the pose of the school yard bully.  The bully does something hurtful and when called on it, instead of being respectful and apologizing, the bully tries to avoid responsibility by blaming his target for not having a good sense of humor.  <br><br>I'd like to see some of the egocentric national reporters and anchors handle having themselves and their spouse mocked on a major magazine cover surrounded by hateful images and see them laugh it off.  Let's start with Maureen Dowd, and surround her with Irish Catholic hateful imagery and mock her miserable love life, and see how much she laughs.<br><br>Like others here, I think Obama's got a great sense of humor, a priceless laugh, and a very calm, balanced temperament that will make him a great leader in a time of crisis.<br><br>Off-topic, but you may find this newsworthy... Obama hate activist and Georgetown professor Heidi Li Feldman, head of the anti-Obama 527 \"Denver Group\", is running ads to sabotage Obama's candidacy.  Ran one recently in Chicago Tribune and one again today in Congressional Quarterly trying to force an open roll call for Hillary at convention as only way to \"insure legitimate selection\" of nominee.  She doesn't seem to realize primary race is over and Hillary conceded, and Denver Group's efforts are only giving MSM and McCain anti-Obama talking points.  Her contact info and more here: <a href=\"http://roadkillrefugee.wordpress.com/2008/07/18/daily-tidbits-july-18-2008/\" rel=\"nofollow\">http://roadkillrefugee.wordpress.com/2008/07/18...</a>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_10:25:26", "killed": false, "user_key": "38c49e2ee2ce46bf31a9db5a2bbcd327", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "930937": {"up_voted": false, "ip": "", "has_replies": true, "message": "Barack Obama is funny in a way I've never seen comedians be funny. <br><br>The first inkling came from <a href=\"http://youtube.com/watch?v=_uCn6rFFJ2s\" rel=\"nofollow\">a one liner at a debate</a> just before the Iowa primaries. <br><br>(It also shut Hillary, who was laying it on a bit thick, up). <br><br>Then the next example came <a href=\"http://www.youtube.com/watch?v=wVlZZdxZ9AU\" rel=\"nofollow\">during a rally at Nevada. </a><br><br>Of course there was the dirt off your shoulders, Annie Oakley, Dr. Phil and his response after hearing Hillary claim his message was tantamount to wishing a choir of angels will sing and unicorns will make the world better (\"Hey, that sounds good to me.\"). <br><br>So the fact is, the guy isn't humorless. He's funny and unlike Hillary or McCain, he has great timing and delivery. <br><br>He's just not a buffoonish character. He's good looking but he doesn't appear overly high maintenance. (No $400 haircuts for him). Extreme displays of emotion are unheard of, unless it's during a passionate barnstormer of a speech. He's intelligent but he's doesn't come off as too intellectual. The change message he talks about has been painted by his opponents as overly idealistic, but there is this undercurrent that Obama is not some pie in the sky dreamer. His campaign has been drama free from the start. <br><br>So I have watched the late night comedy shows and there is no easy material for him. They usually fall back on his race or his African heritage. \"I have a package, and it needs some stimulus,\" anyone? <br><br>Comedians can try to forcing a buffoonish personality on Obama, or falling back on his race, but it won't work. It doesn't come off as something unique to Obama so it will never really be all that funny. <br> <br>The few successful attempts at comedy I've seen have been when Obama plays the straight man to someone else's fool.<br><br>That's why they're hoping he picks a vice president that's joke fodder. That what the late night shows are left with.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_07:49:01", "killed": false, "user_key": "a1899513a93684ede4e06b6dbe9d702a", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 2, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "932223": {"up_voted": false, "ip": "", "has_replies": false, "message": "Obama is the Matrix. Let the comedians remain in a quandary over what and how to say.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_10:11:35", "killed": false, "user_key": "78cf91370f7140ca67a173bf80735c6c", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "935036": {"up_voted": false, "ip": "", "has_replies": false, "message": "lene:  Great post!!!  I love his subtle humor!", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_14:20:41", "killed": false, "user_key": "GreenLadyHere", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": 930937, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "931966": {"up_voted": false, "ip": "", "has_replies": false, "message": "OMG - open thread link worthy!!!<br><a href=\"http://ny.metro.us/metro/local/article/Obama_slave_shirt_sparks_lawsuit_threat/13001.html\" rel=\"nofollow\">Obama is my slave T-shirt</a>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-18_09:42:20", "killed": false, "user_key": "b8b9328e61e0094ae18e247c922f9dc7", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "929151": {"up_voted": false, "ip": "", "has_replies": false, "message": "Co-sign, 100%.  I love Jon Stewart.  I think that he is one of the best things that has happened to political commentary, but I was pissed off about some of his comments with regards to the New Yorker cover the other day.  Specifically when he tried to call out Obama by saying, \"the only people who get angry at cartoons are Muslim extremists and you are not a Muslim extremist.\"  when I heard that, I literally said WTF?   So now only Muslim extremist are the ones who object to depictions of themselves or their loved ones that they deem offensive?  Really?  Is he on that?  Because the last time I checked, people asked for Obama's opinion, and he exercised his First Amendment right by calling that \"satire\" tasteless and offensive.  But silly me, what do I know.  It just seems like that people in the press want Obama to shut up, eat s*** with a knife and fork , and smile about it, and when he doesn't they criticize him for it.  <br><br>Chris Matthews is another one.  He has this weird man crush on Obama, but during the primaries he was saying stuff like, yeah Obama is popular with African Americans, but how is he going to appeal to regular folks.  Yup. There is Black people and there is regular folks.   Now, I'm sure that he didn't mean it to be offensive, but it just goes to show you that subconsciously,  some \"progressives\" or \"liberals\" still view Black people as this other that needs to be figured out, or categorized.  <br><br>\"", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2008-07-17_23:44:31", "killed": false, "user_key": "ef781b639c890767ebd1ce99011c3afa", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 929026, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}}, "integration": {"receiver_url": "", "theme": 4, "reply_position": true, "disqus_logo": false}, "timer": {"timer_url": "http://localhost:8005", "thread_id": "1985829", "user_id": "anonymous", "forum_id": "21630", "hash": -7584963372201288287}, "thread": {"days_alive": 0, "slug": "memo_to_press_barack_obama_is_not_running_for_entertainer_in_chief_99", "paginate": false, "num_pages": 1, "num_posts": 56, "per_page": 0, "total_posts": 0, "realtime_paused": true, "id": 1985829, "queued": false}, "reactions_limit": 10, "context": {"show_reply": true, "use_fb_connect": true, "forum_facebook_key": "bd6a8bc56f8eb204984f34b6fefe228d", "use_yahoo": false, "subscribed": false, "use_twitter_signin": true, "use_openid": false, "realtime_speed": 5000}, "reactions_start": 0, "settings": {"debug": false, "disqus_url": "http://disqus.com", "media_url": "http://media.disqus.com"}, "media_url": "http://media.disqus.com"};
	/* */ this.jsonData.cookie_messages = {"user_created": null, "post_has_profile": null, "post_twitter": null, "post_not_approved": null}; this.jsonData.session = {"url": null, "name": null, "email": null}; /* */

	
	this.curPageId = 'dsq-comments';

	this.frames = {};
};

var disqus_popup_reference = null;

if(typeof DsqLocal == 'undefined') {
	DsqLocal = {};
}



/**
 * Dsq.Strings: UI strings
 */
Dsq.Strings = new function() {
	this.ADD_NEW_COMMENT = "Add New Comment";
	this.LOG_INTO_DISQUS = "Log into DISQUS";
	this.USE_MEDIA = "Use Media";
	this.LOGOUT = "Logout";
	this.SHARING_OPTIONS = "Sharing options";
	this.SHARE_ON = "Share on";
	this.TWEET_THIS_COMMENT = "Tweet this comment";
	this.SHARE_ON_NEWSFEED = "Share on news feed";
	this.SEND_UPDATE_TO_YAHOO = "Send update to Yahoo!";
	this.REBLOG_ON = "Reblog on";
	this.CONFIGURE_OPTIONS = "Configure options";
	this.POST_AS = "Post as";
	this.SORT_BY = "Sort by";
	this.SUBSCRIBE_BY_EMAIL = "Subscribe by email";
	this.SUBSCRIBE_BY_RSS = "Subscribe by RSS";
	this.POPULAR_NOW = "Popular now";
	this.BEST_RATING = "Best Rating";
	this.NEWEST_FIRST = "Newest first";
	this.OLDEST_FIRST = "Oldest first";
	this.HIGHLIGHTED = "Highlighted";
	this.UNSUBSCRIBE = "Unsubscribe";
	this.REQUIRED = "Required";
	this.OPTIONAL = "Optional";
	this.YOU_ARE_COMMENTING_AS_A = "You are commenting as a";
	this.LOGIN_BELOW = "Login below";
	this.PLEASE_LOGIN_BELOW_TO_COMMENT = "Please login below to comment.";
	this.SUBSCRIBE_TO_ALL_COMMENTS_BY_EMAIL = "Subscribe to all comments by email";
	this.DO_NOT_SUBSCRIBE_TO_COMMENTS = "Do not subscribe to comments";
	this.REALTIME_UPDATING_IS = "Real-time updating is";
	this.ENABLED = "enabled";
	this.PAUSED = "paused";
	this.PAUSE = "Pause";
	this.RESUME = "Resume";
	this.SHOW = "Show";
	this.JUST_NOW = "Just now";
	this.REPLY = "Reply";
	this.EDIT = "Edit";
	this.FLAG = "Flag";
	this.MODERATE = "Moderate";
	this.CANCEL = "Cancel";
	this.REPLYING_TO = "Replying to";
	this.REPORT_MISSING_REACTIONS = "Report missing reactions";
	this.POST_A_COMMENT = "Post a comment";
	this.FLAG_INAPPROPRIATE_COMMENT = "Flag inappropriate comment";
	this.FLAGGED = "Flagged";
	this.NO = "No";
	this.YES = "Yes";
	this.NEVER_MIND = "Never mind";
	this.ARE_YOU_SURE_YOU_WOULD_LIKE_TO_REPORT_THIS_COMMENT_TO_A_MODERATOR = "Are you sure you would like to report this comment to a moderator";
	this.THIS_WILL_FLAG_COMMENTS_FOR_MODERATORS_TO_TAKE_ACTION = "This will flag comments for moderators to take action";
	this.TO_RATE_PLEASE_LOG_IN = "To rate, please log in";
	this.JUST_A_MOMENT = "Just a moment...";
	this.GUEST = "Guest";
	this.NAME = "Name";
	this.EMAIL = "Email";
  this.WEBSITE = "Website";
  this.SETTINGS = "Settings";
  this.MODERATOR_OPTIONS = "Moderator options: ";
};
// Dsq.Strings

/**
 * Dsq.FmtStrings: functions that return interpolated UI strings
 */
Dsq.FmtStrings = new function() {
	// Seems we have to use named interpolation for Django to translate. Investigate more.
	this.LOGGED_IN_AS = function(username) {
		return Dsq.Utils.interpolate('Logged in as %(username)s', {username:username});
	};

	this.LOGOUT_FROM = function(disqus) {
		return Dsq.Utils.interpolate('Logout from %(disqus)s', {disqus:disqus});
	};

	this.SHOWING_COMMENTS_FULL = function(total, num) {
		if (num === 1) {
			return Dsq.Utils.interpolate("Showing <span id='dsq-num-posts'>%(num)s</span> of <span id='dsq-total-posts'>%(total)s</span> comment", {num:num, total:total});
		} else {
			return Dsq.Utils.interpolate("Showing <span id='dsq-num-posts'>%(num)s</span> of <span id='dsq-total-posts'>%(total)s</span> comments", {num:num, total:total});
		}
	};

	this.SHOWING_COMMENTS_WITHOUT_PAGINATION = function(num) {
		if (num === 1) {
			return Dsq.Utils.interpolate("Showing <span id='dsq-num-posts'>%(num)s</span> comment", {num:num});
		} else {
			return Dsq.Utils.interpolate("Showing <span id='dsq-num-posts'>%(num)s</span> comments", {num:num});
		}
	};

	this.NUMBER_OF_COMMENTS = function(num) {
		return Dsq.Utils.interpolate(
			(num == 1
				? '%(num)s comment'
				: '%(num)s comments'
			), {num:num});
	};

	this.NUMBER_OF_LIKES = function(num) {
		return Dsq.Utils.interpolate(
			(num == 1
				? '%(num)s like'
				: '%(num)s likes'
			), {num:num});
	};

	this.NUMBER_OF_POINTS = function(num) {
		return Dsq.Utils.interpolate(
			(num == 1
				? '%(num)s point'
				: '%(num)s points'
			), {num:num});
	};
};
// Dsq.FmtStrings





Dsq.CSRF_TOKEN = '3a1994e3330279e78957da82fb64f754';
Dsq.COMMENTS_RE = /(<li.*?id="?dsq-comment-(\d+)"?.*?>)((?:.|\s)*?)(<\/li>)/gim;
Dsq.POST_RE = /(<div.*?id="?dsq-comment-header-(\d+)"?.*?>)((?:.|\s)*?)(<\/div>)\s*(<div.*?class="?dsq-comment-body"?.*?>)((?:.|\s)*)(<\/div>)/gim;
Dsq.POST_BODY_RE = /\s*(<div.*?id="?dsq-comment-message-(\d+)"?.*?>)((?:.|\s)*)(<\/div>)/gim;
// HACK: Safari ends with "-->" while other browsers end with "--&gt;" as expected.
Dsq.MEDIA_POST_RE = /&lt;!--\[(.*?)\]--(?:>|&gt;)/gim;



var FragmentPacket = function(reader, writer, writer_url, is_child, receiveCallback) {
	var that = this;
	this.reader = reader;
	this.writer = writer;
	this.writer_url = writer_url;

	this.is_child = is_child || false;
	this.receiveCallback = receiveCallback;

	this._lastHash = null;

	this._accumMsg = '';

	this._lastSeqno = 0;

	this.MAX_DATA_LEN	= 1024;

	this.WAIT_TIME		= 10;

	this.READY		= 0x1;
	this.WRITING	= 0x2;
	this.FIN		= 0x4;
	this.ACK		= 0x8;

};

FragmentPacket.prototype.createListener = function() {
	var that = this;
	var listener = function() {
		that.recv();
	};
	return window.setInterval(listener, 10);
};

FragmentPacket.prototype.log = function(msg) {



};

FragmentPacket.prototype.recv = function() {
	var hash;
	if (/MSIE/.test(navigator.userAgent)) {

		hash = this.reader.name;
	} else {

		var hashIndex = this.reader.location.href.indexOf('#');
		if (hashIndex == -1) {
			return;
		}
		hash = this.reader.location.href.substring(hashIndex+1);
	}
	var flags = parseInt(hash.substring(0, 4), 10);
	var seqno = parseInt(hash.substring(4, 24), 10);
	var data  = hash.substring(24);

	if (this._lastHash !== hash) {
		this._lastHash = hash;
		this.log('recv: ' + hash);

		this.log(' flags: ' + flags);
		this.log(' seqno: ' + seqno + ' len: ' + hash.substring(4, 24).length + ' (' + hash.substring(4, 24) + ')');
		this.log(' data: ' + data + ' len: ' + data.length);

		this._lastSeqno = seqno;

		if (flags & this.WRITING) {
			this._accumMsg += data;
			this.sendFlag(this.ACK, seqno);
			if (flags & this.FIN) {
				this.log('recv finished: ' + decodeURIComponent(this._accumMsg));
				this.receiveCallback(decodeURIComponent(this._accumMsg));

				this._accumMsg = '';

				this.sendFlag(this.READY | this.ACK, this._lastSeqno);
			}
		}
	}

	return {
		flags: flags,
		seqno: seqno,
		data: data
	};
};

FragmentPacket.prototype.sendRawPacket = function(packet) {
	if (/MSIE/.test(navigator.userAgent)) {
		this.writer.name = packet;
	} else {

		this.writer.location.href = this.writer_url + '#' + packet;
	}

};

FragmentPacket.prototype.sendFlag = function(flag, seqno) {
	this.sendRawPacket(this._zerofill(flag, 4) + this._zerofill(seqno, 20));
};

FragmentPacket.prototype.send = function(msg) {
	this._send(0, encodeURIComponent(msg));
};

FragmentPacket.prototype._send = function(packetNum, msg) {
	var that = this;
	var recvBuf = this.recv();

	if (packetNum === 0) {

		if (!(recvBuf.flags & this.READY)) {
			this.log('client is not ready, waiting...');
			window.setTimeout(function() { that._send(packetNum, msg); }, this.WAIT_TIME);
			return;
		}
	} else {

		if (!( (recvBuf.flags & this.ACK) && (recvBuf.seqno === this._lastSeqno) )) {
			this.log('waiting for ack from client...');
			window.setTimeout(function() { that._send(packetNum, msg); }, this.WAIT_TIME);
			return;
		} else {
			this.log('received ack: ' + this._lastSeqno + ' ' + recvBuf.seqno);
		}
	}

	var flags = this.WRITING;
	var num_packets = Math.ceil(msg.length / this.MAX_DATA_LEN);
	this.log('num_packets: ' + num_packets);

	if (num_packets === packetNum) {

		this.log('message successfully sent!');
		this.sendFlag(this.READY | this.ACK, this._lastSeqno);
		return true;
	}

	this._lastSeqno++;

	if (packetNum == num_packets-1) {
		flags |= this.FIN;
	}

	var data = msg.substring(packetNum * this.MAX_DATA_LEN, (packetNum+1) * this.MAX_DATA_LEN);
	var packet = this._zerofill(flags, 4) + this._zerofill(this._lastSeqno, 20) + data;

	this.log('sending raw packet: ' + packet);
	this.sendRawPacket(packet);

	return this._send(packetNum + 1, msg);
};

FragmentPacket.prototype._zerofill = function(num, width) {
	var retval = num.toString();
	var retval_len = retval.length;
	for (var i = 0; i < width - retval_len; i++) {
		retval = '0' + retval;
	}
	return retval;
};

var PostMessagePacket = function(receiver, receiveCallback, id, receiverId) {
	var that = this;
	this.receiver = receiver;
	this.receiveCallback = receiveCallback;
	this.id = id;


	this.receiverId = receiverId;
};

PostMessagePacket.prototype.createListener = function() {
	var that = this;

	var listener = function(e) {

		if (!that.id) {
			that.id = e.data;
			return;
		}


		var id = e.data.split(';')[0];
		if (id !== that.id) {
			return;
		}
		var data = e.data.substring(e.data.indexOf(';') + 1);

		that.receiveCallback(data);
	};

	if (typeof window.attachEvent == 'function') {
		window.attachEvent('onmessage', listener);
	} else if (typeof window.addEventListener == 'function') {
		window.addEventListener('message', listener, false);
	} else {
		throw new Error('No method found to create event listener for PostMessagePacket.');
	}
};

PostMessagePacket.prototype.send = function(msg) {



	var needs_reget = false;
	try {
		if (typeof this.receiver.id == 'undefined' || typeof this.receiver.postMessage == 'undefined') {
			needs_reget = true;
		}
	} catch(e) {


	}
	if (needs_reget && typeof this.receiverId != 'undefined') {
		this.receiver = document.getElementById(this.receiverId).contentWindow;
	}

	var packet;
	if (!msg) {

		packet = this.id;
	} else {
		packet = this.id + ';' + msg;
	}
	this.receiver.postMessage(packet, '*');
};

PostMessagePacket._last_unique_id = null;
PostMessagePacket._get_unique_id = function() {
	var id = (new Date()).getTime();
	if (id == PostMessagePacket._last_unique_id) {
		id++;
	}
	PostMessagePacket._last_unique_id = id;
	return id.toString();
};

var JsonRpc = function() {

	this.ids = {};

	this.objectToJSON = function(obj) {
		var json = '';
		var results = [];

		if (obj === undefined || obj === null) {
			return 'null';
		}

		switch (obj.constructor) {
			case Object:
				for (var property in obj) {
					if (obj.hasOwnProperty(property)) {
						results.push(this.objectToJSON(property) + ': ' + this.objectToJSON(obj[property]));
					}
				}
				json = '{' + results.join(', ') + '}';
				break;
			case Array:
				for (var i = 0; i < obj.length; i++) {
					results.push(this.objectToJSON(obj[i]));
				}
				json = '[' + results.join(', ') + ']';
				break;
			case Number:
			case Boolean:
				json = obj.toString();
				break;
			case String:

				var specialChars = {'\b': '\\b', '\t': '\\t', '\n': '\\n', '\f': '\\f', '\r': '\\r', '\\': '\\\\'};

				json = obj.replace(/[\x00-\x1f\\]/g, function(match) {
					var ch = specialChars[match];
					return ch ? ch : '\\u00' + match.charCodeAt().toPaddedString(2, 16);
				});

				json = '"' + json.replace(/"/g, '\\"') + '"';
				break;
			default:

				json = 'null';
				break;
		}

		return json;
	};

	this.createHandler = function(send_func, registered_funcs) {
		var that = this;
		var handler = function(message) {

			try {
				var rpc = eval('(' + message + ')');
			} catch(e) {
				alert('bad JSON: ' + message);
				return;
			}
			if (rpc.method) {

				if (!registered_funcs[rpc.method]) {
					return;
				}

				var retval = registered_funcs[rpc.method].apply(null, rpc.params);
				if (rpc.id) {
					var response = {
						result: retval,
						error: null,	// TODO
						id: rpc.id
					};
					send_func(that.objectToJSON(response));
				}
			} else if(rpc.result) {

				if (!that.ids[rpc.id]) {
					return;
				}

				that.ids[rpc.id](rpc.result);
				delete that.ids[rpc.id];
			}
		};
		return handler;
	};

	this.execute = function(send_func, method, params, response_callback) {
		response_callback = response_callback || null;
		var id = (response_callback) ? (new Date()).getTime() : null;

		var request = {
			method: method,
			params: params,
			id: id
		};

		send_func(this.objectToJSON(request));

		if (id) {
			this.ids[id] = response_callback;
		}
	};
};
JsonRpc = new JsonRpc();

var ParentMessenger = function(childUrl, receiverUrl, container, receiveCallback) {


	if (navigator.userAgent.indexOf('Safari') >= 0 && parseInt(navigator.userAgent.substring(navigator.userAgent.indexOf('Version/') + 8), 10) == 3) {
		throw new Error("unsupported.");
	} else if (window.opera) {
		throw new Error("unsupported.");
	}



	if (!receiverUrl &&
		navigator.userAgent.indexOf('Gecko') >= 0 &&
		parseFloat(navigator.userAgent.slice(navigator.userAgent.indexOf('rv:') + 3, navigator.userAgent.indexOf('rv:') + 6)) < 1.9) {
		throw new Error("unsupported.");
	}


	if (/msie/i.test(navigator.userAgent) && !/opera/i.test(navigator.userAgent)) {


		if (document.domain == window.location.hostname) {
			receiverUrl = '';
		}
	}

	var that = this;
	this.childUrl = childUrl;
	this.receiverUrl = receiverUrl;
	this.container = container || document.body;

	this.packetHandler = null;


	this._ready = false;
	this._error = false;


	var _createReceiverForFragmentPacket = function() {

		that.receiver = document.createElement('iframe');
		that.receiver.src = receiverUrl;
		that.receiver.id = 'receiver_' + (new Date()).getTime();
		that.receiver.name = that.receiver.id;

		that.receiver.frameBorder = '0';
		that.receiver.frameSpacing = '0';
		that.receiver.style.borderStyle = 'none';

		var receiver_onload = function() {
			var receiver = document.getElementById(that.receiver.id).contentWindow;

			try {
				receiver.document.body.innerHTML = '';
			} catch(e) {

				that._error = true;
			}
			receiver.document.body.style.padding = '0px';
			receiver.document.body.style.margin = '0px';

			var child = receiver.document.createElement('iframe');
			child.id = 'child';
			child.name = 'child';
			child.src = that.childUrl;

			child.frameBorder = '0';
			child.frameSpacing = '0';
			child.style.borderStyle = 'none';
			child.style.width = '100%';
			child.style.height = '100%';
			receiver.document.body.appendChild(child);

			that.child = receiver.document.getElementById('child').contentWindow;
			that.receiver = receiver;

			that.packetHandler = new FragmentPacket(that.receiver, that.child, that.childUrl, false, receiveCallback);

			that._listener = that.packetHandler.createListener();

			that.packetHandler.sendFlag(that.packetHandler.READY, 0);

			that._ready = true;
		};

		that.receiver.onreadystatechange = function() {
			if (this.readyState == 'complete') {
				receiver_onload();
			}
		};

		that.receiver.onload = receiver_onload;







		if (Dsq.Utils.ie) {
			if (that.container.clientWidth === 0) {

				var _waitForWidth = function() {
					if (that.container.clientWidth > 0) {
						Dsq.Utils.fixIframesIE(that.container.id);
					} else {
						window.setTimeout(_waitForWidth, 100);
					}
				};
				_waitForWidth();

				that._once = false;
				that.receiver.onresize = function() {
					if (!that._once) {
						Dsq.Utils.fixIframesIE(that.container.id);
					}
					that._once = true;
				};
			}
		}

		that.container.appendChild(that.receiver);
	};


	var _createReceiverForPostMessage = function() {

		var receiver_onload = function() {

			that.packetHandler.send();
			that._ready = true;
		};

		var id = PostMessagePacket._get_unique_id();
		var receiverId = 'child_' + id;


		ParentMessenger['_receiver_onload_' + receiverId] = receiver_onload;

		that.container.innerHTML += '<iframe ' +
			'src="' + childUrl + '" ' +
			'id="' + receiverId + '" ' +
			'name="' + receiverId + '" ' +
			'onload="ParentMessenger._receiver_onload_' + receiverId +'();" ' +
			'></iframe>';

		that.receiver = document.getElementById(receiverId).contentWindow;
		that.packetHandler = new PostMessagePacket(that.receiver, receiveCallback, id, receiverId);
		that._listener = that.packetHandler.createListener();
	};

	if (typeof window.postMessage == 'function') {
		_createReceiverForPostMessage();
	} else {
		_createReceiverForFragmentPacket();
	}

};

ParentMessenger.prototype.sendMessage = function(message) {
	var that = this;
	if (!this._ready) {

		window.setTimeout(function() { that.sendMessage(message); }, 10);
		return;
	}
	this.packetHandler.send(message);
	return true;
};

Dsq.NewFrames = function(url) {
	this.url = url;
};

Dsq.NewFrames.prototype.init = function(onFailure) {
	var that = this;

	try {
		this.messenger = new ParentMessenger(this.url, Dsq.jsonData.integration.receiver_url, this.container, this.receive_callback);
	} catch(e) {
		if (typeof onFailure == 'function') {
			onFailure();
		}
	}

	if (typeof onFailure == 'function') {
		var iId = window.setInterval(function() {
			if (typeof that.messenger == 'undefined') {
				window.clearInterval(iId);
				return;
			}
			if (that.messenger._ready) {
				window.clearInterval(iId);
			} else if (that.messenger._error) {
				window.clearInterval(iId);
				onFailure();
			}
		}, 10);
	}
};

Dsq.NewFrames.prototype._execute = function(method, args, callback) {
	var that = this;
	if (typeof that.messenger == 'undefined') {
		return false;
	}
	JsonRpc.execute(
		function(msg) { that.messenger.sendMessage(msg); },
		method,
		args || [],
		callback);
	return true;
};

Dsq.ReplyFrame = function(container, parent_post_id) {
	var that = this;
	this.container = container;
	this.parent_post_id = parent_post_id;

	var sendFunc = function(msg) {

		Dsq.Debug.log('Dsq.ReplyFrame.sendFunc');
		that.messenger.sendMessage(msg);
	};


	var postComment_onSuccess = function(response) {
		Dsq.jsonData.posts[response.message.id] = response.message.post_meta;
		if (!Dsq.jsonData.users[response.message.post_meta.user_key]) {
			Dsq.jsonData.users[response.message.post_meta.user_key] = response.message.user_meta;
		}


		var reply_position = (typeof(disqus_insert_wrt_sort) == 'undefined' 
			? (Dsq.jsonData.forum.reply_position ? -1 : null) 
			: (Dsq.jsonData.request.sort == 2 ? null : -1));
		
		if (response.message.post_meta.approved) {
			Dsq.Post.insert(response.message.post_meta.parent_post_id || reply_position, response.message.id, response.message.post_meta.message);
		}

		Dsq.Templates.postComment_onSuccess(response, parent_post_id, response.message.id);
	};

	var postComment_onFailure = function(response) {
		Dsq.Popup.popModal(response.message, 'Error');
		Dsq.Templates.postComment_onFailure(response, parent_post_id, response.message.id);
	};

	var editComment_onSuccess = function(response) {
		var post_id = parent_post_id;
		var message = Dsq.$('dsq-comment-message-' + post_id);
		
		message.innerHTML = response.message;
		Dsq.Templates.toggleEdit(post_id);
		Dsq.Templates.setLoadingButton(false);
	};
	
	var editComment_onFailure = function(response) {
		var post_id = parent_post_id;
		
		Dsq.Popup.popModal('Sorry, there was an error editing this comment.', 'Edit Error');
		Dsq.Templates.toggleEdit(post_id);
		Dsq.Templates.setLoadingButton(false);
	};

	var getUserByEmail_onSuccess = function(response) {
		var msg = response.message;
		var fields = Dsq.Templates.getFormFields(parent_post_id);

		if (msg.username) {

			Dsq.Templates.lightboxAuthenticate(parent_post_id, 'login', {
				'username': msg.username,
				'display_name': msg.display_name,
				'avatar_url': msg.avatar_url,
				'verified': msg.verified,
				'email': fields.email.value
			});
		} else {

			Dsq.Templates.lightboxAuthenticate(parent_post_id, 'register');
		}
	};

	var validateAuth_onSuccess = function(response, auth_choice) {
		Dsq.Templates.postComment(parent_post_id, null, true, auth_choice);
	};

	var validateAuth_onFailure = function(response, auth_choice) {
		var pid = parent_post_id ? '-' + parent_post_id : '';
		var msg = response.message;

		if (auth_choice == 'register') {
			var fields = ['email', 'username', 'password'];

			for (var i = 0; i < fields.length; i++) {
				var field = fields[i];
				var errorDiv = Dsq.$('dsq-' + field + '-errors' + pid);

				if (msg[field]) {
					errorDiv.innerHTML = msg[field];
				} else {
					errorDiv.innerHTML = '';
				}
			}
		} else if (auth_choice == 'login') {
			Dsq.$('dsq-lightbox-errors' + pid).innerHTML = '<p>We couldn\'t log you in. Please verify your login.</p>';
		}
		
		Dsq.Templates.setLoadingButton(false);
	};

	this.receive_callback = JsonRpc.createHandler(sendFunc, {
		'postComment.onSuccess': postComment_onSuccess,
		'postComment.onFailure': postComment_onFailure,
		'editComment.onSuccess': editComment_onSuccess,
		'editComment.onFailure': editComment_onFailure,		
		'getUserByEmail.onSuccess': getUserByEmail_onSuccess,
		'validateAuth.onSuccess': validateAuth_onSuccess,
		'validateAuth.onFailure': validateAuth_onFailure,
		'reload': function() { window.location.reload(); }
	});

	this.url = Dsq.Urls.REPLY +
		'?' + (new Date()).getTime() +
		'&f=jackandjillpolitics' +
		'&t=memo_to_press_barack_obama_is_not_running_for_entertainer_in_chief_99' +
		'&ff=' + Dsq.Thread.ff +
		'&default_text=' + disqus_default_text +
		'&ifrs=' + encodeURIComponent(disqus_iframe_css);
	if (this.parent_post_id) {
		this.url += '&parent_post=' + this.parent_post_id;
	}
};

Dsq.ReplyFrame.prototype = new Dsq.NewFrames(Dsq.ReplyFrame.url);

Dsq.ReplyFrame.prototype.post = function(author_name, author_email, author_url, authenticate, sharing_services, subscribe) {
	this._execute('postComment', [author_name, author_email, author_url, authenticate, sharing_services, subscribe]);
};

Dsq.ReplyFrame.prototype.edit = function(post_id, message) {
	this._execute('editComment', [post_id, message]);
};

Dsq.ReplyFrame.prototype.setState = function(parent_post_id, depth) {
	this._execute('setState', [parent_post_id, depth]);
};

Dsq.ReplyFrame.prototype.getUserByEmail = function(email) {
	this._execute('getUserByEmail', [email]);
};

Dsq.ReplyFrame.prototype.validateAuth = function(auth_choice, email, username, password) {
	this._execute('validateAuth', [auth_choice, email, username, password]);
};

Dsq.ReplyFrame.prototype.authenticateFacebook = function(session, forum_url) {
	this._execute('authenticateFacebook', [session, forum_url]);
};

	Dsq.Facebook = function() {
	var that = this;

	var handleSessionData = function(session) {

		var forum_url = Dsq.jsonData.forum.url;




		if (typeof disqus_facebook_forum != 'undefined') {
			forum_url = disqus_facebook_forum;
		}
		Dsq.frames.reply_0.authenticateFacebook(session, forum_url);
	};

	var onLogin = function() {
		FB.Connect.getSignedPublicSessionData(handleSessionData);
	};

	this.login = function() {
		FB.Connect.requireSession(onLogin, true);
	};
};
Dsq.Facebook = new Dsq.Facebook();


	






Dsq.Themes = {};

Dsq.Themes.narcissus = new function() {
	this.addPostContainer = 'dsq-form-area';
	this.textareaContainer = 'dsq-textarea-wrapper';



	
	this.header = function() {
		var comments_count, total_posts, num_posts;
		var html = '';
		var missing_perm_tmpl;

		if (Dsq.jsonData.request.missing_perm) {
			missing_perm_tmpl = Dsq.Templates.missingPermissions();
			if (missing_perm_tmpl) {
				html += '<div class="dsq-missing-permissions">' + missing_perm_tmpl + '</div>';
			}
		}

		total_posts = Dsq.jsonData.thread.total_posts;
		num_posts = Dsq.jsonData.thread.num_posts;

		if (total_posts) {
			comments_count = Dsq.FmtStrings.SHOWING_COMMENTS_FULL(total_posts, num_posts);
		} else {
			comments_count = Dsq.FmtStrings.SHOWING_COMMENTS_WITHOUT_PAGINATION(num_posts);
		}

		html += ' \
		<div id="dsq-comments-title"> \
			<h3>' + comments_count + '</h3> \
		</div> \
		';

		html += ' \
		<div class="dsq-options"> \
			<span class="dsq-item-sort">'
				+ Dsq.Strings.SORT_BY + ' \
				<select id="dsq-sort-select" onchange="Dsq.Thread.sortBy(this.value);"> \
					<option value="hot" ' + (Dsq.jsonData.request.sort == 4 ? 'selected="selected"' : '') + '>' + Dsq.Strings.POPULAR_NOW + '</option> \
					<option value="best" ' + (Dsq.jsonData.request.sort == 3 ? 'selected="selected"' : '') + '>' + Dsq.Strings.BEST_RATING + '</option> \
					<option value="newest" ' + (Dsq.jsonData.request.sort == 2 ? 'selected="selected"' : '') + '>' + Dsq.Strings.NEWEST_FIRST + '</option> \
					<option value="oldest" ' + (Dsq.jsonData.request.sort == 1 ? 'selected="selected"' : '') + '>' + Dsq.Strings.OLDEST_FIRST + '</option> \
				</select> \
				&nbsp; \
			</span> \
			<span class="dsq-subscribe-email"> \
				<img src="http://media.disqus.com/images/embed/email.png" style="width:12px;height:12px;vertical-align:middle"> \
				<span id="dsq-subscribe">'
					+ (Dsq.jsonData.context.subscribed
						? '<a href="#" onclick="Dsq.Thread.subscribe(0); return false">' + Dsq.Strings.UNSUBSCRIBE + '</a>'
						: '<a href="#" onclick="Dsq.Thread.subscribe(1); return false">' + Dsq.Strings.SUBSCRIBE_BY_EMAIL + '</a>')
				+ '</span> \
			</span> \
			<span class="dsq-subscribe-rss" style="width:12px;height:12px;vertical-align:middle"> \
				<img src="http://media.disqus.com/images/embed/bullet-feed.png" alt="" /> \
				<a href="http://jackandjillpolitics.disqus.com/memo_to_press_barack_obama_is_not_running_for_entertainer_in_chief_99/latest.rss">' + Dsq.Strings.SUBSCRIBE_BY_RSS + '</a> \
			</span> \
		</div> \
		';

		
		

		return html;

	};
	
	this.footer = function() {
		var html = '';

		html += Dsq.Templates.pagination();

		
		
			html += Dsq.Templates.realtime();
			html += Dsq.Templates.showThreadSettings();
			html += Dsq.Templates.postBox();

		html += Dsq.Templates.reactions();

		
			html += Dsq.Templates.trackbacks();
		


		if (Dsq.jsonData.request.is_global_moderator) {
 			html += ' \
				<div class="dsq-global-moderator-extras">'
					+ '<strong>shortname:</strong> ' + Dsq.jsonData.forum.url
					+ '<strong>thread id:</strong> ' + Dsq.jsonData.thread.id
					+ '<strong>thread slug:</strong> ' + Dsq.jsonData.thread.slug
				+ '</div> \
			';
		}

		return html;
	};
	
	this.realtime = function() {
		var html = '';
		
		if (Dsq.jsonData.realtime_enabled) {
			html += '<div id="dsq-realtime-options" class="dsq-options">'
					 + Dsq.Strings.REALTIME_UPDATING_IS + ' <strong id="dsq-realtime-status" style="text-transform: lowercase">' + Dsq.Strings.ENABLED + '</strong>. \
					 <a href="#" id="dsq-realtime-toggle" style="text-transform: capitalize"></a> \
					</div>';
		}

		if (!Dsq.jsonData.forum.streaming_realtime) {
			html += ' \
				<div style="display: none" id="dsq-realtime-alert" class="dsq-realtime-alert"><span id="dsq-realtime-queued"></span> <a href="#" id="dsq-realtime-show"></a></div> \
			';
		}
		
		return html;
	};

	this.showThreadSettings = function() {
		if (!Dsq.jsonData.request.is_moderator) {
			return '';
		}

		html = '<div id="dsq-thread-settings" class="dsq-thread-settings">' + Dsq.Strings.MODERATOR_OPTIONS;
		html += '<a href="#" onclick="Dsq.Thread.showSettings(); return false;">' + Dsq.Strings.SETTINGS + '</a>';
		if (Dsq.jsonData.forum.reactions_enabled && Dsq.jsonData.reactions.length === 0) {
			html += '<a href="#" onclick="Dsq.Reaction.reportMissingReactions(); return false;">'
						+ Dsq.Strings.REPORT_MISSING_REACTIONS
						+ '</a>';
		}
		html +='</div>';

		return html;
	};

	this.postBox = function(post_id, use_fallback_iframe) {


		var html;
		var display_sharing_options = Dsq.jsonData.request.is_authenticated;

		if (!Dsq.jsonData.request.is_authenticated && Dsq.jsonData.forum.disqus_auth_disabled && !Dsq.jsonData.forum.allow_anon_post) {
			return '';
		}
		
		if (Dsq.jsonData.request.is_remote) {


			if (!Dsq.jsonData.request.sharing.hasOwnProperty(Dsq.jsonData.request.remote_domain)) {
				display_sharing_options = false;
			}
		}
		
		if (post_id) {
			var _meta = Dsq.jsonData.posts[post_id];
			var userData = Dsq.jsonData['users'][_meta.user_key];				
		}
		
		var pid = post_id ? '-' + post_id : '';

		var _requestUserInfo = function() {
			var html;



			var user_has_email = false;

			html = '<div class="dsq-request-user-info"> <!-- // If authenticated --> \
				<a href="' + Dsq.jsonData.settings.disqus_url + Dsq.Urls.LOGOUT + '?ctkn=' + Dsq.CSRF_TOKEN + '" class="dsq-request-user-logout">' + Dsq.Strings.LOGOUT + '</a> \
				<table> \
					<tr> \
						<td rowspan="2">'
							+ (!Dsq.jsonData.forum.disqus_auth_disabled ? '<a href="' + Dsq.jsonData.settings.disqus_url + Dsq.Urls.REQUEST_USER_PROFILE + '">' : '')
								+ '<img src="' + Dsq.Urls.REQUEST_USER_AVATAR + '" width="48" height="48" class="dsq-request-user-avatar">'
							+ (!Dsq.jsonData.forum.disqus_auth_disabled ? '</a>' : '')
						+ '</td> \
						<td class="dsq-request-user-name">'
								+ (Dsq.jsonData.request.is_remote
									 ? '<span class="dsq-badge-small dsq-badge-' + Dsq.jsonData.request.remote_domain + '">' + Dsq.jsonData.request.remote_domain + '</span>'
									 : (Dsq.jsonData.request.is_verified
											? '<span class="dsq-badge-small dsq-badge-verified">Verified</span>'
											: '<span class="dsq-badge-small dsq-badge-registered">Registered</span>'))
							+ (!Dsq.jsonData.forum.disqus_auth_disabled ? ' <a href="' + Dsq.jsonData.settings.disqus_url + Dsq.Urls.REQUEST_USER_PROFILE + '">' : '') 
								+ Dsq.jsonData.request.display_username 
							+ (!Dsq.jsonData.forum.disqus_auth_disabled ? '</a>' : '')
							+  (Dsq.jsonData.request.is_remote && user_has_email ? ' <small>(<a href="#" onclick="Dsq.Popup.remoteAccountSettings(); return false;">change settings</a>)</small>' : '')
							+  (!Dsq.jsonData.request.is_remote && !Dsq.jsonData.forum.disqus_auth_disabled ? ' <small>(<a href="' + Dsq.jsonData.settings.disqus_url + '/profile/info/" target="_blank">change name</a> or <a href="' + Dsq.jsonData.settings.disqus_url + '/profile/avatar/" target="_blank">picture</a>)</small>' : '')
						+ '</td> \
					</tr> \
					<tr> \
						<td class="dsq-request-user-stats"> \
							<span><big>' + Dsq.jsonData.request.comments_count + '</big> ' + (Dsq.jsonData.request.comments_count == 1 ? 'comment' : 'comments') + '</span> \
							<span><big>' + Dsq.jsonData.request.likes_count + '</big> ' + (Dsq.jsonData.request.likes_count == 1 ? 'like' : 'likes') + '</span> \
							<span><big>' + Dsq.jsonData.request.points + '</big> ' + (Dsq.jsonData.request.points == 1 ? 'point' : 'points') + '</span> \
						</td> \
					</tr> \
				</table> \
			</div> \
			';
			return html;
		};

		var _loginOptions = function() {
			var html;
			html = ' \
			<div class="dsq-authenticate"> \
				<p class="dsq-autheneticate-copy">'
				+ (Dsq.jsonData.forum.allow_anon_post
					? Dsq.Strings.YOU_ARE_COMMENTING_AS_A + ' <a class="dsq-help" title="Click for more information" href="#" onclick="Dsq.Popup.helpBadges(); return false">Guest</a>. ' + Dsq.Strings.OPTIONAL + ': ' + Dsq.Strings.LOGIN_BELOW + '.'
					: Dsq.Strings.REQUIRED + ': ' + Dsq.Strings.PLEASE_LOGIN_BELOW_TO_COMMENT + '.')
				+ '</p> \
				<ul class="dsq-login-buttons">'
					+ (!Dsq.jsonData.forum.disqus_auth_disabled ? '<li class="dsq-login-button"><a href="#" onclick="Dsq.Popup.login(); return false"><img src="http://media.disqus.com/images/themes/narcissus/login-disqus.gif" /></a></li>' : '')
					+ (Dsq.jsonData.context.use_fb_connect ? '<li class="dsq-login-button"><a href="#" onclick="Dsq.Facebook.login(); return false;"><img src="http://media.disqus.com/images/themes/narcissus/login-facebook.gif" /></a></li>' : '')
					+ (Dsq.jsonData.context.use_twitter_signin ? '<li class="dsq-login-button"><a href="#" onclick="Dsq.Twitter.startTwitterConnect(); return false"><img src="http://media.disqus.com/images/themes/narcissus/login-twitter.gif" /></a></li>' : '')
					+ (Dsq.jsonData.context.use_openid ? '<li class="dsq-login-button"><a href="#" onclick="Dsq.OpenID.requestURL(); return false" ><img src="http://media.disqus.com/images/themes/narcissus/login-openid.gif" /></a></li>' : '')
					+ (Dsq.jsonData.context.use_yahoo ? '<li class="dsq-login-button"><a href="#" onclick="Dsq.Yahoo.startYahooConnect(); return false"><img src="http://media.disqus.com/images/themes/narcissus/login-yahoo.gif" /></a></li>' : '')
				+ '</ul> \
			</div> \
			';
			return html;
		};

		if (!Dsq.jsonData.context.show_reply) {


			if (!Dsq.jsonData.request.is_authenticated) {



				return '<div id="dsq-form-area" style="display:none"><div id="dsq-textarea-wrapper"></div></div>' + _loginOptions();
			} else {
				return '';
			}
		}

		html = ' \
		<div id="' + (post_id 
			? 'dsq-reply-post-' + post_id
			: 'dsq-new-post')
		 	+ '" class="dsq-post-area"> \
			<div class="dsq-dc-logo"> \
				<a href="http://disqus.com/comments" target="_blank"><img src="http://media.disqus.com/images/themes/narcissus/disqus-logo.png"></a> \
			</div>'
			+ (post_id 
				? '<h3>' + Dsq.Strings.REPLYING_TO + ' ' + userData.display_name + '</h3>'
				: '<h3>' + Dsq.Strings.ADD_NEW_COMMENT + '</h3>')
			+ (Dsq.jsonData.request.is_authenticated 
				? _requestUserInfo()
				: _loginOptions() )
			+ '<div id="dsq-form-area' + pid + '">'
			+ '<div class="dsq-textarea"> \
				<div class="dsq-textarea-wrapper" id="dsq-textarea-wrapper' + pid + '"></div> \
			</div>'
			+ (!Dsq.jsonData.request.is_authenticated
			? ' \
			<div class="dsq-post-fields"> \
				<form action="." method="GET" onsubmit="Dsq.Templates.postComment(' + post_id + ', this, false); return false;"> \
				<table> \
					<tr> \
						<td class="dsq-post-fields-left"><div class="dsq-input-wrapper"><input id="dsq-field-name' + pid + '" type="text" value="' + (disqus_def_name ? disqus_def_name : (Dsq.jsonData.session.name ? Dsq.jsonData.session.name : Dsq.Strings.NAME + '" class="dsq-placeholder')) + '" onfocus="Dsq.Templates.handlePlaceholder(event, this, \'name\')" onblur="Dsq.Templates.handlePlaceholder(event, this, \'name\')" /></div></td> \
						<td class="dsq-post-fields-right"><div class="dsq-input-wrapper"><input id="dsq-field-website' + pid + '" type="text" value="' + (Dsq.jsonData.session.url ? Dsq.jsonData.session.url : Dsq.Strings.WEBSITE + ' (' + Dsq.Strings.OPTIONAL.toLowerCase() + ')" class="dsq-placeholder') + '" onfocus="Dsq.Templates.handlePlaceholder(event, this, \'website\')" onblur="Dsq.Templates.handlePlaceholder(event, this, \'website\')" /></div></td> \
					</tr> \
					<tr> \
						<td class="dsq-post-fields-left"><div class="dsq-input-wrapper"><input id="dsq-field-email' + pid + '" type="text" value="' + (disqus_def_email ? disqus_def_email : (Dsq.jsonData.session.email ? Dsq.jsonData.session.email : Dsq.Strings.EMAIL + '" class="dsq-placeholder')) + '" onfocus="Dsq.Templates.handlePlaceholder(event, this, \'email\')" onblur="Dsq.Templates.handlePlaceholder(event, this, \'email\')" /></div></td> \
						<td class="dsq-post-fields-right"> \
							<div class="dsq-subscribe"> \
								<a href="#" onclick="Dsq.Templates.chooseSubscribe(' + post_id + '); return false" class="dsq-subscribe-menu"><span id="dsq-subscribe-select' + pid + '">' + (Dsq.jsonData.request.subscribe_on_post ? Dsq.Strings.SUBSCRIBE_TO_ALL_COMMENTS_BY_EMAIL : Dsq.Strings.DO_NOT_SUBSCRIBE_TO_COMMENTS) + '</span> <small>&#9660;</small></a> \
								<ul class="dsq-panel" id="dsq-subscribe-menu' + pid + '"> \
									<li><a href="#" onclick="Dsq.Templates.setSubscribe(2, this, ' + post_id + '); return false">Subscribe to all comments by email</a></li> \
									<li><a href="#" onclick="Dsq.Templates.setSubscribe(0, this, ' + post_id + '); return false">Do not subscribe to comments</a></li> \
								</ul> \
								<input id="dsq-subscribe-on-post' + pid + '" type="hidden" value="' + Dsq.jsonData.request.subscribe_on_post + '" /> \
							</div> \
						</td> \
					</tr> \
				</table> \
				</form> \
			</div>'
			: '')
			+ '<div class="dsq-post-footer"> \
				<div class="dsq-sharing-options" ' + (!display_sharing_options ? 'style="display:none;"' : '') + '> \
					<button class="dsq-button-small" onfocus="document.getElementById(\'dsq-post-button' + pid + '\').focus();"><span>' + Dsq.Strings.SHARING_OPTIONS + ' <small>&#9660;</small></span></button> \
					<div class="dsq-panel"> '
						+ (Dsq.jsonData.request.sharing.twitter !== undefined
								&& Dsq.jsonData.request.sharing.twitter.enabled === true
							? '<div><input type="checkbox" id="dsq-sharing-twitter' + pid + '"'
								  + (Dsq.jsonData.request.sharing.twitter.auto === true ? 'checked=true' : '') + '/> \
									<label for="dsq-sharing-twitter' + pid + '">' + Dsq.Strings.SHARE_ON + ' Twitter</label> \
								 </div>'
							: '')
						+ (Dsq.jsonData.request.sharing.facebook
								&& (Dsq.jsonData.request.sharing.facebook.enabled === true ||
										(Dsq.jsonData.request.is_remote && Dsq.jsonData.request.remote_domain == 'facebook'))
							? '<div><input type="checkbox" id="dsq-sharing-facebook' + pid + '"'
									+ (Dsq.jsonData.request.sharing.facebook.auto === true ? 'checked=true' : '') + '/> \
									<label for="dsq-sharing-facebook' + pid + '">' + Dsq.Strings.SHARE_ON + ' Facebook</label> \
								 </div>'
							: '')
						+ (Dsq.jsonData.request.sharing.yahoo !== undefined
								&& Dsq.jsonData.request.sharing.yahoo.enabled === true
							? '<div><input type="checkbox" id="dsq-sharing-yahoo' + pid + '"'
									+ (Dsq.jsonData.request.sharing.yahoo.auto === true ? 'checked=true' : '') + '/> \
									<label for="dsq-sharing-yahoo' + pid + '">' + Dsq.Strings.SHARE_ON + ' Yahoo!</label> \
								</div>'
							: '')
						+ (Dsq.jsonData.request.sharing.tumblr !== undefined
								&& Dsq.jsonData.request.sharing.tumblr.enabled === true
							? '<div><input type="checkbox" id="dsq-sharing-tumblr' + pid + '"'
									+ (Dsq.jsonData.request.sharing.tumblr.auto === true ? 'checked=true' : '') + '/> \
									<label for="dsq-sharing-tumblr' + pid + '">' + Dsq.Strings.SHARE_ON + ' Tumblr</label> \
								 </div>'
							: '')
						+ (Dsq.jsonData.request.sharing.wordpress !== undefined
								&& Dsq.jsonData.request.sharing.wordpress.enabled === true
							? '<div><input type="checkbox" id="dsq-sharing-wordpress' + pid + '"'
									+ (Dsq.jsonData.request.sharing.wordpress.auto === true ? 'checked=true' : '') + '/> \
									<label for="dsq-sharing-wordpress' + pid + '">' + Dsq.Strings.SHARE_ON + ' Wordpress</label> \
								 </div>'
							: '')
						+ (Dsq.jsonData.request.sharing.movabletype !== undefined
							  && Dsq.jsonData.request.sharing.movabletype.enabled === true
							? '<div><input type="checkbox" id="dsq-sharing-movabletype' + pid + '"'
									+ (Dsq.jsonData.request.sharing.movabletype.auto === true ? 'checked=true' : '') + '/> \
									<label for="dsq-sharing-movabletype' + pid + '">' + Dsq.Strings.SHARE_ON + ' Movable Type</label> \
							   </div>'
							: '')
						+ (Dsq.jsonData.request.sharing.typepad !== undefined
							  && Dsq.jsonData.request.sharing.typepad.enabled === true
							? '<div><input type="checkbox" id="dsq-sharing-typepad' + pid + '"'
									+ (Dsq.jsonData.request.sharing.typepad.auto === true ? 'checked=true' : '') + '/> \
								  <label for="dsq-sharing-typepad' + pid + '">' + Dsq.Strings.SHARE_ON + ' TypePad</label> \
							   </div>'
							: '')
						+ '<div><a href="' + Dsq.jsonData.settings.disqus_url + '/profile/connections/" target="_blank" class="dsq-configure-options">' + Dsq.Strings.CONFIGURE_OPTIONS + '</a></div>'
					+ '</div> \
				</div>'
				+ '<button class="dsq-button" id="dsq-post-button' + pid + '" onclick="Dsq.Templates.postComment(' + post_id + ', this, false)"><span>' + Dsq.Strings.POST_AS + ' '
				+ (Dsq.jsonData.request.display_username
					? Dsq.jsonData.request.display_username
					: Dsq.Strings.GUEST)
				+ '</span></button>'
				+ (post_id
					? '<button class="dsq-button" id="dsq-cancel-button' + pid + '" onclick="Dsq.Post.toggleReply(' + post_id +', this)"><span>' + Dsq.Strings.CANCEL + '</span></button>'
					: '')
			+ '</div>'
			+ '</div>' // end dsq-form-area
		+ '</div> \
		';
		
		return html;
	};




	this.appendPost = function(post_id) {
		var html = '<div id="dsq-append-post-' + post_id + '"></div>';
		return html;
	};

	this.postPrependHeader = function(post_id) {
		var html;
		var _meta = Dsq.jsonData.posts[post_id];
		var userData = Dsq.jsonData['users'][_meta.user_key];
		
		html = ' \
		<table> \
			<tr> \
				<td id="dsq-header-avatar-' + post_id + '" class="dsq-header-avatar" onmouseover="Dsq.Post.dropProfile(' + post_id + ')"> \
					<a id="dsq-avatar-' + post_id + '" class="dsq-avatar" href="' + userData.url + '" onclick="Dsq.Popup.popProfile(' + post_id + '); return false;">'
					+ (Dsq.jsonData.forum.show_avatar
					? '<img src="' + Dsq.jsonData.users[_meta.user_key].avatar + '" alt="" />'
					: '')
				+ '</a> \
				</td> \
				<td class="dsq-comment-header-meta"> \
		';

		
		return html;
	};
	
	this.postAppendHeader = function(post_id) {
		var _meta = Dsq.jsonData.posts[post_id];
		var html;
		var parent_display_name = '';
		
		if(_meta.parent_post_id) {

			var _parent_meta = Dsq.jsonData.posts[_meta.parent_post_id];

			if (_parent_meta) {
				var parentUserData = Dsq.jsonData['users'][_parent_meta.user_key];
				parent_display_name = parentUserData.display_name;
			}
		}

		html = ' \
		<img src="http://media.disqus.com/images/themes/narcissus/moderator.png" class="dsq-moderator-star" title="Moderator" /> \
		<span class="dsq-comment-header-time"><a href="#comment-' + post_id + '" onclick="Dsq.Popup.permalink(' + post_id + ')" title="Permalink">' + (_meta.is_realtime ? Dsq.Strings.JUST_NOW : _meta.date) + '</a></span> '
		+ (_meta.parent_post_id && parent_display_name
			? '<a href="#comment-' + _meta.parent_post_id + '" title="Jump to comment">in reply to ' + parent_display_name + '</a>'
			: '')
		+ '</td> \
		<td id="dsq-like-pts-' + post_id + '" class="dsq-comment-header-likes">'
		+ (_meta.points
			? _meta.points + Dsq.Utils.pluralize(_meta.points, ' person', ' people') + ' liked this.'
			: '')
		+ '</td> \
		</tr> \
		</table> \
		';
		return html;
	};

	this.preBody = function(post_id) {
		var html = '';
		return html;
	};

	this.postFooter = function(post_id) {
		var html;
		var _meta = Dsq.jsonData.posts[post_id];
		if(_meta.killed || !_meta.approved) { return ''; }
		
		html = ' \
		<div class="dsq-comment-footer" id="dsq-comment-footer-' + post_id + '"> \
			<div class="dsq-comment-footer-left">'
				+ (Dsq.jsonData.request.is_moderator || Dsq.jsonData.request.is_global_moderator
					? '<a href="#" onclick="Dsq.Templates.moderateOptions(' + post_id+ '); return false">' + Dsq.Strings.MODERATE + '</a>'
					: '')
				+ '<a href="#" id="dsq-post-report-' + post_id + '" class="dsq-post-report" onclick="Dsq.Post.report(' + post_id + ', false); return false;">' + Dsq.Strings.FLAG + '</a> \
			</div> \
			<div class="dsq-comment-footer-right">'
				+ (_meta.votable 
					? '<span id="dsq-like-' + post_id + '" class="dsq-like">'
					+ (!_meta.up_voted
						? '<button class="dsq-button-small" onclick="Dsq.Post.rate(this, ' + post_id + ', 1)" >Like</button>'
						: 'You liked this.&nbsp;&nbsp;')
					+ '</span>'
					: '')
				+ (_meta.can_reply && !_meta.has_replies && _meta.from_request_user
					? '<button class="dsq-button-small dsq-post-edit" onclick="Dsq.Post.edit(this, ' + post_id + ')" >' + Dsq.Strings.EDIT + '</button>'
					: '')
				+ (_meta.can_reply
					? '<span class="dsq-comment-footer-reply" id="dsq-comment-footer-reply-' + post_id + '" onclick="Dsq.Post.toggleReply(' + post_id +', this)"> \
						<button class="dsq-button-small">' + Dsq.Strings.REPLY + '</button> \
						<button class="dsq-comment-footer-reply-tab">' + Dsq.Strings.REPLY + '</button><span></span> \
					</span>'
					: '')
			+ '</div> \
		</div> \
		';
		
		return html;
	};



	
	this.showRetweets = function(id, limit, element_id /* Optional */) {
		var source, html = '';

		for (var i = 0, reaction; reaction = Dsq.jsonData.reactions[i]; i++) {
			if (reaction.id === id) {
				source = reaction.retweets;
			}
		}

		if (source) {
			if (limit === 0) {
				limit = source.length;
			}

			for (var j = 0; j < limit; j++) {
				var rt = source[j];
				html += '<a href="' + rt.url + '">' + rt.author_name + '</a>'	+ ((j === (limit - 1)) ? '.' : ', ');
			}
		}

		if (element_id === undefined) {
			return html;
		}

		var element = document.getElementById(element_id);
		element.innerHTML = html;
		return element;
	};

	this.showMoreReactions = function(reactions, has_more, start, limit) {
		var link = document.getElementById('dsq-show-more-reactions');
		var container = link.parentNode;
		container.removeChild(link);

		for (var i = 0, reaction; reaction = reactions[i]; i++) {
			var el = Dsq.Templates.generateReactionHTML(reaction);
			if (el) {
				container.innerHTML += el;
			}
		}

		if (has_more) {
			var d = Dsq.jsonData.settings.disqus_url;
			var f = Dsq.jsonData.forum.url;
			var t = Dsq.jsonData.thread.id;
			var s = start;
			var l = limit;

			var handler = 'Dsq.Utils.execScript(\'' + d + '/forums/' + f + '/more_reactions.js?t=' + t + '&s=' + s + '&l=' + l + '\', true); return false;';
			container.innerHTML += '<li id="dsq-show-more-reactions" class="dsq-show-more-reactions"><button class="dsq-button-small" onclick="' + handler + '">Show more reactions</button></li>';
		}
	};

	this.generateReactionHTML = function(reaction) {
		if (reaction.body === null || reaction.body == '') {
			return;
		}

		if (reaction.author_name === '') {
			reaction.author_name = '&nbsp;';
		}

		if (reaction.url === '') {
			reaction.url = reaction.get_service_url;
		}

		var item = '<li class="dsq-comment dsq-reaction" id="dsq-reaction-' + reaction.id + '">'
			+ '<div class="dsq-comment-header"> \
			<table> \
			<tr> \
			<td class="dsq-header-avatar"> \
			';

		if (reaction.author_url && reaction.author_url !== '') {
			item += '<a target="_blank" href="' + reaction.author_url +'" class="dsq-avatar">';
		}

		if (reaction.avatar_url && reaction.avatar_url !== '') {
			item += '<img src="' + reaction.avatar_url + '"/>';
		} else {

			item += '<img src="' + Dsq.jsonData.media_url + '/images/noavatar92.png"/>';
		}

		var service_icon = (reaction.get_service_name == 'trackback' || reaction.get_service_name == 'pingback' ? 'rss' : reaction.get_service_name.replace(' ', ''));
		item += (reaction.author_url && reaction.author_url !== ''
				? '</a>'
				: '')
			+ '</td>'
			+ '<td><cite class="dsq-comment-cite">' + reaction.author_name + '</cite> <span class="dsq-comment-header-time">' + reaction.date_created + '</span></td>'
			+ '<td class="dsq-comment-header-likes"></td>'
			+ '</tr></table></div>' // end dsq-comment-header
			+ '<div class="dsq-reaction-header" \
				<table> \
					<tr> \
						<td class="dsq-reaction-header-left">'
							+ '<img class="dsq-service-icon" src="' + Dsq.jsonData.media_url + '/images/reactions/services/' + service_icon + '.png" />'
							+ ' From <a class="dsq-service-name" target="_blank" href="' + reaction.url + '">' + reaction.get_service_name + '</a> '
							+ 'via ' + (reaction.source == 'backtype' ? '<a href="http://backtype.com/">BackType</a>' : '<a href="' + reaction.source_url + '">UberVU</a>')
						+ '</td>'
						+ '<td class="dsq-reaction-header-right">';
			
			if(reaction.retweets) {
				var num_retweets = reaction.retweets.length;
				if (num_retweets > 0) {
					if (num_retweets == 1) {
						item += 'One more retweet from <a href="' + reaction.retweets[0].url + '">'  + reaction.retweets[0].author_name + '</a>';
					} else {
						item += (num_retweets + ' more retweets from ');
						item += '<span id="dsq-reaction-retweets-' + reaction.id + '">';
						var n_tweets = (num_retweets > 3) ? 3 : num_retweets;
						item += Dsq.Templates.showRetweets(reaction.id, n_tweets);
						if (n_tweets != num_retweets) {
							item += '</span> <a onclick="Dsq.Templates.showRetweets(' + reaction.id + ', 0, \'dsq-reaction-retweets-' + reaction.id + '\');'
								+ 'this.parentNode.removeChild(this); return false;" href="#">Show all</a>';
						}
					}
				}
			}	
			item += '</td></tr> \
			</table> \
			</div>' // end dsq-reaction-header
			+ '<div class="dsq-comment-body"> \
				<div class="dsq-comment-message">' + reaction.body + '</div>'
			+ '</div> \
			<div class="dsq-comment-footer"> \
				<div class="dsq-comment-footer-left"> \
				</div>'
				+ (Dsq.jsonData.request.is_moderator || Dsq.jsonData.request.is_global_moderator 
					? ' \
					<div class="dsq-comment-footer-right"> \
						<button class="dsq-button-small dsq-hide-reaction" onclick="Dsq.Reaction.hide(' + reaction.id + ')">Hide</button> \
					</div>'
					: '')
			+ '</div>'
		item += '</li>'; /* Reaction HTML ends */
		return item;
	};

	this.reactions = function() {
		var html, reaction;

		if (Dsq.jsonData.reactions === undefined || Dsq.jsonData.reactions.length === 0) {
			return '';
		}

		html = '';
		for (var i = 0; reaction = Dsq.jsonData.reactions[i]; i++) {
			var item = Dsq.Templates.generateReactionHTML(reaction);
			if (item) {
				html += item;
			}
		}

		if (Dsq.jsonData.has_more_reactions) {
			var d = Dsq.jsonData.settings.disqus_url;
			var f = Dsq.jsonData.forum.url;
			var t = Dsq.jsonData.thread.id;
			var s = Dsq.jsonData.reactions_start;
			var l = Dsq.jsonData.reactions_limit;

			var handler = 'Dsq.Utils.execScript(\'' + d + '/forums/' + f + '/more_reactions.js?t=' + t + '&s=' + s + '&l=' + l + '\', true); return false;';
			html += '<li id="dsq-show-more-reactions" class="dsq-show-more-reactions"><button class="dsq-button-small" onclick="' + handler + '">Show more reactions</button></li>';
		}

		return '<h3 id="dsq-reactions-title" class="dsq-h3-reactions">Reactions</h3><ul id="dsq-reactions" class="dsq-reactions">' + html + '</ul>';
	};
	
	this._popupGeneric = function(content) {
		return ' \
		<div class="dsq-popup-container"> \
			<table> \
				<tbody> \
					<tr> \
						<td class="dsq-popup-tl"></td><td class="dsq-popup-b"></td><td class="dsq-popup-tr"></td> \
					</tr> \
					<tr> \
						<td class="dsq-popup-b"></td> \
						<td class="dsq-popup-body"> \
							<div class="dsq-popup-content"> \
								<div class="dsq-popup-title"> \
									<button class="dsq-button-small" style="float:right" onclick="Dsq.Popup._closePopup(null, true)">Close</button>' 
									+ content['header'] 
								+ '</div>'
								+ content['body']
							+ '</div> \
							<div class="powered-by"><a href="http://disqus.com/comments/">Powered by <img src="http://media.disqus.com/images/embed/disqus-logo.png" alt="Disqus Comments" style="margin-bottom:-5px" /></a></div> \
						</td> \
						<td class="dsq-popup-b"></td> \
					</tr> \
					<tr> \
						<td class="dsq-popup-bl"></td><td class="dsq-popup-b"></td><td class="dsq-popup-br"></td> \
					</tr> \
				</tbody> \
			</table> \
		</div> \
		';
	};



	
	this.chooseSubscribe = function(post_id) {

		var pid = post_id ? '-' + post_id : '';
		var menu = Dsq.$('dsq-subscribe-menu' + pid);
		
		menu.style.display = menu.style.display == 'block' ? 'none' : 'block';
		
	};
	
	this.setSubscribe = function(value, el, post_id) {

		var pid = post_id ? '-' + post_id : '';
		var input = Dsq.$('dsq-subscribe-on-post' + pid);
		var select = Dsq.$('dsq-subscribe-select' + pid);
		var menu = Dsq.$('dsq-subscribe-menu' + pid);
		
		select.innerHTML = el.innerHTML;
		input.value = value;
		this.chooseSubscribe(post_id);
	};
	
	this.getFormFields = function(post_id) {

		var fields = {};
		var pid = post_id ? '-' + post_id : '';
		var name = Dsq.$('dsq-field-name' + pid);
		var email = Dsq.$('dsq-field-email' + pid);
		var website = Dsq.$('dsq-field-website' + pid);
		var username = Dsq.$('dsq-field-username' + pid);
		var password = Dsq.$('dsq-field-password' + pid);

		fields = {
			'name': name,
			'email': email,
			'website': website,
			'username': username,
			'password': password
		}
		
		return fields;
	}
	
	this.validateFields = function(post_id) {
		
		if(Dsq.jsonData.request.is_authenticated) { return true; }
		
		var fields = Dsq.Templates.getFormFields(post_id);
		
		var nameField = fields.name;
		var websiteField = fields.website;
		var emailField = fields.email;
		
		websiteField.value = (websiteField.value == Dsq.Templates.placeholder['website']) ? '' : websiteField.value;
		
		var v = [{

			validator: Dsq.Validators.name,
			value: nameField.value
		}, {

			validator: Dsq.Validators.email,
			value: emailField.value
		}, {

			validator: Dsq.Validators.url,
			value: websiteField.value
		}];
		
		return Dsq.Validators.validate(v, function(e) { Dsq.Popup.popModal(e, 'Oops...') } );
	};
	
	this.checkExistingUser = function(post_id) {
		var fields = Dsq.Templates.getFormFields(post_id);		
		Dsq.Popup.loading(post_id);
		
		if (post_id) {
			Dsq.frames['reply_' + post_id].getUserByEmail(fields.email.value);
		} else {
			Dsq.frames['reply_0'].getUserByEmail(fields.email.value);
		}
	};

	this.validateAuth = function(el_clicked, post_id, auth_choice) {
		var fields = Dsq.Templates.getFormFields(post_id);
		var email = fields.email ? fields.email.value : '';
		var username = fields.username ? fields.username.value : '';
		var password = fields.password ? fields.password.value : '';
		
		Dsq.Templates.setLoadingButton(el_clicked, post_id);
		
		if (post_id) {
			Dsq.frames['reply_' + post_id].validateAuth(auth_choice, email, username, password);
		} else {
			Dsq.frames['reply_0'].validateAuth(auth_choice, email, username, password);
		}
	};

	this.lightboxUpdateEmail = function(post_id, new_email) {
		var fields = Dsq.Templates.getFormFields(post_id);
		fields.email.value = new_email;
	};

	this.lightboxAuthenticate = function(post_id, auth_choice, auth_data) {
		var title, body;
		var pid = post_id ? '-' + post_id : '';

		if(typeof(auth_data) == 'undefined') {
			var auth_data = Dsq.Templates.getFormFields(post_id);
		}

		d = auth_data;

		switch(auth_choice) {
			case 'register':
				var suggestedUsername = d.name.value.replace(/[^a-zA-Z0-9-]/g,'').toLowerCase();
			
				title = Dsq.jsonData.forum.allow_anon_post ? 'Optional:' : 'Required:';
				title += ' Register a <img src="http://media.disqus.com/images/embed/disqus-profile.png" alt=Disqus Profile" />';

				body = ' \
				<ul class="dsq-lightbox-register-reasons"> \
				<li>Verify your comments</li> \
				<li>Edit and delete comments</li> \
				<li>Manage comments and replies</li> \
				</ul> \
				';

				body += ' \
				<div class="dsq-lightbox-auth-fields"> \
					<table> \
						<tr> \
							<td>Email</td> \
							<td><input type="text" value="' + d.email.value + '" onchange="Dsq.Templates.lightboxUpdateEmail(' + post_id + ', this.value)" /><div id="dsq-email-errors' + pid + '"></div></td> \
						</tr> \
						<tr> \
							<td>Username</td> \
							<td><input id="dsq-field-username' + pid + '" type="text" value="' + suggestedUsername + '"/><div id="dsq-username-errors' + pid + '"></div></td> \
						</tr> \
						<tr> \
							<td>Password</td> \
							<td><input id="dsq-field-password' + pid + '" type="password" /><div id="dsq-password-errors' + pid + '"></div></td> \
						</tr> \
					</table> \
					<div class="dsq-lightbox-switch-auth"><a href="#" onclick="Dsq.Templates.lightboxAuthenticate(' + post_id + ',\'login\'); return false">Login instead</a></div> \
				</div> \
				<div id="dsq-lightbox-errors' + pid + '" class="dsq-lightbox-errors"></div> \
				<div class="dsq-lightbox-submit"> \
					<div class="dsq-lightbox-auth-post"><button class="dsq-button" onclick="Dsq.Templates.validateAuth(this, ' + post_id + ',\'' + auth_choice + '\')">Register and Post comment</button></div>'
					+ (Dsq.jsonData.forum.allow_anon_post
						? '<div class="dsq-lightbox-auth-skip"><button class="dsq-button-small" onclick="Dsq.Templates.postComment(' + post_id + ', this, true)">Just post as a Guest</button></div>'
						: '')
				+ '</div> \
				';
				break;
			case 'login':
				title = Dsq.jsonData.forum.allow_anon_post ? 'Optional:' : 'Required:';
				title += ' Login to your <img src="http://media.disqus.com/images/embed/disqus-profile.png" alt=Disqus Profile" />';
				body = '';
				
				if(d.avatar_url) {
					body += '<div class="dsq-lightbox-recognized"><table><tr>';
					body += '<td><img src="' + d.avatar_url + '" alt="" /></td>';
					body += '<td><span class="dsq-badge ' + (d.verified ? 'dsq-badge-verified' : 'dsq-badge-registered') + '">' + (d.verified ? 'Verified' : 'Registered') + '</span></td>';
					body += '<td>Hey <strong>' + d.display_name + '</strong>, is that you? Login below to claim this comment.';
					body += '</tr></table></div>';
				}

				body += ' \
				<div class="dsq-lightbox-auth-fields"> \
					<table> \
						<tr> \
							<td>Username or Email</td> \
							<td><input id="dsq-field-username' + pid + '" type="text" value="' + (d.avatar_url ? d.username : '') + '" /></td> \
						</tr> \
						<tr> \
							<td>Password <a href="http://disqus.com/forgot" target="_blank">(cannot log in?)</a></td> \
							<td><input id="dsq-field-password' + pid + '" type="password" /></td> \
						</tr> \
					</table> \
					<div class="dsq-lightbox-switch-auth"><a href="#" onclick="Dsq.Templates.lightboxAuthenticate(' + post_id + ',\'register\'); return false">Register instead</a></div> \
				</div> \
				<div id="dsq-lightbox-errors' + pid + '" class="dsq-lightbox-errors"></div> \
				<div class="dsq-lightbox-submit"> \
					<div class="dsq-lightbox-auth-post"><button class="dsq-button" onclick="Dsq.Templates.validateAuth(this, ' + post_id + ',\'' + auth_choice + '\')">Login and Post comment</button></div>'
					+ (Dsq.jsonData.forum.allow_anon_post
						? '<div class="dsq-lightbox-auth-skip"><button class="dsq-button-small" onclick="Dsq.Templates.postComment(' + post_id + ', this, true)">Just post as a Guest</button></div>'
						: '')
				+ '</div> \
				';
				break;
			default:
				break;
		}
		Dsq.Popup.lightbox(body, title, post_id);
		Dsq.$('dsq-field-username' + pid).focus();
	};
	
	this.buttonsToRestore = [];
	this.setLoadingButton = function(btn, post_id) {
		var pid = post_id ? '-' + post_id : '';
		if (btn) {

			var loadingBtn = document.createElement('button');
			loadingBtn.id = btn.id + '-loading';
			loadingBtn.innerHTML = '<img src="http://media.disqus.com/images/loading-lite.gif" alt="" /> Just a moment...';
			loadingBtn.className = btn.className + ' dsq-post-loading';
			btn.parentNode.appendChild(loadingBtn);
			btn.style.display = 'none';
			var cancelBtn = Dsq.$('dsq-cancel-button' + pid);
			if(cancelBtn) { cancelBtn.style.display = 'none'; this.buttonsToRestore.push(cancelBtn); }
			this.buttonsToRestore.push(btn);
		} else {

			var buttons = this.buttonsToRestore;
			for(var i = 0; i < buttons.length; i++) {
				buttons[i].style.display = 'inline';
				Dsq.Utils.deleteNode(Dsq.$(buttons[i].id + '-loading'));
			}
		}
		
	};

	this.postComment = function(post_id, el_clicked, force, auth_choice) {
		var append_id = post_id ? '-' + post_id : '';
		var fields = Dsq.Templates.getFormFields(post_id);

		if (Dsq.Templates.validateFields(post_id)) {

			if (!Dsq.jsonData.request.is_authenticated && !force &&
				((!Dsq.Utils.readCookie('skipped_auth') && !disqus_skip_auth && !Dsq.jsonData.forum.disqus_auth_disabled) || !Dsq.jsonData.forum.allow_anon_post)) {
				Dsq.Templates.checkExistingUser(post_id);
				return false;
			}
			var params = [];
			if (!Dsq.jsonData.request.is_authenticated) {
				params.push(fields.name.value,
					fields.email.value,
					fields.website.value);

				if (auth_choice == 'login' || auth_choice == 'register') {
					params.push({
						auth_choice: auth_choice,
						username: fields.username.value,
						password: fields.password.value,
						email: fields.email.value
					});
				} else {
					params.push(null);
				}

				params.push(null /* sharing options */, Dsq.$('dsq-subscribe-on-post' + append_id).value);
			} else {
				var service_checked = function(name) {
					var el = Dsq.$('dsq-sharing-' + name + append_id);
					return (el !== null && el.checked === true) ? '1' : '0';
				};
				params.push(null, null, null, null, {
					tw: service_checked('twitter'),
					fb: service_checked('facebook'),
					tr: service_checked('tumblr'),
					wp: service_checked('wordpress'),
					mt: service_checked('movabletype'),
					tp: service_checked('typepad'),
					yh: service_checked('yahoo')
				});
			}

			var frame = Dsq.frames['reply_' + (post_id ? post_id : 0)];
			frame.post.apply(frame, params);

			if (el_clicked) {
				Dsq.Templates.setLoadingButton(el_clicked, post_id);
			}
			
			if (force) {
				Dsq.Utils.createCookie('skipped_auth', true);	
			}
			
		} else {
			return false;
		}
	};

	this.editComment = function(el_clicked, post_id) {
		var edited_message = Dsq.$('dsq-edit-textarea-' + post_id).value;

		Dsq.Templates.setLoadingButton(el_clicked, post_id);
		Dsq.frames['edit_' + post_id].edit(post_id, edited_message);
	};

	this.toggleEdit = function(post_id) {
		var body = Dsq.$('dsq-comment-body-' + post_id);
		var message = Dsq.$('dsq-comment-message-' + post_id);

		if (!Dsq.Post.stateEditToggled[post_id]) {


			message.style.display = 'none';
			if (Dsq.$('dsq-edit-' + post_id)) {
				Dsq.$('dsq-edit-' + post_id).style.display = 'block';
			} else {

				var edit_area = document.createElement('div');
				edit_area.id = 'dsq-edit-' + post_id;
				edit_area.className = 'dsq-edit dsq-textarea';
				edit_area.innerHTML = ' \
				<div class="dsq-textarea-wrapper"> \
					<textarea class="dsq-edit-textarea" id="dsq-edit-textarea-' + post_id + '">' + message.innerHTML + '</textarea> \
				</div> \
				<div class="dsq-save-edit"> \
					<button onclick="Dsq.Templates.editComment(this, ' + post_id + ')" class="dsq-button-small">Save Edit</button> \
				</div> \
				<div id="dsq-edit-iframe-' + post_id + '" style="display: none"></div> \
				';

				body.appendChild(edit_area);

				if (!Dsq.frames['edit_' + post_id]) {
					var _meta = Dsq.jsonData.posts[post_id];
					Dsq.frames['edit_' + post_id] = new Dsq.ReplyFrame(Dsq.$('dsq-edit-iframe-' + post_id), post_id);
					Dsq.frames['edit_' + post_id].init();
					Dsq.frames['edit_' + post_id].setState(post_id, _meta.depth);
				}
			}
		} else {

			message.style.display = 'block';
			Dsq.$('dsq-edit-' + post_id).style.display = 'none';
		}
		
		Dsq.Post.stateEditToggled[post_id] = !Dsq.Post.stateEditToggled[post_id];
	};
	
	this.edit = function(el, post_id) {

		Dsq.Templates.toggleEdit(post_id);
	};

	this.toggleReply = function(post_id, button) {
		
		if(!this.stateReplyToggled[post_id]) {

			if (Dsq.$('dsq-reply-post-' + post_id)) {
				Dsq.$('dsq-append-post-' + post_id).style.display = 'block';
			} else {
				Dsq.$('dsq-append-post-' + post_id).innerHTML = Dsq.Templates.postBox(post_id);
				var container = Dsq.$('dsq-textarea-wrapper-' + post_id);
				if (!Dsq.frames['reply_' + post_id] && container) {
					var _meta = Dsq.jsonData.posts[post_id];
					Dsq.frames['reply_' + post_id] = new Dsq.ReplyFrame(container, post_id);
					Dsq.frames['reply_' + post_id].init(function() {

						Dsq.$('dsq-append-post-' + post_id).innerHTML = Dsq.Templates.postBox(post_id, true);
						Dsq.$('dsq-form-area-' + post_id).innerHTML = '';

						var theme = (typeof disqus_frame_theme == 'undefined') ? 'default' : disqus_frame_theme;
						Dsq.Iframes.showReplyIframeInContainer(Dsq.$('dsq-form-area-' + post_id), post_id, {theme: theme});

					});
					Dsq.frames['reply_' + post_id].setState(post_id, _meta.depth);
				}
			}
			Dsq.$('dsq-append-post-' + post_id).className = 'dsq-append-post';
			Dsq.$('dsq-comment-footer-reply-' + post_id).className = 'dsq-comment-footer-reply-active';
			
		} else {

			Dsq.$('dsq-append-post-' + post_id).style.display = 'none';
			Dsq.$('dsq-append-post-' + post_id).className = '';
			Dsq.$('dsq-comment-footer-reply-' + post_id).className = 'dsq-comment-footer-reply';
		}
		
		this.stateReplyToggled[post_id] = !this.stateReplyToggled[post_id];

		if(Dsq.Utils.ie && this.stateReplyToggled[post_id]) {

		}

		Dsq.Events.fire(Dsq.Events.REPLY_IFRAME_TOGGLED, {
			postId: post_id,
			opened: this.stateReplyToggled[post_id]
		});
	};
	
	this.moderateOptions = function(post_id) {
		var _meta = Dsq.jsonData.posts[post_id];
		var userData = Dsq.jsonData['users'][_meta.user_key];
		
		if(!Dsq.jsonData.request.is_moderator && !Dsq.jsonData.request.is_global_moderator) { return false; }

		var html;
		
		html = ' \
		<div class="dsq-moderate-options"> \
		<table>'
		+ (_meta.email ? '<tr><td>Email</td><td>' + _meta.email + '</td></tr>' : '')
		+ (_meta.ip ? '<tr><td>IP address</td><td>' + _meta.ip + '</td></tr>' : '')
		+ '<tr> \
			<td>Actions</td> \
			<td><ul>'
			+ (Dsq.jsonData.request.moderator_can_edit
				? '<li><a href="#" onclick="Dsq.Post.edit(this, ' + post_id + '); Dsq.Popup._closePopup(null, true); return false;">Edit Comment</a></li>'
				: '')
			+ '<li><a href="#" onclick="Dsq.Post.removePost(' + post_id + ', 1); Dsq.Popup._closePopup(null, true); return false;">Delete Comment</a></li> \
			<li><a href="#" onclick="Dsq.Post.reportSpam(' + post_id + '); Dsq.Popup._closePopup(null, true); return false;">Mark Spam</a></li> \
			<li><a href="#" onclick="Dsq.Popup.blacklist(' + post_id + '); return false">Block User</a></li> \
			</ul></td> \
			</table> \
		</div> \
		';
		
		html += '<p>Go to the full <a href="http://disqus.com/comments/moderate/" target="_blank">moderate panel</a> for more options.</p>';
		
		return Dsq.Popup.popModal(html, 'Moderate Options', post_id);
	};
	
	this.placeholder = {
		'class': 'dsq-placeholder',
		'name': Dsq.Strings.NAME,
		'email': Dsq.Strings.EMAIL,
		'website': Dsq.Strings.WEBSITE + ' (' + Dsq.Strings.OPTIONAL.toLowerCase() + ')'
	};
	
	this.handlePlaceholder = function(evt, el, key) {
		var placeholder = Dsq.Templates.placeholder[key];
		var className = Dsq.Templates.placeholder['class'];
		
		switch(evt.type) {
			case 'focus':
				if(el.value == placeholder) {
					el.value = '';
					el.className = '';
				}
				break;

			case 'blur':
				if(el.value == '') {
					el.value = placeholder;
					el.className = className;
				}
				break;
			default:
				break;
		}
	};
	
	this.paginate = function(page, el_clicked) {

		var extra_params = '';

		if(typeof disqus_per_page != 'undefined') {
			extra_params += '&per_page=' + disqus_per_page;
		}
		if(typeof disqus_sort != 'undefined') {
			extra_params += '&sort=' + disqus_sort;
		}

		Dsq.$('dsq-pagination').innerHTML += '<img src="http://media.disqus.com/images/loading-small.gif">';
		
		if(el_clicked) {
			Dsq.Templates.setLoadingButton(el_clicked);
		}
		
		Dsq.Utils.execScript('http://disqus.com/forums/jackandjillpolitics/thread.js'
			+ '?slug='	+ 'memo_to_press_barack_obama_is_not_running_for_entertainer_in_chief_99'
			+ '&p='		+ page
			+ extra_params);
	};
	
	
	this.rate = function(el, id, vote) {


		if(Dsq.jsonData.request.is_authenticated || Dsq.jsonData.forum.allow_anon_votes) {
			if(vote == 1) {
				Dsq.$('dsq-like-' + id).innerHTML = '<img src="http://media.disqus.com/images/loading-small.gif">';
			}
			Dsq.Utils.execScript('http://disqus.com/forums/jackandjillpolitics/vote.js'
				+ '?post_id='    + id
				+ '&vote='        + vote);
		} else {
			Dsq.Popup.login('To rate, please log in');
		}
	};

	this.voted = function(post_id, points, vote) {

		Dsq.$('dsq-like-pts-' + post_id).innerHTML = points + Dsq.Utils.pluralize(points, ' person', ' people') + ' liked this.';

		if(vote) {
			Dsq.$('dsq-like-' + post_id).innerHTML = 'You liked this.&nbsp;&nbsp;';
		}
	};




	this.postComment_onSuccess = function(response, parent_post_id, post_id) {
		var approved = response.message.post_meta.approved;

		if (parent_post_id) {
			Dsq.Post.toggleReply(parent_post_id);
		}

		Dsq.Popup._closePopup(null, true);
		
		if (approved) {
			Dsq.Post.incrementPostCount();
			Dsq.Post.outlineComment(post_id);
		} else {			
			var unapproved_msg = 'Thanks for posting!\
	 Your comment must be approved by a moderator before appearing here.\
			';
			Dsq.Popup.popModal(unapproved_msg, 'Comment awaiting approval', post_id);
		}

		var sharing_results = response.message.sharing_results;
		var sharing_errors = '';
		for (var service in sharing_results) {
			if (sharing_results.hasOwnProperty(service) === true) {
				if (sharing_results[service].error === true) {
					sharing_errors += service + ', ';
				}
			}
		}

		if (sharing_results.facebook && sharing_results.facebook.callback) {
			FB.ensureInit(function() {
				FB.Connect.streamPublish('', sharing_results.facebook.attachment);
			});
		}

		if (sharing_errors !== '') {
			var message = 'Your comment was posted, but there were errors sharing with the following connections: ';
			message += sharing_errors.replace(/,\s$/, '');
			message += '<p><a href="' + Dsq.jsonData.settings.disqus_url + '/profile/connections" target="_blank">Configure your connections here</a></p>'
			Dsq.Popup.popModal(message, 'Sharing options');
		}

		Dsq.Templates.setLoadingButton(false);
	};

	this.postComment_onFailure = function(response, parent_post_id, post_id) {

		Dsq.Templates.setLoadingButton(false);
	};
};




// TODO: It might be faster to use string methods to find all <li (...) </li> blocks and pass to Dsq.PostHandler manually.
Dsq.CommentsHandler = function(str, head, post_id, content, tail, offset, s) {
	var prepend_post = Dsq.Templates.prependPost(post_id);
	var append_post = Dsq.Templates.appendPost(post_id);

	content = content.replace(Dsq.POST_RE, Dsq.PostHandler);
	Dsq.Templates.postLoopCounter++;
	head = Dsq.Templates.Filters.commentContainer(post_id, head);
	return prepend_post + head + content + tail + append_post;
};

Dsq.PostHandler = function(str, h_head, post_id, h_content, h_tail, b_head, b_content, b_tail, offset, s) {
	var prepend_header = Dsq.Templates.postPrependHeader(post_id);
	var append_header = Dsq.Templates.postAppendHeader(post_id);
	var prepend_body = Dsq.Templates.preBody(post_id);
	var append_body = Dsq.Templates.postBody(post_id);
	var append_footer = Dsq.Templates.postFooter(post_id);

	b_content = b_content.replace(Dsq.POST_BODY_RE, Dsq.PostBodyHandler);
	return h_head + prepend_header + h_content + append_header + h_tail + b_head + prepend_body + b_content + append_body + b_tail + append_footer;
};

Dsq.PostBodyHandler = function(str, head, post_id, content, tail, offset, s) {
	content = Dsq.Templates.Filters.commentContent(post_id, content);
	return head + content + tail;
};

Dsq.MediaPostHandler = function(str, args, offset, s) {
	args = args.split(' ');
	if(args[0] == 'seesmic') {
		return '<br />' + Dsq.Templates.mediaSeesmic(args[1], args[2]);
	}
	return '';
};


/**
 * Shorcuts
 */
Dsq.$ = function(element) { return document.getElementById(element); };
Dsq.$b = document.body || document.getElementsByTagName('body')[0];


/**
 * Dsq.Debug: Logging functions.
 */

Dsq.Debug = new function() {this.log=function(s){};this.profile=function(f){if(typeof f == 'function')return f();else return eval(f);};};


/**
 * Dsq.Urls: URL paths
 */
Dsq.Urls = new function() {
	this.LOGIN = '/profile/login/';
	this.LOGOUT = '/logout/';
	this.REPLY = 'http://jackandjillpolitics.disqus.com/memo_to_press_barack_obama_is_not_running_for_entertainer_in_chief_99/reply.html';
	this.REQUEST_USER_PROFILE = '/AnonymousUser/';
	this.REQUEST_USER_AVATAR = 'http://media.disqus.com/images/noavatar92.png';
};
// Dsq.Urls

/**
 * Dsq.Validators: Validation for form fields
 */
Dsq.Validators = new function() {
	this.VALID_EMAIL_RE = /^[a-z0-9\-\_\+]+(\.[a-z0-9\-\_\+]+)*\@(([a-z0-9\-\_\+]+(\.[a-z0-9\-\_\+]+)*)+\.[a-z]{2,}|([0-9]+\.){3}[0-9]+)$/i;
	this.name = function(name) {
		var error = false;

		if(typeof Dsq.Templates.placeholder !== 'undefined' &&
		   name == Dsq.Templates.placeholder.name) {
			error = true;
		}
		if(name.length <= 1) {
			error = true;
		}

		if(error) {
			return "Please enter a name to comment.";
		} else {
			return true;
		}
	};
	this.email = function(addr) {
		if(Dsq.Validators.VALID_EMAIL_RE.test(addr)) {
			return true;
		} else {
			return "Please enter a valid email to comment.";
		}
	};
	this.url = function(addr) {
		if(!addr || addr.indexOf('.') != -1) {
			return true;
		} else {
			return "Please check your website URL (this field is optional).";
		}
	};

	this.validate = function(bulk_validation, failure_callback) {
		failure_callback = failure_callback || function(e){ alert(e); };

		for(var i = 0; i < bulk_validation.length; i++) {
			v = bulk_validation[i];
			ret = v.validator(v.value);
			if(ret !== true) {
				failure_callback(ret);
				return false;
			}
		}
		return true;
	};
};

/**
 * Dsq.Utils: Generic utility functions.
 */
Dsq.Utils = new function() {
	this.ie = /msie/i.test(navigator.userAgent) && !/opera/i.test(navigator.userAgent);
	this.ie7 = (document.all && !window.opera && window.XMLHttpRequest) ? true : false;
	this.ie6 = (!window.XMLHttpRequest) ? true: false;
	this.webkit = navigator.userAgent.indexOf('AppleWebKit/') >= 0;
	this.gebiFromElementCollectionCache = {};
	this._styleSheet = null;

	this.gebiFromElement = function(el, id, tag) {
		// This only method only helps IE.
		if(!this.ie) {
			return Dsq.$(id);
		} else {
			var cacheKey = el.id + '-' + tag;
			tag = tag || 'div';
			if(typeof this.gebiFromElementCollectionCache[cacheKey] != 'undefined') {
				collection = this.gebiFromElementCollectionCache[cacheKey];
			} else {
				collection = el.getElementsByTagName(tag);
				this.gebiFromElementCollectionCache[cacheKey] = collection;
			}

			for(var i = 0; i < collection.length; i++) {
				if(collection[i].id == id) {
					return collection[i];
				}
			}
			return null;
		}
	};

	this.execOnReady = function(func) {
		var node = document.createElement('document:ready');
		try {
			node.doScroll('left');
			func();
			node = null;
		} catch(err) {
			setTimeout(function() { Dsq.Utils.execOnReady(func); }, 10);
		}
	};


	// Courtesy of http://www.quirksmode.org/js/cookies.html
	this.createCookie = function(name,value,days) {
		if (days) {
			var date = new Date();
			date.setTime(date.getTime()+(days*24*60*60*1000));
			var expires = "; expires="+date.toGMTString();
		}
		else var expires = "";
		document.cookie = name+"="+value+expires+"; path=/";
	};

	this.readCookie = function(name) {
		var nameEQ = name + "=";
		var ca = document.cookie.split(';');
		for(var i=0;i < ca.length;i++) {
			var c = ca[i];
			while (c.charAt(0)==' ') c = c.substring(1,c.length);
			if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
		}
		return null;
	};

	this.eraseCookie = function(name) {
		Dsq.Utils.createCookie(name,"",-1);
	};

	this.deleteNode = function(node) {
		if(node) {
			this.deleteChildren(node);
			if(typeof node.outerHTML != 'undefined') { node.outerHTML = ''; }
			else if(node.parentNode) { node.parentNode.removeChild(node); }
			delete node;
		}
	};

	this.deleteChildren = function(node) {
		if(node) {
			for(var x = node.childNodes.length-1; x >= 0; x--) {
				var childNode = node.childNodes[x];
				if(childNode.hasChildNodes()) { this.deleteChildren(childNode); }
				if(typeof childNode.outerHTML != 'undefined') { childNode.outerHTML = ''; }
				else node.removeChild(childNode);
				delete childNode;
			}
		}
	};

	this.findPos = function(obj) {
		var curleft = 0;
		var curtop = 0;
		if (obj.offsetParent) {
			do {
				curleft += obj.offsetLeft;
				curtop += obj.offsetTop;
			} while (obj = obj.offsetParent);
		}
		return [curleft,curtop];
	};

	this.getWindowSize = function() {
		var windowWidth = -1;
		var windowHeight = -1;

		if(typeof(window.innerWidth) == 'number') { //Non-IE
			windowWidth = window.innerWidth;
			windowHeight = window.innerHeight;
		} else if(document.documentElement) { // IE 6+ in 'standards compliant mode'
			windowWidth = document.documentElement.clientWidth || document.body.clientWidth;
			windowHeight = document.documentElement.clientHeight || document.body.clientHeight;
		}

		return [windowWidth, windowHeight];
	}

	this.getScrollPos = function() {
		var scrollWidth, scrollTop;

		if(document.documentElement && (document.documentElement.scrollTop || document.documentElement.scrollWidth)) {
			scrollWidth = document.documentElement.scrollWidth;
			// IE is weird here.  If no doctype is provided, document.body.scrollTop is 0,
			// otherwise document.documentElement.scrollTop is 0.
			scrollTop = document.documentElement.scrollTop || document.body.scrollTop;
		} else if(document.body.scrollTop && document.body.scrollWidth) {
			scrollWidth = document.body.scrollWidth;
			scrollTop = document.body.scrollTop;
		}

		return [scrollWidth, scrollTop];
	}

	this.addEventListener = function(instance, eventName, listener) {
		var listenerFn = listener;
		if (instance.addEventListener) {
			instance.addEventListener(eventName, listenerFn, false);
		} else if (instance.attachEvent) {
			listenerFn = function() {
				listener(window.event);
			};
			instance.attachEvent("on" + eventName, listenerFn);
		} else {
			throw new Error("Event registration not supported");
		}
		return {
			instance: instance,
			name: eventName,
			listener: listenerFn
		};
	};

	this.removeEventListener = function(event) {
		var instance = event.instance;
		if (instance.removeEventListener) {
			instance.removeEventListener(event.name, event.listener, false);
		} else if (instance.detachEvent) {
			instance.detachEvent("on" + event.name, event.listener);
		}
	};

	this.fixIframesIE = function(id) {
		var disqusThread = Dsq.$(disqus_container_id);
		var iframes = disqusThread.getElementsByTagName('iframe');

		if(id) {
			var container = Dsq.$(id);
		} else {
			var container = Dsq.$('dsq-content');
		}

		for(i = 0; i < iframes.length; i++) {
			if (container) {
				iframes[i].style.width = container.offsetWidth;
			}
		}
	};

	this.getElementsByClassName = function(oElm, strTagName, strClassName) {
	/* Credit: Jonathan Snook [http://www.snook.ca/jonathan], Robert Nyman [http://www.robertnyman.com] */
		var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
		var arrReturnElements = new Array();
		strClassName = strClassName.replace(/\-/g, "\\-");
		var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
		var oElement;
		for(var i = 0; i < arrElements.length; i++) {
			oElement = arrElements[i];
			if(oRegExp.test(oElement.className)) {
				arrReturnElements.push(oElement);
			}
		}
		return (arrReturnElements);
	};

	this.postToUrl = function(url, post_data, opt_redirect) {
		var form = document.createElement('form');
		var iframe_container = document.createElement('div');
		var id = 'dsq-temp-iframe-' + (new Date()).getTime();

		form.method = 'POST';
		form.action = url;
		if (!opt_redirect) {
			form.target = id;
		}
		iframe_container.innerHTML = '<iframe style="display:none" name="' + id + '" id="' + id + '"></iframe>';

		for(var key in post_data) {
			if(post_data.hasOwnProperty(key)) {
				var input = document.createElement('input');
				input.name = key;
				input.type = 'hidden';
				input.value = post_data[key];

				form.appendChild(input);
			}
		}

		Dsq.$b.appendChild(iframe_container);
		Dsq.$b.appendChild(form);
		form.submit();
	};

	// Strips integer id from id of element in the form ('some-id-###')
	this.extractId = function(e) {
		var chunks = e.id.split('-');
		if(chunks.length <= 1) {
			return 0;
		} else {
			return parseInt(chunks[chunks.length-1]);
		}
	};

	this.getStyle = function(el, styleProp) {
		if(el.currentStyle) {
			var y = el.currentStyle[styleProp];
		} else if(window.getComputedStyle) {
			var y = document.defaultView.getComputedStyle(el, null).getPropertyValue(styleProp);
		}

		if(y == 'transparent' || y == '') {
			this.getStyle(el.parentNode, styleProp);
		} else {
			return y;
		}
	};

	this.execScript = function(url, append_qs, container) {
		var script = document.createElement('script');
		append_qs = typeof append_qs == 'undefined' ? true : append_qs;
		container = container || Dsq.container;

		if(append_qs) {
			var j = (url.indexOf('?') >= 0) ? '&' : '?';
			url += j + (new Date()).getTime();
		}
		script.type = 'text/javascript';
		script.charset = 'UTF-8';
		script.src = url;
		container.appendChild(script);
		return script;
	};

	this.pluralize = function(num, singular, plural) {
		return (num != 1) ? plural || 's' : singular || '';
	};

	this.getRequestParams = function(queryString /* optional */) {
		var pairs, tuple;
		var params = {};

		queryString = queryString || window.location.search.substring(1);
		pairs = queryString.split('&');

		for (var i = 0, pair; pair = pairs[i]; i++) {
			tuple = pair.split('=');
			params[tuple[0]] = (tuple[1] || true);
		}

		return params;
	};

	this.addCssRule = function(selector, styleText, index) {
		var stylesheet;
		index = index || 0;

		if(!this._styleSheet) {
			var styleEl = document.createElement('style');
			document.getElementsByTagName('head')[0].appendChild(styleEl);
			this._styleSheet = styleEl.sheet;
			if(!this._styleSheet) {
				// IE does not like our newly created stylesheet.
				this._styleSheet = document.styleSheets[document.styleSheets.length-1];
			}
		}
		stylesheet = this._styleSheet;

		if(stylesheet.insertRule) {
			var ruleText = selector + ' { ' + styleText + ' }';
			if(index == -1) {
				index = stylesheet.cssRules.length;
			}
			stylesheet.insertRule(ruleText, index);
		} else if(stylesheet.addRule) {
			stylesheet.addRule(selector, styleText, index);
		}
	};

	this.forEachIn = function(obj, callback) {
		for(var key in obj) {
			if(obj.hasOwnProperty(key)) {
				callback(key, obj[key]);
			}
		}
	};

	this._interpolateGlobalContext = {
		// values that get used a lot and are global to the request
		'profile_url': Dsq.Urls.REQUEST_USER_PROFILE,

		'disqus_url': Dsq.jsonData.settings.disqus_url,
		'media_url': Dsq.jsonData.settings.media_url,
		'request_username': Dsq.jsonData.request.username,
		'request_display_username': Dsq.jsonData.request.display_username,
		'forum_name': Dsq.jsonData.forum.name
	};

	this.renderFromContextStack = function(key, contexts) {
		// Returns the first instance of `key` in the array of objects `contexts` or else ''
		for (var i=0; i<contexts.length; i++) {
			if (contexts[i][key] !== undefined) {
				return String(contexts[i][key]);
			}
		}
		throw new Error('key ' + key + ' not found in context');
	};

	var that = this;
	this.interpolate = function(fmt, opt_localContext) {
		// Interpolate `fmt` named-format string with an assumed global context.
		// Based on `interpolate` in django.views.i18n
		var contextStack = [opt_localContext || {}, that._interpolateGlobalContext];
		return fmt.replace(/%\(\w+\)s/g, function(match){
			return that.renderFromContextStack(match.slice(2,-2), contextStack);
		});
	};

	this.stripTags = function(s) {
		// Removes HTML tags from `s`
		return s.replace(/(<([^>]+)>)/g,"");

	};

	this.assert = function(b) {
		if (!b) {
			throw new Error('Assertion error.');
		}
	};

};
// Dsq.Utils

/**
 * Dsq.Popup: Popup helper functions.
 */
Dsq.Popup = new function() {
	this.timeHide = new Array();
	this.timeShow = new Array();
	this.activePopup = {};
	this.profileCache = {};
	this.statusCache = {};

	this.showTimer = function(post_id) {
		// clear the hide timer
		clearTimeout(this.timeHide[post_id]);

		// start the timer
		if(!Dsq.Popup.profileIsOn && !Dsq.Thread.adminIsOn) {
			this.timeShow[post_id] = setTimeout("Dsq.Popup.popProfile(\"" + post_id + "\")", 400);
		}
	};

	this.hideTimer = function(post_id) {
		// clear the show timer
		clearTimeout(this.timeShow[post_id]);
	};

	this.updateProfile = function(username) {
		// Callback from /embed/profile.js
		if (this.statusCache[username]) {
			var statusEl = Dsq.$('dsq-profile-status-' + username);
			statusEl.innerHTML = this.statusCache[username];
			statusEl.style.display = 'block';
		}

		if (this.profileCache[username]) {
			var _cache = this.profileCache[username];

			var _genhtml = function(text) { return '<span><big>' + text + '</big></span>'; };
			var _no_comments = _genhtml(Dsq.FmtStrings.NUMBER_OF_COMMENTS(_cache.comments_count));
			var _no_likes = _genhtml(Dsq.FmtStrings.NUMBER_OF_LIKES(_cache.likes_count));
			var _no_points = _genhtml(Dsq.FmtStrings.NUMBER_OF_POINTS(_cache.points));

			var statsEl = Dsq.$('dsq-popup-profile-user-stats-' + username);
			statsEl.innerHTML = '';

			if (Dsq.jsonData.users[username].registered) {
				statsEl.innerHTML = _no_comments + _no_likes;
			}
			statsEl.innerHTML += _no_points;

			var activeSites = '';
			for (var i = 0; i < _cache.active_sites.length; i++) {
				var site = _cache.active_sites[i];
				activeSites += '<li><a href="' + site.url + '"> \
					<img src="' + site.favicon + '"/ width="16" height="16"/></a>\
					<a href="' + site.url + '">' + site.name + '</a></li>';
			}
			if (activeSites !== '') {
				Dsq.$('dsq-popup-profile-active-sites-' + username).innerHTML = activeSites;
			} else {
				Dsq.$('dsq-popup-profile-active-sites-' + username).innerHTML = 'This site.';
			}

			var moderatedSites = '';
			for (var i = 0; i < _cache.moderated_sites.length; i++) {
				var site = _cache.moderated_sites[i];
				moderatedSites += '<li><a href="' + site.url + '"> \
					<img src="' + site.favicon + '"/ width="16" height="16"/></a>\
					<a href="' + site.url + '">' + site.name + '</a></li>';
			}
			if (moderatedSites !== '') {
				Dsq.$('dsq-popup-profile-moderated-' + username).innerHTML = moderatedSites;
			} else {
				Dsq.$('dsq-popup-profile-moderated-wrapper-' + username).innerHTML = '';
			}
		}

		// Reposition popup after full HTML is rendered
		if(Dsq.Popup.activePopup && Dsq.Popup.activePopup.el) {
			Dsq.Popup.initPopup(Dsq.Popup.activePopup.el, Dsq.Popup.activePopup.id, Dsq.Popup.activePopup.type);
		}

	};

	this.showCookieMsgs = function() {
		var title = '';
		var message = '';
		var numAlerts = 0;

		Dsq.Utils.forEachIn(Dsq.jsonData.cookie_messages, function(k, v) {
			if (!v) return;

			switch(k) {
				// Cookie: Twitter
				case 'post_twitter':
					if (v === 'error') {
						title = 'Twitter Error!';
						message += '<li id="dsq-msg-twitter-error">Oops, we couldn\'t tweet this comment. Please check your <a href="http://disqus.com/account/services">account settings</a>.</li>';
					} else {
						var _msg = v.split(':');
						title = 'Tweeted!';
						message += '<li id="dsq-msg-twitter-success">Your comment was successfully tweeted. <a href="http://twitter.com/' + _msg[0] + '/status/' + _msg[1] + '">Click here to view the tweet</a>.</li>';
					}
					break;
				// Cookie: Unapproved Post
				case 'post_not_approved':
					title = 'Comment awaiting approval by a moderator';
					message += '<li id="dsq-msg-post-not-approved">Your comment must be approved by a moderator before appearing here.</li>';
					break;
				// Cookie: Profile Found
				case 'post_has_profile':
					title = 'Use your existing commenter profile';
					message += '<li id="dsq-msg-post-has-profile">You have just posted your commment as a <span class="dsq-badge-guest">Guest</span>, but you may already have a <span class="logo-disqus">Disqus</span> Profile.<br /><br /><a href="http://disqus.com/claim">Log in and claim this comment!</a></li>';
					break;
				case 'user_created':
					var _data = v.split(':');
					title = 'Profile created!';
					message += '<li id="dsq-msg-user-created">You have just created a <span class="logo-disqus">Disqus</span> Profile, the best way to claim, manage, and track your comments all over the web. \
					<br /><br />A confirmation is being sent to <strong>' + _data[1] + '</strong>. Please check for this email in order to verify your profile. \
					<ul class="dsq-list-tick"> \
						<li>Your username is <strong>' + _data[0] +'</strong>. <a href="http://disqus.com/people/' + _data[0] + '/" target="_blank">Click here to view your public profile</a>.</li> \
						<li>Be sure to set your profile picture, as well as connect your <span class="dsq-badge-facebook">Facebook</span> and <span class="dsq-badge-twitter">Twitter</span> accounts. <a href="http://disqus.com/account/" target="_blank">Click here for account settings</a>.</li> \
					</ul> \
					</li>'
					break;
				default:
					break;
			}
			numAlerts++;
		});

		if(numAlerts > 1) {
			message = '<ul class="dsq-list-bluebullet">' + message;
			message += '</ul>';
			title = 'Thanks for posting!';
		}
		if(numAlerts > 0) {
			if(typeof(disqus_cookie_msgs) == 'function') {
				disqus_cookie_msgs(message, title);
			} else {
				Dsq.Popup.popModal(message, title);
			}
		}
	};

	this.helpBadges = function(post_id) {
		var html = ' \
			<ul class="dsq-popup-help"> \
				<li><span class="dsq-badge dsq-badge-verified">Verified</span> has a <span class="logo-disqus">Disqus</span> Profile with a confirmed email address.</li> \
				<li><span class="dsq-badge dsq-badge-registered">Registered</span> has a <span class="logo-disqus">Disqus</span> Profile, but has not yet confirmed his or her email address.</li> \
				<li><span class="dsq-badge dsq-badge-guest">Guest</span> is not logged in with any account and has not claimed his or her comments.</li> \
				<li class="dsq-help-otheraccts">Other accounts</li> \
				<li><span class="dsq-badge dsq-badge-facebook">Facebook</span> is using his or her Facebook profile via Facebook Connect.</li> \
				<li><span class="dsq-badge dsq-badge-twitter">Twitter</span> is using his or her Twitter profile via Twitter Sign-in.</li> \
				<li><span class="dsq-badge dsq-badge-openid">OpenID</span> is using his or her OpenID.</li> \
			</ul> \
		';

		this.popModal(html, 'Help: Types of Commenters', post_id);
		return;
	};

	this.permalink = function(post_id) {
		var header = 'Link to this comment';
		var body = '<strong>You are anchored to</strong>:<br />' + document.location.protocol + '//' + document.location.host + document.location.pathname + document.location.search + '#comment-' + post_id;

		this.popModal(body, header, post_id);
	};

	this.login = function(header, body) {
		var h = header || 'Login or Register';
		var b = body || '';
		b += Dsq.Templates.frameLogin({id: 'dsq-popup-login'});
		b += '</iframe>'; // HACK: Sometimes there is something funky with the IFRAME SRC that causes no end tag
		this.popModal(b, h, null, true, 'dsq-popup-login');
	};

	this.blacklist = function(id) {
		var _meta = Dsq.jsonData.posts[id];
		var userData = Dsq.jsonData['users'][_meta.user_key];
		var title = 'Add to Blacklist';
		var message = ' \
		Adding this person to the blacklist will block him or her from commenting on this site. Check the following types that you would like to add to the blacklist:'
		+ (userData['registered'] ?
			'<div class="dsq-blacklist-option"> \
				<input id="dsq-blacklist-username" type="checkbox" checked> \
				<label for="dsq-blacklist-username"><strong>Username</strong>: ' + userData['username'] + '</label> \
			</div>'
			: '')
		+ (_meta.email ?
			'<div class="dsq-blacklist-option"> \
				<input id="dsq-blacklist-email" type="checkbox" checked> \
				<label for="dsq-blacklist-email"><strong>Email address</strong>: ' + _meta.email + '</label> \
			</div>'
			: '')
		+ '<div class="dsq-blacklist-option"> \
			<input id="dsq-blacklist-ip" type="checkbox" onclick="Dsq.$(\'dsq-blacklist-ip-warning\').style.display=\'block\'"> \
			<label for="dsq-blacklist-ip"><strong>IP address</strong>: ' + _meta.ip + '</label> \
		</div> \
		';

		message += ' \
			<p id="dsq-blacklist-ip-warning" style="display:none">	\
				Note: Blocking this person\'s IP address may also unintentionally prevent others, who share his/her IP address, from commenting on this site. \
				This may include people who are sharing the same computer, living in the same house, or using the same Internet provider. Only block an IP address as a last resort. \
			</p> \
		';

		message += ' \
			<p style="text-align:center"><button onclick="Dsq.Post.blockUser(' + id + '); this.disabled=true; this.innerHTML=\'Just one moment...\'">Add to Blacklist</button></p> \
		';

		Dsq.Popup.popModal(message, title);
	};

	this.remoteAccountSettings = function() {
		var body = '';
		// Set up IFrame.
		var params = {};
		var base_url = 'http://disqus.com/forums/jackandjillpolitics/_auth/embed/remote_settings/';
		var attributes = {id: 'dsq-popup-account-settings'};
		if (typeof disqus_frame_theme != 'undefined') {
			params['theme'] = disqus_frame_theme;
		}

		body = Dsq.Templates._frameGeneric(base_url, params, attributes);
		this.popModal(body, 'Account Settings', null, true, 'dsq-popup-account-settings');
	};

	this.popModal = function(message, title, post_id, use_listener, extra_classes) {
		var container = document.createElement('div');
		var header, body;

		Dsq.Popup._closePopup(null, true);

		if(typeof(title) == 'undefined') { title = ''; }
		if(typeof(use_listener) == 'undefined') { use_listener = true; }

		if(post_id) {
			container.id = 'dsq-popup-message-' + post_id;
		} else {
			container.id = 'dsq-popup-message';
		}

		header = title;
		body = message;

		container.innerHTML = Dsq.Templates.popupModal(header, body);
		Dsq.Popup.initPopup(container, post_id, 'message', extra_classes);
		if(use_listener) {
			Dsq.Popup.popupListener = Dsq.Utils.addEventListener(document, 'mouseup', Dsq.Popup._closePopup);
		}
	};

	this.popAlert = this.popModal;

	this.loading = function(post_id) {
		var title = Dsq.Strings.JUST_A_MOMENT;
		var body = '<div style="text-align:center; padding: 5px 0 10px 0"><img src="http://media.disqus.com/images/loading.gif" alt="" /></div>'
		Dsq.Popup.lightbox(body, title, post_id);
	};

	this.lightbox = function(message, title, post_id) {
		// Wraps Dsq.Popup.popModal

		var overlay = document.createElement('div');
		overlay.id = 'dsq-overlay';
		overlay.className = 'dsq-overlay';
		Dsq.$b.appendChild(overlay);
		
		Dsq.Popup.popModal(message, title, post_id, false, 'dsq-lightbox');
	};

	this.popProfile = function(post_id, userKey) {
		var post = Dsq.jsonData['posts'][post_id];
		if (post && post.has_been_anonymized) {
			Dsq.Popup.popModal('This message was anonymized by its previous owner.', 'Anonymized', post_id);
			return;
		}

		if(post_id) {
			userKey = Dsq.jsonData['posts'][post_id].user_key;	
		}
		var userData = Dsq.jsonData['users'][userKey];
		var elId = 'dsq-popup-profile-' + userKey;
		var container = document.createElement('div');

		if(this.activePopup.el) {
			this._closePopup(null, true);
			if(this.activePopup.linkClicked) {
				this.activePopup.linkClicked = false;
				return;
			}
		}

		container.id = elId;
		container.innerHTML = Dsq.Templates.popupProfile(userKey);

		this.initPopup(container, post_id, 'profile');
		this.popupListener = Dsq.Utils.addEventListener(document, 'mouseup', this._closePopup);

		if(!this.profileCache[userKey]) {
			Dsq.Utils.execScript('http://disqus.com/embed/profile.js'
				+ '?username=' + userKey
				+ '&anon=' + (userData['registered'] ? 0 : 1)
				+ '&f=' + Dsq.jsonData['request'].forum);
		} else {
			this.updateProfile(userKey);
		}
	};

	this._closePopup = function(e, force) {
		var activePopup = Dsq.Popup.activePopup.el;
		var id = Dsq.Popup.activePopup.id;
		var link = 'dsq-avatar-' + id; // HACK: Specific to profile toggle target

		// HACK: This event should be gone if there is no active popup.
		if(!activePopup) {
			return;
		}
		if(force || !Dsq.Popup.isClicked(e, activePopup.id)) {
			// TODO: This is breaking iE?
			if(Dsq.Popup.popupListener) {
				Dsq.Utils.removeEventListener(Dsq.Popup.popupListener);
			}
			
			// Kill overlay
			var overlay = Dsq.$('dsq-overlay');
			if(overlay) { Dsq.Utils.deleteNode(overlay); }
			
			try {
				Dsq.Utils.deleteNode(activePopup);
			} catch(e) {
				// HACK: IE6 throws an error when using deleteNode() with a node containing a <table> in the html.
				activePopup.parentNode.removeChild(activePopup);
			}
			Dsq.Popup.activePopup = {};
		}

		if(!force && Dsq.Popup.isClicked(e, link)) {
 			Dsq.Popup.activePopup.linkClicked = true;
		}

	};

	this.initPopup = function(popup, post_id, type, extra_classes) {
		popup.className = 'dsq-popup dsq-popup-' + type + ' ' + (extra_classes ? extra_classes : '');
		if(Dsq.Utils.ie6 || Dsq.Utils.ie7) {
			// HACK: We can't modify the body before it's ready, so we need
			//       to use an IE-safe "DOMReady" workaround before loading
			//       our popup.
			Dsq.Utils.execOnReady(function() {Dsq.$b.appendChild(popup); });
		} else {
			Dsq.$b.appendChild(popup);
		}

		popup.style.display = 'block';

		var xPos = (Dsq.Utils.getWindowSize()[0] - popup.offsetWidth) / 2;
		var yPos = (Dsq.Utils.getWindowSize()[1] - popup.offsetHeight) / 2;

		if(Dsq.Utils.ie6) {
			yPos += Dsq.Utils.getScrollPos()[1];
		}

		popup.style.left = xPos + 'px';
		popup.style.top = yPos + 'px';

		Dsq.Popup.activePopup = {
			'el' : popup,
			'id' : post_id,
			'type': type,
			'linkClicked' : false
		};
	};

	this.isClicked = function(e, id) {
		var t = e.target || e.srcElement;
		while(t && t.parentNode) {
			if(t.id == id) {
				return true;
			}

			t = t.parentNode;
		}
		return false;
	};
};
// Dsq.Popup

/**
 * Dsq.Templates
 */
Dsq.Templates = new function() {
	/*
	 * Counter keeping track of the number of posts iterated over.
	 */
	this.postLoopCounter = 0;
	this.filters = {};
	this.addPostContainer = 'dsq-post-add';
	this.textareaContainer = 'dsq-post-add';

	this.registerTemplate = function(name, func) {
		this['$$_' + name] = func;

		if(typeof DsqLocal.Filters != 'undefined'
		&& typeof DsqLocal.Filters[name] == 'function') {
			// Push filters to this.filters to unify code.
			this.filters[name] = this.filters[name] || [];
			this.filters[name].push(DsqLocal.Filters[name]);
		}

		this[name] = function() {
			var ret;

			if(typeof DsqLocal.Templates != 'undefined'
			&& typeof DsqLocal.Templates[name] == 'function') {
				ret = DsqLocal.Templates[name].apply(this, arguments);
			}

			if(ret === undefined) {
				ret = this['$$_' + name].apply(this, arguments);
			}

			if(this.filters[name]) {
				var args = [ret];

				args.push.apply(args, arguments);
				for(var i = 0; i < this.filters[name].length; i++) {
					ret = this.filters[name][i].apply(this, args);
				}
			}

			return ret;
		};
	};

	this.registerFilter = function(name, func) {
		this.filters[name] = this.filters[name] || [];
		this.filters[name].push(func);
	};

	/**
	 * Dsq.Templates.Filters
	 */
	this.Filters = new function() {
		this.commentContainer = function(post_id, s) {
			var _meta = Dsq.jsonData.posts[post_id];
			var classes = [];
			if(Dsq.jsonData.request.page > 1) {
				classes.push('dsq-append');
			}

			//
			// Extra classes used for custom themes
			//

			if(_meta.depth) {
				classes.push('dsq-comment-child', 'dsq-depth-' + _meta.depth, 'dsq-parent-is-' + _meta.parent_post_id);
			}


			//

			if(_meta.author_is_creator) {
				// TODO: We need to deprecate the "special" class since it is not properly prefixed.
				classes.push('special', 'dsq-special');
			}
			if(_meta.author_is_moderator) {
				classes.push('dsq-moderator');
			}
			classes.push(['dsq-odd', 'dsq-even'][Dsq.Templates.postLoopCounter % 2]);

			s = s.substring(0, s.lastIndexOf('>'));
			return s + ' class="dsq-comment ' + classes.join(' ') + '" style="margin-left:' + _meta.depth*30 + 'px">';
		};

		this.commentContent = function(post_id, s) {
			var _meta = Dsq.jsonData.posts[post_id];
			if (_meta.killed) {
				return '<em>Comment removed.</em>';
			} else if (!_meta.approved) {
				return '<em>This comment was flagged for review.</em>';
			}

			s = s.replace(Dsq.MEDIA_POST_RE, Dsq.MediaPostHandler);
			return s;
		};
	};

	//
	// Thread
	//
	// TODO: These need to be stripped of all Django template tags.

	this.authPost = function() {
		if (!Dsq.jsonData.context.show_reply) {
			return '';
		}
		var result = [];
		result = result.concat([
				'<div id="dsq-auth"',
						Dsq.jsonData.integration.reply_position ? 'class="dsq-auth-bottom"' : '',
						'>',
					'<div class="dsq-by">',
						'<a href="http://disqus.com" target="_blank">',
							(Dsq.jsonData.integration.disqus_logo ?
								Dsq.Utils.interpolate('<img src="%(media_url)s/images/embed/by-disqus.png" alt="discussion by DISQUS">') :
								Dsq.Utils.interpolate('<img src="%(media_url)s/images/embed/dsq-button-120x19.png" alt="discussion by DISQUS">')
							),
						'</a>',
					'</div>',
					'<div class="dsq-auth-header">',
						'<h3 id="dsq-add-new-comment" class="dsq-h3-addcomment">',
								Dsq.Strings.ADD_NEW_COMMENT,
						'</h3>',
						'<div id="dsq-login">',
						(!Dsq.jsonData.request.is_authenticated && Dsq.jsonData.forum.allow_anon_post
								? '<p class="dsq-login-message" id="dsq-login-message">You are commenting as a <a class="dsq-help" title="Click for more information" href="#" onclick="Dsq.Popup.helpBadges(); return false">Guest</a>. You may select one to log into:</p>'
								: '')
		]);
		if (!Dsq.jsonData.request.is_authenticated) {
			result = result.concat([
							Dsq.Utils.interpolate(
								'<a id="dsq-login-toggle" href="%(disqus_url)s%(login_url)s?next=article:%(thread_id)s" onclick="Dsq.Popup.login(); return false"><img class="dsq-login-icon" src="%(media_url)s/images/dsq-profile-btn.png" title="%(log_into)s" alt="%(log_into)s"/></a>',
								{login_url: Dsq.Urls.LOGIN, thread_id: Dsq.jsonData.thread.id, log_into: Dsq.Strings.LOG_INTO_DISQUS}
								),
							'&nbsp; ',
							(Dsq.jsonData.context.use_fb_connect ?
								'<div id="dsq-fbc-login" onlogin="DisqusFbcParentController.onLogin()" size="medium" background="light" length="short" style="display:inline; margin-right:7px"></div>' :
								''
							),
							(Dsq.jsonData.context.use_twitter_signin ?
								Dsq.Utils.interpolate(
									'<div id="dsq-twitter-login" class="dsq-twitter-login" onclick="Dsq.Twitter.startTwitterConnect();" style="display:inline; cursor: pointer"><img src="%(media_url)s/images/twitter-signin-short.png" style="margin-right:7px" /></div>', {}) : ''),
							(Dsq.jsonData.context.use_openid ?
								Dsq.Utils.interpolate(
									'<div id="dsq-openid-login" class="dsq-openid-login" onclick="Dsq.OpenID.requestURL();" style="display:inline; cursor:pointer;"><img src="%(media_url)s/images/openid-login-button.png"/></div>', {}
								) : '')
			]);
		}
		result = result.concat([
						'</div>', // dsq-login
					'</div>', // dsq-auth-header
					'<div id="dsq-authenticated" class="dsq-authenticated" ',
						Dsq.jsonData.request.is_authenticated ? 'style="display:block"' : '',
						'>',
						'<div class="dsq-authenticated-pic">',
								Dsq.Utils.interpolate('<a href="%(url)s" title="%(request_display_username)s">' +
																			'<img class="dsq-post-avatar" src="%(avatar_url)s" alt="" /></a>',
																			{avatar_url: Dsq.Urls.REQUEST_USER_AVATAR,
																			url: (Dsq.jsonData.request.is_remote
																					 ? Dsq.jsonData.request.url
																					 : Dsq.jsonData.settings.disqus_url + Dsq.Urls.REQUEST_USER_PROFILE) }),
						'</div>',
						'<div class="dsq-authenticated-info">',
							'<ul>',
								'<li>',
									(Dsq.jsonData.request.is_remote
										? Dsq.FmtStrings.LOGGED_IN_AS(
												Dsq.Utils.interpolate('<a href="%(url)s" title="%(request_display_username)s">%(request_display_username)s</a>', {url:Dsq.jsonData.request.url})
										  )
										: Dsq.FmtStrings.LOGGED_IN_AS(
												Dsq.Utils.interpolate('<a href="%(disqus_url)s%(profile_url)s" title="%(request_display_username)s">%(request_display_username)s</a>')
											)
									),
								'</li>',
								'<li class="logout">',
									(!Dsq.jsonData.request.is_remote
										? Dsq.Utils.interpolate('<img class="dsq-login-icon" src="%(media_url)s/images/dsqicon12.png" alt="%(logged_in_as)s"/>&nbsp',
											{logged_in_as: Dsq.FmtStrings.LOGGED_IN_AS(Dsq.jsonData.request.display_username)})
										: ''),

									(!Dsq.jsonData.request.is_remote
										? Dsq.Utils.interpolate('<a href="%(disqus_url)s%(logout_url)s?ctkn=%(csrf_token)s" title="%(logout_from_disqus)s">',
											{logout_url: Dsq.Urls.LOGOUT, csrf_token: Dsq.CSRF_TOKEN, logout_from_disqus: Dsq.FmtStrings.LOGOUT_FROM('DISQUS')})
										: ((Dsq.jsonData.request.remote_domain == 'twitter')
												? Dsq.Utils.interpolate('using Twitter (<a href="%(disqus_url)s%(logout_url)s?ctkn=%(csrf_token)s" title="Logout">Logout</a>)',
												 {logout_url: Dsq.Urls.LOGOUT, csrf_token: Dsq.CSRF_TOKEN})
												: ((Dsq.jsonData.request.remote_domain == 'openid')
													 ? Dsq.Utils.interpolate('using OpenID (<a href="%(disqus_url)s%(logout_url)s?ctkn=%(csrf_token)s" title="Logout">Logout</a>)',
													 {logout_url: Dsq.Urls.LOGOUT, csrf_token: Dsq.CSRF_TOKEN})
													 : ''
													)
											)
									),

									(!Dsq.jsonData.request.is_remote ? Dsq.FmtStrings.LOGOUT_FROM('<span class="logo-disqus">DISQUS</span>') : ''),
									'</a>',
								'</li>',
							'</ul>',
						'</div>',
					'</div>'
		]);
		if (Dsq.jsonData.context.use_fb_connect) {
			result = result.concat([
					'<div id="dsq-fbc-authenticated" class="dsq-authenticated">',
						'<div id="dsq-fbc-profilepic" class="dsq-authenticated-pic" uid="loggedinuser" type="FB.XFBML.ProfilePic" size="square" facebook-logo="true"></div>',
						'<div class="dsq-authenticated-info">',
							'<ul>',
								'<li>',
									'Logged in as <span id="dsq-fbc-name" uid="loggedinuser" type="FB.XFBML.Name" linked="true" useyou="false"></span>',
								'</li>',
								'<li class="logout">using Facebook Connect <a href="#" onclick="javascript:DisqusFbcParentController.logout();return false;">(Logout)</a></li>',
							'</ul>',
						'</div>',
					'</div>'
			]);
		}
		result = result.concat([
				'</div>', // dsq-auth
				'<div id="dsq-toolbar-items">',
				'</div>'
		]);
		result = result.concat([
					//
					//
					//
				((!Dsq.jsonData.forum.allow_anon_post && !Dsq.jsonData.request.is_authenticated) ?
					// Needs to be translated:
					('<p id="dsq-no-anon-msg">Required: Please log into <span class="logo-disqus">Disqus</span> ' +
					(Dsq.jsonData.context.use_fb_connect ? 'or connect with Facebook ' : '') +
					(Dsq.jsonData.context.use_twitter_signin ? 'or sign in with Twitter ' : '') +
					(Dsq.jsonData.context.use_openid ? 'or sign in using OpenID ' : '') +
					Dsq.Utils.interpolate('to comment on <strong>%(forum_name)s</strong>.</p>')) :
					''
				),
				'<div id="dsq-post-add"></div>',
				'<div style="margin:10px 0">',
				((Dsq.jsonData.forum.use_media) ?
						'<a href="#" id="dsq-media-link" onclick="Dsq.Post.showMenu(this, false, \'media\'); return false">' + Dsq.Strings.USE_MEDIA + ' <small>&#9660;</small></a>' :
						''),
				'</div>'
		]);
		return result.join('');
	};


	this.header = function() {

		var html = '\<h3 id="dsq-comments-count" class="dsq-h3-commentcount">\
	 <span id="dsq-num-posts">56</span> Comments\
	 &nbsp;\
	 <span class="dsq-item-feed">\
	 <a href="http://jackandjillpolitics.disqus.com/memo_to_press_barack_obama_is_not_running_for_entertainer_in_chief_99/latest.rss"><img src="http://media.disqus.com/images/embed/bullet-feed.png"></a>\
	 </span>\
	 </h3>\
	 <div id="dsq-options" style="margin:15px 0">\
	 <span class="dsq-item-sort">\
	 Sort by\
	 <select id="dsq-sort-select" onchange="Dsq.Thread.sortBy(this.value);">\
	 <option value="hot" selected="selected">Popular now</option>\
	 <option value="best" >Best Rating</option>\
	 <option value="newest" >Newest first</option>\
	 <option value="oldest" >Oldest first</option>\
	 </select>\
	 &nbsp;\
	 </span>\
	 <span class="dsq-item-cp"><a href="http://jackandjillpolitics.disqus.com/memo_to_press_barack_obama_is_not_running_for_entertainer_in_chief_99/">Community Page</a>&nbsp;&nbsp;&nbsp;</span>\
	 <span class="dsq-item-subscribe">\
	 <img src="http://media.disqus.com/images/embed/email.png" style="width:12px;height:12px;vertical-align:middle">\
	 <span id="dsq-subscribe">\
	 <a href="#" onclick="Dsq.Thread.subscribe(1); return false">Subscribe by email</a>\
	 </span>\
	 </span>\
	 </div>\
	 <div id="dsq-alerts">\
	 <p><a href="http://disqus.com/profile/login/?next=article:1985829" onclick="Dsq.Popup.login(); return false">You must log into your Disqus Profile in order to post comments.</a></p>\
	 </div>\
		';

		

		
		if (Dsq.jsonData.request.is_moderator) { 
			html = ' \
			<div class="dsq-alert-message dsq-upgrade-message"> \
				<strong>Disqus upgrade available.</strong> Hi ' + Dsq.jsonData.request.display_username + ', this message is being displayed to you because you are a moderator of this site. <a href="#" onclick="Dsq.$(\'dsq-upgrade-message\').style.display=\'block\';this.style.display=\'none\';return false">Click here for details.</a> \
				<div style="display:none; margin-top:10px;" id="dsq-upgrade-message"> \
					A new theme is available with added features. <a href="http://disqus.com/comments/settings/' + Dsq.jsonData.forum.url + '/?p=customize">To change your theme, click here</a> and choose the theme Narcissus. \
					If you do not upgrade, you are missing out on features such as: real-time commenting, new sign-in integrations, and an upgrade interface. \
					<strong>This message will automatically go away in one week.</strong> \
				</div> \
			</div> \
			' + html; 
		}
		return html;
	};

	this.footer = function() {
		var html = Dsq.Templates.pagination();

		
			html += Dsq.Templates.authPost();
		

		html += Dsq.Templates.reactions();

		
			html += Dsq.Templates.trackbacks();
		

		return html;
	};

	this.pagination = function() {
		var html = '';
		
		if (Dsq.$('dsq-pagination')) { Dsq.$('dsq-pagination').innerHTML = ''; }
		if (!Dsq.jsonData.thread.paginate) { return ''; }

		//
		// TODO: num_paginator still uses the template tag for pagination, 
		// 		while append_paginator does it all in JavaScript.
		//		This should all be in JavaScript.
		//

		if (Dsq.jsonData.thread.num_pages > 1 && Dsq.jsonData.request.page < Dsq.jsonData.thread.num_pages) {
			html = ' \<a class="dsq-paginate-append-text" href="#" onclick="Dsq.Thread.paginate(Dsq.jsonData.request.page + 1, this); return false">Show more comments...</a>\
	 <button class="dsq-button-small dsq-paginate-append-button" onclick="Dsq.Thread.paginate(Dsq.jsonData.request.page + 1, this);">Load more comments</button>\
			';
		}
		
		if (Dsq.$('dsq-pagination')) {
			Dsq.$('dsq-pagination').innerHTML = html;
			return '';
		} else {
			return '<div id="dsq-pagination" class="dsq-pagination">' + html + '</div>';
		}
	};

	this.trackbacks = function() {
		var html = '';

		if(typeof DsqLocal != 'undefined' && DsqLocal.trackback_url && DsqLocal.trackbacks) {
			var trackbacks = DsqLocal.trackbacks;
			var trackback_url = DsqLocal.trackback_url;
		} else {
			var trackbacks = [
			
			
			];
			var trackback_url = 'http://jackandjillpolitics.disqus.com/memo_to_press_barack_obama_is_not_running_for_entertainer_in_chief_99/trackback/';
		}

		html += '<div class="dsq-item-trackback">Trackback URL&nbsp;&nbsp;<input class="dsq-trackback-url" onclick="this.select()" readonly="true" value="' + trackback_url + '"></div>';

		if(trackbacks.length) {
			html += '<ul id="dsq-references">'
			for(var i = 0; i < trackbacks.length; i++) {
				var trackback = trackbacks[i];
				html += '<li><cite><a href="' + trackback.author_url + '" rel="nofollow">' + trackback.author_name + '</a></cite> \
						<p class="dsq-meta">' + trackback.date + '</p> \
						<p class="dsq-content">' + trackback.excerpt + '</p></li>';
			}
			html += '</ul>';
			html = '<h3 class="dsq-h3-trackbacks">Trackbacks</h3>' + html;
		}

		return html;
	}

	this.showRetweets = function(id, limit, element_id /* Optional */) {
		var source, html = '';

		for (var i = 0, reaction; reaction = Dsq.jsonData.reactions[i]; i++) {
			if (reaction.id === id) {
				source = reaction.retweets;
			}
		}

		if (source) {
			if (limit === 0) {
				limit = source.length;
			}

			for (var j = 0; j < limit; j++) {
				var rt = source[j];
				html += '<a href="' + rt.url + '">' + rt.author_name + '</a>'	+ ((j === (limit - 1)) ? '.' : ', ');
			}
		}

		if (element_id === undefined) {
			return html;
		}

		var element = document.getElementById(element_id);
		element.innerHTML = html;
		return element;
	};

	this.showMoreReactions = function(reactions, has_more, start, limit) {
		var link = document.getElementById('dsq-show-more-reactions');
		var container = link.parentNode;
		container.removeChild(link);

		for (var i = 0, reaction; reaction = reactions[i]; i++) {
			var el = Dsq.Templates.generateReactionHTML(reaction);
			if (el) {
				container.innerHTML += el;
			}
		}

		if (has_more) {
			var d = Dsq.jsonData.settings.disqus_url;
			var f = Dsq.jsonData.forum.url;
			var t = Dsq.jsonData.thread.id;
			var s = start;
			var l = limit;

			var handler = 'Dsq.Utils.execScript(\'' + d + '/forums/' + f + '/more_reactions.js?t=' + t + '&s=' + s + '&l=' + l + '\', true); return false;';
			container.innerHTML += '<li id="dsq-show-more-reactions"><a href="#" onclick="' + handler + '">Show more reactions</a></li>';
		}
	};

	this.generateReactionHTML = function(reaction) {
		if (reaction.body === null || reaction.body == '') {
			return;
		}

		if (reaction.author_name === '') {
			reaction.author_name = '&nbsp;';
		}

		if (reaction.url === '') {
			reaction.url = reaction.get_service_url;
		}

		/* Reaction HTML begins */
		var item = '<li class="dsq-reaction" id="dsq-reaction-' + reaction.id + '">'
			+ '<div class="dsq-reaction-header">'
			+ '<div class="dsq-header-avatar">';

		if (reaction.author_url && reaction.author_url !== '') {
			item += '<a target="_blank" href="' + reaction.author_url +'">';
		} else {
			item += '<a target="_blank" href="#" onclick="return false;">';
		}

		if (reaction.avatar_url && reaction.avatar_url !== '') {
			item += '<img src="' + reaction.avatar_url + '"/>';
		} else {
			item += '<img src="' + Dsq.jsonData.media_url + '/images/noavatar32.png"/>';
		}

		var service_icon = (reaction.get_service_name == 'trackback' || reaction.get_service_name == 'pingback' ? 'rss' : reaction.get_service_name.replace(' ', ''));
		item += '<img class="dsq-service-icon" src="' + Dsq.jsonData.media_url + '/images/reactions/services/' + service_icon + '.png"/>'
			+ '</a></div>'
			+ '<cite><span>' + reaction.author_name + '</span></cite>'
			+ '<span class="dsq-header-meta"><a class="dsq-header-time">' + reaction.date_created + '</a></span>'
			+ '</div><div class="dsq-reaction-body">'
			+ '<div class="dsq-reaction-message">' + reaction.body + '</div>'
			+ '<div class="dsq-reaction-footer">From <a class="dsq-service-name" target="_blank" href="' + reaction.url + '">' + reaction.get_service_name + '</a> '
			+ 'via ' + (reaction.source == 'backtype' ? '<a href="http://backtype.com/">BackType</a>' : '<a href="' + reaction.source_url + '">UberVU</a>')
			+ (Dsq.jsonData.request.is_moderator || Dsq.jsonData.request.is_global_moderator ? '&nbsp;&bull;&nbsp;<a class="dsq-hide-reaction" href="#" onclick="Dsq.Reaction.hide(' + reaction.id + '); return false;">Hide</a>' : '') + '</div></div>';

		if(reaction.retweets) {
			var num_retweets = reaction.retweets.length;
			if (num_retweets > 0) {
				item += '<div class="dsq-reaction-retweets">';
				if (num_retweets == 1) {
					item += 'One more retweet from <a href="' + reaction.retweets[0].url + '">'  + reaction.retweets[0].author_name + '</a>';
				} else {
					item += (num_retweets + ' more retweets from ');

					item += '<span id="dsq-reaction-retweets-' + reaction.id + '">';
					var n_tweets = (num_retweets > 15) ? 15 : num_retweets;
					item += Dsq.Templates.showRetweets(reaction.id, n_tweets);

					if (n_tweets != num_retweets) {
						item += '</span> <a onclick="Dsq.Templates.showRetweets(' + reaction.id + ', 0, \'dsq-reaction-retweets-' + reaction.id + '\');'
							+ 'this.parentNode.removeChild(this); return false;" href="#">Show all</a>';
					}
				}
				item += '</div>';
			}
		}

		item += '</li>'; /* Reaction HTML ends */
		return item;
	};

	this.reactions = function() {
		var html, reaction;

		if (Dsq.jsonData.reactions === undefined || Dsq.jsonData.reactions.length === 0) {
			return '';
		}

		html = '';
		for (var i = 0; reaction = Dsq.jsonData.reactions[i]; i++) {
			var item = Dsq.Templates.generateReactionHTML(reaction);
			if (item) {
				html += item;
			}
		}

		if (Dsq.jsonData.has_more_reactions) {
			var d = Dsq.jsonData.settings.disqus_url;
			var f = Dsq.jsonData.forum.url;
			var t = Dsq.jsonData.thread.id;
			var s = Dsq.jsonData.reactions_start;
			var l = Dsq.jsonData.reactions_limit;

			var handler = 'Dsq.Utils.execScript(\'' + d + '/forums/' + f + '/more_reactions.js?t=' + t + '&s=' + s + '&l=' + l + '\', true); return false;';
			html += '<li id="dsq-show-more-reactions"><a href="#" onclick="' + handler + '">Show more reactions</a></li>';
		}

		return '<h3 class="dsq-h3-reactions">Reactions</h3><ul id="dsq-reactions" class="dsq-reactions">' + html + '</ul>';
	};
	
	this.missingPermissions = function() {
		return '	<p><a href="http://disqus.com/profile/login/?next=article:1985829" onclick="Dsq.Popup.login(); return false">You must log into your Disqus Profile in order to post comments.</a></p> \n';
	};

	//
	// Post
	//

	this.prependPost = function(post_id) {
		var html = '<div id="comment-' + post_id + '"></div>';
		return html;
	};

	this.appendPost = function(post_id) {
		var html = '<div id="dsq-comment-reply-' + post_id + '"></div>';
		return html;
	};

	this.postPrependHeader = function(post_id) {
		var _meta = Dsq.jsonData.posts[post_id];
		var userData = Dsq.jsonData['users'][_meta.user_key];

		var _includeServices = function() {
			var userServices = Dsq.Post.getUserServices(null, post_id);
			var html = '';
			var hiddenThreshold = 3; // Define # of services to show before stuffing them in hidden div

			for(var i = 0; i < userServices.length; i++) {
				html +=
				(i == hiddenThreshold
					? '<li id="dsq-drop-hidden-' + post_id +'" class="dsq-drop-hidden"><ul>'
					: '')
				+ '<li class="dsq-drop-services"> \
					<a class="dsq-service-' + userServices[i].name.toLowerCase() + '" href="' + userServices[i].url + '" target="_blank"> \
						<img src="' + Dsq.jsonData.media_url + '/images/embed/services/' + userServices[i].name.toLowerCase() + '.png" alt="' + userServices[i].name.toLowerCase() + '">'
					+ userServices[i].name
					+ '</a> \
				</li>';
			}

			if(i >= hiddenThreshold) {
				html += '</ul></li> \
				<li id="dsq-drop-more-' + post_id + '" class="dsq-drop-more"><a href="#" onclick="Dsq.Post.dropProfileMore(this, '+ post_id + '); return false"><small>&#9660;</small></a></li> \
				';
			}
			return html;
		};

		return ' \
			<div class="dsq-header-avatar" id="dsq-header-avatar-' + post_id + '" onmouseover="Dsq.Post.dropProfile(' + post_id + ')"> \
				<a id="dsq-avatar-' + post_id + '" class="dsq-avatar" href="' + userData.url + '" onclick="Dsq.Popup.popProfile(' + post_id + '); return false;">'
			+ (Dsq.jsonData.forum.show_avatar
				? '<img src="' + Dsq.jsonData.users[_meta.user_key].avatar + '" alt="" />'
				: '')
			+ '</a>'
			+ '</div> \
		';
	};

	this.postAppendHeader = function(post_id) {
		var _meta = Dsq.jsonData.posts[post_id];

		return ''
			+ (_meta.author_is_moderator
				? '<img class="dsq-mod-star" src="http://media.disqus.com/images/bullet-star.png" title="Moderator" alt="" />'
				: '')
			+ '<span class="dsq-header-meta"> \
				<a id="dsq-time-' + post_id + '" class="dsq-header-time" href="#comment-' + post_id + '" title="Permalink">' + _meta.date + '</a> \
			</span>';
	};

	this.preBody = function(post_id) {
		return '';
	}

	this.postBody = function(post_id) {
		// TODO: Deprecate flagging conditional
		var _meta = Dsq.jsonData.posts[post_id];
		return ''
			+ (_meta.edited
				? '<p class="dsq-editedtxt">(Edited by a moderator)</p>'
				: '')
			;
	};

	this.postFooter = function(post_id) {
		// TODO: Use media should be conditional
		var _meta = Dsq.jsonData.posts[post_id];
		if(_meta.killed) { return ''; }

		return ' \
			<div class="dsq-comment-footer" id="dsq-comment-footer-' + post_id + '"> \
				<div id="dsq-points-' + post_id + '" class="dsq-likedtxt">'
				+ (_meta.points
					? _meta.points + Dsq.Utils.pluralize(_meta.points, ' person', ' people') + ' liked this comment.'
					: '')
				+ '</div>'
				+ '<ul class="dsq-comment-options dsq-list-style">'
				+ (_meta.votable
					? '<li class="dsq-list-first dsq-rate" id="dsq-rate-cont-' + post_id + '">'
					+ (!_meta.up_voted
						? '<a href="#" onclick="Dsq.Post.rate(this, ' + post_id + ', 1); return false;">Like</a>'
						: 'You liked this.') + '</li>'
					: '')
				+ '<li class="dsq-report' + (!_meta.votable ? ' dsq-list-first' : '') + '" id="dsq-post-report-' + post_id + '"><a href="#" class="dsq-post-report" onclick="Dsq.Post.report(' + post_id + ', false); return false;">Report</a></li> \
				</ul> \
				<ul class="dsq-list-style">'
				+ (_meta.can_reply
					? '<li class="dsq-list-first"><a href="#" id="dsq-reply-link-' + post_id +'" onclick="Dsq.Post.toggleReply(this, ' + post_id +'); return false;">Reply</a></li>'
					: '')
				+ (_meta.can_reply && !_meta.has_replies && _meta.from_request_user
					? '<li id="dsq-edit-el-' + post_id + '"><a id="dsq-edit-link-' + post_id + '" href="#" onclick="Dsq.Post.edit(this, ' + post_id + '); return false;">Edit</a></li>'
					: '')
				+ '<li class="' + (!_meta.can_reply ? 'dsq-list-first' : '') + '" id="dsq-more-el-' + post_id + '"><a id="dsq-more-link-' + post_id + '" href="#" onclick="Dsq.Post.showMenu(this, ' + post_id + ', \'more\'); return false">More <small>&#9660;</small></a></li>'
				+ (Dsq.jsonData.forum.use_media
					? '<li id="dsq-media-el-' + post_id +'" style="display:none"><a id="dsq-media-link-' + post_id + '" href="#" onclick="Dsq.Post.showMenu(this, ' + post_id + ', \'media\'); return false">Use Media <small>&#9660;</small></a></li>'
					: '')
				+ '</ul>'
				+ '<div id="dsq-reply-bar-' + post_id + '" class="dsq-reply-bar" style="display:none"> \
						<div id="dsq-reply-bar-items-' + post_id + '" class="dsq-reply-bar-items"> \
						</div> \
						<div id="dsq-reply-bar-auth-' + post_id + '" class="dsq-reply-bar-auth"> \
							 \
								 \
									<a href="#" class="dsq-help dsq-reply-req-opt" title="You must log into an account in order to comment on Jack and Jill Politics" onclick="Dsq.Popup.helpBadges(); return false">Required:</a> \
								 \
								<img class="dsq-login-icon" src="http://media.disqus.com/images/dsq-favicon-16x16.png" alt="" /> \
								<a id="dsq-reply-login-' + post_id + '" href="http://disqus.com/profile/login/?next=article:1985829" onclick="Dsq.Popup.login(); return false">Login</a> \
								 \
									&nbsp;or&nbsp; \
									<img class="fb_login_image" src="http://static.ak.fbcdn.net/images/fbconnect/login-buttons/connect_light_small_short.gif" alt="Facebook Connect"/> \
									<a href="#" onclick="FB.Connect.requireSession(DisqusFbcParentController.onLogin); return false;">Connect</a> \
								 \
								&nbsp;or&nbsp; \
									<img src="http://media.disqus.com/images/twitter-signin-icon.png" alt="" /> \
									<a href="#" onclick="Dsq.Twitter.startTwitterConnect(); return false">Sign-in</a> \
								 \
								 \
							 \
						</div> \
					</div> \
					<div id="dsq-reply-' + post_id + '"></div> \
			</div> \
		';
	};

	//
	// Iframes
	//

	this._makeAttributes = function(attributes) {
		// Makes a tag attributes string out of an object.
		// Caller is responsible for making sure nothing needs to be escaped.
		var result = [];
		for (key in attributes) {
			result.push(' ' + key + '="' + attributes[key] + '"');
		}
		result = result.join('');
		return result;
	};

	this._frameGeneric = function(base_url, params, attributes) {
		if(typeof(disqus_callback_params) == 'undefined') {
			disqus_callback_params = '';
		}

		var default_params = {
			// TODO: These should be moved to Dsq.jsonData.
			'f'				: 'jackandjillpolitics',
			't'				: 'memo_to_press_barack_obama_is_not_running_for_entertainer_in_chief_99',
			// Do we need encodeURIComponent here?
			'ifrs'			: encodeURIComponent(disqus_iframe_css),
			'to_redirect'	: encodeURIComponent(window.location),
			'cbp'			: disqus_callback_params,
			'ff'			: Dsq.Thread.ff,
			'fc'			: Dsq.Thread.fc,
			'ac'			: Dsq.Thread.ac,
			'default_text'	: disqus_default_text
		};

		base_url += '?' + (new Date()).getTime();
		// Add params to default_params.
		if(params) {
			for(var key in params) {
				if(params.hasOwnProperty(key)) {
					default_params[key] = encodeURIComponent(params[key]);
				}
			}
		}
		// Build querystring.
		for(var key in default_params) {
			if(default_params[key] && default_params.hasOwnProperty(key)) {
				base_url += '&' + key + '=' + default_params[key];
			}
		}

		return [
			'<iframe marginwidth="0" marginheight="0" hspace="0" vspace="0" frameborder="0"',
			(' allowtransparency="true" src="' + base_url + '"'),
			this._makeAttributes(attributes),
			'</iframe>'].join('');
	};

	this.frameLogin = function(opt_attributes) {
		var params = {};
		var base_url = 'http://disqus.com/embed/login.html';
		var attributes = opt_attributes || {};
		attributes['class'] = 'dsq-post-login';

		if(typeof disqus_frame_theme != 'undefined') {
			params['theme'] = disqus_frame_theme;
		}
		return this._frameGeneric(base_url, params, attributes);
	};

	this.frameReply = function(post_id, extra_params, attributes) {
		// Returns the HTML for a reply iframe. Called by Dsq.Iframes.setReplyIframeToContainer
		var _meta = (typeof post_id != 'undefined') ? Dsq.jsonData.posts[post_id] : false;
		var base_url = Dsq.Urls.REPLY;
		var params = {
			'def_email'		: disqus_def_email,
			'def_name'		: disqus_def_name
		};
		if(extra_params) {
			for(var key in extra_params) {
				if(extra_params.hasOwnProperty(key)) {
					params[key] = extra_params[key];
				}
			}
		}
		if(_meta) {
			params['parent_post'] = post_id;
		}
		if(typeof disqus_per_page != 'undefined') {
			params['per_page'] = disqus_per_page;
		}
		if(typeof disqus_frame_theme != 'undefined') {
			params['theme'] = disqus_frame_theme;
		}
		if(Dsq.jsonData.request.is_authenticated) {
			attributes['class'] += '-authenticated';
		}
		return this._frameGeneric(base_url, params, attributes);
	};

	this.frameEdit = function(post_id) {
		var _meta = (typeof post_id != 'undefined') ? Dsq.jsonData.posts[post_id] : false;
		var base_url = 'http://disqus.com/embed/edit.html';
		var params = {
			'p' : post_id
		};
		return this._frameGeneric(base_url, params, {'class': 'dsq-post-edit', 'name': 'dsq-edit_' + post_id + '-frame'});
	};

	//
	// Menus
	//

	this.menuMore = function(post_id) {
		// TODO: "Remove post" button should hide menu.
		var _meta = Dsq.jsonData.posts[post_id];
		var userData = Dsq.jsonData['users'][_meta.user_key];
		return ' \
			<li><a href="#comment-' + post_id + '" onclick="Dsq.Popup.permalink(' + post_id + ')">Link</a></li> \
			<li><a href="#" onclick="Dsq.Popup.popProfile(' + post_id + '); return false;">Profile</a></li>'
	+ (Dsq.jsonData.request.is_moderator || Dsq.jsonData.request.is_global_moderator
		? '	<li class="dsq-menu-sep"></li>' + (_meta.email ? '<li class="dsq-admin-email">' + _meta.email + '</li>' : '')
		+ '	<li class="dsq-admin-ip">' + _meta.ip + '</li> \
			<li class="dsq-menu-sep"></li>'
		+ (Dsq.jsonData.request.moderator_can_edit
			? ' <li class="dsq-admin-edit"><a href="#" onclick="Dsq.Post.edit(this, ' + post_id + '); return false;">Edit Comment</a></li>'
			: '')
		+ ' <li class="dsq-remove"><a href="#" onclick="Dsq.Post.removePost(' + post_id + ', 1); return false;">Remove Comment</a></li> \
			<li class="dsq-report-spam"><a href="#" onclick="Dsq.Post.reportSpam(' + post_id + '); return false;">Mark Spam</a></li> \
			<li class="dsq-block-user"><a href="#" onclick="Dsq.Popup.blacklist(' + post_id + '); return false">Block User</a></li>'
		: '');
	};

	this.menuMedia = function(post_id) {
		return ' \
			<li><a href="#" onclick="Dsq.Post.toggleMediaReply(this, ' + post_id + ', \'seesmic\'); return false;">Record video</a></li> \
		';
	};

	this.dropProfile = function(post_id) {
		var _meta = Dsq.jsonData.posts[post_id];
		var userData = Dsq.jsonData['users'][_meta.user_key];

		var _includeServices = function() {
			var userServices = Dsq.Post.getUserServices(null, post_id);
			var html = '';
			var hiddenThreshold = 3; // Define # of services to show before stuffing them in hidden div

			for(var i = 0; i < userServices.length; i++) {
				html +=
				(i == hiddenThreshold
					? '<li id="dsq-drop-hidden-' + post_id +'" class="dsq-drop-hidden"><ul>'
					: '')
				+ '<li class="dsq-drop-services"> \
					<a class="dsq-service-' + userServices[i].name.toLowerCase() + '" href="' + userServices[i].url + '" target="_blank"> \
						<img src="' + Dsq.jsonData.media_url + '/images/embed/services/' + userServices[i].name.toLowerCase() + '.png" alt="' + userServices[i].name.toLowerCase() + '">'
					+ userServices[i].name
					+ '</a> \
				</li>';
			}

			if(i >= hiddenThreshold) {
				html += '</ul></li> \
				<li id="dsq-drop-more-' + post_id + '" class="dsq-drop-more"><a href="#" onclick="Dsq.Post.dropProfileMore(this, '+ post_id + '); return false"><small>&#9660;</small></a></li> \
				';
			}
			return html;
		};


		var menu = '<li class="dsq-drop-showlnk"><a href="#" onclick="Dsq.Popup.popProfile(' + post_id + '); return false;">Expand &#8663;</a></li>';
		var pointsMessage = '';
		if (userData['registered']) {
			pointsMessage = 'with ' + userData['points'] + ' points (more points are better).';
		}

		if (userData['is_remote']) {
			var domain = userData['remote_domain_name'];
			menu += '<li class="dsq-drop-badge" title="' + userData['display_name'] + ' is a ' + domain + ' user ' + pointsMessage + '" onclick="Dsq.Popup.helpBadges()">';
			menu += '<span class="dsq-badge-' + domain.toLowerCase() + '">' + domain + '</span></li>';
		} else if (userData['registered']) {
			if (userData['verified']) {
				menu += '<li class="dsq-drop-badge" title="' + userData['display_name'] + ' has a verified commenter profile ' + pointsMessage + '" onclick="Dsq.Popup.helpBadges()">';
				menu += '<span class="dsq-badge-verified">Verified</span></li>';
			} else {
				menu += '<li class="dsq-drop-badge" title="' + userData['display_name'] + ' has a registered, but unverified, commenter profile ' + pointsMessage + '" onclick="Dsq.Popup.helpBadges()">';
				menu += '<span class="dsq-badge-registered">Registered</span></li>';
			}
		} else {
			menu += '<li class="dsq-drop-badge" title="' + userData['display_name'] + ' has not claimed this commenter profile." onclick="Dsq.Popup.helpBadges()"><span class="dsq-badge-guest">Guest</span></li>';
		}

		menu += _includeServices();
		return menu;
	};

	//
	// Popups
	//

	this._popupGeneric = function(content) {
		return ' \
		<div class="dsq-popup-content"> \
			<div class="dsq-popup-top"></div> \
			<div class="dsq-popup-body" class="clearfix"> \
				<div class="dsq-popup-body-padding"> \
					<div class="dsq-popup-header"> \
						<a class="dsq-close-link" href="#" onclick="Dsq.Popup._closePopup(null, true); return false"><img src="http://media.disqus.com/images/modal-close.png" alt="" /></a>'
						+ content['header']
					+ '</div>'
					+ content['body']
					+ '<div class="powered-by"><a href="http://disqus.com/comments/">Powered by <img src="http://media.disqus.com/images/embed/disqus-logo.png" alt="Disqus Comments" style="margin-bottom:-5px" /></a></div> \
				</div> <!-- padding --> \
			</div> <!-- body --> \
			<div class="dsq-popup-bottom"></div> \
		</div> \
		';
	};

	this.popupProfile = function(user_key) {
		var userServices = Dsq.Post.getUserServices(user_key, null);
		var userData = Dsq.jsonData['users'][user_key];
		var headerHtml = '';
		var bodyHtml = '';
		var content = {};

		var _includeServices = function() {
			var html = '';
			for(var i = 0; i < userServices.length; i++) {
				html +=
				(i == 0
					? '<h4>Connections</h4><ul>'
					: '')
				+ '<li> \
					<img src="' + Dsq.jsonData.media_url + '/images/embed/services/' + userServices[i].name.toLowerCase() + '.png" alt="' + userServices[i].name.toLowerCase() + '" title="' + userServices[i].name.toLowerCase() + '" /> \
					<a class="dsq-service-' + userServices[i].name.toLowerCase() + '" href="' + userServices[i].url + '" target="_blank">'
					+ userServices[i].name
					+ '</a> \
				</li>'
				+ (i+1 == userServices.length ? '</ul>' : '');
			}
			return html;
		};

		headerHtml = ' \
			<table> \
				<tr> \
					<td> \
						<a class="dsq-profile-userurl" href="' + userData.url + '"><img class="dsq-popup-profile-avatar" src="' + userData['avatar'] + '" alt="" /></a> \
					</td> \
					<td> \
						<div class="dsq-popup-profile-user"> \
							<h3>' + userData['display_name'] + '</h3> \
							<div class="dsq-popup-profile-user-stats" id="dsq-popup-profile-user-stats-' + user_key + '">Loading...</div> \
						</div> \
					</td> \
				</tr> \
			</table> \
		';

		bodyHtml = ' \
			<div class="dsq-popup-profile-state"> \
				This is a&nbsp;<span class="'
					+ (userData['registered']
						? (userData['verified']
							? ' dsq-badge-verified'
							: (userData['is_remote']
								? ' dsq-badge-' + userData['remote_domain_name'].toLowerCase()
								: ' dsq-badge-registered')
							)
							: ' dsq-badge-guest') + '">'
			+ (userData['registered']
				? (userData['verified']
					? 'Verified'
					: (userData['is_remote']
						 ? userData['remote_domain_name']
						 : 'Registered')
					)
				: 'Guest')
			+ '</span>&nbsp;commenter profile.'
			+ '&nbsp;<a class="dsq-profile-userurl" href="' + userData.url + '"><strong>View more comments </strong></a>'
			+ (!userData['points']
				? '<p class="dsq-popup-notice">If this is you, <a href="http://disqus.com/profile" target="_blank">claim it now</a> to manage your comments.</p>'
				: '')
			+ ((userData['registered'] && !userData['verified'] && (Dsq.jsonData.request.username && (Dsq.jsonData.request.username == userData['username'])) && !userData['is_remote'])
				? '<p class="dsq-popup-notice"><strong>Alert</strong>: You have not verified this account. <a href="http://disqus.com/verify">Verify it now.</a></p>'
				: '')
			+ '</div> \
			<div id="dsq-profile-status-' + user_key + '" class="dsq-popup-profile-status" style="display:none"></div> \
			<div class="dsq-popup-profile-snapshot"> \
				<table> \
					<tr> \
						<td> \
							<div id="dsq-popup-profile-active-sites-wrapper-' + user_key + '"> \
								<h4>Most active sites</h4> \
								<ul id="dsq-popup-profile-active-sites-' + user_key + '"> \
									<li>Loading...</li> \
								</ul> \
							</div> \
						</td> \
						<td>'
							+ _includeServices()
							+ '<div id="dsq-popup-profile-moderated-wrapper-' + user_key + '"> \
								<h4>Moderator of</h4> \
								<ul id="dsq-popup-profile-moderated-' + user_key + '"> \
									<li>Loading...</li> \
								</ul> \
							</div> \
						</td> \
					</tr> \
				</table> \
			</div> \
			';

		content = {
			'header': headerHtml,
			'body': bodyHtml
		};

		return this._popupGeneric(content);
	};

	this.popupReblog = function() {
		var headerHtml = '';
		var bodyHtml = '';
		var content = {};

		headerHtml = ' \
			<cite><span>Reblog this comment</span></cite> \
		';

		bodyHtml = ' \
			<div id="dsq-reblog-form" class="dsq-reblog-form"> \
			</div> \
		';

		content = {
			'header': headerHtml,
			'body': bodyHtml
		};

		return this._popupGeneric(content);
	};

	this.popupModal = function(title, message) {
		var headerHtml = '';
		var bodyHtml = '';
		var content = {};

		headerHtml = ' \
			<h3>' + title + '</h3> \
		';

		bodyHtml = message;

		content = {
			'header': headerHtml,
			'body': bodyHtml
		};

		return this._popupGeneric(content);
	};

	this.alertContent = function(name, post_id) {
		var alert = {
			'post_not_approved': {
				'title': 'Comment awaiting approval by a moderator',
				'message': 'Thanks for posting. Your comment must be approved by a moderator before appearing here.'
			},
			'post_has_profile': {
				'title': 'Use your existing commenter profile',
				'message': 'You have just posted your commment as a <span class="dsq-badge dsq-badge-guest">Guest</span>, but you may already have a <span class="dsq-badge dsq-badge-registered">Registered</span> commenter profile.<br /><br /><a href="http://disqus.com/claim">Log in and claim this comment!</a>'
			}
		};
		return alert[name] || false;
	};

	//
	// Actions
	//

	this.voted = function(post_id, points, vote) {
		// Update number of points
		Dsq.$('dsq-points-' + post_id).innerHTML = points + Dsq.Utils.pluralize(points, ' person', ' people') + ' liked this comment.';

		// Update link text
		if(vote) {
			Dsq.$('dsq-rate-cont-' + post_id).innerHTML = 'You liked this.';
		}
	};

	this.subscribed = function(status) {
		var title, message;

		if(status) {
			title = 'Subscribed!';
			message = 'You have subscribed to this comment thread. New comments will be sent directly to your email inbox, where you may read and respond by email.';
			Dsq.$('dsq-subscribe').innerHTML = ' \
				<a href="#" onclick="Dsq.Thread.subscribe(0); return false">Unsubscribe</a> \
			';
		} else {
			title = 'Unsubscribed';
			message = 'You have unsubscribed to this comment thread. New comments will no longer be sent to your email inbox.';
			Dsq.$('dsq-subscribe').innerHTML = ' \
				<a href="#" onclick="Dsq.Thread.subscribe(1); return false">Subscribe by email</a> \
			';
		}

		Dsq.Popup.popModal(message, title);

	};
	
	this.highlighted = function() {
		Dsq.Popup.popModal('This comment has been highlighted.', 'Highlighted comment');
	};

	//
	// Media
	//

	this.mediaSeesmic = function(id, thumb) {
		return ' \
			<div id="dsq-seesmic-' + id + '_preview" class="dsq-seesmic-preview"><a href="http://www.seesmic.com/video/' + id + '" target="_blank" class="see_link">&nbsp;</a> \
				<div style="display:block;width:160px; height:120px; border:none; background-image:url(http://t.seesmic.com/thumbnail/' + thumb + ')"> \
					<div id="dsq-seesmic-' + id + '_hide" class="seePlayOverlay" style="display:none;"><img onclick="see_play_video(\'' + id + '\',false)" src="http://media.disqus.com/images/seesmic/stopOverlay.png" width="50" height="50" style="cursor:pointer; cursor:hand; padding-top: 30px; padding-left: 50px" alt="" /></div> \
					<div id="dsq-seesmic-' + id + '_show" class="seePlayOverlay"><img onclick="see_play_video(\'' + id + '\',true)" src="http://media.disqus.com/images/seesmic/playOverlay.png" width="50" height="50" style="cursor:pointer; cursor:hand; border:none; padding-top: 30px; padding-left: 50px" alt="" /></div> \
				</div> \
			</div> \
			<div id="' + id + '_content" style="display:block; width:100%; padding-top:5px"></div> \
		';
	};

	//
	// Callbacks
	//

	this.postComment_onSuccess = function(parent_post_id) {
		// Increment post count
		var num_posts = Dsq.$('dsq-num-posts');
		var total_posts = Dsq.$('dsq-total-posts');
		
		if (num_posts) { 
			num_posts.innerHTML = parseInt(num_posts.innerHTML) + 1;
		}
		if (total_posts) { 
			total_posts.innerHTML = parseInt(total_posts.innerHTML) + 1;
		}
	};
};
// Dsq.Templates


/**
 * Dsq.Post
 */
Dsq.Post = new function() {
	this.openedMenu = {};
	this.menuEventListener = null;
	this.stateReplyToggled = {};
	this.stateEditToggled = {};
	this.stateRecordLink = {};

	/**
	 * Inserts a new post into the document.
	 *
	 * @param after_id {Number}	Insert a post before specified id.  If after_id
	 *							evaluates to false, then post in the front.  If
	 *							after_id is -1, post at the end.
	 */
	this.insert = function(after_id, id, message, author) {
		// Skeleton template from thread_posts.html.
		var skeleton = ' \
			<li id="dsq-comment-%(id)s"> \
				<div id="dsq-comment-header-%(id)s" class="dsq-comment-header"> \
					<cite id="dsq-cite-%(id)s" class="dsq-comment-cite"> \
						<a id="dsq-author-user-%(id)s" href="%(author_url)s" target="_blank" rel="nofollow">%(author_name)s</a> \
					</cite> \
				</div> \
				<div id="dsq-comment-body-%(id)s" class="dsq-comment-body"> \
					<div id="dsq-comment-message-%(id)s" class="dsq-comment-message">%(message)s</div> \
				</div> \
			</li> \
		';
		var _meta = Dsq.jsonData.posts[id];
		var _user_meta = Dsq.jsonData.users[_meta.user_key];
		var markup = Dsq.Utils.interpolate(skeleton, {
			id: id,
			message: message,
			author_url: _user_meta.blog,
			author_name: _user_meta.display_name
		});
		var div = document.createElement('div');
		markup = markup.replace(Dsq.COMMENTS_RE, Dsq.CommentsHandler);
		div.innerHTML = markup;

		if (after_id === -1) {
			Dsq.$('dsq-comments').appendChild(div);
		} else if (!after_id) {
			Dsq.$('dsq-comments').insertBefore(div, Dsq.$('dsq-comments').firstChild);
		} else if (Dsq.$('dsq-comment-' + after_id)) {
			// Get next node after "after_id", so we can insert before it.
			// If "after_id" is the last comment, the target node is the
			// last node.
			
			// var append_post_id = Dsq.Templates.appendPost(after_id).replace('<div id="','').replace('"></div>', '');
			var append_post_id = 'dsq-append-post-' + after_id;
			var node = Dsq.$(append_post_id);
			while (node = node.nextSibling) {
				if (!node || node.nodeType == 1) { // 1 == Node.ELEMENT_NODE
					break;
				}
			}
			if (!node) {
				node = Dsq.$(append_post_id);
			}
			node.parentNode.insertBefore(div, node);
		}
	};

	this.incrementPostCount = function() {
		
		var num_posts = Dsq.$('dsq-num-posts');
		var total_posts = Dsq.$('dsq-total-posts');

		if (num_posts) {
			num_posts.innerHTML = parseInt(num_posts.innerHTML, 10) + 1;
		}
		if (total_posts) {
			total_posts.innerHTML = parseInt(total_posts.innerHTML, 10) + 1;
		}
	}
	
	this.outlineComment = function(post_id) {
		Dsq.$('dsq-comment-' + post_id).className += ' dsq-comment-outline';
		setTimeout("(function () { Dsq.Post.clearOutlineComment(" + post_id + ") })()", 3000);
	};
	
	this.clearOutlineComment = function(post_id) {
		Dsq.$('dsq-comment-' + post_id).className = Dsq.$('dsq-comment-' + post_id).className.replace('dsq-comment-outline', '');
	};

	this.showMenu = function(el, id, name) {
		var anchorPos = Dsq.Utils.findPos(el);
		var menu = document.createElement('ul');

		if(this.openedMenu) {
			if(this.openedMenu.linkClicked) {
				this.openedMenu.linkClicked = false;
				return;
			}
		}

		switch(name) {
			case 'more':
				menu.innerHTML = Dsq.Templates.menuMore(id);
				break;
			case 'media':
				menu.innerHTML = Dsq.Templates.menuMedia(id);
				break;
			default:
				break;
		}

		// Add menu to document body
		menu.id = 'dsq-menu-' + id;
		menu.className = 'dsq-menu';
		Dsq.$b.appendChild(menu);

		// Position and show
		anchorPos[1] += 15;
		menu.style.left = anchorPos[0] + 'px';
		menu.style.top = anchorPos[1] + 'px';
		menu.style.display = 'block';

		// Set global reference
		this.openedMenu = {
			'el' : menu,
			'id' : id,
			'name' : name,
			'linkClicked' : false
		};

		// Set listener
		this.menuEventListener = Dsq.Utils.addEventListener(document, 'mouseup', this._hideMenu);
	};

	this._hideMenu = function(e) {
		var el = e.target || e.srcElement;
		var openedMenu = Dsq.Post.openedMenu.el;
		var id = Dsq.Post.openedMenu.id;

		if(!id) {
			var link = 'dsq-' + Dsq.Post.openedMenu.name + '-link';
		} else {
			var link = 'dsq-' + Dsq.Post.openedMenu.name + '-link-' + id;
		}

		if(!openedMenu) {
			return;
		}

		if(!Dsq.Popup.isClicked(e, openedMenu.id)) {
			openedMenu.style.display = 'none';
			Dsq.Utils.removeEventListener(Dsq.Post.menuEventListener);
			Dsq.Utils.deleteNode(openedMenu);

		} else {
			// Hide the menu if a link was clicked inside the menu.  We can't
			// completely remove the menu until the onclick event on the link
			// fires, but the menuEventListener will prevent multiple menus
			// from polluting the DOM.
			if(el && typeof el.href != 'undefined') {
				openedMenu.style.display = 'none';
				Dsq.Post.openedMenu.el = null;
			}
		}

		if(Dsq.Popup.isClicked(e, link)) {
 			Dsq.Post.openedMenu.linkClicked = true;
		}
	};


	this.getUserServices = function(user_key, id) {
		if(!user_key && id) {
			var _meta = Dsq.jsonData.posts[id];
			user_key = _meta.user_key;
		}
		var userData = Dsq.jsonData['users'][user_key];
		var userServices = [];

		// Keep a full list of supported services. This is the order they will display in the drop-profile.
		// Each service must have a corresponding case in _buildServiceUrl()
		var supportedServices = ['blog', 'twitter', 'facebook', 'tumblr'];

		function _buildServiceUrl(serviceName) {
			var data = userData[serviceName];
			var services = {
				blog:		function(d) { return d; },
				twitter:	function(d) { return d; },
				facebook:	function(d) { return d; },
				tumblr:		function(d) { return 'http://' + d + '.tumblr.com'; }
			};
			return services[serviceName](data);
		}

		for(var i = 0; i < supportedServices.length; i++) {
			if(userData[supportedServices[i]]) {
				var serviceUrl = _buildServiceUrl(supportedServices[i]);
				userServices.push({'name' : supportedServices[i], 'url' : serviceUrl});
			}
		}
		return userServices;
	}

	this.dropProfile = function(id) {
		var dp = Dsq.$('dsq-drop-profile-' + id);

		// IE6 needs JS to display/hide. All other browsers use CSS.
		if(dp) {
			if(Dsq.Utils.ie6) dp.style.display = (dp.style.display == 'inline') ? 'none' : 'inline';
			return false;
		} else {
			dp = document.createElement('ul');
		}

		dp.id = 'dsq-drop-profile-' + id;
		dp.className = 'dsq-drop-profile';

		if(Dsq.Utils.ie6) { dp.style.display = 'inline'; }

		var container = Dsq.$('dsq-header-avatar-' + id);
		dp.innerHTML = Dsq.Templates.dropProfile(id);
		container.appendChild(dp);
	};

	this.dropProfileMore = function(el, id) {
		var hiddenItems = Dsq.$('dsq-drop-hidden-' + id);

		hiddenItems.style.display = 'inline';
		el.parentNode.style.display = 'none';
	};

	this._updateReplyLinks = function(el, id) {
		// Update "reply / cancel" links based on state.
		var displayDict = {};

		if(id) {
			if(this.stateReplyToggled[id]) {
				el.innerHTML = 'Cancel';
				displayDict['media'] = 'inline';
				displayDict['edit'] = 'none';
			} else {
				el.innerHTML = 'Reply';
				displayDict['media'] = 'none';
				displayDict['edit'] = 'inline';
			}
		}

		for(var key in displayDict) {
			if(displayDict.hasOwnProperty(key)) {
				var	linkEl = Dsq.$('dsq-' + key + '-el-' + id),
					spacer = Dsq.$('dsq-' + key + '-spacer-' + id);

				if(linkEl) {
					linkEl.style.display = displayDict[key];
					if(spacer) spacer.style.display = displayDict[key];
				}
			}
		}
	};

	this._updateMediaLinks = function(el, id) {
		// Update "use media / cancel" links based on state.
		var appendId = (id) ? ('-' + id) : '';
		var link = Dsq.$('dsq-media-link' + appendId);

		if(this.stateRecordLink[id]) {
			link.innerHTML = 'Cancel Media';
			link.onclick = function() { Dsq.Post.toggleMediaReply(link, id); return false; };
		} else {
			link.innerHTML = 'Use Media <small>&#9660;</small>';
			link.onclick = function() { Dsq.Post.showMenu(link, id, 'media'); return false; };
		}
	};

	this.toggleReply = function(el, id) {
		// Create reply IFrame
		if (window.disqus_use_postmessage) {
			if (!this.stateReplyToggled[id]) {
				Dsq.$('dsq-reply-' + id).style.display = 'block';
				Dsq.$('dsq-reply-bar-' + id).style.display = 'block';
				// Create IFrame if it doesn't exist.
				if (!Dsq.frames['reply_' + id]) {
					var _meta = Dsq.jsonData.posts[id];
					Dsq.frames['reply_' + id] = new Dsq.ReplyFrame(Dsq.$('dsq-reply-frame-' + id), id);
					Dsq.frames['reply_' + id].init();
					Dsq.frames['reply_' + id].setState(id, _meta.depth);
				}
			} else {
				Dsq.$('dsq-reply-' + id).style.display = 'none';
				Dsq.$('dsq-reply-bar-' + id).style.display = 'none';
			}
		} else {
			// DEPRECATED
			if(!this.stateReplyToggled[id]) {
				// Reply toolbar
				Dsq.$('dsq-reply-bar-' + id).style.display = 'block';
				Dsq.Iframes.showReplyIframeInContainerIfAllowed(Dsq.$('dsq-reply-' + id), id);
			} else {
				Dsq.$('dsq-reply-bar-' + id).style.display = 'none';
				Dsq.Iframes.hideAllInContainer(Dsq.$('dsq-reply-' + id));
				if(this.stateRecordLink[id]) {
					// HACK: Cancel media before canceling self.
					this.toggleMediaReply(Dsq.$('dsq-media-link-' + id), id);
				}
			}
		}

		this.stateReplyToggled[id] = !this.stateReplyToggled[id];
		this._updateReplyLinks(el, id);

		if(Dsq.Utils.ie) { Dsq.Utils.fixIframesIE('dsq-reply-' + id); }

		Dsq.Events.fire(Dsq.Events.REPLY_IFRAME_TOGGLED, {
			postId: id,
			opened: this.stateReplyToggled[id]
		});
	};

	this.toggleMediaReply = function(el, id, xtype) {
		id = id || 0;
		if(id) {
			var container = Dsq.$('dsq-reply-' + id);
		} else {
			var container = Dsq.$('dsq-post-add');
		}

		if(!this.stateRecordLink[id]) {
			Dsq.Iframes.showReplyIframeInContainer(container, id, {xtype:xtype}, 'dsq-post-video');
		} else {
			Dsq.Iframes.showReplyIframeInContainer(container, id);
		}
		this.stateRecordLink[id] = !this.stateRecordLink[id];
		this._updateMediaLinks(el, id);

		if(Dsq.Utils.ie) { Dsq.Utils.fixIframesIE(); }
	};

	this.edit = function(el, id) {
		Dsq.$('dsq-comment-message-' + id).innerHTML = Dsq.Templates.frameEdit(id);
		el.parentNode.style.display = 'none';
		if(Dsq.Utils.ie) { Dsq.Utils.fixIframesIE('dsq-comment-message-' + id); }
	};

    this.rate = function(el, id, vote) {
		if(Dsq.jsonData.request.is_authenticated || Dsq.jsonData.forum.allow_anon_votes) {
			if(vote == 1) {
                Dsq.$('dsq-rate-cont-' + id).innerHTML = '<img src="http://media.disqus.com/images/loading-small.gif">';
            }

            Dsq.Utils.execScript('http://disqus.com/forums/jackandjillpolitics/vote.js'
                + '?post_id='    + id
                + '&vote='        + vote);

		} else {
			Dsq.Popup.login(Dsq.Strings.TO_RATE_PLEASE_LOG_IN);
		}
    };

	this.report = function(id, confirmed) {
		if(confirmed) {
			Dsq.Utils.postToUrl('http://disqus.com/forums/jackandjillpolitics/memo_to_press_barack_obama_is_not_running_for_entertainer_in_chief_99/post_report/', {'post_id': id});
			Dsq.Popup.popModal('Thank you. This comment has been flagged for moderator attention.', 'Successfully flagged');
			Dsq.Utils.deleteNode(Dsq.$('dsq-post-report-' + id));
		} else {
			var title = Dsq.Strings.FLAG_INAPPROPRIATE_COMMENT;
			var message = Dsq.Strings.ARE_YOU_SURE_YOU_WOULD_LIKE_TO_REPORT_THIS_COMMENT_TO_A_MODERATOR + '? \
			<br /><br /> \
			<button onclick="Dsq.Popup._closePopup(null, true)"><strong>' + Dsq.Strings.NO + '</strong>, ' + Dsq.Strings.NEVER_MIND + '</button>&nbsp;&nbsp;&nbsp;<button onclick="Dsq.Post.report(' + id + ', true);"><strong>' + Dsq.Strings.YES + '</strong>, ' + Dsq.Strings.FLAG_INAPPROPRIATE_COMMENT + '</button><br /><br />'
			+ Dsq.Strings.THIS_WILL_FLAG_COMMENTS_FOR_MODERATORS_TO_TAKE_ACTION + '. \
			';

			Dsq.Popup.popModal(message, title, id);
		}
	};



	this.showAlert = function(id, msg) {
		var msgEl = Dsq.$('dsq-comment-message-' + id);
		var alert = '<div class="dsq-comment-alert">' + msg + '</div>';

		msgEl.innerHTML = alert + msgEl.innerHTML;
	};

};
// Dsq.Post


/**
 * Dsq.Thread
 */
Dsq.Thread = new function() {
	this.fc = null;
	this.ff = null;
	this.ac = null;

	
	this.adminIsOn = false;

	
	
	

	this.hlComment = null;
	this.hlCommentClass = null;

	this.getNextComment = function(el) {
		var start_id = el.id;
		while(el = el.nextSibling) {
			if(el.id && el.id.indexOf('dsq-comment-') != -1 && el.id != start_id) {
				return el;
			}
		}
		return null;
	};

	this.getActiveCommentId = function() {
		if (document.URL.indexOf('#comment-') >= 0) {
			var anchor = document.URL.slice(document.URL.indexOf('#') + 1);
			return anchor.replace('comment-', '');
		}
		return null;
	};

	this.highlightAnchor = function() {
		var i = this.getActiveCommentId();
		if (i == null) return false;
		var id = 'dsq-comment-' + i;
		var hash = window.location.hash;

		// Toggle the hash incase the comment isn't available when the page loads
		// for WebKit-based browsers.
		if (Dsq.Utils.webkit) {
			window.location.hash = '';
			window.location.hash = hash;
		}

		this.hlComment = Dsq.$(id);
		// Adding this conditional guard pending #289
		if (!this.hlComment) {
			return;
		}
		this.hlCommentClass = this.hlComment.className;
		this.hlComment.className += ' dsq-hl-anchor';

		setTimeout("Dsq.Thread.highlightClear()", 3000);
	};

	this.highlightClear = function() {
		if (!this.hlComment) {
			return;
		}
		this.hlComment.className = this.hlCommentClass;
	};

	this.login = function(toggle) {
		// toggle id is #dsq-reply-login-[id]
		var postId;
		if(toggle.id.indexOf('dsq-reply-login') != -1) {
			postId = toggle.id.slice(16);
			var container = Dsq.$('dsq-reply-' + postId);
		} else {
			var container = Dsq.$('dsq-post-add');
		}

		if(toggle) {
			if(toggle.className == 'dsq-login-active') {
				Dsq.Iframes.showReplyIframeInContainerIfAllowed(container, postId);
				toggle.className = '';
			} else {
				Dsq.Iframes.showLoginIframeInContainer(container, postId);
				toggle.className = 'dsq-login-active';
			}
		} else {
			Dsq.Iframes.showLoginIframeInContainer(container, postId);
		}

		if(Dsq.Utils.ie) { Dsq.Utils.fixIframesIE(); }
	};


	this.paginate = function(page, el_clicked, per_page) {
		// Use extra_params to pass any override parameters that we need to persist.
		var extra_params = '';

		// "Per page" can either be overriden by providing it as an argument
		// (per-call) or setting the disqus_per_page override variable (global).
		if(typeof per_page == 'undefined') {
			per_page = null;
		}
		if(typeof disqus_per_page != 'undefined' && per_page === null) {
			per_page = disqus_per_page;
		}

		if(typeof disqus_sort != 'undefined') {
			extra_params += '&sort=' + disqus_sort;
		}
		if(per_page !== null) {
			extra_params += '&per_page=' + per_page;
		}

		Dsq.$('dsq-pagination').innerHTML += '<img src="http://media.disqus.com/images/loading-small.gif">';
		
		if(el_clicked) {
			el_clicked.style.display = 'none';
		}
		
		Dsq.Utils.execScript('http://disqus.com/forums/jackandjillpolitics/thread.js'
			+ '?slug='	+ 'memo_to_press_barack_obama_is_not_running_for_entertainer_in_chief_99'
			+ '&p='		+ page
			+ extra_params);
	};

	this.sortBy = function(sort) {
		var disqus_script = document.createElement('script');
		var disqus_date = new Date();

		if (location.hash != '') {
			location.hash = '#disqus_thread';
		}

		if(typeof(disqus_url) == 'undefined') {
			disqus_url = disqus_href;
		}
		disqus_script.type = 'text/javascript';
		disqus_script.src = 'http://disqus.com/forums/jackandjillpolitics/thread.js'
			+ '?slug='	+ 'memo_to_press_barack_obama_is_not_running_for_entertainer_in_chief_99'
			+ '&sort='	+ sort
			+ '&title='
			+ '&'		+ disqus_date.getTime();

		Dsq.$('dsq-comments').innerHTML = '<img src="http://media.disqus.com/images/loading.gif">';
		Dsq.container.appendChild(disqus_script);
	};

	this.subscribe = function(status, email) {
		// `status` is an int -- 1 to subscribe, 0 to unsubscribe
		if(Dsq.jsonData.request.is_authenticated || email) {
			// If authenticated user OR anonymous email provided

			if(email) {
				Dsq.Popup._closePopup(null, true);
			}

			Dsq.Utils.execScript('http://disqus.com/forums/jackandjillpolitics/subscribe.js'
				+'?status=' 	+ status
				+ '&slug='		+ 'memo_to_press_barack_obama_is_not_running_for_entertainer_in_chief_99'
				+ '&email=' 	+ encodeURIComponent(email));

		} else if(!email) {
			// If anonymous user and no email has been provided yet, prompt for email

			var title = 'Subscribe to this comment thread';
			var message = ' \
				New comments will be sent directly to your email inbox! \
				<div class="dsq-subscribe-submit"> \
					<p><strong>Enter your email address below.</strong></p> \
					<input type="text" id="dsq-subscribe-email"> \
					<button onclick="Dsq.Thread.subscribe(1, Dsq.$(\'dsq-subscribe-email\').value)">Subscribe</button> \
				</div> \
			';

			Dsq.Popup.popModal(message, title);
		}
	};

	this.showSettings = function() {
		if (!Dsq.jsonData.request.is_moderator) {
			return;
		}

		/* The form has to be re-designed when more options will come out. */
		var html = 'Automatically close comments after <input size="3" id="dsq-thread-days-alive" value="' + Dsq.jsonData.thread.days_alive + '" type="text" /> days. Existing comments will still be displayed.<br /><br />(Using 0 days will disable this feature)<br /><br />'
								 + '<button onclick="Dsq.Thread.updateDaysAlive();" class="dsq-button-small"><span>Save</span></button>'
								 + '<span id="dsq-thread-settings-status" class="dsq-options-status"></span>';
		Dsq.Popup.popModal(html, 'Settings');
	};

	this.updateDaysAlive = function() {
		var days = Dsq.$('dsq-thread-days-alive').value;
		var status = Dsq.$('dsq-thread-settings-status');
		Dsq.Utils.postToUrl('http://disqus.com/forums/jackandjillpolitics/update_days_alive.js', {days:days,thread:Dsq.jsonData.thread.id});
		status.innerHTML = 'Saved!';
		window.setTimeout(function() { status.innerHTML = ''; }, 1000);
	};
};
// Dsq.Thread

Dsq.Events = function() {
	var obj = {};

	// Private
	var handlers = {};
	var getHandlers = function(event) {
		if (handlers[event] === undefined) {
			handlers[event] = [];
		}
		return handlers[event];
	};

	// Public
	// Value keys : postId, node, xtype
	obj.REPLY_IFRAME_CREATED = 1;
	// Value keys : postId, opened
	obj.REPLY_IFRAME_TOGGLED = 2;
	obj.fire = function(event, opt_value) {
		if (!event) {
			throw new Error('Unknown event');
		}
		var value = opt_value || {};
		for (var i=0; i<getHandlers(event).length; i++) {
			getHandlers(event)[i](value);
		}
	};
	obj.addHandler = function(event, callback) {
		getHandlers(event).push(callback);
	};

	return obj;
}();

/**
 * Dsq.Realtime
 */
Dsq.Realtime = new function() {
	var initialized = false;
	var interval = null;
	var last_checked = Dsq.jsonData.request.timestamp;
	var new_posts = [];
	var ongoing_request = false;
	var prev_script = null;

	function updateNewPostCount() {
		Dsq.$('dsq-realtime-alert').style.display = new_posts.length ? 'block' : 'none';

		Dsq.$('dsq-realtime-queued').innerHTML = new_posts.length
		+ ' new '
		+ Dsq.Utils.pluralize(new_posts.length, 'comment', 'comments')
		+ Dsq.Utils.pluralize(new_posts.length, ' was', ' were')
		+ ' just posted.';

		Dsq.$('dsq-realtime-show').innerHTML = '(' + Dsq.Strings.SHOW + ')';
	}

	function insertNewPosts() {
		var post_id = null;
		var after_id = Dsq.$('dsq-sort-select').value === 'oldest' ? -1 : null;

		for (var i=0; i<new_posts.length; i++) {
			post_id = new_posts[i];
			Dsq.Post.insert(after_id, post_id, Dsq.jsonData.posts[post_id].message);
			Dsq.Post.incrementPostCount();
			Dsq.Post.outlineComment(post_id);
		}
		new_posts = [];
	}

	this.enableInterval = function() {
		interval = setInterval(Dsq.Realtime.check, Dsq.jsonData.context.realtime_speed);
		Dsq.$('dsq-realtime-status').innerHTML = Dsq.Strings.ENABLED;
		Dsq.$('dsq-realtime-toggle').innerHTML = '(' + Dsq.Strings.PAUSE + ')';
	}

	this.disableInterval = function() {
		if (interval) {
			clearInterval(interval);
			interval = null;
		}
		Dsq.$('dsq-realtime-status').innerHTML = Dsq.Strings.PAUSED;
		Dsq.$('dsq-realtime-toggle').innerHTML = '(' + Dsq.Strings.RESUME + ')';
	}

	this.toggleInterval = function() {
		if (!interval) {
			Dsq.Realtime.enableInterval();
		} else {
			Dsq.Realtime.disableInterval();
		}
		return false;
	}

	this.initialize = function() {
		if (!initialized) {
			initialized = true;
			Dsq.$('dsq-realtime-toggle').onclick = this.toggleInterval;
			if (!Dsq.jsonData.forum.streaming_realtime) {
				Dsq.$('dsq-realtime-show').onclick = this.show;
				updateNewPostCount();
			}
			if (Dsq.jsonData.thread.realtime_paused) {
				Dsq.Realtime.disableInterval();
			} else {
				Dsq.Realtime.enableInterval();
			}
		}
	}

	this.show = function() {
		insertNewPosts();
		updateNewPostCount();
		return false;
	}

	this.check = function() {
		if (!ongoing_request && Dsq.jsonData.realtime_enabled) {
			if (prev_script) {
				prev_script.parentNode.removeChild(prev_script);
			}
			ongoing_request = true;
			prev_script = Dsq.Utils.execScript('http://disqus.com/forums/1985829/realtime.js?timestamp=' + last_checked);
		}
	};

	this.update = function(timestamp, posts, users) {
		ongoing_request = false;
		last_checked = timestamp;

		if (users) {
			for (var user_id in users) {
				if (users.hasOwnProperty(user_id)) {
					if (!Dsq.jsonData.users[user_id]) {
						Dsq.jsonData.users[user_id] = users[user_id];
					}
				}
			}
		}

		if (posts) {
			for (var post_id in posts) {
				if (posts.hasOwnProperty(post_id)) {
					if (!Dsq.jsonData.posts[post_id]) {
						Dsq.jsonData.posts[post_id] = posts[post_id];
						new_posts.push(post_id);
					}
				}
			}

			if (Dsq.jsonData.forum.streaming_realtime) {
				insertNewPosts();
			} else {
				updateNewPostCount();
			}
		}
	};

}();

// DEPRECATED
Dsq.Iframes = function() {
	// Different style of object from the above. Hoping to switch to this for some reason.
	var obj = {};

	// Private
	var showIframeInContainer = function(container, id, markup) {
		// Look through container for iframes, hiding them, except show one that matches id
		// If none of them matched id, create a new iframe using markup and insert it.
		// Returns the iframe node if and only if it was newly created.
		var found = false;
		for (var i=0; i<container.childNodes.length; i++) {
			var child = container.childNodes[i];
			if (child.nodeName == 'IFRAME') {
				if (child.id == id) {
					child.style.display = 'block';
					found = true;
				} else {
					child.style.display = 'none';
				}
			}
		}
		if (found) {
			return;
		}
		// The iframe wasn't found, so construct it and add it to the container.
		// Don't use innerHTML because it might reload iframes
		var div = document.createElement('div');
		div.innerHTML = markup;
		var iframe = div.childNodes[0];
		div.removeChild(iframe);
		container.appendChild(iframe);
		return iframe;
	};

	// Public
	obj.makeReplyIframeId = function(opt_postId, opt_xtype) {
		var id = 'dsq-post-add-iframe';
		if (opt_xtype) {
			id += '-' + opt_xtype;
		}
		if (opt_postId) {
			id += '-' + opt_postId;
		}
		return id;
	};
	obj.makeLoginIframeId = function(opt_postId) {
		if (!opt_postId) {
			return 'dsq-login-iframe';
		}
		return 'dsq-login-iframe-' + opt_postId;
	};
	obj.makeReplyIframeName = function(opt_postId, opt_xtype) {
		var name = 'dsq-reply-frame';
		if (opt_xtype) {
			name += '-' + opt_xtype;
		}
		if (opt_postId) {
			name += '-' + opt_postId;
		}
		return name;
	};
	obj.showReplyIframeInContainer = function(container, opt_postId, opt_extraParams, opt_className) {
		// Construct the id so we can check if it's already present.
		// Hide any other iframes we find, and show this one if it's found.
		var params = opt_extraParams || {};
		// use xtype in the id and name so we can distinguish media replies from text replies:
		var id = Dsq.Iframes.makeReplyIframeId(opt_postId, params.xtype);
		var name = Dsq.Iframes.makeReplyIframeName(opt_postId, params.xtype);
		var attributes = {
			'id': id,
			'name': name,
			'class': opt_className || 'dsq-post-reply'
			};
		var markup = Dsq.Templates.frameReply(opt_postId, opt_extraParams, attributes);
		var iframe = showIframeInContainer(container, id, markup);
		// It was newly created
		if (iframe) {
			Dsq.Events.fire(Dsq.Events.REPLY_IFRAME_CREATED, {
				postId: opt_postId,
				node: iframe,
				xtype: params.xtype
			});
		}
	};
	obj.showLoginIframeInContainer = function(container, opt_postId) {
		var id = Dsq.Iframes.makeLoginIframeId(opt_postId);
		var markup = Dsq.Templates.frameLogin({id: id});
		showIframeInContainer(container, id, markup);
	};
	obj.showReplyIframeInContainerIfAllowed = function(container, opt_postId) {
		if (Dsq.jsonData.context.show_reply) {
			obj.showReplyIframeInContainer(container, opt_postId);
		} else {
			obj.hideAllInContainer(container);
		}
	};
	obj.hideAllInContainer = function(container) {
		for (var i=0; i<container.childNodes.length; i++) {
			var child = container.childNodes[i];
			if (child.nodeName == 'IFRAME') {
				child.style.display = 'none';
			}
		}
	};

	return obj;
}();

Dsq.Twitter = new function() {
	var that = this;

	this.startTwitterConnect = function() {
		var popupParams = 'location=0,status=0,width=800,height=400';
		that._twitterWindow = window.open(Dsq.jsonData.settings.disqus_url + '/_ax/twitter/begin/', 'twitterWindow', popupParams);
		that._twitterInterval = window.setInterval(that.completeTwitterConnect, 1000);
	};

	this.completeTwitterConnect = function() {
		if (that._twitterWindow.closed) {
			window.clearInterval(that._twitterInterval);
			window.location.reload();
		}
	};
};

Dsq.Yahoo = new function() {
	var that = this;

	this.startYahooConnect = function() {
		var popupParams = 'location=0,status=0,width=800,height=400';
		that._yahooWindow = window.open(Dsq.jsonData.settings.disqus_url + '/_ax/yahoo/begin/', 'yahooWindow', popupParams);
		that._yahooInterval = window.setInterval(that.completeYahooConnect, 1000);
	};

	this.completeYahooConnect = function() {
		if (that._yahooWindow.closed) {
			window.clearInterval(that._yahooInterval);
			window.location.reload();
		}
	};
};

Dsq.OpenID = new function() {
	var that = this;

	this.requestURL = function() {
		var message = '<table class="dsq-openid-form"><tr><td style="vertical-align:top;" rowspan="2"><img src="' + Dsq.jsonData.settings.media_url + '/images/openid-icon-100x100.png" /></td>';
		message += '<td><label for="dsq-openid-url">OpenID URL:</label></td><td><input type="text" id="dsq-openid-url" /></td></tr>';
		message += '<tr><td><label for="dsq-openid-username">Display name:</label></td><td><input type="text" id="dsq-openid-username" /></td></tr>';
		message += '<tr><td class="dsq-openid-submit" colspan="3"><input type="button" value="Sign in" onclick="Dsq.OpenID.startConnect();" /></td></tr>';
		message += "</table>";

		Dsq.Popup.popModal(message, 'Sign in using OpenID');
	};

	this.startConnect = function() {
		var isblank = function(str) {
			return /^\s*$/.test(str);
		};

		var openid_url = Dsq.$('dsq-openid-url').value;
		var username = Dsq.$('dsq-openid-username').value;

		if (isblank(openid_url)) {
			return;
		}

		var popupParams = 'location=0,status=0,width=800,height=500';
		var url = Dsq.jsonData.settings.disqus_url + '/_ax/openid/begin/' + '?url=' + encodeURIComponent(openid_url) + '&username=' + encodeURIComponent(username);
		that._openidWindow = window.open(url, 'openidWindow', popupParams);
		that._openidInterval = window.setInterval(that.completeConnect, 1000);
	};

	this.completeConnect = function() {
		if (that._openidWindow.closed) {
			window.clearInterval(that._openidInterval);
			window.location.reload();
		}
	};
};

Dsq.Reaction = new function() {
	var that = this;

	this.hide = function(id) {
		Dsq.Utils.execScript('http://disqus.com/forums/jackandjillpolitics/hidereaction.js?' + 'reaction_id=' + id);
	};

	this.reportMissingReactions = function() {
		if (!Dsq.jsonData.request.is_moderator || !Dsq.jsonData.forum.reactions_enabled) {
			return;
		}

		if (Dsq.jsonData.thread.queued) {
			Dsq.Popup.popModal('Your report has been received. The system will automatically search for new reactions; if any are found, they will be displayed on this comment thread.<br/><br/>Thank&nbsp;you.',
												 'Reported missing reactions');
			return;
		}

		Dsq.Utils.execScript(Dsq.jsonData.settings.disqus_url + '/forums/jackandjillpolitics/queueurl.js');
	};
};

Dsq.CNN = function() {
	var obj = {};

	obj.authenticate = function() {
		var url = Dsq.jsonData.settings.disqus_url + "/saml/cnn/try/";
		Dsq.Utils.postToUrl(url, {'target': document.location}, true);
	};

	return obj;
}();


if(Dsq.Utils.ie6) {
	(function() {
		DSQ_HEADER_AVATAR_RE = /<div class="dsq-header-avatar"(.*?)>/gim;
		Dsq.Templates.registerFilter('postPrependHeader', function(html, post_id) {
			// Add "onmouseout" for dsq-header-avatar for dropProfile
			// functionality since IE6 cannot use :hover.
			function _headerAvatarReplace(content, inner, _unused, html) {
				return '<div class="dsq-header-avatar" '
					+ inner
					+ ' onmouseout="Dsq.Post.dropProfile(' + post_id + ')">';
			}
			html = html.replace(DSQ_HEADER_AVATAR_RE, _headerAvatarReplace);
			return html;
		});
	})();
}





	// TODO: Move Seesmic code outside of the main script.  Don't let this script clobber the global namespace.
	if(typeof seesmic == 'undefined') { var seesmic = {}; }
	seesmic.widget = new function () {
		this.callback = function (data) {
			playerVersion = data.disqusplayer;
		};
	};

	
	var scriptEl = document.createElement('script');
	scriptEl.setAttribute('type', 'text/javascript');
	scriptEl.setAttribute('src', 'http://seesmic.com/version.js?callback=seesmic.widget.callback');
	document.getElementsByTagName('head')[0].appendChild(scriptEl);

	
	var scriptEl = document.createElement('script');
	scriptEl.setAttribute('type', 'text/javascript');
	scriptEl.setAttribute('src', 'http://media.disqus.com/javascript/library/swfobject.js');
	document.getElementsByTagName('head')[0].appendChild(scriptEl);

	function see_play_video(_videoUri, _add) {
		var swf = !!playerVersion ? playerVersion : 'http://seesmic.com/embeds/StandalonePlayer.swf';

		flashcontentDiv = Dsq.$(_videoUri + '_content');
		previewDiv = Dsq.$('dsq-seesmic-' + _videoUri + '_preview');
		hideDiv = Dsq.$('dsq-seesmic-' + _videoUri + '_hide');
		showDiv = Dsq.$('dsq-seesmic-' + _videoUri + '_show');
		if(_add) {
			// push flash widget
			var so = new SWFObject(swf, 'sotester', '300', '270', '9', '#000000');
			so.addVariable('video', _videoUri);
			so.addParam('allowFullScreen', 'true');
			so.addParam('allowScriptAccess','always');
			so.useExpressInstall('swfobject/expressinstall.swf');
			so.write(_videoUri + '_content');

			previewDiv.style.display = 'none';
			hideDiv.style.display = 'block';
			showDiv.style.display = 'none';
		}
		else {
			flashcontentDiv.innerHTML = '';
			previewDiv.style.display = 'block';
			hideDiv.style.display = 'none';
			showDiv.style.display = 'block';
		}
	};





(function() {
	//
	// Load theme.  This overrides the base templates with template functions
	// from the respective themes.
	//
	if (Dsq.jsonData.integration.theme == 4) {
		var theme = 'narcissus';
		// HACK: Set variable on window to use post message.
		window.disqus_use_postmessage = true;

		
		for(var prop in Dsq.Themes[theme]) {
			if(Dsq.Themes[theme] && Dsq.Themes[theme].hasOwnProperty(prop)) {
				Dsq.Templates[prop] = Dsq.Themes[theme][prop];
			}
		}
		
		for(var prop in Dsq.Post) {
			if(Dsq.Themes[theme] && Dsq.Themes[theme].hasOwnProperty(prop)) {
				Dsq.Post[prop] = Dsq.Themes[theme][prop];
			}
		}
	}

	//
	// Register templates.  This must be done after all themes are loaded.
	//
	Dsq.Templates.registerTemplate('authPost', Dsq.Templates.authPost);
	Dsq.Templates.registerTemplate('header', Dsq.Templates.header);
	Dsq.Templates.registerTemplate('footer', Dsq.Templates.footer);
	Dsq.Templates.registerTemplate('trackbacks', Dsq.Templates.trackbacks);
	Dsq.Templates.registerTemplate('reactions', Dsq.Templates.reactions);
	Dsq.Templates.registerTemplate('prependPost', Dsq.Templates.prependPost);
	Dsq.Templates.registerTemplate('appendPost', Dsq.Templates.appendPost);
	Dsq.Templates.registerTemplate('postPrependHeader', Dsq.Templates.postPrependHeader);
	Dsq.Templates.registerTemplate('postAppendHeader', Dsq.Templates.postAppendHeader);
	Dsq.Templates.registerTemplate('preBody', Dsq.Templates.preBody);
	Dsq.Templates.registerTemplate('postBody', Dsq.Templates.postBody);
	Dsq.Templates.registerTemplate('postFooter', Dsq.Templates.postFooter);
	Dsq.Templates.registerTemplate('_popupGeneric', Dsq.Templates._popupGeneric);
	Dsq.Templates.registerTemplate('voted', Dsq.Templates.voted);
	Dsq.Templates.registerTemplate('popupProfile', Dsq.Templates.popupProfile);
	Dsq.Templates.registerTemplate('postBox', Dsq.Templates.postBox);
	Dsq.Templates.registerTemplate('pagination', Dsq.Templates.pagination);
	Dsq.Templates.registerTemplate('postComment_onSuccess', Dsq.Templates.postComment_onSuccess);

})();

Dsq.container.className = "clearfix";
Dsq.container.innerHTML = ' \
<ul id="dsq-comments">\
	 <li id="dsq-comment-927728">\
	 <div id="dsq-comment-header-927728" class="dsq-comment-header">\
	 <cite id="dsq-cite-927728" class="dsq-comment-cite">\
	 <a id="dsq-author-user-927728" href="http://craighickman.blogspot.com" target="_blank" rel="nofollow">CraigHickman</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-927728" class="dsq-comment-body">\
	 <div id="dsq-comment-message-927728" class="dsq-comment-message">Speaking of jokes.<br><br>Keith just reported about the 1986 joke McCain told where the punch line was a woman enjoyed being brutally raped by an ape.<br><br>Yes.<br><br>Go right ahead and make the jump. <br><br>Anyway.<br><br>Keith and Rachel talked about how if it was discovered that Barack had told this joke we would be on wall-to-wall special coverage as I type this. But other than Countdown or the blogs, this corporate media is silent.<br><br>Meantime Jesse Jackson uttering the N-word, which, by the way, Fox refuses to let us hear him utter, gets, to my dismay, lots of attention.<br><br>To quote Susan Rice, <i>surreal</i> indeed.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-927413">\
	 <div id="dsq-comment-header-927413" class="dsq-comment-header">\
	 <cite id="dsq-cite-927413" class="dsq-comment-cite">\
	 <a id="dsq-author-user-927413" href="http://craighickman.blogspot.com" target="_blank" rel="nofollow">CraigHickman</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-927413" class="dsq-comment-body">\
	 <div id="dsq-comment-message-927413" class="dsq-comment-message">Standing up and applauding furiously.<br><br>Bravo.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-927616">\
	 <div id="dsq-comment-header-927616" class="dsq-comment-header">\
	 <cite id="dsq-cite-927616" class="dsq-comment-cite">\
	 <span id="dsq-author-user-927616">JJ</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-927616" class="dsq-comment-body">\
	 <div id="dsq-comment-message-927616" class="dsq-comment-message">As a white Jack and Jill reader, I have to agree with points 1 and 2 from RBL, but I\'m not so sure about #3.<br><br>I don\'t think it\'s that (most) white people expect blacks to be funny or entertaining, but more about the lame "who would I like to have a beer with" presidential test (even though I\'d much prefer to have a beer with Obama). Just look back to the last 4 elections. The supposedly more beer-worthy candidate has won every time. Humor contributes to that beer-factor that the media plays up so much.<br><br>I\'m glad his personality and campaign border on too-serious. Running the country is serious business, we have a lot of serious problems, and the voters need to seriously consider what\'s happened to our political system, not make jokes about it. The jokes make me laugh to the point of crying. All in all, the serious tone seems quite appropriate to me.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-927673">\
	 <div id="dsq-comment-header-927673" class="dsq-comment-header">\
	 <cite id="dsq-cite-927673" class="dsq-comment-cite">\
	 <span id="dsq-author-user-927673">rikyrah</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-927673" class="dsq-comment-body">\
	 <div id="dsq-comment-message-927673" class="dsq-comment-message">JJ,<br><br>I believe #3 is cultural. <br><br>Like RBL, though I have what people consider to be a \' friendly face\', and can crack a joke with the best of them,  I\'m not one who, goes out of her way to make White people feel comfortable. I don\'t believe that\'s my job in life. <br><br>" Lighten up" is something I\'ve heard many a time. <br><br>NEVER from Whites who have known me for a long time, and who are in my circle of friends. <br><br>But, yes, I\'ve been told to  \'lighten up\'. <br><br>I believe RBL sees it through that cultural lens. And, especially being a Black male, who, from the beginning of this country, has always been seen as the most threatening being on the planet. (until Arabs and Muslims came along..but they\'re late to the game.)</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-928575">\
	 <div id="dsq-comment-header-928575" class="dsq-comment-header">\
	 <cite id="dsq-cite-928575" class="dsq-comment-cite">\
	 <span id="dsq-author-user-928575">Town</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-928575" class="dsq-comment-body">\
	 <div id="dsq-comment-message-928575" class="dsq-comment-message">"The supposedly more beer-worthy candidate has won every time. Humor contributes to that beer-factor that the media plays up so much."<br><br><br>Yeah, and look where that got us.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-927763">\
	 <div id="dsq-comment-header-927763" class="dsq-comment-header">\
	 <cite id="dsq-cite-927763" class="dsq-comment-cite">\
	 <span id="dsq-author-user-927763">jelana</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-927763" class="dsq-comment-body">\
	 <div id="dsq-comment-message-927763" class="dsq-comment-message">Yup,<br>Our cultures and priorities are definitely different</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-927828">\
	 <div id="dsq-comment-header-927828" class="dsq-comment-header">\
	 <cite id="dsq-cite-927828" class="dsq-comment-cite">\
	 <span id="dsq-author-user-927828">Michelle</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-927828" class="dsq-comment-body">\
	 <div id="dsq-comment-message-927828" class="dsq-comment-message"><i>Black people are not here to entertain white people. We are not here to make them laugh, we are not here to make them cry, we are not here to make them angry. We are human beings living our lives just like them. We are under no obligation to make them “smile.”<br><br>Barack Obama is running to be the most powerful politician in America during one of the most unsettled times in this country’s history. And white folks are wondering if he is going to lose because he doesn’t make them smile?</i><br><br>Yes. From this perspective white people are the only real humans and everyone else is just there as objects in relation to that --"You don\'t actually exist except as you please or displease ME ME ME."  <br><br>So. Ugly.<br><br>Anyway, I think this post is just excellent. <br><br>#3 is extremely accurate, in my view.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-927852">\
	 <div id="dsq-comment-header-927852" class="dsq-comment-header">\
	 <cite id="dsq-cite-927852" class="dsq-comment-cite">\
	 <span id="dsq-author-user-927852">JJ</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-927852" class="dsq-comment-body">\
	 <div id="dsq-comment-message-927852" class="dsq-comment-message">Well, with anything that can be viewed from many perspectives and cultural lenses, there\'s probably a bit of truth to each conclusion. I\'d just be hesitant to ascribe all, or even most, of the "humorless" criticism to racial reasons consider how important this aspect of general election dynamics has been in the past.<br><br>I definitely have noticed pressure on many other black celebrities, to "lighten up", and to even plain shut up about social or political issues, but I haven\'t really noticed that pressure as much towards black politicians. Most nationally known black political figures have had a pretty serious tone about them, and I haven\'t caught the lighten up vibe much. Maybe I haven\'t been paying enough attention.<br><br>I\'ll agree that no matter what the reason, it\'s a silly issue (sorry :), along with the elitism claims (I thought elite was good?). Luckily, I don\'t think it\'ll have any real effect this time, and for once we\'ll be electing the more serious candidate.<br><br>Anyway, thanks for this blog. It\'s in my top 3 for politics this season.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-928083">\
	 <div id="dsq-comment-header-928083" class="dsq-comment-header">\
	 <cite id="dsq-cite-928083" class="dsq-comment-cite">\
	 <a id="dsq-author-user-928083" href="http://www.reachblack.blogspot.com" target="_blank" rel="nofollow">B-Serious</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-928083" class="dsq-comment-body">\
	 <div id="dsq-comment-message-928083" class="dsq-comment-message">Obama can let stuff slide AFTER he wins this election.  Until then, I\'m sticking to my new theme for the campaign . . . "This ain\'t the time to be cute."<br><br>Just focus on winning.  Save the style-points for some other time.<br><br>I don\'t want to wait for people to "get it" when we could just as easily be direct and unequivocal in our message.  Be assertive.  Don\'t rest on satire to get your point across. . . just make your point. <br><br>So the New Yorker wanted to convey the fact that Obama\'s not a Muslim?  Well how about this . . . put his face on the cover with the words, "NOT A MUSLIM" in big bold red letters across his forehead.  Then have an article dispelling the rumor and making the point that the word "Muslim" shouldn\'t be a perjorative.  <br><br>See, Rush Limbaugh can be "cute."  He can afford to be "cute" and "clever."  After all, he\'s won the past two elections.  We, on the other hand, ain\'t won jack in a long time.  Stay focused.<br><br>McCain can joke about Ape Rape and get a pat on the back.  But let Obama brush his shoulders off and you\'ve got the MSM asking whether that means he\'s a sexist.  This brotha can\'t fart without having some pundit ascribe an ulterior motive.  <br><br>Trust, the media is NOT Obama\'s friend.  Every one of those journalists would sell their souls if it meant they\'d get the exclusive scoop to tear Obama down.  No matter how much they want to see him crack a joke, you\'d best believe they\'ve prepared several ways to twist his words for the next manufactured "nontroversy."<br><br>No thank you.  People want to joke?  Fine, talk about his big ears; mock his speech patterns; joke about his skinny frame.  But Obama has no obligation to "let it slide" when it comes to matters of race, religion and "terrorist fist-jabs."<br><br>They can call Obama uptight all they want, but there\'s a reason why people don\'t "go there" with McCain\'s military service . . . he won\'t let them.  In fact, his camp makes it clear that you better think twice before you even think about challenging his military record (joking or not).  He\'s got that game on lock, so much that you can\'t mention the word "McCain" without first prefacing that with "war hero" or "he deserves our honor and respect."  That\'s a walking campaign endorsement.<br><br>No.  There are many ways to show Obama\'s lighter side.  Take Rachel Maddows advice and go dance with Ellen again; Make a stop on SNL; have a heart-to-heart with Oprah.  <br><br>But draw that line in the sand.  It\'s the small things that get you in the end.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-928234">\
	 <div id="dsq-comment-header-928234" class="dsq-comment-header">\
	 <cite id="dsq-cite-928234" class="dsq-comment-cite">\
	 <a id="dsq-author-user-928234" href="http://craighickman.blogspot.com" target="_blank" rel="nofollow">CraigHickman</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-928234" class="dsq-comment-body">\
	 <div id="dsq-comment-message-928234" class="dsq-comment-message">Say it again.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-928481">\
	 <div id="dsq-comment-header-928481" class="dsq-comment-header">\
	 <cite id="dsq-cite-928481" class="dsq-comment-cite">\
	 <span id="dsq-author-user-928481">GreenLadyHere</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-928481" class="dsq-comment-body">\
	 <div id="dsq-comment-message-928481" class="dsq-comment-message">B:  As your NAME bespeaks - Mr. Obama must keep that "professional, SERIOUS distance from people, lest they get too FAMILIAR and straight into YOUR BUI\'NESS!!!<br>Secondly, "they" have searched high and low for something derogatory that they can have FUN with and EXPLOIT!  Cain\'t find it!  That\'s their PROBLEM!!<br>Keep the "GAME FACE" on Mr. Obama!  <br>Great article!!!!!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-928428">\
	 <div id="dsq-comment-header-928428" class="dsq-comment-header">\
	 <cite id="dsq-cite-928428" class="dsq-comment-cite">\
	 <span id="dsq-author-user-928428">rikyrah</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-928428" class="dsq-comment-body">\
	 <div id="dsq-comment-message-928428" class="dsq-comment-message">You\'re on the money.<br><br>As always.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-931419">\
	 <div id="dsq-comment-header-931419" class="dsq-comment-header">\
	 <cite id="dsq-cite-931419" class="dsq-comment-cite">\
	 <span id="dsq-author-user-931419">RonnieB</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-931419" class="dsq-comment-body">\
	 <div id="dsq-comment-message-931419" class="dsq-comment-message">Preach preacha!!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-928096">\
	 <div id="dsq-comment-header-928096" class="dsq-comment-header">\
	 <cite id="dsq-cite-928096" class="dsq-comment-cite">\
	 <span id="dsq-author-user-928096">Nellcote</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-928096" class="dsq-comment-body">\
	 <div id="dsq-comment-message-928096" class="dsq-comment-message">I try to watch Obama\'s speeches and things as much as possible & find him to be pretty humorous on occasion.  I laughed when he said " I think you\'re likeable enough, Hillary".  Maybe they just don\'t get his wry sense of humour.  On the other hand they\'re apparently all over the satire...</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-928161">\
	 <div id="dsq-comment-header-928161" class="dsq-comment-header">\
	 <cite id="dsq-cite-928161" class="dsq-comment-cite">\
	 <a id="dsq-author-user-928161" href="http://www.reachblack.blogspot.com" target="_blank" rel="nofollow">B-Serious</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-928161" class="dsq-comment-body">\
	 <div id="dsq-comment-message-928161" class="dsq-comment-message">@Nellcote,<br><br>Exactly.  And, to this day, some think Hillary won New Hampshire because of that "joke."</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-928995">\
	 <div id="dsq-comment-header-928995" class="dsq-comment-header">\
	 <cite id="dsq-cite-928995" class="dsq-comment-cite">\
	 <span id="dsq-author-user-928995">TRW</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-928995" class="dsq-comment-body">\
	 <div id="dsq-comment-message-928995" class="dsq-comment-message">Yeah, I was with you on that one.  I was really confused when they tried to say it was a put down.  I just think he has a wry sense of humor and people want a fake controversy.  So as B-Serious noted above, while people claim they want him to be funny, lighten up, and make jokes, but the minute they don\'t "get" the joke because its over their head, then it will create another controversy.  <br><br>The man CAN\'T win.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-931971">\
	 <div id="dsq-comment-header-931971" class="dsq-comment-header">\
	 <cite id="dsq-cite-931971" class="dsq-comment-cite">\
	 <span id="dsq-author-user-931971">Town</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-931971" class="dsq-comment-body">\
	 <div id="dsq-comment-message-931971" class="dsq-comment-message">Actually I find Barack Obama to be quite hilarious.  He is funny but it goes over most people\'s heads.  I know sometimes during the debates I would see him being grilled and he would break out into this big grin and you could see the wheels turning in his head, like he was thinking "Ok I see what\'s up, punk."  I know I was rolling on the floor when he gave that interview to Robin Roberts about "don\'t mess with Michelle" and he had this look on this face that looked like "and I mean that," and Robin Roberts was looking kinda uncomfortable and then he broke out that "How ya like me now" grin while Michelle was in the background going "bwahh haa haa."    They either want Obama to go into a rage (which is why they keep attacking Michelle**) or they want him to coon and buck dancing.  And because he\'s doing neither they can\'t figure the man out.<br><br>**Once they figure out that going after Michelle is not going to make Obama break down, they will start indirectly attacking the children and they\'re going to use a Magical Negro to do it.  Bet on it.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-932353">\
	 <div id="dsq-comment-header-932353" class="dsq-comment-header">\
	 <cite id="dsq-cite-932353" class="dsq-comment-cite">\
	 <span id="dsq-author-user-932353">rikyrah</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-932353" class="dsq-comment-body">\
	 <div id="dsq-comment-message-932353" class="dsq-comment-message">I have a Sistafriend who said the same thing to me last night. Get ready for the attacks on the WeeMichelles. Oh, I can\'t wait to hear how those mofos try and justify THAT bullshit. <br><br>But, we\'ll be here, pushing back.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-932425">\
	 <div id="dsq-comment-header-932425" class="dsq-comment-header">\
	 <cite id="dsq-cite-932425" class="dsq-comment-cite">\
	 <span id="dsq-author-user-932425">Town</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-932425" class="dsq-comment-body">\
	 <div id="dsq-comment-message-932425" class="dsq-comment-message">It will be disguised as "concern" for the girls.  Or they will have some reports about black girls/children and somehow tie the Obama girls into it.  And they\'ll get a person of color to do the dirty -- they want their hands clean.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-937256">\
	 <div id="dsq-comment-header-937256" class="dsq-comment-header">\
	 <cite id="dsq-cite-937256" class="dsq-comment-cite">\
	 <span id="dsq-author-user-937256">TRW</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-937256" class="dsq-comment-body">\
	 <div id="dsq-comment-message-937256" class="dsq-comment-message">When he did that "lay off my wife" line I nearly fell out of my chair, because you knew he was playin\' but not really. The smile said yeah, you think I\'m joking but I\'m not.  So I agree.  People just want to push his buttons and since its hard to figure him out and get him flustered they are literally throwing every attack at him that they can.  <br><br>I hope and pray that they do not go after the weeMichelles.  That would be too much.  I would only march on the rarest of occasions, but a march against attacking those girls would have my name all over it.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-928542">\
	 <div id="dsq-comment-header-928542" class="dsq-comment-header">\
	 <cite id="dsq-cite-928542" class="dsq-comment-cite">\
	 <a id="dsq-author-user-928542" href="http://realpeeplz.blogspot.com/" target="_blank" rel="nofollow">smoothie</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-928542" class="dsq-comment-body">\
	 <div id="dsq-comment-message-928542" class="dsq-comment-message">First things first<br>#3 is about the most ACCURATE comment Ive read  on a blog about the currrent topic ever. As a proffesional, and someone who\'s lead people in the military at a time, I was labled an angry black man b/c I actually had the nerve to be on time, proper, fair in my discipline of subordinates, and most importantly , I didnt kiss any ass. Reguardless the color (but to be fair, a large part of the leadership in the military is white)<br><br>With that said, Baracks been hilarious to me.  I dont know where to begin, Brushing his shoulders off, Calling Hillary Annie Oakley, and calling Senator Gramm Dr. Phil. Got me giggling. But, his humor as much as it makes us laugh, comes off as him being "uppity" which i think is code for them saying who does this nigger think he is.<br><br> As to B\'s point about John McCain\'s military service. I couldnt agree more. Of course IT SHOULD  BE up for grabs, but rethugs have painted anyone who makes a comment bad about military servicemen as unpatriotic and unworthy of there security. <br>I COULDNT CALL BS MORE TO THIS POINT. If you all knew how much of your Tax dollar was really wasted on the military, I can assure you, it wouldnt be just John McCain who\'d be put under the radar, but anyone who\'s ever ran using it as a backbone of there campaign would be heavinly scrutinized. no matter what party they claim.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-929054">\
	 <div id="dsq-comment-header-929054" class="dsq-comment-header">\
	 <cite id="dsq-cite-929054" class="dsq-comment-cite">\
	 <span id="dsq-author-user-929054">TRW</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-929054" class="dsq-comment-body">\
	 <div id="dsq-comment-message-929054" class="dsq-comment-message">Wait, I forgot about the Hillary , Annie Oakley joke.  That was hilarious actually.  I re-watched that video a couple of times thinking, this dude is funny.  Same thing with the Gramm/Dr. Phil thing.  So you\'re right.  Barack is funny, maybe it just that some people in the press want him to be funny in a certain way though.  <br><br>As far as the whole military thing, I can\'t tell you how disappointed I was that the Obama campaign didn\'t back up Wesley Clark or at least read the interview he gave.  People can have mixed feelings about Wesley Clark, but the man was clearly repeating verbatim what the interviewer asked him, i.e. qualification for President being shot down in a fighter plane, etc (paraphrase).  And then McCain comes out about how he was trying to demean his service.  I thought that whole thing was total BS.  But you\'re absolutely right.  Even if people do have legitimate questions about McCain\'s service in this election it seems to be off limits, whereas for Kerry, no one had any qualms about demeaning his service.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-928711">\
	 <div id="dsq-comment-header-928711" class="dsq-comment-header">\
	 <cite id="dsq-cite-928711" class="dsq-comment-cite">\
	 <span id="dsq-author-user-928711">Miss-Opinion </span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-928711" class="dsq-comment-body">\
	 <div id="dsq-comment-message-928711" class="dsq-comment-message">Thank you for this post. Glad I\'m not the only one seeing it. I tried to watch that video but I couldn\'t bring myself to watch that mess. But this is what always happens. Someone does or says something racist or wrong about him and they run out of angles on the incident and turn it into being Obama\'s fault. One minute it\'s outrage against The New Yorker and the next it\'s oh well he\'s to blame for the New Yorkers horrible cover. If only HE had a sense of humor about it it would all be better.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-929026">\
	 <div id="dsq-comment-header-929026" class="dsq-comment-header">\
	 <cite id="dsq-cite-929026" class="dsq-comment-cite">\
	 <span id="dsq-author-user-929026">hopee</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-929026" class="dsq-comment-body">\
	 <div id="dsq-comment-message-929026" class="dsq-comment-message">I had to send Maureen Dowd an email because I\'m tired of her constant attempts to make Obama appear an effete elitist with snooty tastes. Imagine a black man who doesn\'t like sweets, what could be the matter?  What does it mean?   Only in America could the guy who recenlty paid off his student loans be considered an elitist when he\'s running against a guy whose wife charged almost a million dollars on one credit card in one month.  Somehow because the Obamas shop at Whole Foods and eat "exotic" things like arugula, they\'re out of touch with middle America.  I think some people want him to bust out some fried chicken, lemonade, and a nice piece of watermelon to make the media comfortable.  "Oh, did you see him spit out the seeds before he drank from his forty?  See, he is black enough.  Now if only he\'ll spit a rhyme my day will be complete."  <br> Another storyline that I found quite amusing was the consternation about some comics inability to make fun of Obama.  If a comedian cannot make a joke about Obama that is not racially based then he needs to find a new career.    <br>  And I couldn\'t agree more with the comments about suddenly Obama is responsible for everything that comes out about him.  I watched Jon Stewart and his it\'s "a fuc*king satire" moment and complely lost it.  I then watched the editor of the New Yorker, David Remnick, on Charlie Rose, blame Obama (he\'s too thin skinned) for the media\'s overreaction; and then he thanked Jon Stewart for his support and understanding.  Are you kidding me?  You put out a cover that could be construed as anti-Muslim and anti-black and somehow it\'s Obama\'s fault that people were offended.  Any idea that this cover was in fact intended to highlight the ridiculousness of the smears was erased after five minutes of watching that smug prick bask in the controversy he caused.  I think what has been so surprising about this process is watching the so-called left struggle with their own issues about race.  Suddenly the people who were oh-so-progressive when it comes to race (theoretically) seem to struggle when they are confronted with someone who doesn\'t fit neatly into those boxes that have been reserved for the "exotics."  (And by the way, if I hear Chris Matthews refer to Obama as exotic one more time, I\'m going to scream.)  <br>And If Obama is smart and I know he is, he will continue to keep the media at a respectful distance.  Since  he secured the nomination they have taken great pleasure in twisting his words and perpetuating untruths about his "shifting" positions.  Anyone who has heard Obama speak about Iraq for the last 18 months, knows he is saying exactly the same thing today that he said then.  So, why is Mark Halperin of Time magazine on MSNBC this morning (or yesterday)  talking about Obama\'s flip flop?  They want this race to be close and they will continue to give McCain a free ride.  They are going to scrutinize every move that Obama makes and should he crack a joke, they will call him arrogant and Jon Stewart will call him a douche, again. (Yes, Jon is on my sh*t list with his seeming inability to be critical of the insanity that is McCain.)  That is the minefield that awatis Obama.  The good news is I think he knows it.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-929151">\
	 <div id="dsq-comment-header-929151" class="dsq-comment-header">\
	 <cite id="dsq-cite-929151" class="dsq-comment-cite">\
	 <span id="dsq-author-user-929151">TRW</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-929151" class="dsq-comment-body">\
	 <div id="dsq-comment-message-929151" class="dsq-comment-message">Co-sign, 100%.  I love Jon Stewart.  I think that he is one of the best things that has happened to political commentary, but I was pissed off about some of his comments with regards to the New Yorker cover the other day.  Specifically when he tried to call out Obama by saying, "the only people who get angry at cartoons are Muslim extremists and you are not a Muslim extremist."  when I heard that, I literally said WTF?   So now only Muslim extremist are the ones who object to depictions of themselves or their loved ones that they deem offensive?  Really?  Is he on that?  Because the last time I checked, people asked for Obama\'s opinion, and he exercised his First Amendment right by calling that "satire" tasteless and offensive.  But silly me, what do I know.  It just seems like that people in the press want Obama to shut up, eat s*** with a knife and fork , and smile about it, and when he doesn\'t they criticize him for it.  <br><br>Chris Matthews is another one.  He has this weird man crush on Obama, but during the primaries he was saying stuff like, yeah Obama is popular with African Americans, but how is he going to appeal to regular folks.  Yup. There is Black people and there is regular folks.   Now, I\'m sure that he didn\'t mean it to be offensive, but it just goes to show you that subconsciously,  some "progressives" or "liberals" still view Black people as this other that needs to be figured out, or categorized.  <br><br>"</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-929092">\
	 <div id="dsq-comment-header-929092" class="dsq-comment-header">\
	 <cite id="dsq-cite-929092" class="dsq-comment-cite">\
	 <span id="dsq-author-user-929092">GreenLadyHere</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-929092" class="dsq-comment-body">\
	 <div id="dsq-comment-message-929092" class="dsq-comment-message">Hope:  Co-signing!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-929323">\
	 <div id="dsq-comment-header-929323" class="dsq-comment-header">\
	 <cite id="dsq-cite-929323" class="dsq-comment-cite">\
	 <span id="dsq-author-user-929323">Lisa M</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-929323" class="dsq-comment-body">\
	 <div id="dsq-comment-message-929323" class="dsq-comment-message">David Gregory is an idiot. He used to be pretty decent. It seems after dancing with Karl Rove he\'s become just another MSM hack.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-929631">\
	 <div id="dsq-comment-header-929631" class="dsq-comment-header">\
	 <cite id="dsq-cite-929631" class="dsq-comment-cite">\
	 <span id="dsq-author-user-929631">bison1</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-929631" class="dsq-comment-body">\
	 <div id="dsq-comment-message-929631" class="dsq-comment-message">White Americas have much to learn about Black Americans.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-929690">\
	 <div id="dsq-comment-header-929690" class="dsq-comment-header">\
	 <cite id="dsq-cite-929690" class="dsq-comment-cite">\
	 <span id="dsq-author-user-929690">bison1</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-929690" class="dsq-comment-body">\
	 <div id="dsq-comment-message-929690" class="dsq-comment-message">This post was needed.  Maureen Dowd’s wit works with main stream White Americas, but she is out of her element when it comes to Black culture and humor.  Black people understand the twoness that permeates the American landscape.  Black people are often guarded, because we have to be.  Not angry, just mindful. We understand how familiarity can breed disrespect and contempt with those who are only vaguely  familiar with you.<br><br>On the lighter side, I thought the commercial of the car salesman parodying Obama was funny.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-930937">\
	 <div id="dsq-comment-header-930937" class="dsq-comment-header">\
	 <cite id="dsq-cite-930937" class="dsq-comment-cite">\
	 <span id="dsq-author-user-930937">lene</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-930937" class="dsq-comment-body">\
	 <div id="dsq-comment-message-930937" class="dsq-comment-message">Barack Obama is funny in a way I\'ve never seen comedians be funny. <br><br>The first inkling came from <a href="http://youtube.com/watch?v=_uCn6rFFJ2s" rel="nofollow">a one liner at a debate</a> just before the Iowa primaries. <br><br>(It also shut Hillary, who was laying it on a bit thick, up). <br><br>Then the next example came <a href="http://www.youtube.com/watch?v=wVlZZdxZ9AU" rel="nofollow">during a rally at Nevada. </a><br><br>Of course there was the dirt off your shoulders, Annie Oakley, Dr. Phil and his response after hearing Hillary claim his message was tantamount to wishing a choir of angels will sing and unicorns will make the world better ("Hey, that sounds good to me."). <br><br>So the fact is, the guy isn\'t humorless. He\'s funny and unlike Hillary or McCain, he has great timing and delivery. <br><br>He\'s just not a buffoonish character. He\'s good looking but he doesn\'t appear overly high maintenance. (No $400 haircuts for him). Extreme displays of emotion are unheard of, unless it\'s during a passionate barnstormer of a speech. He\'s intelligent but he\'s doesn\'t come off as too intellectual. The change message he talks about has been painted by his opponents as overly idealistic, but there is this undercurrent that Obama is not some pie in the sky dreamer. His campaign has been drama free from the start. <br><br>So I have watched the late night comedy shows and there is no easy material for him. They usually fall back on his race or his African heritage. "I have a package, and it needs some stimulus," anyone? <br><br>Comedians can try to forcing a buffoonish personality on Obama, or falling back on his race, but it won\'t work. It doesn\'t come off as something unique to Obama so it will never really be all that funny. <br> <br>The few successful attempts at comedy I\'ve seen have been when Obama plays the straight man to someone else\'s fool.<br><br>That\'s why they\'re hoping he picks a vice president that\'s joke fodder. That what the late night shows are left with.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-930948">\
	 <div id="dsq-comment-header-930948" class="dsq-comment-header">\
	 <cite id="dsq-cite-930948" class="dsq-comment-cite">\
	 <span id="dsq-author-user-930948">lene</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-930948" class="dsq-comment-body">\
	 <div id="dsq-comment-message-930948" class="dsq-comment-message">crap, I meant in a way I\'ve never seen candidates be funny, not comedians. Sorry!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-935036">\
	 <div id="dsq-comment-header-935036" class="dsq-comment-header">\
	 <cite id="dsq-cite-935036" class="dsq-comment-cite">\
	 <span id="dsq-author-user-935036">GreenLadyHere</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-935036" class="dsq-comment-body">\
	 <div id="dsq-comment-message-935036" class="dsq-comment-message">lene:  Great post!!!  I love his subtle humor!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-931463">\
	 <div id="dsq-comment-header-931463" class="dsq-comment-header">\
	 <cite id="dsq-cite-931463" class="dsq-comment-cite">\
	 <span id="dsq-author-user-931463">RonnieB</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-931463" class="dsq-comment-body">\
	 <div id="dsq-comment-message-931463" class="dsq-comment-message">Thanks for the reminder about Annie Oakley; the shoulder brush (white folks over 25,  and maybe Black folks over 40, didn\'t get the inside joke); the "you\'re likeable enough, Hillary; and many others.<br><br>It\'s become quite clear that some in the media are expecting that Barack to channel his inner Dave Chapelle--I mean, we all have an inner Dave Chapelle, right?</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-931771">\
	 <div id="dsq-comment-header-931771" class="dsq-comment-header">\
	 <cite id="dsq-cite-931771" class="dsq-comment-cite">\
	 <span id="dsq-author-user-931771">Michele</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-931771" class="dsq-comment-body">\
	 <div id="dsq-comment-message-931771" class="dsq-comment-message">My only issue with Cindy McCain is that the first time I heard her speak was to make a dig at Michelle.  But, I\'m still not going to rag on Cindy.  Frankly, she looks shell-shocked.  I wish her well.  It can\'t be easy being married to John McCain, or going through this process.<br><br>I reserve the right to change my mind about going after her if she decides to go after Michelle again.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-931908">\
	 <div id="dsq-comment-header-931908" class="dsq-comment-header">\
	 <cite id="dsq-cite-931908" class="dsq-comment-cite">\
	 <span id="dsq-author-user-931908">delfinajones</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-931908" class="dsq-comment-body">\
	 <div id="dsq-comment-message-931908" class="dsq-comment-message">You are so right!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-931966">\
	 <div id="dsq-comment-header-931966" class="dsq-comment-header">\
	 <cite id="dsq-cite-931966" class="dsq-comment-cite">\
	 <span id="dsq-author-user-931966">Jay</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-931966" class="dsq-comment-body">\
	 <div id="dsq-comment-message-931966" class="dsq-comment-message">OMG - open thread link worthy!!!<br><a href="http://ny.metro.us/metro/local/article/Obama_slave_shirt_sparks_lawsuit_threat/13001.html" rel="nofollow">Obama is my slave T-shirt</a></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-932004">\
	 <div id="dsq-comment-header-932004" class="dsq-comment-header">\
	 <cite id="dsq-cite-932004" class="dsq-comment-cite">\
	 <span id="dsq-author-user-932004">bison1</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-932004" class="dsq-comment-body">\
	 <div id="dsq-comment-message-932004" class="dsq-comment-message">Should Obama tell more jokes or be a joker?<br><br>Many White Americas have much to learn about Black Americans,  their culture, and sense of self.  I thought the commercial of the car salesman parodying Obama was funny. Obama was being mock. So in answer to Maureen Dowd question, Obama can be mock. Maureen Dowd’s wit works well with main stream White Americas, – and I have no problems with her Bama spoof – but she is out of her element when it comes to having an appreciation for black culture and humor. Black people understand how the vines of twoness wrap around American’s landscape.  Black people are often guarded, because we have to be.  Not angry, just mindful. We understand how familiarity can breed disrespect and contempt from those who are only vaguely acquainted with you.  Many Americas do not  know him merely because he has not been on the national political scene for a very long time, they do not know him because many Americans do not really know the nuances and sensibilities of  black behavior.  The closest many every got to seeing it was from watching the televison show “In Living Color.’</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-932393">\
	 <div id="dsq-comment-header-932393" class="dsq-comment-header">\
	 <cite id="dsq-cite-932393" class="dsq-comment-cite">\
	 <a id="dsq-author-user-932393" href="http://craighickman.blogspot.com" target="_blank" rel="nofollow">CraigHickman</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-932393" class="dsq-comment-body">\
	 <div id="dsq-comment-message-932393" class="dsq-comment-message">Very well said.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-932223">\
	 <div id="dsq-comment-header-932223" class="dsq-comment-header">\
	 <cite id="dsq-cite-932223" class="dsq-comment-cite">\
	 <a id="dsq-author-user-932223" href="http://www.gettogetha.com/blog" target="_blank" rel="nofollow">Get Togetha</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-932223" class="dsq-comment-body">\
	 <div id="dsq-comment-message-932223" class="dsq-comment-message">Obama is the Matrix. Let the comedians remain in a quandary over what and how to say.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-932343">\
	 <div id="dsq-comment-header-932343" class="dsq-comment-header">\
	 <cite id="dsq-cite-932343" class="dsq-comment-cite">\
	 <a id="dsq-author-user-932343" href="http://roadkillrefugee.wordpress.com" target="_blank" rel="nofollow">roadkill refugee</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-932343" class="dsq-comment-body">\
	 <div id="dsq-comment-message-932343" class="dsq-comment-message">This whole sense of humor thing is BS.  It\'s the MSM taking the pose of the school yard bully.  The bully does something hurtful and when called on it, instead of being respectful and apologizing, the bully tries to avoid responsibility by blaming his target for not having a good sense of humor.  <br><br>I\'d like to see some of the egocentric national reporters and anchors handle having themselves and their spouse mocked on a major magazine cover surrounded by hateful images and see them laugh it off.  Let\'s start with Maureen Dowd, and surround her with Irish Catholic hateful imagery and mock her miserable love life, and see how much she laughs.<br><br>Like others here, I think Obama\'s got a great sense of humor, a priceless laugh, and a very calm, balanced temperament that will make him a great leader in a time of crisis.<br><br>Off-topic, but you may find this newsworthy... Obama hate activist and Georgetown professor Heidi Li Feldman, head of the anti-Obama 527 "Denver Group", is running ads to sabotage Obama\'s candidacy.  Ran one recently in Chicago Tribune and one again today in Congressional Quarterly trying to force an open roll call for Hillary at convention as only way to "insure legitimate selection" of nominee.  She doesn\'t seem to realize primary race is over and Hillary conceded, and Denver Group\'s efforts are only giving MSM and McCain anti-Obama talking points.  Her contact info and more here: <a href="http://roadkillrefugee.wordpress.com/2008/07/18/daily-tidbits-july-18-2008/" rel="nofollow">http://roadkillrefugee.wordpress.com/2008/07/18...</a></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-932422">\
	 <div id="dsq-comment-header-932422" class="dsq-comment-header">\
	 <cite id="dsq-cite-932422" class="dsq-comment-cite">\
	 <a id="dsq-author-user-932422" href="http://www.ravingblacklunatic.blogspot.com" target="_blank" rel="nofollow">Big Man</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-932422" class="dsq-comment-body">\
	 <div id="dsq-comment-message-932422" class="dsq-comment-message">I appreciate all the comments on my point and I appreciate the link from JJP.<br><br><br>I"m glad folks pointed out all the times Obama did make jokes. I should have mentioned that in my blog. Like so many of y\'all have said, Obama can be funny but it\'s not that Martin Lawrence, Eddie Murphy in Norbit funny. He\'s not going to be grinning and skinning. He\'s a Harvard-educated lawyer running for president. He\'s not going to be making fart jokes in public.<br><br>A lot of you like point 3 in my blog but I really thought point 2 was the most important. Comedians are whining that Obama and his cult members won\'t let them joke about him, but the reality is that Obama supporters will not let them make racist, demeaning jokes about him. We will not allow him to be dehumanized for profit. It\'s happened too many times to far too many black folks in power and we are sick of it. <br><br>I\'m glad we\'re taking that stand.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-934974">\
	 <div id="dsq-comment-header-934974" class="dsq-comment-header">\
	 <cite id="dsq-cite-934974" class="dsq-comment-cite">\
	 <span id="dsq-author-user-934974">GreenLadyHere</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-934974" class="dsq-comment-body">\
	 <div id="dsq-comment-message-934974" class="dsq-comment-message">Big Man:  Co-signing - BIG TIME!!  That NYKer cover created the biggest, supportive response from Mr. Obama\'s "peeps" than any other.  WE have his back!!!!  ABSOLUTELY!!!!!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-932583">\
	 <div id="dsq-comment-header-932583" class="dsq-comment-header">\
	 <cite id="dsq-cite-932583" class="dsq-comment-cite">\
	 <span id="dsq-author-user-932583">KXB</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-932583" class="dsq-comment-body">\
	 <div id="dsq-comment-message-932583" class="dsq-comment-message">As I recall, Obama made appeared on SNL - kinda stiff, but it looked like he was having fun.  He did an intro to Monday Night Football where he seemed to enjoy himself.  During the primaries, he joked about how he took the question, "What is your biggest weakness?"  way too seriously. His answer - he needs to be better organized.  Clinton and Edwards answered they care too much.  And when showing up late to a black organization rally, he cracked one about being on CPT.<br><br>Obama is funny - the media is just not listening.<br><br>And keep in mind, he was a law lecturer for a good chunk of his career - not exactly a profession known for hilarity.  I don\'t see anyone asking Alan Dershowitz why he can\'t be more like Jerry Seinfeld.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-932682">\
	 <div id="dsq-comment-header-932682" class="dsq-comment-header">\
	 <cite id="dsq-cite-932682" class="dsq-comment-cite">\
	 <span id="dsq-author-user-932682">Town</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-932682" class="dsq-comment-body">\
	 <div id="dsq-comment-message-932682" class="dsq-comment-message">I don\'t see anyone asking John McCain why can\'t HE be more entertaining.  Because Lord knows the jokes he\'s got ain\'t funny.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-934989">\
	 <div id="dsq-comment-header-934989" class="dsq-comment-header">\
	 <cite id="dsq-cite-934989" class="dsq-comment-cite">\
	 <span id="dsq-author-user-934989">GreenLadyHere</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-934989" class="dsq-comment-body">\
	 <div id="dsq-comment-message-934989" class="dsq-comment-message">town:  tru dat!!!!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-935430">\
	 <div id="dsq-comment-header-935430" class="dsq-comment-header">\
	 <cite id="dsq-cite-935430" class="dsq-comment-cite">\
	 <span id="dsq-author-user-935430">bison1</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-935430" class="dsq-comment-body">\
	 <div id="dsq-comment-message-935430" class="dsq-comment-message">Do you recall that during the primary debates with Hillary and Edwards and they were  asked about one of their personal shortcomings, and Obama was the only one of the three to give an honest answer?  He said something about wanting his staff not to give him any papers, things too early, because he might misplace them. Afterwards he realize that he didn’t answer the question appropriately and made jokes about it ----saying that he should have said something about not helping little old ladies enough.   It was clearly self defecating humor.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-935448">\
	 <div id="dsq-comment-header-935448" class="dsq-comment-header">\
	 <cite id="dsq-cite-935448" class="dsq-comment-cite">\
	 <span id="dsq-author-user-935448">bison1</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-935448" class="dsq-comment-body">\
	 <div id="dsq-comment-message-935448" class="dsq-comment-message">He and everybody   laugh about his bowling score.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-935512">\
	 <div id="dsq-comment-header-935512" class="dsq-comment-header">\
	 <cite id="dsq-cite-935512" class="dsq-comment-cite">\
	 <span id="dsq-author-user-935512">bison1</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-935512" class="dsq-comment-body">\
	 <div id="dsq-comment-message-935512" class="dsq-comment-message">During the debates  with Hillary, he cracked on Hillary for calling all of his supporters delusional.    He responded with humor, he did not verbally assault Hillary.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-935641">\
	 <div id="dsq-comment-header-935641" class="dsq-comment-header">\
	 <cite id="dsq-cite-935641" class="dsq-comment-cite">\
	 <span id="dsq-author-user-935641">bison1</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-935641" class="dsq-comment-body">\
	 <div id="dsq-comment-message-935641" class="dsq-comment-message">In the New Hampshire primary when he wittingly said that “Hillary was likeable enough,” it was turned in to a misogynistic comment.  What the dry witty statement was actually inferring was that it was self evident that quite a few people liked her because she was very hard to defeat.   If she weren’t likable, he would not have had such a  ruff time defeating her.  To him, her likeable was not in question, because he was feeling the love for her  at the polls.  The humor, the satire, the wit was lost.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-935558">\
	 <div id="dsq-comment-header-935558" class="dsq-comment-header">\
	 <cite id="dsq-cite-935558" class="dsq-comment-cite">\
	 <span id="dsq-author-user-935558">KXB</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-935558" class="dsq-comment-body">\
	 <div id="dsq-comment-message-935558" class="dsq-comment-message">I think you mean "self-deprecating".  I\'m sure Obama has control over his bodily functions.  :)</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-935679">\
	 <div id="dsq-comment-header-935679" class="dsq-comment-header">\
	 <cite id="dsq-cite-935679" class="dsq-comment-cite">\
	 <span id="dsq-author-user-935679">bison1</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-935679" class="dsq-comment-body">\
	 <div id="dsq-comment-message-935679" class="dsq-comment-message">thank  you for the correction</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-936421">\
	 <div id="dsq-comment-header-936421" class="dsq-comment-header">\
	 <cite id="dsq-cite-936421" class="dsq-comment-cite">\
	 <span id="dsq-author-user-936421">PTCruiser</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-936421" class="dsq-comment-body">\
	 <div id="dsq-comment-message-936421" class="dsq-comment-message">bison1 -<br><br>You did mean "self-deprecating humor" didn\'t you? (:~) Self-defecating humor would have caused a real mess.  (:~)</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-934701">\
	 <div id="dsq-comment-header-934701" class="dsq-comment-header">\
	 <cite id="dsq-cite-934701" class="dsq-comment-cite">\
	 <a id="dsq-author-user-934701" href="http://blacksmythe.com/blog" target="_blank" rel="nofollow">blacksmythe</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-934701" class="dsq-comment-body">\
	 <div id="dsq-comment-message-934701" class="dsq-comment-message">So he isn\'t expected to make us laugh...and that makes folks mad that they think he is.<br><br>But he IS expected to tell "uncomfortable truths" to the black community? <br><br>I\'d rather him crack jokes and be that funny guy, than speak about issues he\'s got no technical business talking about (black fatherhood has about as much to do with the energy crisis as eating trix does with the space shuttle).</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-935062">\
	 <div id="dsq-comment-header-935062" class="dsq-comment-header">\
	 <cite id="dsq-cite-935062" class="dsq-comment-cite">\
	 <a id="dsq-author-user-935062" href="http://bedouina.typepad.com" target="_blank" rel="nofollow">Leila Abu-Saba</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-935062" class="dsq-comment-body">\
	 <div id="dsq-comment-message-935062" class="dsq-comment-message">Early on Michelle was making jokes at Barack\'s expense - and in that interview with the daughters they made fun of his shoes and his pants for being too old and beat-up. He took it very well.<br><br>And thanks for reminding us about the shoulder brush and the HIlary remarks. I don\'t watch TV and ignore the debates as much as possible (that\'s just me) so I missed a lot of that. I did watch the shoulder brush on Youtube and thought it was pretty good even though I am a middle-aged white lady and did NOT get the reference at first. Even without knowing about the song, his timing and delivery made me laugh. All I saw was him brushing it off and that was funny on its own. Then I watched the music video and made the connection. I call that a universal laugh moment if you didn\'t have to know the reference to find it funny. He then bent over and brushed off his shoes - I thought that was great. <br><br>Re: humorlessness and being "angry." This whole conversation reminds me of how much I keep myself in check about MIddle East issues, because if I so much as list a few Israeli atrocities in a calm voice, I get called angry. The only thing more dangerous in America than an Angry Black Person is an Angry Arab. We Arabs have to step very very carefully around non-Arab people (that includes my African-American sisters and brothers, too) lest our talk of oppression make people uncomfortable. <br><br>Angry Arabs are scary to Americans. The US public has been brainwashed for two generations to believe that angry Arabs are going to come and get their mamas. 9/11 made it all too real. Yep. Can\'t have any Arab anywhere say anything angry because maybe they\'ll KILL YOU RIGHT LIKE THAT. Because only Arabs kill thousands of people by bombing with airplanes...</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-935168">\
	 <div id="dsq-comment-header-935168" class="dsq-comment-header">\
	 <cite id="dsq-cite-935168" class="dsq-comment-cite">\
	 <span id="dsq-author-user-935168">Town</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-935168" class="dsq-comment-body">\
	 <div id="dsq-comment-message-935168" class="dsq-comment-message">I can imagine because "Muslim" and "Arab" have been the boogeymen (right alongside black people) for the past 30+ years.  If you have the name "Hussein" you\'re automatically deemed to be one of "dem terr\'ists" even though one of our allies in the Middle East was King HUSSEIN.  Heck, Rachel Ray can\'t even wear a scarf without it "meaning something" (even though Megan McCain wore the same scarf with no backlash.  Cindy McCain probably has one of those scarves tucked away in her closet somewhere).</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-936392">\
	 <div id="dsq-comment-header-936392" class="dsq-comment-header">\
	 <cite id="dsq-cite-936392" class="dsq-comment-cite">\
	 <span id="dsq-author-user-936392">PTCruiser</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-936392" class="dsq-comment-body">\
	 <div id="dsq-comment-message-936392" class="dsq-comment-message">Yeah, Rikyrah, I think you and folks on this thread have nailed it down. I have read that folks in the Secret Service who guard Obama, for example, like working for him. I don\'t think this sort of relationship would be possible if he did not have a sense of humor. I read Dowd\'s piece with a growing sense of dismay. What\'s next? Tap dancing on the roof of a car?</div>\
	 </div>\
	 </li>\
	 </ul>\
';

(function() {
	
	





Dsq.Debug.profile(function() {
	if(Dsq.jsonData.request.page == 1 && Dsq.jsonData.request.is_initial_load) {
		Dsq.container.innerHTML = Dsq.Templates.header() + Dsq.container.innerHTML + Dsq.Templates.footer();
	}
	Dsq.$(Dsq.curPageId).innerHTML = Dsq.$(Dsq.curPageId).innerHTML.replace(Dsq.COMMENTS_RE, Dsq.CommentsHandler);
}); // Dsq.Debug.Profile

// HACK: Resetting cache because we're done with.
Dsq.Utils.gebiFromElementCollectionCache = null;


	
	
	var dsq_styleEl = document.getElementById(disqus_container_id);
	var dsq_anchorEl = document.getElementsByTagName('a')[0];
	
	Dsq.Thread.fc = Dsq.Utils.getStyle(dsq_styleEl, 'color');
	if(dsq_anchorEl) { Dsq.Thread.ac = Dsq.Utils.getStyle(dsq_anchorEl, 'color'); }
	Dsq.Thread.ff = Dsq.Utils.getStyle(dsq_styleEl, (Dsq.Utils.ie || window.opera ? 'fontFamily' : 'font-family'));
	// For Safari / Opera: strip quotes.
	Dsq.Thread.ff = Dsq.Thread.ff.replace(/['"]/g, '');
	Dsq.Thread.fc = encodeURIComponent(Dsq.Thread.fc);
	Dsq.Thread.ac = encodeURIComponent(Dsq.Thread.ac);
	Dsq.Thread.ff = encodeURIComponent(Dsq.Thread.ff);

	
	
	
	if(Dsq.$(Dsq.Templates.addPostContainer)) {
		// TODO: Check to see if theme uses postmessage.
		if (window.disqus_use_postmessage) {
			Dsq.frames['reply_0'] = new Dsq.ReplyFrame(Dsq.$(Dsq.Templates.textareaContainer));
			Dsq.frames['reply_0'].init(function() {
				// Use fallback iframe
				Dsq.$(Dsq.Templates.addPostContainer).innerHTML = '';
				var theme = (typeof disqus_frame_theme == 'undefined') ? 'default' : disqus_frame_theme;
				Dsq.Iframes.showReplyIframeInContainer(Dsq.$(Dsq.Templates.addPostContainer), null, {theme: theme});
				// if(Dsq.Utils.ie) { Dsq.Utils.fixIframesIE(); }
			});
		} else {
			// DEPRECATED
			Dsq.Iframes.showReplyIframeInContainer(Dsq.$('dsq-post-add'));
		}
	}

	
	

	
	if(document.location.hash != '') {
		document.location.hash = document.location.hash.substring(1);
	}

	Dsq.Popup.showCookieMsgs();

	
	if(document.location.search != '' && location.hash != '#disqus_thread') {
		var reply_id = Dsq.Utils.getRequestParams().dsq;
		if(reply_id) { document.location.hash = 'comment-' + reply_id; }
	}

	
	if((typeof OB_Script != 'undefined') && (typeof OB_versionNum != 'undefined')) {
		if(navigator.userAgent.indexOf("Firefox") != -1) {
			if(window.frames['dsq-reply-frame']) {
				window.frames['dsq-reply-frame'].location = Dsq.Urls.REPLY + (new Date()).getTime() + '&f=jackandjillpolitics&t=memo_to_press_barack_obama_is_not_running_for_entertainer_in_chief_99&to_redirect=' + encodeURIComponent(window.location) + '&ifrs=' + encodeURIComponent(disqus_iframe_css);
			}
		}
	}

	if (Dsq.jsonData.integration.theme == 4) {
		if (Dsq.jsonData.realtime_enabled) {
			Dsq.Realtime.initialize();
		}
	}

	



	window.ExecuteWhen = (function () {
	var obj = {}
	
	// Private
	var running = false;
	var timer = null;
	var pending = [];
	var startTimer = function() {
		running = true;
		timer = setInterval(obj.heartBeat, 100);
	};
	var stopTimer = function() {
		running = false;
		clearInterval(timer);
	};
	
	// Public
	obj.add = function (condition, code) {
		pending.push([condition,code]);
		this.heartBeat(); //!
		if (!running) {
			startTimer();
		}
	};
	obj.heartBeat = function() {
		if (!pending.length) {
			stopTimer();
		}
		var newPending = [];
		for (var i=0; i<pending.length; i++) {
			var cond = pending[i][0];
			var code = pending[i][1];
			// FIXME: if cond or code throw an error, they never get removed from pending
			if (cond()){
				code();
			}
			else {
				newPending.push([cond, code]);
			}
		}
		pending = newPending;
	};
	return obj;
})();

// also used in embed_thread.js:
window.fbIsReady = function () {return window.FB && FB.init;};
// NOTE: This script gets executed again without threadEl
//       set when we are loaded again as the fbc_receiver.
//       In this case, we don't need the hidden container.

if(!window.FB || !FB.init) {
	if(window.Dsq && Dsq.container) {
		// container is not present when init.js is loaded from an xd-receiver iframe; in this case,
		// we don't need the FB_HiddenContainer anyway.
		var fbDiv = document.createElement('div');
		fbDiv.id = "FB_HiddenContainer";	// Required or else FeatureLoader will execute a document.write.
		fbDiv.style.position = 'absolute';	// This is intentionally not setting display to none as this breaks
		fbDiv.style.top = '-10000px';		// Flash in Safari.
		fbDiv.style.left = '-10000px';
		fbDiv.style.width = '0px';
		fbDiv.style.height = '0px';
		Dsq.container.appendChild(fbDiv);
	}
	var fbJS = document.createElement('script');
	fbJS.type = "text/javascript";
	fbJS.src = "http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php";
	document.getElementsByTagName('head')[0].appendChild(fbJS);

	ExecuteWhen.add(window.fbIsReady,
		function () {
			// HACK: This is a workaround FBC's single domain limitation by
			//		 allowing sites to create multiple forums with different
			//		 Facebook API keys.  This must be used in conjunction with
			//		 disqus_facebook_forum (see authenticateFacebook).
			var facebook_api_key = 'bd6a8bc56f8eb204984f34b6fefe228d';
			if (typeof disqus_facebook_api_key != 'undefined') {
				facebook_api_key = disqus_facebook_api_key;
			}

			FB.init(facebook_api_key, window.facebookXdReceiverPath || null,
				{fetchSignedPublicSessionData: true});
		});
}


	


if(typeof(disqus_callback) == 'function') {
	var callback_params = Dsq.Utils.getRequestParams()['dsq_cbp'] || null;

	// We don't care about any errors in third-party code
	try {
		disqus_callback(callback_params);
	} catch (x) {
		if (typeof(console) != 'undefined' && typeof(console.log) == 'function') {
			// But it would be nice to let developers know about them
			console.log(x);
		}
		// pass
	}

	// HACK: We don't know if the callback wraps our container, which may
	// possibly result in a new DOM element.
	Dsq.container = document.getElementById('dsq-content');
}

})();




