abstract update.