added update callbacks