
    ~Od2`                     0   d 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 dd	lmZ dd
lmZ ddlmZ ddlmZ ej        Zej        Zej        j        Zej        Zej        Zde de dZd Zd Zd Zd Zd ZddZd Zd Z d Z!dS )a  

f2py2e - Fortran to Python C/API generator. 2nd Edition.
         See __usage__ below.

Copyright 1999--2011 Pearu Peterson all rights reserved,
Pearu Peterson <pearu@cens.ioc.ee>
Permission to use, modify, and distribute this software is given under the
terms of the NumPy License.

NO WARRANTY IS EXPRESSED OR IMPLIED.  USE AT YOUR OWN RISK.
$Date: 2005/05/06 08:31:19 $
Pearu Peterson

    N)Path   )crackfortran)rules)cb_rules)auxfuncs)cfuncs)f90mod_rules)__version__)	capi_mapsa  Usage:

1) To construct extension module sources:

      f2py [<options>] <fortran files> [[[only:]||[skip:]] \
                                        <fortran functions> ] \
                                       [: <fortran files> ...]

2) To compile fortran files and build extension modules:

      f2py -c [<options>, <build_flib options>, <extra options>] <fortran files>

3) To generate signature files:

      f2py -h <filename.pyf> ...< same options as in (1) >

Description: This program generates a Python C/API file (<modulename>module.c)
             that contains wrappers for given fortran functions so that they
             can be called from Python. With the -c option the corresponding
             extension modules are built.

Options:

  --2d-numpy       Use numpy.f2py tool with NumPy support. [DEFAULT]
  --2d-numeric     Use f2py2e tool with Numeric support.
  --2d-numarray    Use f2py2e tool with Numarray support.
  --g3-numpy       Use 3rd generation f2py from the separate f2py package.
                   [NOT AVAILABLE YET]

  -h <filename>    Write signatures of the fortran routines to file <filename>
                   and exit. You can then edit <filename> and use it instead
                   of <fortran files>. If <filename>==stdout then the
                   signatures are printed to stdout.
  <fortran functions>  Names of fortran routines for which Python C/API
                   functions will be generated. Default is all that are found
                   in <fortran files>.
  <fortran files>  Paths to fortran/signature files that will be scanned for
                   <fortran functions> in order to determine their signatures.
  skip:            Ignore fortran functions that follow until `:'.
  only:            Use only fortran functions that follow until `:'.
  :                Get back to <fortran files> mode.

  -m <modulename>  Name of the module; f2py generates a Python/C API
                   file <modulename>module.c or extension module <modulename>.
                   Default is 'untitled'.

  '-include<header>'  Writes additional headers in the C wrapper, can be passed
                      multiple times, generates #include <header> each time.

  --[no-]lower     Do [not] lower the cases in <fortran files>. By default,
                   --lower is assumed with -h key, and --no-lower without -h key.

  --build-dir <dirname>  All f2py generated files are created in <dirname>.
                   Default is tempfile.mkdtemp().

  --overwrite-signature  Overwrite existing signature file.

  --[no-]latex-doc Create (or not) <modulename>module.tex.
                   Default is --no-latex-doc.
  --short-latex    Create 'incomplete' LaTeX document (without commands
                   \documentclass, \tableofcontents, and \begin{document},
                   \end{document}).

  --[no-]rest-doc Create (or not) <modulename>module.rst.
                   Default is --no-rest-doc.

  --debug-capi     Create C/API code that reports the state of the wrappers
                   during runtime. Useful for debugging.

  --[no-]wrap-functions    Create Fortran subroutine wrappers to Fortran 77
                   functions. --wrap-functions is default because it ensures
                   maximum portability/compiler independence.

  --include-paths <path1>:<path2>:...   Search include files from the given
                   directories.

  --help-link [..] List system resources found by system_info.py. See also
                   --link-<resource> switch below. [..] is optional list
                   of resources names. E.g. try 'f2py --help-link lapack_opt'.

  --f2cmap <filename>  Load Fortran-to-Python KIND specification from the given
                   file. Default: .f2py_f2cmap in current directory.

  --quiet          Run quietly.
  --verbose        Run with extra verbosity.
  --skip-empty-wrappers   Only generate wrapper files when needed.
  -v               Print f2py version ID and exit.


numpy.distutils options (only effective with -c):

  --fcompiler=         Specify Fortran compiler type by vendor
  --compiler=          Specify C compiler type (as defined by distutils)

  --help-fcompiler     List available Fortran compilers and exit
  --f77exec=           Specify the path to F77 compiler
  --f90exec=           Specify the path to F90 compiler
  --f77flags=          Specify F77 compiler flags
  --f90flags=          Specify F90 compiler flags
  --opt=               Specify optimization flags
  --arch=              Specify architecture specific optimization flags
  --noopt              Compile without optimization
  --noarch             Compile without arch-dependent optimization
  --debug              Compile with debugging information

Extra options (only effective with -c):

  --link-<resource>    Link extension module with <resource> as defined
                       by numpy.distutils/system_info.py. E.g. to link
                       with optimized LAPACK libraries (vecLib on MacOSX,
                       ATLAS elsewhere), use --link-lapack_opt.
                       See also --help-link switch.

  -L/path/to/lib/ -l<libname>
  -D<define> -U<name>
  -I/path/to/include/
  <filename>.o <filename>.so <filename>.a

  Using the following macros may be required with non-gcc Fortran
  compilers:
    -DPREPEND_FORTRAN -DNO_APPEND_FORTRAN -DUPPERCASE_FORTRAN
    -DUNDERSCORE_G77

  When using -DF2PY_REPORT_ATEXIT, a performance report of F2PY
  interface is printed out at exit (platforms: Linux).

  When using -DF2PY_REPORT_ON_ARRAY_COPY=<int>, a message is
  sent to stderr whenever F2PY interface makes a copy of an
  array. Integer <int> sets the threshold for array sizes when
  a message should be shown.

Version:     z
numpy Version: z
Requires:    Python 3.5 or higher.
License:     NumPy license (see LICENSE.txt in the NumPy source code)
Copyright 1999 - 2011 Pearu Peterson all rights reserved.
https://web.archive.org/web/20140822061353/http://cens.ioc.ee/projects/f2py2ec           	      t	   g g g g f\  }}}}d\	  }}}}}	}
}}}d}d}d}d}d}d}d}g }d\  }}|d d d}| D ]2}|d	k    r
|d
k    rd}|dk    rd}|dk    rd}%|d d         dk    r|                     |dd                     Q|dk    rd}Z|dk    rd}	c|dk    rd}l|dk    rd}u|dk    r|dz  }|dk    rd}|dk    rd}|dk    rd}|dk    rd}|dk    rd}|dk    rd}|dk    rd|d<   |dk    rd}|dk    rd}|dk    rd}|dk    rd|d <   |d!k    rd}|d"k    rd}|d d#         d$k    r)t          t                     t          j                     3|d%k    rd}=|d d         d&k    rQt
          j        d'                              |d(d                    d)|dd          z   t
          j        |d(d         <   |d d*         d+v rt          d,           d}
|d d*         d-v rd}
|d.k    rd/}|d         d0k    r4t          d1t          |          z             t          j                     |rd}|}|rd}|}%|	rd}	|}-|
r6d}
|                    |                    t          j                             e|r	d}||d2<   p|r	d}||d3<   {|r	d}||d4<   |dk    rn	 t          |          5  	 d d d            n# 1 swxY w Y   |                     |           # t           $ r!}t          d5|d6|d7           Y d }~d }~ww xY w|dk    r|                     |           |dk    r|                     |           4|s+|s)|s't          t"                     t          j                     t          j                            |          s(|st          d8|z             t          j        |           |r t          j                            ||          }|rHt          j                            |          r)d |vr%t          d9|z             t          j                     ||d:<   ||d;<   ||d<<   |dk    r|sd|d=<   n||d=<   |r||d><   |r||d?<   |r||d@<   |r||dA<   ||dB<   ||dC<   ||dD<   ||dE<   ||dF<   |                    d4d            ||fS )GN)	r   r   r   r   r   r   r   r   r   r   Tr   .)NN)	buildpathcoutputf2py_wrapper_output only:skip::   z--debug-z--lower--build-dirz
--no-lower--quietz	--verbosez--latex-docz--no-latex-docz
--rest-docz--no-rest-docz--wrap-functionsz--no-wrap-functionsz--short-latex
shortlatexz	--coutputz--f2py-wrapper-output--f2cmapz--overwrite-signaturezh-overwritez-h-m   z-vz--show-compilersz-includeuserincludes	   z	#include    --include_pathszHf2py option --include_paths is deprecated, use --include-paths instead.
--include-pathsz--skip-empty-wrappersF-zUnknown option %s
r   r   f2cmap_filez	OSError: z. Skipping file "z".
zCreating build directory %s
zFSignature file "%s" exists!!! Use --overwrite-signature to overwrite.
emptygendebugverbosedo-lowermodule	signsfile	onlyfuncs	skipfuncs
dolatexdoc	dorestdoc	wrapfuncsr   include_paths)appendprintf2py_versionsysexitr	   outneedsr   outmesserrmessreprextendsplitospathsepopenOSError	__usage__pathisdirmkdirjoinisfile
setdefault)	inputlinefilesr,   r+   r&   ff2f3f5f6f7f8f9f10r'   r%   dolcr-   r.   r/   r   r0   r*   
modulenameoptionsldetails                              1lib/python3.11/site-packages/numpy/f2py/f2py2e.pyscaninputlinerX      s   )+RR&E9i)B&Ar2r2r2r3GHDJIIIM&Iz%&*, ,G  a  a 77'\\AA'\\AA#XXAArrUj  LL122)^^DD-BB,DD)^^GG+qLGG-JJ"""JJ,II/!!II$$$II'''II/!!$%GL!!+BB)))BB*__CC)))%&GM""$YYBB$YYBBrrUd]],HJJJJ$$$BBrrUj  ON+221QrT7;;;+6122+>F!B$((ssV((([] ] ]BBssV(((BB)))HHqTS[[)DGG3444HJJJJ 	 BII 	 BJJ 	 BII 	 B  !4!45555 	 B!"GI 	 B-.G)** 	 C%&GM""!VVJ!WW                Q J J JHFHHqHHHIIIIIIIIJ"WWQ!VVQ e J i


7==##  	C3yABBB
 7GLLI66	 RW^^I.. =3O3OUYbc	e 	e 	e


"GJGG GIrzz)z
"
 '& )( )( )(&GL$GK$GK$GK,GO}d+++'>s<   LKLK#	#L&K#	'L
L,L''L,c                 b   |t           _        |d         t          _        |d         t          _        d|v r|d         t          _        d|v r|d         t          _        d|v r|d         t          _        |d         t          j        d d <   |d         t          _	        t          j        |           }d|v rt          d	|d         z             t          j        |          }|d         d
d          dk    r t          j                            |           nCt          |d         d          5 }|                    |           d d d            n# 1 swxY w Y   |d         |D ]}d|d         z  |d<   n|D ]}|d         |d<   |d         |D ]}d|d         z  |d<   n|D ]}|d         |d<   |S )Nr&   r'   r)   r,   r+   r0   r(   r*   zSaving signatures to file "%s"
istdoutwr   z
%smodule.cnamer   z%s-f2pywrappers.f)r   rT   r   r&   r'   f77modulenamer,   r+   r0   dolowercaser7   crack2fortranr4   rZ   writer>   )rH   rT   postlistpyfrI   mods         rW   callcrackfortranrd   J  s4   EM )L"9-L7%,X%6"g!(!5g!(!5$+O$<Lqqq!&z2L(//Hg2gk6JKLLL(22;$00JS!!!!gk*C00 A              y! 	8 	8C)CK7C	NN	8  	0 	0C$Y/C	NN$%- 	K 	KC)<s6{)JC%&&	K  	H 	HC)01F)GC%&&Os   *EEEc                 |   t          j                     t          d           g g i }}}| D ]}d|d         v rt          j        |           !d|v rG|d                                         D ],}||vrg ||<   ||                             |d                    -|                    |           |                    |d                    i }t          ||          D ]\  }}||v r:t          d|dd                    d ||         D                       d	           Cg }	d|v rj|d                                         D ]O}||v r3||v r/|	                    ||	                    |                              9t          d
| d| d           Pi ||<   t          ||         t          j        ||	                     |S )NzBuilding modules...
__user__r\   usez	Skipping module "z" which is used by ,c              3       K   | ]	}d |z  V  
dS )z"%s"N .0ss     rW   	<genexpr>zbuildmodules.<locals>.<genexpr>  s&      BBavzBBBBBB    z.
z		Module "z" uses nonexisting "z" which will be ignored.
)r	   buildcfuncsr7   r   buildcallbackskeysr1   ziprD   indexdict_appendr   buildmodule)
lstmodulesmnamesisusedbyitemuretr)   r\   ums
             rW   buildmodulesr   n  s6   
#$$$ "BXVG 
( 
(f%%#D))))}}e))++ 5 5A((&(QK&&tF|4444NN4   MM$v,''''
CGV,, B B8GchhBB8D>BBBBBBBD E E E E B++-- 8 8AH}}f		'&,,q//":;;;;7 7 71 7 7 78 8 8 8 CID	5#4VR#@#@AAAAJro   c                     |                                 D ]M\  }}|| vrg | |<   t          |t                    r| |         |z   | |<   2| |                             |           Nd S N)items
isinstancelistr1   )d_outd_inkvs       rW   ru   ru     sw    **,,  AE>>E!Ha 	Qx!|E!HH!HOOA ro   c                    t          j                     t          j                            t          j                            t          j                            }t          j                            |dd          }t          j                            |dd          }t          |           \  }}|t          _        t          j        |d                    t          ||          }i }|D ]M}d|v rG|d                                         D ],}	|	|vrg ||	<   ||	                             |d                    -N|D ]w}|d         dk    rid	|d         v r_|d         |v rUt#          d
|d          d                    d                    d ||d                  D                                            xd|v re|d         dk    rWt#          d           t#          t          j                            t(          j        d                   d|d         d           dS |D ]F}|d         dk    r8d|vrt-          d           t/          dt1          |d                   z            G|d         t          _        |t4          _        |d         t          _        t9          |          }
|
                                D ]}t;          |
|         ||d           |
S )au  
    Equivalent to running::

        f2py <args>

    where ``<args>=string.join(<list>,' ')``, but in Python.  Unless
    ``-h`` is used, this function returns a dictionary containing
    information on generated modules and their dependencies on source
    files.

    You cannot build extension modules with this function, that is,
    using ``-c`` is not allowed. Use the ``compile`` command instead.

    Examples
    --------
    The command ``f2py -m scalar scalar.f`` can be executed from Python as
    follows.

    .. literalinclude:: ../../source/f2py/code/results/run_main_session.dat
        :language: python

    srczfortranobject.hzfortranobject.cr$   rg   r\   blockzpython modulerf   z$Skipping Makefile build for module "z" which is used by {}
rh   c              3   "   K   | ]
}d | d V  dS )"Nrj   rk   s     rW   rn   zrun_main.<locals>.<genexpr>  s*       K KaQ K K K K K Kro   r*   r'   r   zKStopping. Edit the signature file and then run f2py on the signature file: r    
NzJTip: If your original code is Fortran source then you must use -m option.
z2All blocks must be python module blocks but got %sr&   r/   )csrch)r   reset_global_f2py_varsr<   rA   dirnameabspathr	   __file__rD   rX   r   rT   r   load_f2cmap_filerd   rr   r1   r7   formatbasenamer4   argvr8   	TypeErrorr9   debugoptionsr
   r/   r   ru   )comline_listf2pydirfobjhsrcfobjcsrcrH   rT   ra   rz   plistr|   r}   mns               rW   run_mainr     s   . ')))goobgoofo>>??Gw||GU,=>>Hw||GU,=>>H"<00NE7Hw}5666w//HH 2 2E>>5\&&(( 2 2H$$"$HQK""5=1111 N N>_,,uV}1L1LV}((,5= , , ,,2F K K8E&M3J K K KKK-M -MN N N g9!!]_ _ _W%%chqk2222GK4H4H4HJ K K K ' '>_,,g--ac c cPU7^$$& ' ' '	 - $G,H"L -H
x
 
 Chhjj @ @CGhX>>????Jro   c                    g g }}t          j        | dz   |z   dz             j        }|rt          |           }nd}d |D             D ]@} ||          r|                    ||d                    +|                    |           A||fS )z,
    Filter files by prefix and suffix.
    z.*z\Zr   c                 6    g | ]}|                                 S rj   )strip)rl   xs     rW   
<listcomp>z filter_files.<locals>.<listcomp>  s     ***q***ro   N)recompilematchlenr1   )	prefixsuffixrH   remove_prefixfilteredrestr   indfiles	            rW   filter_filesr     s     dHJv~.677=E &kk**E***  5;; 	OODJ''''KKT>ro   c                     t           j                            t           j                            | j                            }|S r   )r<   rA   r   r   )r)   ps     rW   
get_prefixr     s*    
8899AHro   c            
        $%&'()*+,-. ddl } t          j                            d          }t          j        |= d}	 t          j                            d          }n# t          $ r d}Y nw xY w|3t          j        |dz            }t          j        |dz   = t          j        |= nd}|                                 }t          j        d          $$fdt          j        dd         D             ..fdt          j        D             t          _        .rd	 .D             .t          j        d
          %%fdt          j        dd         D             ))fdt          j        D             t          _        g *d}t          j        dd         D ].}|dv rd}n|dk    rd}|s|dk    r*                    |           /*r!*d         dk    r*                    d           )	                    *           *fdt          j        D             t          _        t          j        d          &&fdt          j        dd         D             ,,fdt          j        D             t          _        t          j        d          ''fdt          j        dd         D             ++fdt          j        D             t          _        g },D ]	}d}|dt          |                   |k    rddlm}	 |	                                 t          |	j                                                  }
|t          |          d                                         x}}||
vr[i }	 ||         }nM# t$          $ r@ ||                                vr't)          d|t          |          d         z             Y nw xY w|},                    |          }d|z   ,|<   	|D ]},                    |          },|= t          ,          dk    sJ t+          ,                      t          j        d          ((fdt          j        dd         D             --fdt          j        D             t          _        d)v r-                    d           d}t          j        dd         }d D ]}|t          j        v rzt          j                            |          })	                    t          j        ||dz                       t          j        |dz   = t          j        |= t          j        dd         }d!t          j        v rft          j                            d!          }t          j        |dz            }t          j        |dz   = t          j        |= t          j        dd         }n3dd"lm} t1          d#d$|          \  }}||z   }|D ]} ||          }|r nt1          d#d%|          \  }}t1          d&d#|d'          \  }}t1          d(d#|d'          \  }}t1          d)d#|d'          \  }}t1          d*d#|d'          \  }}t1          d+d#|d'          \  }}t3          t          |                    D ]|}||                             d,d          }t          |          dk    r|                    d           t          |          dk    rt7          |          ||<   lt)          d-|           }dd.lm} i }|r)|	                    |                    d/g                      dd0lm }m!} ||||||||)d1	}.r@dd2l"m#}  .D ]7}! ||!          }|stI          d3t+          |!          z              | |fi | 8 |d>i |}"t          j        d         g-z   t          _        t          j        	                    d4d5|d6|d7d8d9g           +r#t          j        	                    d:g+z              ,r#t          j        	                    d;g,z               ||"g<           |rLtJ          j&        '                    |          r/ddl(}#tI          d=|z             |#)                    |           dS dS dS )?z 
    Do it all in one call!
    r   N-cr   r   z--link-c                 >    g | ]}                     |          |S rj   r   )rl   _m_reg1s     rW   r   zrun_compile.<locals>.<listcomp>  s(    BBBB%++b//BRBBBro   c                     g | ]}|v|	S rj   rj   )rl   r   sysinfo_flagss     rW   r   zrun_compile.<locals>.<listcomp>  s#    AAAr=)@)@)@)@)@ro   c                 "    g | ]}|d d         S )   Nrj   )rl   rI   s     rW   r   zrun_compile.<locals>.<listcomp>  s     6661122666ro   zN--((no-|)(wrap-functions|lower)|debug-capi|quiet|skip-empty-wrappers)|-includec                 >    g | ]}                     |          |S rj   r   )rl   r   _reg2s     rW   r   zrun_compile.<locals>.<listcomp>  (    ???u{{2?"???ro   c                     g | ]}|v|	S rj   rj   )rl   r   
f2py_flagss     rW   r   zrun_compile.<locals>.<listcomp>  #    >>>r:)=)=)=)=)=ro   )r   r   r   r   c                     g | ]}|v|	S rj   rj   )rl   r   f2py_flags2s     rW   r   zrun_compile.<locals>.<listcomp>&  #    ???r;)>)>)>)>)>ro   z4--((f(90)?compiler(-exec|)|compiler)=|help-compiler)c                 >    g | ]}                     |          |S rj   r   )rl   r   _reg3s     rW   r   zrun_compile.<locals>.<listcomp>)  r   ro   c                     g | ]}|v|	S rj   rj   )rl   r   
flib_flagss     rW   r   zrun_compile.<locals>.<listcomp>*  r   ro   zH--((f(77|90)(flags|exec)|opt|arch)=|(debug|noopt|noarch|help-fcompiler))c                 >    g | ]}                     |          |S rj   r   )rl   r   _reg4s     rW   r   zrun_compile.<locals>.<listcomp>-  s(    ===rU[[__====ro   c                     g | ]}|v|	S rj   rj   )rl   r   fc_flagss     rW   r   zrun_compile.<locals>.<listcomp>.  s#    <<<r8);););););ro   z--fcompiler=)	fcompilerzUnknown vendor: "%s"r   z--(verbose)c                 >    g | ]}                     |          |S rj   r   )rl   r   _reg5s     rW   r   zrun_compile.<locals>.<listcomp>I  s(    @@@"B@2@@@ro   c                     g | ]}|v|	S rj   rj   )rl   r   setup_flagss     rW   r   zrun_compile.<locals>.<listcomp>J  r   ro   r   untitled)r!   r"   r   r   )get_f2py_modulenamer   z[.]pyf([.]src|)z[.](o|a|so|dylib)z-I)r   z-Lz-lz-Uz-D=zInvalid use of -D:)get_infoinclude_dirs)setup	Extension)	r\   sourcesr   library_dirs	librariesdefine_macrosundef_macrosextra_objectsf2py_options)ru   z9No %s resources found in system (try `f2py --help-link`)
buildz--build-tempz--build-basez--build-platlibr   z--disable-optimization	config_fc	build_ext)ext_moduleszRemoving build directory %s
rj   )*tempfiler4   r   rt   
ValueErrormkdtempr   r   r1   r:   r   numpy.distutilsr   load_all_fcompiler_classesr   fcompiler_classrr   lowerKeyErrorvaluesr2   r9   !numpy.distutils.command.build_srcr   r   ranger;   tuplenumpy.distutils.system_infor   getnumpy.distutils.corer   r   numpy.distutils.misc_utilru   r7   r<   rA   existsshutilrmtree)/r   iremove_build_dir	build_dirfladel_listrm   r   r   allowed_keysnvovvmaprS   r   optnamer   	pyf_filesrI   r   r   r   r   r   r   
name_valuer   num_infor   r   ext_argsru   nextr   r   r   r   r   r   r   r   r   r   r   r   s/                                       @@@@@@@@@@@rW   run_compiler    s	    OOOtAHNN=))   }HQUO	HQUOHQKK$$&&	Jz""EBBBB#(122,BBBMAAAASXAAACH 766666JY[ [E????sx|???J>>>>SX>>>CHK	
BXabb\ " """"BB#XXB 	"cq!!!  {2#--3k"""????SX???CHJ?A AE????sx|???J>>>>SX>>>CHJSU UE====SXabb\===H<<<<SX<<<CHH  Wc!ffW:??11111100222	 9 > > @ @AALAj&&(((B%%EbBB E E E..4#a&&''
CDDDE   ##A*R/JqM     QqMMz??aj!1!1J~&&E@@@@@@@K????SX???CHJ9%%%JhqrrlGE # #chw''AchqQw/000Q!hqrrlGsxHNN4  Xa!e_
HQUOSXa[(122,IIIIII)".?II	7g% 	 	A,,Q//J  *".A7KKM7(r7!LLLL'(r7!LLLL'%dBqIIIIw(r7!LLLL')$G1MMMM73}%%&& 4 4"1%++C33
z??ad###z??a$Z00M!&
3333444444H >HLL<<===55555555"w , ,&!. ,!. * H  '999999 	' 	'AA C 69=aB C C CK&&A&&&&
)

h

C}{*CHHOOW#Y#Y&-/ 0 0 0  20111 4
2333	Ese !BGNN955 !/9=>>>i     ! ! ! !s$   A A.-A.M""AN,+N,c                  :   dt           j        dd          v r1t           j                            d           ddlm}   |              d S dt           j        dd          v r4t           j                            d           t          j        d           ndt           j        dd          v r t           j                            d           ndt           j        dd          v r?t           j                            d	           t           j                            d           n7d
t           j        dd          v r t           j                            d
           n	 dt           j        dd          v rt                       d S t          t           j        dd                     d S )Nz--help-linkr   r   show_allz
--g3-numpyz*G3 f2py support is not implemented, yet.\nz--2e-numericz--2e-numarrayz
-DNUMARRAYz
--2e-numpyr   )r4   r   remover   r  stderrr`   r5   r1   r  r   r  s    rW   mainr    sg   $$&&&888888


 sx|##
FGGG	38ABB<	'	'''''	CHQRRL	(	( 	%%%((((	!""	%	%%%%%sx|!""ro   r   )"__doc__r4   r<   pprintr   pathlibr   r   r   r   r   r   r	   r
   r   r   versionr3   numpy_versionr  r`   r8   showr7   r@   rX   rd   r   ru   r   r   r   r  r  rj   ro   rW   <module>r     s    


 				  				                                                      "#
*
}

HQF GHQ HQH IHQ HQ HQ 
XT T Tn! ! !H     F  D D DN   $  
i! i! i!X    ro   