




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": {"acwresearcher": {"username": "acwresearcher", "tumblr": "", "display_name": "acwresearcher", "url": "http://disqus.com/acwresearcher/", "registered": true, "linkedin": "", "blog": "http://acwresearcher.wordpress.com", "remote_domain": null, "points": 1, "facebook": "http://www.facebook.com/profile.php?id=1171326803", "avatar": "http://media.disqus.com/uploads/users/88/6591/avatar32.jpg", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "b650fbdb2da009baf9a5f9150dd2eab6": {"username": "The History Enthusiast", "tumblr": "", "display_name": "The History Enthusiast", "url": "http://disqus.com/guest/b650fbdb2da009baf9a5f9150dd2eab6/", "registered": false, "linkedin": "", "blog": "http://historyenthusiast.blogspot.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "29ac7a91b8acbdbb693ab89f995b610d": {"username": "Charlie Rosenberg", "tumblr": "", "display_name": "Charlie Rosenberg", "url": "http://disqus.com/guest/29ac7a91b8acbdbb693ab89f995b610d/", "registered": false, "linkedin": "", "blog": "http://www.blackheath1381.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "c66ccf1d91b385921d1ae894a3d8a88f": {"username": "Ralph Kirkland", "tumblr": "", "display_name": "Ralph Kirkland", "url": "http://disqus.com/guest/c66ccf1d91b385921d1ae894a3d8a88f/", "registered": false, "linkedin": "", "blog": "http://www.squidoo.com/freestateofjones", "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": ""}, "bdsimpson": {"username": "bdsimpson", "tumblr": "", "display_name": "Brooks D. Simpson", "url": "http://disqus.com/bdsimpson/", "registered": true, "linkedin": "", "blog": "", "remote_domain": null, "points": 2, "facebook": "", "avatar": "http://media.disqus.com/uploads/users/88/4699/avatar32.jpg", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "39743cac3fc90be6c8ab1a6a2fa2fe3b": {"username": "James F. Epperson", "tumblr": "", "display_name": "James F. Epperson", "url": "http://disqus.com/guest/39743cac3fc90be6c8ab1a6a2fa2fe3b/", "registered": false, "linkedin": "", "blog": "http://www.civilwarcauses.org/", "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": ""}, "35cf5629453afdc8930f0339d63f3581": {"username": "Harry", "tumblr": "", "display_name": "Harry", "url": "http://disqus.com/guest/35cf5629453afdc8930f0339d63f3581/", "registered": false, "linkedin": "", "blog": "http://bullrunnings.wordpress.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/296/7539/avatar32.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "e15782be15b15b37ae9085de7e5602da": {"username": "Caitlin GD Hopkins", "tumblr": "", "display_name": "Caitlin GD Hopkins", "url": "http://disqus.com/guest/e15782be15b15b37ae9085de7e5602da/", "registered": false, "linkedin": "", "blog": "http://vastpublicindifference.blogspot.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "244254d55c85f4de4d53632dcb4ed9b8": {"username": "Michael Lynch", "tumblr": "", "display_name": "Michael Lynch", "url": "http://disqus.com/guest/244254d55c85f4de4d53632dcb4ed9b8/", "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": ""}, "9e73c05868f33d8cc3208b78f1ca002b": {"username": "chris meekins", "tumblr": "", "display_name": "chris meekins", "url": "http://disqus.com/guest/9e73c05868f33d8cc3208b78f1ca002b/", "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": ""}, "kevlvn": {"username": "kevlvn", "tumblr": "", "display_name": "Kevin Levin", "url": "http://disqus.com/kevlvn/", "registered": true, "linkedin": "", "blog": "http://www.cwmemory.com", "remote_domain": null, "points": 5, "facebook": "", "avatar": "http://media.disqus.com/uploads/users/6/9040/avatar32.jpg", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "9rainbow9": {"username": "9rainbow9", "tumblr": "", "display_name": "Sherree Tannen", "url": "http://disqus.com/9rainbow9/", "registered": true, "linkedin": "", "blog": "", "remote_domain": null, "points": 1, "facebook": "", "avatar": "http://media.disqus.com/uploads/users/89/170/avatar32.jpg", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "a40bfef160182e2b156b14d85fd793a9": {"username": "victoria bynum", "tumblr": "", "display_name": "victoria bynum", "url": "http://disqus.com/guest/a40bfef160182e2b156b14d85fd793a9/", "registered": false, "linkedin": "", "blog": "http://renegadesouth.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/273/5347/avatar32.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "dfeba066ab7113f5eaebfbbb07c6a755": {"username": "toby", "tumblr": "", "display_name": "toby", "url": "http://disqus.com/guest/dfeba066ab7113f5eaebfbbb07c6a755/", "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": ""}, "a6537f4d4c50e1bedec6d704b1ce83f1": {"username": "rob head", "tumblr": "", "display_name": "rob head", "url": "http://disqus.com/guest/a6537f4d4c50e1bedec6d704b1ce83f1/", "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": ""}, "marcferguson": {"username": "marcferguson", "tumblr": "", "display_name": "Marc Ferguson", "url": "http://disqus.com/marcferguson/", "registered": true, "linkedin": "", "blog": "historicalmemory.googlepages.com", "remote_domain": null, "points": 1, "facebook": "http://www.facebook.com/marcfergus", "avatar": "http://media.disqus.com/uploads/users/88/3084/avatar32.jpg", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "defb582e55cc3cd09bb4e12fe64369ff": {"username": "Sally Jenkins", "tumblr": "", "display_name": "Sally Jenkins", "url": "http://disqus.com/guest/defb582e55cc3cd09bb4e12fe64369ff/", "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": "Civil War Memory", "streaming_realtime": false, "url": "cwmemory", "allow_anon_post": true, "reactions_enabled": true, "reply_position": 0, "show_avatar": true, "allow_anon_votes": false, "disqus_auth_disabled": false}, "realtime_enabled": false, "request": {"username": "", "is_global_moderator": false, "sharing": {}, "sort": 4, "forum": "cwmemory", "is_initial_load": true, "is_authenticated": false, "timestamp": "2009-11-29_06:25:56", "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": null}, "realtime_paused": false, "posts": {"17060736": {"up_voted": false, "ip": "", "has_replies": false, "message": "Vikki,<br><br>You've been very patient in your handling of the response by Jenkins and Stauffer and I appreciate that.  I have to say that I am disappointed that they have not been more active in engaging you and my readers in defending their claims about \"The State of Jones.\"", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-13_09:09:37", "killed": false, "user_key": "kevlvn", "has_been_anonymized": false, "edited": false, "author_is_moderator": true, "from_request_user": false, "votable": true, "date": "07/13/2009 09:09 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": true, "is_realtime": false}, "17060737": {"up_voted": false, "ip": "", "has_replies": false, "message": "A Note to My Readers:<br><br>My goal in posting the response by Stauffer and Jenkins was to generate a healthy debate about this subject.  I did not anticipate a response that would challenge Professor Bynum's integrity and for that I must apologize.  Professor Bynum has made every effort to respond to Stauffer's and Jenkins's critique and she has done so in a professional manner throughout.  I think I speak for all of us when I say that I look forward to hearing much more from Jenkins and Stauffer as anything less will reflect poorly on their sense of scholarship and fair play.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-13_09:10:55", "killed": false, "user_key": "kevlvn", "has_been_anonymized": false, "edited": false, "author_is_moderator": true, "from_request_user": false, "votable": true, "date": "07/13/2009 09:10 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": true, "is_realtime": false}, "17060738": {"up_voted": false, "ip": "", "has_replies": false, "message": "Thank YOU, Kevin, for providing me with an unprecedented opportunity to defend my work and my name. You have moderated this discussion with great skill and sensitivity.<br><br>Sincerely,<br>Vikki Bynum", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-13_09:30:13", "killed": false, "user_key": "a40bfef160182e2b156b14d85fd793a9", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/13/2009 09:30 AM", "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}, "17060739": {"up_voted": false, "ip": "", "has_replies": false, "message": "I am still hung up on the idea that being a Primitive baptist would predispose someone into being an abolitionist. I simply don't believe its true.  That is why Newt Knight's multiracial family is so unique.  As Jenkins and Stauffer admit, his post war family life alienated him from most of his family and friends.  They presumably shared his religious upbringing, but obviously didn't approve of his \"arrangements.\"  Why would they? Even in the best light, he was an adulturer and a bigamist.  His wife Serena, showed great patience with the man to stay with him as long as she did.  I know of no Baptist, Methodist, Presbyterian, whatever, that would approve of an unabashed adulterer.  For the sake of arguement, I would like to suggest that rather than Newt being raised a Primitive Baptist, he may have been, for lack of a better term, raised as a hardshell baptist or \"old timey Baptist\", as my wife would phrase it.  This sect washes feet and drinks real wine during the Lord's Supper or Communion; they do not share the Primitive ban on insturmental music or its hyper Calvinism.  It was this sect, I believe, that was alienated  by the Southern Baptist orthodoxy and broke away from it.  The Piney Woods are full of their adherents.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-13_21:53:33", "killed": false, "user_key": "a6537f4d4c50e1bedec6d704b1ce83f1", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/13/2009 09:53 PM", "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}, "17060740": {"up_voted": false, "ip": "", "has_replies": false, "message": "Slightly off-topic:<br><br>I've been going through the 1870 and 1880 census records to find out exactly how many white Southerners actually did name their children after Grant (and Lincoln and Sherman).<br><br>The answer? <a href=\"http://vastpublicindifference.blogspot.com/2009/07/unionist-naming-in-postwar-south.html\" rel=\"nofollow\">More than you might expect.</a>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-14_09:22:04", "killed": false, "user_key": "e15782be15b15b37ae9085de7e5602da", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/14/2009 09:22 AM", "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}, "17060741": {"up_voted": false, "ip": "", "has_replies": false, "message": "I found Victoria Bynum's review of The State of Jones extremely informative.  I did not perceive it as any sort of attack.<br><br>In fact, the only discrediting that I noted was in the Jenkins/Stauffer response.  They dismissed Ms. Bynum as a disinterested scholar.  They protest too much and that protest reflects badly on them.  Why challenge the motives of another scholar.  They are the ones defending their turf.  Get a grip, guys!  She is trying to document the record, not attack you.<br><br>A little note on Jasper Collins.  He did name his son Ulysses Sherman Collins.  That actually means he names him after two Union generals, Grant and Sherman.  Grant's middel name is not Sherman.  Obviously, a poke in the eye of many Southerners who hated Sherman.<br><br>Dropping names does not improve the case for Jenkins/Stauffer.  I have never heard of your legendary publisher.  I'll bet few peopel outside the publishing field have either.  That has no bearing on what I think of the book, which I am interested in reading.<br><br>Just cover the documentation and love you put into the effort.  Why level personal attacks.<br><br>There is no such thing as objectivity.  The story is never just the facts, but must be built on fact.  Your view of how the world works has points you to the facts that you select.   As a reader, the best you can do is to understand the views of the author and how the facts are selected.  You form your judgments then.<br><br>Jenkins/Stauffer's attack on  Ms. Bynum by impugning her motives and character is a poor way to proceed.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-14_11:54:10", "killed": false, "user_key": "c66ccf1d91b385921d1ae894a3d8a88f", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/14/2009 11:54 AM", "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}, "17060742": {"up_voted": false, "ip": "", "has_replies": false, "message": "Ive read both books; I throughly enjoyed both books. In my unprofessional opinion, I found Ms. Bynums book to be more scholarly in tone; Ms. Jenkins and Dr. Stauffer presented more of a narrative.  I did feel like Ms. Jenkins and Dr. Stauffer fell in love with Newt Knight and made him the center of their book for various reasons.  He is almost mythological, a figure of folklore.  I will say this; for a man to defy the Confederancy the way he did, then to engage in the family life he had during and after Reconstruction in Mississippi and  survive, he must have been one strong willed and violent man.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-15_22:09:39", "killed": false, "user_key": "a6537f4d4c50e1bedec6d704b1ce83f1", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/15/2009 10:09 PM", "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}, "17060743": {"up_voted": false, "ip": "", "has_replies": false, "message": "<a href=\"http://www.nytimes.com/2009/07/30/movies/30jones.html?_r=1&amp;hpw\" rel=\"nofollow\">http://www.nytimes.com/2009/07/30/movies/30jone...</a><br><br>Wow.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-29_22:58:10", "killed": false, "user_key": "bdsimpson", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "07/29/2009 10:58 PM", "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}, "17060744": {"up_voted": false, "ip": "", "has_replies": false, "message": "First, a brief disclosure: although it took me a few minutes to recognize John Stauffer's name, I did photo research for his earlier work, <i>Meteor of War: The John Brown Story</i> from Brandywine Press, co-authored by Zoe Trodd. I also have ancestors named Jenkins, but know of no direct connection to Stauffer's present co-author.  I find it difficult to take sides in this debate. Reading Bynum's critique first, I was shocked at the apparent egoism of Stauffer and Jenkins. Reading Stauffer's reply, I cannot fathom the narrow-minded name-calling of Bynum. Setting aside the personality disputes, both offer some valid points. It does appear that Bynum exaggerated how firmly Stauffer rested claims of fact on undisputedly speculative evidence.<br><br>If everyone recognizes that such research is filling in blanks in a picture we can never be entirely certain of, there seems little to fight over. Bynum is correct that women of African descent didn't have a lot of choice when approached by a \"white\" man, but there are many accounts, autobiographical and scholarly, of inter-racial couples which were based on mutual affection. The Delaney sisters' family history, and the more recent book <i>My Confederate Kinfolk</i> come to mind. If Stauffer and Jenkins suggested that Knight was close to unique, they've missed a good deal of the background. One reason southern culture is rife with phrases like \"a spoonful of Negro blood\" or \"a touch of the tar brush\" is because inter-racial marriages, or voluntary liaisons, were rife, and most southern families were in fact of partial African descent, although most tried to set it aside. (I generally assume that my mother's mother's family is among these families.) I find it difficult to give much credence to debate as to whether the voters of Jones County held a formal meeting to adopt a Constitution of the State of Jones. They were, after all, in the middle of a war. That the county, by and large, successfully resisted Confederate authority and flew the flag of the United States connotes an independent de facto political existence, tied to an evident political loyalty. I look forward to reading ALL the books referenced in this debate, and hopefully overlooking whatever sniping and rivalry may continue between the authors. IF Bynum is motivated by a desire to claim or retain turf, to say so adds nothing to the debate. She would no doubt make that self-evident in the fullness of time.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-08-17_21:22:52", "killed": false, "user_key": "29ac7a91b8acbdbb693ab89f995b610d", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "08/17/2009 09:22 PM", "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}, "17060745": {"up_voted": false, "ip": "", "has_replies": false, "message": "Charlie,<br><br>Thanks so much for the comment.  You said: \"It does appear that Bynum exaggerated how firmly Stauffer rested claims of fact on undisputedly speculative evidence.\"  What are we to make of this point if you admittedly haven't read the book?", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-08-17_21:41:56", "killed": false, "user_key": "kevlvn", "has_been_anonymized": false, "edited": false, "author_is_moderator": true, "from_request_user": false, "votable": true, "date": "08/17/2009 09:41 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": true, "is_realtime": false}, "17060746": {"up_voted": false, "ip": "", "has_replies": false, "message": "Kevin, unless this statement:<br><br><i>We do not \u201cclaim\u201d that Newton Knight served at Vicksburg; we offer an assessment based on the available sources and acknowledge that any interpretation is necessarily speculative, given the paucity of evidence.  And we also make clear that whether or not Newton was at Vicksburg is ultimately irrelevant to our larger argument about his Unionism.  And yet you and Bynum assert that our interpretation is a major problem, without explaining why.</i><br><br>...flagrantly mis-states what is in the book, it puts to rest Bynum's characterization. It would be rare for an author to directly misquote their own published work in order to defend it. Reading the book will I hope provide a much more detailed picture.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-08-18_21:30:17", "killed": false, "user_key": "29ac7a91b8acbdbb693ab89f995b610d", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "08/18/2009 09:30 PM", "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}, "17060705": {"up_voted": false, "ip": "", "has_replies": false, "message": "Individual acts of loyalty to the Union do not in and of themselves constitute seceding from the secession.  Even a series of collective acts of Unionism do not stand as such - to secede is a willful act of a body politic declaring a principle on which they stand or refute, etc.  I am sympathetic to the authors working with a series of loyal acts or even groups of people opposing Confederate policy.  And that is exactly what should be noted and discussed.  In my little burg of Unionism in neNC we have Quakers and Wesleyan Methodists, Constitutional Unionists and probably a few conscript dodgers - many vote against secession when given the chance (May 1861), many vote against the larger issue in 1860 by voting for John Bell but when pressed they would accept assistance from either power structure (Confederate or Union) until, after two years of relentless guerrilla warfare, General Wild's raid proved to the local Unionists that neither power structure would or could protect them.  They meet in a legal body and drafted a resolution with two main points: the requested removal of all forces from the region (Union and Confederate) and the end to blockade running in the area (by this they meant the illegal traffic in goods flowing through the area).  So, while expressing Union sentiments through 1862 and 1863, and some very overt acts at that, it was not until December 19, 1863 when 501 local men signed the two part resolution that I can say there was a secession from the secession: truthfully it was more of an attempt to secede from the war.<br>Although this rebuttal shows plenty of scholarship and resources I think it still comes up short of the claim of showing secession.  It does show a strong tether to the old Union before the war and a connection to the changed Union post-Emancipation Proclamation.   Show me a body politic voting on a resolution and then I will have no choice but to agree.  Otherwise, stay within your evidence - which still makes a convincing argument just not the exact one claimed. In MHO.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-11_08:21:19", "killed": false, "user_key": "9e73c05868f33d8cc3208b78f1ca002b", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/11/2009 08:21 AM", "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}, "17060706": {"up_voted": false, "ip": "", "has_replies": false, "message": "I have Bynum's book, though I've not read it.  I've read parts of her reviews of this new book, and don't find them to be of the character depicted in the \"response\" above.  In addition, I see  some of the new authors' defenses against \"charges\" of \"conjecture\" to be based on just that, conjecture - \"must have beens\" and \"probablys\" (see their evidence presented in support of the notion that Knight was a primitive bapitst 'fo de woah).  But maybe that's just me.  <br><br>It does appear that this new book draws a sharper line between \"black hats\" and \"white hats\".  That should play better on the big screen.<br><br>Sorry for all the quotation marks.  Maybe if I throw in a few more parenthetical comments and a couple of colons, I can pass myself off as an academic?  Probably not.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-11_09:21:30", "killed": false, "user_key": "35cf5629453afdc8930f0339d63f3581", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/11/2009 09:21 AM", "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}, "17060707": {"up_voted": false, "ip": "", "has_replies": false, "message": "First, let me say I have read portions of both <i>The Free State of Jones</i> by Victoria Bynum and <i>The State of Jones</i> by John Stauffer and Sally Jenkins, but I am still working my way through both.<br><br>That said, I do not agree with Stauffer's and Jenkins' claim that Newt Knight's acceptance of and membership in, at any point, the Primitive Baptist denomination is sufficient evidence that he was influenced by his religious beliefs to be an equality-minded abolitionist. Indeed, Primitive Baptists did have the \"central tenet\" of \"the equality of souls,\" but so did almost every other Southern denomination before the war. In religious terms, the equality of the soul before God at judgment after death is vastly different from equality of the soul in society while living. The term \"equality of souls\" cannot be thought to mean both as it regards antebellum Christian doctrine and denominations in the South.<br><br>While the authors of <i>State of Jones</i> do make arguments that Knight treated blacks differently and collaborated with other whites to ensure their place in postwar Southern society, I believe that is a far cry from saying <b>he</b> thought of them as equals, absent personal writings by him to that effect. The specific point here is that all of the authors being discussed here -- Bynum, Jenkins and Stauffer -- make this same claim of Knight treating blacks differently. The interpretation of how it motivated him is vastly different and, in my opinion, Stauffer and Jenkins read more into the available evidence than can be reasonably concluded.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-11_11:21:40", "killed": false, "user_key": "acwresearcher", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "07/11/2009 11:21 AM", "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}, "17060708": {"up_voted": false, "ip": "", "has_replies": false, "message": "Very interesting response.  I plan on checking out this book for myself, and you've given some food for thought.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-11_13:21:10", "killed": false, "user_key": "b650fbdb2da009baf9a5f9150dd2eab6", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/11/2009 01:21 PM", "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}, "17060709": {"up_voted": false, "ip": "", "has_replies": false, "message": "Let\u2019s take a look at the facts about Newton Knight that are not disputed. <br><br>1.\tHe did not own slaves, despite the fact that his grandfather was one of the largest slave owners in Jones County. <br>2.\tHe deserted the Confederate Army not once but twice.<br>3.\tHe led an armed resistance against the Confederacy in Jones County.  About 125 men fought with him, many of whom enlisted formally in the Union Army after they were driven out of Jones. Fifty-three men from Jones served in Union uniforms.<br>4.\tHe was aided by a slave named Rachel during the war, and fathered a child with her.<br>5.\tIn 1865 he liberated a black child from an unrepentant slave-owner. <br>6.\tIn 1865 he carried out written orders from Union officers occupying Jones County.<br>7.\tAlso In 1865 he also met with Union General William McMillen in Meridian and received several thousands pounds of rations from the federal stores.<br>8.\tHe applied five times for a Union pension.<br>9.\tHis pension case was championed by Adelbert Ames, and three other of the most fervent Unionists and Radical Republicans in Congress.<br>10.\tHe accepted a commission from Adelbert Ames as captain of a black militia unit at the height of the postwar racial terrors in Mississippi.<br>11.\tAfter the war he lived with the ex-slave named Rachel, with whom he fathered several children that he acknowledged and provided for as his own. <br>12.\tIn 1876 he deeded Rachel 160 acres.<br>13.\tHis white wife left him, and he lived the rest of his live with Rachel\u2019s family in a black community.<br>14.\tHe was buried in the cemetery among Rachel\u2019s family, despite the fact that Mississippi mandated segregated cemeteries.<br><br>Now let\u2019s look at the facts about Jones County that are beyond dispute<br><br>1.\tThe people of Jones County voted against secession. When their delegate voted for secession at the state convention, they burned him in effigy.<br>2.\tJones County was the site of armed resistance against the Confederacy that required two interventions by Rebel troops, one led by Henry Maury, and another led by Robery Lowry, neither of which succeeded in quelling the resistance.<br>3.\tIn March 1864 Confederate officials could no longer collect Rebel taxes or conduct official business there, and reports reached the Confederate high command that a federal flag had been raised over the Jones Co. courthouse.<br>4.\tFifty-three men from Jones County went to New Orleans to formally enlist in the Union Army.<br>5.\tThe reports of highly organized Unionist activity Jones in the Official Records are unmatched by reports from any other Mississippi county.<br>6.\tAfter the surrender, beaten Confederates returning to Jones were so shamed by the Unionist activities during the War that they petitioned the statehouse to change the name of the county to Davis.<br><br>No historian disputes any of the above, all of which is supported by records. So I really don\u2019t see what the argument is about, or how the conclusions of our book go beyond the evidence. <br> <br>Debate about other pieces of evidence that are slightly more equivocal \u2013 whether Knight was a Primitive Baptist before the War or after, and whether he deserted just before Vicksburg or just after it \u2013 should not obscure the main facts, or the totality of the record on Newton Knight and Jones County.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-11_14:05:32", "killed": false, "user_key": "defb582e55cc3cd09bb4e12fe64369ff", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/11/2009 02:05 PM", "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}, "17060710": {"up_voted": false, "ip": "", "has_replies": false, "message": "Ms.Jenkins:  I don't have a dog in this fight, I'm just trying to decide which book to buy.  But I have to agree with Mr. Meekins, that acts of loyalty to the US or resistance to the CS do not constitute an act of secession from the CS.  So it would seem that your book has at least one problematic claim.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-11_14:43:35", "killed": false, "user_key": "39743cac3fc90be6c8ab1a6a2fa2fe3b", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/11/2009 02:43 PM", "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}, "17060711": {"up_voted": false, "ip": "", "has_replies": false, "message": "Sally Jenkins and John Stauffer have created the proverbial straw man. They expend great energy and time replicating documents (particularly from the Official Records of the Civil War), practically all of which I myself used in the FREE STATE OF JONES to argue, as they do, that Newt Knight was a Unionist who led a powerful insurrection against the Confederacy. <br><br>As Chris Meekins explained in an earlier comment, they conflate secession from the Confederacy with insurrection. Furthermore, in their attempt to present their work as a strikingly new interpretation, they insist that I failed to perceive Newt Knight's opposition to the Confederacy during and after the war. How absurd! If they believe that, they obviously did not read my book.  <br><br>I certainly agree with the authors that scholarship is (or should be) \"a shared and diverse community of multiple perspectives and interpretations.\" That's why I conferred with every major author of the Free State of Jones--Ethel Knight, Rudy Leverett, and Kenneth Welch--living at the time that I researched my book. The Free State of Jones, as I have pointed out time and time again on my blog, Renegade South, is a living history. My forthcoming book will address multiple areas of analysis missing in STATE OF JONES.  And so it goes.  Scholars will continue to research and write the history of the Free State of Jones long after the present generation is gone. <br><br>I stand by my three-part review of STATE OF JONES, which addresses the authors'  other misrepresentations of my work.<br><br>Victoria E. Bynum<br>Renegade South", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-11_15:10:47", "killed": false, "user_key": "a40bfef160182e2b156b14d85fd793a9", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/11/2009 03:10 PM", "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}, "17060713": {"up_voted": false, "ip": "", "has_replies": false, "message": "I have read neither book myself, though I have great respect for both John Stauffer and Victoria Bynum as historians. If one of the disputes here is over whether or not Jones County \"seceded\" from the Confederacy, I would ask whether the Unionists of Jones County ever considered secession itself legitimate. If so, then might their actions constitute not so much a secession in itself, but an assertion of the illegitimacy of the Confederacy?<br><br>Marc", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-11_15:22:53", "killed": false, "user_key": "marcferguson", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "07/11/2009 03:22 PM", "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}, "17060714": {"up_voted": false, "ip": "", "has_replies": false, "message": "Ms. Jenkins:  Are any of the points you present as undisputed by historians disputed by Dr. Bynum?  If not, how do your books differ?  What information would assist Mr. Epperson, for example, in making a choice?", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-11_15:25:58", "killed": false, "user_key": "bdsimpson", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "07/11/2009 03:25 PM", "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}, "17060715": {"up_voted": false, "ip": "", "has_replies": false, "message": "I\u2019ve read this exchange with some interest.  Disclaimers: I\u2019ve read Bynum\u2019s book, and I look forward to reading Jenkins and Stauffer\u2019s book.  I barely know two of the participants in the exchange: Stauffer through an e-mail to one of my students, and perhaps (or perhaps not) Bynum at an introduction at a historians\u2019 meeting (I have worked with one of her students, Mark Weitz).  Like Jim Epperson, I don\u2019t have a dog in this fight.<br><br>That said, I have to question why Jenkins and Stauffer feel the need to offer their opinions on what they believe to be Bynum\u2019s motives for offering her review of the book.  They say: \u201cDebate is one thing; we welcome that-indeed we would be happy to debate Victoria Bynum (or a disinterested scholar) on your blog or any other venue.  It\u2019s quite another thing for Bynum to try to discredit our book, The State of Jones, as part of her effort to trumpet her own book and remain the only source on the subject.\u201d  I find no evidence that such is Bynum\u2019s motive.  Are Jenkins and Stauffer, who cite Bynum\u2019s book as authority for some of their statements, questioning her knowledge of the subject?  Fine.  Are they taking issue with her criticism?  Fine.  But I\u2019d appreciate it if we let that criticism rise or fall on the documents and how one interprets them rather than to make unsubstantiated claims about an author\u2019s motives.  After all, they aren\u2019t disinterested scholars in this matter, either.  <br><br>Jenkins and Stauffer later take another swing at Bynum:  \u201cConceptually, there is a basic divide between Bynum and us:  We view scholarship as a shared and diverse community of multiple perspectives and interpretations, which together adds to our understanding of the past.  Bynum sees scholarship as a form of turf warfare, with only one valid interpretation of the past, which effectively renders history useless.\u201d  I see nothing in Bynum\u2019s review to support that characterization of her motive.  I might, in fact, argue that I find Jenkins and Stauffer engaging in a turf war in which they declare that they stand on higher ground.  That ground might well prove shaky.  <br><br>Unlike Jenkins and Stauffer, Bynum does not speculate about the motives behind the work of Jenkins and Stauffer.  Blogger Harry Smeltzer implicitly did:  \u201cIt does appear that this new book draws a sharper line between \u2018black hats\u2019 and \u2018white hats\u2019. That should play better on the big screen.\u201d  I think it would be wrong to claim without any evidence that Jenkins and Stauffer were thinking of offering a simplified view of the past in order to make it more attractive to movie producers and thus enrich themselves.  But I also can\u2019t escape feeling that the way in which Jenkins and Stauffer attack Bynum that they don\u2019t invite the same sort of retort in kind.<br><br>I draw two conclusions from reading the rejoinder.  First, I think there\u2019s a good deal of conjecture and speculation in The State of Jones in certain areas, because the authors\u2019 rejoinder contains evidence of such an approach.  Second, I do have to scratch my head over the authors\u2019 handling of the issue of secession and exactly how Kevin Levin addressed that issue.  For the authors to claim that the Free State of Jones seceded is to accord a legitimacy to secession that participants, who viewed themselves as Unionists, would have questioned.  In pressing that argument, they slightly but significantly distort what Levin said, almost in passing.  Levin said: \u201cFor instance, despite the book\u2019s subtitle there is no evidence that a declaration of secession was ever issued.\u201d  Jenkins and Stauffer claim that Levin \u201cstate[s], citing Victoria Bynum, \u201cthere is no evidence\u201d that Jones County seceded from the Confederacy.\u201d  That\u2019s not what Levin said: he said there was no declaration of secession issued.  Jenkins and Stauffer don\u2019t produce documentation that one was issued.  Nor was that point a minor one to Newt Knight, as even Jenkins and Stauffer admit.  As they say in their rebuttal letter, \u201cNewton Knight was interviewed by journalist Meigs Frost in 1921 and asked if Jones had actually seceded. His reply was perfectly truthful, and showed the depth of his Constitutional beliefs. Jones didn\u2019t have to formally secede from the Rebel state, he averred, because it had never been disloyal to the federal government in the first place.\u201d  Exactly.  That would explain why there was no declaration of secession, and it reveals how Knight viewed the situation: he was a loyalist, a Unionist, not a secessionist.  <br><br>Bynum offered her review of the work of Jenkins and Stauffer without speculating as to their motives.  Unfortunately, Jenkins and Stauffer could not do the same in replying to her review.  In the process they offered a rebuttal which, ironically, lends even more credence to criticisms of the book and will lead to even more speculation as to their own motives.  That\u2019s unfortunate, but it is of their own doing.  <br><br>In closing, I must confess that in reading this exchange I was reminded of another recent blogging topic highlighted by Levin and blogger David Woodbury: the attack on author Wiley Sword by admirers of John Bell Hood.  Sword\u2019s critics became rather personal in their characterization of Sword\u2019s work and ultimately of Sword himself.  My own comment in that thread suggested that one could effectively criticize another historian\u2019s scholarship without engaging in speculation about that historian\u2019s motives.  After reading the rejoinder by Jenkins and Stauffer, especially in how they characterize Newt Knight, I am also reminded of something else I once said \u2026 namely, that it\u2019s a bad business to fall in love with dead people.  I offer that unsolicited advice as mere suggestion.<br><br>Brooks D. Simpson<br>ASU Distinguished Foundation Professor<br>Arizona State University", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-11_15:30:24", "killed": false, "user_key": "bdsimpson", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "07/11/2009 03:30 PM", "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}, "17060716": {"up_voted": false, "ip": "", "has_replies": false, "message": "Thanks for commenting, all.  To address the \"problematic claim\" of Jones Co's secession issue: We make no such claim, we make it clear in the opening chapter of the book that Jones County didn't issue a formal act or declaration, or if it did, that piece of paper hasn't been found. During his Meridian campaign, which came within 20 miles of Jones, William T. Sherman did receive a declaration from a body of anti-Confederates in the region, declaring their \"independence.\" He considered it important enough to forward to Henry Halleck. However, the paper has been lost, so we can't say specifically where it came from. All we know is that it was from the basic vicinity of Southeast Mississippi.<br><br>What we say in the book is exactly what the evidence we quoted from supports: the people of Jones resisted the Confederacy by force of arms until they ran Rebel authority out of the county, and asserted their Union loyalties, and they did so collectively.  In surveying the Official Records and other documents on Jones, multiple sources refer to public meetings, and public decision-making by the citizens there.  One of Knight's chief concerns was that his right to due process had been abrogated. Among the first things he and his men did when it became clear the Confederacy had lost the war was come out of the woods and try to vote.  If Knight were here he'd tell you Jones didn't have to secede, because it had never left the Union in the first place. He'd argue such a formality would have given the Confederacy a legitimacy it didn't deserve. He and his followers didn't recognize it as legal (and neither did most Northerners). Immediately after the war, Knight and his compatriots wrote a petition to the statehouse asserting that they had remained loyal to the Union in the face of the secession avalanche, and therefore they should be promptly appointed to replace the Confederate-loyals holding the local civic offices.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-11_19:23:09", "killed": false, "user_key": "defb582e55cc3cd09bb4e12fe64369ff", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/11/2009 07:23 PM", "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}, "17060717": {"up_voted": false, "ip": "", "has_replies": false, "message": "Mr. Simpson, thanks for your question, and your comments. I listed those points that, if memory of her work serves, Ms. Bynum wouldn't dispute. I'm looking for common ground.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-11_19:37:22", "killed": false, "user_key": "defb582e55cc3cd09bb4e12fe64369ff", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/11/2009 07:37 PM", "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}, "17060718": {"up_voted": false, "ip": "", "has_replies": false, "message": "This is really a \"partially on-topic question\" rather than a comment.  I used to live in Alabama, and there we had Winston County, which was supposed to be a hot-bed of resistance to the Confederacy.  Is there any scholarly work on Winston County?", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-11_19:42:00", "killed": false, "user_key": "39743cac3fc90be6c8ab1a6a2fa2fe3b", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/11/2009 07:42 PM", "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}, "17060719": {"up_voted": false, "ip": "", "has_replies": false, "message": "To add to the reply to Prof. Simpson, the differences a reader would see between our book and Dr. Bynum's would be chiefly in presentation, and conclusion. Our book is a narrative, Dr. Bynum's is a social history. We believe that the basic narrative of Newton Knight and Jones County -- which I tried to lay out in those points -- is powerful, and leads to a bolder conclusion about who he was and what happened in Jones County. We also believe we were able to add some things to the documentary record of Newton Knight built by Dr. Bynum -- for one thing, she is the first scholar to recognize Rachel Knight's role in his life -- especially concerning his behavior during Radical Reconstruction.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-11_20:06:57", "killed": false, "user_key": "defb582e55cc3cd09bb4e12fe64369ff", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/11/2009 08:06 PM", "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}, "17060720": {"up_voted": false, "ip": "", "has_replies": false, "message": "Mr. Epperson, the answer is simple. You should buy both. One hopefully does not come at the other's expense.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-11_20:17:15", "killed": false, "user_key": "defb582e55cc3cd09bb4e12fe64369ff", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/11/2009 08:17 PM", "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}, "17060721": {"up_voted": false, "ip": "", "has_replies": false, "message": "To further answer Prof. Simpson's question about how the books differ for readers: the chief difference a reader would see is in presentation, and conclusion. Our book is a narrative, and we believe the basic narrative of Newton Knight's life -- outlined chronologically in the points above -- is extremely powerful and leads to a bold conclusion about who he was.  A reader would also hopefully feel that we were able to add something to the impressive documentary record of Knight built by Dr. Bynum.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-11_20:34:27", "killed": false, "user_key": "defb582e55cc3cd09bb4e12fe64369ff", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/11/2009 08:34 PM", "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}, "17060722": {"up_voted": false, "ip": "", "has_replies": false, "message": "For Unionism in Alabama see Margaret Storey's gripping Loyalty and Loss, which contains some material about Winston County.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-11_20:36:44", "killed": false, "user_key": "defb582e55cc3cd09bb4e12fe64369ff", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/11/2009 08:36 PM", "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}, "17060723": {"up_voted": false, "ip": "", "has_replies": false, "message": "Ms. Jenkins:  Thanks much for the suggestion of the Storey book.  As for buying both your book and Ms. Bynum's, while I am sure booksellers all over would applaud this idea, the young lady in charge of the Epperson family finances would not :-(  I'm going to have to choose, alas.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-11_22:18:46", "killed": false, "user_key": "39743cac3fc90be6c8ab1a6a2fa2fe3b", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/11/2009 10:18 PM", "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}, "17060724": {"up_voted": false, "ip": "", "has_replies": false, "message": "Sally and John,<br><br>You state the following in your review of Bynum's critique: <br><br>\"Our book was commissioned by the legendary publisher Phyllis Grann of Doubleday Books, and it is firmly documented in every respect.\"<br><br>However, in the first paragraph in the acknowledgments section of the book you state:<br><br>\"The origin of this project was unusual-ordinarily the film comes after the book. In this case, the opposite was true: there would not be a book without film director and screenwriter Gary Ross, who brought the powerful narrative of Newton and Rachel Knight to us as a gift, and shared his vision of them as forgotten American patriots.  It was Gary who introduced us to each other and proposed that we work together on a book and it was Gary who presented the idea to Phyllis Grann at Doubleday.\"<br><br>Now that I've read most of the book as well as Professor Bynum's critique it is clear to me that there are legitimate questions to be asked about your interpretation.  Of course, there is nothing surprising about that given the nature of historical studies, but what do you say to people who might be concerned that that the genesis of this project was a film director with the promise of a movie?  How does Ross's screenplay, \"The Free State of Jones\" differ from your own.  What exactly did his vision of the Knight's as \"forgotten American patriots\" entail?  I hope you do not interpret this question as a challenge to the integrity of your work, but there is a discrepancy between what you say in the book and this post.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-12_06:34:12", "killed": false, "user_key": "kevlvn", "has_been_anonymized": false, "edited": false, "author_is_moderator": true, "from_request_user": false, "votable": true, "date": "07/12/2009 06:34 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": true, "is_realtime": false}, "17060725": {"up_voted": false, "ip": "", "has_replies": true, "message": "Hi Kevin, <br><br>No discrepancy.  As we said, our book was contracted by Doubleday, via Phyllis Grann. The filmmaker Gary Ross indeed plans to do a film some day about Newton Knight and Jones County, and four years ago he contacted John Stauffer and asked him to consult on his project. It was thus through Gary Ross that John first became aware of the Jones material and began working on the subject, for which we thank him.  If you'll turn to the dedication, you'll see that we even dedicate the book to both Gary, who has become a friend, and Phyllis together.  Gary Ross's film is not in production at this time, but he is no mean historian, and very faithful to the subject, as his film Seabiscuit attests, and we look forward to seeing his own take on Jones some day. <br><br>A note: it has been put about that our book was rushed into print to accomodate a film project, but that's not true. We actually received an extension so that we could dig deeper.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-12_07:52:04", "killed": false, "user_key": "defb582e55cc3cd09bb4e12fe64369ff", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/12/2009 07:52 AM", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "17060726": {"up_voted": false, "ip": "", "has_replies": false, "message": "Sally,<br><br>Thanks for the response.  I want to emphasize that I am not suggesting in any way that your book was rushed to production.  I should also clarify that I am not suggesting that the book was written for the purposes of a movie.  Thanks again for taking the time to clarify.<br><br>Note: I just noticed that it was a poor choice of words to say \"promise.\"  It suggests that I am implying a promise to you, which is not what I was going for.  What I meant to ask is that given that Stauffer read the script early on I was wondering how the book's interpretation deviates.  For example, what does the script say about Primitive Baptists, the question of the secession of Jones County, and the relationship between Newt and Rachel Knight?  Thanks.", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2009-07-12_07:53:43", "killed": false, "user_key": "kevlvn", "has_been_anonymized": false, "edited": false, "author_is_moderator": true, "from_request_user": false, "votable": true, "date": "07/12/2009 07:53 AM", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 17060725, "depth": 1, "points": 0, "author_is_creator": true, "is_realtime": false}, "17060727": {"up_voted": false, "ip": "", "has_replies": false, "message": "Since the authors now admit that they actually DON'T argue in their book that Jones County seceded from the Confederacy, I repeat the question I asked in part two of my review of STATE OF JONES. Why is the subtitle of their book \"The Small Southern County that Seceded From the Confederacy\"? I don't believe I've ever before seen a history book where the title so contradicts the book's contents. Was this a publisher's marketing decision?<br><br>Victoria E. Bynum<br>Renegade South", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-12_08:45:18", "killed": false, "user_key": "a40bfef160182e2b156b14d85fd793a9", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/12/2009 08:45 AM", "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}, "17060728": {"up_voted": false, "ip": "", "has_replies": false, "message": "I would like to return to the following statements by Jenkins and Stauffer: <br><br>\"Knight was a Primitive Baptist, a distinctly pre-War branch that flourished in Mississippi from the 1820s on, as Randy Sparks and other scholars have documented, and a central tenet of which was the equality of souls. Our identification of Newton as a Primitive Baptist stems from multiple sources, including the fact that it was the dominant religion in the area and that both his father and grandfather were Primitive Baptists.\"<br><br>First, would the authors please provide evidence that Newt's father and grandfather were Primitive Baptists? Second, following up on Greg Rowe's earlier post, I would like to know what evidence they have that there was an ANTI-SLAVERY Primitive Baptist church in Jones County, Mississippi. Beyond 1820-1830, such a church in the South would have been extremely rare according to Randy J. Sparks, Anne Loveland, and Christine Heyrman, three historians of religion whose work greatly influenced my own lengthy discussion of religious forces in Jones County before the war. <br><br>Finally, the authors' assertion that Primitive Baptist churches were dominant in Jones County is disputed by Suzanne Spell's 1961 master's thesis, \"History of Jones County\"  (Mississippi College). Spell identified 18 churches in the county in 1860: 6 Baptist, 6 Methodist, 4 Congregational Methodist, 1 Presbyterian, and 1 Primitive Baptist.<br><br>Thanks,<br>Victoria Bynum<br>Renegade South", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-12_19:29:18", "killed": false, "user_key": "a40bfef160182e2b156b14d85fd793a9", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/12/2009 07:29 PM", "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}, "17060729": {"up_voted": false, "ip": "", "has_replies": false, "message": "I'm sure there are people out there who might dismiss a study out of hand because it originated at a filmmaker's suggestion, but I don't think that's a legitimate basis on which to judge a work of history.  I hasten to add that I'm not accusing Kevin of doing this; I'm just responding to the question.<br><br>The reason for a historian's interest in undertaking a book project shouldn't reflect negatively on the finished product.  There are all sorts of reasons a scholar might undertake a project--someone's suggestion, a childhood visit to a site, a desire for tenure, intellectual curiosity, a mortgage, or whatever.  But it's still the finished product that remains to be evaluated on its own merits.  Otherwise, we commit the same fallacy seen in the recently-discussed John Bell Hood controversy, impugning a scholar's motives rather than addressing the work.<br><br>I stress again that I'm not accusing Kevin, Dr. Bynum, or anybody else here of having this attitude.  They've raised legitimate questions about evidence and argument, and that's what historians do.  I'm just throwing in my two cents regarding some of the possible questions about the book's origins that, as Kevin mentioned, some people may ask.<br><br>--ML", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-12_21:12:28", "killed": false, "user_key": "244254d55c85f4de4d53632dcb4ed9b8", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/12/2009 09:12 PM", "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}, "17060730": {"up_voted": false, "ip": "", "has_replies": false, "message": "Most of this is new to me, and Newton Knight sounds like a helluva guy. Obama should be sending a wreath to his grave every year, if not honouring it with a personal visit.<br><br>I have always felt that historians have made a meal of highlighting Northern divisions (draft resistance, draft riots, Copperheadism etc.) while ignoring divisions in the Confederacy, like bread riots,  Jones County &amp; the existence of units like the 1st Alabama Cavalry.  If a bunch of Illinois farmers had gone to fight for the Confederacy, how many films and books would have been published about them?<br><br>I cannot help but wonder what the \"libertarian\" sympathizers with the Confederacy would make of Jones County.<br><br>On this current debate, Victoria Bynum gets my sympathy vote, but also my vote on the facts presented so far. Her presentation has a better \"feel\" to it as a balanced examination of the extant evidence.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-13_04:21:05", "killed": false, "user_key": "dfeba066ab7113f5eaebfbbb07c6a755", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/13/2009 04:21 AM", "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}, "17060731": {"up_voted": false, "ip": "", "has_replies": true, "message": "Kevin,<br><br>Toby highlighted what is constructive about this debate; the story of Newt Knight is being presented to a broader audience. <br><br>Knight's story would have remained part of local history and folklore only, had Dr. Bynum not researched the history in depth, and then written the history and sought and obtained a publisher.  Since the authors of State of Jones cite Dr. Bynum's work, yet disagree with her interpretation, it seems to me that Dr. Bynum should have been contacted prior to publication of the book, not to quell debate, but as a matter of simple courtesy.<br><br>On the issue of the subtitle of State of Jones:<br><br>To me, this issue seems to be one of semantics, but I am not an historian, and that is the salient point. I initially read the subtitle of State of Jones as a metaphor used to describe the independent spirit of the state of Jones.  I did not read the subtitle to mean that the state of Jones actually seceded from the Confederacy. That is one of the differences between history and art, however. Metaphors are difficult to document. <br><br>Congratulations to Michaela on her recent accomplishments!", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-13_06:46:23", "killed": false, "user_key": "9rainbow9", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "07/13/2009 06:46 AM", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "17060732": {"up_voted": false, "ip": "", "has_replies": false, "message": "Sherree,<br><br>Nice to hear from you.  I read your comment over at Renegade South and thought it was very fair and quite thoughtful.  I honestly don't know what to think about the title of the book, though it's difficult to explain it away as a metaphor.  It is my hope that the authors will eventually address some of the questions posed to them in the comments section.  <br><br>Thanks for the kind words re: Michaela's successful defense.  Now all she has to do is write the damn dissertation. :)", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2009-07-13_06:53:26", "killed": false, "user_key": "kevlvn", "has_been_anonymized": false, "edited": false, "author_is_moderator": true, "from_request_user": false, "votable": true, "date": "07/13/2009 06:53 AM", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 17060731, "depth": 1, "points": 0, "author_is_creator": true, "is_realtime": false}, "17060733": {"up_voted": false, "ip": "", "has_replies": false, "message": "\"If a bunch of Illinois farmers had gone to fight for the Confederacy...\"  ---  Actually, about three dozen men from Williamson County, Illinois, crossed the Ohio in the spring of 1861 and enlisted in a Tennessee regiment.  One of them was the brother-in-law of future Union general John A. Logan.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-13_07:58:43", "killed": false, "user_key": "39743cac3fc90be6c8ab1a6a2fa2fe3b", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/13/2009 07:58 AM", "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}, "17060734": {"up_voted": false, "ip": "", "has_replies": false, "message": "Kevin,<br><br>No, the subtitle as metaphor won't work, as the discussion here shows. That was just my initial response. Art, storytelling, and the writing of history are not (always) the same thing, as Dr. Bynum has stated in a different way.   <br><br>It is nice to speak with you as well, and thank you for your kind words. Also, you, I and your readers have no doubt that Michaela will get her dissertation written.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-13_08:42:47", "killed": false, "user_key": "9rainbow9", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "07/13/2009 08:42 AM", "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}, "17060735": {"up_voted": false, "ip": "", "has_replies": false, "message": "I appreciate all the thoughtful posts. Let me first point out that the idea that Jones County actually seceded from the Confederacy during the Civil War\u2014that is, drew up documents that created a mini-republic\u2014was once asserted by journalists as though it were fact. Therefore, Sherree, it would not make sense for historians to use it as metaphor unless they wanted to revive that argument. For those who are interested in learning more, I discuss the historiography of this \u201csecession-within-secession\u201d on pages 155-168 of my book, The Free State of Jones.<br><br>For those who have not read Free State of Jones, I would like to clarify several misleading claims made by Ms. Jenkins and Professor Stauffer in their opening remarks to this forum. The authors lay out a dazzling array of documents, stating that \u201cThis is just a bare sampling of what can be found in the Official Records and various Mississippi archives. To ignore these documents \u2013 out of sheer defensiveness \u2014 is to willfully distort the record. It is simply not good scholarship, or history.\u201d<br><br>To accuse me of ignoring the Official Records of the Civil War when in fact I discuss them at length in chapters five and six\u2014they form the backbone of much of my analysis\u2014misrepresents my work to the public or indicates a shocking lack of familiarity with the contents of my book.<br><br>The authors also make much of their book's attention to the important role that Newt Knight played in the administration of Adelbert Ames. In part three of my review of State of Jones, I credit them with employing additional sources beyond those used by me to enrich that discussion. Still, their interpretation of Newt\u2019s role in Reconstruction politics, and his relationship with Governor Ames, does not differ substantially from mine (see chapter seven, \u201cReconstruction and Redemption,\u201d in my Free State of Jones).<br><br>Jenkins and Stauffer also make the following statements:<br><br>1. \u201cNor have scholars previously known that Newton Knight deeded 160 acres of land to the former slave named Rachel Knight, with whom he lived and fathered children. He also deeded land to Rachel\u2019s son Jeffrey. We have copies and can provide them for your viewing.\u201d<br><br>Using the 1870 and 1880 Agricultural Censuses, I reported these transfers of land from Newt to Rachel and their children on p. 145.<br><br>2. \u201cHow many white Southerners do you know who, in 1868, named a son after Ulysses S. Grant?  Newton\u2019s closest friend and comrade, Jasper Collins, did-another fact that has not been properly emphasized previously.\u201d<br><br>On p. 140 of Free State of Jones, I wrote, \u201cJasper Collins celebrated the changing of the political climate by naming a son born in 1867 Ulysses Sherman Grant.\u201d Since throughout my book, I emphasize the firm Unionism of Jasper Collins, I\u2019m at a loss as to how I should have more \u201cproperly emphasized\u201d the naming of a child after a Union general\u2014should I have sent out belated birth announcements to fellow historians?<br><br>3. \u201cWe offer extensive evidence showing that Newton treated the ex-slave Rachel as an equal and common-law wife, raising their children as his own without embarrassment, and effectively living in a black community.\u201d<br><br>I have devoted extensive scholarship to the relationship between Newt and Rachel Knight, publishing essays on them in the Journal of Southern History (May 1998) and in two anthologies before completing The Free State of Jones.  In my book, I provide lengthy analysis of the importance of their relationship for historians of race relations and racial identity in the postbellum and twentieth-century South. In regard to the above statement by the authors, I would further point out that while we know that Newt Knight lived openly with Rachel and their children, we don\u2019t know that he treated her as an equal, or even well. We do know that Newt Knight is believed by many of his descendants to also have fathered upwards to four children by Rachel\u2019s daughter, George Ann. Between 1873 and 1875, some six children were born to Rachel, George Ann, and Newt\u2019s wife, Serena. The fact is that no historian knows for certain the inner details or quality of Newt\u2019s sexual relationships.<br><br>4. \u201cThere is also evidence from more than one source, including the ex-slave Martha Wheeler, that Newton helped build an integrated schoolhouse, a symbol of racial equality, which then was burned down.\u201d<br><br>I tell this story on p.145 of my book.<br><br>5. \u201cAfter all, how many white abolitionists chose to live in a black community?  We know of three:  Albert Morgan, an Oberlin graduate and Union officer who moved to Yazoo, Mississippi after the war and lived with blacks; John Brown, who lived in a black community at Timbucto in the Adirondacks; and to a much lesser degree Gerrit Smith, who helped transform his village of Peterboro, New York, into a model interracial community.\u201d<br><br>That Newt lived among his descendants in a multiracial community is well known and is indeed remarkable, as I emphasize in my entire body of scholarship. However, it was a different sort of choice from those made by Albert Morgan and John Brown, who lived in black communities not comprised of their own family members.<br><br>Thank you all for your interest. Let me end by saying that my motive for laying all this out is my reverence for the craft of history, which has been my profession for some twenty-five years.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-13_08:48:39", "killed": false, "user_key": "a40bfef160182e2b156b14d85fd793a9", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/13/2009 08:48 AM", "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": false, "disqus_logo": false}, "timer": {"timer_url": "http://localhost:8005", "thread_id": "31834017", "user_id": "anonymous", "forum_id": "76173", "hash": -4486708885324428553}, "thread": {"days_alive": 0, "slug": "john_stauffer_and_sally_jenkins_respond", "paginate": false, "num_pages": 1, "num_posts": 41, "per_page": 0, "total_posts": 0, "realtime_paused": true, "id": 31834017, "queued": false}, "reactions_limit": 10, "context": {"show_reply": true, "use_fb_connect": true, "forum_facebook_key": "9a60b0b052150ec4727040702dbdaad0", "use_yahoo": true, "subscribed": false, "use_twitter_signin": true, "use_openid": true, "realtime_speed": 5000}, "reactions_start": 0, "settings": {"debug": false, "disqus_url": "http://disqus.com", "media_url": "http://media.disqus.com"}, "media_url": "http://media.disqus.com"};
	/* */ this.jsonData.cookie_messages = {"user_created": null, "post_has_profile": null, "post_twitter": null, "post_not_approved": null}; this.jsonData.session = {"url": null, "name": null, "email": null}; /* */

	
	this.curPageId = 'dsq-comments';

	this.frames = {};
};

