refactored Role
refactored User