added role mangement functions