§
    `Štj¾P  ã                   ó  — d dl Z d dlZd dlZd dlZd dlZd dlZd dlmZ d dlm	Z	 d dl
mZ d dlmZ d dlmZmZ d dl
Z
d dlmZ d dlmZ d d	lmZmZmZmZmZmZmZ d
e	d<   de	d<    G d„ de¦  «        Z G d„ d¦  «        ZdS )é    N)Úconfig)ÚLANG_EXT)Úlog)Ú	copy_file)ÚCompileErrorÚ	LinkError)Úfilepath_from_subprocess_output)Úgenerate_manifest)Úcheck_gcc_function_attributeÚ,check_gcc_function_attribute_with_intrinsicsÚcheck_gcc_variable_attributeÚcheck_gcc_version_at_leastÚcheck_inlineÚcheck_restrictÚcheck_compiler_gccz.fÚf77z.f90Úf90c                   óÔ   — e Zd Zexj        dgz  c_        d„ Zd„ Zd„ Zd„ Zd„ Z	dd	„Z
	 dd
„Z	 dd„Z	 	 dd„Zdd„Z	 	 	 dd„Z	 	 	 dd„Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zdd„Z	 	 	 d d„ZdS )!r   )z
fcompiler=Nz!specify the Fortran compiler typec                 ó<   — d | _         t          j        | ¦  «         d S ©N)Ú	fcompilerÚ
old_configÚinitialize_options©Úselfs    ú\/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/numpy/distutils/command/config.pyr   zconfig.initialize_options$   s    € ØˆŒÝÔ% dÑ+Ô+Ð+Ð+Ð+ó    c                 óÄ  — t          j        | ¦  «         ddlm}m} t
          j        dk    �r| j        j        dv rô| j        j	        s–	 | j         
                    ¦   «          n{# t          $ rn}t          j        d¦  «        || j        j        j        fz  }t!          t          j        d¦  «        ¦  «         t"          j                             |¦  «        |‚d }~ww xY wddlm} |                     ¦   «         dk    r4| j        j        | j        j        fD ]}d	|vr|                     d	¦  «         Œt3          | j        |¦  «        s— || j        | j        d
| j        ¬¦  «        | _        | j        �o| j                             | j        ¦  «         | j                             ¦   «         r9| j                             | ¦  «         | j                              ¦   «          d S d S d S d S )Nr   )Ú	FCompilerÚnew_fcompilerÚwin32)ÚmsvcÚintelwÚintelemwa>                          Could not initialize compiler instance: do you have Visual Studio
                        installed?  If you are trying to build with MinGW, please use "python setup.py
                        build -c mingw32" instead.  If you have Visual Studio installed, check it is
                        correctly installed, and the right version (VS 2015 as of this writing).

                        Original exception was: %s, and the Compiler class was %s
                        ============================================================================zd                        ============================================================================)Úmsvc9compileré
   z	/MANIFESTé   )ÚcompilerÚdry_runÚforceÚ
c_compiler)!r   Ú_check_compilerÚnumpy.distutils.fcompilerr   r    ÚsysÚplatformr(   Úcompiler_typeÚinitializedÚ
initializeÚOSErrorÚtextwrapÚdedentÚ	__class__Ú__name__ÚprintÚ	distutilsÚerrorsÚDistutilsPlatformErrorr%   Úget_build_versionÚldflags_sharedÚldflags_shared_debugÚappendÚ
isinstancer   r)   Ú	customizeÚdistributionÚget_versionÚcustomize_cmdÚshow_customization)r   r   r    ÚeÚmsgr%   Úldflagss          r   r,   zconfig._check_compiler(   sD  € ÝÔ" 4Ñ(Ô(Ð(ØFÐFÐFÐFÐFÐFÐFÐFåŒ<˜7Ò"Ñ"¨¬Ô(CØ(Fð)Gð )Gð ”=Ô,ð NðNØ”M×,Ò,Ñ.Ô.Ð.Ð.øÝð Nð Nð NÝ"œ/ð +hñ iô ið ˜dœmÔ5Ô>Ð?ñ@�Cõ �(œ/ð +hñ iô iñ jô jð jå#Ô*×AÒAÀ#ÑFÔFÈAÐMøøøøðNøøøð" 0Ð/Ð/Ð/Ð/Ð/Ø×.Ò.Ñ0Ô0°BÒ6Ð6Ø $¤Ô <Ø $¤Ô Bð Dð 4ð 4�Gà"¨'Ð1Ð1ØŸš {Ñ3Ô3Ð3øå˜$œ.¨)Ñ4Ô4ð 	8Ø*˜]°D´NØ37´<ÀqØ6:´mðEñ Eô EˆDŒNð Œ~Ð)Ø”×(Ò(¨Ô):Ñ;Ô;Ð;Ø”>×-Ò-Ñ/Ô/ð 8Ø”N×0Ò0°Ñ6Ô6Ð6Ø”N×5Ò5Ñ7Ô7Ð7Ð7Ð7ð	8ð 	8ð *Ð)ð8ð 8s   Á	A# Á#
CÁ-A)CÃCc                 óÌ   — ddl m} ddlm} | j        }|dv r| j        | _        | j        € ||›d�¦  «        ‚	  || f|z   Ž }n# ||f$ r}|| _        ||‚d }~ww xY w|| _        |S )Nr   )r   )ÚDistutilsExecError©r   r   z compiler is not set)Údistutils.ccompilerr   Údistutils.errorsrJ   r(   r   )	r   ÚmthÚlangÚargsr   rJ   Úsave_compilerÚretrF   s	            r   Ú_wrap_methodzconfig._wrap_methodX   sº   € Ø4Ð4Ð4Ð4Ð4Ð4Ø7Ð7Ð7Ð7Ð7Ð7ØœˆØ�>Ð!Ð!Ø œNˆDŒMØŒ=Ð Ø�,¸4¸4¸4ÐAÑBÔBÐBð	&Ø�#˜˜ ™Ð&ˆCˆCøØ" LÐ1ð 	&ð 	&ð 	&Ø)ˆDŒMØ AÐ%øøøøð	&øøøð &ˆŒØˆ
s   º	A ÁAÁ
AÁAc                 ó”   — |                       t          j        |||||f¦  «        \  }}| j                             |dz   ¦  «         ||fS )Nz.d)rS   r   Ú_compileÚ
temp_filesr?   )r   ÚbodyÚheadersÚinclude_dirsrO   ÚsrcÚobjs          r   rU   zconfig._compileh   sU   € Ø×$Ò$¥ZÔ%8¸$Ø&*¨G°\À4Ð%HñJô J‰ˆˆSð 	Œ×Ò˜s T™zÑ*Ô*Ð*Ø�Cˆxˆr   c           
      óœ  — | j         j        dk    �rö|pg d d …         }|pg d d …         }|dv r²d}| j        r©| j        j        pg D ]p}|                     d¦  «        rD	 t          j        dd|g¦  «        }t          |¦  «        }n# t          t
          j	        f$ r Y nw xY w| 
                    |¦  «         Œq| j        j        pg D ]}||vr| 
                    |¦  «         Œ|D �]#}|                     d¦  «        rŒd}	|pg D ]H}
t          j                             |
d|z  ¦  «        }t          j                             |¦  «        rd	}	 nŒI|	rŒkd}	|D ]•}
t          j                             |
d
|z  ¦  «        }t          j                             |¦  «        rQt          j                             |
d|z  ¦  «        }t!          ||¦  «         | j         
                    |¦  «         d	}	 nŒ–|	r�Œ	t%          j        d|›d|›�¦  «         �Œ%n| j         j        dk    rt)          | ¦  «         |                      t,          j        |||||||f¦  «        S )Nr"   rK   Úcz/usr/libÚcygpathz-wFz%s.libTzlib%s.azcould not find library z in directories Úmingw32)r(   r0   r   Úlibrary_dirsÚ
startswithÚ
subprocessÚcheck_outputr	   r3   ÚCalledProcessErrorr?   Ú	librariesÚosÚpathÚjoinÚisfiler   rV   r   Úwarnr
   rS   r   Ú_link)r   rW   rX   rY   re   r`   rO   ÚdÚlibnameÚ
