added elapsed time to update functions