separated update user data block to different functions