fixed update method