fileexistsÚlibdirÚlibfileÚlibfile2s                r   rk   zconfig._linkp   sä  € ð Œ=Ô&¨Ò.Ñ.Ø"˜ b¨!¨!¨!Ô,ˆIØ(Ð.¨B°°°Ô2ˆLØ�~Ð%Ð%Ø�Ø”>ð 6Ø!œ^Ô8Ð>¸Bð /ð /˜ð Ÿ<š<¨
Ñ3Ô3ð GðGÝ$.Ô$;¸YØ=AÀ1ð=Fñ %Gô %G õ
 %DÀAÑ$FÔ$F  øõ %,­ZÔ-JÐ#Kð %ð %ð %Ø $ ð%øøøð %×+Ò+¨AÑ.Ô.Ð.Ð.Ø#'¤>Ô#;Ð#A¸rð 6ð 6˜Ø"¨)Ð3Ð3Ø%×,Ò,¨WÑ5Ô5Ð5øØ$ð 4ñ 4�Ø×%Ò% fÑ-Ô-Ð7¨xØ"�
Ø*Ð0¨bð ð �FÝ œgŸlšl¨6°8¸wÑ3GÑHÔH�GÝ”w—~’~ gÑ.Ô.ð Ø%)˜
Ø˜ðð Ð'˜xà"�
Ø*ð 	ð 	�FÝ œgŸlšl¨6°9ÀÑ3HÑIÔI�GÝ”w—~’~ gÑ.Ô.ð õ $&¤7§<¢<°¸ÀGÑ8LÑ#MÔ#M˜Ý! '¨8Ñ4Ô4Ð4Øœ×.Ò.¨xÑ8Ô8Ð8Ø%)˜
Ø˜ðð Ð'™xÝ”�Ø#˜G˜G \ \ð3ñ 4ô 4ð 4ñ 4ð-4ð0 Œ]Ô(¨IÒ5Ð5Ý˜dÑ#Ô#Ð#Ø× Ò ¥Ô!1°4Ø"&¨°Ø"+¨\¸4ð"AñBô Bð 	Bs   ÁBÂBÂBNr]   c                 óZ   — |                       ¦   «          |                      d|g|¦  «        S )Nz2/* we need a dummy line to make distutils happy */)r,   Útry_compile)r   ÚheaderrY   r`   rO   s        r   Úcheck_headerzconfig.check_header¦   s6   € Ø×ÒÑÔÐØ×ÒØDØ�˜,ñ(ô (ð 	(r   c                 óŠ   — |                       ¦   «          t          j        d¦  «        ||fz  }|                      |||¦  «        S )Nz¨
            int main(void)
            {
            #ifndef %s
                (void) %s;
            #endif
                ;
                return 0;
            }©r,   r4   r5   rs   ©r   ÚsymbolrX   rY   rW   s        r   Ú
