update function fix