refactors evaluation