migration user functionality