improve previous update