switch eval to callback function.