fixed order of update