




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": [{"body": "My blog doesn't even show up, yet my name under comments in larger blogs does!  Lame!", "author_name": "Brian Ries", "source_url": "http://www.ubervu.com/conversations/scobleizer.com/2008/07/27/a-new-search-engine-appears-will-you-use-it/", "id": 1066841, "get_service_url": "http://friendfeed.com/", "title": "", "url": "http://friendfeed.com/e/2c155bf1-03ee-e1bd-e520-867c9fba73f8#0deb3e24-2ecb-45e2-a899-9d1bd4b67a46", "source": "ubervu", "get_service_name": "friendfeed", "avatar_url": "http://friendfeed.com/moneyries/picture?size=large", "author_url": "", "date_created": "1 year ago", "retweets": []}, {"body": "The user interface is great. The results are poor. Of course, Cuil probably needs to index more pages to get better results. In a couple of years, perhaps Cuil could be useful.", "author_name": "Rishabh Mishra (p248)", "source_url": "http://www.ubervu.com/conversations/scobleizer.com/2008/07/27/a-new-search-engine-appears-will-you-use-it/", "id": 1066840, "get_service_url": "http://friendfeed.com/", "title": "", "url": "http://friendfeed.com/e/2c155bf1-03ee-e1bd-e520-867c9fba73f8#6e08a8b3-55d4-474d-83e6-f136c29f9c68", "source": "ubervu", "get_service_name": "friendfeed", "avatar_url": "http://friendfeed.com/possible248/picture?size=large", "author_url": "", "date_created": "1 year ago", "retweets": []}, {"body": "I came to work expecting to check out Cuil (based on an NPR story). As I walked in, my friend texted me with \"Cuil.\" - he was watching CNN earlier this morning. I don't know if they have 3 times more pages indexed, but their PR is working just fine.", "author_name": "Alexei Tolkachev", "source_url": "http://www.ubervu.com/conversations/scobleizer.com/2008/07/27/a-new-search-engine-appears-will-you-use-it/", "id": 1066839, "get_service_url": "http://friendfeed.com/", "title": "", "url": "http://friendfeed.com/e/2c155bf1-03ee-e1bd-e520-867c9fba73f8#c0ba0a9a-b99f-441c-b440-a5532d3828dc", "source": "ubervu", "get_service_name": "friendfeed", "avatar_url": "http://friendfeed.com/atolk/picture?size=large", "author_url": "", "date_created": "1 year ago", "retweets": []}, {"body": "No compelling reason to use it. Above all, an \"ego search\" returned a photo of someone else. Lame!", "author_name": "Nenad Nikolic", "source_url": "http://www.ubervu.com/conversations/scobleizer.com/2008/07/27/a-new-search-engine-appears-will-you-use-it/", "id": 1066838, "get_service_url": "http://friendfeed.com/", "title": "", "url": "http://friendfeed.com/e/2c155bf1-03ee-e1bd-e520-867c9fba73f8#97093577-aad8-4a43-b863-48599e2cae5c", "source": "ubervu", "get_service_name": "friendfeed", "avatar_url": "http://friendfeed.com/shonzilla/picture?size=large", "author_url": "", "date_created": "1 year ago", "retweets": []}, {"body": "While they've been at it a while, it still takes time to search and index everything. Google wasn't awesome overnight, either. Time will tell w/ Cuil. Google certainly has the advantage of being a relative veteran in search, tho, as well as all that mindshare.", "author_name": "abacab", "source_url": "http://www.ubervu.com/conversations/scobleizer.com/2008/07/27/a-new-search-engine-appears-will-you-use-it/", "id": 1066837, "get_service_url": "http://friendfeed.com/", "title": "", "url": "http://friendfeed.com/e/2c155bf1-03ee-e1bd-e520-867c9fba73f8#65700fc8-c90c-41cd-afd1-17e8ea589260", "source": "ubervu", "get_service_name": "friendfeed", "avatar_url": "http://friendfeed.com/abacab/picture?size=large", "author_url": "", "date_created": "1 year ago", "retweets": []}, {"body": "Someone (cuil?) needs to really tell me how it's \"better\" and will benefit me more before I ever switch.  I just tried it and it reminded me of Ask.com.  I was also frustrated that I couldn't filter my results via Blogs, News,  Images, etc...", "author_name": "Ron Emrick", "source_url": "http://www.ubervu.com/conversations/scobleizer.com/2008/07/27/a-new-search-engine-appears-will-you-use-it/", "id": 1066836, "get_service_url": "http://friendfeed.com/", "title": "", "url": "http://friendfeed.com/e/2c155bf1-03ee-e1bd-e520-867c9fba73f8#156e464d-41f2-4cf1-8a08-ebfba3acd28f", "source": "ubervu", "get_service_name": "friendfeed", "avatar_url": "http://friendfeed.com/ronemrick/picture?size=large", "author_url": "", "date_created": "1 year ago", "retweets": []}, {"body": "It seems to display non-related images next to search results. That's just weird.", "author_name": "Tom Quinn", "source_url": "http://www.ubervu.com/conversations/scobleizer.com/2008/07/27/a-new-search-engine-appears-will-you-use-it/", "id": 1066835, "get_service_url": "http://friendfeed.com/", "title": "", "url": "http://friendfeed.com/e/2c155bf1-03ee-e1bd-e520-867c9fba73f8#6a050ab3-6c77-4955-a2bd-5c1888173bdb", "source": "ubervu", "get_service_name": "friendfeed", "avatar_url": "http://friendfeed.com/tommquinn/picture?size=large", "author_url": "", "date_created": "1 year ago", "retweets": []}, {"body": "No image search, no advanced search, no blog search.  call it beta.", "author_name": "JECO Photo", "source_url": "http://www.ubervu.com/conversations/scobleizer.com/2008/07/27/a-new-search-engine-appears-will-you-use-it/", "id": 1066834, "get_service_url": "http://friendfeed.com/", "title": "", "url": "http://friendfeed.com/e/2c155bf1-03ee-e1bd-e520-867c9fba73f8#803259d0-21d9-417e-9602-5f3ea82ce207", "source": "ubervu", "get_service_name": "friendfeed", "avatar_url": "http://friendfeed.com/jeco/picture?size=large", "author_url": "", "date_created": "1 year ago", "retweets": []}, {"body": "I'll give it points for its look.  Maybe they'll push Google to raise the bar in that aspect at least.", "author_name": "Dave Roth", "source_url": "http://www.ubervu.com/conversations/scobleizer.com/2008/07/27/a-new-search-engine-appears-will-you-use-it/", "id": 1066833, "get_service_url": "http://friendfeed.com/", "title": "", "url": "http://friendfeed.com/e/2c155bf1-03ee-e1bd-e520-867c9fba73f8#77474555-28cb-40b4-9bd7-e38a851de1e9", "source": "ubervu", "get_service_name": "friendfeed", "avatar_url": "http://friendfeed.com/travelingroths/picture?size=large", "author_url": "", "date_created": "1 year ago", "retweets": []}, {"body": "Paging through the results sometimes brings none... Seems but bit for me", "author_name": "Jo\u00e3o Almeida", "source_url": "http://www.ubervu.com/conversations/scobleizer.com/2008/07/27/a-new-search-engine-appears-will-you-use-it/", "id": 1066832, "get_service_url": "http://friendfeed.com/", "title": "", "url": "http://friendfeed.com/e/2c155bf1-03ee-e1bd-e520-867c9fba73f8#9e96892c-81f2-44f8-be79-2c53976ccc65", "source": "ubervu", "get_service_name": "friendfeed", "avatar_url": "http://friendfeed.com/t3mujin/picture?size=large", "author_url": "", "date_created": "1 year ago", "retweets": []}], "has_more_reactions": true, "users": {"76409c09f9a6f629575621b104ca487e": {"username": "tchalla Jones", "tumblr": "", "display_name": "tchalla Jones", "url": "http://disqus.com/guest/76409c09f9a6f629575621b104ca487e/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "58cd47a58381810197d2837c13a37c98": {"username": "dmg", "tumblr": "", "display_name": "dmg", "url": "http://disqus.com/guest/58cd47a58381810197d2837c13a37c98/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/105/8501/avatar92.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "fa7f0aa57319d4493659714e8788354a": {"username": "Markus", "tumblr": "", "display_name": "Markus", "url": "http://disqus.com/guest/fa7f0aa57319d4493659714e8788354a/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "3d5029d90a64d72b640b79ecc7174eb3": {"username": "Mike", "tumblr": "", "display_name": "Mike", "url": "http://disqus.com/guest/3d5029d90a64d72b640b79ecc7174eb3/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "dariosalvelli": {"username": "dariosalvelli", "tumblr": "", "display_name": "Dario Salvelli", "url": "http://disqus.com/dariosalvelli/", "registered": true, "linkedin": "", "blog": "http://www.dariosalvelli.com", "remote_domain": null, "points": 1, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "e6f30a9fa11fcaf276d1942ea81257c7": {"username": "Josh Mcdonald", "tumblr": "", "display_name": "Josh Mcdonald", "url": "http://disqus.com/guest/e6f30a9fa11fcaf276d1942ea81257c7/", "registered": false, "linkedin": "", "blog": "http://berlinshotel.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "5342811c0ba30ec05e242536bfc208b4": {"username": "Cody", "tumblr": "", "display_name": "Cody", "url": "http://disqus.com/guest/5342811c0ba30ec05e242536bfc208b4/", "registered": false, "linkedin": "", "blog": "http://blog.codyredmon.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "1f2059ceb9c66c249a93d3a4416bc172": {"username": "Mark Mitchell", "tumblr": "", "display_name": "Mark Mitchell", "url": "http://disqus.com/guest/1f2059ceb9c66c249a93d3a4416bc172/", "registered": false, "linkedin": "", "blog": "http://www.designdelux.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "d94382c6b8ea7d08d0e0ba8019740235": {"username": "jer979", "tumblr": "", "display_name": "jer979", "url": "http://disqus.com/guest/d94382c6b8ea7d08d0e0ba8019740235/", "registered": false, "linkedin": "", "blog": "http://www.jer979.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "cf33f51c52ea5ce2d11612b5650d6ab4": {"username": "Scott Sorheim", "tumblr": "", "display_name": "Scott Sorheim", "url": "http://disqus.com/guest/cf33f51c52ea5ce2d11612b5650d6ab4/", "registered": false, "linkedin": "", "blog": "http://www.leantech.com/blog", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "582daffe7f5a690020eebabdb3680fe7": {"username": "Victor", "tumblr": "", "display_name": "Victor", "url": "http://disqus.com/guest/582daffe7f5a690020eebabdb3680fe7/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "9e2e2ad25636cdee7fc0ec1a3842983b": {"username": "Modak Nishant", "tumblr": "", "display_name": "Modak Nishant", "url": "http://disqus.com/guest/9e2e2ad25636cdee7fc0ec1a3842983b/", "registered": false, "linkedin": "", "blog": "http://www.nishantmodak.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "472fadf2ffe3bfdbfbc613027cc8bee4": {"username": "Mitch Featherston", "tumblr": "", "display_name": "Mitch Featherston", "url": "http://disqus.com/guest/472fadf2ffe3bfdbfbc613027cc8bee4/", "registered": false, "linkedin": "", "blog": "http://www.sigmaman.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "0d638fa686a5ba0b0e49e7aa883f45ba": {"username": "Paolo", "tumblr": "", "display_name": "Paolo", "url": "http://disqus.com/guest/0d638fa686a5ba0b0e49e7aa883f45ba/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "38e5ec1fdb3c6fdb6025fba1c99c5c97": {"username": "Andrew Kun", "tumblr": "", "display_name": "Andrew Kun", "url": "http://disqus.com/guest/38e5ec1fdb3c6fdb6025fba1c99c5c97/", "registered": false, "linkedin": "", "blog": "http://www.eceblogger.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "20b5e0e8b26976626f3cdf8d0872bc2a": {"username": "Charles Tomaras", "tumblr": "", "display_name": "Charles Tomaras", "url": "http://disqus.com/guest/20b5e0e8b26976626f3cdf8d0872bc2a/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "edfed92f9dfda48e55d386486c9457cd": {"username": "John Dodds", "tumblr": "", "display_name": "John Dodds", "url": "http://disqus.com/guest/edfed92f9dfda48e55d386486c9457cd/", "registered": false, "linkedin": "", "blog": "http://makemarketinghistory.blogspot.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "548504d0aaebfcdbc2e02ee10106216b": {"username": "Curtis", "tumblr": "", "display_name": "Curtis", "url": "http://disqus.com/guest/548504d0aaebfcdbc2e02ee10106216b/", "registered": false, "linkedin": "", "blog": "http://growthumbles.blogspot.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/103/6383/avatar92.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "cecf204d43cdc8a9153f5ce30a60f580": {"username": "Ganesh Kulkarni", "tumblr": "", "display_name": "Ganesh Kulkarni", "url": "http://disqus.com/guest/cecf204d43cdc8a9153f5ce30a60f580/", "registered": false, "linkedin": "", "blog": "http://ganeshayan.blogspot.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "ef75a5328ec5a4231fbc42e2a36a99da": {"username": "Alex Schleber", "tumblr": "", "display_name": "Alex Schleber", "url": "http://disqus.com/guest/ef75a5328ec5a4231fbc42e2a36a99da/", "registered": false, "linkedin": "", "blog": "http://businessmindhacks.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/131/4116/avatar92.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "e0ae1bf51bbe1b74f6acbb282b96a7c1": {"username": "emcye", "tumblr": "", "display_name": "emcye", "url": "http://disqus.com/guest/e0ae1bf51bbe1b74f6acbb282b96a7c1/", "registered": false, "linkedin": "", "blog": "http://emcye.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "19887ced772ecfeb689e7dd236e14f6f": {"username": "Marc Dangeard", "tumblr": "", "display_name": "Marc Dangeard", "url": "http://disqus.com/guest/19887ced772ecfeb689e7dd236e14f6f/", "registered": false, "linkedin": "", "blog": "http://bizcoach.blogspot.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "9c82e297a5e28a6bc2088a51cac77559": {"username": "Diana Valerini", "tumblr": "", "display_name": "Diana Valerini", "url": "http://disqus.com/guest/9c82e297a5e28a6bc2088a51cac77559/", "registered": false, "linkedin": "", "blog": "http://novicesnippets.blogspot.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "0976088d32ab8aa425f99b9f7fe6fe28": {"username": "Breaking Dawn ebooks", "tumblr": "", "display_name": "Breaking Dawn ebooks", "url": "http://disqus.com/guest/0976088d32ab8aa425f99b9f7fe6fe28/", "registered": false, "linkedin": "", "blog": "http://www.booksonboard.com/rss/bob_rss.xml", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "4cfeca5be04f577f2cb4253491006f09": {"username": "Svetlana Gladkova", "tumblr": "", "display_name": "Svetlana Gladkova", "url": "http://disqus.com/guest/4cfeca5be04f577f2cb4253491006f09/", "registered": false, "linkedin": "", "blog": "http://www.profy.com/2008/07/28/cuil-launches-good-for-discovery-bad-for-search/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/8005/avatar92.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "d118dc0ab4c31b1918345634e2a3fdea": {"username": "Ryan", "tumblr": "", "display_name": "Ryan", "url": "http://disqus.com/guest/d118dc0ab4c31b1918345634e2a3fdea/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "3ac235420817d203408c543eb28668e7": {"username": "Nick Ward on Cuil", "tumblr": "", "display_name": "Nick Ward on Cuil", "url": "http://disqus.com/guest/3ac235420817d203408c543eb28668e7/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "0129e3c9dbbe97c550b117ec6c1a700c": {"username": "Josh", "tumblr": "", "display_name": "Josh", "url": "http://disqus.com/guest/0129e3c9dbbe97c550b117ec6c1a700c/", "registered": false, "linkedin": "", "blog": "http://joshuagoodwin.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "fb48585ed9bc3ceb4eb144ef82951500": {"username": "alan p", "tumblr": "", "display_name": "alan p", "url": "http://disqus.com/guest/fb48585ed9bc3ceb4eb144ef82951500/", "registered": false, "linkedin": "", "blog": "http://www.broadstuff.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "b08b37dfafb47154a632a130e35f130c": {"username": "David Poe", "tumblr": "", "display_name": "David Poe", "url": "http://disqus.com/guest/b08b37dfafb47154a632a130e35f130c/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "a48bdf14dea6728bc1e3321e481e85b8": {"username": "Jacob Burke", "tumblr": "", "display_name": "Jacob Burke", "url": "http://disqus.com/guest/a48bdf14dea6728bc1e3321e481e85b8/", "registered": false, "linkedin": "", "blog": "http://www.jacobburke.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "01943468f6919c2df19fbb5cd0e78faf": {"username": "Little Miss", "tumblr": "", "display_name": "Little Miss", "url": "http://disqus.com/guest/01943468f6919c2df19fbb5cd0e78faf/", "registered": false, "linkedin": "", "blog": "http://littlemis.wordpress.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "d7e571f8ed0ee71c298913c23a6ab296": {"username": "John Agno", "tumblr": "", "display_name": "John Agno", "url": "http://disqus.com/guest/d7e571f8ed0ee71c298913c23a6ab296/", "registered": false, "linkedin": "", "blog": "http://www.CoachingTip.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "c43048ee2df9b4910146cf115acbc29b": {"username": "Natali", "tumblr": "", "display_name": "Natali", "url": "http://disqus.com/guest/c43048ee2df9b4910146cf115acbc29b/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "c35b5433c7cff3929f7d819ccf20a60e": {"username": "Majento", "tumblr": "", "display_name": "Majento", "url": "http://disqus.com/guest/c35b5433c7cff3929f7d819ccf20a60e/", "registered": false, "linkedin": "", "blog": "http://www.Majento.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "275e9b90f580862691282ae7b464cef9": {"username": "Martha Baxley", "tumblr": "", "display_name": "Martha Baxley", "url": "http://disqus.com/guest/275e9b90f580862691282ae7b464cef9/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "f398b6fa9aadec2d2cf9027b6bcb22cb": {"username": "DAVE ID", "tumblr": "", "display_name": "DAVE ID", "url": "http://disqus.com/guest/f398b6fa9aadec2d2cf9027b6bcb22cb/", "registered": false, "linkedin": "", "blog": "http://darklydreamingdavid.wordpress.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "1b05e980583a0357ddd4f86cce1bda56": {"username": "Lloyd", "tumblr": "", "display_name": "Lloyd", "url": "http://disqus.com/guest/1b05e980583a0357ddd4f86cce1bda56/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "c30a8f8b7bd52f78f02a3cc5a8f2f4aa": {"username": "Tomi Itkonen", "tumblr": "", "display_name": "Tomi Itkonen", "url": "http://disqus.com/guest/c30a8f8b7bd52f78f02a3cc5a8f2f4aa/", "registered": false, "linkedin": "", "blog": "http://thebookofw.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "df9c3b96a8c22d888dbf14fb6094ed4b": {"username": "Peter Murray", "tumblr": "", "display_name": "Peter Murray", "url": "http://disqus.com/guest/df9c3b96a8c22d888dbf14fb6094ed4b/", "registered": false, "linkedin": "", "blog": "http://www.vista-interactive.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "Sebastian": {"username": "Sebastian", "tumblr": "", "display_name": "Sebastian", "url": "http://disqus.com/Sebastian/", "registered": true, "linkedin": "", "blog": "http://sebmos.at/", "remote_domain": null, "points": 5, "facebook": "", "avatar": "http://media.disqus.com/uploads/users/1623/avatar92.jpg", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "9bd681703ffd638a38ffb71c1d9f449f": {"username": "Michael Quinn", "tumblr": "", "display_name": "Michael Quinn", "url": "http://disqus.com/guest/9bd681703ffd638a38ffb71c1d9f449f/", "registered": false, "linkedin": "", "blog": "http://www.michaelquinn.com.au/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/62/4274/avatar92.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "bb9d5b348d64a9523c03d01750c50d38": {"username": "Connor F. Feldman", "tumblr": "", "display_name": "Connor F. Feldman", "url": "http://disqus.com/guest/bb9d5b348d64a9523c03d01750c50d38/", "registered": false, "linkedin": "", "blog": "http://opendomain.blogspot.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "99ba1e96f557e9031b6333a7e1f0defc": {"username": "Imran Hussain", "tumblr": "", "display_name": "Imran Hussain", "url": "http://disqus.com/guest/99ba1e96f557e9031b6333a7e1f0defc/", "registered": false, "linkedin": "", "blog": "http://www.startupmeme.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "a05d00c7d0b4dba76793b2dae0644bb0": {"username": "jere", "tumblr": "", "display_name": "jere", "url": "http://disqus.com/guest/a05d00c7d0b4dba76793b2dae0644bb0/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "3717483f26171b61a4e2154fb37ffbd1": {"username": "Miles Archer", "tumblr": "", "display_name": "Miles Archer", "url": "http://disqus.com/guest/3717483f26171b61a4e2154fb37ffbd1/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "5f262c8c5f68f45f41b37e56f9f641a4": {"username": "Jernej", "tumblr": "", "display_name": "Jernej", "url": "http://disqus.com/guest/5f262c8c5f68f45f41b37e56f9f641a4/", "registered": false, "linkedin": "", "blog": "http://dot.alter.si/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "9ff51c23aeaddc4613e5797f02089cbc": {"username": "Pete", "tumblr": "", "display_name": "Pete", "url": "http://disqus.com/guest/9ff51c23aeaddc4613e5797f02089cbc/", "registered": false, "linkedin": "", "blog": "http://www.peterharbeson.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "3553f5e0db0fd1ec4e40a932a2d8f5b3": {"username": "Robert Scoble", "tumblr": "", "display_name": "Robert Scoble", "url": "http://disqus.com/guest/3553f5e0db0fd1ec4e40a932a2d8f5b3/", "registered": false, "linkedin": "", "blog": "http://scobleizer.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/4069/avatar92.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "b642b4217b34b1e8d3bd915fc65c4452": {"username": "Andrew", "tumblr": "", "display_name": "Andrew", "url": "http://disqus.com/guest/b642b4217b34b1e8d3bd915fc65c4452/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "e38d239b259611f690dad5264aa96c92": {"username": "Fritz", "tumblr": "", "display_name": "Fritz", "url": "http://disqus.com/guest/e38d239b259611f690dad5264aa96c92/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "b49578d25cc78f1c0eab3f2e488c7dff": {"username": "mihir", "tumblr": "", "display_name": "mihir", "url": "http://disqus.com/guest/b49578d25cc78f1c0eab3f2e488c7dff/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "79e9d25709e959482ddea38069e2ef62": {"username": "Kevin K.", "tumblr": "", "display_name": "Kevin K.", "url": "http://disqus.com/guest/79e9d25709e959482ddea38069e2ef62/", "registered": false, "linkedin": "", "blog": "http://www.thriveorfail.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "e3148d9efa155a4dd06396c81867b988": {"username": "kerry", "tumblr": "", "display_name": "kerry", "url": "http://disqus.com/guest/e3148d9efa155a4dd06396c81867b988/", "registered": false, "linkedin": "", "blog": "http://mobile17.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "2219c8541522c9ab5383db9c57e63416": {"username": "Nick Light", "tumblr": "", "display_name": "Nick Light", "url": "http://disqus.com/guest/2219c8541522c9ab5383db9c57e63416/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "c326c5f4432b3f47a97390d43966e4cb": {"username": "Steve Novoselac", "tumblr": "", "display_name": "Steve Novoselac", "url": "http://disqus.com/guest/c326c5f4432b3f47a97390d43966e4cb/", "registered": false, "linkedin": "", "blog": "http://scaleovenstove.wordpress.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/121/9114/avatar92.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "3a9a1cc676acddca3de49d162c88be81": {"username": "Todd McKinney", "tumblr": "", "display_name": "Todd McKinney", "url": "http://disqus.com/guest/3a9a1cc676acddca3de49d162c88be81/", "registered": false, "linkedin": "", "blog": "http://obfuscation.wordpress.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "29c77440ed6908b5a2fb6170a9b2ca6e": {"username": "Johb", "tumblr": "", "display_name": "Johb", "url": "http://disqus.com/guest/29c77440ed6908b5a2fb6170a9b2ca6e/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}}, "forum": {"use_media": true, "name": "Scobleizer", "streaming_realtime": true, "url": "scobleizer", "allow_anon_post": true, "reactions_enabled": true, "reply_position": 1, "show_avatar": true, "allow_anon_votes": false, "disqus_auth_disabled": false}, "realtime_enabled": true, "request": {"username": "", "is_global_moderator": false, "sharing": {}, "sort": 4, "forum": "scobleizer", "is_initial_load": true, "is_authenticated": false, "timestamp": "2009-12-17_11:31:42", "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": "locked"}, "realtime_paused": false, "posts": {"9708069": {"up_voted": false, "ip": "", "has_replies": false, "message": "Have searched for  \"Cuil\" and \"Cuil.com\" on <a href=\"http://www.cuil.com\" rel=\"nofollow\">www.cuil.com</a> - and their own site is nowhere to be seen :).<br><br>Very smooth.<br><br>\"Cuil.com - works 60% of the time -- everytime\"", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-29_08:36:49", "killed": false, "user_key": "2219c8541522c9ab5383db9c57e63416", "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}, "9708070": {"up_voted": false, "ip": "", "has_replies": false, "message": "Since there is no eraser on the Internet, I just \"Googled\" myself on <a href=\"http://www.Cuil.com\" rel=\"nofollow\">www.Cuil.com</a> ....and...was pleasantly surprised liking the display of results and what I read.   Guess I'll be using Cuil again and again and even advertising there when offered.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-29_08:11:23", "killed": false, "user_key": "d7e571f8ed0ee71c298913c23a6ab296", "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}, "9708071": {"up_voted": false, "ip": "", "has_replies": false, "message": "the relevance of the cuil results were way off in my tests", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-29_08:36:39", "killed": false, "user_key": "fa7f0aa57319d4493659714e8788354a", "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}, "9708072": {"up_voted": false, "ip": "", "has_replies": false, "message": "There is a 'bounded rationality' meaning people generally settle on 'good enough' and don't need 'the best'. Google is THE 'good enough' of today's search-sphere. We do not need any other search engine.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-29_07:10:16", "killed": false, "user_key": "cecf204d43cdc8a9153f5ce30a60f580", "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}, "9708073": {"up_voted": false, "ip": "", "has_replies": false, "message": "The new visual search engine already exists, it is only for kids))<br><a href=\"http://www.aga-kids.com/\" rel=\"nofollow\">http://www.aga-kids.com/</a>", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-29_13:04:47", "killed": false, "user_key": "c43048ee2df9b4910146cf115acbc29b", "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}, "9708074": {"up_voted": false, "ip": "", "has_replies": false, "message": "Google managed to overtake established search engines based almost solely on word of mouth... Cuil could to the same thing.<br><br>BTW it's incredibly easy to make Cuil your default search in Firefox... firefox asks you to add it while you're on the Cuil web site, if you expand the search option box top right.<br><br>Cuil should quickly add news - their layout would be great to add google news-like search results for certain queries - in a tabbed option layout. So far I think this is pretty good. It's not like Google search is so amazing that it's untouchable.<br><br>Like most things, there is tons of room for improvement.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-29_12:01:49", "killed": false, "user_key": "58cd47a58381810197d2837c13a37c98", "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}, "9708075": {"up_voted": false, "ip": "", "has_replies": false, "message": "Well...I did your \"Barack Obama\u2019s technology policy\" search on Microsoft's Live Search and indeed you are wrong...it comes up properly as the first choice.<br><br><a href=\"http://search.live.com/results.aspx?q=Barack+Obama%25E2%2580%2599s+technology+policy&amp;FORM=OPNSCH\" rel=\"nofollow\">http://search.live.com/results.aspx?q=Barack+Ob...</a>", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-29_11:05:26", "killed": false, "user_key": "20b5e0e8b26976626f3cdf8d0872bc2a", "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}, "9708076": {"up_voted": false, "ip": "", "has_replies": false, "message": "As soon as I heard about their privacy policy, I switched my home page to Cuil.  I am not nearly as concerned about how many search results I get as I am about privacy.  As far as Google is concerned, who cares if you get a million hits?  Are you going to read all of them?", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_14:22:16", "killed": false, "user_key": "29c77440ed6908b5a2fb6170a9b2ca6e", "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}, "9708077": {"up_voted": false, "ip": "", "has_replies": false, "message": "I excited about the possibilities.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_22:09:54", "killed": false, "user_key": "bb9d5b348d64a9523c03d01750c50d38", "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}, "9708078": {"up_voted": false, "ip": "", "has_replies": false, "message": "Cuil=Junk", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_22:12:13", "killed": false, "user_key": "e38d239b259611f690dad5264aa96c92", "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}, "9708079": {"up_voted": false, "ip": "", "has_replies": false, "message": "This site sucks in my opinion. Although the pics beside the results are pretty cool, that doesn't account for the irrevelant results. Next!", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_22:35:50", "killed": false, "user_key": "1b05e980583a0357ddd4f86cce1bda56", "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}, "9708080": {"up_voted": false, "ip": "", "has_replies": false, "message": "Robert, very perceptive about the possible MSFT angle.<br><br>Love how someone further up said they \"cuiled\" themselves... and the image mix-up thing is downright comical (you'd think they would have checked at least that bit, apparently they served up even quite a few X-rated images next to unsuspecting poeple's bios, etc. ).<br><br>Just finished an in depth look at the Cuil branding disaster (with Knol hot on its heels):<br><br><a href=\"http://businessmindhacks.com/post/cuil-knol-and-other-crimes-against-branding\" rel=\"nofollow\">http://businessmindhacks.com/post/cuil-knol-and-other-crimes-against-branding</a>", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-29_21:48:46", "killed": false, "user_key": "ef75a5328ec5a4231fbc42e2a36a99da", "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}, "9708081": {"up_voted": false, "ip": "", "has_replies": false, "message": "Try searching for \"Facebook f8\" (without quotes). What result would you expect at the top? Google shows <a href=\"http://developers.facebook.com\" rel=\"nofollow\">developers.facebook.com</a>, while live shows the webpage for the F8 event.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-29_21:00:40", "killed": false, "user_key": "b49578d25cc78f1c0eab3f2e488c7dff", "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}, "9708082": {"up_voted": false, "ip": "", "has_replies": false, "message": "They seem to better. Now when I do your Obama search I get a different result every time. Which is consistent with Obama's message.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_20:24:32", "killed": false, "user_key": "582daffe7f5a690020eebabdb3680fe7", "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}, "9708083": {"up_voted": false, "ip": "", "has_replies": false, "message": "They seem slower. Have improved relevancy of results but lack some of the bells and whistles that Google has built up overtime E.g \"Did you mean\" Would use as an addition to google not a replacement at this point", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_20:41:59", "killed": false, "user_key": "76409c09f9a6f629575621b104ca487e", "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}, "9708084": {"up_voted": false, "ip": "", "has_replies": false, "message": "@Sebastian: Well, Google also recently re-advertised its index size.  Just a few days ago, it started bragging about how it had just reached a trillion web pages in its index.  Perhaps Google, who had sworn long ago that index size didn't matter, pre-released that information to try and undercut the Cuil hype?  Whatever the reason, both Google and Cuil are now bragging about the size of their indices.<br><br>And since Scoble has already shown that Google lies about these sorts of things, by overinflating the reported numbers (\"brrreeeport\"), I don't really see how you can conclude that Cuil's index doesn't seem that big, after all.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_17:40:40", "killed": false, "user_key": "a05d00c7d0b4dba76793b2dae0644bb0", "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}, "9708085": {"up_voted": false, "ip": "", "has_replies": false, "message": "Maybe someone can look up those original series of blogposts again, so that we all can see the exact experiment and numbers.  (Scoble?)  But at the risk of being corrected, what I remember is that at the same time that Google Blog Search was reporting 500 or 600 different pages with the word \"brrreeeport\" on it, Google Web Search was showing something like 200,000 web pages with that word on it.  And this was like two days after Scoble originally invented the word -- meaning that it didn't exist on any web page, anywhere, two days prior.<br><br>And since Scoble had asked bloggers to put the word on their blogs, I tend to think that it is more true that 600 blogs suddenly started using the word, rather than 200,000 web pages.<br><br>So let's generously assume that the real number of pages that contained brrreeeport, two days after Scoble invented the word, was somewhere around 2000.  That means that Google was overreporting the size of their index by a factor of about 100.  So if this is really the case, and Cuil isn't lying about their numbers while Google is, then Cuil's index does appear to be larger.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_17:47:43", "killed": false, "user_key": "a05d00c7d0b4dba76793b2dae0644bb0", "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}, "9708086": {"up_voted": false, "ip": "", "has_replies": false, "message": "FWIW: I just did a search on both Cuil and Google for \"brrreeeport\".  Google now reports 9,590 web pages (down from their two year high of 200,000?  Did 190,000 servers suddenly go offline?) with the word, and Cuil reports 9,641 web pages.<br><br>Seems like Cuil is quite competitive with Google's size.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_17:50:51", "killed": false, "user_key": "a05d00c7d0b4dba76793b2dae0644bb0", "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}, "9708087": {"up_voted": false, "ip": "", "has_replies": false, "message": "33MM! - a really bad name and we have to scroll DOWN to access a search? Sideways?<br><br>Doesn't pick up Mac-based urls...interface unpretty...not ready, overly bumptious....sure smells like a Microsoft branding project.<br><br>They're Kidding, right?", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_18:19:55", "killed": false, "user_key": "e0ae1bf51bbe1b74f6acbb282b96a7c1", "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}, "9708088": {"up_voted": false, "ip": "", "has_replies": false, "message": "This is the worst site I've ever uses. Porn pop ups immediately while searching. I am at work and porn does not work here. What is wrong with that search engine allowing porn to pop up and I mean it's ladies from around here.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_16:40:28", "killed": false, "user_key": "275e9b90f580862691282ae7b464cef9", "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}, "9708089": {"up_voted": false, "ip": "", "has_replies": false, "message": "Define Epic Failure:<br><br>You launch a search engine to compete against Google, spout off that you have more indexed pages, more relevant results, a better design, and better algorithm, and you name yourself Cuil (pronounced cool). You do a search using the Cuil search engine for the word Cuil, and they don't even show up in their own search results.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_17:00:39", "killed": false, "user_key": "b642b4217b34b1e8d3bd915fc65c4452", "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}, "9708090": {"up_voted": false, "ip": "", "has_replies": false, "message": "@jere<br>The size of their index is part of their pitch to users. They said to the press that they have the biggest index size.<br>Sure it doesn't matter - relevancy is the most important thing. I wouldn't care if search engines had only 20 results for each query - as long as these were the relevant results! But Cuil advertises their index size - which doesn't seem that big after all.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_17:19:25", "killed": false, "user_key": "Sebastian", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708091": {"up_voted": false, "ip": "", "has_replies": false, "message": "@DianaV:<br><br>\"Its giving 102,986 results for scobleizer.  as against 1,070,000 in Google.\"<br><br>It never ceases to amaze me how many people quote these types of numbers, then conclude that the engine with the bigger number is the better one.  First of all, you should look at the experiment that Scoble did a few years ago, with the word \"brrreeeport\".  One can conclude that Google vastly (and incorrectly) overinflates its numbers.  It lies, in other words.<br><br>And even if it didn't lie, one has to realize that Google will not show you more than the top 1000 results, anyway.  What does it matter if there are 100,000 or 100,000,000?  If the search engine won't show you more than 1,000, the two numbers might as well be the same.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_15:08:23", "killed": false, "user_key": "a05d00c7d0b4dba76793b2dae0644bb0", "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}, "9708092": {"up_voted": false, "ip": "", "has_replies": false, "message": "A lot of these same arguments could've been used to explain why Yahoo or Alta Vista or (insert name of leading search engine circa 2000) would fend off Google.  In terms of distribution, plenty of people ignore all of the preloaded crap that comes with a PC and go right to their favorite sites.<br><br>If anyone proved that a simple and better technology could eventually win out, it's GOOG.<br><br>Not saying Cuil has all that, just the logic behind many of these posts seems ironic given Google's history.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_15:15:48", "killed": false, "user_key": "3d5029d90a64d72b640b79ecc7174eb3", "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}, "9708093": {"up_voted": false, "ip": "", "has_replies": false, "message": "If they are good, they will be bought.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_16:06:34", "killed": false, "user_key": "3717483f26171b61a4e2154fb37ffbd1", "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}, "9708094": {"up_voted": false, "ip": "", "has_replies": false, "message": "Cuil has an attractive design.  I'm still not convinced of its functionality though.  I could see myself using Cuil as something supplemental to Google, maybe, if I can't find what I'm looking for on Google (since they do come up with fairly different search results).", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_16:29:03", "killed": false, "user_key": "0976088d32ab8aa425f99b9f7fe6fe28", "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}, "9708095": {"up_voted": false, "ip": "", "has_replies": false, "message": "I have a feeling that even better results wont shift people from Google search now. It's so much integrated into many things now, Firefox, iPhone ( and sony ericsson phones as well,) heck, even in Opera Mini. Even Safari has Google as default. So unless someone can pay more then Google to replace these defaults ( or become defaults in other important software ) , there's going to be no harm to Google's search engine market share.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_14:22:32", "killed": false, "user_key": "99ba1e96f557e9031b6333a7e1f0defc", "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}, "9708096": {"up_voted": false, "ip": "", "has_replies": false, "message": "Search is so 1.0, who cares about this anymore?<br><br>The new search is social media. I use blogs or twitter to find the content that people are discussing, which is a really good filter. And the system feeds on itself too. If the people/blogs talking about what I am interested in are not in my list, I will include in my ecosystem so that I can get their input next time as well.<br><br>2 examples of this:<br>- search.twitter.com: type a keyword, see who discuss the subject and what their general tweets are about. If they are talking about what you are interested in, follow them and you will get the input as it comes.<br>- eCairn: build a list of blogs, start listening, and keep feeding the system. The more you read, the more your ecosystem will be, and the better access to information you will have.<br><br>Now for Google all this is not a huge deal (at least Cuil is not) because Google is about infrastructure these days, rather than search. The real killer Google App is Google Apps, as a way to help companies transition into the new world of online collaboration and online participation. Watch them on this, I see a big wave coming...", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_14:53:53", "killed": false, "user_key": "19887ced772ecfeb689e7dd236e14f6f", "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}, "9708097": {"up_voted": false, "ip": "", "has_replies": false, "message": "Robert, you need to read this paper:<br><br><a href=\"http://research.microsoft.com/%7Eryenw/papers/WhiteSIGIR2008a.pdf\" rel=\"nofollow\">http://research.microsoft.com/~ryenw/papers/Whi...</a><br><br>I think it answers your questions about what.. and even whether.. there is \"a\" search engine that you should be using.<br><br>A smart searcher, just like a smart woodworker (for example), understands that there is more than a single tool to get the job done.  If you are using only a single engine, you are severely robbing yourself of the best results.  No matter what one single engine that is.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_14:56:40", "killed": false, "user_key": "a05d00c7d0b4dba76793b2dae0644bb0", "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}, "9708098": {"up_voted": false, "ip": "", "has_replies": false, "message": "If they can provide better results, why not?", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_13:17:37", "killed": false, "user_key": "472fadf2ffe3bfdbfbc613027cc8bee4", "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}, "9708099": {"up_voted": false, "ip": "", "has_replies": false, "message": "Tried a few searches and didn't get anything good out of it. In that regard it is as useless as Mahalo (seriously, does anyone use that crap??!)<br><br>Come to think of it... it's so much like iPhone I could easily be led to believe it's an Apple product. Nice on the outside but essentially crap.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_13:26:50", "killed": false, "user_key": "5f262c8c5f68f45f41b37e56f9f641a4", "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}, "9708100": {"up_voted": false, "ip": "", "has_replies": false, "message": "I think the paradigms that Google has established will be difficult to break away from.  Here are some of those expectations:<br><br>-Results will be in an ordered list: are Cuil's left-to-right, then top-to-bottom?  If so, the fifth highest item gets visibility at the top of the page?)<br>-Results are easily \"scannable\" by the eyes: Cuil's can't be scanned because they're broken into three columns (or even two, as they offer this option)...this irritates me, and apparently doesn't work well, see Nielsen's study <a href=\"http://www.useit.com/alertbox/reading_pattern.html\" rel=\"nofollow\">http://www.useit.com/alertbox/reading_pattern.html</a><br>-The toolbar: As you have mentioned, I already see people type in that, and they simply expect to see Google results (or as you said, they type in their Url there...oops).  Even if Cuil got a toolbar in peoples' browsers, if a three column list popped up, they'll think they've done something wrong, and they'll probably not even realize they're looking at search results<br>-Google is a verb and a noun...I would surmise that even if people used a different browser, they would probably still say, \"Did you google it?\" Much like \"Xerox it\" still gets thrown around even if you're using a Ricoh. Will anyone ever \"cuil it?\"", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_11:06:22", "killed": false, "user_key": "cf33f51c52ea5ce2d11612b5650d6ab4", "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}, "9708101": {"up_voted": false, "ip": "", "has_replies": false, "message": "Takes forever to return results - thats a killer right there", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_11:27:59", "killed": false, "user_key": "0d638fa686a5ba0b0e49e7aa883f45ba", "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}, "9708102": {"up_voted": false, "ip": "", "has_replies": false, "message": "Back in the AltaVista days, search was broken. It took a long time.  Now, how often do you really not get what you want on your Google search? Most of us aren't feeling any search pain. We go to google, get what we want and move on.  I tried it out. the layout is neat, it's a bit smoother UI, but since I don't have much pain in search and my habits are pretty built in (plus start page, gmail and reader), unless I hear either<br>1. just keep hearing people RaVE re Cuil that it's SO much better<br>2 google starts being unreliable<br><br>I am probably not moving<br><br>Like the play for MS $ angle, that's a good bet.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_11:28:37", "killed": false, "user_key": "d94382c6b8ea7d08d0e0ba8019740235", "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}, "9708103": {"up_voted": false, "ip": "", "has_replies": false, "message": "I agree with the \"why bother\" crowd.  Seriously, there are so many more interesting problems out there to solve, does the world really need yet another search engine?<br><br>Robert, you're absolutely right.  This is a play for Microsoft $$$.  We have a window of a few months where we're probably going to see tons of search companies start up with the sole purpose of being bought by Microsoft.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_11:45:37", "killed": false, "user_key": "d118dc0ab4c31b1918345634e2a3fdea", "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}, "9708104": {"up_voted": false, "ip": "", "has_replies": false, "message": "I don't like the SERP's i'm getting, the column structure doesn't add much other than confusion, results seem outdated, missing relevant url's.<br>Sorry, at the moment Cuil seems disappointing to me.<br>\"Explore by Category\" is a nice addition, more engines should implement it.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_10:34:08", "killed": false, "user_key": "c35b5433c7cff3929f7d819ccf20a60e", "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}, "9708105": {"up_voted": false, "ip": "", "has_replies": false, "message": "did a search for you. No Results? <a href=\"http://screencast.com/t/qmDNs5XxD\" rel=\"nofollow\">http://screencast.com/t/qmDNs5XxD</a>", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_10:45:53", "killed": false, "user_key": "c326c5f4432b3f47a97390d43966e4cb", "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}, "9708106": {"up_voted": false, "ip": "", "has_replies": false, "message": "Cuil. I must admit I spelled it wrong the first time I looked for it and got an Italian porn site. Seems as though Culi is something totally different :)<br><br>On thing I noticed with Cuil is it's lack of monetization or advertising. Granted they are new the layout doesn't seen to really lend itself to ads. In the end maybe they will invent some small piece of technology that one of the big 3 deem useful enough to buy them.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_09:50:39", "killed": false, "user_key": "1f2059ceb9c66c249a93d3a4416bc172", "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}, "9708107": {"up_voted": false, "ip": "", "has_replies": false, "message": "It will also be difficult to tear Google power-users away. I've integrated a lot of their tools into my \"web experience\" for work and play. Google, iGoogle, Gmail, GoogleReader, GoogleMaps which I use daily for work, GoogleCalendar which I sync with my outlook and more. It's difficult to compete with so many options when you're a startup search engine. And I'm not about to give my tools unless Google shuts down, which would make me very sad but we know that's not gonna happen anytime soon.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_10:21:16", "killed": false, "user_key": "f398b6fa9aadec2d2cf9027b6bcb22cb", "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}, "9708108": {"up_voted": false, "ip": "", "has_replies": false, "message": "Hey Scoble<br><br>Its giving 102,986 results for scobleizer.<br><br>as against 1,070,000 in Google.<br><br>Your popularity will be down by 1/10 if people use Cuil.<br><br>Some of \"great\" blogger are not even featuring.<br><br>So I guess you are lucky.<br><br>As it is who is going to use Cuil ? I guess nobody.<br><br>But that was the case with Google earlier too.. I maybe wrong ...", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_03:20:28", "killed": false, "user_key": "9c82e297a5e28a6bc2088a51cac77559", "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}, "9708109": {"up_voted": false, "ip": "", "has_replies": false, "message": "I have tried this out and am not impressed.  I don't understand why it is serving up unrelated images with the search results.  Sticking with Google!", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_03:44:04", "killed": false, "user_key": "a48bdf14dea6728bc1e3321e481e85b8", "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}, "9708110": {"up_voted": false, "ip": "", "has_replies": false, "message": "Cuil is unavailable. So, a search engine that are down isn't enough affidable, right? :-)", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_04:13:56", "killed": false, "user_key": "dariosalvelli", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708111": {"up_voted": false, "ip": "", "has_replies": false, "message": "On your Barry search test it would appear Cuil came back with the most accurate result.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_04:20:54", "killed": false, "user_key": "582daffe7f5a690020eebabdb3680fe7", "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}, "9708112": {"up_voted": false, "ip": "", "has_replies": false, "message": "This shows, again, how Google is very hard to beat in the online search arena.<br>Live Search, Yahoo, Alta Vista, Ask, Wikia Search ( am I missing any? ) and now Cuil.. how many more would it take to give a stiff competition to Google?!", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_04:21:20", "killed": false, "user_key": "99ba1e96f557e9031b6333a7e1f0defc", "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}, "9708113": {"up_voted": false, "ip": "", "has_replies": false, "message": "Cuil has a problem that every technology-based search start-up (compared to Mahalo) has: Indexing is extremely expensive. Even though they found a cheaper way, it's expensive. Powerset \"solved\" that problem through only searching Wikipedia (which, well, also removed the need for sophisticated ranking), Cuil solved that through having an outdated index. At the last time Cuil crawled the web in huge amounts, Obama's tech policy very likely wasn't even available.<br><br>That makes it difficult to actually compare the quality of the results, because they could likely change that with a huge amount of funding (or an acquisition).<br><br>Me, I agree with your point that they are there for Microsoft's money. Microsoft would be intelligent to buy the promising search start-ups and give them all the resources they need. (Personnel, computing power)<br>Cuil could give them a cheaper crawling technology, which all other search properties (Live Search, Powerset) would profit from, Powerset could take this index and process it with their technology, Live Search and Cuil could do their thing with it.<br>Live Search is a dead brand, they should simply try several approaches and hope that one of them works. Cuil, like Powerset, wouldn't be very expensive. They could get it for 100 to 200 million dollars.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_04:22:46", "killed": false, "user_key": "Sebastian", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708114": {"up_voted": false, "ip": "", "has_replies": false, "message": "Did an initial review of Cuil here:<br><br><a href=\"http://broadstuff.com/archives/1100-An-initial-review-of-Cuil.html\" rel=\"nofollow\">http://broadstuff.com/archives/1100-An-initial-...</a><br><br>Net net - nice, but what's the unique differentiator, as Robert notes.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_04:47:54", "killed": false, "user_key": "fb48585ed9bc3ceb4eb144ef82951500", "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}, "9708115": {"up_voted": false, "ip": "", "has_replies": false, "message": "The engine was down giving this message:<br>\"The search engine is momentarily unavailable as we add more capacity.\"<br><br>Now it is up and I can make a few test searches. I actually like the clean 3-column layout. The long texts in the results seem to be of rather good quality. I'm definetely going to use it now and then. At least, it gives an additional viewpoint to the web.<br><br>BTW: For those looking for more visual search, do check <a href=\"http://searchme.com\" rel=\"nofollow\">searchme.com</a> which is in beta stage at the moment.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_05:12:14", "killed": false, "user_key": "c30a8f8b7bd52f78f02a3cc5a8f2f4aa", "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}, "9708116": {"up_voted": false, "ip": "", "has_replies": false, "message": "The search index is largely outdated it seems. Tried some phrases and it was evident. And when you try searching people, thats crystal clear<br><br>Moreover, tried  cuil [word] on google [search] and google [word] on cuil [search] .. cuil gave me link to google.co.uk ! and a tabbed browsing for its specific sites. which was nice.<br><br>Though, google has benchmarks which are difficult to beat the very first day.<br>It needs to evolve. Cuil's Evolution  would tell..", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_05:16:13", "killed": false, "user_key": "9e2e2ad25636cdee7fc0ec1a3842983b", "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}, "9708117": {"up_voted": false, "ip": "", "has_replies": false, "message": "Cuil down.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_06:38:06", "killed": false, "user_key": "b08b37dfafb47154a632a130e35f130c", "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}, "9708118": {"up_voted": false, "ip": "", "has_replies": false, "message": "Cuil up.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_06:45:05", "killed": false, "user_key": "b08b37dfafb47154a632a130e35f130c", "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}, "9708119": {"up_voted": false, "ip": "", "has_replies": false, "message": "Cuil delivered pretty good results for some searches I tried, and I like their page layout. I'm interested to see what they do in the mobile space; it looks like they haven't addressed that yet.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_06:54:46", "killed": false, "user_key": "9ff51c23aeaddc4613e5797f02089cbc", "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}, "9708120": {"up_voted": false, "ip": "", "has_replies": false, "message": "Cuil may be irish for knowledge but cul is french for ass.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_07:28:31", "killed": false, "user_key": "edfed92f9dfda48e55d386486c9457cd", "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}, "9708121": {"up_voted": false, "ip": "", "has_replies": false, "message": "What did you think of the 3-column display?  I really liked the different layout ideas from Cuil.<br><br>Can't see it doing much - any website that needs to be spelt and is unclear how to pronounce is never going to get past a niche audience that likes to blog about sites that are silly to spell and need explainations on how to say it.<br><br>Mum and Dad aren't going to be using <a href=\"http://cool.com\" rel=\"nofollow\">cool.com</a>, i mean <a href=\"http://cuill.com\" rel=\"nofollow\">cuill.com</a>, <a href=\"http://cull.com\" rel=\"nofollow\">cull.com</a>.... oh whatever.  Just Google it.<br><br>But as <a href=\"http://cuil.com\" rel=\"nofollow\">cuil.com</a> fails, let look at some of the nice ideas it came up with.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_07:36:09", "killed": false, "user_key": "9bd681703ffd638a38ffb71c1d9f449f", "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}, "9708122": {"up_voted": false, "ip": "", "has_replies": false, "message": "Very good point on the distribution, Robert. It is always interesting to see startups launch with an idea of offering something better (and we have already seen to many arguments to prove it is not better) and more scalable without thinking of distribution. Cuil talks about privacy issues without realizing that their approach is only appealing for a small crowd of early adopters. And the fact that this engine is different does not mean that it is better. So before distributing your product to the masses you have to make sure you are much better than the existing competition. And $33 million does not sound like enough both for the infrastructure and efficient distribution.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_07:55:45", "killed": false, "user_key": "4cfeca5be04f577f2cb4253491006f09", "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}, "9708123": {"up_voted": false, "ip": "", "has_replies": false, "message": "why does one even need an alternative to Google ?", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_08:35:14", "killed": false, "user_key": "e3148d9efa155a4dd06396c81867b988", "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}, "9708124": {"up_voted": false, "ip": "", "has_replies": false, "message": "Check out the results on the question \"Thrive or Fail\" so far on Cuil: <a href=\"http://snurl.com/36fll\" rel=\"nofollow\">http://snurl.com/36fll</a><br>cuill, TC", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_15:26:23", "killed": false, "user_key": "79e9d25709e959482ddea38069e2ef62", "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}, "9708125": {"up_voted": false, "ip": "", "has_replies": false, "message": "Looks like you got some attention from someone there. The Obama search works well now. Maybe this could be an interesting Mahalo variant - someone blogs about a search term, they go add it to the index.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_08:39:05", "killed": false, "user_key": "3a9a1cc676acddca3de49d162c88be81", "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}, "9708126": {"up_voted": false, "ip": "", "has_replies": false, "message": "Mike: AltaVista didn't have the lockin that Google has today. Try to switch out the search engine on the iPhone, especially on the maps. Go ahead and try, I'll wait. You can't. That's MUCH different than it used to be.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_15:37:23", "killed": false, "user_key": "3553f5e0db0fd1ec4e40a932a2d8f5b3", "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}, "9708127": {"up_voted": false, "ip": "", "has_replies": false, "message": "Two reasons why I don't care for it: first, the name. I abhor things that are deliberately spelled wrong (I'm an editor). How on earth does someone get \"cool\" out of \"cuil\"? I'd likely try to say \"kweel\" or keep tripping over my tongue until someone corrected me. Had you not said it was pronounced \"cool\", I'd never have guessed it. Second: I don't like how the search result are laid out. Three columns? What the heck? How do I know which is most important? It's unfamiliar formatting, and this late in the game, going so far away from what users are familiar with - unless it's a completely usable format - is not a good idea. Just my two cents, as a professional writer and editor.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-28_09:31:38", "killed": false, "user_key": "01943468f6919c2df19fbb5cd0e78faf", "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}, "9708128": {"up_voted": false, "ip": "", "has_replies": false, "message": "I compared Cuil, Google and Live Search on 3 terms that are important to me: eceblogger (the blog I run), Project54 (the project I work on at UNH) and \"Andrew Kun\" (my name). Results:<br><br>Cuil:<br>eceblogger: Only finds references on other pages, search should produce <a href=\"http://www.eceblogger.com\" rel=\"nofollow\">www.eceblogger.com</a> as the top result.<br>Project54: Search produces no results. It should find <a href=\"http://www.project54.com\" rel=\"nofollow\">www.project54.com</a>.<br>Andrew Kun: Worst of all, it can't find me very well! Shocking. When I search for Andrew Kun, I find a golf player in Canada and some old pages I set up, but not my current page in my department, or my <a href=\"http://www.andrewkun.com\" rel=\"nofollow\">www.andrewkun.com</a>.<br><br>Google:<br>eceblogger: top result <a href=\"http://www.eceblogger.com\" rel=\"nofollow\">www.eceblogger.com</a><br>Project54: top result <a href=\"http://www.project54.unh.edu\" rel=\"nofollow\">www.project54.unh.edu</a><br>Andrew Kun: top result my current UNH page, <a href=\"http://www.andrewkun.com\" rel=\"nofollow\">www.andrewkun.com</a> is 3rd<br><br>Live Search:<br>eceblogger: top result <a href=\"http://www.eceblogger.com\" rel=\"nofollow\">www.eceblogger.com</a><br>Project54: top result <a href=\"http://www.project54.unh.edu\" rel=\"nofollow\">www.project54.unh.edu</a><br>Andrew Kun: top result <a href=\"http://www.andrewkun.com\" rel=\"nofollow\">www.andrewkun.com</a><br><br>So forget Cuil! ;) Google and Live Search are tied with a slight edge to Live Search for placing <a href=\"http://www.andrewkun.com\" rel=\"nofollow\">www.andrewkun.com</a> on top.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-29_15:55:37", "killed": false, "user_key": "38e5ec1fdb3c6fdb6025fba1c99c5c97", "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}, "9708129": {"up_voted": false, "ip": "", "has_replies": false, "message": "Charles: I just did the search again on <a href=\"http://live.com\" rel=\"nofollow\">live.com</a> and Barack's energy policy comes up #1 for me. Sorry, Google wins.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-29_14:04:49", "killed": false, "user_key": "3553f5e0db0fd1ec4e40a932a2d8f5b3", "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}, "9708130": {"up_voted": false, "ip": "", "has_replies": false, "message": "As a fine art landscape photographer, I was surprised to \"cuil\" my name and see a suggestive image of a woman next to website results...I don't photograph people.  I did similar searches for other photographers in my circle and discovered the same thing - sexually suggestive images of women next to the results.  I wrote cuil an e-mail straight away because to me it's not appropriate that they make such an association and could potentially trash my name to their users.  So much for relevant content...", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-29_13:40:15", "killed": false, "user_key": "5342811c0ba30ec05e242536bfc208b4", "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}, "9708131": {"up_voted": false, "ip": "", "has_replies": false, "message": "I just Cuil'd myself, and the first result was me. What's more, I discovered that I'm also a racing driver.<br><br>They may claim to have more pages indexed than Google, but that doesn't necessarily mean anything. It depends on how you count, such is the nature of the web.<br><br>@<a href=\"http://scobleizer.com/2008/07/27/a-new-search-engine-appears-will-you-use-it/#comment-1992410\" rel=\"nofollow\">Andrew</a>: Well, is anyone actually going to want to find Cuil using Cuil. They are obviously aware of the search engine's location if they are using it.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-29_13:17:03", "killed": false, "user_key": "0129e3c9dbbe97c550b117ec6c1a700c", "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}, "9708132": {"up_voted": false, "ip": "", "has_replies": false, "message": "Several people have mentioned how Google came from behind, via word-of-mouth to win the search game and suggest that Cuil could do the same. I disagree; I am a pretty heavy user of search and have been for a while and the day that I heard of a new search engine called Google (what was that name about?) I tried it and immediately saw that it cut through the porn and other garbage to deliver EXACTLY what I was looking for. I was hooked from the first moment and never used Excite again (along with just about everyone else it seemed) and told everyone interested about this great search engine with the wacky name<br><br>I tried Cuil in the same way and sadly it lost me straight away - first by being down (I don't recall ever seeing that happen with Google - how are Cuil going to compete with that scale?) but I can forgive that...just. But by failing to return any answers to some queries that Google just nailed - I'm not talking about stuff that requires up-to-the-minute indexes, just regular searches that cuil thought were so specialized that nothing could be found whilst Google took me straight to the answer. Sorry guys but I'm too busy to help you debug your stuff when I have a perfectly adequate solution today.<br><br>I do appreciate the play on privacy - that alone got me interested enough to try it even after the initial service crashes. But you have to deliver and right now it doesn't", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-31_15:38:56", "killed": false, "user_key": "3ac235420817d203408c543eb28668e7", "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}, "9708133": {"up_voted": false, "ip": "", "has_replies": false, "message": "Several people have mentioned how Google came from behind, via word-of-mouth to win the search game and suggest that Cuil could do the same. I disagree; I am a pretty heavy user of search and have been for a while and the day that I heard of a new search engine called Google (what was that name about?) I tried it and immediately saw that it cut through the porn and other garbage to deliver EXACTLY what I was looking for. I was hooked from the first moment and never used Excite again (along with just about everyone else it seemed) and told everyone interested about this great search engine with the wacky name<br><br>I tried Cuil in the same way and sadly it lost me straight away - first by being down (I don't recall ever seeing that happen with Google - how are Cuil going to compete with that scale?) but I can forgive that...just. But by failing to return any answers to some queries that Google just nailed - I'm not talking about stuff that requires up-to-the-minute indexes, just regular searches that cuil thought were so specialized that nothing could be found whilst Google took me straight to the answer. Sorry guys but I'm too busy to help you debug your stuff when I have a perfectly adequate solution today.<br><br>I do appreciate the play on privacy - that alone got me interested enough to try it even after the initial service crashes. But you have to deliver and right now it doesn't", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-07-31_15:38:30", "killed": false, "user_key": "3ac235420817d203408c543eb28668e7", "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}, "9708134": {"up_voted": false, "ip": "", "has_replies": false, "message": "Id probably end up forgetting all about this search engine. There were sites on there I know haven't even existed for years. Why do we need another under powered search engine.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-03_14:11:27", "killed": false, "user_key": "548504d0aaebfcdbc2e02ee10106216b", "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}, "9708135": {"up_voted": false, "ip": "", "has_replies": false, "message": "this is definitely some lovely talk", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-03_16:24:33", "killed": false, "user_key": "e6f30a9fa11fcaf276d1942ea81257c7", "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}, "9708136": {"up_voted": false, "ip": "", "has_replies": false, "message": "I searched for my wife (who has an uncommon name) with Cuil.<br><br>The 1st result was our ancient family website (last updated in January 2004)! The picture attached to the search result has nothing to do with that website.<br><br>The top of Google's search results are my wife's Facebook public profile and her Amazon wishlist.<br><br>Google wins.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-08_16:20:53", "killed": false, "user_key": "df9c3b96a8c22d888dbf14fb6094ed4b", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}}, "integration": {"receiver_url": "", "theme": 4, "reply_position": true, "disqus_logo": false}, "timer": {"timer_url": "http://localhost:8005", "thread_id": "18352042", "user_id": "anonymous", "forum_id": "125200", "hash": 3112311380031198986}, "thread": {"total_posts": 0, "paginate": false, "per_page": 0, "slug": "a_new_search_engine_appears_will_you_use_it", "num_pages": 1, "days_alive": 0, "realtime_paused": true, "id": 18352042, "num_posts": 68, "closed": true, "queued": false, "killed": false}, "reactions_limit": 10, "context": {"show_reply": false, "use_fb_connect": true, "forum_facebook_key": "faaf467d0f47abde553c3b8e0e1b3570", "use_yahoo": false, "subscribed": false, "use_twitter_signin": true, "use_openid": false, "realtime_speed": 5000}, "reactions_start": 0, "settings": {"debug": false, "disqus_url": "http://disqus.com", "media_url": "http://media.disqus.com"}, "media_url": "http://media.disqus.com"};
	/* */ this.jsonData.cookie_messages = {"user_created": null, "post_has_profile": null, "post_twitter": null, "post_not_approved": null}; this.jsonData.session = {"url": null, "name": null, "email": null}; /* */

	
	this.curPageId = 'dsq-comments';

	this.frames = {};
};

