+ update function fixed