refactor. multiple users