implements some update interfaces