updated eval functions