function twitterCallback2(C) {
	var A=[];
	for( var D=0; D<C.length; D++ ) {
		var E=C[D].user.screen_name;
		var G=C[D].source;
		if(C[D].in_reply_to_screen_name != null){
			var H= " in reply to <a href=\"http://www.twitter.com/"+C[D].in_reply_to_screen_name+"\">"+C[D].in_reply_to_screen_name+"</a>";
		} else {
			var H="";
		}
		var B=C[D].text.replace(/((https?|s?ftp|ssh)\:\/\/[^"\s\<\>]*[^.,;'">\:\s\<\>\)\]\!])/g,function(F) {
			return'<a href="'+F+'">'+F+"</a>"
		}).replace(/\B@([_a-z0-9]+)/ig,function(F) {
			return F.charAt(0)+'<a href="http://www.twitter.com/'+F.substring(1)+'">'+F.substring(1)+"</a>"
		});
		A.push("<li><span>"+B+'</span> <a href="http://twitter.com/'+E+"/statuses/"+C[D].id+'">'+relative_time(C[D].created_at)+"</a> from "+G+""+H+"</li>")
	}
	document.getElementById("twitter_update_list").innerHTML=A.join("")
}

function relative_time(C) {
	var B=C.split(" ");C=B[1]+" "+B[2]+", "+B[5]+" "+B[3];
	var A=Date.parse(C);var D=(arguments.length>1)?arguments[1]:new Date();
	var E=parseInt((D.getTime()-A)/1000);E=E+(D.getTimezoneOffset()*60);
	
	if( E<60 ) {
		return"less than a minute ago"
	} else {
		if( E<120 ) {
			return"about a minute ago"
		} else {
			if( E<(60*60) ) {
				return(parseInt(E/60)).toString()+" minutes ago"
			} else {
				if( E<(120*60) ) {
					return"about an hour ago"
				} else {
					if( E<(24*60*60) ) {
						return"about "+(parseInt(E/3600)).toString()+" hours ago"
					} else {
						if( E<(48*60*60) ) {
							return"1 day ago"
						} else {
							return(parseInt(E/86400)).toString()+" days ago"
						}	
					}	
				}	
			}	
		}	
	}
};