abstract update 2