calcUpdate function updated