Improved user model