if (!Object.prototype.toJSONString) {
    Array.prototype.toJSONString = function (w) {
        var a = [],     // The array holding the partial texts.
            i,          // Loop counter.
            l = this.length,
            v;          // The value to be stringified.
        for (i = 0; i < l; i += 1) {
            v = this[i];
            switch (typeof v) {
            case 'object':
                if (v) {
                    if (typeof v.toJSONString === 'function') {
                        a.push(v.toJSONString(w));
                    }
                } else {
                    a.push('null');
                }
                break;
            case 'string':
            case 'number':
            case 'boolean':
                a.push(v.toJSONString());
            }
        }
        return '[' + a.join(',') + ']';
    };
    Boolean.prototype.toJSONString = function () {
        return String(this);
    };
    Date.prototype.toJSONString = function () {
        function f(n) {
            return n < 10 ? '0' + n : n;
        }
        return '"' + this.getUTCFullYear() + '-' +
                f(this.getUTCMonth() + 1)  + '-' +
                f(this.getUTCDate())       + 'T' +
                f(this.getUTCHours())      + ':' +
                f(this.getUTCMinutes())    + ':' +
                f(this.getUTCSeconds())    + 'Z"';
    };
    Number.prototype.toJSONString = function () {
        return isFinite(this) ? String(this) : 'null';
    };
    Object.prototype.toJSONString = function (w) {
        var a = [],     
            k,          
            i,          
            v;          
        if (w) {
            for (i = 0; i < w.length; i += 1) {
                k = w[i];
                if (typeof k === 'string') {
                    v = this[k];
                    switch (typeof v) {
                    case 'object':
                        if (v) {
                            if (typeof v.toJSONString === 'function') {
                                a.push(k.toJSONString() + ':' +
                                       v.toJSONString(w));
                            }
                        } else {
                            a.push(k.toJSONString() + ':null');
                        }
                        break;
                    case 'string':
                    case 'number':
                    case 'boolean':
                        a.push(k.toJSONString() + ':' + v.toJSONString());
                    }
                }
            }
        } else {
            for (k in this) {
                if (typeof k === 'string' &&
                        Object.prototype.hasOwnProperty.apply(this, [k])) {
                    v = this[k];
                    switch (typeof v) {
                    case 'object':
                        if (v) {
                            if (typeof v.toJSONString === 'function') {
                                a.push(k.toJSONString() + ':' +
                                       v.toJSONString());
                            }
                        } else {
                            a.push(k.toJSONString() + ':null');
                        }
                        break;
                    case 'string':
                    case 'number':
                    case 'boolean':
                        a.push(k.toJSONString() + ':' + v.toJSONString());
                    }
                }
            }
        }
        return '{' + a.join(',') + '}';
    };
    (function (s) {
        var m = {
            '\b': '\\b',
            '\t': '\\t',
            '\n': '\\n',
            '\f': '\\f',
            '\r': '\\r',
            '"' : '\\"',
            '\\': '\\\\'
        };
        s.parseJSON = function (filter) {
            var j;
            function walk(k, v) {
                var i;
                if (v && typeof v === 'object') {
                    for (i in v) {
                        if (Object.prototype.hasOwnProperty.apply(v, [i])) {
                            v[i] = walk(i, v[i]);
                        }
                    }
                }
                return filter(k, v);
            }
            if (/^[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]* $/.test(this.
                    replace(/\\./g, '@').
                    replace(/"[^"\\\n\r]*"/g, ''))) {
                j = eval('(' + this + ')');
                return typeof filter === 'function' ? walk('', j) : j;
            }
            throw new SyntaxError('parseJSON');
        };
        s.toJSONString = function () {
            if (/["\\\x00-\x1f]/.test(this)) {
                return '"' + this.replace(/[\x00-\x1f\\"]/g, function (a) {
                    var c = m[a];
                    if (c) {
                        return c;
                    }
                    c = a.charCodeAt();
                    return '\\u00' +
                        Math.floor(c / 16).toString(16) +
                        (c % 16).toString(16);
                }) + '"';
            }
            return '"' + this + '"';
        };
    })(String.prototype);
}
var Prototype={Version:'1.3.1',emptyFunction:function(){}};var Class={create:function(){return function(){this.initialize.apply(this,arguments);}}};Object.extend=function(destination,source){for(property in source){destination[property]=source[property];}return destination;};Object.prototype.extend=function(object){return Object.extend.apply(this,[this,object]);};Function.prototype.bind=function(object){var __method=this;return function(){__method.apply(object,arguments);}};var Try={these:function(){var returnValue;for(var i=0;i<arguments.length;i++){var lambda=arguments[i];try{returnValue=lambda();break;}catch(e){}}return returnValue;}};function $(){var elements=new Array();for(var i=0;i<arguments.length;i++){var element=arguments[i];if(typeof element=='string')element=document.getElementById(element);if(arguments.length==1)return element;elements.push(element);}return elements;}if(!Array.prototype.push){Array.prototype.push=function(){var startLength=this.length;for(var i=0;i<arguments.length;i++)this[startLength+i]=arguments[i];return this.length;}}if(!Function.prototype.apply){Function.prototype.apply=function(object,parameters){var parameterStrings=new Array();if(!object)object=window;if(!parameters)parameters=new Array();for(var i=0;i<parameters.length;i++)parameterStrings[i]='parameters['+i+']';object.__apply__=this;var result=eval('object.__apply__('+parameterStrings.join(', ')+')');object.__apply__=null;return result;}};var Ajax={getTransport:function(){return Try.these(function(){return new ActiveXObject('Msxml2.XMLHTTP')},function(){return new ActiveXObject('Microsoft.XMLHTTP')},function(){return new XMLHttpRequest()})||false;}};Ajax.Base=function(){};Ajax.Base.prototype={setOptions:function(options){this.options={method:'post',asynchronous:true,parameters:''}.extend(options||{});},responseIsSuccess:function(){return this.transport.status==undefined||this.transport.status==0||(this.transport.status>=200&&this.transport.status<300);},responseIsFailure:function(){return!this.responseIsSuccess();}};Ajax.Request=Class.create();Ajax.Request.Events=['Uninitialized','Loading','Loaded','Interactive','Complete'];Ajax.Request.prototype=(new Ajax.Base()).extend({initialize:function(url,options){this.transport=Ajax.getTransport();this.setOptions(options);this.request(url);},request:function(url){var parameters=this.options.parameters||'';if(parameters.length>0)parameters+='&_=';try{if(this.options.method=='get')url+='?'+parameters;this.transport.open(this.options.method,url,this.options.asynchronous);if(this.options.asynchronous){this.transport.onreadystatechange=this.onStateChange.bind(this);setTimeout((function(){this.respondToReadyState(1)}).bind(this),10);}this.setRequestHeaders();var body=this.options.postBody?this.options.postBody:parameters;this.transport.send(this.options.method=='post'?body:null);}catch(e){}},setRequestHeaders:function(){var requestHeaders=['X-Requested-With','XMLHttpRequest','X-Prototype-Version',Prototype.Version];if(this.options.method=='post'){requestHeaders.push('Content-type','application/x-www-form-urlencoded');if(this.transport.overrideMimeType)requestHeaders.push('Connection','close');}if(this.options.requestHeaders)requestHeaders.push.apply(requestHeaders,this.options.requestHeaders);for(var i=0;i<requestHeaders.length;i+=2)this.transport.setRequestHeader(requestHeaders[i],requestHeaders[i+1]);},onStateChange:function(){var readyState=this.transport.readyState;if(readyState!=1)this.respondToReadyState(this.transport.readyState);},respondToReadyState:function(readyState){var event=Ajax.Request.Events[readyState];if(event=='Complete')(this.options['on'+this.transport.status]||this.options['on'+(this.responseIsSuccess()?'Success':'Failure')]||Prototype.emptyFunction)(this.transport);(this.options['on'+event]||Prototype.emptyFunction)(this.transport);if(event=='Complete')this.transport.onreadystatechange=Prototype.emptyFunction;}});
function unsafe(text){return text.replace(/&gt;/g,">").replace(/&lt;/g,"<").replace(/&amp;/g,"&");}function hide(){for(var i=0;i<arguments.length;i++){var e= $(arguments[i]);if(e)e.style.display="none";}}function show(){for(var i=0;i<arguments.length;i++){var e= $(arguments[i]);if(e)e.style.display="";}}Object.prototype.__iter__=function(func){var res=[];for(var o in this){if(!(o in Object.prototype)){res.unshift(func(o,this[o]));}}return res;};function make_get_params(obj){return obj.__iter__(function(x,y){return x+"="+encodeURIComponent(y);}).join("&");}function update_get_params(updates){var getparams={};where.params.__iter__(function(x,y){getparams[x]=y;});if(updates)updates.__iter__(function(x,y){getparams[x]=y;});return getparams;}function relative_path(updates){var getparams=update_get_params(updates);path=where.path;if(getparams){path+="?"+make_get_params(getparams);}return path;}function close_menus(){uls=document.getElementsByTagName('DIV');for(var i=0;i<uls.length;i++){var ul=uls[i];var menu=ul.parentNode;if(menu!=cur_menu&&ul.className=='drop-choices'){ul.style.visibility='hidden';menu.onclick=function(){return open_menu(this);}}}cur_menu=null;}function _id(obj){if(obj&&obj.id){var id=obj.id;if(id.value){id=id.value};id=id.split('_');if(id.length>2){id=id[id.length-2]+'_'+id[id.length-1];if(id==null){return '';}return id;}}return '';}function buildParams(parameters){if(parameters){try{var p=new Array();for(var i=0;i+1<parameters.length;i+=2){p.push(parameters[i]+'='+encodeURIComponent(parameters[i+1]));}parameters=p.join('&');}catch(e){parameters='';alert(e);}}return parameters;}var api_loc='/api/';function redditRequest(op,parameters,worker_in){var action=op;var worker=worker_in;if(!parameters){parameters={};}if(post_site){parameters.r=post_site;}op=api_loc+op;if(!worker){worker=handleResponse(action);}else{worker=function(r){return worker_in(r);}}new Ajax.Request(op,{parameters:make_get_params(parameters),onComplete:worker});}function redditRequest_no_response(op,parameters){redditRequest(op,parameters,function(r){});}function get_class_from_id(id){if(id){id=id.split('_')[0];return class_dict[id];}}function parse_response(r){if(r.status==500)return;return r.responseText.parseJSON();}function tup(x){if(!x.length){return[x]};return x;}function handleResponse(action){var my_iter=function(x,func){if(x){var y=tup(x);for(var j=0;j<y.length;j++){func(y[j]);}}};var responseHandler=function(r){var res_obj=parse_response(r);if(!res_obj){if( $('status')){ $('status').innerHTML='';return;}}if(res_obj.redirect){window.location=res_obj.redirect;return;}var error=res_obj.error;if(error&&error.name){var errid=error.name;if(error.id){errid+="_"+error.id;}errid= $(errid);if(errid){show(errid); $(errid).innerHTML=error.message;}}var r=res_obj.response;if(!r)return;var obj=r.object;if(obj){my_iter(tup(obj),function(u){if(u&&u.kind&&class_dict[u.kind]){var func=(class_dict[u.kind][u.action]||class_dict[u.kind][action]);if(func){func(u.data);}}});}if(r.focus){var f= $(r.focus);if(f){f.focus();f.onfocus=null;}}if(r.blur){var f= $(r.blur);if(f){f.blur();f.onblur=null;}}if(r.captcha){if(r.captcha.refresh){var captcha= $("capimage");var capiden= $("capiden");capiden.value=r.captcha.iden;captcha.src=("/captcha/"+r.captcha.iden+".png?"+Math.random())}}if(r.success){fire_success();}my_iter(r.update,function(u){var field=u.id&& $(u.id);if(field){for(var i in u){if(typeof(u[i])!="function"&&u!='name'){field[i]=u[i];}}}});my_iter(r.hide,function(h){var field=h.name&& $(h.name);if(field){hide(field);}});my_iter(r.show,function(h){var field=h.name&& $(h.name);if(field){show(field);}});};return responseHandler;}function re_id_node(node,id){if(node.id&&typeof(node.id)=="string"){node.id+=id;}var children=node.childNodes;for(var i=0;i<children.length;i++){re_id_node(children[i],id);}return node;}function Thing(id){this.__init__(id);};function field(form_field){if(form_field==null||form_field.value==null||((form_field.type=='text'||form_field.type=='textarea')&&form_field.style.color=="gray")||(form_field.type=='radio'&&!form_field.checked)){return '';}else if(form_field.type=='checkbox'){return form_field.checked?'on':'off';}return form_field.value;}function change_state(link,type){var parent=link.parentNode;var form=parent.parentNode;var id=form.id.value;var uh=modhash;link.blur();var executed=document.createElement('span');executed.innerHTML=form.executed.value;parent.insertBefore(executed,link);hide(link);redditRequest(type,{id:id,uh:uh});return false;}function post_form(form,where,statusfunc,nametransformfunc){var p={uh:modhash};var id=_id(form);var status= $("status");if(statusfunc==null){statusfunc=function(x){return _global_submitting_tag;};}if(nametransformfunc==null){nametransformfunc=function(x){return x;}}if(id){status= $("status_"+id);p.id=id;}if(status){status.innerHTML=statusfunc(form);}for(var i=0;i<form.elements.length;i++){if(!form.elements[i].id||!id||_id(form.elements[i])==id){var f=field(form.elements[i]);if(f){p[nametransformfunc(form.elements[i].name)]=f;}}}redditRequest(where,p);return false;}function setMessage(field,msg){if(!field.value||field.value==msg){field.value=msg;field.style.color="gray";}else{field.onfocus=null;}}function more(a_tag,new_label,div_on,div_off){var old_label=a_tag.innerHTML;a_tag.innerHTML=new_label;var i;for(i=0;i<div_on.length;i++){show(div_on[i]);}for(i=0;i<div_off.length;i++){hide(div_off[i]);}a_tag.onclick=function(){return more(a_tag,old_label,div_off,div_on);};return false;}function new_captcha(){redditRequest("new_captcha");}
var aniqueue=[];var _frameRate=15;function __animate(){var newqueue=[];for(var i=0;i<aniqueue.length;i++){var y=aniqueue[i]();if(y)newqueue.unshift(aniqueue[i]);}aniqueue=newqueue;if(!aniqueue.length&&animator){stop_animate();}}var animator;function animate(func,goal,duration){var d=new Date().getTime();var g=goal?1:0;duration=duration||750;aniqueue.unshift(function(){var level=(new Date().getTime()-d)/duration;level=g?level:1-level;level=Math.max(Math.min(level,1),0);try{func(level);return(level!=g);}catch(e){return false;}});if(!animator){setTimeout(function(){start_animate(_frameRate);},30);}}function start_animate(interval){if(!animator){animator=setInterval(__animate,interval);}}function stop_animate(){clearInterval(animator);animator=null;}
function Thing(id){this.__init__(id);};Thing.prototype={__init__:function(id){this._id=id;this.row=this. $("thingrow");if(this.row){if(!this.max_height()){this.set_height("fit");}}},_fade:function(fraction){fraction=Math.max(Math.min(fraction,1),0);if(fraction==0)this.hide();else this.show();this.row.style.opacity=fraction;this.set_height((fraction==1)?'fit':(this.max_height()*fraction));this.row.cur_fade=fraction;},fade:function(fraction){this.row.cur_fade=this.row.cur_fade||1;if(this.row.fading&&fraction<this.row.cur_fade){this._fade(fraction);}},unfade:function(fraction){this.row.cur_fade=this.row.cur_fade||0;if(!this.row.fading&&fraction>this.row.cur_fade){this._fade(fraction);}},get:function(name){return $(name+'_'+this._id);}, $:function(name){return $(name+'_'+this._id);},hide:function(do_animate){this.row.hidden=true;if(do_animate){var t=this;this.row.fading=true;animate(function(x){t.fade(x);},0);}else{hide(this.row);if(this.__destroy&&this.row&&this.row.parentNode){this.row.parentNode.removeChild(this.row);}}},show:function(do_animate){this.row.hidden=false;show(this.row);if(do_animate){var t=this;this.row.fading=false;animate(function(x){t.unfade(x)},1);}},del:function(do_animate){this.__destroy=true;this.hide(do_animate);},child_listing:function(){var child=this. $("child");if(!Listing.exists(this._id)){l=Listing.create(this._id);child.insertBefore(l.ajaxHook,child.firstChild);child.insertBefore(l.listing,child.firstChild);}return new Listing(this._id);},is_visible:function(){return this.row&&!this.row.hidden;},compute_height:function(){var arrows=this. $("arrows");var entry=this. $("entry");var num=this. $("num");return Math.max(arrows?arrows.offsetHeight:0,entry?entry.offsetHeight:0,num?num.offsetHeight:0);},parent_listing:function(){return Listing.attach(this.row.parentNode);},max_height:function(){return this.row._height+this.row._top_pad+this.row._bot_pad;},get_height:function(){return this.row.offsetHeight;},set_height:function(h){var entry=this. $('entry');var arrows=this. $('arrows');if(h=="fit"||(this.max_height()&&h>=this.max_height()*.90)){this.row.style.paddingTop="";this.row.style.paddingBottom="";h="";}else if(h<=0){this.row.style.paddingTop="0px";this.row.style.paddingBottom="0px";h="0px";}else{if(this.row._top_pad&&h<=this.row._top_pad){this.row.style.paddingTop=h+"px";this.row.style.paddingBottom="0px";h="0px";}else{var height;if(this.row.style.height){height=parseInt(this.row.style.height);}else{height=this.compute_height();}var pad=this.row.offsetHeight-height;this.row.style.paddingTop="";if(h<pad){this.row.style.paddingBottom=Math.max(h-this.row._top_pad,0)+"px";h=0;}h+="px";}}entry.style.height=h;if(arrows){arrows.style.height=h;}this.row.style.height=h;if(h==""&&this.is_visible()){height=this.compute_height();top_pad=entry.offsetTop-this.row.offsetTop-1;bot_pad=this.row.offsetHeight-height-top_pad-1;this.row._height=height;this.row._top_pad=top_pad;this.row._bot_pad=bot_pad;}return this.row.offsetHeight;}};Thing.del=function(r){new Thing(r.id).del(true);};function Listing(id){if(id){id="_"+id;}this.listing= $('siteTable'+id);this.ajax_hook= $('ajaxHook'+id);if(this.listing){if(!this.listing.start_count){this.listing.start_count=this.visible_count();}}};Listing.prototype={insert_node_before:function(node,before_me,append_me){before_me=before_me||this.listing.firstChild;if(!append_me&&before_me){this.listing.insertBefore(node,before_me);}else{this.listing.appendChild(node);}},insert:function(content,before_me,append_me){var a=this.ajax_hook;a.innerHTML=content;var childs=a.childNodes;var things=[];for(var i=0;i<childs.length;i++){var id=_id(childs[i]);if(id){var t=new Thing(id);t.set_height("fit");t.hide();things.unshift(t);}this.insert_node_before(childs[i],before_me,append_me);}a.innerHTML='';return things;},push:function(content){return this.insert(content,this.listing.firstChild);},append:function(content){return this.insert(content,null,true);},map:function(func){if(this.listing){var c=this.listing.childNodes;for(var i=0;i<c.length;i++){var id=_id(c[i]);if(id){func(new Thing(id));}}}},select:function(func){var agg=[];this.map(function(t){if(func(t))agg.unshift(t);});return agg;},visible_count:function(){return this.select(function(t){return t.is_visible();}).length;},renumber:function(start_num){var n=start_num||0;this.map(function(t){var num=t. $('num');if(t.is_visible()){if(num){var current_num=parseInt(num.innerHTML);if(current_num>n){n=current_num;}else{num.innerHTML=(++n);}}}});},reset_visible_count:function(){var n=this.listing.start_count;this.map(function(t){if(t.is_visible()){if(--n<0){t.hide(true);}}});this.renumber();}};Listing.exists=function(id){return $('siteTable_'+id);};Listing.attach=function(node){var id= /siteTable_(.*)/.exec(node.id);if(id){var listing=new Listing(id[1]);if(listing.listing){return listing;}}};Listing.create=function(id){var l=new Listing(id);if(!l.listing){l.listing=document.createElement("div");l.listing.id="siteTable_"+id;l.ajaxHook=document.createElement("div");l.ajaxHook.id="ajaxHook_"+id;l.ajaxHook.className="ajaxhook";};return l;};function make_sr_list(sr_diffs){var srs=[];for(var sr in sr_diffs){if(!(sr in Object.prototype)&&sr_diffs[sr]!=null){srs.unshift(sr+":"+(sr_diffs[sr]?1:0));}}return srs.join(',');}Listing.fetch_more=function(sr_diffs,sr_needed,num_needed){var args=update_get_params({srs:make_sr_list(sr_diffs)});new Ajax.Request(where.path+".json",{parameters:make_get_params(args),method:"get",onComplete:Listing_merge(sr_needed,num_needed)});};function Listing_merge(sr_needed,num_needed){return function(r){var res_obj=parse_response(r);if(res_obj){r=res_obj.response.object.data;var l=new Listing("");var things=[];for(var i=0;i<r.length;i++){var d=r[i].data;var t=new Thing(d.id);if(t.row){if(!t.is_visible()){things.unshift(t);}}else{if(!num_needed&&i+1<l.listing.start_count)t=l.insert(unsafe(d.content),l.listing.childNodes[i+1]);else t=l.append(unsafe(d.content));if(d.sr==sr_needed||(num_needed&&i>=r.length-num_needed))things=things.concat(t);vl[d.id]=d.vl;sr[d.id]=d.sr;}}for(var i=0;i<things.length;i++){things[i].show(true);}l.reset_visible_count();}};}function Link(id){this.__init__(id);};Link.prototype=new Thing();Link.save=function(response){};Link.hide=Thing.del;Link.del=Thing.del;Link.comment=Comment.comment;function linkstatus(form){var title=field(form.title);if(title){return _global_submitting_tag;}return _global_fetching_tag;}function setClick(a){var id=_id(a);if(id){if(logged){a.className="title loggedin click";}else{a.className="title click";}setClickCookie(id);}return true;}function setClickCookie(id){createCookie("click",readCookie("click")+id+":");}
function helpon(link,what,newlabel){var id=_id(link);show(what+id);var oldlabel=link.innerHTML;if(newlabel){link.innerHTML=newlabel}link.onclick=function(){return helpoff(link,what,oldlabel);};link.blur();return false;}function helpoff(link,what,newlabel){var id=_id(link);hide(what+id);var oldlabel=link.innerHTML;if(newlabel){link.innerHTML=newlabel}link.onclick=function(){return helpon(link,what,oldlabel);};link.blur();return false;}function ReplyTemplate(){return $("samplecomment_");}function comment_reply(id){id=id||'';var s= $("samplecomment_"+id);if(!s){return re_id_node(ReplyTemplate().cloneNode(true),id);}return s;};function _decode(text){return decodeURIComponent(text.replace(/\+/g," "));}function Comment(id){this.__init__(id);var edit_body=this.get("edit_body");if(edit_body){this.text=decodeURIComponent(edit_body.innerHTML.replace(/\+/g," "));}};Comment.prototype=new Thing();Comment.del=Thing.del;Comment.prototype._edit=function(listing,where,text){var edit_box=comment_reply(this._id);if(edit_box.parentNode!=listing.listing){if(edit_box.parentNode){edit_box.parentNode.removeChild(edit_box);}listing.insert_node_before(edit_box,where);}var box= $("comment_reply_"+this._id);clearTitle(box);box.value=text;show(edit_box);return edit_box;};Comment.prototype.edit=function(){this._edit(this.parent_listing(),this.row,this.text); $("commentform_"+this._id).replace.value="yes";this.hide();};Comment.prototype.reply=function(){this._edit(this.child_listing(),null,''); $("commentform_"+this._id).replace.value=""; $("comment_reply_"+this._id).focus();};Comment.prototype.cancel=function(){var edit_box=comment_reply(this._id);hide(edit_box);this.show();};Comment.comment=function(r){var id=r.id;var parent_id=r.parent;new Comment(parent_id).cancel();new Listing(parent_id).push(unsafe(r.content));new Comment(r.id).show();vl[id]=r.vl;};Comment.morechildren=function(r){var c=new Thing(r.id);if(c.row)c.del();var parent=new Thing(r.parent).child_listing();parent.append(unsafe(r.content));var c=new Comment(r.id);vl[r.id]=r.vl;};Comment.editcomment=function(r){var com=new Comment(r.id);com.get('body').innerHTML=unsafe(r.contentHTML);com.get('edit_body').innerHTML=unsafe(r.contentTxt);com.cancel();com.show();};Comment.prototype.collapse=function(){hide(this.get('child'));hide(this.get('display'));hide(this.get('arrows'));show(this.get('collapsed'));};Comment.prototype.uncollapse=function(){show(this.get('child'));show(this.get('display'));show(this.get('arrows'));hide(this.get('collapsed'));};function morechildren(form,link_id,children,depth){var id=_id(form);form.innerHTML=_global_loading_tag;form.style.color="red";redditRequest('morechildren',{link_id:link_id,children:children,depth:depth,id:id});return false;}function editcomment(id){new Comment(id).edit();};function cancelReply(canceler){new Comment(_id(canceler)).cancel();};function reply(id){if(logged){var com=new Comment(id).reply();}else{showcover(true,'reply_'+id);}};function chkcomment(form){if(form.replace.value){return post_form(form,'editcomment');}else{return post_form(form,'comment');}};function clearTitle(box){if(box.rows&&box.rows<7||box.style.color=="gray"||box.style.color=="#808080"){box.value="";box.style.color="black";if(box.rows){box.rows=7;}try{box.focus();}catch(e){};}}function hidecomment(id){var com=new Comment(id);com.collapse();return false;}function showcomment(id){var com=new Comment(id);com.uncollapse();return false;}Message=Comment;Message.message=Comment.comment;
function subscribe(checkbox,id){if(!logged){return showcover();}if(checkbox.checked){action='sub';set_score(id,1);}else{action='unsub';set_score(id,0);}redditRequest_no_response('subscribe',['sr',id,'action',action,'uh',modhash]);}function Subreddit(id){}Subreddit.prototype=new Thing();function map_links_by_sr(srid,func){var chx= $("sr_sel_chx_"+srid);var count=0;if(chx){chx=chx.checked;}for(var s in sr){if(sr[s]==srid){func(new Link(s),chx);count+=1;}}return count;}var changed_srs={};function change_sr(srid){var chx= $("sr_sel_chx_"+srid);var srs_list=[];if(changed_srs[srid]==null){changed_srs[srid]=chx.checked;}else{changed_srs[srid]=null;}var show_save=false;for(var x in changed_srs){if(!(x in Object.prototype)&&changed_srs[x]!=null){show_save=true;break;}}if(show_save){show('subscr_sub');}else{hide('subscr_sub');}if(chx.checked){show_by_srid(srid,changed_srs);}else{hide_by_srid(srid,changed_srs);}var box= $("sr_sel_"+srid);box.className=(chx.checked&&'selected')||"";return true;}function hide_by_srid(srid,sr_deltas){var res=map_links_by_sr(srid,function(link,checked){link.hide(true);});Listing.fetch_more(sr_deltas,null,res);}function show_by_srid(srid,sr_deltas){var res=map_links_by_sr(srid,function(link,checked){link.show(true);});if(!res){Listing.fetch_more(sr_deltas,srid);}else{new Listing('').reset_visible_count();}}
var upm="arrow upmod";var upr="arrow up";var downm="arrow downmod";var downr="arrow down";var upcls=[upr,upr,upm];var downcls=[downm,downr,downr];var scorecls=["score down","score","score up"];function cookieName(name){return(logged||'')+"_"+name;}function createCookie(name,value,days){if(days){var date=new Date();date.setTime(date.getTime()+(days*24*60*60*1000));var expires="; expires="+date.toGMTString();}else expires="";document.cookie=cookieName(name)+"="+value+expires+"; path=/";}function readCookie(name){var nameEQ=cookieName(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 '';}function set_score(id,dir){var label=vl[id];var score= $("score_"+id);score.className=scorecls[dir+1];score.innerHTML=label[dir+1];}function mod(id,uc){var up= $("up_"+id);var down= $("down_"+id);var dir=-1;if(uc&&up.className==upm||!uc&&down.className==downm){dir=0;}else if(uc){dir=1;}if(logged){redditRequest_no_response('vote',{id:id,uh:modhash,dir:dir});}else{return showcover(true,'vote_'+id);}up.className=upcls[dir+1];down.className=downcls[dir+1];set_score(id,dir);}
var style='reddit';var cur_menu=null;var have_open=false;function open_menu(menu){for(var i=0;i<menu.childNodes.length;i++){child=menu.childNodes[i];if(child.className=="drop-choices"){child.style.visibility='visible';child.style.top=menu.offsetHeight+'px';if(menu.offsetWidth>child.offsetWidth){child.style.width=menu.offsetWidth+'px';}break;}}menu.onclick=null;cur_menu=menu;have_open=true;}function close_menus(){uls=document.getElementsByTagName('DIV');for(var i=0;i<uls.length;i++){var ul=uls[i];var menu=ul.parentNode;if(menu!=cur_menu&&ul.className=='drop-choices'){ul.style.visibility='hidden';menu.onclick=function(){return open_menu(this);}}}if(!cur_menu){have_open=false;}cur_menu=null;}function hover_open_menu(menu){if(have_open){open_menu(menu);close_menus();}}function init(){updateClicks();stc= $("siteTable_comments");}function deletetoggle(link,type){var parent=link.parentNode;var form=parent.parentNode;link.blur();var q=document.createElement('span');q.className='question';q.innerHTML=form.question.value;var yes=document.createElement('a');yes.className="yes";yes.innerHTML=form.yes.value;yes.href='javascript:void(0)';var slash=document.createTextNode('/');var no=document.createElement('a');no.className="no";no.innerHTML=form.no.value;no.href='javascript:void(0)';var oldtext=parent.innerHTML;no.onclick=function(){return untoggle(false,parent,oldtext,type)};yes.onclick=function(){return untoggle(true,parent,oldtext,type)};q.appendChild(yes);q.appendChild(slash);q.appendChild(no);parent.innerHTML='';parent.appendChild(q);return false;}function untoggle(execute,parent,oldtext,type){if(execute){var form=parent.parentNode;var uh=modhash;parent.innerHTML=form.executed.value;if(type=='del'){post_form(form,type,function(){return ""});}else if(typeof(type)=="string"){post_form(form,type,function(){return ""});}else if(typeof(type)=="function"){type(form.id.value,uh);}}else{parent.innerHTML=oldtext;}return false;}function chklogin(form){var op=field(form.op);var status= $("status_"+op);if(status){status.innerHTML=_global_submitting_tag;};if(op=='login'||op=='login-main'){post_form(form,'login');}else{post_form(form,'register');}return false;}function toggle(a_tag,op){var form=a_tag.parentNode;post_form(form,op,function(){return ''});var action=form.action.value;var toggled=form.toggled_label.value;form.toggled_label.value=a_tag.innerHTML;a_tag.innerHTML=toggled;var toggled_action=form.toggled_action.value;form.toggled_action.value=form.action.value;form.action.value=toggled_action;return false;}function resizeCookie(name,size){var c=readCookie(name);if(c.length>size){var i=size;while(i>=0&&c[i--]!=';'){}createCookie(name,(i&&c.slice(0,i+1))||'');}}function updateClicks(){var clicks=readCookie("click");if(clicks){clicks=clicks.split(':');for(var i=0;i<clicks.length;i++){setClick(clicks[i]);}}}function showlang(){offset=window.pageYOffset||document.body.scrollTop||document.documentElement.scrollTop; $('langcover').style.top=offset+'px'; $('langpopup').style.top=40+offset+'px';show("langcover","langpopup");return false;}function showcover(warning,reason){offset=window.pageYOffset||document.body.scrollTop||document.documentElement.scrollTop;if(warning){show('cover_msg','cover_disclaim');}else{hide('cover_msg','cover_disclaim');} $('loginpopup').style.top=40+offset+'px';if(reason=='sr_change_'){reason+=make_sr_list(changed_srs);}if(reason){ $('login_login').elements.reason.value=reason; $('login_reg').elements.reason.value=reason;}new_captcha();show("cover","loginpopup");return false;}function hidecover(cover,loginpopup){hide(cover,loginpopup);}function check_some(){var have_checked=false;var elements= $("all-langs").form.elements;for(var i=0;i<elements.length;i++){el=elements[i];if(el.name.indexOf("lang-")!=-1&&el.checked){have_checked=true;break;}}if(have_checked){var some= $("some-langs");some.checked="checked";}}function clear_all(){var all= $("all-langs");if(!all.checked)return;var elements=all.form.elements;for(var i=0;i<elements.length;i++){el=elements[i];if(el.name.indexOf("lang-")!=-1)el.checked=false;}}function click(id){setClick(id);setClickCookie(id);return true;}function frame(a_tag,id){click(id);a_tag.href="/goto?id="+id;return true;}function set_sort(where,sort){redditRequest('sort',{sort:sort,where:where});return true;}
