Correct update logic