check_declzconfig.check_decl¬   sS   € à×ÒÑÔÐÝŒð  ñ ô ð ˜VÐ$ñ%ˆð ×Ò  g¨|Ñ<Ô<Ð<r   c                 óˆ   — |                       ¦   «          t          j        d¦  «        |fz  }|                      |||¦  «        S )NzÇ
            int main(void)
            {
            #if %s
            #else
            #error false or undefined macro
            #endif
                ;
                return 0;
            }rw   rx   s        r   Úcheck_macro_truezconfig.check_macro_true»   sP   € à×ÒÑÔÐÝŒð 	 ñ 	ô 	ð �Iñ	ˆð ×Ò  g¨|Ñ<Ô<Ð<r   c                 ó<  — |                       ¦   «          t          j        d¦  «        d|iz  }d}	 	 |                      |d|iz  ||d¦  «         d}n# t          j        j        $ r d}Y nw xY w|                      ¦   «          n# |                      ¦   «          w xY w|S )zYCheck type availability. Return True if the type can be compiled,
        False otherwisez³
            int main(void) {
              if ((%(name)s *) 0)
                return 0;
              if (sizeof (%(name)s))
                return 0;
            }
            ÚnameFÚtyper]   T)r,   r4   r5   rU   r9   r:   r   Ú_clean)r   Ú	type_namerX   rY   r`   rW   Ústs          r   Ú
check_typezconfig.check_typeË   sÐ   € ð 	×ÒÑÔÐõ Œð  ñ ô ð ˜IÐ&ñ'ˆð ˆð	ðØ—’˜d f¨iÐ%8Ñ8Ø ¨sñ4ô 4ð 4à��øÝÔ#Ô0ð ð ð Ø���ðøøøð �KŠK‰MŒMˆMˆMøˆD�KŠK‰MŒMˆMˆMøøøàˆ	s)   ²A ÁB ÁA+Á(B Á*A+Á+B ÂBc                 ó  — |                       ¦   «          t          j        d¦  «        }|                      |d|iz  ||d¦  «         |                      ¦   «          |r_t          j        d¦  «        }|D ]H}	 |                      |||dœz  ||d¦  «         |                      ¦   «          |c S # t
          $ r Y ŒEw xY wt          j        d¦  «        }d}d}		 	 |                      |||	dœz  ||d¦  «         |                      ¦   «          n# t
          $ r |	d	z   }d
|	z  d	z   }	Y nw xY wŒR|	}
||
k    r\|
|z
  d
z  |z   }		 |                      |||	dœz  ||d¦  «         |                      ¦   «          |	}
n# t
          $ r |	d	z   }Y nw xY w||
k    °\|S )zCheck size of a given type.a,  
            typedef %(type)s npy_check_sizeof_type;
            int main (void)
            {
                static int test_array [1 - 2 * !(((long) (sizeof (npy_check_sizeof_type))) >= 0)];
                test_array [0] = 0

                ;
                return 0;
            }
            r   r]   aW  
                typedef %(type)s npy_check_sizeof_type;
                int main (void)
                {
                    static int test_array [1 - 2 * !(((long) (sizeof (npy_check_sizeof_type))) == %(size)s)];
                    test_array [0] = 0

                    ;
                    return 0;
                }
                )r   Úsizea3  
            typedef %(type)s npy_check_sizeof_type;
            int main (void)
            {
                static int test_array [1 - 2 * !(((long) (sizeof (npy_check_sizeof_type))) <= %(size)s)];
                test_array [0] = 0

                ;
                return 0;
            }
            r   Tr'   é   )r,   r4   r5   rU   r€   r   )r   r�   rX   rY   r`   ÚexpectedrW   r…   ÚlowÚmidÚhighs              r   Úcheck_type_sizezconfig.check_type_sizeè   s@  € à×ÒÑÔÐõ Œð 
 ñ 