var disqus_popup_reference = null;

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



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

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

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

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

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

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

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

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

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





Dsq.CSRF_TOKEN = 'a2d140c59df8cd4ce27a20e0829cacd8';
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=scobleizer' +
		'&t=a_new_search_engine_appears_will_you_use_it' +
		'&ff=' + Dsq.Thread.ff +
		'&default_text=' + encodeURIComponent(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://scobleizer.disqus.com/a_new_search_engine_appears_will_you_use_it/latest.rss">' + Dsq.Strings.SUBSCRIBE_BY_RSS + '</a> \
			</span> \
		</div> \
		';

		
		

		return html;

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

		html += Dsq.Templates.pagination();

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

		html += Dsq.Templates.reactions();

		
			html += Dsq.Templates.trackbacks();
		


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

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

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

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

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

		return html;
	};

	this.postBox = function(post_id, use_fallback_iframe) {


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

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


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

		var _requestUserInfo = function() {
			var html;



			var user_has_email = false;

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

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

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


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



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

		html = ' \
		<div id="' + (post_id 
			? 'dsq-reply-post-' + post_id
			: 'dsq-new-post')
		 	+ '" class="dsq-post-area"> \
			<div class="dsq-dc-logo"> \
				<a href="http://disqus.com/comments" target="_blank"><img src="http://media.disqus.com/images/themes/narcissus/disqus-logo.png"></a> \
			</div>'
			+ (post_id 
				? '<h3>' + Dsq.Strings.REPLYING_TO + ' ' + userData.display_name + '</h3>'
				: '<h3>' + Dsq.Strings.ADD_NEW_COMMENT + '</h3>')
			+ (Dsq.jsonData.request.is_authenticated 
				? _requestUserInfo()
				: _loginOptions() )
			+ '<div id="dsq-form-area' + pid + '">'
			+ '<div class="dsq-textarea"> \
				<div class="dsq-textarea-wrapper" id="dsq-textarea-wrapper' + pid + '"></div> \
			</div>'
			+ (!Dsq.jsonData.request.is_authenticated
			? ' \
			<div class="dsq-post-fields"> \
				<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">' + Dsq.Strings.SUBSCRIBE_TO_ALL_COMMENTS_BY_EMAIL + '</a></li> \
									<li><a href="#" onclick="Dsq.Templates.setSubscribe(0, this, ' + post_id + '); return false">' + Dsq.Strings.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> \
			</div>'
			: '')
			+ '<div class="dsq-post-footer"> \
				<div class="dsq-sharing-options" ' + (!display_sharing_options ? 'style="display:none;"' : '') + '> \
					<button type="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 type="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 type="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 type="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 type="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 type="button" class="dsq-button-small">' + Dsq.Strings.REPLY + '</button> \
						<button type="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 type="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 type="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 type="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 type="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 type="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 type="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 type="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 type="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="" /> ' + Dsq.Strings.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 type="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/scobleizer/thread.js'
			+ '?slug='	+ 'a_new_search_engine_appears_will_you_use_it'
			+ '&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/scobleizer/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://scobleizer.disqus.com/a_new_search_engine_appears_will_you_use_it/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 {
			var retval = parseInt(chunks[chunks.length-1]);
			return !isNaN(retval) ? retval : null;
		}
	};

	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 type="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/scobleizer/_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">68</span> Comments\
	 &nbsp;\
	 <span class="dsq-item-feed">\
	 <a href="http://scobleizer.disqus.com/a_new_search_engine_appears_will_you_use_it/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://scobleizer.disqus.com/a_new_search_engine_appears_will_you_use_it/">Community Page</a>&nbsp;&nbsp;&nbsp;</span>\
	 <span class="dsq-item-subscribe">\
	 <img src="http://media.disqus.com/images/embed/email.png" style="width:12px;height:12px;vertical-align:middle">\
	 <span id="dsq-subscribe">\
	 <a href="#" onclick="Dsq.Thread.subscribe(1); return false">Subscribe by email</a>\
	 </span>\
	 </span>\
	 </div>\
	 <div id="dsq-alerts">\
	 <p>Comments for this page are closed.</p>\
	 </div>\
		';

		

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

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

		
			html += Dsq.Templates.authPost();
		

		html += Dsq.Templates.reactions();

		
			html += Dsq.Templates.trackbacks();
		

		return html;
	};

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

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

		if (Dsq.jsonData.thread.num_pages > 1 && Dsq.jsonData.request.page < Dsq.jsonData.thread.num_pages) {
			html = ' \<a class="dsq-paginate-append-text" href="#" onclick="Dsq.Thread.paginate(Dsq.jsonData.request.page + 1, this); return false">Show more comments...</a>\
	 <button type="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://scobleizer.disqus.com/a_new_search_engine_appears_will_you_use_it/trackback/';
		}

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

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

		return html;
	}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

		return '<h3 class="dsq-h3-reactions">Reactions</h3><ul id="dsq-reactions" class="dsq-reactions">' + html + '</ul>';
	};
	
	this.missingPermissions = function() {
		return '	<p>Comments for this page are closed.</p>\n';
	};

	//
	// Post
	//

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

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

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

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

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

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

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

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

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

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

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

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

		return ' \
			<div class="dsq-comment-footer" id="dsq-comment-footer-' + post_id + '"> \
				<div id="dsq-points-' + post_id + '" class="dsq-likedtxt">'
				+ (_meta.points
					? _meta.points + Dsq.Utils.pluralize(_meta.points, ' person', ' people') + ' liked this comment.'
					: '')
				+ '</div>'
				+ '<ul class="dsq-comment-options dsq-list-style">'
				+ (_meta.votable
					? '<li class="dsq-list-first dsq-rate" id="dsq-rate-cont-' + post_id + '">'
					+ (!_meta.up_voted
						? '<a href="#" onclick="Dsq.Post.rate(this, ' + post_id + ', 1); return false;">Like</a>'
						: 'You liked this.') + '</li>'
					: '')
				+ '<li class="dsq-report' + (!_meta.votable ? ' dsq-list-first' : '') + '" id="dsq-post-report-' + post_id + '"><a href="#" class="dsq-post-report" onclick="Dsq.Post.report(' + post_id + ', false); return false;">Report</a></li> \
				</ul> \
				<ul class="dsq-list-style">'
				+ (_meta.can_reply
					? '<li class="dsq-list-first"><a href="#" id="dsq-reply-link-' + post_id +'" onclick="Dsq.Post.toggleReply(this, ' + post_id +'); return false;">Reply</a></li>'
					: '')
				+ (_meta.can_reply && !_meta.has_replies && _meta.from_request_user
					? '<li id="dsq-edit-el-' + post_id + '"><a id="dsq-edit-link-' + post_id + '" href="#" onclick="Dsq.Post.edit(this, ' + post_id + '); return false;">Edit</a></li>'
					: '')
				+ '<li class="' + (!_meta.can_reply ? 'dsq-list-first' : '') + '" id="dsq-more-el-' + post_id + '"><a id="dsq-more-link-' + post_id + '" href="#" onclick="Dsq.Post.showMenu(this, ' + post_id + ', \'more\'); return false">More <small>&#9660;</small></a></li>'
				+ (Dsq.jsonData.forum.use_media
					? '<li id="dsq-media-el-' + post_id +'" style="display:none"><a id="dsq-media-link-' + post_id + '" href="#" onclick="Dsq.Post.showMenu(this, ' + post_id + ', \'media\'); return false">Use Media <small>&#9660;</small></a></li>'
					: '')
				+ '</ul>'
				+ '<div id="dsq-reply-bar-' + post_id + '" class="dsq-reply-bar" style="display:none"> \
						<div id="dsq-reply-bar-items-' + post_id + '" class="dsq-reply-bar-items"> \
						</div> \
						<div id="dsq-reply-bar-auth-' + post_id + '" class="dsq-reply-bar-auth"> \
							 \
								 \
								 	<a href="#" class="dsq-help dsq-reply-req-opt" title="You are commenting as a Guest. You may choose to log into an existing DISQUS Profile, your Facebook, Twitter or OpenID account to comment on Scobleizer" 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:18352042" onclick="Dsq.Popup.login(); return false">Login</a> \
								 \
									&nbsp;or&nbsp; \
									<img class="fb_login_image" src="http://static.ak.fbcdn.net/images/fbconnect/login-buttons/connect_light_small_short.gif" alt="Facebook Connect"/> \
									<a href="#" onclick="FB.Connect.requireSession(DisqusFbcParentController.onLogin); return false;">Connect</a> \
								 \
								&nbsp;or&nbsp; \
									<img src="http://media.disqus.com/images/twitter-signin-icon.png" alt="" /> \
									<a href="#" onclick="Dsq.Twitter.startTwitterConnect(); return false">Sign-in</a> \
								 \
								 \
							 \
						</div> \
					</div> \
					<div id="dsq-reply-' + post_id + '"></div> \
			</div> \
		';
	};

	//
	// Iframes
	//

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

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

		var default_params = {
			// TODO: These should be moved to Dsq.jsonData.
			'f'				: 'scobleizer',
			't'				: 'a_new_search_engine_appears_will_you_use_it',
			// 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/scobleizer/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/scobleizer/a_new_search_engine_appears_will_you_use_it/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 type="button" onclick="Dsq.Popup._closePopup(null, true)"><strong>' + Dsq.Strings.NO + '</strong>, ' + Dsq.Strings.NEVER_MIND + '</button>&nbsp;&nbsp;&nbsp;<button type="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/scobleizer/thread.js'
			+ '?slug='	+ 'a_new_search_engine_appears_will_you_use_it'
			+ '&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/scobleizer/thread.js'
			+ '?slug='	+ 'a_new_search_engine_appears_will_you_use_it'
			+ '&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/scobleizer/subscribe.js'
				+'?status=' 	+ status
				+ '&slug='		+ 'a_new_search_engine_appears_will_you_use_it'
				+ '&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 type="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 type="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/scobleizer/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/scobleizer/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/scobleizer/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/18352042/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/scobleizer/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/scobleizer/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-9708108">\
	 <div id="dsq-comment-header-9708108" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708108" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708108" href="http://novicesnippets.blogspot.com/" target="_blank" rel="nofollow">Diana Valerini</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708108" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708108" class="dsq-comment-message">Hey Scoble<br><br>Its giving 102,986 results for scobleizer.<br><br>as against 1,070,000 in Google.<br><br>Your popularity will be down by 1/10 if people use Cuil.<br><br>Some of "great" blogger are not even featuring.<br><br>So I guess you are lucky.<br><br>As it is who is going to use Cuil ? I guess nobody.<br><br>But that was the case with Google earlier too.. I maybe wrong ...</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708109">\
	 <div id="dsq-comment-header-9708109" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708109" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708109" href="http://www.jacobburke.com/" target="_blank" rel="nofollow">Jacob Burke</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708109" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708109" class="dsq-comment-message">I have tried this out and am not impressed.  I don\'t understand why it is serving up unrelated images with the search results.  Sticking with Google!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708110">\
	 <div id="dsq-comment-header-9708110" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708110" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708110" href="http://www.dariosalvelli.com" target="_blank" rel="nofollow">Dario Salvelli</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708110" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708110" class="dsq-comment-message">Cuil is unavailable. So, a search engine that are down isn\'t enough affidable, right? :-)</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708111">\
	 <div id="dsq-comment-header-9708111" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708111" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708111">Victor</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708111" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708111" class="dsq-comment-message">On your Barry search test it would appear Cuil came back with the most accurate result.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708112">\
	 <div id="dsq-comment-header-9708112" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708112" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708112" href="http://www.startupmeme.com/" target="_blank" rel="nofollow">Imran Hussain</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708112" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708112" class="dsq-comment-message">This shows, again, how Google is very hard to beat in the online search arena.<br>Live Search, Yahoo, Alta Vista, Ask, Wikia Search ( am I missing any? ) and now Cuil.. how many more would it take to give a stiff competition to Google?!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708113">\
	 <div id="dsq-comment-header-9708113" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708113" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708113" href="http://sebmos.at/" target="_blank" rel="nofollow">Sebastian</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708113" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708113" class="dsq-comment-message">Cuil has a problem that every technology-based search start-up (compared to Mahalo) has: Indexing is extremely expensive. Even though they found a cheaper way, it\'s expensive. Powerset "solved" that problem through only searching Wikipedia (which, well, also removed the need for sophisticated ranking), Cuil solved that through having an outdated index. At the last time Cuil crawled the web in huge amounts, Obama\'s tech policy very likely wasn\'t even available.<br><br>That makes it difficult to actually compare the quality of the results, because they could likely change that with a huge amount of funding (or an acquisition).<br><br>Me, I agree with your point that they are there for Microsoft\'s money. Microsoft would be intelligent to buy the promising search start-ups and give them all the resources they need. (Personnel, computing power)<br>Cuil could give them a cheaper crawling technology, which all other search properties (Live Search, Powerset) would profit from, Powerset could take this index and process it with their technology, Live Search and Cuil could do their thing with it.<br>Live Search is a dead brand, they should simply try several approaches and hope that one of them works. Cuil, like Powerset, wouldn\'t be very expensive. They could get it for 100 to 200 million dollars.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708114">\
	 <div id="dsq-comment-header-9708114" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708114" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708114" href="http://www.broadstuff.com/" target="_blank" rel="nofollow">alan p</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708114" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708114" class="dsq-comment-message">Did an initial review of Cuil here:<br><br><a href="http://broadstuff.com/archives/1100-An-initial-review-of-Cuil.html" rel="nofollow">http://broadstuff.com/archives/1100-An-initial-...</a><br><br>Net net - nice, but what\'s the unique differentiator, as Robert notes.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708115">\
	 <div id="dsq-comment-header-9708115" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708115" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708115" href="http://thebookofw.com/" target="_blank" rel="nofollow">Tomi Itkonen</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708115" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708115" class="dsq-comment-message">The engine was down giving this message:<br>"The search engine is momentarily unavailable as we add more capacity."<br><br>Now it is up and I can make a few test searches. I actually like the clean 3-column layout. The long texts in the results seem to be of rather good quality. I\'m definetely going to use it now and then. At least, it gives an additional viewpoint to the web.<br><br>BTW: For those looking for more visual search, do check <a href="http://searchme.com" rel="nofollow">searchme.com</a> which is in beta stage at the moment.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708116">\
	 <div id="dsq-comment-header-9708116" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708116" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708116" href="http://www.nishantmodak.com/" target="_blank" rel="nofollow">Modak Nishant</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708116" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708116" class="dsq-comment-message">The search index is largely outdated it seems. Tried some phrases and it was evident. And when you try searching people, thats crystal clear<br><br>Moreover, tried  cuil [word] on google [search] and google [word] on cuil [search] .. cuil gave me link to google.co.uk ! and a tabbed browsing for its specific sites. which was nice.<br><br>Though, google has benchmarks which are difficult to beat the very first day.<br>It needs to evolve. Cuil\'s Evolution  would tell..</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708117">\
	 <div id="dsq-comment-header-9708117" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708117" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708117">David Poe</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708117" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708117" class="dsq-comment-message">Cuil down.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708118">\
	 <div id="dsq-comment-header-9708118" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708118" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708118">David Poe</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708118" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708118" class="dsq-comment-message">Cuil up.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708119">\
	 <div id="dsq-comment-header-9708119" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708119" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708119" href="http://www.peterharbeson.com/" target="_blank" rel="nofollow">Pete</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708119" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708119" class="dsq-comment-message">Cuil delivered pretty good results for some searches I tried, and I like their page layout. I\'m interested to see what they do in the mobile space; it looks like they haven\'t addressed that yet.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708120">\
	 <div id="dsq-comment-header-9708120" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708120" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708120" href="http://makemarketinghistory.blogspot.com/" target="_blank" rel="nofollow">John Dodds</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708120" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708120" class="dsq-comment-message">Cuil may be irish for knowledge but cul is french for ass.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708121">\
	 <div id="dsq-comment-header-9708121" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708121" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708121" href="http://www.michaelquinn.com.au/" target="_blank" rel="nofollow">Michael Quinn</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708121" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708121" class="dsq-comment-message">What did you think of the 3-column display?  I really liked the different layout ideas from Cuil.<br><br>Can\'t see it doing much - any website that needs to be spelt and is unclear how to pronounce is never going to get past a niche audience that likes to blog about sites that are silly to spell and need explainations on how to say it.<br><br>Mum and Dad aren\'t going to be using <a href="http://cool.com" rel="nofollow">cool.com</a>, i mean <a href="http://cuill.com" rel="nofollow">cuill.com</a>, <a href="http://cull.com" rel="nofollow">cull.com</a>.... oh whatever.  Just Google it.<br><br>But as <a href="http://cuil.com" rel="nofollow">cuil.com</a> fails, let look at some of the nice ideas it came up with.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708122">\
	 <div id="dsq-comment-header-9708122" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708122" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708122" href="http://www.profy.com/2008/07/28/cuil-launches-good-for-discovery-bad-for-search/" target="_blank" rel="nofollow">Svetlana Gladkova</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708122" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708122" class="dsq-comment-message">Very good point on the distribution, Robert. It is always interesting to see startups launch with an idea of offering something better (and we have already seen to many arguments to prove it is not better) and more scalable without thinking of distribution. Cuil talks about privacy issues without realizing that their approach is only appealing for a small crowd of early adopters. And the fact that this engine is different does not mean that it is better. So before distributing your product to the masses you have to make sure you are much better than the existing competition. And $33 million does not sound like enough both for the infrastructure and efficient distribution.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708123">\
	 <div id="dsq-comment-header-9708123" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708123" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708123" href="http://mobile17.com/" target="_blank" rel="nofollow">kerry</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708123" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708123" class="dsq-comment-message">why does one even need an alternative to Google ?</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708125">\
	 <div id="dsq-comment-header-9708125" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708125" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708125" href="http://obfuscation.wordpress.com/" target="_blank" rel="nofollow">Todd McKinney</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708125" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708125" class="dsq-comment-message">Looks like you got some attention from someone there. The Obama search works well now. Maybe this could be an interesting Mahalo variant - someone blogs about a search term, they go add it to the index.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708127">\
	 <div id="dsq-comment-header-9708127" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708127" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708127" href="http://littlemis.wordpress.com/" target="_blank" rel="nofollow">Little Miss</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708127" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708127" class="dsq-comment-message">Two reasons why I don\'t care for it: first, the name. I abhor things that are deliberately spelled wrong (I\'m an editor). How on earth does someone get "cool" out of "cuil"? I\'d likely try to say "kweel" or keep tripping over my tongue until someone corrected me. Had you not said it was pronounced "cool", I\'d never have guessed it. Second: I don\'t like how the search result are laid out. Three columns? What the heck? How do I know which is most important? It\'s unfamiliar formatting, and this late in the game, going so far away from what users are familiar with - unless it\'s a completely usable format - is not a good idea. Just my two cents, as a professional writer and editor.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708106">\
	 <div id="dsq-comment-header-9708106" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708106" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708106" href="http://www.designdelux.com/" target="_blank" rel="nofollow">Mark Mitchell</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708106" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708106" class="dsq-comment-message">Cuil. I must admit I spelled it wrong the first time I looked for it and got an Italian porn site. Seems as though Culi is something totally different :)<br><br>On thing I noticed with Cuil is it\'s lack of monetization or advertising. Granted they are new the layout doesn\'t seen to really lend itself to ads. In the end maybe they will invent some small piece of technology that one of the big 3 deem useful enough to buy them.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708107">\
	 <div id="dsq-comment-header-9708107" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708107" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708107" href="http://darklydreamingdavid.wordpress.com/" target="_blank" rel="nofollow">DAVE ID</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708107" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708107" class="dsq-comment-message">It will also be difficult to tear Google power-users away. I\'ve integrated a lot of their tools into my "web experience" for work and play. Google, iGoogle, Gmail, GoogleReader, GoogleMaps which I use daily for work, GoogleCalendar which I sync with my outlook and more. It\'s difficult to compete with so many options when you\'re a startup search engine. And I\'m not about to give my tools unless Google shuts down, which would make me very sad but we know that\'s not gonna happen anytime soon.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708104">\
	 <div id="dsq-comment-header-9708104" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708104" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708104" href="http://www.Majento.com/" target="_blank" rel="nofollow">Majento</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708104" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708104" class="dsq-comment-message">I don\'t like the SERP\'s i\'m getting, the column structure doesn\'t add much other than confusion, results seem outdated, missing relevant url\'s.<br>Sorry, at the moment Cuil seems disappointing to me.<br>"Explore by Category" is a nice addition, more engines should implement it.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708105">\
	 <div id="dsq-comment-header-9708105" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708105" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708105" href="http://scaleovenstove.wordpress.com/" target="_blank" rel="nofollow">Steve Novoselac</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708105" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708105" class="dsq-comment-message">did a search for you. No Results? <a href="http://screencast.com/t/qmDNs5XxD" rel="nofollow">http://screencast.com/t/qmDNs5XxD</a></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708100">\
	 <div id="dsq-comment-header-9708100" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708100" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708100" href="http://www.leantech.com/blog" target="_blank" rel="nofollow">Scott Sorheim</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708100" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708100" class="dsq-comment-message">I think the paradigms that Google has established will be difficult to break away from.  Here are some of those expectations:<br><br>-Results will be in an ordered list: are Cuil\'s left-to-right, then top-to-bottom?  If so, the fifth highest item gets visibility at the top of the page?)<br>-Results are easily "scannable" by the eyes: Cuil\'s can\'t be scanned because they\'re broken into three columns (or even two, as they offer this option)...this irritates me, and apparently doesn\'t work well, see Nielsen\'s study <a href="http://www.useit.com/alertbox/reading_pattern.html" rel="nofollow">http://www.useit.com/alertbox/reading_pattern.html</a><br>-The toolbar: As you have mentioned, I already see people type in that, and they simply expect to see Google results (or as you said, they type in their Url there...oops).  Even if Cuil got a toolbar in peoples\' browsers, if a three column list popped up, they\'ll think they\'ve done something wrong, and they\'ll probably not even realize they\'re looking at search results<br>-Google is a verb and a noun...I would surmise that even if people used a different browser, they would probably still say, "Did you google it?" Much like "Xerox it" still gets thrown around even if you\'re using a Ricoh. Will anyone ever "cuil it?"</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708101">\
	 <div id="dsq-comment-header-9708101" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708101" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708101">Paolo</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708101" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708101" class="dsq-comment-message">Takes forever to return results - thats a killer right there</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708102">\
	 <div id="dsq-comment-header-9708102" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708102" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708102" href="http://www.jer979.com/" target="_blank" rel="nofollow">jer979</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708102" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708102" class="dsq-comment-message">Back in the AltaVista days, search was broken. It took a long time.  Now, how often do you really not get what you want on your Google search? Most of us aren\'t feeling any search pain. We go to google, get what we want and move on.  I tried it out. the layout is neat, it\'s a bit smoother UI, but since I don\'t have much pain in search and my habits are pretty built in (plus start page, gmail and reader), unless I hear either<br>1. just keep hearing people RaVE re Cuil that it\'s SO much better<br>2 google starts being unreliable<br><br>I am probably not moving<br><br>Like the play for MS $ angle, that\'s a good bet.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708103">\
	 <div id="dsq-comment-header-9708103" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708103" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708103">Ryan</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708103" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708103" class="dsq-comment-message">I agree with the "why bother" crowd.  Seriously, there are so many more interesting problems out there to solve, does the world really need yet another search engine?<br><br>Robert, you\'re absolutely right.  This is a play for Microsoft $$$.  We have a window of a few months where we\'re probably going to see tons of search companies start up with the sole purpose of being bought by Microsoft.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708098">\
	 <div id="dsq-comment-header-9708098" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708098" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708098" href="http://www.sigmaman.com/" target="_blank" rel="nofollow">Mitch Featherston</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708098" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708098" class="dsq-comment-message">If they can provide better results, why not?</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708099">\
	 <div id="dsq-comment-header-9708099" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708099" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708099" href="http://dot.alter.si/" target="_blank" rel="nofollow">Jernej</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708099" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708099" class="dsq-comment-message">Tried a few searches and didn\'t get anything good out of it. In that regard it is as useless as Mahalo (seriously, does anyone use that crap??!)<br><br>Come to think of it... it\'s so much like iPhone I could easily be led to believe it\'s an Apple product. Nice on the outside but essentially crap.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708076">\
	 <div id="dsq-comment-header-9708076" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708076" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708076">Johb</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708076" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708076" class="dsq-comment-message">As soon as I heard about their privacy policy, I switched my home page to Cuil.  I am not nearly as concerned about how many search results I get as I am about privacy.  As far as Google is concerned, who cares if you get a million hits?  Are you going to read all of them?</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708095">\
	 <div id="dsq-comment-header-9708095" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708095" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708095" href="http://www.startupmeme.com/" target="_blank" rel="nofollow">Imran Hussain</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708095" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708095" class="dsq-comment-message">I have a feeling that even better results wont shift people from Google search now. It\'s so much integrated into many things now, Firefox, iPhone ( and sony ericsson phones as well,) heck, even in Opera Mini. Even Safari has Google as default. So unless someone can pay more then Google to replace these defaults ( or become defaults in other important software ) , there\'s going to be no harm to Google\'s search engine market share.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708096">\
	 <div id="dsq-comment-header-9708096" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708096" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708096" href="http://bizcoach.blogspot.com/" target="_blank" rel="nofollow">Marc Dangeard</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708096" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708096" class="dsq-comment-message">Search is so 1.0, who cares about this anymore?<br><br>The new search is social media. I use blogs or twitter to find the content that people are discussing, which is a really good filter. And the system feeds on itself too. If the people/blogs talking about what I am interested in are not in my list, I will include in my ecosystem so that I can get their input next time as well.<br><br>2 examples of this:<br>- search.twitter.com: type a keyword, see who discuss the subject and what their general tweets are about. If they are talking about what you are interested in, follow them and you will get the input as it comes.<br>- eCairn: build a list of blogs, start listening, and keep feeding the system. The more you read, the more your ecosystem will be, and the better access to information you will have.<br><br>Now for Google all this is not a huge deal (at least Cuil is not) because Google is about infrastructure these days, rather than search. The real killer Google App is Google Apps, as a way to help companies transition into the new world of online collaboration and online participation. Watch them on this, I see a big wave coming...</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708097">\
	 <div id="dsq-comment-header-9708097" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708097" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708097">jere</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708097" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708097" class="dsq-comment-message">Robert, you need to read this paper:<br><br><a href="http://research.microsoft.com/%7Eryenw/papers/WhiteSIGIR2008a.pdf" rel="nofollow">http://research.microsoft.com/~ryenw/papers/Whi...</a><br><br>I think it answers your questions about what.. and even whether.. there is "a" search engine that you should be using.<br><br>A smart searcher, just like a smart woodworker (for example), understands that there is more than a single tool to get the job done.  If you are using only a single engine, you are severely robbing yourself of the best results.  No matter what one single engine that is.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708091">\
	 <div id="dsq-comment-header-9708091" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708091" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708091">jere</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708091" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708091" class="dsq-comment-message">@DianaV:<br><br>"Its giving 102,986 results for scobleizer.  as against 1,070,000 in Google."<br><br>It never ceases to amaze me how many people quote these types of numbers, then conclude that the engine with the bigger number is the better one.  First of all, you should look at the experiment that Scoble did a few years ago, with the word "brrreeeport".  One can conclude that Google vastly (and incorrectly) overinflates its numbers.  It lies, in other words.<br><br>And even if it didn\'t lie, one has to realize that Google will not show you more than the top 1000 results, anyway.  What does it matter if there are 100,000 or 100,000,000?  If the search engine won\'t show you more than 1,000, the two numbers might as well be the same.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708092">\
	 <div id="dsq-comment-header-9708092" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708092" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708092">Mike</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708092" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708092" class="dsq-comment-message">A lot of these same arguments could\'ve been used to explain why Yahoo or Alta Vista or (insert name of leading search engine circa 2000) would fend off Google.  In terms of distribution, plenty of people ignore all of the preloaded crap that comes with a PC and go right to their favorite sites.<br><br>If anyone proved that a simple and better technology could eventually win out, it\'s GOOG.<br><br>Not saying Cuil has all that, just the logic behind many of these posts seems ironic given Google\'s history.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708124">\
	 <div id="dsq-comment-header-9708124" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708124" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708124" href="http://www.thriveorfail.com/" target="_blank" rel="nofollow">Kevin K.</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708124" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708124" class="dsq-comment-message">Check out the results on the question "Thrive or Fail" so far on Cuil: <a href="http://snurl.com/36fll" rel="nofollow">http://snurl.com/36fll</a><br>cuill, TC</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708126">\
	 <div id="dsq-comment-header-9708126" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708126" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708126" href="http://scobleizer.com/" target="_blank" rel="nofollow">Robert Scoble</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708126" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708126" class="dsq-comment-message">Mike: AltaVista didn\'t have the lockin that Google has today. Try to switch out the search engine on the iPhone, especially on the maps. Go ahead and try, I\'ll wait. You can\'t. That\'s MUCH different than it used to be.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708093">\
	 <div id="dsq-comment-header-9708093" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708093" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708093">Miles Archer</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708093" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708093" class="dsq-comment-message">If they are good, they will be bought.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708094">\
	 <div id="dsq-comment-header-9708094" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708094" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708094" href="http://www.booksonboard.com/rss/bob_rss.xml" target="_blank" rel="nofollow">Breaking Dawn ebooks</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708094" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708094" class="dsq-comment-message">Cuil has an attractive design.  I\'m still not convinced of its functionality though.  I could see myself using Cuil as something supplemental to Google, maybe, if I can\'t find what I\'m looking for on Google (since they do come up with fairly different search results).</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708088">\
	 <div id="dsq-comment-header-9708088" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708088" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708088">Martha Baxley</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708088" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708088" class="dsq-comment-message">This is the worst site I\'ve ever uses. Porn pop ups immediately while searching. I am at work and porn does not work here. What is wrong with that search engine allowing porn to pop up and I mean it\'s ladies from around here.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708089">\
	 <div id="dsq-comment-header-9708089" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708089" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708089">Andrew</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708089" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708089" class="dsq-comment-message">Define Epic Failure:<br><br>You launch a search engine to compete against Google, spout off that you have more indexed pages, more relevant results, a better design, and better algorithm, and you name yourself Cuil (pronounced cool). You do a search using the Cuil search engine for the word Cuil, and they don\'t even show up in their own search results.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708090">\
	 <div id="dsq-comment-header-9708090" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708090" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708090" href="http://sebmos.at/" target="_blank" rel="nofollow">Sebastian</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708090" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708090" class="dsq-comment-message">@jere<br>The size of their index is part of their pitch to users. They said to the press that they have the biggest index size.<br>Sure it doesn\'t matter - relevancy is the most important thing. I wouldn\'t care if search engines had only 20 results for each query - as long as these were the relevant results! But Cuil advertises their index size - which doesn\'t seem that big after all.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708084">\
	 <div id="dsq-comment-header-9708084" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708084" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708084">jere</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708084" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708084" class="dsq-comment-message">@Sebastian: Well, Google also recently re-advertised its index size.  Just a few days ago, it started bragging about how it had just reached a trillion web pages in its index.  Perhaps Google, who had sworn long ago that index size didn\'t matter, pre-released that information to try and undercut the Cuil hype?  Whatever the reason, both Google and Cuil are now bragging about the size of their indices.<br><br>And since Scoble has already shown that Google lies about these sorts of things, by overinflating the reported numbers ("brrreeeport"), I don\'t really see how you can conclude that Cuil\'s index doesn\'t seem that big, after all.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708085">\
	 <div id="dsq-comment-header-9708085" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708085" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708085">jere</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708085" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708085" class="dsq-comment-message">Maybe someone can look up those original series of blogposts again, so that we all can see the exact experiment and numbers.  (Scoble?)  But at the risk of being corrected, what I remember is that at the same time that Google Blog Search was reporting 500 or 600 different pages with the word "brrreeeport" on it, Google Web Search was showing something like 200,000 web pages with that word on it.  And this was like two days after Scoble originally invented the word -- meaning that it didn\'t exist on any web page, anywhere, two days prior.<br><br>And since Scoble had asked bloggers to put the word on their blogs, I tend to think that it is more true that 600 blogs suddenly started using the word, rather than 200,000 web pages.<br><br>So let\'s generously assume that the real number of pages that contained brrreeeport, two days after Scoble invented the word, was somewhere around 2000.  That means that Google was overreporting the size of their index by a factor of about 100.  So if this is really the case, and Cuil isn\'t lying about their numbers while Google is, then Cuil\'s index does appear to be larger.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708086">\
	 <div id="dsq-comment-header-9708086" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708086" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708086">jere</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708086" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708086" class="dsq-comment-message">FWIW: I just did a search on both Cuil and Google for "brrreeeport".  Google now reports 9,590 web pages (down from their two year high of 200,000?  Did 190,000 servers suddenly go offline?) with the word, and Cuil reports 9,641 web pages.<br><br>Seems like Cuil is quite competitive with Google\'s size.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708087">\
	 <div id="dsq-comment-header-9708087" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708087" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708087" href="http://emcye.com/" target="_blank" rel="nofollow">emcye</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708087" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708087" class="dsq-comment-message">33MM! - a really bad name and we have to scroll DOWN to access a search? Sideways?<br><br>Doesn\'t pick up Mac-based urls...interface unpretty...not ready, overly bumptious....sure smells like a Microsoft branding project.<br><br>They\'re Kidding, right?</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708082">\
	 <div id="dsq-comment-header-9708082" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708082" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708082">Victor</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708082" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708082" class="dsq-comment-message">They seem to better. Now when I do your Obama search I get a different result every time. Which is consistent with Obama\'s message.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708083">\
	 <div id="dsq-comment-header-9708083" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708083" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708083">tchalla Jones</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708083" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708083" class="dsq-comment-message">They seem slower. Have improved relevancy of results but lack some of the bells and whistles that Google has built up overtime E.g "Did you mean" Would use as an addition to google not a replacement at this point</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708077">\
	 <div id="dsq-comment-header-9708077" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708077" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708077" href="http://opendomain.blogspot.com/" target="_blank" rel="nofollow">Connor F. Feldman</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708077" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708077" class="dsq-comment-message">I excited about the possibilities.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708078">\
	 <div id="dsq-comment-header-9708078" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708078" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708078">Fritz</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708078" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708078" class="dsq-comment-message">Cuil=Junk</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708079">\
	 <div id="dsq-comment-header-9708079" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708079" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708079">Lloyd</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708079" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708079" class="dsq-comment-message">This site sucks in my opinion. Although the pics beside the results are pretty cool, that doesn\'t account for the irrevelant results. Next!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708072">\
	 <div id="dsq-comment-header-9708072" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708072" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708072" href="http://ganeshayan.blogspot.com/" target="_blank" rel="nofollow">Ganesh Kulkarni</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708072" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708072" class="dsq-comment-message">There is a \'bounded rationality\' meaning people generally settle on \'good enough\' and don\'t need \'the best\'. Google is THE \'good enough\' of today\'s search-sphere. We do not need any other search engine.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708070">\
	 <div id="dsq-comment-header-9708070" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708070" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708070" href="http://www.CoachingTip.com/" target="_blank" rel="nofollow">John Agno</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708070" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708070" class="dsq-comment-message">Since there is no eraser on the Internet, I just "Googled" myself on <a href="http://www.Cuil.com" rel="nofollow">www.Cuil.com</a> ....and...was pleasantly surprised liking the display of results and what I read.   Guess I\'ll be using Cuil again and again and even advertising there when offered.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708071">\
	 <div id="dsq-comment-header-9708071" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708071" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708071">Markus</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708071" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708071" class="dsq-comment-message">the relevance of the cuil results were way off in my tests</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708069">\
	 <div id="dsq-comment-header-9708069" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708069" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708069">Nick Light</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708069" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708069" class="dsq-comment-message">Have searched for  "Cuil" and "Cuil.com" on <a href="http://www.cuil.com" rel="nofollow">www.cuil.com</a> - and their own site is nowhere to be seen :).<br><br>Very smooth.<br><br>"Cuil.com - works 60% of the time -- everytime"</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708075">\
	 <div id="dsq-comment-header-9708075" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708075" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708075">Charles Tomaras</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708075" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708075" class="dsq-comment-message">Well...I did your "Barack Obama’s technology policy" search on Microsoft\'s Live Search and indeed you are wrong...it comes up properly as the first choice.<br><br><a href="http://search.live.com/results.aspx?q=Barack+Obama%25E2%2580%2599s+technology+policy&amp;FORM=OPNSCH" rel="nofollow">http://search.live.com/results.aspx?q=Barack+Ob...</a></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708074">\
	 <div id="dsq-comment-header-9708074" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708074" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708074">dmg</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708074" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708074" class="dsq-comment-message">Google managed to overtake established search engines based almost solely on word of mouth... Cuil could to the same thing.<br><br>BTW it\'s incredibly easy to make Cuil your default search in Firefox... firefox asks you to add it while you\'re on the Cuil web site, if you expand the search option box top right.<br><br>Cuil should quickly add news - their layout would be great to add google news-like search results for certain queries - in a tabbed option layout. So far I think this is pretty good. It\'s not like Google search is so amazing that it\'s untouchable.<br><br>Like most things, there is tons of room for improvement.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708073">\
	 <div id="dsq-comment-header-9708073" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708073" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708073">Natali</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708073" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708073" class="dsq-comment-message">The new visual search engine already exists, it is only for kids))<br><a href="http://www.aga-kids.com/" rel="nofollow">http://www.aga-kids.com/</a></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708131">\
	 <div id="dsq-comment-header-9708131" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708131" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708131" href="http://joshuagoodwin.com/" target="_blank" rel="nofollow">Josh</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708131" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708131" class="dsq-comment-message">I just Cuil\'d myself, and the first result was me. What\'s more, I discovered that I\'m also a racing driver.<br><br>They may claim to have more pages indexed than Google, but that doesn\'t necessarily mean anything. It depends on how you count, such is the nature of the web.<br><br>@<a href="http://scobleizer.com/2008/07/27/a-new-search-engine-appears-will-you-use-it/#comment-1992410" rel="nofollow">Andrew</a>: Well, is anyone actually going to want to find Cuil using Cuil. They are obviously aware of the search engine\'s location if they are using it.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708130">\
	 <div id="dsq-comment-header-9708130" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708130" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708130" href="http://blog.codyredmon.com/" target="_blank" rel="nofollow">Cody</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708130" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708130" class="dsq-comment-message">As a fine art landscape photographer, I was surprised to "cuil" my name and see a suggestive image of a woman next to website results...I don\'t photograph people.  I did similar searches for other photographers in my circle and discovered the same thing - sexually suggestive images of women next to the results.  I wrote cuil an e-mail straight away because to me it\'s not appropriate that they make such an association and could potentially trash my name to their users.  So much for relevant content...</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708129">\
	 <div id="dsq-comment-header-9708129" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708129" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708129" href="http://scobleizer.com/" target="_blank" rel="nofollow">Robert Scoble</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708129" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708129" class="dsq-comment-message">Charles: I just did the search again on <a href="http://live.com" rel="nofollow">live.com</a> and Barack\'s energy policy comes up #1 for me. Sorry, Google wins.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708128">\
	 <div id="dsq-comment-header-9708128" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708128" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708128" href="http://www.eceblogger.com/" target="_blank" rel="nofollow">Andrew Kun</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708128" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708128" class="dsq-comment-message">I compared Cuil, Google and Live Search on 3 terms that are important to me: eceblogger (the blog I run), Project54 (the project I work on at UNH) and "Andrew Kun" (my name). Results:<br><br>Cuil:<br>eceblogger: Only finds references on other pages, search should produce <a href="http://www.eceblogger.com" rel="nofollow">www.eceblogger.com</a> as the top result.<br>Project54: Search produces no results. It should find <a href="http://www.project54.com" rel="nofollow">www.project54.com</a>.<br>Andrew Kun: Worst of all, it can\'t find me very well! Shocking. When I search for Andrew Kun, I find a golf player in Canada and some old pages I set up, but not my current page in my department, or my <a href="http://www.andrewkun.com" rel="nofollow">www.andrewkun.com</a>.<br><br>Google:<br>eceblogger: top result <a href="http://www.eceblogger.com" rel="nofollow">www.eceblogger.com</a><br>Project54: top result <a href="http://www.project54.unh.edu" rel="nofollow">www.project54.unh.edu</a><br>Andrew Kun: top result my current UNH page, <a href="http://www.andrewkun.com" rel="nofollow">www.andrewkun.com</a> is 3rd<br><br>Live Search:<br>eceblogger: top result <a href="http://www.eceblogger.com" rel="nofollow">www.eceblogger.com</a><br>Project54: top result <a href="http://www.project54.unh.edu" rel="nofollow">www.project54.unh.edu</a><br>Andrew Kun: top result <a href="http://www.andrewkun.com" rel="nofollow">www.andrewkun.com</a><br><br>So forget Cuil! ;) Google and Live Search are tied with a slight edge to Live Search for placing <a href="http://www.andrewkun.com" rel="nofollow">www.andrewkun.com</a> on top.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708081">\
	 <div id="dsq-comment-header-9708081" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708081" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708081">mihir</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708081" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708081" class="dsq-comment-message">Try searching for "Facebook f8" (without quotes). What result would you expect at the top? Google shows <a href="http://developers.facebook.com" rel="nofollow">developers.facebook.com</a>, while live shows the webpage for the F8 event.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708080">\
	 <div id="dsq-comment-header-9708080" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708080" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708080" href="http://businessmindhacks.com/" target="_blank" rel="nofollow">Alex Schleber</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708080" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708080" class="dsq-comment-message">Robert, very perceptive about the possible MSFT angle.<br><br>Love how someone further up said they "cuiled" themselves... and the image mix-up thing is downright comical (you\'d think they would have checked at least that bit, apparently they served up even quite a few X-rated images next to unsuspecting poeple\'s bios, etc. ).<br><br>Just finished an in depth look at the Cuil branding disaster (with Knol hot on its heels):<br><br><a href="http://businessmindhacks.com/post/cuil-knol-and-other-crimes-against-branding" rel="nofollow">http://businessmindhacks.com/post/cuil-knol-and-other-crimes-against-branding</a></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708133">\
	 <div id="dsq-comment-header-9708133" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708133" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708133">Nick Ward on Cuil</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708133" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708133" class="dsq-comment-message">Several people have mentioned how Google came from behind, via word-of-mouth to win the search game and suggest that Cuil could do the same. I disagree; I am a pretty heavy user of search and have been for a while and the day that I heard of a new search engine called Google (what was that name about?) I tried it and immediately saw that it cut through the porn and other garbage to deliver EXACTLY what I was looking for. I was hooked from the first moment and never used Excite again (along with just about everyone else it seemed) and told everyone interested about this great search engine with the wacky name<br><br>I tried Cuil in the same way and sadly it lost me straight away - first by being down (I don\'t recall ever seeing that happen with Google - how are Cuil going to compete with that scale?) but I can forgive that...just. But by failing to return any answers to some queries that Google just nailed - I\'m not talking about stuff that requires up-to-the-minute indexes, just regular searches that cuil thought were so specialized that nothing could be found whilst Google took me straight to the answer. Sorry guys but I\'m too busy to help you debug your stuff when I have a perfectly adequate solution today.<br><br>I do appreciate the play on privacy - that alone got me interested enough to try it even after the initial service crashes. But you have to deliver and right now it doesn\'t</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708132">\
	 <div id="dsq-comment-header-9708132" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708132" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708132">Nick Ward on Cuil</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708132" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708132" class="dsq-comment-message">Several people have mentioned how Google came from behind, via word-of-mouth to win the search game and suggest that Cuil could do the same. I disagree; I am a pretty heavy user of search and have been for a while and the day that I heard of a new search engine called Google (what was that name about?) I tried it and immediately saw that it cut through the porn and other garbage to deliver EXACTLY what I was looking for. I was hooked from the first moment and never used Excite again (along with just about everyone else it seemed) and told everyone interested about this great search engine with the wacky name<br><br>I tried Cuil in the same way and sadly it lost me straight away - first by being down (I don\'t recall ever seeing that happen with Google - how are Cuil going to compete with that scale?) but I can forgive that...just. But by failing to return any answers to some queries that Google just nailed - I\'m not talking about stuff that requires up-to-the-minute indexes, just regular searches that cuil thought were so specialized that nothing could be found whilst Google took me straight to the answer. Sorry guys but I\'m too busy to help you debug your stuff when I have a perfectly adequate solution today.<br><br>I do appreciate the play on privacy - that alone got me interested enough to try it even after the initial service crashes. But you have to deliver and right now it doesn\'t</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708134">\
	 <div id="dsq-comment-header-9708134" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708134" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708134" href="http://growthumbles.blogspot.com/" target="_blank" rel="nofollow">Curtis</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708134" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708134" class="dsq-comment-message">Id probably end up forgetting all about this search engine. There were sites on there I know haven\'t even existed for years. Why do we need another under powered search engine.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708135">\
	 <div id="dsq-comment-header-9708135" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708135" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708135" href="http://berlinshotel.com/" target="_blank" rel="nofollow">Josh Mcdonald</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708135" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708135" class="dsq-comment-message">this is definitely some lovely talk</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708136">\
	 <div id="dsq-comment-header-9708136" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708136" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708136" href="http://www.vista-interactive.com/" target="_blank" rel="nofollow">Peter Murray</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708136" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708136" class="dsq-comment-message">I searched for my wife (who has an uncommon name) with Cuil.<br><br>The 1st result was our ancient family website (last updated in January 2004)! The picture attached to the search result has nothing to do with that website.<br><br>The top of Google\'s search results are my wife\'s Facebook public profile and her Amazon wishlist.<br><br>Google wins.</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=scobleizer&t=a_new_search_engine_appears_will_you_use_it&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 = 'faaf467d0f47abde553c3b8e0e1b3570';
			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');
}

// Global event handler for narcissus.
if (Dsq.jsonData.integration.theme == 4) {
	var g = Dsq.Utils.ie ? document : window;
	Dsq.Utils.addEventListener(g, 'keydown', function(event) {
		// Handle "enter" key on input for post box.
		if ((event.keyCode || event.which) == 13) {
			var target = Dsq.Utils.ie ? event.srcElement : event.target;
			// For Safari bug, detect text node.
			if (target.nodeType == 3) {
				target = target.parentNode;
			}

			if (target.nodeName == 'INPUT' &&
				target.parentNode.className == 'dsq-input-wrapper') {
				var postId = Dsq.Utils.extractId(target);
				Dsq.Templates.postComment(postId, this, false);
			}
		}
	});
}

})();




