Extended to add roles (admin, member and outcast)