result not updated by calculate