clean up eval, move wrap to wrap