handles update