




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": {"d2ba7837bb16339977b6276d5825979f": {"username": "Redstar", "tumblr": "", "display_name": "Redstar", "url": "http://disqus.com/guest/d2ba7837bb16339977b6276d5825979f/", "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": ""}, "c47c050ced5136dd3177afc817b0ca09": {"username": "Mac G", "tumblr": "", "display_name": "Mac G", "url": "http://disqus.com/guest/c47c050ced5136dd3177afc817b0ca09/", "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": ""}, "9bf0971c139c9dc33659e8ed441e4f5e": {"username": "Craig Hickman", "tumblr": "", "display_name": "Craig Hickman", "url": "http://disqus.com/guest/9bf0971c139c9dc33659e8ed441e4f5e/", "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": ""}, "0e63fda3bc8752465623f674ffcc5f40": {"username": "TruthSeeker", "tumblr": "", "display_name": "TruthSeeker", "url": "http://disqus.com/guest/0e63fda3bc8752465623f674ffcc5f40/", "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": ""}, "7c4455626754e1b9bc3be232b1024136": {"username": "Anonymous", "tumblr": "", "display_name": "Anonymous", "url": "http://disqus.com/guest/7c4455626754e1b9bc3be232b1024136/", "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": ""}, "1cb6140180747707b601ebc52c1fcb5a": {"username": "Town", "tumblr": "", "display_name": "Town", "url": "http://disqus.com/guest/1cb6140180747707b601ebc52c1fcb5a/", "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": ""}, "f4fc36ad3c63317254ea1ba563250f96": {"username": "Taritac", "tumblr": "", "display_name": "Taritac", "url": "http://disqus.com/guest/f4fc36ad3c63317254ea1ba563250f96/", "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": ""}, "5630efe2076d8e20dae9514342245796": {"username": "nezua", "tumblr": "", "display_name": "nezua", "url": "http://disqus.com/guest/5630efe2076d8e20dae9514342245796/", "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": ""}, "aae6566d31caa504b00a492d7800ad93": {"username": "Karoli", "tumblr": "", "display_name": "Karoli", "url": "http://disqus.com/guest/aae6566d31caa504b00a492d7800ad93/", "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": ""}, "6bda4812c03dcc60ed0ff383f5a4e9c8": {"username": "chicanaskies", "tumblr": "", "display_name": "chicanaskies", "url": "http://disqus.com/guest/6bda4812c03dcc60ed0ff383f5a4e9c8/", "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": ""}, "bc67a38bb57ec2663caef9c8162bfd38": {"username": "Adam", "tumblr": "", "display_name": "Adam", "url": "http://disqus.com/guest/bc67a38bb57ec2663caef9c8162bfd38/", "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": ""}, "6dcbca70c39062f80e7e54429bcaa851": {"username": "abeabe2006", "tumblr": "", "display_name": "abeabe2006", "url": "http://disqus.com/guest/6dcbca70c39062f80e7e54429bcaa851/", "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": ""}, "8a2d6caafd9b7800b7d657a7d3470f96": {"username": "Jack Turner", "tumblr": "", "display_name": "Jack Turner", "url": "http://disqus.com/guest/8a2d6caafd9b7800b7d657a7d3470f96/", "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": ""}, "bbb5f18b1f882407561a7f27f4fb2937": {"username": "s", "tumblr": "", "display_name": "s", "url": "http://disqus.com/guest/bbb5f18b1f882407561a7f27f4fb2937/", "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": ""}, "aedda92d645e540d5d4d78a25c550ffc": {"username": "Plantsmantx", "tumblr": "", "display_name": "Plantsmantx", "url": "http://disqus.com/guest/aedda92d645e540d5d4d78a25c550ffc/", "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": ""}, "811561507c0c3e3b4e1562bd923c758e": {"username": "Progressive for A Better Ameri", "tumblr": "", "display_name": "Progressive for A Better Ameri", "url": "http://disqus.com/guest/811561507c0c3e3b4e1562bd923c758e/", "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": ""}, "7f3bcba40954f3b8277da719d4ebe737": {"username": "babyming", "tumblr": "", "display_name": "babyming", "url": "http://disqus.com/guest/7f3bcba40954f3b8277da719d4ebe737/", "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": ""}, "0bfea3e86575ec9972dbbb324992bb7d": {"username": "JR", "tumblr": "", "display_name": "JR", "url": "http://disqus.com/guest/0bfea3e86575ec9972dbbb324992bb7d/", "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": ""}, "fe326db7746add85eb4110b5924b4b27": {"username": "onein4", "tumblr": "", "display_name": "onein4", "url": "http://disqus.com/guest/fe326db7746add85eb4110b5924b4b27/", "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": ""}, "3991aa18f97bf941d741de8cd31a939d": {"username": "Nathanael", "tumblr": "", "display_name": "Nathanael", "url": "http://disqus.com/guest/3991aa18f97bf941d741de8cd31a939d/", "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": ""}, "de3917e982ff609a0d6f7fb5e3c8f079": {"username": "Michelle", "tumblr": "", "display_name": "Michelle", "url": "http://disqus.com/guest/de3917e982ff609a0d6f7fb5e3c8f079/", "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": ""}, "7942746be25e765d341b74b8c2d06ac2": {"username": "Graham Kirby", "tumblr": "", "display_name": "Graham Kirby", "url": "http://disqus.com/guest/7942746be25e765d341b74b8c2d06ac2/", "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": ""}, "3e892379e7d442c8970d7cad6f54d5b8": {"username": "Angela", "tumblr": "", "display_name": "Angela", "url": "http://disqus.com/guest/3e892379e7d442c8970d7cad6f54d5b8/", "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": ""}, "7c7692dd307a2c4072a792d0764e5bd4": {"username": "blacklisted", "tumblr": "", "display_name": "blacklisted", "url": "http://disqus.com/guest/7c7692dd307a2c4072a792d0764e5bd4/", "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": ""}, "ec01304ef170f657e87f409a510ddfde": {"username": "The Christian Progressive Libe", "tumblr": "", "display_name": "The Christian Progressive Libe", "url": "http://disqus.com/guest/ec01304ef170f657e87f409a510ddfde/", "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": ""}, "f85f4de88a30987f0360c336da9569ae": {"username": "rikyrah", "tumblr": "", "display_name": "rikyrah", "url": "http://disqus.com/guest/f85f4de88a30987f0360c336da9569ae/", "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": ""}, "1572c9b90152e199379cfb228c0cc759": {"username": "heartsandflowers", "tumblr": "", "display_name": "heartsandflowers", "url": "http://disqus.com/guest/1572c9b90152e199379cfb228c0cc759/", "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": ""}, "9fcb7c771a7713dda01aa936fd426bfe": {"username": "Ms.Martin", "tumblr": "", "display_name": "Ms.Martin", "url": "http://disqus.com/guest/9fcb7c771a7713dda01aa936fd426bfe/", "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": ""}}, "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_21:19:17", "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": {"1968256": {"up_voted": false, "ip": "", "has_replies": false, "message": "I always thought the people who will ultimately have the biggest beef with Sen. Clinton will be her supporters, not us.<br></br><br>Whenever I think about her campaign, I think about Bush and his relationship with the Religious Right.</br><br></br><br>Simply put, he played them for votes.</br><br></br><br>His campaign played into their fears and promised that when he was president, America would be \"pure\" again.</br><br></br><br>Did it happen?  Nope.</br><br></br><br>And slowly, the evangelicals began to realize they had been played and are now (some of them at least) considering supporting Obama.</br><br></br><br>Sen. Clinton did the same thing, playing off people's fears in a ridiculous quest to win an election she lost in March.  </br><br></br><br>Once the smoke clears and her supporters realize they were played for fools, the real backlash against her will begin.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_10:34:00", "killed": false, "user_key": "bc67a38bb57ec2663caef9c8162bfd38", "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}, "1968257": {"up_voted": false, "ip": "", "has_replies": false, "message": "I think the GOP wants to divide these two strong Democratic groups, Women and African Americans.<br>---------------------</br><br></br><br>I cannot put the blame on the Republicans for this one.</br><br></br><br>This one belongs to the Clintons and their crew.</br><br></br><br>I've often wondered why Bill Richardson ran over to the Obama side and why he looked like had just been freed from some shackles when he got there.</br><br></br><br>I've concluded that Bill Richardson looked at the Clintons with horror and thought to himself, \"What if I was the front runner?  What racial games would they play on me?\"</br><br></br><br>If Bill Richardson was the front runner, would the Latino vote be dismissed?  Would the Clintons have tried to link Richardson with illegal immigrants?  Would Fox be running videos of illegals jumping over the border 24-7?  Would Hannity be crying about La Raza and trying to link Richardson with Latino activists?  </br><br></br><br>And then when Richardson did go over to the Obama side, the attacks on him were much more violent than when Robert Reich went over to the Obama side?  I wonder if his suspicions about what the Clintons would have done to him if he were the front runner were confirmed.</br><br></br><br>Why am I talking about Bill Richardson?  Because the same thing that happened to Barack Obama because he's black would have happened to Bill Richardson because he's Latino, the same racial attacks and suspicions.</br><br></br><br>Hillary Clinton and her Crew basically said \"If you are not white, you need to fall back and wait your turn, and the length of your wait is to be determined by US.  If you don't, we are going to make sure white people don't vote for you.\"</br><br></br><br>I wonder how many black politicians/candidates are wondering if somebody is snooping on their churches, trying to dig up dirt on them through their place of worship?</br><br></br><br>And if you are Muslim or not the right kind of Christian (i.e. Romney) you need not apply at all.</br><br></br><br>I don't think Hillary Clinton and her enablers need to be soothed and coddled.  They need to be blasted and called out and the Democratic party needs to be called out for the spineless wimps they are.  IMO they've fractured this country along racial, religious and class lines just for personal gain and I'm not sure that political damage is going to be repaired, at least not any time soon.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_10:45:00", "killed": false, "user_key": "1cb6140180747707b601ebc52c1fcb5a", "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}, "1968258": {"up_voted": false, "ip": "", "has_replies": false, "message": "<i>I talked to a Hillary supporter who told me point blank that she only began to support Hillary as a defense mechanism against sexist media coverage.</i><br></br><br>::</br><br></br><br>That's not rational support. It's reactionary support. Which is no support at all because it's a projection.</br><br></br><br>It's false.</br><br></br><br>I don't need to understand a person who would say that.</br><br></br><br>She doesn't understand herself.</br><br></br><br>Besides which, the \"sexist media coverage\" of Nixon's campaign is pure bull.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_10:54:00", "killed": false, "user_key": "9bf0971c139c9dc33659e8ed441e4f5e", "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}, "1968259": {"up_voted": false, "ip": "", "has_replies": false, "message": "town and truthseeker, thanks for putting it down like you did.<br></br><br>Thank you so much.</br><br></br><br>::</br><br></br><br>rikyrah, I just call it as I see it and I saw it from DAY ONE when they emerged on the national scene.</br><br></br><br>And I didn't need to do any research.</br><br></br><br>I think this speaks to adam's point. Those who were bamboozled by the madness of their royal couple will be the last soldiers to wage an offensive against them.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_11:08:00", "killed": false, "user_key": "9bf0971c139c9dc33659e8ed441e4f5e", "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}, "1968260": {"up_voted": false, "ip": "", "has_replies": false, "message": "Peggy Noonan has a different take on this. <br></br><br><a href=\"http://online.wsj.com/article/SB121148557268715077.html\" rel=\"nofollow\">Sex and the Sissy</a></br><br></br><br>My favorite passage among MANY:</br><br></br><br><i>So, to address the charge that sexism did her in:</i></br><br></br><br>It is insulting, because it asserts that those who supported someone else this year were driven by low prejudice and mindless bias.</br><br></br><br>It is manipulative, because it asserts that if you want to be understood, both within the community and in the larger brotherhood of man, to be wholly without bias and prejudice, you must support Mrs. Clinton.</br><br></br><br>It is not true. Tough hill-country men voted for her, men so backward they'd give the lady a chair in the union hall. Tough Catholic men in the outer suburbs voted for her, men so backward they'd call a woman a lady. And all of them so naturally courteous that they'd realize, in offering the chair or addressing the lady, that they might have given offense, and awkwardly joke at themselves to take away the sting. These are great men. And Hillary got her share, more than her share, of their votes. She should be a guy and say thanks.</br><br></br><br>It is prissy. Mrs. Clinton's supporters are now complaining about the Hillary nutcrackers sold at every airport shop. Boo hoo. If Golda Meir, a woman of not only proclaimed but actual toughness, heard about Golda nutcrackers, she would have bought them by the case and given them away as party favors.</br><br></br><br>It is sissy. It is blame-gaming, whining, a way of not taking responsibility, of not seeing your flaws and addressing them. You want to say \"Girl, butch up, you are playing in the leagues, they get bruised in the leagues, they break each other's bones, they like to hit you low and hear the crack, it's like that for the boys and for the girls.\"</br><br></br><br>And because the charge of sexism is all of the above, it is, ultimately, undermining of the position of women. Or rather it would be if its source were not someone broadly understood by friend and foe alike to be willing to say anything to gain advantage.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_11:18:00", "killed": false, "user_key": "9bf0971c139c9dc33659e8ed441e4f5e", "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}, "1968261": {"up_voted": false, "ip": "", "has_replies": false, "message": "Jack, I am one of those new readers you picked up along the way. I appreciate what you bring to the blogger table and I am a white, diehard Obama supporter from back when he was running for US Senate in the Dem primary. (Yes, Im a polly junkie)<br></br><br>All of your frustrations with the Clintons is understandable and in the heat of the moment, it is hard to keep civility. </br><br></br><br>During the recent \"FL/Mich voters are being suppressed, we are winning the popular vote,\" crapola, I find myself yelling at the TV while Obama surrogates kept calm and above the fray. </br><br></br><br>Of all the post HRC election obits I have read so far, the conclusion of her annoymous advisors is they messed up the Caucus systems and Super Tuesday strategy was a dud. </br><br></br><br>While I agree with those points, I think her pro war stances gave Obama an opening in a 2008 Democratic contest.</br><br></br><br>The most overlooked factor that I have not seen discussed in the MSM is Hillary's complete alienation of the African American Community. </br><br></br><br>People forget the media writing articles before Iowa pondering if Obama was \"black enough,\" and then all of sudden he is pulling 90 percent of the AA vote in every contest. </br><br></br><br>I long ago thought the 2nd test of Obama's after Iowa would be convincing black women in South Carolina to vote for him. The Clinton's had mad respect and long ties in the AA community. </br><br></br><br>He not only had a strong showing but the Clitnons totally miscalculated and threw away the AA vote for no real good reason other than to convince white voters into thinking Obama was a scary black guy. </br><br></br><br>The AA community noticed these Southern Strategy like campaign tactics and took it out on the Clintons in the voting booth.</br><br></br><br>They were voting not only for Obama but also against the Clintons, who willingly and purposedly dissed them after overwhelmingly helping Bill/Hillary attain political power for years. It was painfully obvious by \"MLK, Roll the Dice, Drug Dealer, Jessee Jackson.\" </br><br></br><br>I do not understand how any reasonable person can not see the truth of Clinton's racial divide tactics.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_11:54:00", "killed": false, "user_key": "c47c050ced5136dd3177afc817b0ca09", "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}, "1968262": {"up_voted": false, "ip": "", "has_replies": false, "message": "I have been one of the few who believed that Her Highness of Narcissism should stay in the race until the last primary.<br></br><br>I changed my stance for a moment after she attempted to call for violence against Senator Obama in delivering the assassination code word to the lunatic fringe. A few days after I'd gotten over being absolutely appalled at her cruel, win-at-any-cost words and deeds, I went back to maintaining that she should remain in the race until the last primaries were over.  Now that day is here and she's still unwilling to step aside, still trying to do whatever she can to discount his winning the nomination.</br><br></br><br>Being a black woman born and raised at the beginning and through the height of both the black and women's rights movements, I understand her perfectly, however; I do not agree nor can I countenance the language or the methods that she and some of her white feminist supporters have used to denigrate Senator Obama because she lost so much and so often when she thought she would win.</br><br></br><br>Now we've come to the end of the long, long primary season and it is clear that she cannot win, and I find that I still do not like her refusal to acknowledge that it is over for her campaign.</br><br></br><br>I do not like that she continues to challenge his right to be the nominee despite the olive branches he continues to graciously offer to her in the form of apologies for others' words of truth, among other instances of absolute grace. No matter how conciliatory and gracious he is to her, she tries to turn it against him, to make him the monster that she is.</br><br></br><br>At this time, I do not have the ability to 'understand' her extremely poor manners and obnoxious behavior.</br><br></br><br>And you know something else?  As I type this, Senator Obama only needs 35 more delegates to clinch the nomination. Yet I am certain that she's lied to his campaign, maybe even to him, that she will concede tonight but has instructed her surrogates to refute this through corporate broadcast media.  </br><br></br><br>I do not believe that the AP is getting this wrong; I'd stake my life on it that she agreed to concede with the Obama campaign.  She's still lying, attempting in every way she can to destroy his credibility and his moment as the official presumptive nominee.</br><br></br><br>She is nothing nice and neither is her lying husband, Billy Jeff.</br><br></br><br>So no, I cannot attempt to understand her at this time.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_12:11:00", "killed": false, "user_key": "811561507c0c3e3b4e1562bd923c758e", "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}, "1968263": {"up_voted": false, "ip": "", "has_replies": false, "message": "I also want to say thanks for your sincere post Jack. <br></br><br>As a mixed (black) woman, I agree with the other black women here that the attacks on Hillary were not attacks on women - they were attacks on well off, educated, ambitious white women. Black women are completely ignored and if we happen to inconvenience anyone by putting a toe in the spotlight and get attacked, we aren't treated like hysterical women that need to get back to caring for our husbands and children - no we get the \"nappy-headed hos\" treatment with ALL that implies.  </br><br></br><br>So while the educated, ambitious wealthy white men in those clips were attacking other educated, ambitious, wealthy white women to cut down on the competition, I as a mixed woman felt nothing but some sympathy for the white women (because I am not cold-hearted) but I knew it had NOTHING to do with me as a mixed woman. Nothing. </br><br></br><br>So I think it is very positive that you have become more aware of the bs that gets thrown at successful white women. I would like more focus on the severe underrepresentation of women of color.   </br><br></br><br>I agree with the other women of color her that it is violence to erase us. This campaign and the media's use of the word \"woman\" makes Sojourner Truth's speech \"Ain't I am woman?\" almost as relevant today as it was in 1851 and that is sad. Here's a link to it: <a href=\"http://www.feminist.com/resources/artspeech/genwom/sojour.htm%3C/br\" rel=\"nofollow\">http://www.feminist.com/resources/artspeech/gen...</a>&gt;", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_12:18:00", "killed": false, "user_key": "7c4455626754e1b9bc3be232b1024136", "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}, "1968264": {"up_voted": false, "ip": "", "has_replies": false, "message": "I do not understand how any reasonable person can not see the truth of Clinton's racial divide tactics.<br>-------------------</br><br></br><br>It's just like at work, a \"well meaning\" white women will want to introduce the black part-time Pinkerton security guard with the gold tooth to her college educated professional track black female coworker.  And the white woman will say, \"he's tall, he's black, y'all will hit it off.\"  And then she wonders why her black female coworker is not thrilled with this match.  She figures, he black, you black, so you two should hit it off.</br><br></br><br>That's the same mentality that's going on with this campaign.  None of these bobbleheads are bothering to ask black people WHY they are voting for Obama over Clinton, they are just assuming, \"He black, you black, so that's why you're voting for him.\"</br><br></br><br></br><br>That's basically what Bill Clinton said back in South Carolina.</br><br></br><br>That's straight up what Geraldine Ferraro's been saying since February.</br><br></br><br>And if you as a black person spell out why, you're labeled a hater or a racist.</br><br></br><br>None of these people, the white female coworker, Clinton, Ferraro, the MSM etc. want to see or accept what they are doing, which is telling me what I'm thinking because I'm black.</br><br></br><br>And it's not just black people they are doing it to, they are telling \"hard working white Americans\" what they are thinking because they're \"hard working white Americans,\" and they are telling Latinos what they are thinking because they are Latinos.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_13:09:00", "killed": false, "user_key": "1cb6140180747707b601ebc52c1fcb5a", "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}, "1968265": {"up_voted": false, "ip": "", "has_replies": false, "message": "The thing that bothers me is that I don't know how to reach the reasonable Hillary supporters without having to first weed out the unreasonable ones who would rather see McCain elected than Obama, or who would rather attack Obama for any and all perceived slights than to attack McCain for any of his overt inanities.  For months now those who are past the point of unification have comingled with those earnestly supporting someone they thought was a better candidate, and differentiating the two now is nearly impossible.<br></br><br>I'll gladly try and convince anyone I think can be convinced to support our nominee, but I don't see the point in wasting time and effort on those \"Democrats\" who would rather see a Republican president than a black one.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_15:32:00", "killed": false, "user_key": "0bfea3e86575ec9972dbbb324992bb7d", "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}, "1968266": {"up_voted": false, "ip": "", "has_replies": false, "message": "I totally agree jr. <br></br><br>Maybe I am wrong, but I think the Clinton supporters who simply preferred Hillary for reasons other than racism and some weird anger displacement won't even need convincing or reaching out. They would rather see Obama win than McCain since Obama's policies are closer to Clinton's. </br><br></br><br>I think absense of Obama hate would be how you could spot a person who supported Clinton simply because they preferred her politics and personality. Supporting Clinton didn't require hating Obama because he didn't attack her in a dirty way. Yes, he twisted facts to his favor but unfortunately that's politics and it usually doesn't make you jump parties.</br><br></br><br>But maybe I am wrong. I'd love it if someone interviewed Clinton supporters so we'd understand how they saw it. I just don't buy the media sexism = Obama sucks, I am voting McCain</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_15:54:00", "killed": false, "user_key": "7c4455626754e1b9bc3be232b1024136", "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}, "1968267": {"up_voted": false, "ip": "", "has_replies": false, "message": "I've never commented here before.  I'm surprised there wasn't a single commenter who came to argue in defense of Clinton or, more appropriately, your point about her supporters, but I am new to this site.  (I found you via MyDD.)<br></br><br>Here's a link to a video documenting sexism FROM the Obama campaign:</br><br></br><br>http://www.youtube.com/watch?v=ke64670GkZ8</br><br></br><br>(Pretty sure it's made by a Clinton supporter)</br><br></br><br>My experience as a Clinton supporter is that I've lost all sense of perspective...I used to blog about racial/ethnic, economic and gender inequality; poverty; affordable housing; and Katrina recovery, until this election took over my life.  And that's just one example of how captive to this whole thing I've become.  I think that many of us on both sides are projecting all sorts of feelings and desires on to these 2 candidates - that they've become figureheads (and not very good ones, in their centrist, insider ways, IMO) for the cultural and political battles we personally fight day in and day out.  I think I'm most disappointed in my own loss of cynical criticism of the overall political structure in this country in my zeal over a female contender.  </br><br></br><br>And the timeline on the hardening of and b/w supporters is so short.  I supported both candidates financially and vocally last fall, voted for Clinton on 2/5, but have only become convinced her righteousness in the last couple of months.  Please.  I have come to believe more strongly in the last couple of months that she's the stronger candidate, but I'm ashamed of myself for making her candidacy my particular fight du jour, when I'm so normally focused on policy battles, community organizing, local economic development, and attempts to hold our politicians' feet to the fire.  It's been a fascinating but cognitively dissonant ride, that's for sure.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_16:50:00", "killed": false, "user_key": "d2ba7837bb16339977b6276d5825979f", "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}, "1968268": {"up_voted": false, "ip": "", "has_replies": false, "message": "\"It's just like at work, a \"well meaning\" white women will want to introduce the black part-time Pinkerton security guard with the gold tooth to her college educated professional track black female coworker.\"<br></br><br>It's also like having your white coworkers be astounded to find out that you don't care much for Rice as a Secretary of State, even though they know where you are on the political spectrum.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_17:18:00", "killed": false, "user_key": "aedda92d645e540d5d4d78a25c550ffc", "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}, "1968269": {"up_voted": false, "ip": "", "has_replies": false, "message": "@redstar<br></br><br>Wow thanks for stopping by with that youtube link. I didn't see it so much before but I can now see why Clinton supporters closed ranks around her and got much more defensive. I don't agree with all of it (like the 99 problems song, \"periodically\", monster and the pictures of Obama looking down on Hillary and some other things seemed exaggerated to me) but I am sure Clinton supporters disagree with some things Obama supporters perceived as racist.  </br><br></br><br>As a mixed (black/white) woman, I thought I was seeing both sides but the alienation I felt by the misuse of the word woman to mean middle class white women must have cut me off from seeing those tings. I also live overseas so don't have much access to American MSM. It does however look like there was much less attention in the MSM on the sexist attacks than the other way around. Can other people back this up? That's the way it's looking.</br><br></br><br>I must admit through most of it,  I was wondering why Clinton wasn't speaking out against the racism (when it wasn't coming from her...) but yeah, where was Obama on speaking out against sexism? </br><br></br><br>I guess the lesson is divide and conquer works! This whole thing is just really, really sad.  </br><br></br><br>And the emotionalism around it is quite frightening - that we can get whipped up into a frenzy like that. I was fortunately able to snap out of the frenzy some months ago but probably because I live overseas so again don't get the same exposure to MSM. For me the media and Clinton's use of racism just didn't match with the overwhelming numbers of white people (and others) who were voting for Obama. That doesn't mean that racism doesn't exist, it just signalled to me a lot of people aren't invested in it as much as before. </br><br></br><br>I am left feeling very cynical about American politics in general but particularly disillusioned with the Dems. If there were actual differences between the candidates, I think there'd be a lot less silly.</br><br></br><br>Maybe conversations like this will lead us back to our right minds though but it won't fix the political system unfortunately. Thanks Jack for starting this conversation!</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_18:53:00", "killed": false, "user_key": "7c4455626754e1b9bc3be232b1024136", "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}, "1968270": {"up_voted": false, "ip": "", "has_replies": false, "message": "WOW.  Great post.  I think you have figured out and described people's thoughts and emotional states pretty well.<br></br><br>The point being made here is the similarity between the reactions of Clinton *supporters* and that of Obama *supporters*, and the fact that they were reacting to similar insults -- albeit in the case of Clinton supporters, insults NOT coming from Obama but from media operatives, and frankly Republican media operatives in many cases.</br><br></br><br>The writer makes very clear that Obama and Clinton in fact behaved very differently from each other -- and exhorts us to follow Obama's lead, not Clinton's.  It's a good piece or writing.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_19:16:00", "killed": false, "user_key": "3991aa18f97bf941d741de8cd31a939d", "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}, "1968271": {"up_voted": false, "ip": "", "has_replies": false, "message": "Jack, you have me in tears of gratitude for extending me the invitation to join this blog and be a part of something much bigger than all of us.<br></br><br>I wholeheartedly agree that Obama and his camp should help out in the healing process, but I'm also glad you pointed out that the initiation of healing needs to come from the Clintons, because their egos drove them to do the most damage and caused the most divisiveness in the Democratic Party.</br><br></br><br>You have given me inspiration for a post on the CBC, now that Obama has secured the nomination.  It's time to get on with the business of defeating John McCain, and I, for one, will be glad to reduce Hillary Clinton to a mere footnote in this saga.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_19:39:00", "killed": false, "user_key": "ec01304ef170f657e87f409a510ddfde", "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}, "1968272": {"up_voted": false, "ip": "", "has_replies": false, "message": "Hi there Baratunde,<br></br><br>I just wanted to say thanks for your recent post, it showed some grace and humanity that I haven't seen for a while, anywhere, about the divide in the Democratic nomination battle.  Of course you and I don't agree on everything, but i do respect your views.  Thanks for reaching out across raw emotions and chaos, much easier to do when your side wins.  </br><br></br><br> For the record I am a 31 year old white woman.  And yes, I am a human being who is able to think beyond my uterus and my skin color.  It's nice to not be lumped in with some or no identity. </br><br></br><br>I read the blog because I want to understand people who don't think like me.  Groups poison themselves all the time by surrounding themselves with people just like them and then losing perspective- Republicans and Democrats are both guilty.  Religious groups are probably the most guilty of this though.</br><br></br><br>I stopped reading JJP for a while because I just couldn't stand the name calling, and not just Tonya Harding but also handkerchief-head and stuff like that.  It's bad enough that everyone gets reduced to demographic groups every four years  to make someone's job at CNN easier- the Jewish vote, the Catholic vote, the Black vote, the women's vote, the values vote etc.  Because no woman could also be Catholic or working-class or black married to a jew or have these elusive things we call values.  It drives me crazy, and I just got sad to see JJP and many others resort to similar tactics.  But it's one of those four years when we all get lumped into groups.</br><br></br><br>I hate what this race has become.  The Dems were supposed to have a hands-down victory but we are still fighting inside the party.  Hello McCain...  </br><br></br><br>The only way I will vote for Obama is if Clinton is on the ticket or at least given a job that gives her the respect she deserves.  She won a shitload of votes, all the big states, and most of the swing states.  Just please stop the gratuitous character assassination.  If you think Obama can win without her supporters then fine...  Let's both just work for the McCain campaign instead of picking bones.</br><br></br><br>At first I thought Obama was all right, but early on I got concerned about his rockstar status in the Democratic party and among the media.  Call me crazy but I get a little leery of cults of personality and stadiums full of swooning crowds.  Someone who can deliver a speech well doesn't sell me, I am not that thirsty for kool-aid.  </br><br></br><br>Give me a real reason why I should vote for him- because he's black?  Because some kid in Pakistan will feel better because his middle name is Hussein?  Because his record in the Senate is entirely unremarkable?  Because he's pro-choice?  Come on, it looks like a house of cards that could so easily fall down.  </br><br></br><br>I am surprised the Wright scandal didn't take him out, and his speech on race in this country didn't impress me.  There is a lot more than black and white in this country and I don't think that there's a context for shared experience like there was in the segregated south, e.g.  I don't like to oversimplify people's experience and I don't need some politician to get teachy with me.  We this, and we that...  Dreams and hopes and change.  And I can't talk about policy specifics to save my life.  He's not my kind of politician, I want someone who can mop the floor in a debate and whose eyes don't glaze over when talking about social security.  And it worries me that his ego seems to love the crowds and the spotlights.</br><br></br><br>By the way, the democratic party hasn't cracked yet and is only still alive and viable because of the Clintons.  If Obama was going to win anyway, there was no need to slaughter both Clintons on the way to the door, seasoning the dish with rampant MSM collaboration and sexism.  I admit it's not all sexism, the media just loves to hate the Clintons and to punish Hillary for Bill's mistakes until the cows come home.  It's a good thing poor Chelsea doesn't have braces anymore, but they've gone after her too.</br><br> </br><br>I still remember how important they are- Bill Clinton simply mentioned the word HIV/AIDS and he revolutionized how we treat people, test people, research the disease, and educate people- just one example.  Listen, the Clintons are not angels but name a politician who is.  </br><br></br><br>Anyone still standing at this stage in the race has the audacity to think he or she should lead the free world- they are all politicians.  And they will all do whatever they have to for election.  I am not wowed or astounded by what people will do or say to get elected, they are the most ambitious people in the world.  I am suspicious of any candidate who tries to sell 'new politics' and moral cleanliness.  </br><br></br><br>I think that Obama's promise of a 'new politics' is bull, because there are no new politics.  If there were then Mike Dukakis or John Kerry would have thought of it.  I just don't think Obama can win in the fall, and i like Clinton's policies better.  Obama's foreign policy kinda weirds me out- let's get rid of all the current policies that umpteen presidents have employed and do everything in a different way?  I don't buy it, I don't trust him, I don't know him, and he's green.</br><br></br><br>I am not a racist crazy person, and everytime JJP talks about so-called racist working class whites in Appalachia I will bring up the Democratic weirdos who go to caucauses in Idaho and Wyoming- not exactly the mainstream of the Democratic party.  They all get to vote, but they should be proportionally represented by their delegates and Iowa and New Hampshire shouldn't get dibs on who we elect as President.  </br><br></br><br>I really hate most of the system, like the Texas one- primary _and_caucus?.  Every time i hear someone from the Obama camp complain about Clinton wanting to seat the delegates from FL and MI I want to scream.  Is it really a good idea to piss off voters in big swing states that have cost entire elections before?  They were making a good point....  Iowa, farm subsidies, ethanol, and NH should not be able to rig elections.  Ethanol is tearing the global economy apart, making food (even beer) more expensive, and making Brazil want to tear down as much of the Amazon it can.  Pardon my French but fuck Iowa.</br><br></br><br>Howard Dean should make a rule- no caucuses, only primaries.  And then he should establish a rotating calendar for which states get to vote when.  My suggestion- one day a month in an election year, 10 states vote.  Five months go by and then it's over- no matter where CA and NY fall in the cards.  If NH always wants to be the first state, and if we want to avoid amending the constitution, then fine.  But nine other states will vote the same day, on a rotating basis.  I know primaries are more expensive than caucuses but they're not nearly as expensive as having a dumb-ass president for 8 years.  And sure, group the states geographically if it means that the candidates can save some money by advertising to DC, MD, and VA at the same time.  Or NY, NJ, and CT, or whatever.</br><br></br><br>I am not a Democrat who likes to lose, which seems to be pretty easy in the last couple of decades.  I want to win for crying out loud and i don't think Obama can do it.  One thing about republicans is that they are good at winning, and we are good at losing.  And we can't blame Karl Rove or the John Kerry windsurfing ad- we just suck at this.  Except for the Clintons.</br><br></br><br>Bests,</br><br></br><br>Ms. Irish</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-04_12:42:00", "killed": false, "user_key": "7c4455626754e1b9bc3be232b1024136", "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}, "1968273": {"up_voted": false, "ip": "", "has_replies": false, "message": "\"One thing about republicans is that they are good at winning, and we are good at losing. And we can't blame Karl Rove or the John Kerry windsurfing ad- we just suck at this. Except for the Clintons.\"<br></br><br>Who...just lost. And if the Great Winners got beat? Then maybe you can have a little faith in the team that beat them.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-05_18:40:00", "killed": false, "user_key": "5630efe2076d8e20dae9514342245796", "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}, "1968274": {"up_voted": false, "ip": "", "has_replies": false, "message": "Hey.. just come across this website and decided to make a few comments.<br></br><br>I'm an Anglo-Irish Hillary supporter. I am not American. I am not a woman and I am not black. I am a white Anglo-Saxon man. I will not go into my reasons for not supporting Obama (who I have seen on the political radar since circa 2003) but as he takes on the nomination I still have doubts as to whether he can win, but I hope and pray I am wrong. </br><br></br><br>First of all... you probably don't know much about UK blogging but you Americans rock at it. Our pathetic efforts seems just like that compared with yours.</br><br></br><br>As much as I really thought it was an excellent post, it was a shame that the comments did not live up to the standards the author hoped to inspire.</br><br></br><br>Yes, its been an ugly campaign but it has been ugly on both sides and from both candidates. I can mention plenty of my female friends (both British and American overseas) who have been appalled by Obama's dog-whistle sexism as well as the sexism shown by the American (and indeed British) media towards Hillary Clinton.</br><br></br><br>Senator Clinator has her faults - vast and numerous - of course and so does Obama. Clinton can be accused of stirring racism. And while Obama has never said anything directly sexist, he has made some questionable comments whose results have been to pigeon hole Clinton by her gender.</br><br></br><br>I am equally unsure exactly what Clinton has said that is directly racist? </br><br></br><br>1) The reference to Johnson and MLK was merely pointing out that the civil rights movement was given traction by a white man. Is that racist?</br><br></br><br>2) She never called for Obama's to be assassinated. She merely pointed out that Robert Kennedy was assinated in June while he was *campaigning*. </br><br></br><br>3) Bill Clinton (not Senator Clinton) pointed out that Jesse Jackson had won primaries. This is the remark I have most problem with and can find no justification.</br><br></br><br>4) Geraldine Ferraro said that Obama would not be where he was if he was white. But isn't that true? Its no bad thing. The black vote is hugely important as is the ethnic minority vote in general. To call this racist is unfair.</br><br></br><br>5) Senator Clinton has said that she commands a majority of white working class votes. Well, isn't it true? Isn't it a bit unfair to call that racist. Obama has a constituency (the black vote and the intellectual/liberal vote), Clinton has a consituency too. Obama has failed for the moment to win over the bloc.  </br><br></br><br>Please judge Obama and Clinton by the same standards. They are both flawed. And while Clinton may have to make peace with America's black community. Obama has to make peace with women as well.</br><br></br><br>It is to be expected (on both sides). We are from early age conditioned to see by their differences to us and sometimes when we are not on the receiving end of stereotypes we can be insensitive. </br><br></br><br>I do not think Obama is sexist nor that the Clintons are racist. Both were just unfortunate to be placed in such a sensitive competition. In my view neither of them has emerged from the process very well, \"sweetie\". (I will not tell you what my American friend said when she heard that - although she does liek John McCain.)</br><br></br><br>Until Obama supporters acknowledge this, he will struggle to unite the Democrats.</br><br></br><br>Oh, and three final things. Its 5am here and I'm knackered. I just wanted to post something on this site as I appreciated the original comment. I would appreciate it if I was not subjected to the general abuse that seems to characterise the blogosphere - calm down guys: freedom carries responsibility with it and freedom of speech is too precious to be abuse and shouted down. </br><br></br><br>Also, don't gloat too early guys. I worked out from a poll of polls that at the moment its a much tighter race for Obama than it would have been if the positions had have been reversed. Obama might have beat the Clintons, but he is not yet President. A few years ago the best candidate was beaten by a non-entity from texas. I really have to thank you guys for that one by the way... (Oh. And before you point it out - I apologise on behalf of all of the United Kingdom for Blair, Thatcher and really bad teeth)</br><br></br><br>And also as someone who heralds from the emerald isle and also who has done work with HIV/AIDS in Africa, I'll always take my hat off to those Washington insiders, the Clintons....</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-06_00:53:00", "killed": false, "user_key": "7942746be25e765d341b74b8c2d06ac2", "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}, "1968275": {"up_voted": false, "ip": "", "has_replies": false, "message": "There is absolutely no doubt in my mind that Clinton, her campaign, and her supporters sometimes engaged in, and benefited from, racist rhetoric and tactics--and that their having done so is despicable and entirely unacceptable.<br></br><br>There is equally little doubt in my mind that you made the jump from gathering together people who supported Obama, and who objected to racism, and who wanted confirmation that what they were seeing was real, and who weren't going to take it lying down, into being one of the head cheerleaders for ugly, rampant, and often baseless Hillary hatred. And that you denied, at virtually every turn, the very real sexism that came from the mainstream media, Obama supporters, and Obama's campaign. </br><br></br><br>Neither Obama nor his campaign ever intervened to temper any of that bigoted vitriol. It's an intervention that Clinton and her campaign are equally guilty of not having made regarding the bigoted vitriol re: race.</br><br></br><br>As a Clinton supporter who will be voting for Obama in November, and trying to do outreach to disillusioned Clinton supporters who might otherwise stay home or vote for McCain, I just want to assure you that the kind of venom you've spewed, and the culture of uncritical bonding based on hatred you've helped to create and support, will be one of my--and Obama's--greatest obstacles. </br><br></br><br>I appreciate the extent to which your post is a step in the right direction. I also hope that you'll appreciate what I'm saying when I tell you that it may be too little, too late. And that you've got a whole lot more work to do towards healing the rift you've done so much to create. </br><br></br><br>At the end of the day, it doesn't make all that much difference to me whether you do it as the result of sincere soul searching or as political calculation. One way or other, this crap has to stop--on both sides.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-06_12:50:00", "killed": false, "user_key": "7c4455626754e1b9bc3be232b1024136", "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}, "1968233": {"up_voted": false, "ip": "", "has_replies": false, "message": "Jack, I love ya. And, you have always been one of the more fairer ones amongst us, and I respect you Brother, but they poke us in the eye for months, and we should ' understand'? <br></br><br>Understand what? </br><br></br><br>She had more advantages than any modern American Presidential Candidate, and when she was coronated, there wasn't any low she wouldn't go to? Any group she wouldn't pit against the other? Any rotten tactic she wouldn't pull? </br><br></br><br></br><br>Maybe I'll be there by the convention, but right now?</br><br></br><br>Nope. I'm not feeling reconciliation with folks who believe it's ok to diminish me because of my race, and can't give me a handful of incidents from the Obama campaign and surrogates in the other direction. </br><br></br><br>I'm not ready to turn any cheeks.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_02:37:00", "killed": false, "user_key": "f85f4de88a30987f0360c336da9569ae", "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}, "1968235": {"up_voted": false, "ip": "", "has_replies": false, "message": "well said brother.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_03:17:00", "killed": false, "user_key": "7c7692dd307a2c4072a792d0764e5bd4", "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}, "1968236": {"up_voted": false, "ip": "", "has_replies": false, "message": "\" I have felt driven to lash out in ways that expose the limits of my own ability to communicate.\"<br></br><br>This sentence describes to the letter emotional places that instances in this campaign have taken me whether it was driven by the Clintons, the media or the Clinton surrogates, some of which I'm sure have felt the pain of being black in America.</br><br></br><br>I remember the hurts better than you Jack because you left out the statement that Hillary made that MLK needed a president to get civil rights legislation passed and the \"assasination\" reference.</br><br></br><br>Aside from a very recent personal experience that rocked my belief in human decency, I had always believed that most people would give another a hand  and judge them based on the person they would come to know and treat them accordingly.  I believed that because that had been my reality until recently.</br><br></br><br>This campaign has opened my eyes to a world that I for some reason didn't know was so ugly.  Maybe it was my own naievity, but this campaign has made me more aware of the stock value of the African American citizen.  I didn't realize it was so bad.</br><br></br><br>I am a woman and as a woman I can honestly say that the things said about Hillary Clinton being a woman amounted to little more than locker room teasing which she was willing to play along with when her on surrogates referred to her having cojones, testicular fortitude and so on so the idea that we should feel for her and her supporters because they have suffered sexism does not walk with me.  Why in the world would someone who is offended by sexism let herself be referred to as tough as a man when other descriptions would have sufficed?</br><br></br><br>I cannot reconcile this because the assaults were not necessary.  </br><br></br><br>As rikyrah has pointed out on many occassions, Hillary had the money, the machine the brand and a large majority of the black support starting out.  I can't deduce the turning point, the point that Hillary needed to use the Southern Strategy to win a democratic primary where the base of the party is black.  As if we weren't watching, as if there was nothing we could do.  When did the moment click in her mind that she was coming after us?  That we were disposable?</br><br></br><br>Jack, it could very well be that Hillary Clinton & Co. took us (at least me) to a place we cannot come back from.</br><br></br><br>I can't kiss and makeup.</br><br></br><br>As far as I am concerned Hillary and Bill Clinton are a relic of old similiar to a Strom Thurmond or a Bull Connor.</br><br></br><br>They weren't worth it anyway.  They lack character and morals. We were forever supporting a flawed mentality in the both of them.  We forgave them for things we not dare be associated for fear of not being seen as respectful, righteous people.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_03:39:00", "killed": false, "user_key": "9fcb7c771a7713dda01aa936fd426bfe", "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}, "1968237": {"up_voted": false, "ip": "", "has_replies": false, "message": "<i>These attacks on Hillary were more than that. They were attacks on *women*, and so, many women who might have been on the fence or only tepid Clinton supporters rushed to her in defense of themselves and their daughters, mothers and sisters.</i><br></br><br>Jack. NO. Please.</br><br></br><br>I am a woman. These were not attacks on me.</br><br></br><br>I exist.</br><br></br><br>I know when I am and am not being attacked. </br><br></br><br>I am tired of having my existence, intelligence and ability to perceive erased by this lie.</br><br></br><br>This lie that attacks on Hillary Clinton were attacks on me -- because they were attacks on \"women.\"</br><br></br><br>And the lie (that you are not saying but that is attached to this generalization you are making) that if I don't see it, if I don't feel it this way, I am somehow not aware of the sexism that exists in this society -- delusional if I don't accept this lie.</br><br></br><br>This erasure of my existence is ugly and it is violent. </br><br></br><br>Yes I said violent. Saying attacks on Hillary Clinton are attacks on me because they are attacks on \"women\" (and I am a woman) ... is on the side of violence. It says that attacks on a perpetrator are attacks on me because we share a gender. It is not true. It is on the side of violence to say that. </br><br></br><br>Please stop. Please qualify your statement. Please change what you wrote to say that's how the supporters of Senator Clinton felt it, or that SOME women felt it that way, or anything that allows for the existence and subjectivity of women who <b>do not feel it this way</b>. </br><br></br><br>I'm not saying erase the fact that some women did feel it this way. That is obviously true and should not be erased.  But please allow for the reality of women who did not. </br><br></br><br>Here is some of what I wrote to someone I argued with about this, when she told me that \"The real victims in the appalling coverage of Sen. Clinton's campaign, I believe, is all of us: that is, any woman with dreams and ambitions, be they in politics, business or the arts.\"</br><br></br><br><i>I feel media-push back against Senator Clinton as actually somewhat affirming to my experiences and perceptions (at least more so than her actions and approaches!). I do not feel the coverage as directed at me at all, don't feel it as a barrier or attack on me because I am a woman. Because my sense of her is so strong, because her actions frighten and horrify me so deeply and viscerally. </i></br><br></br><br>I feel that when people act in such a horrific manner, publicly, then they enter a landscape in which we (they and I) are on opposite sides of a struggle.  </br><br></br><br>So I don't identify with Senator Clinton and don't see attacks on her as attacks on myself. I don't live a life where lies and distortions are the bedrock of my reality. My strength is not based there, my actions are not based there.  </br><br></br><br>How she is treated is not about shared gender for me, it is about her being an actual three-dimensional person who has chosen a particular path and needs to be held responsible for it. The deathwatch stuff doesnot feel threatening to me, not at all. Instead, it resonates (metaphorically of course) with my visceral response to PLEASE make her stop causing harm if she won't stop it herself, because what she is doing hurts me. For me this is a deep visceral reaction to actual pain and wanting to make it stop. ...... </br><br></br><br>I *do not* feel that those guys in the media are being abused by Senator Clinton. But I myself feel her as violent, as a perpetrator, and I identify with their push-back against her more than with her actions to start with.</br><br></br><br>So Jack, maybe you didn't mean to imply \"all women\" when you said <i>women</i> like you did. I don't have a need to erase the reality that SOME women felt attacks on Hillary as attacks on themselves. But not me. To suggest that is a lie. I will not collude with a lie.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_03:44:00", "killed": false, "user_key": "de3917e982ff609a0d6f7fb5e3c8f079", "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}, "1968238": {"up_voted": false, "ip": "", "has_replies": false, "message": "As a woman, I suppose I should have felt outrage over some of the statements made by the media, but strangely, I didn't. I'm ten years younger than Hillary Clinton, white as snow, and certainly have had my share of discrimination and ceilings imposed on my upward mobility.<br></br><br>The reason I didn't feel particular outrage was because all too often, Hillary and her most ardent supporters used their gender as a weapon, dishonestly and cattily.  I can honestly say that I have suffered more at the hands of my so-called sisters than I ever have at the hands of men, so those responses, those attacks, the disgrace of hearing them cry out about sexism while completely overlooking the racism was to me, a disgrace.</br><br></br><br>I can honestly say that the deepest outrage I felt during these primaries centered around the racism I kept seeing. It was heartbreaking and infuriating all at once, and it was sometimes so subtle and self-righteous that it made me want to scream.</br><br></br><br>Because this man -- Barack Obama -- was the first person to seriously inspire me to give up money, time, and effort toward his success.  Like you, my ownership goes so deep that it was <i>personal</i>. </br><br></br><br>My tolerance level for dishonesty is pretty low, as is my tolerance for outright meanness.  I have seen far too much outright meanness, and this is coming from the <i>same side</i>.  I think that hurts me more than just about anything.</br><br></br><br>With all of that, I want to be forgiving, and move past the hurts of this season into what I see as the possibility for the most electrifying national election of this century, or the last one. </br><br></br><br>Because you know what?  Barack Obama's transformative politics <i>won</i>.  He just proved to all of us that it IS possible to move past the politics of cynicism to the politics of hope. And he did it  by bringing us all into the process, emotions and all.  That means that we bear the burden of turning that transforming light on ourselves and now inviting Hillary supporters into the excitement, and that means forgiveness.</br><br></br><br>Someone once told me that forgiveness is acknowledging the right to be angry and surrendering it.  I think that's where we need to go, because the ultimate goal is in sight -- it's just a matter of leaving the past behind and inviting a larger group into the politics of hope.  Imagine the transformation in this nation and in ourselves if we can go there.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_04:13:00", "killed": false, "user_key": "aae6566d31caa504b00a492d7800ad93", "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}, "1968239": {"up_voted": false, "ip": "", "has_replies": false, "message": "ms. martin said....<br></br><br><i>I am a woman and as a woman I can honestly say that the things said about Hillary Clinton being a woman amounted to little more than locker room teasing which she was willing to play along with when her on surrogates referred to her having cojones, testicular fortitude and so on so the idea that we should feel for her and her supporters because they have suffered sexism does not walk with me. Why in the world would someone who is offended by sexism let herself be referred to as tough as a man when other descriptions would have sufficed?</i></br><br></br><br>Say it again.</br><br></br><br>::</br><br></br><br>michelle, thank you. Thank you so much.</br><br></br><br>::</br><br></br><br>Hillary Rodham Nixon is a patriarch. </br><br></br><br>And if she can't stand the heat, she should get the fuck out the kitchen. That she attributed that Black Mother Wit to FDR shows just how deeply rooted is her patriarchy.</br><br></br><br>I see no reason to forgive her at this point.</br><br></br><br>She remains in the mire.</br><br></br><br>And she's got years and years of work to do to come up out of it.</br><br></br><br>I don't think she can. Not without a whole lot of psychotherapy.</br><br></br><br>She's a sociopath.</br><br></br><br>It's an illness with a cure, but only if diagnosed.</br><br></br><br>And quite frankly, I've lost a great deal of respect for her supporters.</br><br></br><br>I simply have little patience for denial.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_04:13:00", "killed": false, "user_key": "9bf0971c139c9dc33659e8ed441e4f5e", "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}, "1968240": {"up_voted": false, "ip": "", "has_replies": false, "message": "Craig, you're absolutely right when you call her a patriarch. She is, and as soon as I read what you said I realized that's why I never really caught fire over her (and her surrogates') complaints about sexism. <br></br><br>The fact of her candidacy proved that gender wasn't the issue, as did the fact of her presumption that she was the appointed one.</br><br></br><br>Where you lose me is on the forgiveness factor.  Truly, I believe there has to be a way through the collective anger to outstretched hands of forgiveness if we want to have a prayer of winning this thing in November.</br><br></br><br>And win we must. We didn't fight for Barack's candidacy to see him lose in November because we stand divided.  Someone has to make the first move, and sooner rather than later, for our own sake, and the promise of electing an extraordinary and gifted man to the White House this year.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_04:21:00", "killed": false, "user_key": "aae6566d31caa504b00a492d7800ad93", "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}, "1968241": {"up_voted": false, "ip": "", "has_replies": false, "message": "Wow! The response from Black women to this post was swift and decisive. I'm glad that you want to take stock  and evaluate how you may have perpetrated some instance of 'harm'. Thanks, Baratunde for I believe that you are sincere and a nice man, but.....<br></br><br>YOU ARE WRONG!!!</br><br></br><br>Yeah those white boy pundits made a few caustic statements about Clinton. But you're operating from a position that the corporate media was out to get her and therefore out to get ALL WOMEN. Well, they were NOT out to get Hillary. She said politics are ugly, they're a contact sport. That was par for the course. Do you think she cared or it bothered her when she actively cultivated relationships with the very same people she claimed harmed her in previous election cycles? I agree it was like a hazing before you join the group. They couldn't make it too easy for her. </br><br></br><br>Besides the 'women' in that equation were and still are white women. I repeat, Black women were never in that equation. If it was just about women being oppressed then all the white women who felt their privilege in jeopardy would not have come out and attacked Black women AND men so viciously. THAT was the violence. </br><br></br><br>Hillary has done NOTHING to make up for the damage she and her campaign have done. In fact she and her buddies in the corporate media are actively trying to foster a toxic environment where white people don't trust Obama and Black people feel ignored and disgruntled. </br><br></br><br>The proportion you've used would not balance the scale of justice in any shape or form. </br><br>i.e.</br><br>Clinton calling for Obama's assassination vs Chris Matthews saying she has thick ankles. </br><br></br><br>--- See it doesn't compare</br><br></br><br>The men that need to examine their gender bias...and racial bias are WHITE MEN. Not to say that Black people haven't engaged in any sexist behavior but I'd be more likely to say it was in response to the racial attacks vs. behavior INITIATED by us. Again the level of harm must be evaluated in proportion to its effect. </br><br></br><br>Clinton wins for every level of depravity HANDS DOWN!!</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_04:34:00", "killed": false, "user_key": "1572c9b90152e199379cfb228c0cc759", "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}, "1968242": {"up_voted": false, "ip": "", "has_replies": false, "message": "karoli I just wrote a whole long comment I am choosing not to post.<br></br><br>I will post only a fragment of it:</br><br></br><br>you wrote: <i>We didn't fight for Barack's candidacy to see him lose in November because we stand divided</i></br><br></br><br>we who?</br><br></br><br>where is the dividing line? where does it come from?</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_04:39:00", "killed": false, "user_key": "7c4455626754e1b9bc3be232b1024136", "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}, "1968243": {"up_voted": false, "ip": "", "has_replies": false, "message": "Oops! That anon comment at 1:39am was me. I pushed publish when I mean to push preview and also forgot to put in my name at first.<br></br><br>I need to go to bed.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_04:42:00", "killed": false, "user_key": "de3917e982ff609a0d6f7fb5e3c8f079", "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}, "1968244": {"up_voted": false, "ip": "", "has_replies": false, "message": "Like Jack, I am trying to overcome my hurt and anger at HRC. I am trying to understand the heat and vitriol emanating from her supporters. But like the commenters above, I do not consider the overt sexism shown by the media to be nearly as hurtful as the racism that has come Obama's way from the media and from her campaign. HRC essentially told black voters to go to hell, that our votes don't matter to her as long as she has white votes. She has amplified the racist, distracting attention to Jeremiah Wright, praised John McCain over Obama, and called us delusional for supporting Barack. <br></br><br>She doesn't deserve forgiveness by a long shot, and her supporters are now threatening to vote for John McCain, something that most Obama supporters would never do, even in light of how awful HRC has been (although, to be fair, there is some evidence that these have been McCain-supporting infiltrators).</br><br></br><br>Yes, we do need to try to be understanding of her supporters, because, like Jack said, most voters are not as stupid, partisan, or hateful as HRC's fringe. However, reconciliation will only occur with positive action and leadership from HRC. So far, I haven't seen any evidence that she's willing to unite the Democrats behind Obama, even though she has reportedly asked for his help to smooth over black sentiment against black elected officials who supported her. The latest reports say that she will <i>not</i> concede on Tuesday, hoping for a win in South Dakota, and waiting, <b>I'm assuming</b>, for Michelle's alleged \"whitey\" video to emerge. If the video exists and is as explosive as some seem to expect it to be, then HRC probably will pull off a win by August. How she can then get black people to support her in November is a mystery to me.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_04:54:00", "killed": false, "user_key": "f4fc36ad3c63317254ea1ba563250f96", "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}, "1968245": {"up_voted": false, "ip": "", "has_replies": false, "message": "I gotta go to work but I'll make two quick points:<br></br><br>I always found it interesting when HRC and her supporters played the gender card.  When I think about how most women in other parts of the world are abused and exposed to true SEXISM, I just don't see it.  Her complaining just seems childish and not even something she could possibly truly believe.</br><br></br><br>Why aren't all minorites pissed off about the treatment Senator Obama has gotten from the media, DNC and others?  Divide and conquer - it still works.  </br><br></br><br>gotta go .. have a good day everyone.  I'm so grateful to have found a community to share all that's gone on the past several months.  There were times when I was truly depressed, but had a place to go....</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_07:24:00", "killed": false, "user_key": "fe326db7746add85eb4110b5924b4b27", "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}, "1968246": {"up_voted": false, "ip": "", "has_replies": false, "message": "\"What would Obama do?\"  I ask myself that all the time, particularly when I'm feeling ugly and mean inside.  I think that's a pretty good sign that he's a leader.<br></br><br>I want to get one of those bracelets, like the WWJD ones, that say WWOD.  LOL</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_07:31:00", "killed": false, "user_key": "6bda4812c03dcc60ed0ff383f5a4e9c8", "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}, "1968247": {"up_voted": false, "ip": "", "has_replies": false, "message": "I must disagree with a big premise of this post.  The same disagreement as other commenters above.  <br></br><br>The only way to see Hillary Clinton as representing feminism is to be totally guided by identity politics: she's female, therefore she's a feminist. </br><br></br><br>Obviously identity is important.  It matters if a candidate is a woman, or African American, or whatever. </br><br></br><br>But identity doesn't go on forever.  At some point (as other commenters have already pointed out above) we need to look at the individual human being.  In the case of Hillary Clinton, take a look, and keep in mind the line from the Beatles Strawberry Fields: \"what did you see when you were there?  Nothing that doesn't show.\" </br><br></br><br>This is a privileged person who used private detectives to harrass women whom Bill harrassed.  This is a feminist? </br><br></br><br>Hillary's supporters should look to the many truly admirable women who are breaking barriers, who are getting things done (which usually means working with other people... not Hillary's strong suit, as you may have noticed). </br><br></br><br>I could totally get into the feelings of her supporters, that it would be great to have a woman president, BUT I just can't do that with THIS PARTICULAR INDIVIDUAL woman.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_07:38:00", "killed": false, "user_key": "7f3bcba40954f3b8277da719d4ebe737", "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}, "1968248": {"up_voted": false, "ip": "", "has_replies": false, "message": "I feel zero connection to Hillary.  I'm peering, peering looking...but there's no sign of life on planet Hillary.  Life departed long ago and all that remains is an animated corpse.  Who is at the controls, I'm not sure.  Maybe the mothership somewhere in orbit...<br></br><br>Maybe it's all those dead Canadian hemophiliacs who went to hospital to get their transfusions and left with HIV.  Who knew the Arkansas Governor had his hands in that tragedy.</br><br></br><br>Maybe it's all those dismembered babies in Rwanda that made Hillary vomit when she met them.  Who knew she and her husband had a role to play in genocide.</br><br></br><br>Who knows how many black people have been boldly called \"nigger\" since Chairman Hillary began her unholy crusade.</br><br></br><br>I guess what I'm trying to say is I don't give a damn about Hillary or Bill or their insipid supporters.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_07:45:00", "killed": false, "user_key": "0e63fda3bc8752465623f674ffcc5f40", "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}, "1968249": {"up_voted": false, "ip": "", "has_replies": false, "message": "thanks for these incredible comments yall. <br></br><br>i'll try to dip in and out throughout the day with some followups.</br><br></br><br>i definitely couldn't list ALL the offenses of the clinton camp, so don't take anything from me not listing MLK, assassination and other wrong statements and decisions.</br><br></br><br>I fully agree with Ms. Martin who wrote</br><br></br><br></br><br></br><br><b></b></br><br>Jack, it could very well be that Hillary Clinton & Co. took us (at least me) to a place we cannot come back from.</br><br></br><br></br><br>God I know that feeling, and many more of you have expressed something similar.</br><br></br><br>A lot of people never trusted, liked or respected The Clintons. I'm not one of those people. Watching them descend into ugliness has been painful and infuriating, especially as our own witness was called into question.</br><br></br><br>FOr Michelle, I really need to clarify.</br><br></br><br>I'm not trying to say I believe that all attacks on Hillary are sexist or attacks on you. I'm trying to see and express the frustration of a category of her own supporters. </br><br></br><br>I talked to a Hillary supporter who told me point blank that she only began to support Hillary as a defense mechanism against sexist media coverage. This person never bothered to understand our rage and sadness, and I never really bothered to understand hers.</br><br></br><br>I'll update the post to clarify that.</br><br></br><br>keep it coming fam!</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_08:00:00", "killed": false, "user_key": "8a2d6caafd9b7800b7d657a7d3470f96", "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}, "1968250": {"up_voted": false, "ip": "", "has_replies": false, "message": "btw... so many fantastic comments,  I feel like a cat in a fish market!", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_08:04:00", "killed": false, "user_key": "0e63fda3bc8752465623f674ffcc5f40", "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}, "1968251": {"up_voted": false, "ip": "", "has_replies": false, "message": "jack,<br></br><br>Your honesty and integrity is admirable, and your perspective, along with the other posters and commenter is always passionate and interesting.</br><br></br><br>I keep coming black to this blog even though I am not black, not a Democrat or an Obama supporter. </br><br></br><br>I do have to say that I did note the tone and tenor of the posts and comments on this blog change as the  primary progressed, but I just scrolled over the posts about the Clintons because I long ago realized what they were all about.  </br><br></br><br>I have alway felt that in coming to this blog, that I was 'standing on your property' and that has guided me as I process what I read here, and how I comment.</br><br></br><br>I too care deeply about politics and our country and enjoy debating the issues and the best way to move the country into the future. </br><br></br><br>I am looking forward to discussing and debating the upcoming campaign with, to quote conservative radio talk show host, Bill Bennett, 'candor, intelligence and good will.'</br><br></br><br>Peace.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_09:00:00", "killed": false, "user_key": "bbb5f18b1f882407561a7f27f4fb2937", "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}, "1968252": {"up_voted": false, "ip": "", "has_replies": false, "message": "i respect this post. i've had a similar feeling...tho not quite the same ending. i have to say i've never lost sight of what hillary's supporters were fueled by. i too went out and covered her events in my work and met her supporters up close. i think it was <a href=\"http://www.theunapologeticmexican.org/elgrito/2008/04/hillary_clinton_in_eugene_oregon.html\" rel=\"nofollow\">here</a> that i first articulated that understanding.hell, i even made her supporters a <a href=\"http://www.theunapologeticmexican.org/elgrito/2008/05/the_hillary_doll.html\" rel=\"nofollow\">video.</a> and in that last linked post i talked about how i separated my feelings from HRC from those i have for many of her online supporters.<br></br><br>of course that was right before the whole rfk blowup, at which point i hardened a bit. toward her and her supporters, at least the ones getting all outraged that \"obama pulled the race card on her and ruined her chances\" and blaming her gross statement on him and us (Obama's supporters). </br><br></br><br>and there, i basically found a divide i often talk about, on that is at the core of my own blog's purpose...a divide in seeing the world and people. and seeing the dominant culture as setting values for all, and some people see it the way i do, and some seemingly never will. sometimes its race based, sometimes class. events will point out and highlight these divides. its not the events so much as the gap in our experience and way of seeing things. those people who dare accuse obama of using race in a negative way simply see the world in a very different light than i do. and we would undoubtedly disagree on many things, primary or no. and to those who want to hold on to those gross ideas or sulk on it, they can go take a flying leap. i have nothing to say to them until they open their minds.</br><br></br><br>but overall, it's a good point to be making.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_09:24:00", "killed": false, "user_key": "5630efe2076d8e20dae9514342245796", "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}, "1968253": {"up_voted": false, "ip": "", "has_replies": false, "message": "This amazing, Jack. Well done. You summed up how I felt and have brought be back!  In my ill placed anger at Hillary, I once thought that I would vote for McCain!  Silly rabbit!  <br></br><br>I think the GOP wants to divide these two strong Democratic groups, Women and African Americans.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_09:30:00", "killed": false, "user_key": "6dcbca70c39062f80e7e54429bcaa851", "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}, "1968254": {"up_voted": false, "ip": "", "has_replies": false, "message": "<i>Hillary Rodham Nixon is a patriarch. <br></br><br>And if she can't stand the heat, she should get the fuck out the kitchen. That she attributed that Black Mother Wit to FDR shows just how deeply rooted is her patriarchy.</br><br></br><br>I see no reason to forgive her at this point.</br><br></br><br>She remains in the mire.</br><br></br><br>And she's got years and years of work to do to come up out of it.</br><br></br><br>I don't think she can. Not without a whole lot of psychotherapy.</br><br></br><br>She's a sociopath.</br><br></br></i><br></br><br>Craig,</br><br></br><br>THANK YOU.</br><br></br><br>For Hillary Rodham Nixon. </br><br></br><br>Never truer words were written.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_09:42:00", "killed": false, "user_key": "f85f4de88a30987f0360c336da9569ae", "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}, "1968255": {"up_voted": false, "ip": "", "has_replies": false, "message": "Wow you summed up alot of my feelings.   I admit that I have alot of anger with the Clintons.  My fear is that in expressing our selves that if we go too far we end up identified as a one of these crackpot anti blogs that refuse to see beyond whatever it is they are attacking. I'm thinking of the credibility and respect for this website.  <br></br><br>I appreciate your post.</br>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-06-03_10:12:00", "killed": false, "user_key": "3e892379e7d442c8970d7cad6f54d5b8", "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}}, "integration": {"receiver_url": "", "theme": 4, "reply_position": true, "disqus_logo": false}, "timer": {"timer_url": "http://localhost:8005", "thread_id": "1848550", "user_id": "anonymous", "forum_id": "21630", "hash": -3289792169594096414}, "thread": {"total_posts": 0, "paginate": false, "per_page": 0, "slug": "this_primary_campaign_has_brought_out_the_best_and_worst_in_me", "num_pages": 1, "days_alive": 0, "realtime_paused": true, "id": 1848550, "num_posts": 42, "closed": false, "queued": false, "killed": 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: ";
  this.MODERATE_OPTIONS = "Moderate Options";

  // Thread moderator actions
  this.CLOSE_THREAD = "Close thread";
  this.OPEN_THREAD = "Open thread";
  this.REMOVE_THREAD = "Remove thread";
  this.RESTORE_THREAD = "Restore thread";
  this.ACTIONS = "Actions";
};
// 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=this_primary_campaign_has_brought_out_the_best_and_worst_in_me' +
		'&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/this_primary_campaign_has_brought_out_the_best_and_worst_in_me/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>';
		html += '<a href="#" onclick="Dsq.Thread.showModeratorActions(); return false;">' + Dsq.Strings.MODERATE + '</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 <a href="' + reaction.source_url + '">' + (reaction.source == 'backtype' ? 'BackType' : '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='	+ 'this_primary_campaign_has_brought_out_the_best_and_worst_in_me'
			+ '&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/this_primary_campaign_has_brought_out_the_best_and_worst_in_me/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">42</span> Comments\
	 &nbsp;\
	 <span class="dsq-item-feed">\
	 <a href="http://jackandjillpolitics.disqus.com/this_primary_campaign_has_brought_out_the_best_and_worst_in_me/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/this_primary_campaign_has_brought_out_the_best_and_worst_in_me/">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:1848550" 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/this_primary_campaign_has_brought_out_the_best_and_worst_in_me/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 <a href="' + reaction.source_url + '">' + (reaction.source == 'backtype' ? 'BackType' : '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:1848550" 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:1848550" 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'				: 'this_primary_campaign_has_brought_out_the_best_and_worst_in_me',
			// 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/this_primary_campaign_has_brought_out_the_best_and_worst_in_me/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='	+ 'this_primary_campaign_has_brought_out_the_best_and_worst_in_me'
			+ '&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='	+ 'this_primary_campaign_has_brought_out_the_best_and_worst_in_me'
			+ '&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='		+ 'this_primary_campaign_has_brought_out_the_best_and_worst_in_me'
				+ '&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.showModeratorActions = function() {
      if (!Dsq.jsonData.request.is_moderator) {
          return;
      }

      var html = '<div class="dsq-moderate-options"><table><tr>' +
                 '<td>' + Dsq.Strings.ACTIONS + '</td><td><ul>';
      html += '<li><a href="#" onclick="Dsq.Thread.toggleClosed(); return false;">' +
              (Dsq.jsonData.thread.closed ? Dsq.Strings.OPEN_THREAD : Dsq.Strings.CLOSE_THREAD) +
              '</a></li>';
      html += '<li><a href="#" onclick="Dsq.Thread.toggleKilled(); return false;">' +
              (Dsq.jsonData.thread.killed ? Dsq.Strings.RESTORE_THREAD : Dsq.Strings.REMOVE_THREAD) +
              '</a></li>';
      html += '</ul></td></tr></table></div>' +
              '<p>Go to the full <a href="http://disqus.com/comments/moderate-threads/" target="_blank">moderate panel</a> for more options.</p>';
      Dsq.Popup.popModal(html, Dsq.Strings.MODERATE_OPTIONS);
  };

	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);
	};

  this.toggleClosed = function() {
      Dsq.Utils.postToUrl('http://disqus.com/forums/jackandjillpolitics/toggle_thread_closed.js', {thread:Dsq.jsonData.thread.id});
      window.setTimeout(function() { window.location.reload(); }, 500);
  };

  this.toggleKilled = function() {
      Dsq.Utils.postToUrl('http://disqus.com/forums/jackandjillpolitics/toggle_thread_killed.js', {thread:Dsq.jsonData.thread.id});
      window.setTimeout(function() { window.location.reload(); }, 500);
  };
};
// 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/1848550/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-1968233">\
	 <div id="dsq-comment-header-1968233" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968233" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968233">rikyrah</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968233" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968233" class="dsq-comment-message">Jack, I love ya. And, you have always been one of the more fairer ones amongst us, and I respect you Brother, but they poke us in the eye for months, and we should \' understand\'? <br></br><br>Understand what? </br><br></br><br>She had more advantages than any modern American Presidential Candidate, and when she was coronated, there wasn\'t any low she wouldn\'t go to? Any group she wouldn\'t pit against the other? Any rotten tactic she wouldn\'t pull? </br><br></br><br></br><br>Maybe I\'ll be there by the convention, but right now?</br><br></br><br>Nope. I\'m not feeling reconciliation with folks who believe it\'s ok to diminish me because of my race, and can\'t give me a handful of incidents from the Obama campaign and surrogates in the other direction. </br><br></br><br>I\'m not ready to turn any cheeks.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968235">\
	 <div id="dsq-comment-header-1968235" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968235" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968235">blacklisted</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968235" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968235" class="dsq-comment-message">well said brother.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968236">\
	 <div id="dsq-comment-header-1968236" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968236" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968236">Ms.Martin</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968236" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968236" class="dsq-comment-message">" I have felt driven to lash out in ways that expose the limits of my own ability to communicate."<br></br><br>This sentence describes to the letter emotional places that instances in this campaign have taken me whether it was driven by the Clintons, the media or the Clinton surrogates, some of which I\'m sure have felt the pain of being black in America.</br><br></br><br>I remember the hurts better than you Jack because you left out the statement that Hillary made that MLK needed a president to get civil rights legislation passed and the "assasination" reference.</br><br></br><br>Aside from a very recent personal experience that rocked my belief in human decency, I had always believed that most people would give another a hand  and judge them based on the person they would come to know and treat them accordingly.  I believed that because that had been my reality until recently.</br><br></br><br>This campaign has opened my eyes to a world that I for some reason didn\'t know was so ugly.  Maybe it was my own naievity, but this campaign has made me more aware of the stock value of the African American citizen.  I didn\'t realize it was so bad.</br><br></br><br>I am a woman and as a woman I can honestly say that the things said about Hillary Clinton being a woman amounted to little more than locker room teasing which she was willing to play along with when her on surrogates referred to her having cojones, testicular fortitude and so on so the idea that we should feel for her and her supporters because they have suffered sexism does not walk with me.  Why in the world would someone who is offended by sexism let herself be referred to as tough as a man when other descriptions would have sufficed?</br><br></br><br>I cannot reconcile this because the assaults were not necessary.  </br><br></br><br>As rikyrah has pointed out on many occassions, Hillary had the money, the machine the brand and a large majority of the black support starting out.  I can\'t deduce the turning point, the point that Hillary needed to use the Southern Strategy to win a democratic primary where the base of the party is black.  As if we weren\'t watching, as if there was nothing we could do.  When did the moment click in her mind that she was coming after us?  That we were disposable?</br><br></br><br>Jack, it could very well be that Hillary Clinton & Co. took us (at least me) to a place we cannot come back from.</br><br></br><br>I can\'t kiss and makeup.</br><br></br><br>As far as I am concerned Hillary and Bill Clinton are a relic of old similiar to a Strom Thurmond or a Bull Connor.</br><br></br><br>They weren\'t worth it anyway.  They lack character and morals. We were forever supporting a flawed mentality in the both of them.  We forgave them for things we not dare be associated for fear of not being seen as respectful, righteous people.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968237">\
	 <div id="dsq-comment-header-1968237" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968237" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968237">Michelle</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968237" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968237" class="dsq-comment-message"><i>These attacks on Hillary were more than that. They were attacks on *women*, and so, many women who might have been on the fence or only tepid Clinton supporters rushed to her in defense of themselves and their daughters, mothers and sisters.</i><br></br><br>Jack. NO. Please.</br><br></br><br>I am a woman. These were not attacks on me.</br><br></br><br>I exist.</br><br></br><br>I know when I am and am not being attacked. </br><br></br><br>I am tired of having my existence, intelligence and ability to perceive erased by this lie.</br><br></br><br>This lie that attacks on Hillary Clinton were attacks on me -- because they were attacks on "women."</br><br></br><br>And the lie (that you are not saying but that is attached to this generalization you are making) that if I don\'t see it, if I don\'t feel it this way, I am somehow not aware of the sexism that exists in this society -- delusional if I don\'t accept this lie.</br><br></br><br>This erasure of my existence is ugly and it is violent. </br><br></br><br>Yes I said violent. Saying attacks on Hillary Clinton are attacks on me because they are attacks on "women" (and I am a woman) ... is on the side of violence. It says that attacks on a perpetrator are attacks on me because we share a gender. It is not true. It is on the side of violence to say that. </br><br></br><br>Please stop. Please qualify your statement. Please change what you wrote to say that\'s how the supporters of Senator Clinton felt it, or that SOME women felt it that way, or anything that allows for the existence and subjectivity of women who <b>do not feel it this way</b>. </br><br></br><br>I\'m not saying erase the fact that some women did feel it this way. That is obviously true and should not be erased.  But please allow for the reality of women who did not. </br><br></br><br>Here is some of what I wrote to someone I argued with about this, when she told me that "The real victims in the appalling coverage of Sen. Clinton\'s campaign, I believe, is all of us: that is, any woman with dreams and ambitions, be they in politics, business or the arts."</br><br></br><br><i>I feel media-push back against Senator Clinton as actually somewhat affirming to my experiences and perceptions (at least more so than her actions and approaches!). I do not feel the coverage as directed at me at all, don\'t feel it as a barrier or attack on me because I am a woman. Because my sense of her is so strong, because her actions frighten and horrify me so deeply and viscerally. </i></br><br></br><br>I feel that when people act in such a horrific manner, publicly, then they enter a landscape in which we (they and I) are on opposite sides of a struggle.  </br><br></br><br>So I don\'t identify with Senator Clinton and don\'t see attacks on her as attacks on myself. I don\'t live a life where lies and distortions are the bedrock of my reality. My strength is not based there, my actions are not based there.  </br><br></br><br>How she is treated is not about shared gender for me, it is about her being an actual three-dimensional person who has chosen a particular path and needs to be held responsible for it. The deathwatch stuff doesnot feel threatening to me, not at all. Instead, it resonates (metaphorically of course) with my visceral response to PLEASE make her stop causing harm if she won\'t stop it herself, because what she is doing hurts me. For me this is a deep visceral reaction to actual pain and wanting to make it stop. ...... </br><br></br><br>I *do not* feel that those guys in the media are being abused by Senator Clinton. But I myself feel her as violent, as a perpetrator, and I identify with their push-back against her more than with her actions to start with.</br><br></br><br>So Jack, maybe you didn\'t mean to imply "all women" when you said <i>women</i> like you did. I don\'t have a need to erase the reality that SOME women felt attacks on Hillary as attacks on themselves. But not me. To suggest that is a lie. I will not collude with a lie.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968238">\
	 <div id="dsq-comment-header-1968238" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968238" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968238">Karoli</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968238" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968238" class="dsq-comment-message">As a woman, I suppose I should have felt outrage over some of the statements made by the media, but strangely, I didn\'t. I\'m ten years younger than Hillary Clinton, white as snow, and certainly have had my share of discrimination and ceilings imposed on my upward mobility.<br></br><br>The reason I didn\'t feel particular outrage was because all too often, Hillary and her most ardent supporters used their gender as a weapon, dishonestly and cattily.  I can honestly say that I have suffered more at the hands of my so-called sisters than I ever have at the hands of men, so those responses, those attacks, the disgrace of hearing them cry out about sexism while completely overlooking the racism was to me, a disgrace.</br><br></br><br>I can honestly say that the deepest outrage I felt during these primaries centered around the racism I kept seeing. It was heartbreaking and infuriating all at once, and it was sometimes so subtle and self-righteous that it made me want to scream.</br><br></br><br>Because this man -- Barack Obama -- was the first person to seriously inspire me to give up money, time, and effort toward his success.  Like you, my ownership goes so deep that it was <i>personal</i>. </br><br></br><br>My tolerance level for dishonesty is pretty low, as is my tolerance for outright meanness.  I have seen far too much outright meanness, and this is coming from the <i>same side</i>.  I think that hurts me more than just about anything.</br><br></br><br>With all of that, I want to be forgiving, and move past the hurts of this season into what I see as the possibility for the most electrifying national election of this century, or the last one. </br><br></br><br>Because you know what?  Barack Obama\'s transformative politics <i>won</i>.  He just proved to all of us that it IS possible to move past the politics of cynicism to the politics of hope. And he did it  by bringing us all into the process, emotions and all.  That means that we bear the burden of turning that transforming light on ourselves and now inviting Hillary supporters into the excitement, and that means forgiveness.</br><br></br><br>Someone once told me that forgiveness is acknowledging the right to be angry and surrendering it.  I think that\'s where we need to go, because the ultimate goal is in sight -- it\'s just a matter of leaving the past behind and inviting a larger group into the politics of hope.  Imagine the transformation in this nation and in ourselves if we can go there.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968239">\
	 <div id="dsq-comment-header-1968239" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968239" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968239">Craig Hickman</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968239" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968239" class="dsq-comment-message">ms. martin said....<br></br><br><i>I am a woman and as a woman I can honestly say that the things said about Hillary Clinton being a woman amounted to little more than locker room teasing which she was willing to play along with when her on surrogates referred to her having cojones, testicular fortitude and so on so the idea that we should feel for her and her supporters because they have suffered sexism does not walk with me. Why in the world would someone who is offended by sexism let herself be referred to as tough as a man when other descriptions would have sufficed?</i></br><br></br><br>Say it again.</br><br></br><br>::</br><br></br><br>michelle, thank you. Thank you so much.</br><br></br><br>::</br><br></br><br>Hillary Rodham Nixon is a patriarch. </br><br></br><br>And if she can\'t stand the heat, she should get the fuck out the kitchen. That she attributed that Black Mother Wit to FDR shows just how deeply rooted is her patriarchy.</br><br></br><br>I see no reason to forgive her at this point.</br><br></br><br>She remains in the mire.</br><br></br><br>And she\'s got years and years of work to do to come up out of it.</br><br></br><br>I don\'t think she can. Not without a whole lot of psychotherapy.</br><br></br><br>She\'s a sociopath.</br><br></br><br>It\'s an illness with a cure, but only if diagnosed.</br><br></br><br>And quite frankly, I\'ve lost a great deal of respect for her supporters.</br><br></br><br>I simply have little patience for denial.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968240">\
	 <div id="dsq-comment-header-1968240" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968240" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968240">Karoli</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968240" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968240" class="dsq-comment-message">Craig, you\'re absolutely right when you call her a patriarch. She is, and as soon as I read what you said I realized that\'s why I never really caught fire over her (and her surrogates\') complaints about sexism. <br></br><br>The fact of her candidacy proved that gender wasn\'t the issue, as did the fact of her presumption that she was the appointed one.</br><br></br><br>Where you lose me is on the forgiveness factor.  Truly, I believe there has to be a way through the collective anger to outstretched hands of forgiveness if we want to have a prayer of winning this thing in November.</br><br></br><br>And win we must. We didn\'t fight for Barack\'s candidacy to see him lose in November because we stand divided.  Someone has to make the first move, and sooner rather than later, for our own sake, and the promise of electing an extraordinary and gifted man to the White House this year.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968241">\
	 <div id="dsq-comment-header-1968241" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968241" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968241">heartsandflowers</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968241" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968241" class="dsq-comment-message">Wow! The response from Black women to this post was swift and decisive. I\'m glad that you want to take stock  and evaluate how you may have perpetrated some instance of \'harm\'. Thanks, Baratunde for I believe that you are sincere and a nice man, but.....<br></br><br>YOU ARE WRONG!!!</br><br></br><br>Yeah those white boy pundits made a few caustic statements about Clinton. But you\'re operating from a position that the corporate media was out to get her and therefore out to get ALL WOMEN. Well, they were NOT out to get Hillary. She said politics are ugly, they\'re a contact sport. That was par for the course. Do you think she cared or it bothered her when she actively cultivated relationships with the very same people she claimed harmed her in previous election cycles? I agree it was like a hazing before you join the group. They couldn\'t make it too easy for her. </br><br></br><br>Besides the \'women\' in that equation were and still are white women. I repeat, Black women were never in that equation. If it was just about women being oppressed then all the white women who felt their privilege in jeopardy would not have come out and attacked Black women AND men so viciously. THAT was the violence. </br><br></br><br>Hillary has done NOTHING to make up for the damage she and her campaign have done. In fact she and her buddies in the corporate media are actively trying to foster a toxic environment where white people don\'t trust Obama and Black people feel ignored and disgruntled. </br><br></br><br>The proportion you\'ve used would not balance the scale of justice in any shape or form. </br><br>i.e.</br><br>Clinton calling for Obama\'s assassination vs Chris Matthews saying she has thick ankles. </br><br></br><br>--- See it doesn\'t compare</br><br></br><br>The men that need to examine their gender bias...and racial bias are WHITE MEN. Not to say that Black people haven\'t engaged in any sexist behavior but I\'d be more likely to say it was in response to the racial attacks vs. behavior INITIATED by us. Again the level of harm must be evaluated in proportion to its effect. </br><br></br><br>Clinton wins for every level of depravity HANDS DOWN!!</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968242">\
	 <div id="dsq-comment-header-1968242" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968242" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968242">Anonymous</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968242" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968242" class="dsq-comment-message">karoli I just wrote a whole long comment I am choosing not to post.<br></br><br>I will post only a fragment of it:</br><br></br><br>you wrote: <i>We didn\'t fight for Barack\'s candidacy to see him lose in November because we stand divided</i></br><br></br><br>we who?</br><br></br><br>where is the dividing line? where does it come from?</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968243">\
	 <div id="dsq-comment-header-1968243" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968243" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968243">Michelle</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968243" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968243" class="dsq-comment-message">Oops! That anon comment at 1:39am was me. I pushed publish when I mean to push preview and also forgot to put in my name at first.<br></br><br>I need to go to bed.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968244">\
	 <div id="dsq-comment-header-1968244" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968244" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968244">Taritac</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968244" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968244" class="dsq-comment-message">Like Jack, I am trying to overcome my hurt and anger at HRC. I am trying to understand the heat and vitriol emanating from her supporters. But like the commenters above, I do not consider the overt sexism shown by the media to be nearly as hurtful as the racism that has come Obama\'s way from the media and from her campaign. HRC essentially told black voters to go to hell, that our votes don\'t matter to her as long as she has white votes. She has amplified the racist, distracting attention to Jeremiah Wright, praised John McCain over Obama, and called us delusional for supporting Barack. <br></br><br>She doesn\'t deserve forgiveness by a long shot, and her supporters are now threatening to vote for John McCain, something that most Obama supporters would never do, even in light of how awful HRC has been (although, to be fair, there is some evidence that these have been McCain-supporting infiltrators).</br><br></br><br>Yes, we do need to try to be understanding of her supporters, because, like Jack said, most voters are not as stupid, partisan, or hateful as HRC\'s fringe. However, reconciliation will only occur with positive action and leadership from HRC. So far, I haven\'t seen any evidence that she\'s willing to unite the Democrats behind Obama, even though she has reportedly asked for his help to smooth over black sentiment against black elected officials who supported her. The latest reports say that she will <i>not</i> concede on Tuesday, hoping for a win in South Dakota, and waiting, <b>I\'m assuming</b>, for Michelle\'s alleged "whitey" video to emerge. If the video exists and is as explosive as some seem to expect it to be, then HRC probably will pull off a win by August. How she can then get black people to support her in November is a mystery to me.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968245">\
	 <div id="dsq-comment-header-1968245" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968245" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968245">onein4</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968245" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968245" class="dsq-comment-message">I gotta go to work but I\'ll make two quick points:<br></br><br>I always found it interesting when HRC and her supporters played the gender card.  When I think about how most women in other parts of the world are abused and exposed to true SEXISM, I just don\'t see it.  Her complaining just seems childish and not even something she could possibly truly believe.</br><br></br><br>Why aren\'t all minorites pissed off about the treatment Senator Obama has gotten from the media, DNC and others?  Divide and conquer - it still works.  </br><br></br><br>gotta go .. have a good day everyone.  I\'m so grateful to have found a community to share all that\'s gone on the past several months.  There were times when I was truly depressed, but had a place to go....</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968246">\
	 <div id="dsq-comment-header-1968246" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968246" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968246">chicanaskies</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968246" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968246" class="dsq-comment-message">"What would Obama do?"  I ask myself that all the time, particularly when I\'m feeling ugly and mean inside.  I think that\'s a pretty good sign that he\'s a leader.<br></br><br>I want to get one of those bracelets, like the WWJD ones, that say WWOD.  LOL</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968247">\
	 <div id="dsq-comment-header-1968247" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968247" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968247">babyming</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968247" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968247" class="dsq-comment-message">I must disagree with a big premise of this post.  The same disagreement as other commenters above.  <br></br><br>The only way to see Hillary Clinton as representing feminism is to be totally guided by identity politics: she\'s female, therefore she\'s a feminist. </br><br></br><br>Obviously identity is important.  It matters if a candidate is a woman, or African American, or whatever. </br><br></br><br>But identity doesn\'t go on forever.  At some point (as other commenters have already pointed out above) we need to look at the individual human being.  In the case of Hillary Clinton, take a look, and keep in mind the line from the Beatles Strawberry Fields: "what did you see when you were there?  Nothing that doesn\'t show." </br><br></br><br>This is a privileged person who used private detectives to harrass women whom Bill harrassed.  This is a feminist? </br><br></br><br>Hillary\'s supporters should look to the many truly admirable women who are breaking barriers, who are getting things done (which usually means working with other people... not Hillary\'s strong suit, as you may have noticed). </br><br></br><br>I could totally get into the feelings of her supporters, that it would be great to have a woman president, BUT I just can\'t do that with THIS PARTICULAR INDIVIDUAL woman.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968248">\
	 <div id="dsq-comment-header-1968248" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968248" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968248">TruthSeeker</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968248" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968248" class="dsq-comment-message">I feel zero connection to Hillary.  I\'m peering, peering looking...but there\'s no sign of life on planet Hillary.  Life departed long ago and all that remains is an animated corpse.  Who is at the controls, I\'m not sure.  Maybe the mothership somewhere in orbit...<br></br><br>Maybe it\'s all those dead Canadian hemophiliacs who went to hospital to get their transfusions and left with HIV.  Who knew the Arkansas Governor had his hands in that tragedy.</br><br></br><br>Maybe it\'s all those dismembered babies in Rwanda that made Hillary vomit when she met them.  Who knew she and her husband had a role to play in genocide.</br><br></br><br>Who knows how many black people have been boldly called "nigger" since Chairman Hillary began her unholy crusade.</br><br></br><br>I guess what I\'m trying to say is I don\'t give a damn about Hillary or Bill or their insipid supporters.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968249">\
	 <div id="dsq-comment-header-1968249" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968249" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968249">Jack Turner</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968249" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968249" class="dsq-comment-message">thanks for these incredible comments yall. <br></br><br>i\'ll try to dip in and out throughout the day with some followups.</br><br></br><br>i definitely couldn\'t list ALL the offenses of the clinton camp, so don\'t take anything from me not listing MLK, assassination and other wrong statements and decisions.</br><br></br><br>I fully agree with Ms. Martin who wrote</br><br></br><br></br><br></br><br><b></b></br><br>Jack, it could very well be that Hillary Clinton & Co. took us (at least me) to a place we cannot come back from.</br><br></br><br></br><br>God I know that feeling, and many more of you have expressed something similar.</br><br></br><br>A lot of people never trusted, liked or respected The Clintons. I\'m not one of those people. Watching them descend into ugliness has been painful and infuriating, especially as our own witness was called into question.</br><br></br><br>FOr Michelle, I really need to clarify.</br><br></br><br>I\'m not trying to say I believe that all attacks on Hillary are sexist or attacks on you. I\'m trying to see and express the frustration of a category of her own supporters. </br><br></br><br>I talked to a Hillary supporter who told me point blank that she only began to support Hillary as a defense mechanism against sexist media coverage. This person never bothered to understand our rage and sadness, and I never really bothered to understand hers.</br><br></br><br>I\'ll update the post to clarify that.</br><br></br><br>keep it coming fam!</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968250">\
	 <div id="dsq-comment-header-1968250" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968250" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968250">TruthSeeker</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968250" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968250" class="dsq-comment-message">btw... so many fantastic comments,  I feel like a cat in a fish market!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968251">\
	 <div id="dsq-comment-header-1968251" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968251" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968251">s</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968251" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968251" class="dsq-comment-message">jack,<br></br><br>Your honesty and integrity is admirable, and your perspective, along with the other posters and commenter is always passionate and interesting.</br><br></br><br>I keep coming black to this blog even though I am not black, not a Democrat or an Obama supporter. </br><br></br><br>I do have to say that I did note the tone and tenor of the posts and comments on this blog change as the  primary progressed, but I just scrolled over the posts about the Clintons because I long ago realized what they were all about.  </br><br></br><br>I have alway felt that in coming to this blog, that I was \'standing on your property\' and that has guided me as I process what I read here, and how I comment.</br><br></br><br>I too care deeply about politics and our country and enjoy debating the issues and the best way to move the country into the future. </br><br></br><br>I am looking forward to discussing and debating the upcoming campaign with, to quote conservative radio talk show host, Bill Bennett, \'candor, intelligence and good will.\'</br><br></br><br>Peace.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968252">\
	 <div id="dsq-comment-header-1968252" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968252" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968252">nezua</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968252" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968252" class="dsq-comment-message">i respect this post. i\'ve had a similar feeling...tho not quite the same ending. i have to say i\'ve never lost sight of what hillary\'s supporters were fueled by. i too went out and covered her events in my work and met her supporters up close. i think it was <a href="http://www.theunapologeticmexican.org/elgrito/2008/04/hillary_clinton_in_eugene_oregon.html" rel="nofollow">here</a> that i first articulated that understanding.hell, i even made her supporters a <a href="http://www.theunapologeticmexican.org/elgrito/2008/05/the_hillary_doll.html" rel="nofollow">video.</a> and in that last linked post i talked about how i separated my feelings from HRC from those i have for many of her online supporters.<br></br><br>of course that was right before the whole rfk blowup, at which point i hardened a bit. toward her and her supporters, at least the ones getting all outraged that "obama pulled the race card on her and ruined her chances" and blaming her gross statement on him and us (Obama\'s supporters). </br><br></br><br>and there, i basically found a divide i often talk about, on that is at the core of my own blog\'s purpose...a divide in seeing the world and people. and seeing the dominant culture as setting values for all, and some people see it the way i do, and some seemingly never will. sometimes its race based, sometimes class. events will point out and highlight these divides. its not the events so much as the gap in our experience and way of seeing things. those people who dare accuse obama of using race in a negative way simply see the world in a very different light than i do. and we would undoubtedly disagree on many things, primary or no. and to those who want to hold on to those gross ideas or sulk on it, they can go take a flying leap. i have nothing to say to them until they open their minds.</br><br></br><br>but overall, it\'s a good point to be making.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968253">\
	 <div id="dsq-comment-header-1968253" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968253" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968253">abeabe2006</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968253" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968253" class="dsq-comment-message">This amazing, Jack. Well done. You summed up how I felt and have brought be back!  In my ill placed anger at Hillary, I once thought that I would vote for McCain!  Silly rabbit!  <br></br><br>I think the GOP wants to divide these two strong Democratic groups, Women and African Americans.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968254">\
	 <div id="dsq-comment-header-1968254" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968254" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968254">rikyrah</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968254" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968254" class="dsq-comment-message"><i>Hillary Rodham Nixon is a patriarch. <br></br><br>And if she can\'t stand the heat, she should get the fuck out the kitchen. That she attributed that Black Mother Wit to FDR shows just how deeply rooted is her patriarchy.</br><br></br><br>I see no reason to forgive her at this point.</br><br></br><br>She remains in the mire.</br><br></br><br>And she\'s got years and years of work to do to come up out of it.</br><br></br><br>I don\'t think she can. Not without a whole lot of psychotherapy.</br><br></br><br>She\'s a sociopath.</br><br></br></i><br></br><br>Craig,</br><br></br><br>THANK YOU.</br><br></br><br>For Hillary Rodham Nixon. </br><br></br><br>Never truer words were written.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968255">\
	 <div id="dsq-comment-header-1968255" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968255" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968255">Angela</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968255" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968255" class="dsq-comment-message">Wow you summed up alot of my feelings.   I admit that I have alot of anger with the Clintons.  My fear is that in expressing our selves that if we go too far we end up identified as a one of these crackpot anti blogs that refuse to see beyond whatever it is they are attacking. I\'m thinking of the credibility and respect for this website.  <br></br><br>I appreciate your post.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968256">\
	 <div id="dsq-comment-header-1968256" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968256" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968256">Adam</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968256" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968256" class="dsq-comment-message">I always thought the people who will ultimately have the biggest beef with Sen. Clinton will be her supporters, not us.<br></br><br>Whenever I think about her campaign, I think about Bush and his relationship with the Religious Right.</br><br></br><br>Simply put, he played them for votes.</br><br></br><br>His campaign played into their fears and promised that when he was president, America would be "pure" again.</br><br></br><br>Did it happen?  Nope.</br><br></br><br>And slowly, the evangelicals began to realize they had been played and are now (some of them at least) considering supporting Obama.</br><br></br><br>Sen. Clinton did the same thing, playing off people\'s fears in a ridiculous quest to win an election she lost in March.  </br><br></br><br>Once the smoke clears and her supporters realize they were played for fools, the real backlash against her will begin.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968257">\
	 <div id="dsq-comment-header-1968257" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968257" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968257">Town</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968257" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968257" class="dsq-comment-message">I think the GOP wants to divide these two strong Democratic groups, Women and African Americans.<br>---------------------</br><br></br><br>I cannot put the blame on the Republicans for this one.</br><br></br><br>This one belongs to the Clintons and their crew.</br><br></br><br>I\'ve often wondered why Bill Richardson ran over to the Obama side and why he looked like had just been freed from some shackles when he got there.</br><br></br><br>I\'ve concluded that Bill Richardson looked at the Clintons with horror and thought to himself, "What if I was the front runner?  What racial games would they play on me?"</br><br></br><br>If Bill Richardson was the front runner, would the Latino vote be dismissed?  Would the Clintons have tried to link Richardson with illegal immigrants?  Would Fox be running videos of illegals jumping over the border 24-7?  Would Hannity be crying about La Raza and trying to link Richardson with Latino activists?  </br><br></br><br>And then when Richardson did go over to the Obama side, the attacks on him were much more violent than when Robert Reich went over to the Obama side?  I wonder if his suspicions about what the Clintons would have done to him if he were the front runner were confirmed.</br><br></br><br>Why am I talking about Bill Richardson?  Because the same thing that happened to Barack Obama because he\'s black would have happened to Bill Richardson because he\'s Latino, the same racial attacks and suspicions.</br><br></br><br>Hillary Clinton and her Crew basically said "If you are not white, you need to fall back and wait your turn, and the length of your wait is to be determined by US.  If you don\'t, we are going to make sure white people don\'t vote for you."</br><br></br><br>I wonder how many black politicians/candidates are wondering if somebody is snooping on their churches, trying to dig up dirt on them through their place of worship?</br><br></br><br>And if you are Muslim or not the right kind of Christian (i.e. Romney) you need not apply at all.</br><br></br><br>I don\'t think Hillary Clinton and her enablers need to be soothed and coddled.  They need to be blasted and called out and the Democratic party needs to be called out for the spineless wimps they are.  IMO they\'ve fractured this country along racial, religious and class lines just for personal gain and I\'m not sure that political damage is going to be repaired, at least not any time soon.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968258">\
	 <div id="dsq-comment-header-1968258" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968258" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968258">Craig Hickman</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968258" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968258" class="dsq-comment-message"><i>I talked to a Hillary supporter who told me point blank that she only began to support Hillary as a defense mechanism against sexist media coverage.</i><br></br><br>::</br><br></br><br>That\'s not rational support. It\'s reactionary support. Which is no support at all because it\'s a projection.</br><br></br><br>It\'s false.</br><br></br><br>I don\'t need to understand a person who would say that.</br><br></br><br>She doesn\'t understand herself.</br><br></br><br>Besides which, the "sexist media coverage" of Nixon\'s campaign is pure bull.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968259">\
	 <div id="dsq-comment-header-1968259" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968259" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968259">Craig Hickman</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968259" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968259" class="dsq-comment-message">town and truthseeker, thanks for putting it down like you did.<br></br><br>Thank you so much.</br><br></br><br>::</br><br></br><br>rikyrah, I just call it as I see it and I saw it from DAY ONE when they emerged on the national scene.</br><br></br><br>And I didn\'t need to do any research.</br><br></br><br>I think this speaks to adam\'s point. Those who were bamboozled by the madness of their royal couple will be the last soldiers to wage an offensive against them.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968260">\
	 <div id="dsq-comment-header-1968260" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968260" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968260">Craig Hickman</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968260" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968260" class="dsq-comment-message">Peggy Noonan has a different take on this. <br></br><br><a href="http://online.wsj.com/article/SB121148557268715077.html" rel="nofollow">Sex and the Sissy</a></br><br></br><br>My favorite passage among MANY:</br><br></br><br><i>So, to address the charge that sexism did her in:</i></br><br></br><br>It is insulting, because it asserts that those who supported someone else this year were driven by low prejudice and mindless bias.</br><br></br><br>It is manipulative, because it asserts that if you want to be understood, both within the community and in the larger brotherhood of man, to be wholly without bias and prejudice, you must support Mrs. Clinton.</br><br></br><br>It is not true. Tough hill-country men voted for her, men so backward they\'d give the lady a chair in the union hall. Tough Catholic men in the outer suburbs voted for her, men so backward they\'d call a woman a lady. And all of them so naturally courteous that they\'d realize, in offering the chair or addressing the lady, that they might have given offense, and awkwardly joke at themselves to take away the sting. These are great men. And Hillary got her share, more than her share, of their votes. She should be a guy and say thanks.</br><br></br><br>It is prissy. Mrs. Clinton\'s supporters are now complaining about the Hillary nutcrackers sold at every airport shop. Boo hoo. If Golda Meir, a woman of not only proclaimed but actual toughness, heard about Golda nutcrackers, she would have bought them by the case and given them away as party favors.</br><br></br><br>It is sissy. It is blame-gaming, whining, a way of not taking responsibility, of not seeing your flaws and addressing them. You want to say "Girl, butch up, you are playing in the leagues, they get bruised in the leagues, they break each other\'s bones, they like to hit you low and hear the crack, it\'s like that for the boys and for the girls."</br><br></br><br>And because the charge of sexism is all of the above, it is, ultimately, undermining of the position of women. Or rather it would be if its source were not someone broadly understood by friend and foe alike to be willing to say anything to gain advantage.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968261">\
	 <div id="dsq-comment-header-1968261" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968261" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968261">Mac G</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968261" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968261" class="dsq-comment-message">Jack, I am one of those new readers you picked up along the way. I appreciate what you bring to the blogger table and I am a white, diehard Obama supporter from back when he was running for US Senate in the Dem primary. (Yes, Im a polly junkie)<br></br><br>All of your frustrations with the Clintons is understandable and in the heat of the moment, it is hard to keep civility. </br><br></br><br>During the recent "FL/Mich voters are being suppressed, we are winning the popular vote," crapola, I find myself yelling at the TV while Obama surrogates kept calm and above the fray. </br><br></br><br>Of all the post HRC election obits I have read so far, the conclusion of her annoymous advisors is they messed up the Caucus systems and Super Tuesday strategy was a dud. </br><br></br><br>While I agree with those points, I think her pro war stances gave Obama an opening in a 2008 Democratic contest.</br><br></br><br>The most overlooked factor that I have not seen discussed in the MSM is Hillary\'s complete alienation of the African American Community. </br><br></br><br>People forget the media writing articles before Iowa pondering if Obama was "black enough," and then all of sudden he is pulling 90 percent of the AA vote in every contest. </br><br></br><br>I long ago thought the 2nd test of Obama\'s after Iowa would be convincing black women in South Carolina to vote for him. The Clinton\'s had mad respect and long ties in the AA community. </br><br></br><br>He not only had a strong showing but the Clitnons totally miscalculated and threw away the AA vote for no real good reason other than to convince white voters into thinking Obama was a scary black guy. </br><br></br><br>The AA community noticed these Southern Strategy like campaign tactics and took it out on the Clintons in the voting booth.</br><br></br><br>They were voting not only for Obama but also against the Clintons, who willingly and purposedly dissed them after overwhelmingly helping Bill/Hillary attain political power for years. It was painfully obvious by "MLK, Roll the Dice, Drug Dealer, Jessee Jackson." </br><br></br><br>I do not understand how any reasonable person can not see the truth of Clinton\'s racial divide tactics.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968262">\
	 <div id="dsq-comment-header-1968262" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968262" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968262">Progressive for A Better Ameri</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968262" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968262" class="dsq-comment-message">I have been one of the few who believed that Her Highness of Narcissism should stay in the race until the last primary.<br></br><br>I changed my stance for a moment after she attempted to call for violence against Senator Obama in delivering the assassination code word to the lunatic fringe. A few days after I\'d gotten over being absolutely appalled at her cruel, win-at-any-cost words and deeds, I went back to maintaining that she should remain in the race until the last primaries were over.  Now that day is here and she\'s still unwilling to step aside, still trying to do whatever she can to discount his winning the nomination.</br><br></br><br>Being a black woman born and raised at the beginning and through the height of both the black and women\'s rights movements, I understand her perfectly, however; I do not agree nor can I countenance the language or the methods that she and some of her white feminist supporters have used to denigrate Senator Obama because she lost so much and so often when she thought she would win.</br><br></br><br>Now we\'ve come to the end of the long, long primary season and it is clear that she cannot win, and I find that I still do not like her refusal to acknowledge that it is over for her campaign.</br><br></br><br>I do not like that she continues to challenge his right to be the nominee despite the olive branches he continues to graciously offer to her in the form of apologies for others\' words of truth, among other instances of absolute grace. No matter how conciliatory and gracious he is to her, she tries to turn it against him, to make him the monster that she is.</br><br></br><br>At this time, I do not have the ability to \'understand\' her extremely poor manners and obnoxious behavior.</br><br></br><br>And you know something else?  As I type this, Senator Obama only needs 35 more delegates to clinch the nomination. Yet I am certain that she\'s lied to his campaign, maybe even to him, that she will concede tonight but has instructed her surrogates to refute this through corporate broadcast media.  </br><br></br><br>I do not believe that the AP is getting this wrong; I\'d stake my life on it that she agreed to concede with the Obama campaign.  She\'s still lying, attempting in every way she can to destroy his credibility and his moment as the official presumptive nominee.</br><br></br><br>She is nothing nice and neither is her lying husband, Billy Jeff.</br><br></br><br>So no, I cannot attempt to understand her at this time.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968263">\
	 <div id="dsq-comment-header-1968263" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968263" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968263">Anonymous</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968263" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968263" class="dsq-comment-message">I also want to say thanks for your sincere post Jack. <br></br><br>As a mixed (black) woman, I agree with the other black women here that the attacks on Hillary were not attacks on women - they were attacks on well off, educated, ambitious white women. Black women are completely ignored and if we happen to inconvenience anyone by putting a toe in the spotlight and get attacked, we aren\'t treated like hysterical women that need to get back to caring for our husbands and children - no we get the "nappy-headed hos" treatment with ALL that implies.  </br><br></br><br>So while the educated, ambitious wealthy white men in those clips were attacking other educated, ambitious, wealthy white women to cut down on the competition, I as a mixed woman felt nothing but some sympathy for the white women (because I am not cold-hearted) but I knew it had NOTHING to do with me as a mixed woman. Nothing. </br><br></br><br>So I think it is very positive that you have become more aware of the bs that gets thrown at successful white women. I would like more focus on the severe underrepresentation of women of color.   </br><br></br><br>I agree with the other women of color her that it is violence to erase us. This campaign and the media\'s use of the word "woman" makes Sojourner Truth\'s speech "Ain\'t I am woman?" almost as relevant today as it was in 1851 and that is sad. Here\'s a link to it: <a href="http://www.feminist.com/resources/artspeech/genwom/sojour.htm%3C/br" rel="nofollow">http://www.feminist.com/resources/artspeech/gen...</a>&gt;</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968264">\
	 <div id="dsq-comment-header-1968264" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968264" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968264">Town</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968264" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968264" class="dsq-comment-message">I do not understand how any reasonable person can not see the truth of Clinton\'s racial divide tactics.<br>-------------------</br><br></br><br>It\'s just like at work, a "well meaning" white women will want to introduce the black part-time Pinkerton security guard with the gold tooth to her college educated professional track black female coworker.  And the white woman will say, "he\'s tall, he\'s black, y\'all will hit it off."  And then she wonders why her black female coworker is not thrilled with this match.  She figures, he black, you black, so you two should hit it off.</br><br></br><br>That\'s the same mentality that\'s going on with this campaign.  None of these bobbleheads are bothering to ask black people WHY they are voting for Obama over Clinton, they are just assuming, "He black, you black, so that\'s why you\'re voting for him."</br><br></br><br></br><br>That\'s basically what Bill Clinton said back in South Carolina.</br><br></br><br>That\'s straight up what Geraldine Ferraro\'s been saying since February.</br><br></br><br>And if you as a black person spell out why, you\'re labeled a hater or a racist.</br><br></br><br>None of these people, the white female coworker, Clinton, Ferraro, the MSM etc. want to see or accept what they are doing, which is telling me what I\'m thinking because I\'m black.</br><br></br><br>And it\'s not just black people they are doing it to, they are telling "hard working white Americans" what they are thinking because they\'re "hard working white Americans," and they are telling Latinos what they are thinking because they are Latinos.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968265">\
	 <div id="dsq-comment-header-1968265" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968265" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968265">JR</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968265" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968265" class="dsq-comment-message">The thing that bothers me is that I don\'t know how to reach the reasonable Hillary supporters without having to first weed out the unreasonable ones who would rather see McCain elected than Obama, or who would rather attack Obama for any and all perceived slights than to attack McCain for any of his overt inanities.  For months now those who are past the point of unification have comingled with those earnestly supporting someone they thought was a better candidate, and differentiating the two now is nearly impossible.<br></br><br>I\'ll gladly try and convince anyone I think can be convinced to support our nominee, but I don\'t see the point in wasting time and effort on those "Democrats" who would rather see a Republican president than a black one.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968266">\
	 <div id="dsq-comment-header-1968266" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968266" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968266">Anonymous</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968266" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968266" class="dsq-comment-message">I totally agree jr. <br></br><br>Maybe I am wrong, but I think the Clinton supporters who simply preferred Hillary for reasons other than racism and some weird anger displacement won\'t even need convincing or reaching out. They would rather see Obama win than McCain since Obama\'s policies are closer to Clinton\'s. </br><br></br><br>I think absense of Obama hate would be how you could spot a person who supported Clinton simply because they preferred her politics and personality. Supporting Clinton didn\'t require hating Obama because he didn\'t attack her in a dirty way. Yes, he twisted facts to his favor but unfortunately that\'s politics and it usually doesn\'t make you jump parties.</br><br></br><br>But maybe I am wrong. I\'d love it if someone interviewed Clinton supporters so we\'d understand how they saw it. I just don\'t buy the media sexism = Obama sucks, I am voting McCain</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968267">\
	 <div id="dsq-comment-header-1968267" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968267" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968267">Redstar</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968267" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968267" class="dsq-comment-message">I\'ve never commented here before.  I\'m surprised there wasn\'t a single commenter who came to argue in defense of Clinton or, more appropriately, your point about her supporters, but I am new to this site.  (I found you via MyDD.)<br></br><br>Here\'s a link to a video documenting sexism FROM the Obama campaign:</br><br></br><br>http://www.youtube.com/watch?v=ke64670GkZ8</br><br></br><br>(Pretty sure it\'s made by a Clinton supporter)</br><br></br><br>My experience as a Clinton supporter is that I\'ve lost all sense of perspective...I used to blog about racial/ethnic, economic and gender inequality; poverty; affordable housing; and Katrina recovery, until this election took over my life.  And that\'s just one example of how captive to this whole thing I\'ve become.  I think that many of us on both sides are projecting all sorts of feelings and desires on to these 2 candidates - that they\'ve become figureheads (and not very good ones, in their centrist, insider ways, IMO) for the cultural and political battles we personally fight day in and day out.  I think I\'m most disappointed in my own loss of cynical criticism of the overall political structure in this country in my zeal over a female contender.  </br><br></br><br>And the timeline on the hardening of and b/w supporters is so short.  I supported both candidates financially and vocally last fall, voted for Clinton on 2/5, but have only become convinced her righteousness in the last couple of months.  Please.  I have come to believe more strongly in the last couple of months that she\'s the stronger candidate, but I\'m ashamed of myself for making her candidacy my particular fight du jour, when I\'m so normally focused on policy battles, community organizing, local economic development, and attempts to hold our politicians\' feet to the fire.  It\'s been a fascinating but cognitively dissonant ride, that\'s for sure.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968268">\
	 <div id="dsq-comment-header-1968268" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968268" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968268">Plantsmantx</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968268" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968268" class="dsq-comment-message">"It\'s just like at work, a "well meaning" white women will want to introduce the black part-time Pinkerton security guard with the gold tooth to her college educated professional track black female coworker."<br></br><br>It\'s also like having your white coworkers be astounded to find out that you don\'t care much for Rice as a Secretary of State, even though they know where you are on the political spectrum.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968269">\
	 <div id="dsq-comment-header-1968269" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968269" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968269">Anonymous</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968269" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968269" class="dsq-comment-message">@redstar<br></br><br>Wow thanks for stopping by with that youtube link. I didn\'t see it so much before but I can now see why Clinton supporters closed ranks around her and got much more defensive. I don\'t agree with all of it (like the 99 problems song, "periodically", monster and the pictures of Obama looking down on Hillary and some other things seemed exaggerated to me) but I am sure Clinton supporters disagree with some things Obama supporters perceived as racist.  </br><br></br><br>As a mixed (black/white) woman, I thought I was seeing both sides but the alienation I felt by the misuse of the word woman to mean middle class white women must have cut me off from seeing those tings. I also live overseas so don\'t have much access to American MSM. It does however look like there was much less attention in the MSM on the sexist attacks than the other way around. Can other people back this up? That\'s the way it\'s looking.</br><br></br><br>I must admit through most of it,  I was wondering why Clinton wasn\'t speaking out against the racism (when it wasn\'t coming from her...) but yeah, where was Obama on speaking out against sexism? </br><br></br><br>I guess the lesson is divide and conquer works! This whole thing is just really, really sad.  </br><br></br><br>And the emotionalism around it is quite frightening - that we can get whipped up into a frenzy like that. I was fortunately able to snap out of the frenzy some months ago but probably because I live overseas so again don\'t get the same exposure to MSM. For me the media and Clinton\'s use of racism just didn\'t match with the overwhelming numbers of white people (and others) who were voting for Obama. That doesn\'t mean that racism doesn\'t exist, it just signalled to me a lot of people aren\'t invested in it as much as before. </br><br></br><br>I am left feeling very cynical about American politics in general but particularly disillusioned with the Dems. If there were actual differences between the candidates, I think there\'d be a lot less silly.</br><br></br><br>Maybe conversations like this will lead us back to our right minds though but it won\'t fix the political system unfortunately. Thanks Jack for starting this conversation!</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968270">\
	 <div id="dsq-comment-header-1968270" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968270" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968270">Nathanael</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968270" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968270" class="dsq-comment-message">WOW.  Great post.  I think you have figured out and described people\'s thoughts and emotional states pretty well.<br></br><br>The point being made here is the similarity between the reactions of Clinton *supporters* and that of Obama *supporters*, and the fact that they were reacting to similar insults -- albeit in the case of Clinton supporters, insults NOT coming from Obama but from media operatives, and frankly Republican media operatives in many cases.</br><br></br><br>The writer makes very clear that Obama and Clinton in fact behaved very differently from each other -- and exhorts us to follow Obama\'s lead, not Clinton\'s.  It\'s a good piece or writing.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968271">\
	 <div id="dsq-comment-header-1968271" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968271" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968271">The Christian Progressive Libe</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968271" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968271" class="dsq-comment-message">Jack, you have me in tears of gratitude for extending me the invitation to join this blog and be a part of something much bigger than all of us.<br></br><br>I wholeheartedly agree that Obama and his camp should help out in the healing process, but I\'m also glad you pointed out that the initiation of healing needs to come from the Clintons, because their egos drove them to do the most damage and caused the most divisiveness in the Democratic Party.</br><br></br><br>You have given me inspiration for a post on the CBC, now that Obama has secured the nomination.  It\'s time to get on with the business of defeating John McCain, and I, for one, will be glad to reduce Hillary Clinton to a mere footnote in this saga.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968272">\
	 <div id="dsq-comment-header-1968272" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968272" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968272">Anonymous</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968272" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968272" class="dsq-comment-message">Hi there Baratunde,<br></br><br>I just wanted to say thanks for your recent post, it showed some grace and humanity that I haven\'t seen for a while, anywhere, about the divide in the Democratic nomination battle.  Of course you and I don\'t agree on everything, but i do respect your views.  Thanks for reaching out across raw emotions and chaos, much easier to do when your side wins.  </br><br></br><br> For the record I am a 31 year old white woman.  And yes, I am a human being who is able to think beyond my uterus and my skin color.  It\'s nice to not be lumped in with some or no identity. </br><br></br><br>I read the blog because I want to understand people who don\'t think like me.  Groups poison themselves all the time by surrounding themselves with people just like them and then losing perspective- Republicans and Democrats are both guilty.  Religious groups are probably the most guilty of this though.</br><br></br><br>I stopped reading JJP for a while because I just couldn\'t stand the name calling, and not just Tonya Harding but also handkerchief-head and stuff like that.  It\'s bad enough that everyone gets reduced to demographic groups every four years  to make someone\'s job at CNN easier- the Jewish vote, the Catholic vote, the Black vote, the women\'s vote, the values vote etc.  Because no woman could also be Catholic or working-class or black married to a jew or have these elusive things we call values.  It drives me crazy, and I just got sad to see JJP and many others resort to similar tactics.  But it\'s one of those four years when we all get lumped into groups.</br><br></br><br>I hate what this race has become.  The Dems were supposed to have a hands-down victory but we are still fighting inside the party.  Hello McCain...  </br><br></br><br>The only way I will vote for Obama is if Clinton is on the ticket or at least given a job that gives her the respect she deserves.  She won a shitload of votes, all the big states, and most of the swing states.  Just please stop the gratuitous character assassination.  If you think Obama can win without her supporters then fine...  Let\'s both just work for the McCain campaign instead of picking bones.</br><br></br><br>At first I thought Obama was all right, but early on I got concerned about his rockstar status in the Democratic party and among the media.  Call me crazy but I get a little leery of cults of personality and stadiums full of swooning crowds.  Someone who can deliver a speech well doesn\'t sell me, I am not that thirsty for kool-aid.  </br><br></br><br>Give me a real reason why I should vote for him- because he\'s black?  Because some kid in Pakistan will feel better because his middle name is Hussein?  Because his record in the Senate is entirely unremarkable?  Because he\'s pro-choice?  Come on, it looks like a house of cards that could so easily fall down.  </br><br></br><br>I am surprised the Wright scandal didn\'t take him out, and his speech on race in this country didn\'t impress me.  There is a lot more than black and white in this country and I don\'t think that there\'s a context for shared experience like there was in the segregated south, e.g.  I don\'t like to oversimplify people\'s experience and I don\'t need some politician to get teachy with me.  We this, and we that...  Dreams and hopes and change.  And I can\'t talk about policy specifics to save my life.  He\'s not my kind of politician, I want someone who can mop the floor in a debate and whose eyes don\'t glaze over when talking about social security.  And it worries me that his ego seems to love the crowds and the spotlights.</br><br></br><br>By the way, the democratic party hasn\'t cracked yet and is only still alive and viable because of the Clintons.  If Obama was going to win anyway, there was no need to slaughter both Clintons on the way to the door, seasoning the dish with rampant MSM collaboration and sexism.  I admit it\'s not all sexism, the media just loves to hate the Clintons and to punish Hillary for Bill\'s mistakes until the cows come home.  It\'s a good thing poor Chelsea doesn\'t have braces anymore, but they\'ve gone after her too.</br><br> </br><br>I still remember how important they are- Bill Clinton simply mentioned the word HIV/AIDS and he revolutionized how we treat people, test people, research the disease, and educate people- just one example.  Listen, the Clintons are not angels but name a politician who is.  </br><br></br><br>Anyone still standing at this stage in the race has the audacity to think he or she should lead the free world- they are all politicians.  And they will all do whatever they have to for election.  I am not wowed or astounded by what people will do or say to get elected, they are the most ambitious people in the world.  I am suspicious of any candidate who tries to sell \'new politics\' and moral cleanliness.  </br><br></br><br>I think that Obama\'s promise of a \'new politics\' is bull, because there are no new politics.  If there were then Mike Dukakis or John Kerry would have thought of it.  I just don\'t think Obama can win in the fall, and i like Clinton\'s policies better.  Obama\'s foreign policy kinda weirds me out- let\'s get rid of all the current policies that umpteen presidents have employed and do everything in a different way?  I don\'t buy it, I don\'t trust him, I don\'t know him, and he\'s green.</br><br></br><br>I am not a racist crazy person, and everytime JJP talks about so-called racist working class whites in Appalachia I will bring up the Democratic weirdos who go to caucauses in Idaho and Wyoming- not exactly the mainstream of the Democratic party.  They all get to vote, but they should be proportionally represented by their delegates and Iowa and New Hampshire shouldn\'t get dibs on who we elect as President.  </br><br></br><br>I really hate most of the system, like the Texas one- primary _and_caucus?.  Every time i hear someone from the Obama camp complain about Clinton wanting to seat the delegates from FL and MI I want to scream.  Is it really a good idea to piss off voters in big swing states that have cost entire elections before?  They were making a good point....  Iowa, farm subsidies, ethanol, and NH should not be able to rig elections.  Ethanol is tearing the global economy apart, making food (even beer) more expensive, and making Brazil want to tear down as much of the Amazon it can.  Pardon my French but fuck Iowa.</br><br></br><br>Howard Dean should make a rule- no caucuses, only primaries.  And then he should establish a rotating calendar for which states get to vote when.  My suggestion- one day a month in an election year, 10 states vote.  Five months go by and then it\'s over- no matter where CA and NY fall in the cards.  If NH always wants to be the first state, and if we want to avoid amending the constitution, then fine.  But nine other states will vote the same day, on a rotating basis.  I know primaries are more expensive than caucuses but they\'re not nearly as expensive as having a dumb-ass president for 8 years.  And sure, group the states geographically if it means that the candidates can save some money by advertising to DC, MD, and VA at the same time.  Or NY, NJ, and CT, or whatever.</br><br></br><br>I am not a Democrat who likes to lose, which seems to be pretty easy in the last couple of decades.  I want to win for crying out loud and i don\'t think Obama can do it.  One thing about republicans is that they are good at winning, and we are good at losing.  And we can\'t blame Karl Rove or the John Kerry windsurfing ad- we just suck at this.  Except for the Clintons.</br><br></br><br>Bests,</br><br></br><br>Ms. Irish</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968273">\
	 <div id="dsq-comment-header-1968273" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968273" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968273">nezua</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968273" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968273" class="dsq-comment-message">"One thing about republicans is that they are good at winning, and we are good at losing. And we can\'t blame Karl Rove or the John Kerry windsurfing ad- we just suck at this. Except for the Clintons."<br></br><br>Who...just lost. And if the Great Winners got beat? Then maybe you can have a little faith in the team that beat them.</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968274">\
	 <div id="dsq-comment-header-1968274" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968274" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968274">Graham Kirby</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968274" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968274" class="dsq-comment-message">Hey.. just come across this website and decided to make a few comments.<br></br><br>I\'m an Anglo-Irish Hillary supporter. I am not American. I am not a woman and I am not black. I am a white Anglo-Saxon man. I will not go into my reasons for not supporting Obama (who I have seen on the political radar since circa 2003) but as he takes on the nomination I still have doubts as to whether he can win, but I hope and pray I am wrong. </br><br></br><br>First of all... you probably don\'t know much about UK blogging but you Americans rock at it. Our pathetic efforts seems just like that compared with yours.</br><br></br><br>As much as I really thought it was an excellent post, it was a shame that the comments did not live up to the standards the author hoped to inspire.</br><br></br><br>Yes, its been an ugly campaign but it has been ugly on both sides and from both candidates. I can mention plenty of my female friends (both British and American overseas) who have been appalled by Obama\'s dog-whistle sexism as well as the sexism shown by the American (and indeed British) media towards Hillary Clinton.</br><br></br><br>Senator Clinator has her faults - vast and numerous - of course and so does Obama. Clinton can be accused of stirring racism. And while Obama has never said anything directly sexist, he has made some questionable comments whose results have been to pigeon hole Clinton by her gender.</br><br></br><br>I am equally unsure exactly what Clinton has said that is directly racist? </br><br></br><br>1) The reference to Johnson and MLK was merely pointing out that the civil rights movement was given traction by a white man. Is that racist?</br><br></br><br>2) She never called for Obama\'s to be assassinated. She merely pointed out that Robert Kennedy was assinated in June while he was *campaigning*. </br><br></br><br>3) Bill Clinton (not Senator Clinton) pointed out that Jesse Jackson had won primaries. This is the remark I have most problem with and can find no justification.</br><br></br><br>4) Geraldine Ferraro said that Obama would not be where he was if he was white. But isn\'t that true? Its no bad thing. The black vote is hugely important as is the ethnic minority vote in general. To call this racist is unfair.</br><br></br><br>5) Senator Clinton has said that she commands a majority of white working class votes. Well, isn\'t it true? Isn\'t it a bit unfair to call that racist. Obama has a constituency (the black vote and the intellectual/liberal vote), Clinton has a consituency too. Obama has failed for the moment to win over the bloc.  </br><br></br><br>Please judge Obama and Clinton by the same standards. They are both flawed. And while Clinton may have to make peace with America\'s black community. Obama has to make peace with women as well.</br><br></br><br>It is to be expected (on both sides). We are from early age conditioned to see by their differences to us and sometimes when we are not on the receiving end of stereotypes we can be insensitive. </br><br></br><br>I do not think Obama is sexist nor that the Clintons are racist. Both were just unfortunate to be placed in such a sensitive competition. In my view neither of them has emerged from the process very well, "sweetie". (I will not tell you what my American friend said when she heard that - although she does liek John McCain.)</br><br></br><br>Until Obama supporters acknowledge this, he will struggle to unite the Democrats.</br><br></br><br>Oh, and three final things. Its 5am here and I\'m knackered. I just wanted to post something on this site as I appreciated the original comment. I would appreciate it if I was not subjected to the general abuse that seems to characterise the blogosphere - calm down guys: freedom carries responsibility with it and freedom of speech is too precious to be abuse and shouted down. </br><br></br><br>Also, don\'t gloat too early guys. I worked out from a poll of polls that at the moment its a much tighter race for Obama than it would have been if the positions had have been reversed. Obama might have beat the Clintons, but he is not yet President. A few years ago the best candidate was beaten by a non-entity from texas. I really have to thank you guys for that one by the way... (Oh. And before you point it out - I apologise on behalf of all of the United Kingdom for Blair, Thatcher and really bad teeth)</br><br></br><br>And also as someone who heralds from the emerald isle and also who has done work with HIV/AIDS in Africa, I\'ll always take my hat off to those Washington insiders, the Clintons....</br></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1968275">\
	 <div id="dsq-comment-header-1968275" class="dsq-comment-header">\
	 <cite id="dsq-cite-1968275" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1968275">Anonymous</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1968275" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1968275" class="dsq-comment-message">There is absolutely no doubt in my mind that Clinton, her campaign, and her supporters sometimes engaged in, and benefited from, racist rhetoric and tactics--and that their having done so is despicable and entirely unacceptable.<br></br><br>There is equally little doubt in my mind that you made the jump from gathering together people who supported Obama, and who objected to racism, and who wanted confirmation that what they were seeing was real, and who weren\'t going to take it lying down, into being one of the head cheerleaders for ugly, rampant, and often baseless Hillary hatred. And that you denied, at virtually every turn, the very real sexism that came from the mainstream media, Obama supporters, and Obama\'s campaign. </br><br></br><br>Neither Obama nor his campaign ever intervened to temper any of that bigoted vitriol. It\'s an intervention that Clinton and her campaign are equally guilty of not having made regarding the bigoted vitriol re: race.</br><br></br><br>As a Clinton supporter who will be voting for Obama in November, and trying to do outreach to disillusioned Clinton supporters who might otherwise stay home or vote for McCain, I just want to assure you that the kind of venom you\'ve spewed, and the culture of uncritical bonding based on hatred you\'ve helped to create and support, will be one of my--and Obama\'s--greatest obstacles. </br><br></br><br>I appreciate the extent to which your post is a step in the right direction. I also hope that you\'ll appreciate what I\'m saying when I tell you that it may be too little, too late. And that you\'ve got a whole lot more work to do towards healing the rift you\'ve done so much to create. </br><br></br><br>At the end of the day, it doesn\'t make all that much difference to me whether you do it as the result of sincere soul searching or as political calculation. One way or other, this crap has to stop--on both sides.</br></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=this_primary_campaign_has_brought_out_the_best_and_worst_in_me&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');
}

})();




