roles manipulation core