def get(self, usercode=None):
		self.init_session()
		if self.do_redirect(): return
			
		if usercode is None:
			usercode = self.get_key('usercode')
			if usercode is None: # no session
				self.redirect('/login')
				return
		elif usercode[0] == '/':
			usercode = usercode[1:]
			
		your_friends = (usercode == self.get_key('usercode'))
			
		userdata = UserData.get_by_code(usercode)
		if your_friends:
			friend_requests = FriendRequest.get_who_requested_to_follow_user(usercode)
			request_codes = [request.my_code for request in friend_requests]
			num_requests = len(request_codes)
			if num_requests == 0:
				request_data = []
			else:
				request_data = UserData.get_by_codes(request_codes)
			self.template_values.update({
				'num_requests': num_requests,
				'request_data': request_data
			})
		
		if not your_friends and userdata.friends_hidden_by_default:
			deny_listing = True
		else:
			deny_listing = False
			friends = Friend.get_who_i_follow(usercode)
			friend_codes = [friend.their_code for friend in friends]
			num_friends = len(friend_codes)
			if num_friends == 0:
				friend_data = []
			else:
				friend_data = UserData.get_by_codes(friend_codes)
			self.template_values.update({
				'num_friends': num_friends,
				'friend_data' : friend_data,
			})
			
		self.template_values.update({
			'nickname': userdata.nickname,
			'your_friends': your_friends,
			'deny_listing' : deny_listing
		})
		
		path = get_template_path('list_friends.html')
		self.response.out.write(template.render(path, self.template_values, debug=True))