var disqus_popup_reference = null;

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



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

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

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

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

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

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

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

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





Dsq.CSRF_TOKEN = '4f0bfca82e06c976a1efdd7c783a5fd0';
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=cwmemory' +
		'&t=john_stauffer_and_sally_jenkins_respond' +
		'&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://cwmemory.disqus.com/john_stauffer_and_sally_jenkins_respond/latest.rss">' + Dsq.Strings.SUBSCRIBE_BY_RSS + '</a> \
			</span> \
		</div> \
		';

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

		
		

		return html;

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

		html += Dsq.Templates.pagination();


		html += Dsq.Templates.reactions();

		
			html += Dsq.Templates.trackbacks();
		


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

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

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

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

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

		return html;
	};

	this.postBox = function(post_id, use_fallback_iframe) {


		var html;
		var display_sharing_options = Dsq.jsonData.request.is_authenticated;
		if (Dsq.jsonData.request.is_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>'))
							+ ' <a href="' + Dsq.jsonData.settings.disqus_url + Dsq.Urls.REQUEST_USER_PROFILE + '">' + Dsq.jsonData.request.display_username + '</a>'
							+  (Dsq.jsonData.request.is_remote && user_has_email ? ' <small>(<a href="#" onclick="Dsq.Popup.remoteAccountSettings(); return false;">change settings</a>)</small>' : '')
							+  (!Dsq.jsonData.request.is_remote && !Dsq.jsonData.forum.disqus_auth_disabled ? ' <small>(<a href="' + Dsq.jsonData.settings.disqus_url + '/profile/info/" target="_blank">change name</a> or <a href="' + Dsq.jsonData.settings.disqus_url + '/profile/avatar/" target="_blank">picture</a>)</small>' : '')
						+ '</td> \
					</tr> \
					<tr> \
						<td class="dsq-request-user-stats"> \
							<span><big>' + Dsq.jsonData.request.comments_count + '</big> ' + (Dsq.jsonData.request.comments_count == 1 ? 'comment' : 'comments') + '</span> \
							<span><big>' + Dsq.jsonData.request.likes_count + '</big> ' + (Dsq.jsonData.request.likes_count == 1 ? 'like' : 'likes') + '</span> \
							<span><big>' + Dsq.jsonData.request.points + '</big> ' + (Dsq.jsonData.request.points == 1 ? 'point' : 'points') + '</span> \
						</td> \
					</tr> \
				</table> \
			</div> \
			';
			return html;
		};

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

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


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



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

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




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

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

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

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

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

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

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

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



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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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



	
	this.chooseSubscribe = function(post_id) {

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

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

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

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

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

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

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

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

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

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

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

		d = auth_data;

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

				body.appendChild(edit_area);

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

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

		Dsq.Templates.toggleEdit(post_id);
	};

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

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

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

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

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

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

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

		}

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

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

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

		var extra_params = '';

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

		Dsq.$('dsq-pagination').innerHTML += '<img src="http://media.disqus.com/images/loading-small.gif">';
		
		if(el_clicked) {
			Dsq.Templates.setLoadingButton(el_clicked);
		}
		
		Dsq.Utils.execScript('http://disqus.com/forums/cwmemory/thread.js'
			+ '?slug='	+ 'john_stauffer_and_sally_jenkins_respond'
			+ '&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/cwmemory/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://cwmemory.disqus.com/john_stauffer_and_sally_jenkins_respond/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/cwmemory/_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">41</span> Comments\
	 &nbsp;\
	 <span class="dsq-item-feed">\
	 <a href="http://cwmemory.disqus.com/john_stauffer_and_sally_jenkins_respond/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://cwmemory.disqus.com/john_stauffer_and_sally_jenkins_respond/">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">\
	 </div>\
		';

		
			html = Dsq.Templates.authPost() + html;
		

		
		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.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://cwmemory.disqus.com/john_stauffer_and_sally_jenkins_respond/trackback/';
		}

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

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

		return html;
	}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

		return '<h3 class="dsq-h3-reactions">Reactions</h3><ul id="dsq-reactions" class="dsq-reactions">' + html + '</ul>';
	};
	
	this.missingPermissions = function() {
		return '';
	};

	//
	// 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 are commenting as a Guest. You may choose to log into an existing DISQUS Profile, your Facebook, Twitter or OpenID account to comment on Civil War Memory" onclick="Dsq.Popup.helpBadges(); return false">Optional:</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:31834017" 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> \
								 \
								&nbsp;or&nbsp; \
									 <img src="http://media.disqus.com/images/openid-login-icon.png" alt="" /> \
									 <a href="#" onclick="Dsq.OpenID.requestURL(); return false">OpenID</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'				: 'cwmemory',
			't'				: 'john_stauffer_and_sally_jenkins_respond',
			// 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/cwmemory/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/cwmemory/john_stauffer_and_sally_jenkins_respond/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/cwmemory/thread.js'
			+ '?slug='	+ 'john_stauffer_and_sally_jenkins_respond'
			+ '&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/cwmemory/thread.js'
			+ '?slug='	+ 'john_stauffer_and_sally_jenkins_respond'
			+ '&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/cwmemory/subscribe.js'
				+'?status=' 	+ status
				+ '&slug='		+ 'john_stauffer_and_sally_jenkins_respond'
				+ '&email=' 	+ encodeURIComponent(email));

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

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

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

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

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

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

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

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

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

	return obj;
}();

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

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

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

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

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

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

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

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

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

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

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

	this.check = function() {
		if (!ongoing_request && Dsq.jsonData.realtime_enabled) {
			if (prev_script) {
				prev_script.parentNode.removeChild(prev_script);
			}
			ongoing_request = true;
			prev_script = Dsq.Utils.execScript('http://disqus.com/forums/31834017/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/cwmemory/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/cwmemory/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-17060705">\
	 <div id="dsq-comment-header-17060705" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060705" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17060705">chris meekins</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060705" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060705" class="dsq-comment-message">Individual acts of loyalty to the Union do not in and of themselves constitute seceding from the secession.  Even a series of collective acts of Unionism do not stand as such - to secede is a willful act of a body politic declaring a principle on which they stand or refute, etc.  I am sympathetic to the authors working with a series of loyal acts or even groups of people opposing Confederate policy.  And that is exactly what should be noted and discussed.  In my little burg of Unionism in neNC we have Quakers and Wesleyan Methodists, Constitutional Unionists and probably a few conscript dodgers - many vote against secession when given the chance (May 1861), many vote against the larger issue in 1860 by voting for John Bell but when pressed they would accept assistance from either power structure (Confederate or Union) until, after two years of relentless guerrilla warfare, General Wild\'s raid proved to the local Unionists that neither power structure would or could protect them.  They meet in a legal body and drafted a resolution with two main points: the requested removal of all forces from the region (Union and Confederate) and the end to blockade running in the area (by this they meant the illegal traffic in goods flowing through the area).  So, while expressing Union sentiments through 1862 and 1863, and some very overt acts at that, it was not until December 19, 1863 when 501 local men signed the two part resolution that I can say there was a secession from the secession: truthfully it was more of an attempt to secede from the war.<br>Although this rebuttal shows plenty of scholarship and resources I think it still comes up short of the claim of showing secession.  It does show a strong tether to the old Union before the war and a connection to the changed Union post-Emancipation Proclamation.   Show me a body politic voting on a resolution and then I will have no choice but to agree.  Otherwise, stay within your evidence - which still makes a convincing argument just not the exact one claimed. In MHO.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060706">\
	 <div id="dsq-comment-header-17060706" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060706" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060706" href="http://bullrunnings.wordpress.com/" target="_blank" rel="nofollow">Harry</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060706" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060706" class="dsq-comment-message">I have Bynum\'s book, though I\'ve not read it.  I\'ve read parts of her reviews of this new book, and don\'t find them to be of the character depicted in the "response" above.  In addition, I see  some of the new authors\' defenses against "charges" of "conjecture" to be based on just that, conjecture - "must have beens" and "probablys" (see their evidence presented in support of the notion that Knight was a primitive bapitst \'fo de woah).  But maybe that\'s just me.  <br><br>It does appear that this new book draws a sharper line between "black hats" and "white hats".  That should play better on the big screen.<br><br>Sorry for all the quotation marks.  Maybe if I throw in a few more parenthetical comments and a couple of colons, I can pass myself off as an academic?  Probably not.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060707">\
	 <div id="dsq-comment-header-17060707" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060707" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060707" href="http://acwresearcher.wordpress.com" target="_blank" rel="nofollow">acwresearcher</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060707" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060707" class="dsq-comment-message">First, let me say I have read portions of both <i>The Free State of Jones</i> by Victoria Bynum and <i>The State of Jones</i> by John Stauffer and Sally Jenkins, but I am still working my way through both.<br><br>That said, I do not agree with Stauffer\'s and Jenkins\' claim that Newt Knight\'s acceptance of and membership in, at any point, the Primitive Baptist denomination is sufficient evidence that he was influenced by his religious beliefs to be an equality-minded abolitionist. Indeed, Primitive Baptists did have the "central tenet" of "the equality of souls," but so did almost every other Southern denomination before the war. In religious terms, the equality of the soul before God at judgment after death is vastly different from equality of the soul in society while living. The term "equality of souls" cannot be thought to mean both as it regards antebellum Christian doctrine and denominations in the South.<br><br>While the authors of <i>State of Jones</i> do make arguments that Knight treated blacks differently and collaborated with other whites to ensure their place in postwar Southern society, I believe that is a far cry from saying <b>he</b> thought of them as equals, absent personal writings by him to that effect. The specific point here is that all of the authors being discussed here -- Bynum, Jenkins and Stauffer -- make this same claim of Knight treating blacks differently. The interpretation of how it motivated him is vastly different and, in my opinion, Stauffer and Jenkins read more into the available evidence than can be reasonably concluded.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060708">\
	 <div id="dsq-comment-header-17060708" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060708" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060708" href="http://historyenthusiast.blogspot.com/" target="_blank" rel="nofollow">The History Enthusiast</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060708" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060708" class="dsq-comment-message">Very interesting response.  I plan on checking out this book for myself, and you\'ve given some food for thought.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060709">\
	 <div id="dsq-comment-header-17060709" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060709" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17060709">Sally Jenkins</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060709" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060709" class="dsq-comment-message">Let’s take a look at the facts about Newton Knight that are not disputed. <br><br>1.	He did not own slaves, despite the fact that his grandfather was one of the largest slave owners in Jones County. <br>2.	He deserted the Confederate Army not once but twice.<br>3.	He led an armed resistance against the Confederacy in Jones County.  About 125 men fought with him, many of whom enlisted formally in the Union Army after they were driven out of Jones. Fifty-three men from Jones served in Union uniforms.<br>4.	He was aided by a slave named Rachel during the war, and fathered a child with her.<br>5.	In 1865 he liberated a black child from an unrepentant slave-owner. <br>6.	In 1865 he carried out written orders from Union officers occupying Jones County.<br>7.	Also In 1865 he also met with Union General William McMillen in Meridian and received several thousands pounds of rations from the federal stores.<br>8.	He applied five times for a Union pension.<br>9.	His pension case was championed by Adelbert Ames, and three other of the most fervent Unionists and Radical Republicans in Congress.<br>10.	He accepted a commission from Adelbert Ames as captain of a black militia unit at the height of the postwar racial terrors in Mississippi.<br>11.	After the war he lived with the ex-slave named Rachel, with whom he fathered several children that he acknowledged and provided for as his own. <br>12.	In 1876 he deeded Rachel 160 acres.<br>13.	His white wife left him, and he lived the rest of his live with Rachel’s family in a black community.<br>14.	He was buried in the cemetery among Rachel’s family, despite the fact that Mississippi mandated segregated cemeteries.<br><br>Now let’s look at the facts about Jones County that are beyond dispute<br><br>1.	The people of Jones County voted against secession. When their delegate voted for secession at the state convention, they burned him in effigy.<br>2.	Jones County was the site of armed resistance against the Confederacy that required two interventions by Rebel troops, one led by Henry Maury, and another led by Robery Lowry, neither of which succeeded in quelling the resistance.<br>3.	In March 1864 Confederate officials could no longer collect Rebel taxes or conduct official business there, and reports reached the Confederate high command that a federal flag had been raised over the Jones Co. courthouse.<br>4.	Fifty-three men from Jones County went to New Orleans to formally enlist in the Union Army.<br>5.	The reports of highly organized Unionist activity Jones in the Official Records are unmatched by reports from any other Mississippi county.<br>6.	After the surrender, beaten Confederates returning to Jones were so shamed by the Unionist activities during the War that they petitioned the statehouse to change the name of the county to Davis.<br><br>No historian disputes any of the above, all of which is supported by records. So I really don’t see what the argument is about, or how the conclusions of our book go beyond the evidence. <br> <br>Debate about other pieces of evidence that are slightly more equivocal – whether Knight was a Primitive Baptist before the War or after, and whether he deserted just before Vicksburg or just after it – should not obscure the main facts, or the totality of the record on Newton Knight and Jones County.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060710">\
	 <div id="dsq-comment-header-17060710" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060710" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060710" href="http://www.civilwarcauses.org/" target="_blank" rel="nofollow">James F. Epperson</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060710" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060710" class="dsq-comment-message">Ms.Jenkins:  I don\'t have a dog in this fight, I\'m just trying to decide which book to buy.  But I have to agree with Mr. Meekins, that acts of loyalty to the US or resistance to the CS do not constitute an act of secession from the CS.  So it would seem that your book has at least one problematic claim.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060711">\
	 <div id="dsq-comment-header-17060711" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060711" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060711" href="http://renegadesouth.com/" target="_blank" rel="nofollow">victoria bynum</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060711" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060711" class="dsq-comment-message">Sally Jenkins and John Stauffer have created the proverbial straw man. They expend great energy and time replicating documents (particularly from the Official Records of the Civil War), practically all of which I myself used in the FREE STATE OF JONES to argue, as they do, that Newt Knight was a Unionist who led a powerful insurrection against the Confederacy. <br><br>As Chris Meekins explained in an earlier comment, they conflate secession from the Confederacy with insurrection. Furthermore, in their attempt to present their work as a strikingly new interpretation, they insist that I failed to perceive Newt Knight\'s opposition to the Confederacy during and after the war. How absurd! If they believe that, they obviously did not read my book.  <br><br>I certainly agree with the authors that scholarship is (or should be) "a shared and diverse community of multiple perspectives and interpretations." That\'s why I conferred with every major author of the Free State of Jones--Ethel Knight, Rudy Leverett, and Kenneth Welch--living at the time that I researched my book. The Free State of Jones, as I have pointed out time and time again on my blog, Renegade South, is a living history. My forthcoming book will address multiple areas of analysis missing in STATE OF JONES.  And so it goes.  Scholars will continue to research and write the history of the Free State of Jones long after the present generation is gone. <br><br>I stand by my three-part review of STATE OF JONES, which addresses the authors\'  other misrepresentations of my work.<br><br>Victoria E. Bynum<br>Renegade South</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060713">\
	 <div id="dsq-comment-header-17060713" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060713" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060713" href="historicalmemory.googlepages.com" target="_blank" rel="nofollow">Marc Ferguson</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060713" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060713" class="dsq-comment-message">I have read neither book myself, though I have great respect for both John Stauffer and Victoria Bynum as historians. If one of the disputes here is over whether or not Jones County "seceded" from the Confederacy, I would ask whether the Unionists of Jones County ever considered secession itself legitimate. If so, then might their actions constitute not so much a secession in itself, but an assertion of the illegitimacy of the Confederacy?<br><br>Marc</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060714">\
	 <div id="dsq-comment-header-17060714" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060714" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17060714">Brooks D. Simpson</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060714" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060714" class="dsq-comment-message">Ms. Jenkins:  Are any of the points you present as undisputed by historians disputed by Dr. Bynum?  If not, how do your books differ?  What information would assist Mr. Epperson, for example, in making a choice?</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060715">\
	 <div id="dsq-comment-header-17060715" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060715" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17060715">Brooks D. Simpson</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060715" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060715" class="dsq-comment-message">I’ve read this exchange with some interest.  Disclaimers: I’ve read Bynum’s book, and I look forward to reading Jenkins and Stauffer’s book.  I barely know two of the participants in the exchange: Stauffer through an e-mail to one of my students, and perhaps (or perhaps not) Bynum at an introduction at a historians’ meeting (I have worked with one of her students, Mark Weitz).  Like Jim Epperson, I don’t have a dog in this fight.<br><br>That said, I have to question why Jenkins and Stauffer feel the need to offer their opinions on what they believe to be Bynum’s motives for offering her review of the book.  They say: “Debate is one thing; we welcome that-indeed we would be happy to debate Victoria Bynum (or a disinterested scholar) on your blog or any other venue.  It’s quite another thing for Bynum to try to discredit our book, The State of Jones, as part of her effort to trumpet her own book and remain the only source on the subject.”  I find no evidence that such is Bynum’s motive.  Are Jenkins and Stauffer, who cite Bynum’s book as authority for some of their statements, questioning her knowledge of the subject?  Fine.  Are they taking issue with her criticism?  Fine.  But I’d appreciate it if we let that criticism rise or fall on the documents and how one interprets them rather than to make unsubstantiated claims about an author’s motives.  After all, they aren’t disinterested scholars in this matter, either.  <br><br>Jenkins and Stauffer later take another swing at Bynum:  “Conceptually, there is a basic divide between Bynum and us:  We view scholarship as a shared and diverse community of multiple perspectives and interpretations, which together adds to our understanding of the past.  Bynum sees scholarship as a form of turf warfare, with only one valid interpretation of the past, which effectively renders history useless.”  I see nothing in Bynum’s review to support that characterization of her motive.  I might, in fact, argue that I find Jenkins and Stauffer engaging in a turf war in which they declare that they stand on higher ground.  That ground might well prove shaky.  <br><br>Unlike Jenkins and Stauffer, Bynum does not speculate about the motives behind the work of Jenkins and Stauffer.  Blogger Harry Smeltzer implicitly did:  “It does appear that this new book draws a sharper line between ‘black hats’ and ‘white hats’. That should play better on the big screen.”  I think it would be wrong to claim without any evidence that Jenkins and Stauffer were thinking of offering a simplified view of the past in order to make it more attractive to movie producers and thus enrich themselves.  But I also can’t escape feeling that the way in which Jenkins and Stauffer attack Bynum that they don’t invite the same sort of retort in kind.<br><br>I draw two conclusions from reading the rejoinder.  First, I think there’s a good deal of conjecture and speculation in The State of Jones in certain areas, because the authors’ rejoinder contains evidence of such an approach.  Second, I do have to scratch my head over the authors’ handling of the issue of secession and exactly how Kevin Levin addressed that issue.  For the authors to claim that the Free State of Jones seceded is to accord a legitimacy to secession that participants, who viewed themselves as Unionists, would have questioned.  In pressing that argument, they slightly but significantly distort what Levin said, almost in passing.  Levin said: “For instance, despite the book’s subtitle there is no evidence that a declaration of secession was ever issued.”  Jenkins and Stauffer claim that Levin “state[s], citing Victoria Bynum, “there is no evidence” that Jones County seceded from the Confederacy.”  That’s not what Levin said: he said there was no declaration of secession issued.  Jenkins and Stauffer don’t produce documentation that one was issued.  Nor was that point a minor one to Newt Knight, as even Jenkins and Stauffer admit.  As they say in their rebuttal letter, “Newton Knight was interviewed by journalist Meigs Frost in 1921 and asked if Jones had actually seceded. His reply was perfectly truthful, and showed the depth of his Constitutional beliefs. Jones didn’t have to formally secede from the Rebel state, he averred, because it had never been disloyal to the federal government in the first place.”  Exactly.  That would explain why there was no declaration of secession, and it reveals how Knight viewed the situation: he was a loyalist, a Unionist, not a secessionist.  <br><br>Bynum offered her review of the work of Jenkins and Stauffer without speculating as to their motives.  Unfortunately, Jenkins and Stauffer could not do the same in replying to her review.  In the process they offered a rebuttal which, ironically, lends even more credence to criticisms of the book and will lead to even more speculation as to their own motives.  That’s unfortunate, but it is of their own doing.  <br><br>In closing, I must confess that in reading this exchange I was reminded of another recent blogging topic highlighted by Levin and blogger David Woodbury: the attack on author Wiley Sword by admirers of John Bell Hood.  Sword’s critics became rather personal in their characterization of Sword’s work and ultimately of Sword himself.  My own comment in that thread suggested that one could effectively criticize another historian’s scholarship without engaging in speculation about that historian’s motives.  After reading the rejoinder by Jenkins and Stauffer, especially in how they characterize Newt Knight, I am also reminded of something else I once said … namely, that it’s a bad business to fall in love with dead people.  I offer that unsolicited advice as mere suggestion.<br><br>Brooks D. Simpson<br>ASU Distinguished Foundation Professor<br>Arizona State University</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060716">\
	 <div id="dsq-comment-header-17060716" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060716" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17060716">Sally Jenkins and John Stauffe</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060716" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060716" class="dsq-comment-message">Thanks for commenting, all.  To address the "problematic claim" of Jones Co\'s secession issue: We make no such claim, we make it clear in the opening chapter of the book that Jones County didn\'t issue a formal act or declaration, or if it did, that piece of paper hasn\'t been found. During his Meridian campaign, which came within 20 miles of Jones, William T. Sherman did receive a declaration from a body of anti-Confederates in the region, declaring their "independence." He considered it important enough to forward to Henry Halleck. However, the paper has been lost, so we can\'t say specifically where it came from. All we know is that it was from the basic vicinity of Southeast Mississippi.<br><br>What we say in the book is exactly what the evidence we quoted from supports: the people of Jones resisted the Confederacy by force of arms until they ran Rebel authority out of the county, and asserted their Union loyalties, and they did so collectively.  In surveying the Official Records and other documents on Jones, multiple sources refer to public meetings, and public decision-making by the citizens there.  One of Knight\'s chief concerns was that his right to due process had been abrogated. Among the first things he and his men did when it became clear the Confederacy had lost the war was come out of the woods and try to vote.  If Knight were here he\'d tell you Jones didn\'t have to secede, because it had never left the Union in the first place. He\'d argue such a formality would have given the Confederacy a legitimacy it didn\'t deserve. He and his followers didn\'t recognize it as legal (and neither did most Northerners). Immediately after the war, Knight and his compatriots wrote a petition to the statehouse asserting that they had remained loyal to the Union in the face of the secession avalanche, and therefore they should be promptly appointed to replace the Confederate-loyals holding the local civic offices.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060717">\
	 <div id="dsq-comment-header-17060717" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060717" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17060717">Sally Jenkins and John Stauffe</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060717" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060717" class="dsq-comment-message">Mr. Simpson, thanks for your question, and your comments. I listed those points that, if memory of her work serves, Ms. Bynum wouldn\'t dispute. I\'m looking for common ground.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060718">\
	 <div id="dsq-comment-header-17060718" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060718" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060718" href="http://www.civilwarcauses.org/" target="_blank" rel="nofollow">James F. Epperson</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060718" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060718" class="dsq-comment-message">This is really a "partially on-topic question" rather than a comment.  I used to live in Alabama, and there we had Winston County, which was supposed to be a hot-bed of resistance to the Confederacy.  Is there any scholarly work on Winston County?</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060719">\
	 <div id="dsq-comment-header-17060719" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060719" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17060719">Sally Jenkins and John Stauffe</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060719" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060719" class="dsq-comment-message">To add to the reply to Prof. Simpson, the differences a reader would see between our book and Dr. Bynum\'s would be chiefly in presentation, and conclusion. Our book is a narrative, Dr. Bynum\'s is a social history. We believe that the basic narrative of Newton Knight and Jones County -- which I tried to lay out in those points -- is powerful, and leads to a bolder conclusion about who he was and what happened in Jones County. We also believe we were able to add some things to the documentary record of Newton Knight built by Dr. Bynum -- for one thing, she is the first scholar to recognize Rachel Knight\'s role in his life -- especially concerning his behavior during Radical Reconstruction.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060720">\
	 <div id="dsq-comment-header-17060720" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060720" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17060720">Sally Jenkins</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060720" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060720" class="dsq-comment-message">Mr. Epperson, the answer is simple. You should buy both. One hopefully does not come at the other\'s expense.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060721">\
	 <div id="dsq-comment-header-17060721" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060721" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17060721">Sally Jenkins</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060721" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060721" class="dsq-comment-message">To further answer Prof. Simpson\'s question about how the books differ for readers: the chief difference a reader would see is in presentation, and conclusion. Our book is a narrative, and we believe the basic narrative of Newton Knight\'s life -- outlined chronologically in the points above -- is extremely powerful and leads to a bold conclusion about who he was.  A reader would also hopefully feel that we were able to add something to the impressive documentary record of Knight built by Dr. Bynum.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060722">\
	 <div id="dsq-comment-header-17060722" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060722" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17060722">Sally Jenkins</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060722" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060722" class="dsq-comment-message">For Unionism in Alabama see Margaret Storey\'s gripping Loyalty and Loss, which contains some material about Winston County.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060723">\
	 <div id="dsq-comment-header-17060723" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060723" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060723" href="http://www.civilwarcauses.org/" target="_blank" rel="nofollow">James F. Epperson</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060723" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060723" class="dsq-comment-message">Ms. Jenkins:  Thanks much for the suggestion of the Storey book.  As for buying both your book and Ms. Bynum\'s, while I am sure booksellers all over would applaud this idea, the young lady in charge of the Epperson family finances would not :-(  I\'m going to have to choose, alas.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060724">\
	 <div id="dsq-comment-header-17060724" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060724" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060724" href="http://www.cwmemory.com" target="_blank" rel="nofollow">Kevin Levin</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060724" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060724" class="dsq-comment-message">Sally and John,<br><br>You state the following in your review of Bynum\'s critique: <br><br>"Our book was commissioned by the legendary publisher Phyllis Grann of Doubleday Books, and it is firmly documented in every respect."<br><br>However, in the first paragraph in the acknowledgments section of the book you state:<br><br>"The origin of this project was unusual-ordinarily the film comes after the book. In this case, the opposite was true: there would not be a book without film director and screenwriter Gary Ross, who brought the powerful narrative of Newton and Rachel Knight to us as a gift, and shared his vision of them as forgotten American patriots.  It was Gary who introduced us to each other and proposed that we work together on a book and it was Gary who presented the idea to Phyllis Grann at Doubleday."<br><br>Now that I\'ve read most of the book as well as Professor Bynum\'s critique it is clear to me that there are legitimate questions to be asked about your interpretation.  Of course, there is nothing surprising about that given the nature of historical studies, but what do you say to people who might be concerned that that the genesis of this project was a film director with the promise of a movie?  How does Ross\'s screenplay, "The Free State of Jones" differ from your own.  What exactly did his vision of the Knight\'s as "forgotten American patriots" entail?  I hope you do not interpret this question as a challenge to the integrity of your work, but there is a discrepancy between what you say in the book and this post.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060725">\
	 <div id="dsq-comment-header-17060725" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060725" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17060725">Sally Jenkins</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060725" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060725" class="dsq-comment-message">Hi Kevin, <br><br>No discrepancy.  As we said, our book was contracted by Doubleday, via Phyllis Grann. The filmmaker Gary Ross indeed plans to do a film some day about Newton Knight and Jones County, and four years ago he contacted John Stauffer and asked him to consult on his project. It was thus through Gary Ross that John first became aware of the Jones material and began working on the subject, for which we thank him.  If you\'ll turn to the dedication, you\'ll see that we even dedicate the book to both Gary, who has become a friend, and Phyllis together.  Gary Ross\'s film is not in production at this time, but he is no mean historian, and very faithful to the subject, as his film Seabiscuit attests, and we look forward to seeing his own take on Jones some day. <br><br>A note: it has been put about that our book was rushed into print to accomodate a film project, but that\'s not true. We actually received an extension so that we could dig deeper.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060726">\
	 <div id="dsq-comment-header-17060726" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060726" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060726" href="http://www.cwmemory.com" target="_blank" rel="nofollow">Kevin Levin</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060726" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060726" class="dsq-comment-message">Sally,<br><br>Thanks for the response.  I want to emphasize that I am not suggesting in any way that your book was rushed to production.  I should also clarify that I am not suggesting that the book was written for the purposes of a movie.  Thanks again for taking the time to clarify.<br><br>Note: I just noticed that it was a poor choice of words to say "promise."  It suggests that I am implying a promise to you, which is not what I was going for.  What I meant to ask is that given that Stauffer read the script early on I was wondering how the book\'s interpretation deviates.  For example, what does the script say about Primitive Baptists, the question of the secession of Jones County, and the relationship between Newt and Rachel Knight?  Thanks.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060727">\
	 <div id="dsq-comment-header-17060727" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060727" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060727" href="http://renegadesouth.com/" target="_blank" rel="nofollow">victoria bynum</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060727" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060727" class="dsq-comment-message">Since the authors now admit that they actually DON\'T argue in their book that Jones County seceded from the Confederacy, I repeat the question I asked in part two of my review of STATE OF JONES. Why is the subtitle of their book "The Small Southern County that Seceded From the Confederacy"? I don\'t believe I\'ve ever before seen a history book where the title so contradicts the book\'s contents. Was this a publisher\'s marketing decision?<br><br>Victoria E. Bynum<br>Renegade South</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060728">\
	 <div id="dsq-comment-header-17060728" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060728" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060728" href="http://renegadesouth.com/" target="_blank" rel="nofollow">victoria bynum</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060728" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060728" class="dsq-comment-message">I would like to return to the following statements by Jenkins and Stauffer: <br><br>"Knight was a Primitive Baptist, a distinctly pre-War branch that flourished in Mississippi from the 1820s on, as Randy Sparks and other scholars have documented, and a central tenet of which was the equality of souls. Our identification of Newton as a Primitive Baptist stems from multiple sources, including the fact that it was the dominant religion in the area and that both his father and grandfather were Primitive Baptists."<br><br>First, would the authors please provide evidence that Newt\'s father and grandfather were Primitive Baptists? Second, following up on Greg Rowe\'s earlier post, I would like to know what evidence they have that there was an ANTI-SLAVERY Primitive Baptist church in Jones County, Mississippi. Beyond 1820-1830, such a church in the South would have been extremely rare according to Randy J. Sparks, Anne Loveland, and Christine Heyrman, three historians of religion whose work greatly influenced my own lengthy discussion of religious forces in Jones County before the war. <br><br>Finally, the authors\' assertion that Primitive Baptist churches were dominant in Jones County is disputed by Suzanne Spell\'s 1961 master\'s thesis, "History of Jones County"  (Mississippi College). Spell identified 18 churches in the county in 1860: 6 Baptist, 6 Methodist, 4 Congregational Methodist, 1 Presbyterian, and 1 Primitive Baptist.<br><br>Thanks,<br>Victoria Bynum<br>Renegade South</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060729">\
	 <div id="dsq-comment-header-17060729" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060729" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17060729">Michael Lynch</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060729" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060729" class="dsq-comment-message">I\'m sure there are people out there who might dismiss a study out of hand because it originated at a filmmaker\'s suggestion, but I don\'t think that\'s a legitimate basis on which to judge a work of history.  I hasten to add that I\'m not accusing Kevin of doing this; I\'m just responding to the question.<br><br>The reason for a historian\'s interest in undertaking a book project shouldn\'t reflect negatively on the finished product.  There are all sorts of reasons a scholar might undertake a project--someone\'s suggestion, a childhood visit to a site, a desire for tenure, intellectual curiosity, a mortgage, or whatever.  But it\'s still the finished product that remains to be evaluated on its own merits.  Otherwise, we commit the same fallacy seen in the recently-discussed John Bell Hood controversy, impugning a scholar\'s motives rather than addressing the work.<br><br>I stress again that I\'m not accusing Kevin, Dr. Bynum, or anybody else here of having this attitude.  They\'ve raised legitimate questions about evidence and argument, and that\'s what historians do.  I\'m just throwing in my two cents regarding some of the possible questions about the book\'s origins that, as Kevin mentioned, some people may ask.<br><br>--ML</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060730">\
	 <div id="dsq-comment-header-17060730" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060730" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17060730">toby</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060730" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060730" class="dsq-comment-message">Most of this is new to me, and Newton Knight sounds like a helluva guy. Obama should be sending a wreath to his grave every year, if not honouring it with a personal visit.<br><br>I have always felt that historians have made a meal of highlighting Northern divisions (draft resistance, draft riots, Copperheadism etc.) while ignoring divisions in the Confederacy, like bread riots,  Jones County &amp; the existence of units like the 1st Alabama Cavalry.  If a bunch of Illinois farmers had gone to fight for the Confederacy, how many films and books would have been published about them?<br><br>I cannot help but wonder what the "libertarian" sympathizers with the Confederacy would make of Jones County.<br><br>On this current debate, Victoria Bynum gets my sympathy vote, but also my vote on the facts presented so far. Her presentation has a better "feel" to it as a balanced examination of the extant evidence.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060731">\
	 <div id="dsq-comment-header-17060731" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060731" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17060731">Sherree Tannen</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060731" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060731" class="dsq-comment-message">Kevin,<br><br>Toby highlighted what is constructive about this debate; the story of Newt Knight is being presented to a broader audience. <br><br>Knight\'s story would have remained part of local history and folklore only, had Dr. Bynum not researched the history in depth, and then written the history and sought and obtained a publisher.  Since the authors of State of Jones cite Dr. Bynum\'s work, yet disagree with her interpretation, it seems to me that Dr. Bynum should have been contacted prior to publication of the book, not to quell debate, but as a matter of simple courtesy.<br><br>On the issue of the subtitle of State of Jones:<br><br>To me, this issue seems to be one of semantics, but I am not an historian, and that is the salient point. I initially read the subtitle of State of Jones as a metaphor used to describe the independent spirit of the state of Jones.  I did not read the subtitle to mean that the state of Jones actually seceded from the Confederacy. That is one of the differences between history and art, however. Metaphors are difficult to document. <br><br>Congratulations to Michaela on her recent accomplishments!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060732">\
	 <div id="dsq-comment-header-17060732" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060732" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060732" href="http://www.cwmemory.com" target="_blank" rel="nofollow">Kevin Levin</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060732" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060732" class="dsq-comment-message">Sherree,<br><br>Nice to hear from you.  I read your comment over at Renegade South and thought it was very fair and quite thoughtful.  I honestly don\'t know what to think about the title of the book, though it\'s difficult to explain it away as a metaphor.  It is my hope that the authors will eventually address some of the questions posed to them in the comments section.  <br><br>Thanks for the kind words re: Michaela\'s successful defense.  Now all she has to do is write the damn dissertation. :)</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060733">\
	 <div id="dsq-comment-header-17060733" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060733" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060733" href="http://www.civilwarcauses.org/" target="_blank" rel="nofollow">James F. Epperson</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060733" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060733" class="dsq-comment-message">"If a bunch of Illinois farmers had gone to fight for the Confederacy..."  ---  Actually, about three dozen men from Williamson County, Illinois, crossed the Ohio in the spring of 1861 and enlisted in a Tennessee regiment.  One of them was the brother-in-law of future Union general John A. Logan.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060734">\
	 <div id="dsq-comment-header-17060734" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060734" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17060734">Sherree Tannen</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060734" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060734" class="dsq-comment-message">Kevin,<br><br>No, the subtitle as metaphor won\'t work, as the discussion here shows. That was just my initial response. Art, storytelling, and the writing of history are not (always) the same thing, as Dr. Bynum has stated in a different way.   <br><br>It is nice to speak with you as well, and thank you for your kind words. Also, you, I and your readers have no doubt that Michaela will get her dissertation written.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060735">\
	 <div id="dsq-comment-header-17060735" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060735" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060735" href="http://renegadesouth.com/" target="_blank" rel="nofollow">victoria bynum</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060735" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060735" class="dsq-comment-message">I appreciate all the thoughtful posts. Let me first point out that the idea that Jones County actually seceded from the Confederacy during the Civil War—that is, drew up documents that created a mini-republic—was once asserted by journalists as though it were fact. Therefore, Sherree, it would not make sense for historians to use it as metaphor unless they wanted to revive that argument. For those who are interested in learning more, I discuss the historiography of this “secession-within-secession” on pages 155-168 of my book, The Free State of Jones.<br><br>For those who have not read Free State of Jones, I would like to clarify several misleading claims made by Ms. Jenkins and Professor Stauffer in their opening remarks to this forum. The authors lay out a dazzling array of documents, stating that “This is just a bare sampling of what can be found in the Official Records and various Mississippi archives. To ignore these documents – out of sheer defensiveness — is to willfully distort the record. It is simply not good scholarship, or history.”<br><br>To accuse me of ignoring the Official Records of the Civil War when in fact I discuss them at length in chapters five and six—they form the backbone of much of my analysis—misrepresents my work to the public or indicates a shocking lack of familiarity with the contents of my book.<br><br>The authors also make much of their book\'s attention to the important role that Newt Knight played in the administration of Adelbert Ames. In part three of my review of State of Jones, I credit them with employing additional sources beyond those used by me to enrich that discussion. Still, their interpretation of Newt’s role in Reconstruction politics, and his relationship with Governor Ames, does not differ substantially from mine (see chapter seven, “Reconstruction and Redemption,” in my Free State of Jones).<br><br>Jenkins and Stauffer also make the following statements:<br><br>1. “Nor have scholars previously known that Newton Knight deeded 160 acres of land to the former slave named Rachel Knight, with whom he lived and fathered children. He also deeded land to Rachel’s son Jeffrey. We have copies and can provide them for your viewing.”<br><br>Using the 1870 and 1880 Agricultural Censuses, I reported these transfers of land from Newt to Rachel and their children on p. 145.<br><br>2. “How many white Southerners do you know who, in 1868, named a son after Ulysses S. Grant?  Newton’s closest friend and comrade, Jasper Collins, did-another fact that has not been properly emphasized previously.”<br><br>On p. 140 of Free State of Jones, I wrote, “Jasper Collins celebrated the changing of the political climate by naming a son born in 1867 Ulysses Sherman Grant.” Since throughout my book, I emphasize the firm Unionism of Jasper Collins, I’m at a loss as to how I should have more “properly emphasized” the naming of a child after a Union general—should I have sent out belated birth announcements to fellow historians?<br><br>3. “We offer extensive evidence showing that Newton treated the ex-slave Rachel as an equal and common-law wife, raising their children as his own without embarrassment, and effectively living in a black community.”<br><br>I have devoted extensive scholarship to the relationship between Newt and Rachel Knight, publishing essays on them in the Journal of Southern History (May 1998) and in two anthologies before completing The Free State of Jones.  In my book, I provide lengthy analysis of the importance of their relationship for historians of race relations and racial identity in the postbellum and twentieth-century South. In regard to the above statement by the authors, I would further point out that while we know that Newt Knight lived openly with Rachel and their children, we don’t know that he treated her as an equal, or even well. We do know that Newt Knight is believed by many of his descendants to also have fathered upwards to four children by Rachel’s daughter, George Ann. Between 1873 and 1875, some six children were born to Rachel, George Ann, and Newt’s wife, Serena. The fact is that no historian knows for certain the inner details or quality of Newt’s sexual relationships.<br><br>4. “There is also evidence from more than one source, including the ex-slave Martha Wheeler, that Newton helped build an integrated schoolhouse, a symbol of racial equality, which then was burned down.”<br><br>I tell this story on p.145 of my book.<br><br>5. “After all, how many white abolitionists chose to live in a black community?  We know of three:  Albert Morgan, an Oberlin graduate and Union officer who moved to Yazoo, Mississippi after the war and lived with blacks; John Brown, who lived in a black community at Timbucto in the Adirondacks; and to a much lesser degree Gerrit Smith, who helped transform his village of Peterboro, New York, into a model interracial community.”<br><br>That Newt lived among his descendants in a multiracial community is well known and is indeed remarkable, as I emphasize in my entire body of scholarship. However, it was a different sort of choice from those made by Albert Morgan and John Brown, who lived in black communities not comprised of their own family members.<br><br>Thank you all for your interest. Let me end by saying that my motive for laying all this out is my reverence for the craft of history, which has been my profession for some twenty-five years.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060736">\
	 <div id="dsq-comment-header-17060736" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060736" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060736" href="http://www.cwmemory.com" target="_blank" rel="nofollow">Kevin Levin</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060736" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060736" class="dsq-comment-message">Vikki,<br><br>You\'ve been very patient in your handling of the response by Jenkins and Stauffer and I appreciate that.  I have to say that I am disappointed that they have not been more active in engaging you and my readers in defending their claims about "The State of Jones."</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060737">\
	 <div id="dsq-comment-header-17060737" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060737" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060737" href="http://www.cwmemory.com" target="_blank" rel="nofollow">Kevin Levin</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060737" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060737" class="dsq-comment-message">A Note to My Readers:<br><br>My goal in posting the response by Stauffer and Jenkins was to generate a healthy debate about this subject.  I did not anticipate a response that would challenge Professor Bynum\'s integrity and for that I must apologize.  Professor Bynum has made every effort to respond to Stauffer\'s and Jenkins\'s critique and she has done so in a professional manner throughout.  I think I speak for all of us when I say that I look forward to hearing much more from Jenkins and Stauffer as anything less will reflect poorly on their sense of scholarship and fair play.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060738">\
	 <div id="dsq-comment-header-17060738" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060738" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060738" href="http://renegadesouth.com/" target="_blank" rel="nofollow">victoria bynum</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060738" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060738" class="dsq-comment-message">Thank YOU, Kevin, for providing me with an unprecedented opportunity to defend my work and my name. You have moderated this discussion with great skill and sensitivity.<br><br>Sincerely,<br>Vikki Bynum</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060739">\
	 <div id="dsq-comment-header-17060739" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060739" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17060739">rob head</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060739" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060739" class="dsq-comment-message">I am still hung up on the idea that being a Primitive baptist would predispose someone into being an abolitionist. I simply don\'t believe its true.  That is why Newt Knight\'s multiracial family is so unique.  As Jenkins and Stauffer admit, his post war family life alienated him from most of his family and friends.  They presumably shared his religious upbringing, but obviously didn\'t approve of his "arrangements."  Why would they? Even in the best light, he was an adulturer and a bigamist.  His wife Serena, showed great patience with the man to stay with him as long as she did.  I know of no Baptist, Methodist, Presbyterian, whatever, that would approve of an unabashed adulterer.  For the sake of arguement, I would like to suggest that rather than Newt being raised a Primitive Baptist, he may have been, for lack of a better term, raised as a hardshell baptist or "old timey Baptist", as my wife would phrase it.  This sect washes feet and drinks real wine during the Lord\'s Supper or Communion; they do not share the Primitive ban on insturmental music or its hyper Calvinism.  It was this sect, I believe, that was alienated  by the Southern Baptist orthodoxy and broke away from it.  The Piney Woods are full of their adherents.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060740">\
	 <div id="dsq-comment-header-17060740" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060740" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060740" href="http://vastpublicindifference.blogspot.com/" target="_blank" rel="nofollow">Caitlin GD Hopkins</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060740" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060740" class="dsq-comment-message">Slightly off-topic:<br><br>I\'ve been going through the 1870 and 1880 census records to find out exactly how many white Southerners actually did name their children after Grant (and Lincoln and Sherman).<br><br>The answer? <a href="http://vastpublicindifference.blogspot.com/2009/07/unionist-naming-in-postwar-south.html" rel="nofollow">More than you might expect.</a></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060741">\
	 <div id="dsq-comment-header-17060741" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060741" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060741" href="http://www.squidoo.com/freestateofjones" target="_blank" rel="nofollow">Ralph Kirkland</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060741" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060741" class="dsq-comment-message">I found Victoria Bynum\'s review of The State of Jones extremely informative.  I did not perceive it as any sort of attack.<br><br>In fact, the only discrediting that I noted was in the Jenkins/Stauffer response.  They dismissed Ms. Bynum as a disinterested scholar.  They protest too much and that protest reflects badly on them.  Why challenge the motives of another scholar.  They are the ones defending their turf.  Get a grip, guys!  She is trying to document the record, not attack you.<br><br>A little note on Jasper Collins.  He did name his son Ulysses Sherman Collins.  That actually means he names him after two Union generals, Grant and Sherman.  Grant\'s middel name is not Sherman.  Obviously, a poke in the eye of many Southerners who hated Sherman.<br><br>Dropping names does not improve the case for Jenkins/Stauffer.  I have never heard of your legendary publisher.  I\'ll bet few peopel outside the publishing field have either.  That has no bearing on what I think of the book, which I am interested in reading.<br><br>Just cover the documentation and love you put into the effort.  Why level personal attacks.<br><br>There is no such thing as objectivity.  The story is never just the facts, but must be built on fact.  Your view of how the world works has points you to the facts that you select.   As a reader, the best you can do is to understand the views of the author and how the facts are selected.  You form your judgments then.<br><br>Jenkins/Stauffer\'s attack on  Ms. Bynum by impugning her motives and character is a poor way to proceed.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060742">\
	 <div id="dsq-comment-header-17060742" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060742" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17060742">rob head</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060742" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060742" class="dsq-comment-message">Ive read both books; I throughly enjoyed both books. In my unprofessional opinion, I found Ms. Bynums book to be more scholarly in tone; Ms. Jenkins and Dr. Stauffer presented more of a narrative.  I did feel like Ms. Jenkins and Dr. Stauffer fell in love with Newt Knight and made him the center of their book for various reasons.  He is almost mythological, a figure of folklore.  I will say this; for a man to defy the Confederancy the way he did, then to engage in the family life he had during and after Reconstruction in Mississippi and  survive, he must have been one strong willed and violent man.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060743">\
	 <div id="dsq-comment-header-17060743" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060743" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17060743">Brooks D. Simpson</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060743" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060743" class="dsq-comment-message"><a href="http://www.nytimes.com/2009/07/30/movies/30jones.html?_r=1&amp;hpw" rel="nofollow">http://www.nytimes.com/2009/07/30/movies/30jone...</a><br><br>Wow.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060744">\
	 <div id="dsq-comment-header-17060744" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060744" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060744" href="http://www.blackheath1381.com/" target="_blank" rel="nofollow">Charlie Rosenberg</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060744" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060744" class="dsq-comment-message">First, a brief disclosure: although it took me a few minutes to recognize John Stauffer\'s name, I did photo research for his earlier work, <i>Meteor of War: The John Brown Story</i> from Brandywine Press, co-authored by Zoe Trodd. I also have ancestors named Jenkins, but know of no direct connection to Stauffer\'s present co-author.  I find it difficult to take sides in this debate. Reading Bynum\'s critique first, I was shocked at the apparent egoism of Stauffer and Jenkins. Reading Stauffer\'s reply, I cannot fathom the narrow-minded name-calling of Bynum. Setting aside the personality disputes, both offer some valid points. It does appear that Bynum exaggerated how firmly Stauffer rested claims of fact on undisputedly speculative evidence.<br><br>If everyone recognizes that such research is filling in blanks in a picture we can never be entirely certain of, there seems little to fight over. Bynum is correct that women of African descent didn\'t have a lot of choice when approached by a "white" man, but there are many accounts, autobiographical and scholarly, of inter-racial couples which were based on mutual affection. The Delaney sisters\' family history, and the more recent book <i>My Confederate Kinfolk</i> come to mind. If Stauffer and Jenkins suggested that Knight was close to unique, they\'ve missed a good deal of the background. One reason southern culture is rife with phrases like "a spoonful of Negro blood" or "a touch of the tar brush" is because inter-racial marriages, or voluntary liaisons, were rife, and most southern families were in fact of partial African descent, although most tried to set it aside. (I generally assume that my mother\'s mother\'s family is among these families.) I find it difficult to give much credence to debate as to whether the voters of Jones County held a formal meeting to adopt a Constitution of the State of Jones. They were, after all, in the middle of a war. That the county, by and large, successfully resisted Confederate authority and flew the flag of the United States connotes an independent de facto political existence, tied to an evident political loyalty. I look forward to reading ALL the books referenced in this debate, and hopefully overlooking whatever sniping and rivalry may continue between the authors. IF Bynum is motivated by a desire to claim or retain turf, to say so adds nothing to the debate. She would no doubt make that self-evident in the fullness of time.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060745">\
	 <div id="dsq-comment-header-17060745" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060745" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060745" href="http://www.cwmemory.com" target="_blank" rel="nofollow">Kevin Levin</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060745" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060745" class="dsq-comment-message">Charlie,<br><br>Thanks so much for the comment.  You said: "It does appear that Bynum exaggerated how firmly Stauffer rested claims of fact on undisputedly speculative evidence."  What are we to make of this point if you admittedly haven\'t read the book?</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17060746">\
	 <div id="dsq-comment-header-17060746" class="dsq-comment-header">\
	 <cite id="dsq-cite-17060746" class="dsq-comment-cite">\
	 <a id="dsq-author-user-17060746" href="http://blackheath1381.com/" target="_blank" rel="nofollow">Charlie Rosenberg</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17060746" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17060746" class="dsq-comment-message">Kevin, unless this statement:<br><br><i>We do not “claim” that Newton Knight served at Vicksburg; we offer an assessment based on the available sources and acknowledge that any interpretation is necessarily speculative, given the paucity of evidence.  And we also make clear that whether or not Newton was at Vicksburg is ultimately irrelevant to our larger argument about his Unionism.  And yet you and Bynum assert that our interpretation is a major problem, without explaining why.</i><br><br>...flagrantly mis-states what is in the book, it puts to rest Bynum\'s characterization. It would be rare for an author to directly misquote their own published work in order to defend it. Reading the book will I hope provide a much more detailed picture.</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=cwmemory&t=john_stauffer_and_sally_jenkins_respond&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 = '9a60b0b052150ec4727040702dbdaad0';
			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');
}

})();




