improved cythonize