




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

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

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

var Dsq = new function() {
	this.container = document.getElementById('dsq-content');
	this.jsonData = {"reactions": [], "has_more_reactions": false, "users": {"45577c02e2b06637da754bd7cef7bc80": {"username": "Tom", "tumblr": "", "display_name": "Tom", "url": "http://disqus.com/guest/45577c02e2b06637da754bd7cef7bc80/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "6dc03c83d2e13d2438c2f5ca02fd5c68": {"username": "Patricia McFadden", "tumblr": "", "display_name": "Patricia McFadden", "url": "http://disqus.com/guest/6dc03c83d2e13d2438c2f5ca02fd5c68/", "registered": false, "linkedin": "", "blog": "http://www.patriciamcfadden.com", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "ecec551f7c349ddbd7d45fc8d3258779": {"username": "JOE MELARA", "tumblr": "", "display_name": "JOE MELARA", "url": "http://disqus.com/guest/ecec551f7c349ddbd7d45fc8d3258779/", "registered": false, "linkedin": "", "blog": "http://www.DesertAreaREO.com", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "webtasarimi": {"username": "webtasarimi", "tumblr": "", "display_name": "webtasarimi", "url": "http://disqus.com/webtasarimi/", "registered": true, "linkedin": "", "blog": "http://www.aydesign.net", "remote_domain": null, "points": 1, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "ae0e37f9339725d91d94a416b4474f85": {"username": "Michael Hellickson", "tumblr": "", "display_name": "Michael Hellickson", "url": "http://disqus.com/guest/ae0e37f9339725d91d94a416b4474f85/", "registered": false, "linkedin": "", "blog": "http://www.TheShortSaleCompany.com", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "028c9d9ba56fccc275882da33f58ee52": {"username": "Bass", "tumblr": "", "display_name": "Bass", "url": "http://disqus.com/guest/028c9d9ba56fccc275882da33f58ee52/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "9e5738cb4279134a4224c2be9cb82146": {"username": "Carlos", "tumblr": "", "display_name": "Carlos", "url": "http://disqus.com/guest/9e5738cb4279134a4224c2be9cb82146/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "0dc90d065b0468b4e6ca7375a44860e9": {"username": "FailureIsTheWay", "tumblr": "", "display_name": "FailureIsTheWay", "url": "http://disqus.com/guest/0dc90d065b0468b4e6ca7375a44860e9/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "6752d1ef7e551406fc6dd1ff02eecf78": {"username": "Donna L", "tumblr": "", "display_name": "Donna L", "url": "http://disqus.com/guest/6752d1ef7e551406fc6dd1ff02eecf78/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "ronsullivan": {"username": "ronsullivan", "tumblr": "", "display_name": "Ron Sullivan", "url": "http://disqus.com/ronsullivan/", "registered": true, "linkedin": "", "blog": "http://www.iknowrosedale.co", "remote_domain": null, "points": 1, "facebook": "", "avatar": "http://media.disqus.com/uploads/users/55/8683/avatar32.jpg", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "markmincey": {"username": "markmincey", "tumblr": "", "display_name": "markmincey", "url": "http://disqus.com/markmincey/", "registered": true, "linkedin": "", "blog": "", "remote_domain": null, "points": 2, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "4fc640760468d65287afe1000bd95d4f": {"username": "Renee Burrows", "tumblr": "", "display_name": "Renee Burrows", "url": "http://disqus.com/guest/4fc640760468d65287afe1000bd95d4f/", "registered": false, "linkedin": "", "blog": "http://www.ReneeBurrows.com", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "fe6d102ee7dadbbd1b3224f41ae3f783": {"username": "AngryRenter", "tumblr": "", "display_name": "AngryRenter", "url": "http://disqus.com/guest/fe6d102ee7dadbbd1b3224f41ae3f783/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "1fe6ad4b5368105aa47ee4199961eb68": {"username": "Dean", "tumblr": "", "display_name": "Dean", "url": "http://disqus.com/guest/1fe6ad4b5368105aa47ee4199961eb68/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "669722926f403f9ca8c7a361112a195c": {"username": "Vegas Tim ", "tumblr": "", "display_name": "Vegas Tim ", "url": "http://disqus.com/guest/669722926f403f9ca8c7a361112a195c/", "registered": false, "linkedin": "", "blog": "http://www.lavegasrealestatewire.com", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "4efb602a027cfb181426121292b57d10": {"username": "Florida Agent", "tumblr": "", "display_name": "Florida Agent", "url": "http://disqus.com/guest/4efb602a027cfb181426121292b57d10/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "b6b56f39622f857983df500dc0f7941f": {"username": "Bruce Slaton", "tumblr": "", "display_name": "Bruce Slaton", "url": "http://disqus.com/guest/b6b56f39622f857983df500dc0f7941f/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "2d69a10431422285b306496c6149e285": {"username": "Ron", "tumblr": "", "display_name": "Ron", "url": "http://disqus.com/guest/2d69a10431422285b306496c6149e285/", "registered": false, "linkedin": "", "blog": "http://www.norcalrepos.com", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "johnmayer76": {"username": "johnmayer76", "tumblr": "", "display_name": "johnmayer76", "url": "http://disqus.com/johnmayer76/", "registered": true, "linkedin": "", "blog": "", "remote_domain": null, "points": 2, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "6b39a40633c363f42d32689d41209cc5": {"username": "Addie", "tumblr": "", "display_name": "Addie", "url": "http://disqus.com/guest/6b39a40633c363f42d32689d41209cc5/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "69128f2bb48cc4afcb74c1ab1bc28505": {"username": "PATTY PICKETT", "tumblr": "", "display_name": "PATTY PICKETT", "url": "http://disqus.com/guest/69128f2bb48cc4afcb74c1ab1bc28505/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "3fa2829e87a5e3d2e5dac028b51a4acf": {"username": "Chandler Real Estate", "tumblr": "", "display_name": "Chandler Real Estate", "url": "http://disqus.com/guest/3fa2829e87a5e3d2e5dac028b51a4acf/", "registered": false, "linkedin": "", "blog": "http://www.lortihomesblog.com", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "e73b7a5e9d7b6fb8eaaecea4a7589ed2": {"username": "Gary Brothers", "tumblr": "", "display_name": "Gary Brothers", "url": "http://disqus.com/guest/e73b7a5e9d7b6fb8eaaecea4a7589ed2/", "registered": false, "linkedin": "", "blog": "http://www.nwwaterfrontrealestate.com", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "9633e57ae7e00604050c06993897f508": {"username": "Char", "tumblr": "", "display_name": "Char", "url": "http://disqus.com/guest/9633e57ae7e00604050c06993897f508/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "8c05104960913d463e2624cae6fe985a": {"username": "dapostmaster", "tumblr": "", "display_name": "dapostmaster", "url": "http://disqus.com/guest/8c05104960913d463e2624cae6fe985a/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "6a0c5d9412d8f4faeea941b1075dcc5a": {"username": "Ted", "tumblr": "", "display_name": "Ted", "url": "http://disqus.com/guest/6a0c5d9412d8f4faeea941b1075dcc5a/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "1c0ccb80f18de6871d3fd37b97cd3594": {"username": "name", "tumblr": "", "display_name": "name", "url": "http://disqus.com/guest/1c0ccb80f18de6871d3fd37b97cd3594/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "0cfe159142c221f08f9cc13216387ffb": {"username": "Ben Richardson", "tumblr": "", "display_name": "Ben Richardson", "url": "http://disqus.com/guest/0cfe159142c221f08f9cc13216387ffb/", "registered": false, "linkedin": "", "blog": "http://www.BensMyRealtor.com", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "34097919eb139b0aec718df4f507bbf8": {"username": " Amy G", "tumblr": "", "display_name": " Amy G", "url": "http://disqus.com/guest/34097919eb139b0aec718df4f507bbf8/", "registered": false, "linkedin": "", "blog": "http://www.amygluch.com", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "4c4a9fae5ea68fd0fe825ebf1459d702": {"username": "cv", "tumblr": "", "display_name": "cv", "url": "http://disqus.com/guest/4c4a9fae5ea68fd0fe825ebf1459d702/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "6d6703395c78b03e5580e5c767df237f": {"username": "Geo Broker", "tumblr": "", "display_name": "Geo Broker", "url": "http://disqus.com/guest/6d6703395c78b03e5580e5c767df237f/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "c09feaf6a4c774cbca6d4705e336f4b5": {"username": "Sharon Virgin", "tumblr": "", "display_name": "Sharon Virgin", "url": "http://disqus.com/guest/c09feaf6a4c774cbca6d4705e336f4b5/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "retirementcommunities": {"username": "retirementcommunities", "tumblr": "", "display_name": "retirementcommunities", "url": "http://disqus.com/retirementcommunities/", "registered": true, "linkedin": "", "blog": "http://retirementcommunities.net", "remote_domain": null, "points": 1, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "c400c64d6697ac19f453b067b1ef08de": {"username": "Ken B.", "tumblr": "", "display_name": "Ken B.", "url": "http://disqus.com/guest/c400c64d6697ac19f453b067b1ef08de/", "registered": false, "linkedin": "", "blog": "http://www.Rent2ownMarket.com", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}}, "forum": {"use_media": false, "name": "The Washington Independent", "streaming_realtime": false, "url": "washingtonindependent", "allow_anon_post": true, "reactions_enabled": false, "reply_position": 0, "show_avatar": true, "allow_anon_votes": false, "disqus_auth_disabled": false}, "realtime_enabled": false, "request": {"username": "", "is_global_moderator": false, "sharing": {}, "sort": 4, "forum": "washingtonindependent", "is_initial_load": true, "is_authenticated": false, "timestamp": "2009-11-30_21:16:21", "remote_domain": "", "page": 1, "is_moderator": false, "display_username": "", "points": null, "subscribe_on_post": 2, "moderator_can_edit": false, "is_remote": false, "is_verified": false, "missing_perm": null}, "realtime_paused": false, "posts": {"7833225": {"up_voted": false, "ip": "", "has_replies": true, "message": "I am in my 35th year. Been through a couple ups and downs! I understand banks being reluctant to rent the property.My experience with tenants is they do not want to move.They make it very difficult to show the property and bad mouth it if they can. The law often requires a 24hour notice.  Often the  tenants are sick or the dog is waiting! There needs to be  an arrangement where the tenant land lord law no longer applies on  Foreclosed property. As  far as BPO,s.I received a request here in Montana that was 200 miles away! A different world in areas with few people! We can not find comps with the current requirements of a city .. The cost of gas in its self  makes no sense to do BPO's for  $50.00. You get what you pay for in this situation. My problem with  any effort to establsh value is it supposed to be an \"arms length agreement\"between a buyer and seller! A foreclosure  should not be a comp.! Try to find a sale that meets the rules is impossible in this market.So what do we do? For starters  we need to receive pay for  BPO,s  comparable to an appraisal. The  work needs to be  completed by a broker with experience that know the marketandis willingtodothe research toarrive atafair market value", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-04_17:33:20", "killed": false, "user_key": "e73b7a5e9d7b6fb8eaaecea4a7589ed2", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "8 months ago", "approved": true, "num_replies": 1, "is_first_child": true, "email": "", "parent_post_id": 7773275, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "7910666": {"up_voted": false, "ip": "", "has_replies": false, "message": "As an agent who completes bpos as part of my career, I would hope that Congress can acknowledge that there are also agents who are so underpaid for this job and perhaps do a better job than some appraisers because they know the comps they are selecting, they've sold and shown properties in a particular neighborhood.  My job is to make sure no gets \"taken\" not the banks and not tne buyer.  I certainly agree with Ron  I would trust a bpo just as much as I would trust an appraisal.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-06_14:50:43", "killed": false, "user_key": "9633e57ae7e00604050c06993897f508", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "7 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "8948626": {"up_voted": false, "ip": "", "has_replies": false, "message": "Bruce you are the only one I have heard say something like this but myself.  Where is the money (on all of these repeated refinances) on these homes that were foreclosed on.  <br><br>I am a Realtor here in Las Vegas, we have the same conditions and we are in dire need of inventory.  I am at a loss on what to tell the ready, willing and able buyers what to do and how to act.", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2009-05-03_02:08:17", "killed": false, "user_key": "4fc640760468d65287afe1000bd95d4f", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "7 months ago", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 7905894, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "7908116": {"up_voted": false, "ip": "", "has_replies": false, "message": "Let's just let everyone live in their houses for free.  How could we be so cruel as to kick people out of their homes just because they can't pay?  That should satisfy the \"housing advocates\" right?", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-06_13:09:33", "killed": false, "user_key": "1fe6ad4b5368105aa47ee4199961eb68", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "7 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "7833238": {"up_voted": false, "ip": "", "has_replies": false, "message": "blaa blaa blaa", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-04_17:35:20", "killed": false, "user_key": "45577c02e2b06637da754bd7cef7bc80", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "8 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "23860250": {"up_voted": false, "ip": "", "has_replies": false, "message": "Are you really complaining that the victims of rent skimming landlords need to have 24 hr notice before you bring random people through the house that they are living in and invade their privacy?", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-11-23_04:14:25", "killed": false, "user_key": "webtasarimi", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 week 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}, "7814555": {"up_voted": false, "ip": "", "has_replies": false, "message": "Why is something not being done for the people to keep their homes like reduce the interest rate or lower the monthly payment until they can get back on their feet.  I think having that option will help lessen all the foreclosures.  Many are saying due to losing jobs, medical and such their banks, or lending institutions will not help if there is not enough equity in the home or purchase with no documentation.  These individuals should be given an opportunity to keep the home even if it means setting a time limit.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-04_01:07:16", "killed": false, "user_key": "6752d1ef7e551406fc6dd1ff02eecf78", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "8 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "7806749": {"up_voted": false, "ip": "", "has_replies": false, "message": "I am an REO listing agent and I do BPOs as well.  I can tell you in our market most of the appraisals being done are coming in below my BPO values.  I have been questioned time and time again on my BPO values because an appraisal is lower.  When given the comps used by the appraiser I find they are not comparing like properties (off water properties to waterfront properties etc...).  So to say that BPOs are driving the prices down and to say BPOs are not as accurate as an appraisal because agents are not experienced and because agents are paid 50.00 is just not true.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-03_17:38:11", "killed": false, "user_key": "4efb602a027cfb181426121292b57d10", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "8 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "7784990": {"up_voted": false, "ip": "", "has_replies": false, "message": "As a REO listing agent in Palm Springs, California I have seen property values decrease a lot. Salton City - 80% Desert Hot Springs - 60% Coachella and Indio - 50%. There's lot's of great buy out there. A good website for REO properties in the Palm Springs area is <a href=\"http://www.DesertAreaREO.com\" rel=\"nofollow\">www.DesertAreaREO.com</a> I also disagree that BPO should not be use, I understand the argument that there's a conflict of interest but it hard to be dishonest in reporting property values to a bank thru BPO evaluation because you have to provide 3 recent sold and 3 active homes for sale within a 1 mile radius with similar characteristics to the subject property. The Bank and/or asset management company than review this report against other BPO reports before agreeing to a listing price. So I think the process in fair. I also have Fannie Mae properties for sale and I have seen a recent increase in my inventory which is good. We need to get these properties off the bank\u2019s book so we can reach a bottom to the housing market.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-03_06:06:02", "killed": false, "user_key": "ecec551f7c349ddbd7d45fc8d3258779", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "8 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "7773275": {"up_voted": false, "ip": "", "has_replies": true, "message": "I think that is a good idea.  I had an reo property where the tenants wanted to stay in the units, but the lender wanted it vacant.  I do property management and would not mind managing some of those properties in San Diego, California<br><br>Thanks,<br>Patricia McFadden, Broker<br>Patricia McFadden Properties", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-03_02:14:20", "killed": false, "user_key": "6dc03c83d2e13d2438c2f5ca02fd5c68", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "8 months ago", "approved": true, "num_replies": 2, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "7791783": {"up_voted": false, "ip": "", "has_replies": false, "message": "Sounds like a good idea.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-03_12:14:49", "killed": false, "user_key": "retirementcommunities", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "8 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "7783471": {"up_voted": false, "ip": "", "has_replies": false, "message": "I think all this program sounds good, and will help a lot of people and relief in some way the banks to reduced looses.<br><br>by the way about the BPO'S they do the job as far as they can, making a good comparison and evaluation of the Property and giving the bank their opinion about how and how much to sell the property.<br>The problem is when they only received between $40 to $50 dollars not enought to go and visit all the comps, and verified the conditions to compare with the subject, BUT  LISTING AGENTS do not help in this cases to BPO'S agents with the lack of description and Pictures of the property. Most of them use the remarks/property description, to let other agents how to present offer but nothing about the property like conditions, repairs and others details that will help BPO agents to compare all the the comps against the subject, make repairs and adjustments.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-03_03:56:11", "killed": false, "user_key": "9e5738cb4279134a4224c2be9cb82146", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "8 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "7899443": {"up_voted": false, "ip": "", "has_replies": false, "message": "Why the hell was there a moratorium in the first place? I am a renter who could have done the same thing as these dopes and overpaid for a home. But I didn't. If I don't pay my rent for a month, I am out of the home. I too have a family and I rent a home - so I don't understand all the fuss about these dopey greedy heads who swallowed too much. I still see some of them buy stuff for their family which I would be hesitant to buy despite a higher salary. Perhaps they are still milking the home ATMs while forgoing mortgage payments. It's absolutely atrocious that many are milking the system further by staying rent free for months. What the heck is wrong with the moral compass of this nation? I oppose all bailouts including bank and homeowner.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-06_09:30:54", "killed": false, "user_key": "fe6d102ee7dadbbd1b3224f41ae3f783", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "7 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "7799732": {"up_voted": false, "ip": "", "has_replies": false, "message": "There were record numbers of foreclosures in January and February, over 200,000 each month what do you think the next four months are going to look like with all the Freddie and fanny houses being added?", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-03_13:22:08", "killed": false, "user_key": "4c4a9fae5ea68fd0fe825ebf1459d702", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "8 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "8074679": {"up_voted": false, "ip": "", "has_replies": false, "message": "\":Real estate agents have done an outstanding agents for decades interpreting the market data and helping sellers move their homes in the open market. To suggest only appraisers can do this is outrageous. Appraised value is different from market value. Sometimes there is nobody willing to pay \"appraised value\" as evidenced by an gov land auction here in the Las Vegas area last year. Who was wrong here? The appraiser or the market?\" <br><br>You are wrong to compare market reactions to appraised value in a certain time period of decline. Appraisers work from historical data. If you had to find value where none existed would you? BPO's are flawed as AVM's in that data can be manipulated. Why can't you poeple understand that it isn't the borrower or the appraiser that's wrong, it's the banks lackey, the underwriter that OK'd the loans at the banks behest. To track blame look for a money trail, bonuses for bad behavior? They knew they were doing wrong.", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2009-04-11_02:51:12", "killed": false, "user_key": "6a0c5d9412d8f4faeea941b1075dcc5a", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "7 months ago", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 7967724, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "13447480": {"up_voted": false, "ip": "", "has_replies": false, "message": "As an REO agent in Bakersfield California and doing BPO's each week I can say that most local agents in my shoes are not low balling home values to move them or lower value for personal gain. We are governed by a code of ethic that would not allow us to distort value. I see problems when I see an out of town company being used for BPO's and as listing agents by an asset management company or banks as a medium to move their REO's. How can someone sitting in San Diego California in possible give an honest Broker Price Opinion to an asset in Bakersfield California having never set foot here? My operating range for BPOs is a radius of 65 miles. Part of the reason we are where we are was extorted values by out of town appraisers in the past 7 years. Banks make loans on an opinion of value not BPO values. Let\u2019s keep the valuation process at home and we may see a better BPO product", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-28_10:56:45", "killed": false, "user_key": "ronsullivan", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "4 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "7791164": {"up_voted": false, "ip": "", "has_replies": false, "message": "As an REO listing agent, I have to comment that in my market, asset companies are holding home values. The days of investors low balling the price of REO assets are gone. My asset managers are listening to the fair market value of my BPO reports and sell accordingly. <br>I'm not so sure renting to owners in defalut is the answer? I believe this approach will backfire for the lenders & professionals in the industry.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-03_11:52:31", "killed": false, "user_key": "34097919eb139b0aec718df4f507bbf8", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "8 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "20762819": {"up_voted": false, "ip": "", "has_replies": false, "message": "I don't understand. It seems in tis mess we are in that everyone wants to help out the home owner. What about the renters. We have no help and no one offering any. Why is there not a bail out or a program to help the renters stay in their homes?", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-10-21_23:34:35", "killed": false, "user_key": "markmincey", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 month ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "7833287": {"up_voted": false, "ip": "", "has_replies": false, "message": "Everyone thinks that they have an answer.  But when you get right down to it it is all about making a buck.. REO agent or just a BPO wanna be REO agent you are all just trying to stay alive right now.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-04_17:39:09", "killed": false, "user_key": "45577c02e2b06637da754bd7cef7bc80", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "8 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "8584393": {"up_voted": false, "ip": "", "has_replies": false, "message": "It's pretty insulting for your article to make the statement that most Realtors who do BPO's are \"agents with minimal training.\"  Quit the opposite is true.  What bias is clouding your journalist objectivity?", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-22_16:42:19", "killed": false, "user_key": "0cfe159142c221f08f9cc13216387ffb", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "7 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "7929420": {"up_voted": false, "ip": "", "has_replies": false, "message": "This is the only natioin that rewards fallure with more bailouts and moratoriums. Why do the responsible people continue to pay for the greed and stupidity of others. I rent because I cannot afford a home and now my taxes are going to those who were greedy.... I have learned my lesson. I will become a failure so the goverment can take care of me too!", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-07_00:04:11", "killed": false, "user_key": "0dc90d065b0468b4e6ca7375a44860e9", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "7 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "7881550": {"up_voted": false, "ip": "", "has_replies": false, "message": "Donna, have you been living behind a rock?", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-05_10:48:21", "killed": false, "user_key": "028c9d9ba56fccc275882da33f58ee52", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "7 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "7943120": {"up_voted": false, "ip": "", "has_replies": false, "message": "I think it's interesting to finally see the Rent to Own concept brought into discussion as a means that can help the housing problem.  For those who don't know, it is a way for a seller to fill or avoid a vacancy with possible future sale and a buyer to lease with an option to buy in the future.  In times like these there are many \"would be\" buyers who are having a hard time obtaining financing due to a variety of reasons that may include issues they have had to work through due to the falling economy and/ or increased tightening in the credit markets.  By Renting to Own they can enjoy the property, earn a rent credit towards purchase each month and take advantage of those credits by purchasing once everything is in line.  Years back I founded a website called <a href=\"http://www.Rent2ownMarket.com\" rel=\"nofollow\">www.Rent2ownMarket.com</a> where we run a special Rent to Own Program that sellers can place their properties into and buyers can secure the properties.  We then remain as a participant in the transaction and maintain it well.  This offers both buyers and sellers a place to go to achieve their goals and a well administered program to comfortably participate in.  We also have a Seller Financing Program that does even more amazing things such as create immediate ownership, tax advantages for the buyer and gives the seller more peace of mind in knowing the Buyer will close!  These concepts and our programs have actually helped many sellers avoid foreclosure and at the same time have rewarded buyers with wonderful ownership opportunities that may not otherwise be afforded to them.  I believe any property seller including banks that have had to take on properties would do fine to adopt similar strategies or even better, enroll in our programs so it can be done for them.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-07_13:56:39", "killed": false, "user_key": "c400c64d6697ac19f453b067b1ef08de", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "7 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "16408660": {"up_voted": false, "ip": "", "has_replies": false, "message": "Here's a Northern CA situation:  What about people like myself. Hardworking, never late once, usually paid EARLY in fact.  The CA governor, in his great wisdom, took my income down nearly 15% (I am in civil service in Northern CA, providing staff support services for a chemistry group in environmental laboratory accreditation) - within 6 months I could not pay my credit balances, so tried minimum payments but soon learned the banks are cruel and lowered my lines but upped my percentages!   Soon I could not afford my HOA payments, and the rest, as they say, is now history.  I sit in my new tiny apt, pretty much shell shocked and afraid to spend one penny.  In my case, home ownership afforded me such great pride and contentment that I was taking care of my rapidly approaching retirement future. To my dismay, I found it it probably better now for me, as I approach sixty, to adopt the attitude of - rent and don't think about tomorrow anymore, complain about every little detail on the rental to get money off. Get what you can get. Get all you can in repairs no matter how. Get all you can and then move on. To me, this is childish and wrong but it seems to be all I can afford now with my newly demolished credit score - down 200 points.  My lovely upgrades (all paid for and done with licensed workers) sit unnoticed as the huge glut of similar condos sit unsold - Meanwhile buyers \"cherry pick\" the upgraded units and then \"low ball offer\" the hapless (I can relate) sellers. I tried to list my place but five agents looked at it and said \"It would sell for so little now that it's not worth the time we would take to list and show it\".  What great service there! It makes me just sick. I feel like it is wrong to just walk away but I definitely will very soon.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-09-11_03:03:17", "killed": false, "user_key": "6b39a40633c363f42d32689d41209cc5", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "2 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "8051929": {"up_voted": false, "ip": "", "has_replies": true, "message": "Congratulations to the industry as a whole are in order as the Fannie Mae and Freddie Mac foreclosure moratoriums ended on March 31st 2009. Unblocking the flow of troubled assets to the marketplace was a very necessary step to preventing potential catastrophic meltdown of the REO industry as a whole. <br><br>Imagine a scenario where the moratorium had lasted another 6 months. REO servicers, outsourcers, property preservation companies, agents and others would have been forced to layoff even more staff in the months preceding the deluge of properties coming to market. Just as the need for qualified companies and individuals reached its peak (as hundreds of thousands of REO's get dumped on the market) there would be a shortage of each. Further, values would plummet as inventories skyrocketed and banks became forced to further discount already devalued assets.<br><br>I believe we can assume that further extension of the moratorium could (and probably would) have resulted in far greater decline in the National real estate market. This would have had farther reaching negative impacts than we can imagine.<br><br>Bravo to Fannie and Freddie for taking the lead in dealing with these issues. Hard decisions were made, and we will all benefit from them in ways we may never know.<br><br>The next step in slowing the real estate decline will not be limited to continuing to rent to foreclosed tenants. Short sales will become the standard for loss-mitigation, as lenders and servicers begin to realize how ineffective loan modifications really are. We have seen a tremendous increase in short sales at <a href=\"http://www.TheShortSaleCompany.com\" rel=\"nofollow\">www.TheShortSaleCompany.com</a>, and are ramping up for even greater increases in volume  in the coming months. <br><br>Agents in particular would be wise to spend more time effort and energy learning about short sales and how they can enhance their business models. Servicers and lenders would be foolish not to place greater emphasis on short sales as the preferred method of liquidating troubled assets. <br><br>We are currently working with several major lenders and servicers to promote and close pre-approved short sales. In other words servicers will partner with agents, homeowners and loss mitigation companies like ours in an effort to liquidate troubled assets before and instead of taking them through foreclosure. With pre-approved pricing, buyers agents will feel more inclined to show and sell short sales (avoiding the extremely long process of obtaining short sale approval as traditionally experienced). Another benefit of pre-approved short sales is the protection of real estate agent commissions ( a sore subject for many agents who currently participate in short sale transactions). <br><br>The resulting savings to the lender is beneficial to all involved, and even saves the homeowner from having a foreclosure on their record. This in turn will allow more displaced homeowners to re-enter the marketplace sooner as potential buyers, further alleviating the real estate crises. <br><br>Michael J. Hellickson<br>Hellickson Real Estate Team<br>Washington State's Number One Agent<br>President/CEO  - The Short Sale Company<br>206-300-6453<br><a href=\"http://Hellickson.com\" rel=\"nofollow\">Hellickson.com</a> / <a href=\"http://www.TheShortSaleCompany.com\" rel=\"nofollow\">www.TheShortSaleCompany.com</a>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-10_08:32:19", "killed": false, "user_key": "ae0e37f9339725d91d94a416b4474f85", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "7 months ago", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "8333530": {"up_voted": false, "ip": "", "has_replies": false, "message": "haha...save the real estate market jobs...haha...what a joke.  a major part of the problem is the mass movement to become loan officers, agents, etc...this became a group of money hungry, greedy, uneducated who should still be cutting hair, selling yellow page ads or serving burgers", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2009-04-18_13:49:31", "killed": false, "user_key": "8c05104960913d463e2624cae6fe985a", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "7 months ago", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 8051929, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "7833051": {"up_voted": false, "ip": "", "has_replies": false, "message": "I am a real estate agent in Montana where we don't see the issues with these homes as in many states.  However, I have to disagree with the statement that agents completing BPO's have a conflict of interest.  As a Real Estate agent working for a homeowner seller or a REO company we are supposed to be representing the best possible options for our sellers, we don't deliberately \"bring a value in low\" to make a fire sale.  The REO companies ask us for a 60-90 day value and a 30 day value, as professionals we are giving these values to our sellers, it is their decision what price to list the property at, most of the time they chose to go higher than our suggestion, because of what they are owed, then if things don't move quickly they start reducing their listed price, some banks are more aggressive than others, yes there are times we wonder why they set the listing price where they do.  <br><br>Having homeowners/renters stay in their home after a foreclosure to rent the property is an issue; most (90% of the occupants) knew this process was coming), and while they are waiting for the bank to take the house bank, they don't pay their utilities, they don't maintain their property, the utility bills stack up and liens for weed removal etc are piling up.  In theory it would great to keep tenants in foreclosure properties however, who is collecting rents, preparing evictions, screaning tenants, placing tenants, showing the property and insuring the properties are maintained, utilities paid etc., the Realtor's commissions are already cut because of referral fees to these companies, I highly doubt  you will find a Realtor that will take on this task on top of maintaining the property for listing at a reduced commission.  I do realize there needs to be some kind of common ground in this matter, as Realtors our best interest is our client and in these cases it is the Seller REO/REPO company.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-04_17:22:59", "killed": false, "user_key": "c09feaf6a4c774cbca6d4705e336f4b5", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "8 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "8337892": {"up_voted": false, "ip": "", "has_replies": false, "message": "I am a real estate broker that cannot find homes for his prospective and qualified buyers. Currently multi offers and overbidding is the norm in my makret. I wellcome fresh inventory, this is what is needed to heal the industry. We have helped the ones that have done it wrong long enough, and at the end of the day we are truly helping the investors and lending industry by pretending we are helping the home ownders. What did home owners do before they owned a home? They can go back to renting and a normal productive life free of the stress associated with homeownership. Let the new buyers, that have kept their powder dry  and have been waiting for this day to come , have their day in the market place.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-18_18:22:42", "killed": false, "user_key": "6d6703395c78b03e5580e5c767df237f", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "7 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "7912165": {"up_voted": false, "ip": "", "has_replies": false, "message": "Is the new Home Affordable Modification Program just a lot of smoke and mirrors?  Country Wide and Citi Mortgage keep saying that this program doesn't exist.  What lenders/servicers are working with homeowners on this new modification plan.  The guidelines were posted 3/4/09.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-06_15:08:41", "killed": false, "user_key": "69128f2bb48cc4afcb74c1ab1bc28505", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "7 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "7905894": {"up_voted": false, "ip": "", "has_replies": true, "message": "The moratorium is actually damaging the recovery in Northern Caliifornia.  We have multiple offers being submitted from buyers who actually qualify for homes and the lack of inventory is creating a false Sellers Market.  All of the local data is skewed because the 1st quarter saw a great deal of aged inventory being sold therefore not reflecting the actual sales for 1st quarter, of course they went down.  They also hurt the local governments and HOAs as utilities continued to not be paid on these homes in foreclosure, HOA fees continue to not be paid.  The reflection that over 50% of these loan modifications are not successful after 8 months is not a surprise, the government needs to now take a different approach.  Provide credit counseling to homeowners in distress preparing them to re enter the rental market and make a plan to recover from some of their own mistakes.<br>As a local REALTOR, I took one street out of our area and compared the reasons why they may have foreclosed.  I found repeated refinances where millions of dollars was taken out of these homes in the forms of refinances and yet we are sitting here trying to feel sorry for the poor homeowner.  Focus on the homeowner who was responsible and may have refinanced to reduce their rate but didnt take money out of the home.  THEN ask ourselves, if someone takes 400K out of thier home equity and then wants to have their principal reduced, shouldnt they have to pay back the 400K or be taxed on it?  Who wouldnt have liked to have a free 200K paycheck and even not be taxed on it.<br>Its time the attitudes start making common sense, if the homeowner in foreclosure cannot afford the house after a reduction of interest rate, maybe they cannot afford the home.  Its time to put a brake on this \"gimme today what I might be able to afford until tommorrow\" attitude and force people back into responsible management of thier finances so they can do less damage to their neighors.<br><br>Have an incredible day!", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-06_11:37:15", "killed": false, "user_key": "b6b56f39622f857983df500dc0f7941f", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "7 months ago", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "7967724": {"up_voted": false, "ip": "", "has_replies": true, "message": "\"Problems with bank-owned foreclosed properties that sell for way below market value, for example, could be addressed by keeping renters in the houses\"  <br><br>The above could not be farther from from truth.  In a declining market, the longer it takes to sell a property, the lower return/higher loss to the investors.  No occupant wants to move from a decent home.  Those same people (renters) often submarine the showing  / condition / access of homes on the market often lengthening the market time of a property.  Longer on the market, lower the final realized sales price.  These people will have to move at some point, there are other owners on the brink of forelcosure trying to find a tenant to help cover their house payment - move them now.<br><br>Regarding BPOs, real estate agents have been doing the same type of analysis for decades when helping a owner/seller establish an offering price for their home.  A BPO is essentially a single page form formalizing the data.  Real estate agents have done an outstanding agents for decades interpreting the market data and helping sellers move their homes in the open market.  To suggest only appraisers can do this is outrageous.  Appraised value is different from market value. Sometimes there is nobody willing to pay \"appraised value\" as evidenced by an gov land auction here in the Las Vegas area last year.  Who was wrong here?  The appraiser or the market?  Real estate is only worth what someone is willing to pay.<br><br>Funny though when a property is offered above market, there are no showings, no offers, no chance in heck to sell.  But when a property is offered below market, them market knows it is a deal and through multiple offers it will sell above asking price and close to the actual market value.  The market is the market and bigger, more powerful than any appraiser or any real estate agent's opinion.  Appraised value is what the last person was willing to pay for a property.  There are very few markets where values are not in decline.  Supply, demand, absorption, (view Las Vegas stats <a href=\"http://www.lasvegasrealestatewire.com\" rel=\"nofollow\">http://www.lasvegasrealestatewire.com</a>) the latest \"knee jerk\" lending rule change, unemployment, consumer confidence, and more play a role in what the next property sales price - things not always considered in appraisal.  <br><br>The market drove the prices up.  The market is driving the prices down.  Get out its way.  Long live the market.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-08_00:36:39", "killed": false, "user_key": "669722926f403f9ca8c7a361112a195c", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "7 months ago", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "7826797": {"up_voted": false, "ip": "", "has_replies": false, "message": "I am an REO and BPO Broker in California. I know of several people who have made a livivg from just completing BPO's. Some  are good, hardworking, agents and some are BPO mills using unlicensed, untrained people. Weed out the good from the bad and move on. I would trust a good BPO just as much as an appraisal. <br>On another subject, why are we trying to so concerned about finding housing for the people being foreclosed or evicted? Have them show cancelled checks that they have been paying their rent or some part of their mortgage. These people have been living in the property without paying anything for quite some time and should already have plenty saved to pay for the moving cost. The moratorium has given them ample time to make moving arrangements.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-04_10:52:20", "killed": false, "user_key": "2d69a10431422285b306496c6149e285", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "8 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "7910770": {"up_voted": false, "ip": "", "has_replies": false, "message": "Are you really complaining that the victims of rent skimming landlords need to have 24 hr notice before you bring random people through the house that they are living in and invade their privacy?  You are exactly the sort of person who would be in real estate for 35 years.  I cannot begin to express my contempt for you and your worthless Realtwhore ilk.", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2009-04-06_14:54:00", "killed": false, "user_key": "1c0ccb80f18de6871d3fd37b97cd3594", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "7 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": 7833225, "depth": 2, "points": 0, "author_is_creator": false, "is_realtime": false}, "8154355": {"up_voted": false, "ip": "", "has_replies": false, "message": "Thanks for such a detailed article and call-out of the lifting of the moratorium.  I personally feel this is good timing.  In our real estate market in Phoenix, we are now seeing record buyer demand in terms of the number of homes under contract, with inventory dropping.  However, I had growing concerns that the moratorium combined with aggressive pricing strategies is creating an artificial high.  With the lifting of the moratorium, more 'natural' inventory can come back on the market rather than have this potentially pent up until later.  <br><br>David Lorti", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-14_00:16:10", "killed": false, "user_key": "3fa2829e87a5e3d2e5dac028b51a4acf", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "7 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "8563828": {"up_voted": false, "ip": "", "has_replies": false, "message": "It is estimated that Obama's plan could benefit 8 to 9 million homeowners from the new modification procedures. So how do you know you qualify for the Mortgage Modification? Check the website <a href=\"http://obamamortgage2009.blogspot.com/\" rel=\"nofollow\">http://obamamortgage2009.blogspot.com/</a><br>to see if you qualify. I was also in trouble and I am glad I did check it before I talk to my mortgage company and it helped - John Mayer, California", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-04-22_02:56:06", "killed": false, "user_key": "johnmayer76", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "7 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}}, "integration": {"receiver_url": "", "theme": 1, "reply_position": false, "disqus_logo": false}, "timer": {"timer_url": "http://localhost:8005", "thread_id": "14949653", "user_id": "anonymous", "forum_id": "34441", "hash": 2211532232411692737}, "thread": {"days_alive": 0, "slug": "fannie_freddie_quietly_lift_moratorium_on_foreclosures", "paginate": true, "num_pages": 1, "num_posts": 35, "per_page": 50, "total_posts": 35, "realtime_paused": true, "id": 14949653, "queued": false}, "reactions_limit": 10, "context": {"show_reply": true, "use_fb_connect": false, "forum_facebook_key": "", "use_yahoo": false, "subscribed": false, "use_twitter_signin": false, "use_openid": false, "realtime_speed": 5000}, "reactions_start": 0, "settings": {"debug": false, "disqus_url": "http://disqus.com", "media_url": "http://media.disqus.com"}, "media_url": "http://media.disqus.com"};
	/* */ this.jsonData.cookie_messages = {"user_created": null, "post_has_profile": null, "post_twitter": null, "post_not_approved": null}; this.jsonData.session = {"url": null, "name": null, "email": null}; /* */

	
	this.curPageId = 'dsq-comments';

	this.frames = {};
};

var disqus_popup_reference = null;

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



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

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

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

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

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

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

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

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





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



// 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://disqus.com/forums/washingtonindependent/fannie_freddie_quietly_lift_moratorium_on_foreclosures/reply.html';
	this.REQUEST_USER_PROFILE = '/AnonymousUser/';
	this.REQUEST_USER_AVATAR = 'http://media.disqus.com/images/noavatar92.png';
};
// Dsq.Urls

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

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

		return [windowWidth, windowHeight];
	}

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

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

		return [scrollWidth, scrollTop];
	}

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

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

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

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

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

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

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

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

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

				form.appendChild(input);
			}
		}

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

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

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

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

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

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

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

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

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

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

		return params;
	};

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

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

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

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

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

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

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

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

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

	};

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

};
// Dsq.Utils

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

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

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

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

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

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

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

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

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

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

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

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

	};

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

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

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

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

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

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

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

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

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

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

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

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

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

	this.remoteAccountSettings = function() {
		var body = '';
		// Set up IFrame.
		var params = {};
		var base_url = 'http://disqus.com/forums/washingtonindependent/_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 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">\
	 Showing <span id="dsq-num-posts">35</span> of <span id="dsq-total-posts">35</span> Comments\
	 &nbsp;\
	 <span class="dsq-item-feed">\
	 <a href="http://disqus.com/forums/washingtonindependent/fannie_freddie_quietly_lift_moratorium_on_foreclosures/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://disqus.com/forums/washingtonindependent/fannie_freddie_quietly_lift_moratorium_on_foreclosures/">Community Page</a>&nbsp;&nbsp;&nbsp;</span>\
	 <span class="dsq-item-subscribe">\
	 <img src="http://media.disqus.com/images/embed/email.png" style="width:12px;height:12px;vertical-align:middle">\
	 <span id="dsq-subscribe">\
	 <a href="#" onclick="Dsq.Thread.subscribe(1); return false">Subscribe by email</a>\
	 </span>\
	 </span>\
	 </div>\
	 <div id="dsq-alerts">\
	 </div>\
		';

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

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

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

		

		html += Dsq.Templates.reactions();

		

		return html;
	};

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

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

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

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

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

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

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

		return html;
	}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

	//
	// Post
	//

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

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

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

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

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

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

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

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

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

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

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

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

		return ' \
			<div class="dsq-comment-footer" id="dsq-comment-footer-' + post_id + '"> \
				<div id="dsq-points-' + post_id + '" class="dsq-likedtxt">'
				+ (_meta.points
					? _meta.points + Dsq.Utils.pluralize(_meta.points, ' person', ' people') + ' liked this comment.'
					: '')
				+ '</div>'
				+ '<ul class="dsq-comment-options dsq-list-style">'
				+ (_meta.votable
					? '<li class="dsq-list-first dsq-rate" id="dsq-rate-cont-' + post_id + '">'
					+ (!_meta.up_voted
						? '<a href="#" onclick="Dsq.Post.rate(this, ' + post_id + ', 1); return false;">Like</a>'
						: 'You liked this.') + '</li>'
					: '')
				+ '<li class="dsq-report' + (!_meta.votable ? ' dsq-list-first' : '') + '" id="dsq-post-report-' + post_id + '"><a href="#" class="dsq-post-report" onclick="Dsq.Post.report(' + post_id + ', false); return false;">Report</a></li> \
				</ul> \
				<ul class="dsq-list-style">'
				+ (_meta.can_reply
					? '<li class="dsq-list-first"><a href="#" id="dsq-reply-link-' + post_id +'" onclick="Dsq.Post.toggleReply(this, ' + post_id +'); return false;">Reply</a></li>'
					: '')
				+ (_meta.can_reply && !_meta.has_replies && _meta.from_request_user
					? '<li id="dsq-edit-el-' + post_id + '"><a id="dsq-edit-link-' + post_id + '" href="#" onclick="Dsq.Post.edit(this, ' + post_id + '); return false;">Edit</a></li>'
					: '')
				+ '<li class="' + (!_meta.can_reply ? 'dsq-list-first' : '') + '" id="dsq-more-el-' + post_id + '"><a id="dsq-more-link-' + post_id + '" href="#" onclick="Dsq.Post.showMenu(this, ' + post_id + ', \'more\'); return false">More <small>&#9660;</small></a></li>'
				+ (Dsq.jsonData.forum.use_media
					? '<li id="dsq-media-el-' + post_id +'" style="display:none"><a id="dsq-media-link-' + post_id + '" href="#" onclick="Dsq.Post.showMenu(this, ' + post_id + ', \'media\'); return false">Use Media <small>&#9660;</small></a></li>'
					: '')
				+ '</ul>'
				+ '<div id="dsq-reply-bar-' + post_id + '" class="dsq-reply-bar" style="display:none"> \
						<div id="dsq-reply-bar-items-' + post_id + '" class="dsq-reply-bar-items"> \
						</div> \
						<div id="dsq-reply-bar-auth-' + post_id + '" class="dsq-reply-bar-auth"> \
							 \
								 \
								 	<a href="#" class="dsq-help dsq-reply-req-opt" title="You are commenting as a Guest. You may choose to log into an existing DISQUS Profile, your Facebook, Twitter or OpenID account to comment on The Washington Independent" 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:14949653" onclick="Dsq.Popup.login(); return false">Login</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'				: 'washingtonindependent',
			't'				: 'fannie_freddie_quietly_lift_moratorium_on_foreclosures',
			// 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/washingtonindependent/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/washingtonindependent/fannie_freddie_quietly_lift_moratorium_on_foreclosures/post_report/', {'post_id': id});
			Dsq.Popup.popModal('Thank you. This comment has been flagged for moderator attention.', 'Successfully flagged');
			Dsq.Utils.deleteNode(Dsq.$('dsq-post-report-' + id));
		} else {
			var title = Dsq.Strings.FLAG_INAPPROPRIATE_COMMENT;
			var message = Dsq.Strings.ARE_YOU_SURE_YOU_WOULD_LIKE_TO_REPORT_THIS_COMMENT_TO_A_MODERATOR + '? \
			<br /><br /> \
			<button onclick="Dsq.Popup._closePopup(null, true)"><strong>' + Dsq.Strings.NO + '</strong>, ' + Dsq.Strings.NEVER_MIND + '</button>&nbsp;&nbsp;&nbsp;<button onclick="Dsq.Post.report(' + id + ', true);"><strong>' + Dsq.Strings.YES + '</strong>, ' + Dsq.Strings.FLAG_INAPPROPRIATE_COMMENT + '</button><br /><br />'
			+ Dsq.Strings.THIS_WILL_FLAG_COMMENTS_FOR_MODERATORS_TO_TAKE_ACTION + '. \
			';

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



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

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

};
// Dsq.Post


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

	
	this.adminIsOn = false;

	
	
	

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

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

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

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

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

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

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

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

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

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

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


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

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

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

		Dsq.$('dsq-pagination').innerHTML += '<img src="http://media.disqus.com/images/loading-small.gif">';
		
		if(el_clicked) {
			el_clicked.style.display = 'none';
		}
		
		Dsq.Utils.execScript('http://disqus.com/forums/washingtonindependent/thread.js'
			+ '?slug='	+ 'fannie_freddie_quietly_lift_moratorium_on_foreclosures'
			+ '&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/washingtonindependent/thread.js'
			+ '?slug='	+ 'fannie_freddie_quietly_lift_moratorium_on_foreclosures'
			+ '&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/washingtonindependent/subscribe.js'
				+'?status=' 	+ status
				+ '&slug='		+ 'fannie_freddie_quietly_lift_moratorium_on_foreclosures'
				+ '&email=' 	+ encodeURIComponent(email));

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

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

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

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

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

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

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

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

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

	return obj;
}();

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

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

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

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

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

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

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

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

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

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

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

	this.check = function() {
		if (!ongoing_request && Dsq.jsonData.realtime_enabled) {
			if (prev_script) {
				prev_script.parentNode.removeChild(prev_script);
			}
			ongoing_request = true;
			prev_script = Dsq.Utils.execScript('http://disqus.com/forums/14949653/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/washingtonindependent/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/washingtonindependent/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;
		});
	})();
}









