не зовсім правльна логіка: ти зберігаєш роль окремо від інших параметрів. якщо вони зафейляться, то роль все одно буде змінена