ô 
ˆð 	�Š�d˜f iÐ0Ñ0Ø˜ sñ	,ô 	,ð 	,à�Š‰Œˆàð 	Ý”?ð 
$ñ 
ô 
ˆDð !ð ð �ðØ—M’M $°)ÀTÐ)JÐ)JÑ"JØ# \°3ñ8ô 8ð 8à—K’K‘M”M�MØ�K�K�KøÝ#ð ð ð Ø�Dðøøøõ Œð 
 ñ 
ô 
ˆð ˆØˆð		"ð"Ø—’˜d¨iÀÐ%EÐ%EÑEØ ¨sñ4ô 4ð 4à—’‘”�ØøÝð "ð "ð "à˜A‘g�Ø˜#‘g ‘k���ð"øøøð		"ð ˆà�TŠkˆkØ˜#‘: !Ñ# cÑ)ˆCðØ—’˜d¨iÀÐ%EÐ%EÑEØ ¨sñ4ô 4ð 4à—’‘”�Ø��øÝð ð ð Ø˜A‘g���ðøøøð �TŠkˆkð ˆ
s6   Á53B+Â+
B8Â7B8Ã2D ÄD"Ä!D"Ä:4E/ Å/FÆ FFc	                 ó˜  — |                       ¦   «          g }	|rFt          |¦  «        t          k    r|	                     |¦  «         n|	                     d|z  ¦  «         |	                     d¦  «         |	                     d|z  ¦  «         |	                     d¦  «         |	                     d¦  «         |r!|€d}|	                     d|›d|›d	�¦  «         n|	                     d
|z  ¦  «         |	                     d¦  «         |	                     d¦  «         d                     |	¦  «        dz   }	|                      |	||||¦  «        S )Núint %s (void);ú#ifdef _MSC_VERú#pragma function(%s)ú#endifúint main (void) {Ú ú  ú(ú);ú  %s;ú  return 0;Ú}ú
)r,   r   Ústrr?   rh   Útry_link)
r   ÚfuncrX   rY   re   r`   ÚdeclÚcallÚ	call_argsrW   s
             r   Ú
check_funczconfig.check_func;  sY  € ð 	×ÒÑÔÐØˆØð 	5Ý�D‰zŒz�SÒ Ð Ø—’˜DÑ!Ô!Ð!Ð!à—’Ð,¨tÑ3Ñ4Ô4Ð4ð
 	�ŠÐ%Ñ&Ô&Ð&Ø�ŠÐ*¨TÑ1Ñ2Ô2Ð2Ø�Š�HÑÔÐØ�ŠÐ'Ñ(Ô(Ð(Øð 	(ØÐ Ø�	Ø�KŠKˆK t t t¨Y¨Y¨YÐ7Ñ8Ô8Ð8Ð8à�KŠK˜ $™Ñ'Ô'Ð'Ø�Š�MÑ"Ô"Ð"Ø�Š�CÑÔÐØ�yŠy˜‰Œ Ñ%ˆà�}Š}˜T 7¨LØ&¨ñ6ô 6ð 	6r   c	                 ó  — |                       ¦   «          g }	|r4|                     ¦   «         D ]\  }
}|r|	                     d|
z  ¦  «         Œ |	                     d¦  «         |D ]}|	                     d|z  ¦  «         Œ|	                     d¦  «         |	                     d¦  «         |r`|D ]\}
|
|v r>||
         r6|r|
