fix role bugs