JFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3RbrJFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr MRe|@sddlZddlZddlZddlmZeejjZddZ GdddeZGdddeZ eej_eej _d ej kreej d _ndS) N)_get_unpatchedc CsNd}xA|D]9}yt|ddgjdSWq tk rEYq Xq WdS)z9 Return True if Cython or Pyrex can be imported. Cython.Distutils.build_extPyrex.Distutils.build_extfromlist build_extTF)rr) __import__r Exception)Z pyrex_implsZ pyrex_implr //tmp/pip-l4uy7dan-build/setuptools/extension.py have_pyrex s   r c@s.eZdZdZddZddZdS) Extensionz7Extension that uses '.c' files in place of '.pyx' filescOs-tj|||ts)|jndS)N) _Extension__init__r _convert_pyx_sources_to_c)selfargskwr r r rs zExtension.__init__cCs+dd}tt||j|_dS)zconvert .pyx extensions to .ccSs*|jdr&|ddd}n|S)Nz.pyxz.c)endswith)sourcer r r pyx_to_c"sz5Extension._convert_pyx_sources_to_c..pyx_to_cN)listmapsources)rrr r r r s z#Extension._convert_pyx_sources_to_cN)__name__ __module__ __qualname____doc__rrr r r r r s  r c@seZdZdZdS)Libraryz=Just like a regular Extension, but built as a library insteadN)rrrrr r r r r(s rzdistutils.command.build_ext) sysdistutils.core distutilsdistutils.extensionZsetuptools.distrcorer r r r extensionmodulesr r r r s