refactor evaluation utility