update to use eval