|v r||
         sd}n||
         }|	                     d|
›d|›d	�¦  «         ŒD|	                     d
|
z  ¦  «         Œ]n|D ]}
|	                     d
|
z  ¦  «         Œ|	                     d¦  «         |	                     d¦  «         d                     |	¦  «        dz   }	|                      |	||||¦  «        S )a0  Check a list of functions at once.

        This is useful to speed up things, since all the functions in the funcs
        list will be put in one compilation unit.

        Arguments
        ---------
        funcs : seq
            list of functions to test
        include_dirs : seq
            list of header paths
        libraries : seq
            list of libraries to link the code snippet to
        library_dirs : seq
            list of library paths
        decl : dict
            for every (key, value), the declaration in the value will be
            used for function in key. If a function is not in the
            dictionary, no declaration will be used.
        call : dict
            for every item (f, value), if the value is True, a call will be
            done to the function f.
        r�   rŽ   r�   r�   r‘   r’   r“   r”   r•   r–   r—   r˜   r™   )r,   Úitemsr?   rh   r›   )r   ÚfuncsrX   rY   re   r`   r�   rž   rŸ   rW   ÚfÚvrœ   rP   s                 r   Úcheck_funcs_oncezconfig.check_funcs_once]  sØ  € ð6 	×ÒÑÔÐØˆØð 	6ØŸ
š
™œð 6ð 6‘��1Øð 6Ø—K’KÐ 0°1Ñ 4Ñ5Ô5Ð5øð 	�ŠÐ%Ñ&Ô&Ð&Øð 	7ð 	7ˆDØ�KŠKÐ.°Ñ5Ñ6Ô6Ð6Ð6Ø�Š�HÑÔÐà�ŠÐ'Ñ(Ô(Ð(Øð 	)Øð -ð -�Ø˜�9�9  a¤�9Ø%ð ,¨!¨y¨.¨.¸YÀq¼\¨.Ø!˜˜à(¨œ|˜Ø—K’K�K¨q¨q¨q°$°$°$Ð 7Ñ8Ô8Ð8Ð8à—K’K ¨!¡Ñ,Ô,Ð,Ð,ð-ð ð )ð )�Ø—’˜G a™KÑ(Ô(Ð(Ð(Ø�Š�MÑ"Ô"Ð"Ø�Š�CÑÔÐØ�yŠy˜‰Œ Ñ%ˆà�}Š}˜T 7¨LØ&¨ñ6ô 6ð 	6r   c                 ó    — t          | ¦  «        S )zUReturn the inline keyword recognized by the compiler, empty string
        otherwise.)r   r   s    r   r   zconfig.check_inlineš  s   € õ ˜DÑ!Ô!Ð!r   c                 ó    — t          | ¦  «        S )zWReturn the restrict keyword recognized by the compiler, empty string
        otherwise.)r   r   s    r   r   zconfig.check_restrictŸ  s   € õ ˜dÑ#Ô#Ð#r   c                 ó    — t          | ¦  «        S )z$Return True if the C compiler is gcc)r   r   s    r   r   zconfig.check_compiler_gcc¤  s   € å! $Ñ'Ô'Ð'r   c                 ó$   — t          | ||¦  «        S r   )r   )r   Ú	attributer~   s      r   r   z#config.check_gcc_function_attribute¨  s   € Ý+¨D°)¸TÑBÔBÐBr   c                 ó(   — t          | ||||¦  «        S r   )r   )r   r«   r~   ÚcodeÚincludes        r   r   z3config.check_gcc_function_attribute_with_intrinsics«  s"   € å;¸DÀ)Ø<@À$ÈñQô Qð 	Qr   c                 ó"   — t          | |¦  «        S r   )r   )r   r«   s     r   r   z#config.check_gcc_variable_attribute°  s   € Ý+¨D°)Ñ<Ô<Ð<r   r   c                 ó&   — t          | |||¦  «        S )zYReturn True if the GCC version is greater than or equal to the
        specified version.)r   )r   ÚmajorÚminorÚ
patchlevels       r   r   z!config.check_gcc_version_at_least³  s   € õ *¨$°°u¸jÑIÔIÐIr   c                 óô  — t          j        dt          d¬¦  «         |                      ¦   «          d\  }}		 t	          ¦   «         }
	 |                      ||||||¦  «        \  }}}|
                     ¦   «          n*# t          $ r |
j        }	|
                     ¦   «          ‚ w xY wt          j
                             d|¦  «        }	 t          j        |gd¬¦  «        }	t          |	¦  «        }	n4# t          j        $ r}|j        }d}	Y d}~nd}~wt"          $ r d	}d}	Y nw xY wt%          t          d
¦  «        rlt          j        |¦  «        }t          j        |¦  «        rCt          j        |¦  «        }t-          j        d|fz  ¦  «         |t0          j        k    rt4          ‚n|}t-          j        d¦  «         n+# t8          t:          f$ r t-          j        d¦  «         Y nw xY w|                      ¦   «          ||	fS )z®Try to compile, link to an executable, and run a program
        built from 'body' and 'headers'. Returns the exit status code
        of the program and its output.
        zû
+++++++++++++++++++++++++++++++++++++++++++++++++
Usage of get_output is deprecated: please do not 
use it anymore, and avoid configuration checks 
involving running executable on the target machine.
+++++++++++++++++++++++++++++++++++++++++++++++++
r†   )Ú
stacklevel)éÿ   r’   ú.)Úcwdr’   Né   ÚWEXITSTATUSz subprocess exited with signal %dzsuccess!zfailure.)Úwarningsrj   ÚDeprecationWarningr,   Ú
GrabStdoutrk   ÚrestoreÚ	ExceptionÚdatarf   rg   rh   rb   rc   r	   rd   Ú
returncoder3   Úhasattrrº   ÚWIFSIGNALEDÚWTERMSIGr   ÚerrorÚsignalÚSIGINTÚKeyboardInterruptÚinfor   r   r€   )r   rW   rX   rY   re   r`   rO   Úuse_teeÚexitcodeÚoutputÚgrabberrZ   r[   ÚexeÚexcÚ
exitstatusÚsigs                    r   Ú
get_outputzconfig.get_output¸  sD  € õ 	Œð Lõ
 )°Qð	8ñ 	8ô 	8ð 	8ð 	×ÒÑÔÐØ"Ñˆ�&ð)	!Ý ‘l”lˆGðØ $§
