don't need to eval everything