(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-7773275">\
	 <div id="dsq-comment-header-7773275" class="dsq-comment-header">\
	 <cite id="dsq-cite-7773275" class="dsq-comment-cite">\
	 <a id="dsq-author-user-7773275" href="http://www.patriciamcfadden.com" target="_blank" rel="nofollow">Patricia McFadden</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7773275" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7773275" class="dsq-comment-message">I think that is a good idea.  I had an reo property where the tenants wanted to stay in the units, but the lender wanted it vacant.  I do property management and would not mind managing some of those properties in San Diego, California<br><br>Thanks,<br>Patricia McFadden, Broker<br>Patricia McFadden Properties</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-7833225">\
	 <div id="dsq-comment-header-7833225" class="dsq-comment-header">\
	 <cite id="dsq-cite-7833225" class="dsq-comment-cite">\
	 <a id="dsq-author-user-7833225" href="http://www.nwwaterfrontrealestate.com" target="_blank" rel="nofollow">Gary Brothers</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7833225" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7833225" class="dsq-comment-message">I am in my 35th year. Been through a couple ups and downs! I understand banks being reluctant to rent the property.My experience with tenants is they do not want to move.They make it very difficult to show the property and bad mouth it if they can. The law often requires a 24hour notice.  Often the  tenants are sick or the dog is waiting! There needs to be  an arrangement where the tenant land lord law no longer applies on  Foreclosed property. As  far as BPO,s.I received a request here in Montana that was 200 miles away! A different world in areas with few people! We can not find comps with the current requirements of a city .. The cost of gas in its self  makes no sense to do BPO\'s for  $50.00. You get what you pay for in this situation. My problem with  any effort to establsh value is it supposed to be an "arms length agreement"between a buyer and seller! A foreclosure  should not be a comp.! Try to find a sale that meets the rules is impossible in this market.So what do we do? For starters  we need to receive pay for  BPO,s  comparable to an appraisal. The  work needs to be  completed by a broker with experience that know the marketandis willingtodothe research toarrive atafair market value</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-7910770">\
	 <div id="dsq-comment-header-7910770" class="dsq-comment-header">\
	 <cite id="dsq-cite-7910770" class="dsq-comment-cite">\
	 <span id="dsq-author-user-7910770">name</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7910770" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7910770" class="dsq-comment-message">Are you really complaining that the victims of rent skimming landlords need to have 24 hr notice before you bring random people through the house that they are living in and invade their privacy?  You are exactly the sort of person who would be in real estate for 35 years.  I cannot begin to express my contempt for you and your worthless Realtwhore ilk.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-7783471">\
	 <div id="dsq-comment-header-7783471" class="dsq-comment-header">\
	 <cite id="dsq-cite-7783471" class="dsq-comment-cite">\
	 <span id="dsq-author-user-7783471">Carlos</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7783471" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7783471" class="dsq-comment-message">I think all this program sounds good, and will help a lot of people and relief in some way the banks to reduced looses.<br><br>by the way about the BPO\'S they do the job as far as they can, making a good comparison and evaluation of the Property and giving the bank their opinion about how and how much to sell the property.<br>The problem is when they only received between $40 to $50 dollars not enought to go and visit all the comps, and verified the conditions to compare with the subject, BUT  LISTING AGENTS do not help in this cases to BPO\'S agents with the lack of description and Pictures of the property. Most of them use the remarks/property description, to let other agents how to present offer but nothing about the property like conditions, repairs and others details that will help BPO agents to compare all the the comps against the subject, make repairs and adjustments.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-7784990">\
	 <div id="dsq-comment-header-7784990" class="dsq-comment-header">\
	 <cite id="dsq-cite-7784990" class="dsq-comment-cite">\
	 <a id="dsq-author-user-7784990" href="http://www.DesertAreaREO.com" target="_blank" rel="nofollow">JOE MELARA</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7784990" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7784990" class="dsq-comment-message">As a REO listing agent in Palm Springs, California I have seen property values decrease a lot. Salton City - 80% Desert Hot Springs - 60% Coachella and Indio - 50%. There\'s lot\'s of great buy out there. A good website for REO properties in the Palm Springs area is <a href="http://www.DesertAreaREO.com" rel="nofollow">www.DesertAreaREO.com</a> I also disagree that BPO should not be use, I understand the argument that there\'s a conflict of interest but it hard to be dishonest in reporting property values to a bank thru BPO evaluation because you have to provide 3 recent sold and 3 active homes for sale within a 1 mile radius with similar characteristics to the subject property. The Bank and/or asset management company than review this report against other BPO reports before agreeing to a listing price. So I think the process in fair. I also have Fannie Mae properties for sale and I have seen a recent increase in my inventory which is good. We need to get these properties off the bank’s book so we can reach a bottom to the housing market.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-7791164">\
	 <div id="dsq-comment-header-7791164" class="dsq-comment-header">\
	 <cite id="dsq-cite-7791164" class="dsq-comment-cite">\
	 <a id="dsq-author-user-7791164" href="http://www.amygluch.com" target="_blank" rel="nofollow"> Amy G</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7791164" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7791164" class="dsq-comment-message">As an REO listing agent, I have to comment that in my market, asset companies are holding home values. The days of investors low balling the price of REO assets are gone. My asset managers are listening to the fair market value of my BPO reports and sell accordingly. <br>I\'m not so sure renting to owners in defalut is the answer? I believe this approach will backfire for the lenders & professionals in the industry.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-7791783">\
	 <div id="dsq-comment-header-7791783" class="dsq-comment-header">\
	 <cite id="dsq-cite-7791783" class="dsq-comment-cite">\
	 <span id="dsq-author-user-7791783">retirementcommunities</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7791783" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7791783" class="dsq-comment-message">Sounds like a good idea.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-7799732">\
	 <div id="dsq-comment-header-7799732" class="dsq-comment-header">\
	 <cite id="dsq-cite-7799732" class="dsq-comment-cite">\
	 <span id="dsq-author-user-7799732">cv</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7799732" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7799732" class="dsq-comment-message">There were record numbers of foreclosures in January and February, over 200,000 each month what do you think the next four months are going to look like with all the Freddie and fanny houses being added?</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-7806749">\
	 <div id="dsq-comment-header-7806749" class="dsq-comment-header">\
	 <cite id="dsq-cite-7806749" class="dsq-comment-cite">\
	 <span id="dsq-author-user-7806749">Florida Agent</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7806749" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7806749" class="dsq-comment-message">I am an REO listing agent and I do BPOs as well.  I can tell you in our market most of the appraisals being done are coming in below my BPO values.  I have been questioned time and time again on my BPO values because an appraisal is lower.  When given the comps used by the appraiser I find they are not comparing like properties (off water properties to waterfront properties etc...).  So to say that BPOs are driving the prices down and to say BPOs are not as accurate as an appraisal because agents are not experienced and because agents are paid 50.00 is just not true.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-7814555">\
	 <div id="dsq-comment-header-7814555" class="dsq-comment-header">\
	 <cite id="dsq-cite-7814555" class="dsq-comment-cite">\
	 <span id="dsq-author-user-7814555">Donna L</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7814555" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7814555" class="dsq-comment-message">Why is something not being done for the people to keep their homes like reduce the interest rate or lower the monthly payment until they can get back on their feet.  I think having that option will help lessen all the foreclosures.  Many are saying due to losing jobs, medical and such their banks, or lending institutions will not help if there is not enough equity in the home or purchase with no documentation.  These individuals should be given an opportunity to keep the home even if it means setting a time limit.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-7826797">\
	 <div id="dsq-comment-header-7826797" class="dsq-comment-header">\
	 <cite id="dsq-cite-7826797" class="dsq-comment-cite">\
	 <a id="dsq-author-user-7826797" href="http://www.norcalrepos.com" target="_blank" rel="nofollow">Ron</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7826797" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7826797" class="dsq-comment-message">I am an REO and BPO Broker in California. I know of several people who have made a livivg from just completing BPO\'s. Some  are good, hardworking, agents and some are BPO mills using unlicensed, untrained people. Weed out the good from the bad and move on. I would trust a good BPO just as much as an appraisal. <br>On another subject, why are we trying to so concerned about finding housing for the people being foreclosed or evicted? Have them show cancelled checks that they have been paying their rent or some part of their mortgage. These people have been living in the property without paying anything for quite some time and should already have plenty saved to pay for the moving cost. The moratorium has given them ample time to make moving arrangements.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-7833051">\
	 <div id="dsq-comment-header-7833051" class="dsq-comment-header">\
	 <cite id="dsq-cite-7833051" class="dsq-comment-cite">\
	 <span id="dsq-author-user-7833051">Sharon Virgin</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7833051" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7833051" class="dsq-comment-message">I am a real estate agent in Montana where we don\'t see the issues with these homes as in many states.  However, I have to disagree with the statement that agents completing BPO\'s have a conflict of interest.  As a Real Estate agent working for a homeowner seller or a REO company we are supposed to be representing the best possible options for our sellers, we don\'t deliberately "bring a value in low" to make a fire sale.  The REO companies ask us for a 60-90 day value and a 30 day value, as professionals we are giving these values to our sellers, it is their decision what price to list the property at, most of the time they chose to go higher than our suggestion, because of what they are owed, then if things don\'t move quickly they start reducing their listed price, some banks are more aggressive than others, yes there are times we wonder why they set the listing price where they do.  <br><br>Having homeowners/renters stay in their home after a foreclosure to rent the property is an issue; most (90% of the occupants) knew this process was coming), and while they are waiting for the bank to take the house bank, they don\'t pay their utilities, they don\'t maintain their property, the utility bills stack up and liens for weed removal etc are piling up.  In theory it would great to keep tenants in foreclosure properties however, who is collecting rents, preparing evictions, screaning tenants, placing tenants, showing the property and insuring the properties are maintained, utilities paid etc., the Realtor\'s commissions are already cut because of referral fees to these companies, I highly doubt  you will find a Realtor that will take on this task on top of maintaining the property for listing at a reduced commission.  I do realize there needs to be some kind of common ground in this matter, as Realtors our best interest is our client and in these cases it is the Seller REO/REPO company.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-7833238">\
	 <div id="dsq-comment-header-7833238" class="dsq-comment-header">\
	 <cite id="dsq-cite-7833238" class="dsq-comment-cite">\
	 <span id="dsq-author-user-7833238">Tom</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7833238" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7833238" class="dsq-comment-message">blaa blaa blaa</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-7833287">\
	 <div id="dsq-comment-header-7833287" class="dsq-comment-header">\
	 <cite id="dsq-cite-7833287" class="dsq-comment-cite">\
	 <span id="dsq-author-user-7833287">Tom</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7833287" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7833287" class="dsq-comment-message">Everyone thinks that they have an answer.  But when you get right down to it it is all about making a buck.. REO agent or just a BPO wanna be REO agent you are all just trying to stay alive right now.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-7881550">\
	 <div id="dsq-comment-header-7881550" class="dsq-comment-header">\
	 <cite id="dsq-cite-7881550" class="dsq-comment-cite">\
	 <span id="dsq-author-user-7881550">Bass</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7881550" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7881550" class="dsq-comment-message">Donna, have you been living behind a rock?</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-7899443">\
	 <div id="dsq-comment-header-7899443" class="dsq-comment-header">\
	 <cite id="dsq-cite-7899443" class="dsq-comment-cite">\
	 <span id="dsq-author-user-7899443">AngryRenter</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7899443" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7899443" class="dsq-comment-message">Why the hell was there a moratorium in the first place? I am a renter who could have done the same thing as these dopes and overpaid for a home. But I didn\'t. If I don\'t pay my rent for a month, I am out of the home. I too have a family and I rent a home - so I don\'t understand all the fuss about these dopey greedy heads who swallowed too much. I still see some of them buy stuff for their family which I would be hesitant to buy despite a higher salary. Perhaps they are still milking the home ATMs while forgoing mortgage payments. It\'s absolutely atrocious that many are milking the system further by staying rent free for months. What the heck is wrong with the moral compass of this nation? I oppose all bailouts including bank and homeowner.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-7905894">\
	 <div id="dsq-comment-header-7905894" class="dsq-comment-header">\
	 <cite id="dsq-cite-7905894" class="dsq-comment-cite">\
	 <span id="dsq-author-user-7905894">Bruce Slaton</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7905894" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7905894" class="dsq-comment-message">The moratorium is actually damaging the recovery in Northern Caliifornia.  We have multiple offers being submitted from buyers who actually qualify for homes and the lack of inventory is creating a false Sellers Market.  All of the local data is skewed because the 1st quarter saw a great deal of aged inventory being sold therefore not reflecting the actual sales for 1st quarter, of course they went down.  They also hurt the local governments and HOAs as utilities continued to not be paid on these homes in foreclosure, HOA fees continue to not be paid.  The reflection that over 50% of these loan modifications are not successful after 8 months is not a surprise, the government needs to now take a different approach.  Provide credit counseling to homeowners in distress preparing them to re enter the rental market and make a plan to recover from some of their own mistakes.<br>As a local REALTOR, I took one street out of our area and compared the reasons why they may have foreclosed.  I found repeated refinances where millions of dollars was taken out of these homes in the forms of refinances and yet we are sitting here trying to feel sorry for the poor homeowner.  Focus on the homeowner who was responsible and may have refinanced to reduce their rate but didnt take money out of the home.  THEN ask ourselves, if someone takes 400K out of thier home equity and then wants to have their principal reduced, shouldnt they have to pay back the 400K or be taxed on it?  Who wouldnt have liked to have a free 200K paycheck and even not be taxed on it.<br>Its time the attitudes start making common sense, if the homeowner in foreclosure cannot afford the house after a reduction of interest rate, maybe they cannot afford the home.  Its time to put a brake on this "gimme today what I might be able to afford until tommorrow" attitude and force people back into responsible management of thier finances so they can do less damage to their neighors.<br><br>Have an incredible day!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-8948626">\
	 <div id="dsq-comment-header-8948626" class="dsq-comment-header">\
	 <cite id="dsq-cite-8948626" class="dsq-comment-cite">\
	 <a id="dsq-author-user-8948626" href="http://www.ReneeBurrows.com" target="_blank" rel="nofollow">Renee Burrows</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-8948626" class="dsq-comment-body">\
	 <div id="dsq-comment-message-8948626" class="dsq-comment-message">Bruce you are the only one I have heard say something like this but myself.  Where is the money (on all of these repeated refinances) on these homes that were foreclosed on.  <br><br>I am a Realtor here in Las Vegas, we have the same conditions and we are in dire need of inventory.  I am at a loss on what to tell the ready, willing and able buyers what to do and how to act.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-7908116">\
	 <div id="dsq-comment-header-7908116" class="dsq-comment-header">\
	 <cite id="dsq-cite-7908116" class="dsq-comment-cite">\
	 <span id="dsq-author-user-7908116">Dean</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7908116" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7908116" class="dsq-comment-message">Let\'s just let everyone live in their houses for free.  How could we be so cruel as to kick people out of their homes just because they can\'t pay?  That should satisfy the "housing advocates" right?</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-7910666">\
	 <div id="dsq-comment-header-7910666" class="dsq-comment-header">\
	 <cite id="dsq-cite-7910666" class="dsq-comment-cite">\
	 <span id="dsq-author-user-7910666">Char</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7910666" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7910666" class="dsq-comment-message">As an agent who completes bpos as part of my career, I would hope that Congress can acknowledge that there are also agents who are so underpaid for this job and perhaps do a better job than some appraisers because they know the comps they are selecting, they\'ve sold and shown properties in a particular neighborhood.  My job is to make sure no gets "taken" not the banks and not tne buyer.  I certainly agree with Ron  I would trust a bpo just as much as I would trust an appraisal.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-7912165">\
	 <div id="dsq-comment-header-7912165" class="dsq-comment-header">\
	 <cite id="dsq-cite-7912165" class="dsq-comment-cite">\
	 <span id="dsq-author-user-7912165">PATTY PICKETT</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7912165" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7912165" class="dsq-comment-message">Is the new Home Affordable Modification Program just a lot of smoke and mirrors?  Country Wide and Citi Mortgage keep saying that this program doesn\'t exist.  What lenders/servicers are working with homeowners on this new modification plan.  The guidelines were posted 3/4/09.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-7929420">\
	 <div id="dsq-comment-header-7929420" class="dsq-comment-header">\
	 <cite id="dsq-cite-7929420" class="dsq-comment-cite">\
	 <span id="dsq-author-user-7929420">FailureIsTheWay</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7929420" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7929420" class="dsq-comment-message">This is the only natioin that rewards fallure with more bailouts and moratoriums. Why do the responsible people continue to pay for the greed and stupidity of others. I rent because I cannot afford a home and now my taxes are going to those who were greedy.... I have learned my lesson. I will become a failure so the goverment can take care of me too!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-7943120">\
	 <div id="dsq-comment-header-7943120" class="dsq-comment-header">\
	 <cite id="dsq-cite-7943120" class="dsq-comment-cite">\
	 <a id="dsq-author-user-7943120" href="http://www.Rent2ownMarket.com" target="_blank" rel="nofollow">Ken B.</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7943120" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7943120" class="dsq-comment-message">I think it\'s interesting to finally see the Rent to Own concept brought into discussion as a means that can help the housing problem.  For those who don\'t know, it is a way for a seller to fill or avoid a vacancy with possible future sale and a buyer to lease with an option to buy in the future.  In times like these there are many "would be" buyers who are having a hard time obtaining financing due to a variety of reasons that may include issues they have had to work through due to the falling economy and/ or increased tightening in the credit markets.  By Renting to Own they can enjoy the property, earn a rent credit towards purchase each month and take advantage of those credits by purchasing once everything is in line.  Years back I founded a website called <a href="http://www.Rent2ownMarket.com" rel="nofollow">www.Rent2ownMarket.com</a> where we run a special Rent to Own Program that sellers can place their properties into and buyers can secure the properties.  We then remain as a participant in the transaction and maintain it well.  This offers both buyers and sellers a place to go to achieve their goals and a well administered program to comfortably participate in.  We also have a Seller Financing Program that does even more amazing things such as create immediate ownership, tax advantages for the buyer and gives the seller more peace of mind in knowing the Buyer will close!  These concepts and our programs have actually helped many sellers avoid foreclosure and at the same time have rewarded buyers with wonderful ownership opportunities that may not otherwise be afforded to them.  I believe any property seller including banks that have had to take on properties would do fine to adopt similar strategies or even better, enroll in our programs so it can be done for them.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-7967724">\
	 <div id="dsq-comment-header-7967724" class="dsq-comment-header">\
	 <cite id="dsq-cite-7967724" class="dsq-comment-cite">\
	 <a id="dsq-author-user-7967724" href="http://www.lavegasrealestatewire.com" target="_blank" rel="nofollow">Vegas Tim </a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-7967724" class="dsq-comment-body">\
	 <div id="dsq-comment-message-7967724" class="dsq-comment-message">"Problems with bank-owned foreclosed properties that sell for way below market value, for example, could be addressed by keeping renters in the houses"  <br><br>The above could not be farther from from truth.  In a declining market, the longer it takes to sell a property, the lower return/higher loss to the investors.  No occupant wants to move from a decent home.  Those same people (renters) often submarine the showing  / condition / access of homes on the market often lengthening the market time of a property.  Longer on the market, lower the final realized sales price.  These people will have to move at some point, there are other owners on the brink of forelcosure trying to find a tenant to help cover their house payment - move them now.<br><br>Regarding BPOs, real estate agents have been doing the same type of analysis for decades when helping a owner/seller establish an offering price for their home.  A BPO is essentially a single page form formalizing the data.  Real estate agents have done an outstanding agents for decades interpreting the market data and helping sellers move their homes in the open market.  To suggest only appraisers can do this is outrageous.  Appraised value is different from market value. Sometimes there is nobody willing to pay "appraised value" as evidenced by an gov land auction here in the Las Vegas area last year.  Who was wrong here?  The appraiser or the market?  Real estate is only worth what someone is willing to pay.<br><br>Funny though when a property is offered above market, there are no showings, no offers, no chance in heck to sell.  But when a property is offered below market, them market knows it is a deal and through multiple offers it will sell above asking price and close to the actual market value.  The market is the market and bigger, more powerful than any appraiser or any real estate agent\'s opinion.  Appraised value is what the last person was willing to pay for a property.  There are very few markets where values are not in decline.  Supply, demand, absorption, (view Las Vegas stats <a href="http://www.lasvegasrealestatewire.com" rel="nofollow">http://www.lasvegasrealestatewire.com</a>) the latest "knee jerk" lending rule change, unemployment, consumer confidence, and more play a role in what the next property sales price - things not always considered in appraisal.  <br><br>The market drove the prices up.  The market is driving the prices down.  Get out its way.  Long live the market.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-8074679">\
	 <div id="dsq-comment-header-8074679" class="dsq-comment-header">\
	 <cite id="dsq-cite-8074679" class="dsq-comment-cite">\
	 <span id="dsq-author-user-8074679">Ted</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-8074679" class="dsq-comment-body">\
	 <div id="dsq-comment-message-8074679" class="dsq-comment-message">":Real estate agents have done an outstanding agents for decades interpreting the market data and helping sellers move their homes in the open market. To suggest only appraisers can do this is outrageous. Appraised value is different from market value. Sometimes there is nobody willing to pay "appraised value" as evidenced by an gov land auction here in the Las Vegas area last year. Who was wrong here? The appraiser or the market?" <br><br>You are wrong to compare market reactions to appraised value in a certain time period of decline. Appraisers work from historical data. If you had to find value where none existed would you? BPO\'s are flawed as AVM\'s in that data can be manipulated. Why can\'t you poeple understand that it isn\'t the borrower or the appraiser that\'s wrong, it\'s the banks lackey, the underwriter that OK\'d the loans at the banks behest. To track blame look for a money trail, bonuses for bad behavior? They knew they were doing wrong.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-8051929">\
	 <div id="dsq-comment-header-8051929" class="dsq-comment-header">\
	 <cite id="dsq-cite-8051929" class="dsq-comment-cite">\
	 <a id="dsq-author-user-8051929" href="http://www.TheShortSaleCompany.com" target="_blank" rel="nofollow">Michael Hellickson</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-8051929" class="dsq-comment-body">\
	 <div id="dsq-comment-message-8051929" class="dsq-comment-message">Congratulations to the industry as a whole are in order as the Fannie Mae and Freddie Mac foreclosure moratoriums ended on March 31st 2009. Unblocking the flow of troubled assets to the marketplace was a very necessary step to preventing potential catastrophic meltdown of the REO industry as a whole. <br><br>Imagine a scenario where the moratorium had lasted another 6 months. REO servicers, outsourcers, property preservation companies, agents and others would have been forced to layoff even more staff in the months preceding the deluge of properties coming to market. Just as the need for qualified companies and individuals reached its peak (as hundreds of thousands of REO\'s get dumped on the market) there would be a shortage of each. Further, values would plummet as inventories skyrocketed and banks became forced to further discount already devalued assets.<br><br>I believe we can assume that further extension of the moratorium could (and probably would) have resulted in far greater decline in the National real estate market. This would have had farther reaching negative impacts than we can imagine.<br><br>Bravo to Fannie and Freddie for taking the lead in dealing with these issues. Hard decisions were made, and we will all benefit from them in ways we may never know.<br><br>The next step in slowing the real estate decline will not be limited to continuing to rent to foreclosed tenants. Short sales will become the standard for loss-mitigation, as lenders and servicers begin to realize how ineffective loan modifications really are. We have seen a tremendous increase in short sales at <a href="http://www.TheShortSaleCompany.com" rel="nofollow">www.TheShortSaleCompany.com</a>, and are ramping up for even greater increases in volume  in the coming months. <br><br>Agents in particular would be wise to spend more time effort and energy learning about short sales and how they can enhance their business models. Servicers and lenders would be foolish not to place greater emphasis on short sales as the preferred method of liquidating troubled assets. <br><br>We are currently working with several major lenders and servicers to promote and close pre-approved short sales. In other words servicers will partner with agents, homeowners and loss mitigation companies like ours in an effort to liquidate troubled assets before and instead of taking them through foreclosure. With pre-approved pricing, buyers agents will feel more inclined to show and sell short sales (avoiding the extremely long process of obtaining short sale approval as traditionally experienced). Another benefit of pre-approved short sales is the protection of real estate agent commissions ( a sore subject for many agents who currently participate in short sale transactions). <br><br>The resulting savings to the lender is beneficial to all involved, and even saves the homeowner from having a foreclosure on their record. This in turn will allow more displaced homeowners to re-enter the marketplace sooner as potential buyers, further alleviating the real estate crises. <br><br>Michael J. Hellickson<br>Hellickson Real Estate Team<br>Washington State\'s Number One Agent<br>President/CEO  - The Short Sale Company<br>206-300-6453<br><a href="http://Hellickson.com" rel="nofollow">Hellickson.com</a> / <a href="http://www.TheShortSaleCompany.com" rel="nofollow">www.TheShortSaleCompany.com</a></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-8333530">\
	 <div id="dsq-comment-header-8333530" class="dsq-comment-header">\
	 <cite id="dsq-cite-8333530" class="dsq-comment-cite">\
	 <span id="dsq-author-user-8333530">dapostmaster</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-8333530" class="dsq-comment-body">\
	 <div id="dsq-comment-message-8333530" class="dsq-comment-message">haha...save the real estate market jobs...haha...what a joke.  a major part of the problem is the mass movement to become loan officers, agents, etc...this became a group of money hungry, greedy, uneducated who should still be cutting hair, selling yellow page ads or serving burgers</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-8154355">\
	 <div id="dsq-comment-header-8154355" class="dsq-comment-header">\
	 <cite id="dsq-cite-8154355" class="dsq-comment-cite">\
	 <a id="dsq-author-user-8154355" href="http://www.lortihomesblog.com" target="_blank" rel="nofollow">Chandler Real Estate</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-8154355" class="dsq-comment-body">\
	 <div id="dsq-comment-message-8154355" class="dsq-comment-message">Thanks for such a detailed article and call-out of the lifting of the moratorium.  I personally feel this is good timing.  In our real estate market in Phoenix, we are now seeing record buyer demand in terms of the number of homes under contract, with inventory dropping.  However, I had growing concerns that the moratorium combined with aggressive pricing strategies is creating an artificial high.  With the lifting of the moratorium, more \'natural\' inventory can come back on the market rather than have this potentially pent up until later.  <br><br>David Lorti</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-8337892">\
	 <div id="dsq-comment-header-8337892" class="dsq-comment-header">\
	 <cite id="dsq-cite-8337892" class="dsq-comment-cite">\
	 <span id="dsq-author-user-8337892">Geo Broker</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-8337892" class="dsq-comment-body">\
	 <div id="dsq-comment-message-8337892" class="dsq-comment-message">I am a real estate broker that cannot find homes for his prospective and qualified buyers. Currently multi offers and overbidding is the norm in my makret. I wellcome fresh inventory, this is what is needed to heal the industry. We have helped the ones that have done it wrong long enough, and at the end of the day we are truly helping the investors and lending industry by pretending we are helping the home ownders. What did home owners do before they owned a home? They can go back to renting and a normal productive life free of the stress associated with homeownership. Let the new buyers, that have kept their powder dry  and have been waiting for this day to come , have their day in the market place.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-8563828">\
	 <div id="dsq-comment-header-8563828" class="dsq-comment-header">\
	 <cite id="dsq-cite-8563828" class="dsq-comment-cite">\
	 <span id="dsq-author-user-8563828">johnmayer76</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-8563828" class="dsq-comment-body">\
	 <div id="dsq-comment-message-8563828" class="dsq-comment-message">It is estimated that Obama\'s plan could benefit 8 to 9 million homeowners from the new modification procedures. So how do you know you qualify for the Mortgage Modification? Check the website <a href="http://obamamortgage2009.blogspot.com/" rel="nofollow">http://obamamortgage2009.blogspot.com/</a><br>to see if you qualify. I was also in trouble and I am glad I did check it before I talk to my mortgage company and it helped - John Mayer, California</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-8584393">\
	 <div id="dsq-comment-header-8584393" class="dsq-comment-header">\
	 <cite id="dsq-cite-8584393" class="dsq-comment-cite">\
	 <a id="dsq-author-user-8584393" href="http://www.BensMyRealtor.com" target="_blank" rel="nofollow">Ben Richardson</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-8584393" class="dsq-comment-body">\
	 <div id="dsq-comment-message-8584393" class="dsq-comment-message">It\'s pretty insulting for your article to make the statement that most Realtors who do BPO\'s are "agents with minimal training."  Quit the opposite is true.  What bias is clouding your journalist objectivity?</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-13447480">\
	 <div id="dsq-comment-header-13447480" class="dsq-comment-header">\
	 <cite id="dsq-cite-13447480" class="dsq-comment-cite">\
	 <a id="dsq-author-user-13447480" href="http://www.iknowrosedale.co" target="_blank" rel="nofollow">Ron Sullivan</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-13447480" class="dsq-comment-body">\
	 <div id="dsq-comment-message-13447480" class="dsq-comment-message">As an REO agent in Bakersfield California and doing BPO\'s each week I can say that most local agents in my shoes are not low balling home values to move them or lower value for personal gain. We are governed by a code of ethic that would not allow us to distort value. I see problems when I see an out of town company being used for BPO\'s and as listing agents by an asset management company or banks as a medium to move their REO\'s. How can someone sitting in San Diego California in possible give an honest Broker Price Opinion to an asset in Bakersfield California having never set foot here? My operating range for BPOs is a radius of 65 miles. Part of the reason we are where we are was extorted values by out of town appraisers in the past 7 years. Banks make loans on an opinion of value not BPO values. Let’s keep the valuation process at home and we may see a better BPO product</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-16408660">\
	 <div id="dsq-comment-header-16408660" class="dsq-comment-header">\
	 <cite id="dsq-cite-16408660" class="dsq-comment-cite">\
	 <span id="dsq-author-user-16408660">Addie</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-16408660" class="dsq-comment-body">\
	 <div id="dsq-comment-message-16408660" class="dsq-comment-message">Here\'s a Northern CA situation:  What about people like myself. Hardworking, never late once, usually paid EARLY in fact.  The CA governor, in his great wisdom, took my income down nearly 15% (I am in civil service in Northern CA, providing staff support services for a chemistry group in environmental laboratory accreditation) - within 6 months I could not pay my credit balances, so tried minimum payments but soon learned the banks are cruel and lowered my lines but upped my percentages!   Soon I could not afford my HOA payments, and the rest, as they say, is now history.  I sit in my new tiny apt, pretty much shell shocked and afraid to spend one penny.  In my case, home ownership afforded me such great pride and contentment that I was taking care of my rapidly approaching retirement future. To my dismay, I found it it probably better now for me, as I approach sixty, to adopt the attitude of - rent and don\'t think about tomorrow anymore, complain about every little detail on the rental to get money off. Get what you can get. Get all you can in repairs no matter how. Get all you can and then move on. To me, this is childish and wrong but it seems to be all I can afford now with my newly demolished credit score - down 200 points.  My lovely upgrades (all paid for and done with licensed workers) sit unnoticed as the huge glut of similar condos sit unsold - Meanwhile buyers "cherry pick" the upgraded units and then "low ball offer" the hapless (I can relate) sellers. I tried to list my place but five agents looked at it and said "It would sell for so little now that it\'s not worth the time we would take to list and show it".  What great service there! It makes me just sick. I feel like it is wrong to just walk away but I definitely will very soon.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-20762819">\
	 <div id="dsq-comment-header-20762819" class="dsq-comment-header">\
	 <cite id="dsq-cite-20762819" class="dsq-comment-cite">\
	 <span id="dsq-author-user-20762819">markmincey</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-20762819" class="dsq-comment-body">\
	 <div id="dsq-comment-message-20762819" class="dsq-comment-message">I don\'t understand. It seems in tis mess we are in that everyone wants to help out the home owner. What about the renters. We have no help and no one offering any. Why is there not a bail out or a program to help the renters stay in their homes?</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-23860250">\
	 <div id="dsq-comment-header-23860250" class="dsq-comment-header">\
	 <cite id="dsq-cite-23860250" class="dsq-comment-cite">\
	 <a id="dsq-author-user-23860250" href="http://www.aydesign.net" target="_blank" rel="nofollow">webtasarimi</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-23860250" class="dsq-comment-body">\
	 <div id="dsq-comment-message-23860250" class="dsq-comment-message">Are you really complaining that the victims of rent skimming landlords need to have 24 hr notice before you bring random people through the house that they are living in and invade their privacy?</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=washingtonindependent&t=fannie_freddie_quietly_lift_moratorium_on_foreclosures&to_redirect=' + encodeURIComponent(window.location) + '&ifrs=' + encodeURIComponent(disqus_iframe_css);
			}
		}
	}

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

	




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

})();




