refactored user profile.