
    *iu                        S r SSKJr  \R                  rSSKrSSKrSSKrSSKJr  SSK	J
r
JrJr  SSK7  SSKJr  / S	Qr/ r0 q0 r0 S
S_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_r0 S
S_SS_SS_SS _SS!_SS _SS"_SS#_SS$_SS%_SS&_S'S(_SS)_S*S+_SS,_SS-_SS-_S.S.S/.Er0 S
S0_SS1_SS2_SS3_SS4_SS3_SS5_SS6_SS7_SS8_SS9_S'S:_SS;_S*S<_SS=_SS>_SS?_S@SAS/.ErS0S1S3S3S5S7S9S:SBSBSBSCSASD.rSSS
SSSE.SSSSSSSSS*SF.	SSSSSSG.SSSSSSE.SSSSSSH.SIS0SIS
0SIS0SJ.q\R3                  \5        \R3                  \
5        \" [0        \\5      u  qr\R8                  " [0        5      r/ qSK r0 S
SL_SSL_SSM_SSN_SSN_SSO_SSP_SSQ_SSN_SSR_SSS_S'ST_SSS_SSU_SSU_SSV_SSW_SSX0Er SY r!SZ r"S[ r#SgS\ jr$S] r%S^ r&S_ r'S` r(Sa r)Sb r*Sc r+ShSd jr,Se r-Sf r.g)ia  
Copyright 1999 -- 2011 Pearu Peterson all rights reserved.
Copyright 2011 -- present NumPy Developers.
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.
   )__version__    N)cb_rules)iso_c2py_mapiso_c_binding_mapisoc_c2pycode_map)*)markoutercomma)getctypegetstrlength
getarrdimsgetpydocsigngetarrdocsigngetinitsign2maproutsign2mapmodsign2mapcb_sign2mapcb_routsign2mapcommon_sign2mapprocess_f2cmap_dictdoublefloatlong_doublecharintsigned_charunsigned_charshortunsigned_shortlong	long_longunsignedcomplex_floatcomplexcomplex_doublecomplex_long_doublestring	characterbytes
NPY_DOUBLE	NPY_FLOATNPY_LONGDOUBLENPY_BYTE	NPY_UBYTE	NPY_SHORT
NPY_USHORTNPY_INTNPY_UINTNPY_LONGunsigned_long	NPY_ULONGNPY_LONGLONGunsigned_long_longNPY_ULONGLONG
NPY_CFLOATNPY_CDOUBLE
NPY_STRING)r(   r)   dfgbBhHiIlLqQFDGScNy)r   r   r   r   r   r   r!   r"   r$   r&   r'   r(   r)   ) 481216)	rQ   12rR   rS   -1z-2z-4z-8)rQ   rS   rU   2432)rQ   rV   rW   rR   rS   rQ   )realintegerr%   complexkindlogicalzdouble complexzdouble precisionbytec                    [         R                  " [        5      qU c'  Sn [        R
                  R                  U 5      (       d  g  [        SU < S35        [        U 5       n[        UR                  5       R                  5       0 0 5      nS S S 5        [        [        W[        S5      u  qq[        S5        g ! , (       d  f       N3= f! [         a  n[!        SU S35         S nAg S nAff = f)Nz.f2py_f2cmapzReading f2cmap from z ...
Tz1Successfully applied user defined f2cmap changes
z-Failed to apply user defined f2cmap changes: z. Skipping.
)copydeepcopyf2cmap_default
f2cmap_allospathisfileoutmessopenevalreadlowerr   c2py_mapf2cmap_mapped	Exceptionerrmess)f2cmap_filer>   r=   msgs       R/var/www/html/ai-backend/venv/lib/python3.13/site-packages/numpy/f2py/capi_maps.pyload_f2cmap_filert      s     ~.J$ww~~k**T&{oV<=+!QVVX^^%r2.A $7
AxQU$V!
MDE   T?uMRSSTs0   C	 !*B8,C	 8
CC	 	
C,C''C,z%gz%Lgz%dz%hhuz%hdz%huz%uz%ldz%luz(%g,%g)z	(%Lg,%Lg)z\"%s\"z'%c'c                    Sn[        U 5      (       a<  SU ;   a  U S   nOU S   nX S   ;   a  [        U S   U   5      $ [        SU S35         U$ [        U 5      (       a  U$ [	        U 5      (       a  g[        U 5      (       a  gS	U ;   a  U S	   R                  5       [        ;   an  U S	   R                  5       n[        U   nUS
   nSU ;   aE  SU S   ;   a   X@S   S      nU$ SU S   ;   a&  US-   [        ;   a  [        US-      n X@S   S      nU$ U$ [        U 5      (       d  [        SU  S35        U$ ! [         a%    [        SU S	   < SS< SU S   S   < S35         U$ f = f! [         a    U[        ;   a	  [        U   n U[        U S   S   5         n U$ ! [         aH    [        SU< SU S   S   < SU< SU< SU S   S   < S[        R                  " 5       < S35          U$ f = ff = f)z
Determines C type
voidresultnamevarsgetctype: function  has no return value?!
r)   r(   typespecrQ   kindselectorr	   zgetctype: " z" not supported.
kindz(kind=z)" is mapped to C "z" (to override define dict(z = dict(z="<C typespec>")) in z/.f2py_f2cmap file).
zgetctype: No C-type found in "z", assuming void.
)
isfunctionr   rp   issubroutineischaracter_or_characterarrayisstring_or_stringarrayrl   rd   KeyErrorstrre   getcwd
isexternal)varctypear|   f2cmaps        rs   r   r      sQ    E#s?HAFAFCKN++)!,DEFD LC 
c			&s	+	+	 	%	%	s	s:446*Dz?((*H%r
S c.))N"~#6s#;<E( L! 3~..f$
2'6(9:F
X"~#6v#>?E L5L __05HIJL'   N _c3~3Fs3KM N$ L'N   X:-!+H!5X &s3~+>v+F'G H L $ X#+S-@-H%#+S-@-H"))+!W X
 LXXs=   
D3 
E% 3+E"!E"%G0FAG,'G0+G,,G0c                 6    [         R                  " SSU 5      n U $ )aF  Rewrite Fortran expression as f2py supported C expression.

Due to the lack of a proper expression parser in f2py, this
function uses a heuristic approach that assumes that Fortran
arithmetic expressions are valid C arithmetic expressions when
mapping Fortran function calls to the corresponding C function/CPP
macros calls.

z\blen\b	f2py_slen)resub)exprs    rs   f2cexprr      s     66*k40DK    c                    [        U 5      (       a9  SU ;   a  U S   nOU S   nXS   ;   a  [        U S   U   5      $ [        SU S35        [        U 5      (       d  [        S[	        U 5       S35        SnS	U ;   a%  U S	   nS
U;   a  US
   nOSU;   a  [        US   5      n[        R                  " SU5      (       d  [        R                  " SU5      (       a)  [        U 5      (       a  [        S[	        U 5      -  5        SnU$ )Nrw   rx   ry   zgetstrlength: function r{   z8getstrlength: expected a signature of a string but got: 
rV   charselectorr	   lenz\(\s*(\*|:)\s*\)z(\*|:)zMgetstrlength:intent(hide): expected a string with defined length but got: %s
rX   )	isstringfunctionr   rp   isstringreprr   r   matchisintent_hide)r   r   r   s      rs   r   r      s   s?HAFAFFA//-aS0HIJC==FtCykQST	V
C!8C&CaZ!E(#C	xx#S))RXXi-E-EdS	 Jr   c           	      :   0 n[        U5      (       a*  [        U5      (       d  [        U5      US'   SUS'   SUS'   U$ [        U5      (       a  SUS'   SUS'   SUS'   U$ [        U5      (       Ga  [        R                  " US   5      nSR                  U5      US'    [        [        US   5      5      US'   S	R                  U5      US'   [        [        U5      5      US'   [        [        U5      S
/-  5      SS
 US'   [        [        U5      5       H  n/ nXE   [        ;   a  XE   /nOA[         H7  n[        R                  " SU-  XE   5      (       d  M&  UR                  U5        M9     U H6  n[        R                  U5      [        R                  U 5      :  d  M1  SXE'     M     M     Su  US'   nU H  nUS-   nUS;  d  M  SUS   XX4-  US'   M     US   (       a  US   S S
 US'   Su  US'   nUS    Hx  nUS-   nUS;  a  SUS   XX4-  US'   M  [!        U5      (       a  [#        SU-  5        SUS   US4-  US'   MK  U(       d  MT  [%        S[        U 5       S[        U5       S35        Mz     US   (       a  US   S S
 US'   U$ ! [         a     GNf = f)Nsize0rankrQ   dimsrV   	dimensionr	   ,r   z	rank*[-1]z.*?\b%s\b.*)rQ   r   setdims)r	   :z(*)z(:)z%s#varname#_Dims[%d]=%s,	cbsetdimsz?getarrdims:warning: assumed shape array, using 0 instead of %r
r   z5getarrdims: If in call-back function: array argument z# must have bounded dimensions: got r   )r   isarrayr   isscalarra   joinr   rj   ro   r   rangedepargsr   r   appendindexisintent_inrh   rp   )	r   r   verboseretdimrD   vvar=   s	            rs   r   r     s   
C}}WS\\"3'FFFj Ji 
#FFFb Ja 
iiK()hhsmF	tCK01CK hhsmF3s8nFCB4026Ks3xAAv VH!Bxx 3SV<< " ==$w}}Q'77 CF  ! #IAAA00!;	NA?* "*I 
 y> ^CR0C	N$K![!AAA00#=$aA, $,K S!!Z #=$aA, $,K KDQRG9Twx|}~x  xA  AC  DE " {";/4C JW  		s   J 
JJc                    [        U5      (       a:  SU;   a  US   nOUS   nX!S   ;   a  [        X!S   U   5      $ [        SU S35        gX pCSn[        U5      (       a  SnO[	        U5      (       a  S	nU n[        U5      (       a  US
    H  nUS S S:X  d  M  USS  n  O   Sn[        U5      n	[        U5      (       a  [        X5      u  pSU
 3n[        U5      (       aX  [	        U5      (       a$  U < SU< S[        U	   < S[        U	   < SU< 3	nOU  SU S[        U	    U 3nU S[        U	    3nX44$ [        U5      (       aU  [	        U5      (       a  U < SU< S[        U5      < SU< 3nOU  SU S[        U5       SU 3nU S[        U5       S3nX44$ [        U5      (       a  US   n[        [!        U5      5      nU < SU< SU< S[        U	   < SSR#                  U5      < SU< 3nX:X  a+  U < SU< S[        U	   < SSR#                  U5      < S3nX44$ U< SU< S[        U	   < SSR#                  U5      < SU < S3
n X44$ [%        U5      (       a]  SnU [&        ;   aE  [&        U    [(        ;   a4  S [(        [&        U       ;   a   [(        [&        U       S    nX:X  d  S!U 3nOSnU  S"U 3nUnX44$ [        S#U  S$35        X44$ )%Nrw   rx   ry   rz   r{   rQ   rQ   rQ   inputz	in/outputintent   out=z, optional\n    Default: z : z rank-0 array(,'')r~   z rank-0 array(string(len=),'c')z string(len=)z : string(len=r   z rank- array('') with bounds (r    : rank-z) and z storageargnamez => z : call-back functionz2getpydocsign: Could not resolve docsignature for "z".
)r   r   rp   r   isintent_inoutisintent_outr   hasinitvaluer   r   rm   c2pycode_mapr   r   r   r   r   r   r   lcb_maplcb2_map)r   r   afsigsigoutoptout_akinitr   showinitr   r   uas                 rs   r   r   W  s   #s?XBVBVKO44)"-EFG
C3			ECXA!u!"  DSMEC +H:6}}#9:C%9Ee9LdTC Cs3%q% 1$8C7#huo./D ;C 
##3S)41C Cs3%|L,=+>avFC7.c):(;1=6 ;5 
+CH~DEsDDPHMEODGHHSMSWY :dL/#@F$ ; $U 3SXXc]AGF ; 
C<GAJ(2yHWUVZDX7X'!*%i0B7B4[(- ; 	@4H	J;r   c           	      z   [        U5      n[        U5      (       a#  [        U5      (       d  U  S[        U5       S3nU$ [	        U5      (       a  U  S[
        U    S[        U    S3nU$ [        U5      (       aA  US   n[        [        U5      5      nU < SU< S[        U   < S	S
R                  U5      < S3nW$ )Nz : rank-0 array(string(len=r   z : rank-0 array(r   r   r   r   r   r   r   r   )
r   r   r   r   r   rm   r   r   r   r   )r   r   r   r   r   r   s         rs   r   r     s    SME}}gcll.|C/@.AJ J 
##HUO#4CU8K7LCP J 
+CH~?@$?KCH@J?Bxx}N Jr   c                    [        U5      (       a  Su  p#OSu  p#[        U5      (       Ga  US   nUn[        U5      (       d  [        U5      (       a  0 n US   nSU;   a'  [	        USS 5      R                  S5      u  US'   US	'   O?[        U0 0 5      n[        UR                  5      [        UR                  5      sUS'   US	'    [        U5      (       a  SUS    SUS	    S3nX#4$ [        U5      (       a>  U(       d  Su  p#US   S:X  a  SUSS R                  SS5      -  nUS   S:X  a	  SUSS  S3nX#4$ ! [         a    [        S
U SU < S35      ef = f)N)z""z''r   =r   r   r   @,@init.rinit.iz2getinit: expected complex number `(r,i)' but got `z' as initial value of .z
(capi_c.r=z
,capi_c.i=z,capi_c)r   'z"%s""z\")r   r   	iscomplexiscomplexarrayr
   splitrj   r   r[   imagro   
ValueErrorr   replace)r   r   r   r   r   r   s         rs   r   r     s   }}#hC3xS>>^C00C
oH!83A!B4!!&u 1CM3x= QBA36qvv;AFF0CM3x= s||#CM?*S]O8T > c]]!+Aw#~a!3!3C!?@Aw#~tAbzl!,>  o I$Ofghfkklmo oos   1D9 >D9 9Ec                     [        U 5      (       d  [        U 5      (       a"  [        U 5      nU S   R                  SU5      nU$ [	        U 5      (       d  [        U 5      (       a  gg)Nr   f2py_lenrV   )r   isstringarrayr   getischaracterischaracterarray)r   elsizes     rs   
get_elsizer     sY    }}c**c"^$((V<3+C00 r   c           
      
   U n[        U5      (       a  US    H  nUSS S:X  d  M  USS n  O   X[        U5      S.n/ n[        R                  5        H(  u  pgU" U5      (       d  M  UR	                  SU 35        M*     U(       a  SR                  U5      US'   OSUS'   [        U5      (       a  S	US
'   O"US   [        ;   a  [        US      US
'   OSUS
'   [        X5      u  US'   US'   [        U5      (       aI  [        U5      (       a9  [        U5      (       d)  [        US   SS 5      R                  S5      u  US'   US'   [        U5      (       a  XS'   U [        ;   ae  [        U    US'   [        [        U       S   US'   [        [        U       S   US'   [        [        U       S   US'   [        [        U       S   US'   O3XS'   [!        SU < S[#        [        R%                  5       5      < S35        ['        U5      (       a  [)        U5      US'   [        U5      (       a.  [+        U[-        X5      5      n[.        R.                  " US    5      nUS   [0        ;   a  [0        US      US!'   [3        U5      US"'   [5        U5      (       Ga1  / [6        PS#P[         PS$P[8        PS%P[:        PS&P[<        PS'P[>        PS(P[        PS)P[A        [B        [E        [        5      5      PS*P[&        PS+P[        PS,P[F        PS-P[H        PS.P[J        PS/P[A        [L        [E        [J        5      5      PS0P[        PS1P[N        PS1P[P        PS2Pn	/ n
[S        S3[U        U	5      S45       H*  nX   " U5      (       d  M  U
R	                  XS-      5        M,     ['        U5      (       a  U
R	                  S5U  S6US    35        [        U5      (       a5  S7R                  [W        S8 US    W5      5      nU
R	                  S9U S:35        [        U5      (       a!  S;U  S<US    S=S7R                  U
5       3US>'   O*S;US   < S?U < S@US   < S=S7R                  U
5      < 3US>'   [C        U5      (       a"  US   [X        ;   a  S;U  S@[X        US       3USA'   ['        U5      (       a  SBU < SCU < SD3USA'   [        U5      (       a	  S;U  SE3USA'   US   [X        ;   a%  SFU  S@[X        US       3USG'   [X        US       USH'   ['        U5      (       a  SIU < SCU < SD3USG'   [[        X5      u  USJ'   USK'   []        U5      (       a  USL   USL'   U$ )Mzn
varname,ctype,atype
init,init.r,init.i,pytype
vardebuginfo,vardebugshowvalue,varshowvalue
varrformat

intent
r   Nr   r   )varname
outvarnamer   F2PY_|F2PY_INTENT_INrO   
varrformatr   Or   r   r   r   r   r   r   	cbnamekeycbname
maxnofargs
nofoptargsdocstrcbdocstrlatexdocstrcblatexdocstrzsign2map: Confused: external z is not in lcb_mapz.
lengthr   atyper   r   outputinoutputrequiredoptionalhiddenzcomplex scalarscalarr(   arrayzcomplex arrayzstring arrayzcomplex functionfunctioncallback	auxiliaryr      zslen(z)=r   c                     U  SU 3$ )Nr    )xrP   s     rs   <lambda>sign2map.<locals>.<lambda>.  s    A3asr   zdims(r   debug-capi:z=>r   vardebuginfor~   r   vardebugshowvaluedebug-capi:slen()=%d =\"%s\"z=%pz#name#:varshowvalueshowvalueformatz#name#:slen(	pydocsignpydocsignoutnote)/r   r   isintent_dictitemsr   r   r   c2buildvalue_mapr   r   r   r
   r   r   r   r   rp   listkeysr   r   
dictappendr   ra   
c2capi_mapr   	debugcapir   r   
isrequired
isoptionalr   l_andr   l_notr   r   iscomplexfunctionr   isintent_callbackisintent_auxr   r   mapcformat_mapr   hasnote)r   r   r   r   r   intent_flagsr>   sr   ilrlrD   ddims                rs   r   r     s    ECXA!u!"  x}
ECL##%S66%s, & .H(Hs||L	W)	),S\:LL#*1? CKZCYs^^GCLL'5K"($uU| 	%Hs8}#K<#AJCM ( 4\ BC ( 4\ BC&wqz28<C
O#+GAJ#7#FC M4') *}}$S)Hs||j01iiK()
7|z!!#g,/G"3H~~k 7 L ( (*46@$&35=  * HeI./	 2:	
 
 !
 #*
 ,3  . 0= ?M   "4 J&7 89 <F  %   ",  ( q#b'1%AuSzz		"U)$ & C==IIaS3x=/233<<88+S-=sCEDIIdV1o&c??$/s"S]O1SXXb\N"SC  GaZ#((2,#@CC==7|{*-81[W=V<W+X'(C==1(C#$c??)4QCs';C#$
7|{" 's!KG,E+FGN$/G$=#>}}DEqIN,8,@)Cc.)s||&kFJr   c                 l   U S   n[        U 5      nUUR                  SS5      UR                  5       UR                  5       [	        U5      [	        SU 35      UUR                  5       [        U 5      =(       d    S[        U 5      =(       d    S[        U 5      =(       d    SS.nSU;   a  SUS'   OSUS'   SU;   a  S	US
'   OS
US
'   0 qSU ;   a  U S   R                  5        H  nU[        R                  ;   d  M  [        R                  U    HY  nUS   nSU S   U   ;   a9  U S   U   S   R                  5        H  nU S   U   S   U   US   :X  d  M  Un  O   US   [        U'   M[     M     O9U R                  S5      (       a#  [        SUS   < S[        U S   5      < S35        [        U [        5      =(       d    SUS'   [!        U 5      (       GaA  SU ;   a  U S   nOU S   nXS'   [#        X5      u  US'   US'   [%        U S   U   5      US'   ['        U 5      (       a  U S   U   S   US'   S/U S   U   S'   US   [(        ;   a  [(        US      US'   OSUS'   [        S[        US   5      -  5        [+        U 5      (       aB  US   [,        ;   a  S U< S![,        US      < 3US"'   [/        U 5      (       a  S#U< S$U< S%3US"'   [/        U 5      (       a<  [1        U S   U   5      US&'   US&   S':X  a  [        S([        U S   5      -  5        S)US&'   [3        U 5      (       a  U S   US'   S/U S'   U$ )*zF
name,NAME,begintitle,endtitle
rname,ctype,rformat
routdebugshowvalue
rx   _\_end of rQ   )rx   texname
name_lowerNAME
begintitleendtitlefortrannameFORTRANNAMEcallstatementusercode	usercode1	F_FUNC_USF_FUNCF_WRAPPEDFUNC_USF_WRAPPEDFUNCuser   r$  r   	externalsz!routsign2map: Confused: function z has externals z but no "use" statement.
callprotoargumentrw   rnamer  r  ry   r   r  
resultnoteSee elsewhere.rformatr   z.routsign2map: no c2buildvalue key for type %s
r
  r   routdebugshowvaluer  r  r  rlengthrX   zzroutsign2map: expected explicit specification of the length of the string returned by the fortran function %s; taking 10.
10)getfortrannamer   rl   uppergentitlegetcallstatementgetusercodegetusercode1r   r  r   cb_mapr   rp   r   getcallprotoargumentr   r   r   hasresultnoter  r  r%  r   r   r&  )	routrx   fnamer   uunlnr   r   s	            rs   r   r   H  sW    <D4 Ell3.::<!$'$ 01++-,T28b"4(.B$T*0bC e|#H H
d{1O.OG}e!!#AHOO#"//!,BABUA.!%eQ!6!;!;!=A#E{1~e4Q72a5@%& % "> #%Q%GBK - $ 
+		Kd;/02 	33D'BHbC$tXAVAG0<Q0E-K#n-VQ0G $VQ 7C'7&8DLOF#w<++-c'l;C	N C	NE#g,') *T??7|{*{3w<0-2()%%q-()D!!)$v,q/:C	N9~%  Vf&( )!%It}}6lF()VJr   c                 r   [        U 5      (       a.  U S   U S   R                  5       U S   R                  SS5      S.nO-U S   U S   R                  5       U S   R                  SS5      S.n[        U 5      =(       d    / US'   [	        U 5      (       a  U S   US'   [        U 5      =(       d    SUS	'   [        U 5      =(       d    SUS
'   U S   (       a  [        U S   S   5      =(       d    SUS'   OSUS'   [        U 5      =(       d    SUS'   SU ;   a  U S   US'   SU ;   a  U S   US'   SU ;   a  U S   US'   U$ )z
modulename
rx   r-  r.  )f90modulenameF90MODULENAMEtexf90modulename)
modulename
MODULENAMEtexmodulenamerestdocr  rQ   r8  r9  bodyr   interface_usercodepymethoddefgil_usedcoutputf2py_wrapper_output)ismodulerI  r   
getrestdocr&  rL  rM  getpymethoddef)mr   s     rs   r   r     sH    {{ !&	 !&	 1#$V9#4#4S%#@B vYvY__. !&	 1 1#u =?  ](bC	NqzziF!!n*C
O#A,"Cy$/&	!$=$C !$& !'*0bCQJ-JA~9I!%&'<%=!"Jr   c                 v   SU 0nUS   US'   [        U5      US'   US   [        ;   a  [        US      US'   [        U5      US'   US   [        ;   a  [        US       US'   [	        U5      (       a  [        U[        X5      5      n[        X5      u  US'   US'   [        U5      (       a  US	   US	'   S
/US	'   U$ )Nr   	varname_ir   r   r   r  r  r  r  rC  )	r   r  r   r%  r   r  r   r   r&  )r   r   r   r   s       rs   r   r     s    a.C9~CC=CL
7|z!!#g,/G"3H
7|{"$/G$=#>s||j01,8,@)Cc.)s||&kF'(FJr   c                    SU S    SU 3SS.n[        U 5      (       aD  SU S   ;   a  SnOSnU S	U S   R                  5        S
U S   R                  5        S3US'   SUS'   OUS   US'   SUS'   U S   US'   [        US   5      US'   [        SUS    35      US'   [	        U 5      US'   SUS'   US   S:X  a  SUS'   OUS   US'   US   S:w  a  [        U 5      (       a  SUS'   OSUS'   US   [        ;   a  [        US       US'   [        U 5      (       a  [        U 5      US'   [        U 5      (       ao  SU ;   a  U S   nOU S   n[        U S   U   5      (       a  U S   U   S   US'   S/U S   U   S'   XBS '   [        X@5      u  US!'   US"'   [        U 5      (       a  S#US'   O[        U 5      (       a  U S   US'   S/U S'   S$nS$nS%U ;   aW  SU ;   aQ  U S%    HH  nU S   U   n[        [        [        5      " U5      (       d  M,  US&-   n[        U5      (       d  MC  US&-   nMJ     [!        U5      US''   [!        U5      US('   [        U 5      (       a$  [        U 5      (       a  SU ;   a  U S   US)'   S/U S'   U$ )*zP
name,begintitle,endtitle,argname
ctype,rctype,maxnofargs,nofoptargs,returncptr
cb_rx   _in_rQ   )rx   
returncptrr-  r:  r;  (r   r   callbacknameexternstaticr   r3  r/  r4  r   rv   rctyper(   z3
#ifdef F2PY_CB_RETURNCOMPLEX
return_value=
#endif
rm  zreturn_value=r  	strlengthrw   ry   r  rC  rA  r  r  z8
#ifdef F2PY_CB_RETURNCOMPLEX
#ctype#
#else
void
#endif
r   argsr   r   r   routnote)r"  rl   rI  rJ  r   r!  r%  r   r   r   r&  r   l_orr   r   r  r   )rQ  umr   r;  r   nofargsr   r   s           rs   r   r     s   
 fd2$/C$v, FF!'$v,*<*<*>)?qfASASAU@VVWXN H!&kN H&\C	N V-CV67C
OD>CLCM
7|xHGH
8}T""!C !0C
7|{"$/G$=#>'-K$tXAVA4<?##v,q/&1CK'7&8DLOF#G0<Q0E-K#n-T""CM 
6lF()VGJ~&D.fAv,q/CK055!A+c??!+aJ  WCZ(Ct}}D))h$.>v,J()VJr   c                    U [        U5      S.n[        U5      (       a  SUS'   US   [        ;   a  [        US      US'   [        U5      US'   US   [        ;   a  [        US       US'   [        U5      (       a  [        U[        X5      5      nO#[        U5      (       a  [        U5      US'   SUS	'   [        X5      u  US
'   US'   [        U5      (       a  US   US'   S/US'   [        X5      US'   U$ )N)r   r   r   r   r   r   r  r   rV   r   r  r  r  rC  	arrdocstr)r   r   r  r   r%  r   r  r   r   r   r   r&  r   )r   r   r   s      rs   r   r     s    (3-
0CSG
7|z!!#g,/G"3H
7|{"$/G$=#>s||j01	#"3'FF,8,@)Cc.)s||&kF'(F$Q,CJr   )r   )N)/__doc__rQ   r   versionf2py_versionra   re   r   r   	_isocbindr   r   r   auxfuncscrackfortranr
   __all__r   r   r   rm   r  r   r  rd   updater   r-  rb   rc   rn   rt   r%  r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r   rs   <module>r     s   ""  	 	  I I
  ( 
Hg W7 E 5	
 U U e 5 E   Y i "9 h  !&+h ++/+ 
+  	+
 z+ + !,+ y+ J+ 
+  + ^+ %o+  + !-+  &}!+" ')%+
("# ""s" "  	"
 s" " !#" s" C" "  " S" %c"  " !#"  &s!""  %"* " #& !$%(&)+.!!$&  #x*-A#-g$; /7G *2FH .O 08M 57 #2#3;P$9; $&wU*,!#%5 6#%x.6l!
(   % &  #J0A8L
Az*T4x e t d	
     d 4 u  E 	   %k  !" F#./d8:zFR DePNb>$JZr   