Updated with new and improved User model