tiny abstract update