




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": {"71ff73acce159ff401034e0a25454bdc": {"username": "Anonymous", "tumblr": "", "display_name": "Anonymous", "url": "http://disqus.com/guest/71ff73acce159ff401034e0a25454bdc/", "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": ""}, "7a69a846b402120cbb64c294f9e7e464": {"username": "Leroy", "tumblr": "", "display_name": "Leroy", "url": "http://disqus.com/guest/7a69a846b402120cbb64c294f9e7e464/", "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": ""}, "RealMetalHead": {"username": "RealMetalHead", "tumblr": "", "display_name": "RealMetalHead", "url": "http://disqus.com/RealMetalHead/", "registered": true, "linkedin": "", "blog": "", "remote_domain": null, "points": 1, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "slipknotlvr1313": {"username": "slipknotlvr1313", "tumblr": "", "display_name": "slipknotlvr1313", "url": "http://disqus.com/slipknotlvr1313/", "registered": true, "linkedin": "", "blog": "", "remote_domain": null, "points": 1, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "d51c36cf88bf2a95b67411a0cf850cd4": {"username": "Dilbert", "tumblr": "", "display_name": "Dilbert", "url": "http://disqus.com/guest/d51c36cf88bf2a95b67411a0cf850cd4/", "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": ""}, "e1even": {"username": "e1even", "tumblr": "", "display_name": "e1even", "url": "http://disqus.com/e1even/", "registered": true, "linkedin": "", "blog": "", "remote_domain": null, "points": 1, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "ccf4a44d0d1e60a099c85cdee8b27625": {"username": "person", "tumblr": "", "display_name": "person", "url": "http://disqus.com/guest/ccf4a44d0d1e60a099c85cdee8b27625/", "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": ""}, "007616b6f02b5889ccf3b23d8115e24a": {"username": "maggot", "tumblr": "", "display_name": "maggot", "url": "http://disqus.com/guest/007616b6f02b5889ccf3b23d8115e24a/", "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": ""}, "facebook-709620143": {"username": "facebook-709620143", "tumblr": "", "display_name": "facebook-709620143", "url": "http://disqus.com/facebook-709620143/", "registered": true, "linkedin": "", "blog": "http://www.facebook.com/profile.php?id=709620143", "remote_domain": 1, "points": 1, "facebook": "http://www.facebook.com/profile.php?id=709620143", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": true, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": "Facebook"}, "11bc972d1c3fe8c286c3aa7b533630ae": {"username": "Jak", "tumblr": "", "display_name": "Jak", "url": "http://disqus.com/guest/11bc972d1c3fe8c286c3aa7b533630ae/", "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": ""}, "b69a6f5eb939fc78bb5d8b0a50782242": {"username": "Andy", "tumblr": "", "display_name": "Andy", "url": "http://disqus.com/guest/b69a6f5eb939fc78bb5d8b0a50782242/", "registered": false, "linkedin": "", "blog": "http://www.onkelandy.com/blog", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "d3c72a5a1a780310f408e1ee51180329": {"username": "idrian", "tumblr": "", "display_name": "idrian", "url": "http://disqus.com/guest/d3c72a5a1a780310f408e1ee51180329/", "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": ""}, "cb914231ff9a192fdb4799bd23315091": {"username": "DAG", "tumblr": "", "display_name": "DAG", "url": "http://disqus.com/guest/cb914231ff9a192fdb4799bd23315091/", "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": ""}, "683313b1b3ece190900513fdbd800421": {"username": "Aaron", "tumblr": "", "display_name": "Aaron", "url": "http://disqus.com/guest/683313b1b3ece190900513fdbd800421/", "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": ""}, "623621da9dee3fca0b8444411cba6952": {"username": "Ricardo F.S. [Portugal]", "tumblr": "", "display_name": "Ricardo F.S. [Portugal]", "url": "http://disqus.com/guest/623621da9dee3fca0b8444411cba6952/", "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": ""}, "bradyk": {"username": "bradyk", "tumblr": "", "display_name": "Kyle Brady", "url": "http://disqus.com/bradyk/", "registered": true, "linkedin": "", "blog": "http://www.kyle-brady.com", "remote_domain": null, "points": 13, "facebook": "", "avatar": "http://media.disqus.com/uploads/users/5/3891/avatar32.jpg", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "c2e9d37cedeb0b74b40828fdc1f81509": {"username": "Ben", "tumblr": "", "display_name": "Ben", "url": "http://disqus.com/guest/c2e9d37cedeb0b74b40828fdc1f81509/", "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": ""}, "DELTAFORCEADC2": {"username": "DELTAFORCEADC2", "tumblr": "", "display_name": "DELTAFORCEADC2", "url": "http://disqus.com/DELTAFORCEADC2/", "registered": true, "linkedin": "", "blog": "", "remote_domain": null, "points": 1, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "02b7e77cd4f345dedb04e124ca37442b": {"username": "HAITHAR", "tumblr": "", "display_name": "HAITHAR", "url": "http://disqus.com/guest/02b7e77cd4f345dedb04e124ca37442b/", "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": ""}, "62913a65067e0d95dba7ba028ba0ca10": {"username": "Deven", "tumblr": "", "display_name": "Deven", "url": "http://disqus.com/guest/62913a65067e0d95dba7ba028ba0ca10/", "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": ""}, "facebook-1437641004": {"username": "facebook-1437641004", "tumblr": "", "display_name": "Brayden Ballenger", "url": "http://disqus.com/facebook-1437641004/", "registered": true, "linkedin": "", "blog": "http://www.facebook.com/people/Brayden-Ballenger/1437641004", "remote_domain": 1, "points": 1, "facebook": "http://www.facebook.com/people/Brayden-Ballenger/1437641004", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": true, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": "Facebook"}, "ironsabbath": {"username": "ironsabbath", "tumblr": "", "display_name": "ironsabbath", "url": "http://disqus.com/ironsabbath/", "registered": true, "linkedin": "", "blog": "", "remote_domain": null, "points": 1, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "c6086a56dff0ddb87e287d02fbe4707f": {"username": "Medieval Girl", "tumblr": "", "display_name": "Medieval Girl", "url": "http://disqus.com/guest/c6086a56dff0ddb87e287d02fbe4707f/", "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": ""}, "0cedc8862ea16ccfe15961e3b6ce04be": {"username": "Nate", "tumblr": "", "display_name": "Nate", "url": "http://disqus.com/guest/0cedc8862ea16ccfe15961e3b6ce04be/", "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": ""}, "f55c5f4c5d1198df0ca6e6abc6cab44e": {"username": "Max T", "tumblr": "", "display_name": "Max T", "url": "http://disqus.com/guest/f55c5f4c5d1198df0ca6e6abc6cab44e/", "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": ""}, "b45e413d3c4df016556a63bdd4b4b46e": {"username": "Drew Nutter", "tumblr": "", "display_name": "Drew Nutter", "url": "http://disqus.com/guest/b45e413d3c4df016556a63bdd4b4b46e/", "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": ""}, "0cef05e04d11aaccfd1303e20787fdcc": {"username": "grg", "tumblr": "", "display_name": "grg", "url": "http://disqus.com/guest/0cef05e04d11aaccfd1303e20787fdcc/", "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": "Kyle Brady: Blog", "streaming_realtime": false, "url": "kyle-brady", "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": "kyle-brady", "is_initial_load": true, "is_authenticated": false, "timestamp": "2009-12-10_13:35:15", "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": {"17858177": {"up_voted": false, "ip": "", "has_replies": false, "message": "and its not options its opinions =P sorry again im all fkd up with english =P.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-09-30_13:43:35", "killed": false, "user_key": "623621da9dee3fca0b8444411cba6952", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "2 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "20594434": {"up_voted": false, "ip": "", "has_replies": false, "message": "I love metal. Its my bread and butter, for sure. But one thing about metal that I find to be such a shame and so frustrating at the same time.... in no other genre of music do you find the fans of the GENRE (not specific bands) so often arguing over so many petty things having to do with what essentially comes down to opinions. If you dont like Slipknot, more power to you. But you can't say with authority, as fact, that Slipknot \"sucks\" or that they \"arent talented\", \"arent good\" or whatever variation of it people say. All that stuff comes down to personal definition. Whats good to one person is abhorrent to another, and neither is more right than the other. Guys, we as fans of \"heavy music\" (since what defines metal is so hotly contested..... and again, what should be simply a matter of opinion) dont need to be at each other's throats over petty, pointless, unwinnable arguments. We, as fans of heavy music, are totally hated by most other music genres and fans, especially hippies and many indie kids and ESPECIALLY pop fans (obviously not true across the board.... hopefully at least one person understands what im saying and how im saying it.... with a tiny bit of tongue in cheek). Can't we just stay united under one thing we SHOULD all have in common.... that we hate hippies, \"bubblegum\" pop, preppy frat boy douchebags, and sorority girl airhead superficial whores! Lets use this energy to take them down and own them on THEIR blogs and message boards! Remember.... its \"music\" to SOMEONE, and its enjoyed by SOMEONE. We are no more right than them, and vice versa. Enjoy what you enjoy, and try to live life NOT as a dickhead as much as you can.<br><br>END THE METAL CIVIL WAR!!!!!!", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-10-19_20:36:39", "killed": false, "user_key": "0cedc8862ea16ccfe15961e3b6ce04be", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 month ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "25245681": {"up_voted": false, "ip": "", "has_replies": false, "message": "none of these arguments even make sense, you use the argument \"other people earn the right to do this\" in like half your points.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-12-09_02:06:42", "killed": false, "user_key": "0cef05e04d11aaccfd1303e20787fdcc", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 day ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "13785220": {"up_voted": false, "ip": "", "has_replies": false, "message": "Slipknot are one of the least talented mainstream (fwr: disgustingly average) thrash bands I've ever heard. They re-hash 20-year old riffs very, very badly, and occasionally whine some drivel about how hard their lives are between shouting like (to quote Chris Connelly - an original, and a vocalist I generally respect) \"Fozzy Bear on crystal meth\".<br>Listen to the mediocrity that drips from every lame hook, hackneyed \"solo\" and incomprehensible grunt, and think on the fact that they canceled their Reading festival slot (thanks, boys) last year due to... a broken ankle..? WTF? I've known grown-ups play another hour's gig with a broken ankle... and not even notice 'til after-wards. It's no big deal. You can stand up and hold a mic for god's sake... or play in a wheel chair, like Kurt did.<br>Worst of all - amazingly - it requires the combined \"talents\" of nine - NINE - of the fuckers to create their turgid shit. Aside from the dust-bin (trash-can) drumming. I thought that was OK, in a seen-it-before-but-it's-OK-to-see-it-again-this-ONCE kind of way. They could make a living busking like that if they could just keep time...<br>I'd rate Atomic Kitten higher. (Clue: I don't like Atomic Kitten at all). Slipknot are the Peter Andre of Metal.<br><br><a href=\"http://bl0g.wa-junge.de/wp-content/_peter_andre_jordan_wedding.jpg\" rel=\"nofollow\">http://bl0g.wa-junge.de/wp-content/_peter_andre...</a><br><br>(In the white suit, holding Jordan's hand, and for once trying to look like something vaguely human instead of a freshly-trepanned meat-puppet, he STILL scares me far more than all nine of them, in their masks, sniffing dead crows in jars and performing their \"heaviest\" track).<br><br>Just my opinion, of course.<br><br>Peace.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-08-01_13:23:00", "killed": false, "user_key": "c2e9d37cedeb0b74b40828fdc1f81509", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "4 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "18463239": {"up_voted": false, "ip": "", "has_replies": false, "message": "Haha <br>Medeival Girl said \"A HOLE!\"<br>LMFAO!!!!! <br>....yeah slipknot sucks.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-10-04_04:18:05", "killed": false, "user_key": "11bc972d1c3fe8c286c3aa7b533630ae", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "2 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "3581579": {"up_voted": false, "ip": "", "has_replies": true, "message": "Mate feed kill repeat wasn't corey taylor, and you just insulted machine head, slayer, lamb of god and all sorts of other bands with your downtuned open string chugging bullshit, the masks are in the vain of mr bungle, kiss etc. Iowa is their hometown fuckhead, and how have you earned your right to play downtuned?? what gives someone that right, you dick, this aaron guy has the right idea, good job man", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-11-06_22:51:46", "killed": false, "user_key": "d51c36cf88bf2a95b67411a0cf850cd4", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "13478928": {"up_voted": false, "ip": "", "has_replies": true, "message": "you said in the original post that \"metal is not a dictionary definition\"<br>you have just contradicted yourself", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-28_15:46:30", "killed": false, "user_key": "e1even", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "4 months ago", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": 13183099, "depth": 2, "points": 0, "author_is_creator": false, "is_realtime": false}, "17411996": {"up_voted": false, "ip": "", "has_replies": false, "message": "To Aaron:<br>AWESOME, AWESOME reply!!!  I could not agree more!!!", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-09-26_00:08:23", "killed": false, "user_key": "c6086a56dff0ddb87e287d02fbe4707f", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "2 months ago", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 1705328, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "13369248": {"up_voted": false, "ip": "", "has_replies": true, "message": "Metal is, by definition, \"heavy, syncopated, and talented guitars (influenced by other genres and styles like Classical or Middle Eastern) combined with aggressive tempos, intricate and intense drumming, and aggressive vocals that breach dark, but highly intelligent and usually deep, material.\" Which is completely slipknot. They definitely have songs that showcase the guitar talent, i.e. Psychosocial, and plenty of songs that are guitar driven, i.e. (sic), All Hope Is Gone, Opium of the People, The Nameless, and Before I Forget to name a few. Now, these songs aren't all the same pace as shit metal, i.e dying fetus, but that doesn't make them slow. They're all faster than Metallica. If you want to criticize a band for breaking the typical chug chug blast beat chug chug structure. That is you right. But because they, like Disturbed, broke the mold of typical metal, I think that makes them all the more talented to play music that fits them, not a genre. If anything, Slipknot breaks the \"mainstream\" mold that most popular bands have conformed to inside the genre itself.<br><br>As for down tuning, it is used SOLELY to make the impossible possible. You can't play certain riffs at all in standard tunings. <br>---5--<br>---5--<br>3-----<br>etc. Take the riff in System of a Down's Toxicity, that is not possible (for most people) in standard tuning. Also, down tuning make the guitars deeper, adding that disturbed, w/e you wanna call it layer to the music. If metal is solely about the guitars, why have the singers/drums? Corey and Joey are the focus of that band. Every thing else is extra in most songs. If you tell me that the two of them aren't one of, if not the best in their role you sir, do not understand the purpose of metal. <br><br>I'll agree that their guitars aren't even close to the best. Not even top 100, but there are tons of bands who have awful members and are still considered amazing. Metallica, James is an awful singer, especially post ...And Justice For All. As Blood Runs Black's singer isn't the best in the world, but their drums and guitars are pretty close. My whole point is that a band isn't one instrument. It's the culmination of all the instruments as one. If Slipknot isn't qualified in that way, and doesn't fit the \"syncopated guitars, which just in case you don't know is notes or tones in a rhythmic pattern i.e. short-long-short, heavy driving drums, and dark lyrics\" I guess there isn't a band in the world that is \"true\" metal.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-26_21:47:58", "killed": false, "user_key": "facebook-709620143", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "4 months ago", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "20065777": {"up_voted": false, "ip": "", "has_replies": true, "message": "maggors are retarded.<br>Slipknot sounds like shit.<br>Corey does look like he has down syndrome<br><br>oh and<br><br>Dimmu Borgir is hilarious.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-10-14_15:29:49", "killed": false, "user_key": "02b7e77cd4f345dedb04e124ca37442b", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 month ago", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "17411875": {"up_voted": false, "ip": "", "has_replies": true, "message": "Fuck Ya!  Who cares if some people think they suck.  Music should ALWAYS be about what gets YOU fired up!  Of course, if your more interested in being sheep, then by all means, go and join the rest of the fuckheads in this world who only listen to what others label as \"cool music\", or what's \"In\", or what's \"good\".  It's listening to those bands that \"Suck\", that makes us individuals.  I say, \"Right On\" to those who do what pleases them instead of giving a fuck what others say!  By the way, I think Slipknot is awesome!", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-09-26_00:02:40", "killed": false, "user_key": "c6086a56dff0ddb87e287d02fbe4707f", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "2 months ago", "approved": true, "num_replies": 1, "is_first_child": true, "email": "", "parent_post_id": 1705329, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "13100145": {"up_voted": false, "ip": "", "has_replies": true, "message": "huh, that's cute. First we shall address the \"more than one drummer\" Joey is an amazing drummer. Easily top 10 in all of metal. Yeah the other drummers, clown, sid, craig, they aren't \"drummers\" they add layers to the music making it deeper than standard 2 guitars one bass one drummers and a singer. If you knew anything about slipknot you'd know that.<br><br>Slipknot does not focus on guitars. The focus on lyrics and drums. <br><br>Iowa is where they are from. The songs are their stories. Mate.Feed.Kill.Repeat. was before Corey's day and before the band became what it really stands for. That's like saying \"Metallica sucks because Kill 'Em All sucks\" you can't hold an album in which a band didn't have is most crucial member as the criteria upon which they are judged. <br><br>\"combined with aggressive tempos, intricate and intense drumming, and aggressive vocals that breach dark, but highly intelligent and usually deep, material.\" Aggressive tempos, check<br>intricate and intense drumming, uh you ever heard disasterpiece? Aggressive vocals, dark, intelligent, deep. All the songs are deep, and it doesn't get more aggressive than \"I wanna slit your throat and fuck the wound.\" <br><br>And about \"earning the right\" you don't really like earn different levels of tuning. you just kinda tune your guitar however you want...they do it to make the music heavier and deeper.<br><br>LITTLE Mouth slits? seeing as Corey is the singer his mas is the only one that matters and his mouth can open completely for screams with room to spare in his mask. The mouth hole is huge. Seeing as I've actually worn one, I speak from experience. <br><br>Just because Slipknot isn't your type of band doesn't mean you need to hate on them. I'm so sick of this \"real metal\" comment. Please define this. If you mean ATR/KSE/AILD/BMTH then the only difference is slipknot isn't guitar driven, and is vocally more aggressive. If you mean those awful Dying Fetus shit bands. I feel sorry for you. They don't wear masks and you can't understand them &gt;.&gt; <br><br>And one last thing \"they wear masks haha its halloween haha\" They wear masks to draw attention to their performance and music rather than themselves. And their lyrics are sooooo unintelligent. I mean megalomaniac was one of the first words I learned. <br><br>Yeah Nu metal is Dead. It's not like Disturbed and Slipknot released albums last year or anything.<br><br>Slipknot has 2 guitarists......Just like bands who have \"earned the right\" i.e. Metallica.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-22_03:11:29", "killed": false, "user_key": "facebook-709620143", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "4 months ago", "approved": true, "num_replies": 4, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "3581609": {"up_voted": false, "ip": "", "has_replies": false, "message": "Nowhere in there did I mention Machine Head or Lamb of God.  If you learn to read, I say that downtuning does not make you sound good or be talented.  But not that downtuning is necessarily bad in and of itself.  It all depends on what you do with it.<br><br>Slayer has no talent.  And no one will debate me on that point.<br><br>You earn that right by learning to play the goddamn guitar, and not just banging the same five drop-tuned chords all the time.  It's often called \"skills\", \"talent\" or \"chops\".  You might want to do some research on them.<br><br>Once again, thanks for playing.  I enjoy your random vehemence and utter lack of intelligent arguments.<br><br>--Kyle", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2008-11-06_22:55:10", "killed": false, "user_key": "bradyk", "has_been_anonymized": false, "edited": false, "author_is_moderator": true, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 3581579, "depth": 1, "points": 0, "author_is_creator": true, "is_realtime": false}, "2000554": {"up_voted": false, "ip": "", "has_replies": false, "message": "Thanks Drew.<br><br>A true light in the darkness.<br><br>--Kyle", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2008-09-02_03:05:36", "killed": false, "user_key": "bradyk", "has_been_anonymized": false, "edited": false, "author_is_moderator": true, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": 2000425, "depth": 2, "points": 0, "author_is_creator": true, "is_realtime": false}, "17412395": {"up_voted": false, "ip": "", "has_replies": false, "message": "NICE!!! I LOVE IT!!!  AND FUCK Max T!!!", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2009-09-26_00:27:30", "killed": false, "user_key": "c6086a56dff0ddb87e287d02fbe4707f", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "2 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": 13100145, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "13370543": {"up_voted": false, "ip": "", "has_replies": false, "message": "I'm sorry, I like Disturbed, but the moment you referenced them as revolutionary for breaking \"the mold of typical metal\", you lost any intelligent response I was going to give you.<br><br>--Kyle", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2009-07-26_22:43:42", "killed": false, "user_key": "bradyk", "has_been_anonymized": false, "edited": false, "author_is_moderator": true, "from_request_user": false, "votable": true, "date": "4 months ago", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 13369248, "depth": 1, "points": 0, "author_is_creator": true, "is_realtime": false}, "1705335": {"up_voted": false, "ip": "", "has_replies": false, "message": "because they are coming out with a new album.....", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-08-01_15:10:38", "killed": false, "user_key": "007616b6f02b5889ccf3b23d8115e24a", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "16679667": {"up_voted": false, "ip": "", "has_replies": false, "message": "I agree. But unfortunately, I used to like them :P<br><br>I have no clue why, but when I was young, I liked pissed off, yelling music. Then when I grew up, I only listened to some of Slipknot's more melodic stuff (which there is not a lot of), so I completely lost interest in them. <br><br>The masks are really a stupid idea, and I don't like them. I absolutely HATE their guitar tone. It is too distorted, and downtuned. Don't get me wrong, I like some downtuning, because some Black Sabbath albums are all downtuned (Sabbath Bloody Sabbath, Master of Reality). But Slipknot takes it too far, and it is true that it's good to hide talent and mask mistakes. Their image is all about pain, agnst, and sorrow. Why listen to music to make you feel sad or pissed off? I also think Slipknot's fanbase is a turn off. Their fans call themselves 'maggots' and are really loyal. That sounds good, but it's too bad that they're idiots and are usually losers that are always depressed.<br><br>I like to listen to real metal (Iron Maiden, Megadeth, Judas Priest, Black Sabbath) because they have VERY talented guitarists and drummers, great singers, and good lyrics. <br><br>Slipknot has poor guitarists, and okay drummer(s). The singer sounds horrible when singing (screaming), rapping, or whimpering. The lyrics are about sad, stupid crap.<br><br>My advice to anyone who likes Slipknot: If you like them, go ahead. Just don't like them because people you know do. Be a leader, not a follower. Maybe you can start a trend of Classic Rock or Old School Heavy Metal. <br><br>Sorry for the long comment, but they're what I do best :P", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-09-15_18:31:14", "killed": false, "user_key": "ironsabbath", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "2 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "23853113": {"up_voted": false, "ip": "", "has_replies": false, "message": "You do realize just by saying you're being an \"Individual\" you're listening to the exact same thing all those \"Individuals\" listen to? You all want to be rebels by not giving a fuck and not listening to anything anyone else listens to but you're doing exactly that. You need to realize that slipknot is what's \"In\" just because they're \"Individual\".", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2009-11-23_00:14:10", "killed": false, "user_key": "RealMetalHead", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "2 weeks ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": 17411875, "depth": 2, "points": 0, "author_is_creator": false, "is_realtime": false}, "2000443": {"up_voted": false, "ip": "", "has_replies": false, "message": "Your statement about genious statements was just genius. Random unsupported insults are always a great way to drive a point home; and spelling words like \"genius\" wrong always adds to your credibility, especially when you are using them sarcastically to question an individual's intelligence.", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2008-09-02_02:39:18", "killed": false, "user_key": "b45e413d3c4df016556a63bdd4b4b46e", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 1705337, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "17412546": {"up_voted": false, "ip": "", "has_replies": false, "message": "Fuking A!!!", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2009-09-26_00:33:51", "killed": false, "user_key": "c6086a56dff0ddb87e287d02fbe4707f", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "2 months ago", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 14510806, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "17412167": {"up_voted": false, "ip": "", "has_replies": false, "message": "And, yet again, an AWESOME, AWESOME reply!!!<br><br>SLIPKNOT ROCKS!!!", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2009-09-26_00:15:49", "killed": false, "user_key": "c6086a56dff0ddb87e287d02fbe4707f", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "2 months ago", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 1705332, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "22676936": {"up_voted": false, "ip": "", "has_replies": false, "message": "I agree 100% with you. They are just a bunch of pissed of rednecks that cant play their instruments. SLAYER is REAL metal. ALL HAIL SLAYER \\m/. And NO ONE better say anything bad about Slayer. They are the definition of Thrash Metal.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-11-10_22:18:24", "killed": false, "user_key": "62913a65067e0d95dba7ba028ba0ca10", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "4 weeks ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "17857994": {"up_voted": false, "ip": "", "has_replies": false, "message": "i sayd can sorry , i ment Cant!!!!<br><br>=P<br><br>.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-09-30_13:41:50", "killed": false, "user_key": "623621da9dee3fca0b8444411cba6952", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "2 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "2000587": {"up_voted": false, "ip": "", "has_replies": false, "message": "At least it's a logical and sensible argument, instead of the usual random obscenities and angry people.<br><br>I won't go tit-for-tat here, but all of what I said does point to not being talented... within the scope of Slipknot.  It doesn't always apply, but it happens to here.<br><br>Having a \"rhythm section\" like they do could turn out pretty cool, but when you analyze the individuals involved, the only one that comes out with real talent is Corey Taylor.<br><br>Also, I'd love to know of a band that wears masks that actually has talent, or even demonstrates that talent... GWAR is obviously not an example of this, and neither is Slipknot.  True, there are metal/\"metal\" bands that don't wear masks and suck horribly, but I've yet to find one that *doesn't* hide behind a facade, using that as their \"gimmick\" instead of playing interesting or talented or truly original music.<br><br>However, for all the world knows, maybe all of their musicians are secretly virtuosos, and the guitarists just choose to play different variations of the same chord progressions without any difficult rhythms, fingerings, or runs.  And maybe the drummers are truly on a Purtnoy level, and we just can't tell because they're too busy playing stereotypical shockrock beats.<br><br>--Kyle<br><br>p.s. If you didn't get it, which you didn't, I feel like I should point it out:  I wrote this list with a little bit of \"tongue in cheek\".  I really don't like Slipknot at all, but you should also know that this is approaching the subject from a perspective similar to \"John Petrucci = talented, Frank Novinec = not ... Mike Purtnoy = talented, Brad Roberts = not ... Rob Halford = talented, Ronnie James Dio = annoying but slightly talented ... etc.\"", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2008-09-02_03:16:08", "killed": false, "user_key": "bradyk", "has_been_anonymized": false, "edited": false, "author_is_moderator": true, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 2000419, "depth": 1, "points": 0, "author_is_creator": true, "is_realtime": false}, "20073423": {"up_voted": false, "ip": "", "has_replies": false, "message": "I have never been a fan of Slipknot.  I had always thought their music was just obnoxious screaming, no good lyrics or guitar playing, the masks they wear are ridiculous and gimmicky, and the fact they have 9 people on stage, with 4 of them being just a waste of space.  However, I have to say that their most recent album is actually not that bad.  It has some credible songs that show *some* maturity, talent, and diversity.  <br><br>Anyway, I was dragged, somewhat reluctantly at first, to a recent concert of Slipknot.  As the show got closer, I got a bit more interested to go, as I liked the band touring with them and I just wanted to see what it would be like to see this spectacle just once in my life.  I have to say I was actually entertained.  Again, there are like 4 or 5 real musicians up there with the rest just being a bunch of filler, or more like clown performers dancing around up there, but even those extra filler \u201cmusicians\u201d on stage added some value in a strange way to the show and helped to amp things up a bit and get the audience more involved.  <br><br>I agree with much of what you say, the music they have put out for most of their existence has been pretty much a barrage of noise with no relevance to anything or anyone.  But, after giving them a chance and seeing their show, I can see some traces of talent mixed into the chaos, but yes, I will probably never buy any of their music or ever see them again, but it was worth going to see them once in my life and I actually felt more entertained than thought I would be at the end of the day.", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2009-10-14_17:29:35", "killed": false, "user_key": "cb914231ff9a192fdb4799bd23315091", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 month ago", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 20065777, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "17857873": {"up_voted": false, "ip": "", "has_replies": false, "message": "i couldn't agree more! medieval girl and of course, drew =)<br><br>slipknot is a great band and its not because they different they not great.<br><br> there's always a different band/singer/music etc, out there and the people can blame other one to like different kind of things so, no one's have the moral to judge whatever you want without knowing it or just because you dont like it...<br><br> so please if you dont like slipknot or other band just shutTFup and save your options to yourselves!<br><br>if you have something to say just dont piss-off other people.<br> and thats the real truth of music =) .<br><br>you know what that point means dont you?  this one-&gt; .<br>(ps.: like i say =P, then dont blame my comment if it asn't a good english)<br><br>so it's final.<br><br>         \\../.       .\\../", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2009-09-30_13:40:14", "killed": false, "user_key": "623621da9dee3fca0b8444411cba6952", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "2 months ago", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 17412704, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "2000419": {"up_voted": false, "ip": "", "has_replies": true, "message": "None of what you said really gives any evidence that Slipknot is either not talented, intelligent, or cannot make good music; all you really said was that you don't like their way of doing things. Its possible to be ugly, have stupid masks, pointless album titles, and come from Iowa (why that has any significance is beyond me) and still be good musicians. Having 3 drummers doesn't mean that you are compensating for a lack of skill, it is just as possible that it is just a combination of three talented drummers that are just going for an equally musical but more dense sound. It allows them to unleash their full music writing potential as they are not forced to limit it to the abilities of one drummer--no matter how good of a drummer you are you have limits. Having a lead, rhythm, and bass guitar is pretty normal, as well as having one singer--your criticism \"How many singers? How many guitarists? Uh huh? Really?\" doesn't really mean anything; but again, it follows the same pattern as the drummers. Slipknot definitely fits with your definition of Metal, an they have especially mastered, in comparison to other metal bands, \"aggressive tempos, intricate and intense drumming, and aggressive vocals.\" That quote should be used in the definition of Slipknot. It is evident that this angry rant is a result of closed mindedness in your inability to comprehend something different from what you have become accustomed to with your immediate response being that of an angry criticism of how things are different rather than an understanding of why. Things can be different from the norm either because of an attempt to compensate or because of originality and an attempt to go beyond the greatness they would still achieve if they were only typical. I think you would find that most intelligent people that approach Slipknot openly would agree on the latter of those two.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-09-02_02:34:20", "killed": false, "user_key": "b45e413d3c4df016556a63bdd4b4b46e", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "14510806": {"up_voted": false, "ip": "", "has_replies": true, "message": "O fuck u, who cares where they r from, ok they have 3 drummers cuz they fucking can, joey is an amazing drummer, and mabey they got their work ethic from Iowa cuz here in Iowa it isn't so fucking pretty all the god damn time. And they r fucking metal, they do have talented guitarists, and corey stays with slipknot cuz he love making great music and has a great friendship with the rest of the band, 9 members for 10 years, ya most 4 pep bands don't last tht long", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-08-09_05:10:19", "killed": false, "user_key": "DELTAFORCEADC2", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "4 months ago", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "13529687": {"up_voted": false, "ip": "", "has_replies": false, "message": "Yep, sure.<br><br>Like I said, thanks for playing.<br><br>--Kyle", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-29_08:21:03", "killed": false, "user_key": "bradyk", "has_been_anonymized": false, "edited": false, "author_is_moderator": true, "from_request_user": false, "votable": true, "date": "4 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": 13478928, "depth": 3, "points": 0, "author_is_creator": true, "is_realtime": false}, "13906771": {"up_voted": false, "ip": "", "has_replies": false, "message": "maggots (moar liek f*ggots amirite?) are pitiful", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-08-04_15:36:25", "killed": false, "user_key": "71ff73acce159ff401034e0a25454bdc", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "4 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "17412704": {"up_voted": false, "ip": "", "has_replies": true, "message": "Like I always say, \"Fuck everyone else and just listen to what you want to listen to!\"  If you like Slipknot then screw the A Holes that don't!  If Slipknot is not for you then don't listen!  And that A Hole Max T can go fuck himself!  It's usually the closet faggots that go around calling everyone else faggots!!!", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-09-26_00:42:28", "killed": false, "user_key": "c6086a56dff0ddb87e287d02fbe4707f", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "2 months ago", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "14510864": {"up_voted": false, "ip": "", "has_replies": false, "message": "Fuck tht max t fag.    He just think they wear masks cuz they look cool    no.  They do cuz they want to.  And they down tune their guitars cuz thts the kind of music they like to play, and if slipknot is supposubly not metal then wtf r they.    O ya.   METAL", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-08-09_05:19:19", "killed": false, "user_key": "DELTAFORCEADC2", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "4 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "18463139": {"up_voted": false, "ip": "", "has_replies": false, "message": "Haha <br>Medeival Girl said \"A HOLE!\"<br>LMFAO!!!!! <br>....yeah slipknot sucks.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-10-04_04:16:21", "killed": false, "user_key": "facebook-1437641004", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "2 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "1705328": {"up_voted": false, "ip": "", "has_replies": true, "message": "1. Joey Jordison is one of the best drummers in the world. The custom percussionists are just for special sounds, like hitting metal cans and making deeper drum sounds, dumb ass.<br>2. They record albums without their masks. DUMB ASS. That's why Corey sounds different a bit at concerts.<br>3. They downtune for the sound they want. And last time I checked...Since when did you have to earn the right to play music? DUMB ASS. And listen to their solos Mr. I've earned the right to make music.<br>4. Cornfield Piglovers? DUMB ASS. Who says you have to be like where you come from. Steriotypical ASS HOLE.<br>5. Corey's face is fine. They wear the masks so people will concentrate more on their music and not their appearences.<br>6. More guitarists = Better originality and sound. DUMB ASS.<br>7. That was such a retarded comparison I have no comback. Please refer to # 5<br>8. Who the hell are you to tell people what is and is NOT music? Oh no, we can't listen to what WE want. Please tell us why YOUR opinion is better than everyone elses.<br>9. Again, DUMB ASS. Maybe people who like to have lots of cool lights and sound and people jumping into the crowds. OHH NOOOO. I forgot. You didn't say that was OK.<br>10. Let us all recall...that was the first Slipknot album consisting of the original members. When Corey came in, I believe the titles became a lot more understandable. Thank you for using all the bad things to make yourself look like a ... wait for it ... DUMB ASS.<br>11. Heavy = SLIPKNOT, Syncopated = SLIPKNOT, they cay cuz, comin' and such, Talented Guitars = SLIPKNOT MICK AND JIM ARE AWESOME, combined with aggressive tempos, intricate and intense drumming, and aggressive vocals that breach dark, but highly intelligent and usually deep, material = THAT SOUNDS A LOT LIKE FUCKING SLIPKNOT DUMB ASSSSSSS!!!", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-05-19_09:36:25", "killed": false, "user_key": "683313b1b3ece190900513fdbd800421", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 2, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "1705329": {"up_voted": false, "ip": "", "has_replies": true, "message": "*lol* Nice one. I liked your thoughts but actually I still think Slipknot IS metal. They rock like but I guess u don't know that because u've avoided to see them live. It's terrific, it's intense. Much heaviert and smartet than a lot of stuff called \"metal\". But actually WHO cares how u define the sound of a band. Either you like them or not, that's what counts.. right?", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-03-04_19:34:40", "killed": false, "user_key": "b69a6f5eb939fc78bb5d8b0a50782242", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 2, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "1705330": {"up_voted": false, "ip": "", "has_replies": false, "message": "well, in the end most of the bands that you mentioned have one thing in common with slipknot: heavy.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-05-21_19:54:05", "killed": false, "user_key": "d3c72a5a1a780310f408e1ee51180329", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "1705331": {"up_voted": false, "ip": "", "has_replies": false, "message": "Ok mister Aaron, while you do raise a number of angry points, not valid but angry, you fail to contribute much. You didn't say much, and you wasted a whole lot of time on stupid comments that were obviously not meant to be taken to heart.<br><br>1. Yes, Joey Jordinson is good. But what about the two guys hitting those \"metal cans\" which are actually beer kegs, and who also play real drums as well. How can they be considered very good, or necessary when, as you put it, Joey Jordinson is so much better?<br>2. Mr Brady was actually referring to concerts, where they do wear the masks, and as you said it makes them sound different. Mr. Brady said it makes them sound bad.<br>3. You both raise valid points. Down tuning guitars doesn't make you metal at all (country players use baritone quite often), yet it is a desired sound. Lets call it a draw and move on.<br>4. This was a stupid point.<br>5. Wearing masks DOES NOT and I NEVER makes people concentrate on your music over your appearance. How can they concentrate on your music when you're wearing a mask, which obviously ALTERS YOUR APPEARANCE.<br>6. While this is sometimes true, its not a rule. Its probably more wrong than write. Single guitarists HAVE to be more talented because there's only one of them. And it definitely doesn't work in slipknots case. Usually the two guitarists play the same part, effectively using two people to do the work of one. They most likely did this for the same reason they have 3 drummers. It gives more sound though, that is true, but not much in skill or originality.<br>7. I agree with you here.<br>8. Here too (I don't see what rap has to do with slipknot.<br>9. This is a moot point and is more up to the budget and taste of the band than any actual meter of skill.<br>10. Ok, that is a good point.<br>11. Here its divided. True, Slipknot is heavy and I suppose syncopated (though I didn't realized that was a necessity in metal) but they lack in the talent department. They have some decent riffs, but the music is often repetitive and leaves little to be sought after in the melodic department (especially when it comes to bass, which is rarely heard). It's a fact that certain Slipknot songs can be played with one finger of the left hand.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-22_17:50:47", "killed": false, "user_key": "7a69a846b402120cbb64c294f9e7e464", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "1705332": {"up_voted": false, "ip": "", "has_replies": true, "message": "you are no one to decide who has or who has not earned the right to do this or that. Just because Joey does not always play what you might think a metal drummer needs to play like blast beats every bar, 32nd note double-bass every song, or riding the bell of the ride all the time, does not mean he is any less metal at all....his drumming style is a different approach to metal drumming....he adds more groove, which to me makes slipknot sound like they do. If you are going to talk about what a band does, you should research why the band does it first. They wear the mask, not to hide, but to show more of their personality to the crowd. Each mask reflects each members inner personality. the reason for two guitars is the same as the reason for the two additional drummers, to \"fatten\" out the sound give it more punch. Its not like the clown or chris help joey out by doing the fills,or doing the double bass patterns for him. All they do is play under the beat and add more punch to the 1,2,3,4. on occasion they play more over the beat much like a percussionist would with the higher tuned toms and beer kegs. To say that good drummers don't use percussionists is an ignorant statement. Not even the most talented drummers have 8 arms. They can't play a full kit and bongos and cowbells at the same time. So think of the sideways bass drums as the bongos, and the beer kegs as a cowbell, same thing. Try to be more open-minded and progressive in your thoughts as to what can be included a metal band and what can't. I think they are very talented and very unique in their sound and very thankful they don't sound like anyone else.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-31_07:32:51", "killed": false, "user_key": "007616b6f02b5889ccf3b23d8115e24a", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "1705333": {"up_voted": false, "ip": "", "has_replies": false, "message": "Some bands put on a show when the music isn't their strong point, and some bands put on a show to go with the music, you can decide either way depending on your tastes. Consider Alice Cooper, Lordi, Rammstein, Iron Maiden, Kiss, Behemoth and so on.<br>Anyway I mostly agree with Aaron, but it's a shame he felt the need to say dumbass repeatedly as it makes his argument seem less valid. Not to say I like Slipknot, I think perhaps they have 2 or 3 good songs... which isn't very impressive, but they are metal. Quality of music doesn't define genre, else there'd be many bands in the world who would have to be considered 'undefined'.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-30_17:59:51", "killed": false, "user_key": "ccf4a44d0d1e60a099c85cdee8b27625", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "1705334": {"up_voted": false, "ip": "", "has_replies": false, "message": "haha all this is very amusing to me.<br><br>And why all the interest all of a sudden?<br><br>--Kyle", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-07-31_07:44:05", "killed": false, "user_key": "bradyk", "has_been_anonymized": false, "edited": false, "author_is_moderator": true, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": true, "is_realtime": false}, "2000425": {"up_voted": false, "ip": "", "has_replies": true, "message": "Your argument was very logical and open minded; we are all very happy for your intelligent contribution. Thank you so much.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-09-02_02:35:29", "killed": false, "user_key": "b45e413d3c4df016556a63bdd4b4b46e", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 1, "is_first_child": true, "email": "", "parent_post_id": 1705336, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "1705336": {"up_voted": false, "ip": "", "has_replies": true, "message": "dont get me wrong, I love REAL METAL, but who who in their right mind would wear gay ass masks and smear fake blood all over the stage like its cool or somthing. Slipknot fans are certainly a breed apart, they remind me of faggot ass tool fans who think they are sweet just because \"they are understanding the deeper meaning\" BULL SHIT. no deeper meaning exists. and seriously, i saw them live with a friend in Louisiana, and they are a fuckin joke on stage, their fans are all fuckin queer ass cunts that should be kicked in the face, you know those people who walk in the room and everyone is like \"oh fuck, i got to go\" well its those twats that get amped off this gay music. FUCK SLIPKNOT .... its not Halloween last time I checked . they are not artists, they are fucking clowns.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-08-01_22:17:32", "killed": false, "user_key": "f55c5f4c5d1198df0ca6e6abc6cab44e", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 2, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "1705337": {"up_voted": false, "ip": "", "has_replies": true, "message": "I just saw that someone who posted before me said slipknots lyrics were \"deep and intelligent\"........... I had to post again simply to fuckin laugh at that GENIOUS statement. BLAAH !!!!! IM WEARING A MASK, I GUESS IM SCARY AND INTELLECTUAL TOO !!!!!  Maybe im wrong, maybe it\u2019s different because it\u2019s coming from one bunch of faggot tools (slipknot) to another (fans). I bet they rock those masks in the club, I totally would. and then i would punch my self in the cornea  for being so cool.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2008-08-01_22:35:03", "killed": false, "user_key": "f55c5f4c5d1198df0ca6e6abc6cab44e", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "13183099": {"up_voted": false, "ip": "", "has_replies": true, "message": "I'm only going to say two things in response:<br><br>1) Metal, by definition, is guitar driven.<br>2) Downtuning guitars is a way to hide a lack of talent for many people.  It's not always the case, for example the Deftones downtune heavily - not to be \"brutal\" or \"way heavy, man\", but for the atmospheric effect it allows them to have.  In the case of bands like Slipknot, Korn, Limp Bizkit, etc. it's to hide the lack of guitar talent in the band, which is obvious from song structures and guitar parts.<br><br>--Kyle", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-22_21:28:00", "killed": false, "user_key": "bradyk", "has_been_anonymized": false, "edited": false, "author_is_moderator": true, "from_request_user": false, "votable": true, "date": "4 months ago", "approved": true, "num_replies": 2, "is_first_child": true, "email": "", "parent_post_id": 13100145, "depth": 1, "points": 0, "author_is_creator": true, "is_realtime": false}, "18320252": {"up_voted": false, "ip": "", "has_replies": false, "message": "aaron; ur totally wrong about #11. their guitarists arent good at all, and it dosent take a guy that plays guitar to know that either. also, i speak for myself and others when i say that u arent funny at all by say DUMB ASS in almost every sentence. get a real sense of humor and stop trying to be funny", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2009-10-02_18:19:43", "killed": false, "user_key": "slipknotlvr1313", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "2 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": 1705328, "depth": 1, "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": "3436329", "user_id": "anonymous", "forum_id": "21979", "hash": -3345800189530866001}, "thread": {"total_posts": 0, "paginate": false, "per_page": 0, "slug": "why_slipknot_sucks", "num_pages": 1, "days_alive": 0, "realtime_paused": true, "id": 3436329, "num_posts": 46, "closed": false, "queued": false, "killed": false}, "reactions_limit": 10, "context": {"show_reply": true, "use_fb_connect": true, "forum_facebook_key": "96cf4cba61ea5bb97f2be75c98ac0171", "use_yahoo": false, "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: ";
  this.MODERATE_OPTIONS = "Moderate Options";

  // Thread moderator actions
  this.CLOSE_THREAD = "Close thread";
  this.OPEN_THREAD = "Open thread";
  this.REMOVE_THREAD = "Remove thread";
  this.RESTORE_THREAD = "Restore thread";
  this.ACTIONS = "Actions";
};
// Dsq.Strings

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

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

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

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

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

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

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





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



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

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

	this._lastHash = null;

	this._accumMsg = '';

	this._lastSeqno = 0;

	this.MAX_DATA_LEN	= 1024;

	this.WAIT_TIME		= 10;

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

};

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

