modified UserContoller 3