Roles refactor