FragmentPacket.prototype.log = function(msg) {



};

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

		hash = this.reader.name;
	} else {

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

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

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

		this._lastSeqno = seqno;

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

				this._accumMsg = '';

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

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

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

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

};

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

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

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

	if (packetNum === 0) {

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

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

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

	if (num_packets === packetNum) {

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

	this._lastSeqno++;

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

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

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

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

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

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


	this.receiverId = receiverId;
};

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

	var listener = function(e) {

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


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

		that.receiveCallback(data);
	};

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

PostMessagePacket.prototype.send = function(msg) {



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


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

	var packet;
	if (!msg) {

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

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

var JsonRpc = function() {

	this.ids = {};

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

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

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

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

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

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

				json = 'null';
				break;
		}

		return json;
	};

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

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

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

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

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

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

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

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

		send_func(this.objectToJSON(request));

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

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


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



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


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


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

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

	this.packetHandler = null;


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


	var _createReceiverForFragmentPacket = function() {

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

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

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

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

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

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

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

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

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

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

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

			that._ready = true;
		};

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

		that.receiver.onload = receiver_onload;







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

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

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

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


	var _createReceiverForPostMessage = function() {

		var receiver_onload = function() {

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

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


		ParentMessenger['_receiver_onload_' + receiverId] = receiver_onload;

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

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

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

};

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

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

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

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

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

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

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

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

	var sendFunc = function(msg) {

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


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


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

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

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

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

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

		if (msg.username) {

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

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

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

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

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

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

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

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

	this.url = Dsq.Urls.REPLY +
		'?' + (new Date()).getTime() +
		'&f=kyle-brady' +
		'&t=why_slipknot_sucks' +
		'&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://kyle-brady.disqus.com/why_slipknot_sucks/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>';
		html += '<a href="#" onclick="Dsq.Thread.showModeratorActions(); return false;">' + Dsq.Strings.MODERATE + '</a>';
		if (Dsq.jsonData.forum.reactions_enabled && Dsq.jsonData.reactions.length === 0) {
			html += '<a href="#" onclick="Dsq.Reaction.reportMissingReactions(); return false;">'
						+ Dsq.Strings.REPORT_MISSING_REACTIONS
						+ '</a>';
		}
		html +='</div>';

		return html;
	};

	this.postBox = function(post_id, use_fallback_iframe) {


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

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


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

		var _requestUserInfo = function() {
			var html;



			var user_has_email = false;

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

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

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


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



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

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




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

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

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

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

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

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

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

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



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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

		var service_icon = (reaction.get_service_name == 'trackback' || reaction.get_service_name == 'pingback' ? 'rss' : reaction.get_service_name.replace(' ', ''));
		item += (reaction.author_url && reaction.author_url !== ''
				? '</a>'
				: '')
			+ '</td>'
			+ '<td><cite class="dsq-comment-cite">' + reaction.author_name + '</cite> <span class="dsq-comment-header-time">' + reaction.date_created + '</span></td>'
			+ '<td class="dsq-comment-header-likes"></td>'
			+ '</tr></table></div>' // end dsq-comment-header
			+ '<div class="dsq-reaction-header" \
				<table> \
					<tr> \
						<td class="dsq-reaction-header-left">'
							+ '<img class="dsq-service-icon" src="' + Dsq.jsonData.media_url + '/images/reactions/services/' + service_icon + '.png" />'
							+ ' From <a class="dsq-service-name" target="_blank" href="' + reaction.url + '">' + reaction.get_service_name + '</a> '
							+ 'via <a href="' + reaction.source_url + '">' + (reaction.source == 'backtype' ? 'BackType' : 'UberVU') + '</a>'
						+ '</td>'
						+ '<td class="dsq-reaction-header-right">';

			if(reaction.retweets) {
				var num_retweets = reaction.retweets.length;
				if (num_retweets > 0) {
					if (num_retweets == 1) {
						item += 'One more retweet from <a href="' + reaction.retweets[0].url + '">'  + reaction.retweets[0].author_name + '</a>';
					} else {
						item += (num_retweets + ' more retweets from ');
						item += '<span id="dsq-reaction-retweets-' + reaction.id + '">';
						var n_tweets = (num_retweets > 3) ? 3 : num_retweets;
						item += Dsq.Templates.showRetweets(reaction.id, n_tweets);
						if (n_tweets != num_retweets) {
							item += '</span> <a onclick="Dsq.Templates.showRetweets(' + reaction.id + ', 0, \'dsq-reaction-retweets-' + reaction.id + '\');'
								+ 'this.parentNode.removeChild(this); return false;" href="#">Show all</a>';
						}
					}
				}
			}	
			item += '</td></tr> \
			</table> \
			</div>' // end dsq-reaction-header
			+ '<div class="dsq-comment-body"> \
				<div class="dsq-comment-message">' + reaction.body + '</div>'
			+ '</div> \
			<div class="dsq-comment-footer"> \
				<div class="dsq-comment-footer-left"> \
				</div>'
				+ (Dsq.jsonData.request.is_moderator || Dsq.jsonData.request.is_global_moderator 
					? ' \
					<div class="dsq-comment-footer-right"> \
						<button class="dsq-button-small dsq-hide-reaction" onclick="Dsq.Reaction.hide(' + reaction.id + ')">Hide</button> \
					</div>'
					: '')
			+ '</div>'
		item += '</li>'; /* Reaction HTML ends */
		return item;
	};

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

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

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

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

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

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



	
	this.chooseSubscribe = function(post_id) {

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

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

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

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

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

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

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

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

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

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

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

		d = auth_data;

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

				body.appendChild(edit_area);

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

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

		Dsq.Templates.toggleEdit(post_id);
	};

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

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

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

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

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

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

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

		}

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

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

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

		var extra_params = '';

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

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

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

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

		return html;
	}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

	//
	// 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 Kyle Brady: Blog" 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:3436329" 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'				: 'kyle-brady',
			't'				: 'why_slipknot_sucks',
			// 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/kyle-brady/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/kyle-brady/why_slipknot_sucks/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/kyle-brady/thread.js'
			+ '?slug='	+ 'why_slipknot_sucks'
			+ '&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/kyle-brady/thread.js'
			+ '?slug='	+ 'why_slipknot_sucks'
			+ '&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/kyle-brady/subscribe.js'
				+'?status=' 	+ status
				+ '&slug='		+ 'why_slipknot_sucks'
				+ '&email=' 	+ encodeURIComponent(email));

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

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

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

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

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

		Dsq.Popup.popModal(html, 'Settings');
	};

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

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

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

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

  this.toggleKilled = function() {
      Dsq.Utils.postToUrl('http://disqus.com/forums/kyle-brady/toggle_thread_killed.js', {thread:Dsq.jsonData.thread.id});
      window.setTimeout(function() { window.location.reload(); }, 500);
  };
};
// Dsq.Thread

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

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

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

	return obj;
}();

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

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

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

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

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

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

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

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

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

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

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

	this.check = function() {
		if (!ongoing_request && Dsq.jsonData.realtime_enabled) {
			if (prev_script) {
				prev_script.parentNode.removeChild(prev_script);
			}
			ongoing_request = true;
			prev_script = Dsq.Utils.execScript('http://disqus.com/forums/3436329/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/kyle-brady/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/kyle-brady/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-1705329">\
	 <div id="dsq-comment-header-1705329" class="dsq-comment-header">\
	 <cite id="dsq-cite-1705329" class="dsq-comment-cite">\
	 <a id="dsq-author-user-1705329" href="http://www.onkelandy.com/blog" target="_blank" rel="nofollow">Andy</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1705329" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1705329" class="dsq-comment-message">*lol* Nice one. I liked your thoughts but actually I still think Slipknot IS metal. They rock like but I guess u don\'t know that because u\'ve avoided to see them live. It\'s terrific, it\'s intense. Much heaviert and smartet than a lot of stuff called "metal". But actually WHO cares how u define the sound of a band. Either you like them or not, that\'s what counts.. right?</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17411875">\
	 <div id="dsq-comment-header-17411875" class="dsq-comment-header">\
	 <cite id="dsq-cite-17411875" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17411875">Medieval Girl</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17411875" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17411875" class="dsq-comment-message">Fuck Ya!  Who cares if some people think they suck.  Music should ALWAYS be about what gets YOU fired up!  Of course, if your more interested in being sheep, then by all means, go and join the rest of the fuckheads in this world who only listen to what others label as "cool music", or what\'s "In", or what\'s "good".  It\'s listening to those bands that "Suck", that makes us individuals.  I say, "Right On" to those who do what pleases them instead of giving a fuck what others say!  By the way, I think Slipknot is awesome!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-23853113">\
	 <div id="dsq-comment-header-23853113" class="dsq-comment-header">\
	 <cite id="dsq-cite-23853113" class="dsq-comment-cite">\
	 <span id="dsq-author-user-23853113">RealMetalHead</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-23853113" class="dsq-comment-body">\
	 <div id="dsq-comment-message-23853113" class="dsq-comment-message">You do realize just by saying you\'re being an "Individual" you\'re listening to the exact same thing all those "Individuals" listen to? You all want to be rebels by not giving a fuck and not listening to anything anyone else listens to but you\'re doing exactly that. You need to realize that slipknot is what\'s "In" just because they\'re "Individual".</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1705328">\
	 <div id="dsq-comment-header-1705328" class="dsq-comment-header">\
	 <cite id="dsq-cite-1705328" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1705328">Aaron</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1705328" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1705328" class="dsq-comment-message">1. Joey Jordison is one of the best drummers in the world. The custom percussionists are just for special sounds, like hitting metal cans and making deeper drum sounds, dumb ass.<br>2. They record albums without their masks. DUMB ASS. That\'s why Corey sounds different a bit at concerts.<br>3. They downtune for the sound they want. And last time I checked...Since when did you have to earn the right to play music? DUMB ASS. And listen to their solos Mr. I\'ve earned the right to make music.<br>4. Cornfield Piglovers? DUMB ASS. Who says you have to be like where you come from. Steriotypical ASS HOLE.<br>5. Corey\'s face is fine. They wear the masks so people will concentrate more on their music and not their appearences.<br>6. More guitarists = Better originality and sound. DUMB ASS.<br>7. That was such a retarded comparison I have no comback. Please refer to # 5<br>8. Who the hell are you to tell people what is and is NOT music? Oh no, we can\'t listen to what WE want. Please tell us why YOUR opinion is better than everyone elses.<br>9. Again, DUMB ASS. Maybe people who like to have lots of cool lights and sound and people jumping into the crowds. OHH NOOOO. I forgot. You didn\'t say that was OK.<br>10. Let us all recall...that was the first Slipknot album consisting of the original members. When Corey came in, I believe the titles became a lot more understandable. Thank you for using all the bad things to make yourself look like a ... wait for it ... DUMB ASS.<br>11. Heavy = SLIPKNOT, Syncopated = SLIPKNOT, they cay cuz, comin\' and such, Talented Guitars = SLIPKNOT MICK AND JIM ARE AWESOME, combined with aggressive tempos, intricate and intense drumming, and aggressive vocals that breach dark, but highly intelligent and usually deep, material = THAT SOUNDS A LOT LIKE FUCKING SLIPKNOT DUMB ASSSSSSS!!!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17411996">\
	 <div id="dsq-comment-header-17411996" class="dsq-comment-header">\
	 <cite id="dsq-cite-17411996" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17411996">Medieval Girl</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17411996" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17411996" class="dsq-comment-message">To Aaron:<br>AWESOME, AWESOME reply!!!  I could not agree more!!!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-18320252">\
	 <div id="dsq-comment-header-18320252" class="dsq-comment-header">\
	 <cite id="dsq-cite-18320252" class="dsq-comment-cite">\
	 <span id="dsq-author-user-18320252">slipknotlvr1313</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-18320252" class="dsq-comment-body">\
	 <div id="dsq-comment-message-18320252" class="dsq-comment-message">aaron; ur totally wrong about #11. their guitarists arent good at all, and it dosent take a guy that plays guitar to know that either. also, i speak for myself and others when i say that u arent funny at all by say DUMB ASS in almost every sentence. get a real sense of humor and stop trying to be funny</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1705330">\
	 <div id="dsq-comment-header-1705330" class="dsq-comment-header">\
	 <cite id="dsq-cite-1705330" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1705330">idrian</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1705330" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1705330" class="dsq-comment-message">well, in the end most of the bands that you mentioned have one thing in common with slipknot: heavy.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1705331">\
	 <div id="dsq-comment-header-1705331" class="dsq-comment-header">\
	 <cite id="dsq-cite-1705331" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1705331">Leroy</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1705331" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1705331" class="dsq-comment-message">Ok mister Aaron, while you do raise a number of angry points, not valid but angry, you fail to contribute much. You didn\'t say much, and you wasted a whole lot of time on stupid comments that were obviously not meant to be taken to heart.<br><br>1. Yes, Joey Jordinson is good. But what about the two guys hitting those "metal cans" which are actually beer kegs, and who also play real drums as well. How can they be considered very good, or necessary when, as you put it, Joey Jordinson is so much better?<br>2. Mr Brady was actually referring to concerts, where they do wear the masks, and as you said it makes them sound different. Mr. Brady said it makes them sound bad.<br>3. You both raise valid points. Down tuning guitars doesn\'t make you metal at all (country players use baritone quite often), yet it is a desired sound. Lets call it a draw and move on.<br>4. This was a stupid point.<br>5. Wearing masks DOES NOT and I NEVER makes people concentrate on your music over your appearance. How can they concentrate on your music when you\'re wearing a mask, which obviously ALTERS YOUR APPEARANCE.<br>6. While this is sometimes true, its not a rule. Its probably more wrong than write. Single guitarists HAVE to be more talented because there\'s only one of them. And it definitely doesn\'t work in slipknots case. Usually the two guitarists play the same part, effectively using two people to do the work of one. They most likely did this for the same reason they have 3 drummers. It gives more sound though, that is true, but not much in skill or originality.<br>7. I agree with you here.<br>8. Here too (I don\'t see what rap has to do with slipknot.<br>9. This is a moot point and is more up to the budget and taste of the band than any actual meter of skill.<br>10. Ok, that is a good point.<br>11. Here its divided. True, Slipknot is heavy and I suppose syncopated (though I didn\'t realized that was a necessity in metal) but they lack in the talent department. They have some decent riffs, but the music is often repetitive and leaves little to be sought after in the melodic department (especially when it comes to bass, which is rarely heard). It\'s a fact that certain Slipknot songs can be played with one finger of the left hand.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1705333">\
	 <div id="dsq-comment-header-1705333" class="dsq-comment-header">\
	 <cite id="dsq-cite-1705333" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1705333">person</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1705333" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1705333" class="dsq-comment-message">Some bands put on a show when the music isn\'t their strong point, and some bands put on a show to go with the music, you can decide either way depending on your tastes. Consider Alice Cooper, Lordi, Rammstein, Iron Maiden, Kiss, Behemoth and so on.<br>Anyway I mostly agree with Aaron, but it\'s a shame he felt the need to say dumbass repeatedly as it makes his argument seem less valid. Not to say I like Slipknot, I think perhaps they have 2 or 3 good songs... which isn\'t very impressive, but they are metal. Quality of music doesn\'t define genre, else there\'d be many bands in the world who would have to be considered \'undefined\'.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1705332">\
	 <div id="dsq-comment-header-1705332" class="dsq-comment-header">\
	 <cite id="dsq-cite-1705332" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1705332">maggot</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1705332" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1705332" class="dsq-comment-message">you are no one to decide who has or who has not earned the right to do this or that. Just because Joey does not always play what you might think a metal drummer needs to play like blast beats every bar, 32nd note double-bass every song, or riding the bell of the ride all the time, does not mean he is any less metal at all....his drumming style is a different approach to metal drumming....he adds more groove, which to me makes slipknot sound like they do. If you are going to talk about what a band does, you should research why the band does it first. They wear the mask, not to hide, but to show more of their personality to the crowd. Each mask reflects each members inner personality. the reason for two guitars is the same as the reason for the two additional drummers, to "fatten" out the sound give it more punch. Its not like the clown or chris help joey out by doing the fills,or doing the double bass patterns for him. All they do is play under the beat and add more punch to the 1,2,3,4. on occasion they play more over the beat much like a percussionist would with the higher tuned toms and beer kegs. To say that good drummers don\'t use percussionists is an ignorant statement. Not even the most talented drummers have 8 arms. They can\'t play a full kit and bongos and cowbells at the same time. So think of the sideways bass drums as the bongos, and the beer kegs as a cowbell, same thing. Try to be more open-minded and progressive in your thoughts as to what can be included a metal band and what can\'t. I think they are very talented and very unique in their sound and very thankful they don\'t sound like anyone else.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17412167">\
	 <div id="dsq-comment-header-17412167" class="dsq-comment-header">\
	 <cite id="dsq-cite-17412167" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17412167">Medieval Girl</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17412167" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17412167" class="dsq-comment-message">And, yet again, an AWESOME, AWESOME reply!!!<br><br>SLIPKNOT ROCKS!!!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1705334">\
	 <div id="dsq-comment-header-1705334" class="dsq-comment-header">\
	 <cite id="dsq-cite-1705334" class="dsq-comment-cite">\
	 <a id="dsq-author-user-1705334" href="http://www.kyle-brady.com" target="_blank" rel="nofollow">Kyle Brady</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1705334" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1705334" class="dsq-comment-message">haha all this is very amusing to me.<br><br>And why all the interest all of a sudden?<br><br>--Kyle</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1705335">\
	 <div id="dsq-comment-header-1705335" class="dsq-comment-header">\
	 <cite id="dsq-cite-1705335" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1705335">maggot</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1705335" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1705335" class="dsq-comment-message">because they are coming out with a new album.....</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1705336">\
	 <div id="dsq-comment-header-1705336" class="dsq-comment-header">\
	 <cite id="dsq-cite-1705336" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1705336">Max T</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1705336" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1705336" class="dsq-comment-message">dont get me wrong, I love REAL METAL, but who who in their right mind would wear gay ass masks and smear fake blood all over the stage like its cool or somthing. Slipknot fans are certainly a breed apart, they remind me of faggot ass tool fans who think they are sweet just because "they are understanding the deeper meaning" BULL SHIT. no deeper meaning exists. and seriously, i saw them live with a friend in Louisiana, and they are a fuckin joke on stage, their fans are all fuckin queer ass cunts that should be kicked in the face, you know those people who walk in the room and everyone is like "oh fuck, i got to go" well its those twats that get amped off this gay music. FUCK SLIPKNOT .... its not Halloween last time I checked . they are not artists, they are fucking clowns.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-2000425">\
	 <div id="dsq-comment-header-2000425" class="dsq-comment-header">\
	 <cite id="dsq-cite-2000425" class="dsq-comment-cite">\
	 <span id="dsq-author-user-2000425">Drew Nutter</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-2000425" class="dsq-comment-body">\
	 <div id="dsq-comment-message-2000425" class="dsq-comment-message">Your argument was very logical and open minded; we are all very happy for your intelligent contribution. Thank you so much.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-2000554">\
	 <div id="dsq-comment-header-2000554" class="dsq-comment-header">\
	 <cite id="dsq-cite-2000554" class="dsq-comment-cite">\
	 <a id="dsq-author-user-2000554" href="http://www.kyle-brady.com" target="_blank" rel="nofollow">Kyle Brady</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-2000554" class="dsq-comment-body">\
	 <div id="dsq-comment-message-2000554" class="dsq-comment-message">Thanks Drew.<br><br>A true light in the darkness.<br><br>--Kyle</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-1705337">\
	 <div id="dsq-comment-header-1705337" class="dsq-comment-header">\
	 <cite id="dsq-cite-1705337" class="dsq-comment-cite">\
	 <span id="dsq-author-user-1705337">Max T</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-1705337" class="dsq-comment-body">\
	 <div id="dsq-comment-message-1705337" class="dsq-comment-message">I just saw that someone who posted before me said slipknots lyrics were "deep and intelligent"........... I had to post again simply to fuckin laugh at that GENIOUS statement. BLAAH !!!!! IM WEARING A MASK, I GUESS IM SCARY AND INTELLECTUAL TOO !!!!!  Maybe im wrong, maybe it’s different because it’s coming from one bunch of faggot tools (slipknot) to another (fans). I bet they rock those masks in the club, I totally would. and then i would punch my self in the cornea  for being so cool.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-2000443">\
	 <div id="dsq-comment-header-2000443" class="dsq-comment-header">\
	 <cite id="dsq-cite-2000443" class="dsq-comment-cite">\
	 <span id="dsq-author-user-2000443">Drew Nutter</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-2000443" class="dsq-comment-body">\
	 <div id="dsq-comment-message-2000443" class="dsq-comment-message">Your statement about genious statements was just genius. Random unsupported insults are always a great way to drive a point home; and spelling words like "genius" wrong always adds to your credibility, especially when you are using them sarcastically to question an individual\'s intelligence.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-2000419">\
	 <div id="dsq-comment-header-2000419" class="dsq-comment-header">\
	 <cite id="dsq-cite-2000419" class="dsq-comment-cite">\
	 <span id="dsq-author-user-2000419">Drew Nutter</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-2000419" class="dsq-comment-body">\
	 <div id="dsq-comment-message-2000419" class="dsq-comment-message">None of what you said really gives any evidence that Slipknot is either not talented, intelligent, or cannot make good music; all you really said was that you don\'t like their way of doing things. Its possible to be ugly, have stupid masks, pointless album titles, and come from Iowa (why that has any significance is beyond me) and still be good musicians. Having 3 drummers doesn\'t mean that you are compensating for a lack of skill, it is just as possible that it is just a combination of three talented drummers that are just going for an equally musical but more dense sound. It allows them to unleash their full music writing potential as they are not forced to limit it to the abilities of one drummer--no matter how good of a drummer you are you have limits. Having a lead, rhythm, and bass guitar is pretty normal, as well as having one singer--your criticism "How many singers? How many guitarists? Uh huh? Really?" doesn\'t really mean anything; but again, it follows the same pattern as the drummers. Slipknot definitely fits with your definition of Metal, an they have especially mastered, in comparison to other metal bands, "aggressive tempos, intricate and intense drumming, and aggressive vocals." That quote should be used in the definition of Slipknot. It is evident that this angry rant is a result of closed mindedness in your inability to comprehend something different from what you have become accustomed to with your immediate response being that of an angry criticism of how things are different rather than an understanding of why. Things can be different from the norm either because of an attempt to compensate or because of originality and an attempt to go beyond the greatness they would still achieve if they were only typical. I think you would find that most intelligent people that approach Slipknot openly would agree on the latter of those two.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-2000587">\
	 <div id="dsq-comment-header-2000587" class="dsq-comment-header">\
	 <cite id="dsq-cite-2000587" class="dsq-comment-cite">\
	 <a id="dsq-author-user-2000587" href="http://www.kyle-brady.com" target="_blank" rel="nofollow">Kyle Brady</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-2000587" class="dsq-comment-body">\
	 <div id="dsq-comment-message-2000587" class="dsq-comment-message">At least it\'s a logical and sensible argument, instead of the usual random obscenities and angry people.<br><br>I won\'t go tit-for-tat here, but all of what I said does point to not being talented... within the scope of Slipknot.  It doesn\'t always apply, but it happens to here.<br><br>Having a "rhythm section" like they do could turn out pretty cool, but when you analyze the individuals involved, the only one that comes out with real talent is Corey Taylor.<br><br>Also, I\'d love to know of a band that wears masks that actually has talent, or even demonstrates that talent... GWAR is obviously not an example of this, and neither is Slipknot.  True, there are metal/"metal" bands that don\'t wear masks and suck horribly, but I\'ve yet to find one that *doesn\'t* hide behind a facade, using that as their "gimmick" instead of playing interesting or talented or truly original music.<br><br>However, for all the world knows, maybe all of their musicians are secretly virtuosos, and the guitarists just choose to play different variations of the same chord progressions without any difficult rhythms, fingerings, or runs.  And maybe the drummers are truly on a Purtnoy level, and we just can\'t tell because they\'re too busy playing stereotypical shockrock beats.<br><br>--Kyle<br><br>p.s. If you didn\'t get it, which you didn\'t, I feel like I should point it out:  I wrote this list with a little bit of "tongue in cheek".  I really don\'t like Slipknot at all, but you should also know that this is approaching the subject from a perspective similar to "John Petrucci = talented, Frank Novinec = not ... Mike Purtnoy = talented, Brad Roberts = not ... Rob Halford = talented, Ronnie James Dio = annoying but slightly talented ... etc."</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-3581579">\
	 <div id="dsq-comment-header-3581579" class="dsq-comment-header">\
	 <cite id="dsq-cite-3581579" class="dsq-comment-cite">\
	 <span id="dsq-author-user-3581579">Dilbert</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-3581579" class="dsq-comment-body">\
	 <div id="dsq-comment-message-3581579" class="dsq-comment-message">Mate feed kill repeat wasn\'t corey taylor, and you just insulted machine head, slayer, lamb of god and all sorts of other bands with your downtuned open string chugging bullshit, the masks are in the vain of mr bungle, kiss etc. Iowa is their hometown fuckhead, and how have you earned your right to play downtuned?? what gives someone that right, you dick, this aaron guy has the right idea, good job man</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-3581609">\
	 <div id="dsq-comment-header-3581609" class="dsq-comment-header">\
	 <cite id="dsq-cite-3581609" class="dsq-comment-cite">\
	 <a id="dsq-author-user-3581609" href="http://www.kyle-brady.com" target="_blank" rel="nofollow">Kyle Brady</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-3581609" class="dsq-comment-body">\
	 <div id="dsq-comment-message-3581609" class="dsq-comment-message">Nowhere in there did I mention Machine Head or Lamb of God.  If you learn to read, I say that downtuning does not make you sound good or be talented.  But not that downtuning is necessarily bad in and of itself.  It all depends on what you do with it.<br><br>Slayer has no talent.  And no one will debate me on that point.<br><br>You earn that right by learning to play the goddamn guitar, and not just banging the same five drop-tuned chords all the time.  It\'s often called "skills", "talent" or "chops".  You might want to do some research on them.<br><br>Once again, thanks for playing.  I enjoy your random vehemence and utter lack of intelligent arguments.<br><br>--Kyle</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-13100145">\
	 <div id="dsq-comment-header-13100145" class="dsq-comment-header">\
	 <cite id="dsq-cite-13100145" class="dsq-comment-cite">\
	 <a id="dsq-author-user-13100145" href="http://www.facebook.com/profile.php?id=709620143" target="_blank" rel="nofollow">facebook-709620143</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-13100145" class="dsq-comment-body">\
	 <div id="dsq-comment-message-13100145" class="dsq-comment-message">huh, that\'s cute. First we shall address the "more than one drummer" Joey is an amazing drummer. Easily top 10 in all of metal. Yeah the other drummers, clown, sid, craig, they aren\'t "drummers" they add layers to the music making it deeper than standard 2 guitars one bass one drummers and a singer. If you knew anything about slipknot you\'d know that.<br><br>Slipknot does not focus on guitars. The focus on lyrics and drums. <br><br>Iowa is where they are from. The songs are their stories. Mate.Feed.Kill.Repeat. was before Corey\'s day and before the band became what it really stands for. That\'s like saying "Metallica sucks because Kill \'Em All sucks" you can\'t hold an album in which a band didn\'t have is most crucial member as the criteria upon which they are judged. <br><br>"combined with aggressive tempos, intricate and intense drumming, and aggressive vocals that breach dark, but highly intelligent and usually deep, material." Aggressive tempos, check<br>intricate and intense drumming, uh you ever heard disasterpiece? Aggressive vocals, dark, intelligent, deep. All the songs are deep, and it doesn\'t get more aggressive than "I wanna slit your throat and fuck the wound." <br><br>And about "earning the right" you don\'t really like earn different levels of tuning. you just kinda tune your guitar however you want...they do it to make the music heavier and deeper.<br><br>LITTLE Mouth slits? seeing as Corey is the singer his mas is the only one that matters and his mouth can open completely for screams with room to spare in his mask. The mouth hole is huge. Seeing as I\'ve actually worn one, I speak from experience. <br><br>Just because Slipknot isn\'t your type of band doesn\'t mean you need to hate on them. I\'m so sick of this "real metal" comment. Please define this. If you mean ATR/KSE/AILD/BMTH then the only difference is slipknot isn\'t guitar driven, and is vocally more aggressive. If you mean those awful Dying Fetus shit bands. I feel sorry for you. They don\'t wear masks and you can\'t understand them &gt;.&gt; <br><br>And one last thing "they wear masks haha its halloween haha" They wear masks to draw attention to their performance and music rather than themselves. And their lyrics are sooooo unintelligent. I mean megalomaniac was one of the first words I learned. <br><br>Yeah Nu metal is Dead. It\'s not like Disturbed and Slipknot released albums last year or anything.<br><br>Slipknot has 2 guitarists......Just like bands who have "earned the right" i.e. Metallica.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-13183099">\
	 <div id="dsq-comment-header-13183099" class="dsq-comment-header">\
	 <cite id="dsq-cite-13183099" class="dsq-comment-cite">\
	 <a id="dsq-author-user-13183099" href="http://www.kyle-brady.com" target="_blank" rel="nofollow">Kyle Brady</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-13183099" class="dsq-comment-body">\
	 <div id="dsq-comment-message-13183099" class="dsq-comment-message">I\'m only going to say two things in response:<br><br>1) Metal, by definition, is guitar driven.<br>2) Downtuning guitars is a way to hide a lack of talent for many people.  It\'s not always the case, for example the Deftones downtune heavily - not to be "brutal" or "way heavy, man", but for the atmospheric effect it allows them to have.  In the case of bands like Slipknot, Korn, Limp Bizkit, etc. it\'s to hide the lack of guitar talent in the band, which is obvious from song structures and guitar parts.<br><br>--Kyle</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-13478928">\
	 <div id="dsq-comment-header-13478928" class="dsq-comment-header">\
	 <cite id="dsq-cite-13478928" class="dsq-comment-cite">\
	 <span id="dsq-author-user-13478928">e1even</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-13478928" class="dsq-comment-body">\
	 <div id="dsq-comment-message-13478928" class="dsq-comment-message">you said in the original post that "metal is not a dictionary definition"<br>you have just contradicted yourself</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-13529687">\
	 <div id="dsq-comment-header-13529687" class="dsq-comment-header">\
	 <cite id="dsq-cite-13529687" class="dsq-comment-cite">\
	 <a id="dsq-author-user-13529687" href="http://www.kyle-brady.com" target="_blank" rel="nofollow">Kyle Brady</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-13529687" class="dsq-comment-body">\
	 <div id="dsq-comment-message-13529687" class="dsq-comment-message">Yep, sure.<br><br>Like I said, thanks for playing.<br><br>--Kyle</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17412395">\
	 <div id="dsq-comment-header-17412395" class="dsq-comment-header">\
	 <cite id="dsq-cite-17412395" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17412395">Medieval Girl</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17412395" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17412395" class="dsq-comment-message">NICE!!! I LOVE IT!!!  AND FUCK Max T!!!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-13369248">\
	 <div id="dsq-comment-header-13369248" class="dsq-comment-header">\
	 <cite id="dsq-cite-13369248" class="dsq-comment-cite">\
	 <a id="dsq-author-user-13369248" href="http://www.facebook.com/profile.php?id=709620143" target="_blank" rel="nofollow">facebook-709620143</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-13369248" class="dsq-comment-body">\
	 <div id="dsq-comment-message-13369248" class="dsq-comment-message">Metal is, by definition, "heavy, syncopated, and talented guitars (influenced by other genres and styles like Classical or Middle Eastern) combined with aggressive tempos, intricate and intense drumming, and aggressive vocals that breach dark, but highly intelligent and usually deep, material." Which is completely slipknot. They definitely have songs that showcase the guitar talent, i.e. Psychosocial, and plenty of songs that are guitar driven, i.e. (sic), All Hope Is Gone, Opium of the People, The Nameless, and Before I Forget to name a few. Now, these songs aren\'t all the same pace as shit metal, i.e dying fetus, but that doesn\'t make them slow. They\'re all faster than Metallica. If you want to criticize a band for breaking the typical chug chug blast beat chug chug structure. That is you right. But because they, like Disturbed, broke the mold of typical metal, I think that makes them all the more talented to play music that fits them, not a genre. If anything, Slipknot breaks the "mainstream" mold that most popular bands have conformed to inside the genre itself.<br><br>As for down tuning, it is used SOLELY to make the impossible possible. You can\'t play certain riffs at all in standard tunings. <br>---5--<br>---5--<br>3-----<br>etc. Take the riff in System of a Down\'s Toxicity, that is not possible (for most people) in standard tuning. Also, down tuning make the guitars deeper, adding that disturbed, w/e you wanna call it layer to the music. If metal is solely about the guitars, why have the singers/drums? Corey and Joey are the focus of that band. Every thing else is extra in most songs. If you tell me that the two of them aren\'t one of, if not the best in their role you sir, do not understand the purpose of metal. <br><br>I\'ll agree that their guitars aren\'t even close to the best. Not even top 100, but there are tons of bands who have awful members and are still considered amazing. Metallica, James is an awful singer, especially post ...And Justice For All. As Blood Runs Black\'s singer isn\'t the best in the world, but their drums and guitars are pretty close. My whole point is that a band isn\'t one instrument. It\'s the culmination of all the instruments as one. If Slipknot isn\'t qualified in that way, and doesn\'t fit the "syncopated guitars, which just in case you don\'t know is notes or tones in a rhythmic pattern i.e. short-long-short, heavy driving drums, and dark lyrics" I guess there isn\'t a band in the world that is "true" metal.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-13370543">\
	 <div id="dsq-comment-header-13370543" class="dsq-comment-header">\
	 <cite id="dsq-cite-13370543" class="dsq-comment-cite">\
	 <a id="dsq-author-user-13370543" href="http://www.kyle-brady.com" target="_blank" rel="nofollow">Kyle Brady</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-13370543" class="dsq-comment-body">\
	 <div id="dsq-comment-message-13370543" class="dsq-comment-message">I\'m sorry, I like Disturbed, but the moment you referenced them as revolutionary for breaking "the mold of typical metal", you lost any intelligent response I was going to give you.<br><br>--Kyle</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-13785220">\
	 <div id="dsq-comment-header-13785220" class="dsq-comment-header">\
	 <cite id="dsq-cite-13785220" class="dsq-comment-cite">\
	 <span id="dsq-author-user-13785220">Ben</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-13785220" class="dsq-comment-body">\
	 <div id="dsq-comment-message-13785220" class="dsq-comment-message">Slipknot are one of the least talented mainstream (fwr: disgustingly average) thrash bands I\'ve ever heard. They re-hash 20-year old riffs very, very badly, and occasionally whine some drivel about how hard their lives are between shouting like (to quote Chris Connelly - an original, and a vocalist I generally respect) "Fozzy Bear on crystal meth".<br>Listen to the mediocrity that drips from every lame hook, hackneyed "solo" and incomprehensible grunt, and think on the fact that they canceled their Reading festival slot (thanks, boys) last year due to... a broken ankle..? WTF? I\'ve known grown-ups play another hour\'s gig with a broken ankle... and not even notice \'til after-wards. It\'s no big deal. You can stand up and hold a mic for god\'s sake... or play in a wheel chair, like Kurt did.<br>Worst of all - amazingly - it requires the combined "talents" of nine - NINE - of the fuckers to create their turgid shit. Aside from the dust-bin (trash-can) drumming. I thought that was OK, in a seen-it-before-but-it\'s-OK-to-see-it-again-this-ONCE kind of way. They could make a living busking like that if they could just keep time...<br>I\'d rate Atomic Kitten higher. (Clue: I don\'t like Atomic Kitten at all). Slipknot are the Peter Andre of Metal.<br><br><a href="http://bl0g.wa-junge.de/wp-content/_peter_andre_jordan_wedding.jpg" rel="nofollow">http://bl0g.wa-junge.de/wp-content/_peter_andre...</a><br><br>(In the white suit, holding Jordan\'s hand, and for once trying to look like something vaguely human instead of a freshly-trepanned meat-puppet, he STILL scares me far more than all nine of them, in their masks, sniffing dead crows in jars and performing their "heaviest" track).<br><br>Just my opinion, of course.<br><br>Peace.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-13906771">\
	 <div id="dsq-comment-header-13906771" class="dsq-comment-header">\
	 <cite id="dsq-cite-13906771" class="dsq-comment-cite">\
	 <span id="dsq-author-user-13906771">Anonymous</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-13906771" class="dsq-comment-body">\
	 <div id="dsq-comment-message-13906771" class="dsq-comment-message">maggots (moar liek f*ggots amirite?) are pitiful</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-14510806">\
	 <div id="dsq-comment-header-14510806" class="dsq-comment-header">\
	 <cite id="dsq-cite-14510806" class="dsq-comment-cite">\
	 <span id="dsq-author-user-14510806">DELTAFORCEADC2</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-14510806" class="dsq-comment-body">\
	 <div id="dsq-comment-message-14510806" class="dsq-comment-message">O fuck u, who cares where they r from, ok they have 3 drummers cuz they fucking can, joey is an amazing drummer, and mabey they got their work ethic from Iowa cuz here in Iowa it isn\'t so fucking pretty all the god damn time. And they r fucking metal, they do have talented guitarists, and corey stays with slipknot cuz he love making great music and has a great friendship with the rest of the band, 9 members for 10 years, ya most 4 pep bands don\'t last tht long</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17412546">\
	 <div id="dsq-comment-header-17412546" class="dsq-comment-header">\
	 <cite id="dsq-cite-17412546" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17412546">Medieval Girl</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17412546" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17412546" class="dsq-comment-message">Fuking A!!!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-14510864">\
	 <div id="dsq-comment-header-14510864" class="dsq-comment-header">\
	 <cite id="dsq-cite-14510864" class="dsq-comment-cite">\
	 <span id="dsq-author-user-14510864">DELTAFORCEADC2</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-14510864" class="dsq-comment-body">\
	 <div id="dsq-comment-message-14510864" class="dsq-comment-message">Fuck tht max t fag.    He just think they wear masks cuz they look cool    no.  They do cuz they want to.  And they down tune their guitars cuz thts the kind of music they like to play, and if slipknot is supposubly not metal then wtf r they.    O ya.   METAL</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-16679667">\
	 <div id="dsq-comment-header-16679667" class="dsq-comment-header">\
	 <cite id="dsq-cite-16679667" class="dsq-comment-cite">\
	 <span id="dsq-author-user-16679667">ironsabbath</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-16679667" class="dsq-comment-body">\
	 <div id="dsq-comment-message-16679667" class="dsq-comment-message">I agree. But unfortunately, I used to like them :P<br><br>I have no clue why, but when I was young, I liked pissed off, yelling music. Then when I grew up, I only listened to some of Slipknot\'s more melodic stuff (which there is not a lot of), so I completely lost interest in them. <br><br>The masks are really a stupid idea, and I don\'t like them. I absolutely HATE their guitar tone. It is too distorted, and downtuned. Don\'t get me wrong, I like some downtuning, because some Black Sabbath albums are all downtuned (Sabbath Bloody Sabbath, Master of Reality). But Slipknot takes it too far, and it is true that it\'s good to hide talent and mask mistakes. Their image is all about pain, agnst, and sorrow. Why listen to music to make you feel sad or pissed off? I also think Slipknot\'s fanbase is a turn off. Their fans call themselves \'maggots\' and are really loyal. That sounds good, but it\'s too bad that they\'re idiots and are usually losers that are always depressed.<br><br>I like to listen to real metal (Iron Maiden, Megadeth, Judas Priest, Black Sabbath) because they have VERY talented guitarists and drummers, great singers, and good lyrics. <br><br>Slipknot has poor guitarists, and okay drummer(s). The singer sounds horrible when singing (screaming), rapping, or whimpering. The lyrics are about sad, stupid crap.<br><br>My advice to anyone who likes Slipknot: If you like them, go ahead. Just don\'t like them because people you know do. Be a leader, not a follower. Maybe you can start a trend of Classic Rock or Old School Heavy Metal. <br><br>Sorry for the long comment, but they\'re what I do best :P</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17412704">\
	 <div id="dsq-comment-header-17412704" class="dsq-comment-header">\
	 <cite id="dsq-cite-17412704" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17412704">Medieval Girl</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17412704" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17412704" class="dsq-comment-message">Like I always say, "Fuck everyone else and just listen to what you want to listen to!"  If you like Slipknot then screw the A Holes that don\'t!  If Slipknot is not for you then don\'t listen!  And that A Hole Max T can go fuck himself!  It\'s usually the closet faggots that go around calling everyone else faggots!!!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17857873">\
	 <div id="dsq-comment-header-17857873" class="dsq-comment-header">\
	 <cite id="dsq-cite-17857873" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17857873">Ricardo F.S. [Portugal]</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17857873" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17857873" class="dsq-comment-message">i couldn\'t agree more! medieval girl and of course, drew =)<br><br>slipknot is a great band and its not because they different they not great.<br><br> there\'s always a different band/singer/music etc, out there and the people can blame other one to like different kind of things so, no one\'s have the moral to judge whatever you want without knowing it or just because you dont like it...<br><br> so please if you dont like slipknot or other band just shutTFup and save your options to yourselves!<br><br>if you have something to say just dont piss-off other people.<br> and thats the real truth of music =) .<br><br>you know what that point means dont you?  this one-&gt; .<br>(ps.: like i say =P, then dont blame my comment if it asn\'t a good english)<br><br>so it\'s final.<br><br>         \\../.       .\\../</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17857994">\
	 <div id="dsq-comment-header-17857994" class="dsq-comment-header">\
	 <cite id="dsq-cite-17857994" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17857994">Ricardo F.S. [Portugal]</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17857994" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17857994" class="dsq-comment-message">i sayd can sorry , i ment Cant!!!!<br><br>=P<br><br>.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-17858177">\
	 <div id="dsq-comment-header-17858177" class="dsq-comment-header">\
	 <cite id="dsq-cite-17858177" class="dsq-comment-cite">\
	 <span id="dsq-author-user-17858177">Ricardo F.S. [Portugal]</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-17858177" class="dsq-comment-body">\
	 <div id="dsq-comment-message-17858177" class="dsq-comment-message">and its not options its opinions =P sorry again im all fkd up with english =P.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-18463139">\
	 <div id="dsq-comment-header-18463139" class="dsq-comment-header">\
	 <cite id="dsq-cite-18463139" class="dsq-comment-cite">\
	 <a id="dsq-author-user-18463139" href="http://www.facebook.com/people/Brayden-Ballenger/1437641004" target="_blank" rel="nofollow">Brayden Ballenger</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-18463139" class="dsq-comment-body">\
	 <div id="dsq-comment-message-18463139" class="dsq-comment-message">Haha <br>Medeival Girl said "A HOLE!"<br>LMFAO!!!!! <br>....yeah slipknot sucks.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-18463239">\
	 <div id="dsq-comment-header-18463239" class="dsq-comment-header">\
	 <cite id="dsq-cite-18463239" class="dsq-comment-cite">\
	 <span id="dsq-author-user-18463239">Jak</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-18463239" class="dsq-comment-body">\
	 <div id="dsq-comment-message-18463239" class="dsq-comment-message">Haha <br>Medeival Girl said "A HOLE!"<br>LMFAO!!!!! <br>....yeah slipknot sucks.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-20065777">\
	 <div id="dsq-comment-header-20065777" class="dsq-comment-header">\
	 <cite id="dsq-cite-20065777" class="dsq-comment-cite">\
	 <span id="dsq-author-user-20065777">HAITHAR</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-20065777" class="dsq-comment-body">\
	 <div id="dsq-comment-message-20065777" class="dsq-comment-message">maggors are retarded.<br>Slipknot sounds like shit.<br>Corey does look like he has down syndrome<br><br>oh and<br><br>Dimmu Borgir is hilarious.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-20073423">\
	 <div id="dsq-comment-header-20073423" class="dsq-comment-header">\
	 <cite id="dsq-cite-20073423" class="dsq-comment-cite">\
	 <span id="dsq-author-user-20073423">DAG</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-20073423" class="dsq-comment-body">\
	 <div id="dsq-comment-message-20073423" class="dsq-comment-message">I have never been a fan of Slipknot.  I had always thought their music was just obnoxious screaming, no good lyrics or guitar playing, the masks they wear are ridiculous and gimmicky, and the fact they have 9 people on stage, with 4 of them being just a waste of space.  However, I have to say that their most recent album is actually not that bad.  It has some credible songs that show *some* maturity, talent, and diversity.  <br><br>Anyway, I was dragged, somewhat reluctantly at first, to a recent concert of Slipknot.  As the show got closer, I got a bit more interested to go, as I liked the band touring with them and I just wanted to see what it would be like to see this spectacle just once in my life.  I have to say I was actually entertained.  Again, there are like 4 or 5 real musicians up there with the rest just being a bunch of filler, or more like clown performers dancing around up there, but even those extra filler “musicians” on stage added some value in a strange way to the show and helped to amp things up a bit and get the audience more involved.  <br><br>I agree with much of what you say, the music they have put out for most of their existence has been pretty much a barrage of noise with no relevance to anything or anyone.  But, after giving them a chance and seeing their show, I can see some traces of talent mixed into the chaos, but yes, I will probably never buy any of their music or ever see them again, but it was worth going to see them once in my life and I actually felt more entertained than thought I would be at the end of the day.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-20594434">\
	 <div id="dsq-comment-header-20594434" class="dsq-comment-header">\
	 <cite id="dsq-cite-20594434" class="dsq-comment-cite">\
	 <span id="dsq-author-user-20594434">Nate</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-20594434" class="dsq-comment-body">\
	 <div id="dsq-comment-message-20594434" class="dsq-comment-message">I love metal. Its my bread and butter, for sure. But one thing about metal that I find to be such a shame and so frustrating at the same time.... in no other genre of music do you find the fans of the GENRE (not specific bands) so often arguing over so many petty things having to do with what essentially comes down to opinions. If you dont like Slipknot, more power to you. But you can\'t say with authority, as fact, that Slipknot "sucks" or that they "arent talented", "arent good" or whatever variation of it people say. All that stuff comes down to personal definition. Whats good to one person is abhorrent to another, and neither is more right than the other. Guys, we as fans of "heavy music" (since what defines metal is so hotly contested..... and again, what should be simply a matter of opinion) dont need to be at each other\'s throats over petty, pointless, unwinnable arguments. We, as fans of heavy music, are totally hated by most other music genres and fans, especially hippies and many indie kids and ESPECIALLY pop fans (obviously not true across the board.... hopefully at least one person understands what im saying and how im saying it.... with a tiny bit of tongue in cheek). Can\'t we just stay united under one thing we SHOULD all have in common.... that we hate hippies, "bubblegum" pop, preppy frat boy douchebags, and sorority girl airhead superficial whores! Lets use this energy to take them down and own them on THEIR blogs and message boards! Remember.... its "music" to SOMEONE, and its enjoyed by SOMEONE. We are no more right than them, and vice versa. Enjoy what you enjoy, and try to live life NOT as a dickhead as much as you can.<br><br>END THE METAL CIVIL WAR!!!!!!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-22676936">\
	 <div id="dsq-comment-header-22676936" class="dsq-comment-header">\
	 <cite id="dsq-cite-22676936" class="dsq-comment-cite">\
	 <span id="dsq-author-user-22676936">Deven</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-22676936" class="dsq-comment-body">\
	 <div id="dsq-comment-message-22676936" class="dsq-comment-message">I agree 100% with you. They are just a bunch of pissed of rednecks that cant play their instruments. SLAYER is REAL metal. ALL HAIL SLAYER \\m/. And NO ONE better say anything bad about Slayer. They are the definition of Thrash Metal.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-25245681">\
	 <div id="dsq-comment-header-25245681" class="dsq-comment-header">\
	 <cite id="dsq-cite-25245681" class="dsq-comment-cite">\
	 <span id="dsq-author-user-25245681">grg</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-25245681" class="dsq-comment-body">\
	 <div id="dsq-comment-message-25245681" class="dsq-comment-message">none of these arguments even make sense, you use the argument "other people earn the right to do this" in like half your points.</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=kyle-brady&t=why_slipknot_sucks&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 = '96cf4cba61ea5bb97f2be75c98ac0171';
			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');
}

})();