¢
¨4°¸,Ø+4°lÀDñ!Jô !J‘��S˜#à—’Ñ!Ô!Ð!Ð!øÝð ð ð Ø œ�Ø—’Ñ!Ô!Ð!Øðøøøõ ”'—,’,˜s CÑ(Ô(ˆCðAõ $Ô0°#°¸CÐ@Ñ@Ô@�õ 9¸Ñ@Ô@��øõ Ô0ð ð ð Ø œ^�
Ø������øøøøÝð ð ð ð !�
Ø���ð	øøøõ •r˜=Ñ)Ô)ð 	&Ýœ>¨*Ñ5Ô5�Ý”> *Ñ-Ô-ð 0Ýœ+ jÑ1Ô1�CÝ”IÐ@ÀCÀ6ÑIÑJÔJÐJØ�fœmÒ+Ð+å/Ð/øà%�ÝŒH�ZÑ Ô Ð Ð øÝ�iÐ(ð 	!ð 	!ð 	!ÝŒH�ZÑ Ô Ð Ð Ð ð	!øøøà�Š‰ŒˆØ˜ÐÐs`   ·F7 Á2A9 Á8F7 Á9'B Â #F7 ÃC+ ÃF7 Ã+DÃ:	DÄF7 ÄDÄF7 ÄDÄBF7 Æ7%GÇG)NNr]   )NN)NNN)NNNN)NNNNFFN)r   r   )NNNNr]   N)r7   Ú
__module__Ú__qualname__r   Úuser_optionsr   r,   rS   rU   rk   ru   rz   r|   rƒ   r‹   r    r¦   r   r   r   r   r   r   r   rÒ   © r   r   r   r      sÔ  € € € € € ØÐÔØAð 
ñ 
ÐÔð,ð ,ð ,ð.8ð .8ð .8ð`ð ð ð ð ð ð4Bð 4Bð 4Bðl(ð (ð (ð (ð /3ð=ð =ð =ð =ð  59ð=ð =ð =ð =ð  @DØðð ð ð ð:Qð Qð Qð Qðh /3Ø04Ø59ð 6ð  6ð  6ð  6ðF /3Ø04Ø59ð;6ð ;6ð ;6ð ;6ðz"ð "ð "ð
$ð $ð $ð
(ð (ð (ðCð Cð CðQð Qð Qð
=ð =ð =ðJð Jð Jð Jð
 ;?Ø04Ø%)ð; ð ; ð ; ð ; ð ; ð ; r   r   c                   ó&   — e Zd Zd„ Zd„ Zd„ Zd„ ZdS )r½   c                 óN   — t           j        | _        d| _        | t           _        d S )Nr’   )r.   ÚstdoutÚ
sys_stdoutrÀ   r   s    r   Ú__init__zGrabStdout.__init__÷  s   € Ýœ*ˆŒØˆŒ	Ø�Œ
ˆ
ˆ
r   c                 óZ   — | j                              |¦  «         | xj        |z  c_        d S r   )rÚ   ÚwriterÀ   )r   rÀ   s     r   rÝ   zGrabStdout.writeü  s,   € ØŒ×Ò˜dÑ#Ô#Ð#Øˆ	Œ	�TÑˆ	Œ	ˆ	ˆ	r   c                 ó8   — | j                              ¦   «          d S r   )rÚ   Úflushr   s    r   rß   zGrabStdout.flush   s   € ØŒ×ÒÑÔÐÐÐr   c                 ó(   — | j         t          _        d S r   )rÚ   r.   rÙ   r   s    r   r¾   zGrabStdout.restore  s   € Ø”_�Œ
ˆ
ˆ
r   N)r7   rÓ   rÔ   rÛ   rÝ   rß   r¾   rÖ   r   r   r½   r½   õ  sP   € € € € € ðð ð ð
ð ð ð ð  ð  ð%ð %ð %ð %ð %r   r½   )rf   rÆ   rb   r.   r4   r»   Údistutils.command.configr   r   r   r9   r   Údistutils.file_utilr   rL   r   r   Únumpy.distutils.exec_commandr	   Ú numpy.distutils.mingw32ccompilerr
   Ú numpy.distutils.command.autodistr   r   r   r   r   r   r   r½   rÖ   r   r   ú<module>ræ      sµ  ðð
 
€	€	€	Ø €€€Ø Ð Ð Ð Ø 
€
€
€
Ø €€€Ø €€€à 9Ð 9Ð 9Ð 9Ð 9Ð 9Ø -Ð -Ð -Ð -Ð -Ð -Ø Ð Ð Ð Ð Ð Ø )Ð )Ð )Ð )Ð )Ð )Ø 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ø Ð Ð Ð Ø HÐ HÐ HÐ HÐ HÐ HØ >Ð >Ð >Ð >Ð >Ð >ðBð Bð Bð Bð Bð Bð Bð Bð Bð Bð Bð Bð Bð Bð Bð Bð Bð Bð €ˆ�Ø€ˆ�ðT ð T ð T ð T ð T ˆZñ T ô T ð T ðl%ð %ð %ð %ð %ñ %ô %ð %ð %ð %r   