added roles feature