bg&dZddlmZejZddlZddlZddlZddlm Z ddlm Z ddl TgdZ d Z gZiaiZid d d d d d d dddddddddddddddddddddddddddZid dd dd dd ddd dd!dd"dd#dd$dd%dd&dd&dd'dd(dd(dddd)Ze r:id dd dd d*d d!dd dd!dd"dd#dd$dd%dd&d+d,dd-d.d/dd'dd(dd(ddd0Zid d1d d2d d1d d3dd3dd4dd5dd6dd7dd8dd9dd:dd;dd<dd<dd=dd=Ze r:id d1d d2d d>d d4dd?dd4dd@ddAdd7ddBdd9d+d:ddCd.dDdd;dd<ddEdFd=d0Zd1d2d4d4d@d7d9d:dGdGdGdHd=dI Zd d d d d dJddddddddd.dK ddddddLddddddJdd ddddMdNdidNd idNd idOaejt*ZgZdPZid dQd dQd dRd dSddSddTddUddVddSddWddXd+dYddXddZddZdd[dd\dd]iZd^Zd_Zd`ZdldaZdbZdcZ ddZ!deZ"dfZ#dgZ$dhZ%dmdiZ&djZ'dkZ(dS)na) Copyright 1999,2000 Pearu Peterson all rights reserved, Pearu Peterson 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 10:57:33 $ Pearu Peterson ) __version__N)markoutercomma)cb_rules)*) getctype getstrlength getarrdims getpydocsign getarrdocsigngetinitsign2map routsign2map modsign2map cb_sign2mapcb_routsign2mapcommon_sign2mapTdoublefloat long_doublecharint signed_char unsigned_charshortunsigned_shortlong long_longunsigned complex_floatcomplexcomplex_doublecomplex_long_doublestring characterbytes NPY_DOUBLE NPY_FLOAT NPY_STRING NPY_UBYTENPY_BYTE NPY_SHORT NPY_USHORTNPY_INTNPY_UINTNPY_LONG NPY_CFLOAT NPY_CDOUBLENPY_CHARNPY_LONGDOUBLE unsigned_long NPY_ULONG NPY_LONGLONGunsigned_long_long NPY_ULONGLONG)r$r%df1bswiulLFDcgBhHIqQGSNy) rrrrrrrrr r"r#r$r%)481216) rRr<2rSrT-1z-2z-4z-8)rRrTrV2432)rRr<rWrSrTrR)realintegerr! complexkindlogicalzdouble complexzdouble precisionbytectjta|#d}tj|sdS td|t|5}t| ii}dddn #1swxYwY| D]V\}}|D]}|||| < |||| <W|D]U}|tvr it|<||D]#}|||tvr|t|vr9td|d|dt||d|||d |||t||<td|d |d |||d t |||t%d |d|d|||d |||dt'td %WtddS#t($r}t%d|zYd}~dSd}~wwxYw)Nz .f2py_f2cmapzReading f2cmap from {!r} ... z Warning: redefinition of {'z':{'z':'z'->'z'}} z Mapping "(kind=z)" to "z" z Ignoring map {'z'}}: 'z ' must be in  z1Successfully applied user defined f2cmap changes z;Failed to apply user defined f2cmap changes: %s. Skipping. )copydeepcopyf2cmap_default f2cmap_allospathisfileoutmessformatopenevalreadloweritemskeysc2py_map f2cmap_mappedappenderrmesslist Exception) f2cmap_filer;r:kd1k1msgs g/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib64/python3.11/site-packages/numpy/f2py/capi_maps.pyload_f2cmap_filer~sO~..J$ w~~k**  FT077 DDEEE +   /!QVVXX^^%%r2..A / / / / / / / / / / / / / / /WWYY  EArggii ( (!#B288::Q4AaggiiLL K KA "" " 1 diikk K KQ48x''Z]**WXWXWXZ\Z\Z\^hij^kln^o^o^oqrstquvxqyqyqyz|||()!RJqM"%GQQAaDHHH.///!((1b2222G222qtBxxx1b4 3H3H3H3HJKKKK K DEEEEE TTT Jc R T T T T T T T T TTs=1J%16B3' J%3B77J%:B7;G(J%% K /KK z%gz%Lgz%dz%hhuz%hdz%huz%uz%ldz%luz(%g,%g)z (%Lg,%Lg)z\"%s\"z'%c'cd}t|rNd|vr |d}n|d}||dvrt|d|Std|znt|r|St |rdSt |rdSd|vr|dtvrr|d}t|}|d }d |vr=d |d vrS ||d d }n>#t$r/td |dd d d |d d dYnwxYwd|d vr|dztvrt|dz} ||d d}n#t$r|tvr t|} |t|d d}n[#t$rNtd |d|d dd|d|d|d ddtj d YnwxYwYn&wxYwn!t|std|z|S)z Determines C type voidresultnamevars,getctype: function %s has no return value?! r%r$typespecrR kindselectorrz getctype: " z" not supported. kindraz)" is mapped to C "z" (to override define dict(z = dict(z="")) in z/.f2py_f2cmap file). z2getctype: No C-type found in "%s", assuming void. ) isfunctionrru issubroutineischaracter_or_characterarrayisstring_or_stringarrayrorfKeyErrorstrrggetcwd isexternal)varctypearf2cmaps r}rrs E#*Q s??H AAF A F  CKN++ + CaG H H H H c  !Q &s + +Q{  % %Qx s  s:4466*DDz?((**H%r  S c.)))N"3~#6s#;?EEXXX:--!+H!5X &s3~+>v+F'G'G H#XXX#+88S-@-H-H-H%%%#+88S-@-H-H-H")++++!WXXXXXX X# Q ICO P P P LsI9D5EE2F H((!G  H( AH"H(!H""H('H(c2tjdd|}|S)a^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)resub)exprs r}f2cexprr+s 6*k4 0 0D Kc4t|rLd|vr |d}n|d}||dvrt|d|Std|zt|stdt |zd}d|vr.|d}d|vr |d}nd |vrt |d }t jd |st jd |r0t|rtd t |zd }|S)Nrrrz0getstrlength: function %s has no return value?! z;getstrlength: expected a signature of a string but got: %s r< charselectorrlenz\(\s*(\*|:)\s*\)z(\*|:)zMgetstrlength:intent(hide): expected a string with defined length but got: %s rX) isstringfunctionr ruisstringreprrrmatch isintent_hide)rrrs r}r r :sIM s??H AAF A F  F A// / G!K L L L C==Z JdSVii X Z Z Z C   !88C&CC aZZ!E(##C x#S))RXi-E-E     dS     Jrc i}t|r-t|st||d<d|d<d|d<nt|rd|d<d|d<d|d<nt|rtt j|d}d||d< t t|d|d<n#t$rYnwxYwd ||d<t t||d<t t|d gzd d |d <tt|D]}g}||tvr ||g}n=tD]5}tj d |z||r||6|D]?}t|t|krd||<n@d\|d<}|D]}|d z}|dvrd|d||fz|d<|dr|ddd |d<d\|d<}|dD]}|d z}|dvrd|d||fz|d<t!|r$t#d|zd|d|dfz|d<P|r0t%dt |dt |d|dr|ddd |d<|S)Nsize0rankrRdimsr< dimensionr,rz rank*[-1]z .*?\b%s\b.*)rRrsetdims)r:z(*)z(:)z%s#varname#_Dims[%d]=%s, cbsetdimsz?getarrdims:warning: assumed shape array, using 0 instead of %r rz5getarrdims: If in call-back function: array argument z# must have bounded dimensions: got rb)risarrayr isscalarrcjoinrrmrwrrangedepargsrrrtindex isintent_inrjru) rrverboseretdimr@vvar:s r}r r Vs C}}55WS\\55"3''F F F #15F F F -5iK())hhsmmF  tCK0011CKK    D hhsmmF 3s88nnF CB40026Ks3xx  AA1v  VH!%%Bx 3SV<<%   ==$$w}}Q'7'777 CFE8#I * *AAA000!; NAq?*"*I y> 1 ^CRC0C N$K![! K KAAA000#= $aA,$,K  S!! KZ#= $aA,$,K   Kx|}~xxxxBFGHBIBIBIBIJKKK {  5";/4C  Js"%C CCc Vt|rOd|vr |d}n|d}||dvrt||d|Std|zdS||}}d}t|rd}nt |rd}|}t |r%|d D]}|dd d kr |d d}nd}t |} t|rt||\}} d | z}t|rat |r'|d |dt| dt| d| }n|d |dt| |}|d t| }nt|r[t |r|d |dt|d|}n|d |dt|d|}|dt|d}nWt|r|d} tt!| } |d |d| dt| dd| d| }||kr-|d| dt| dd| d}n|d| dt| dd| d|d }nt%|rod} |t&vrZt&|t(vrFdt(t&|vr,t(t&|d} | |ksd | z} nd} |d!| }|}ntd"|z||fS)#NrrrrrRrRrRinputz in/outputintentout=z, optional\n Default: %sz : z rank-0 array(,'')rz rank-0 array(string(len=),'c')z string(len=)z : string(len=rz rank- array('') with bounds (r : rank-z) and z storageargnamez => %sz : call-back functionz7getpydocsign: Could not resolve docsignature for "%s". )rr rurisintent_inout isintent_outr hasinitvaluer rrr c2pycode_maprr rrrrrlcb_maplcb2_map)rrafsigsigoutoptout_aryinitrshowinitrruas r}r r s#  s??XBBVB V  CKO44 4 CbH I I IvQC C3    ECX  A!u!"" D SMMEC9 Ch-8}}(L #   C9:CCC%9Ee9L9L9LddTCC%&AAsssHUOOTTBC#eeXe__5 #!L #   1333 S))))441CC333 S))))441C*/%%c1B1B1B1BC L+CHH~~DEAAsssDDDDPHMEOEOEODGHHSMMMMSWSWY ::11dddL///#@FF55$$$ U 3 3 3SXXc]]]]AAAGFF C L  <> 1^C00 1C sH!883A!B$4!4!!&u1CM3x==QBA36qv;;AF 0CM3x= s s s jimimimopopopqsss ss|| 2 2MMM3x===2 c]] 1 ,!+hAw#~~ad!3!3C!?!?@Aw#~~!T!B$Z0 >s BC!C8ct|st|r-t|}|dd|}|St |st |rdSdS)Nrf2py_lenr<)r isstringarrayr get ischaracterischaracterarray)relsizes r} get_elsizersw}} c**c""^$((V<< 3+C00s 3rc F |}t|r%|dD]}|dddkr |dd}n||t|d}g}tD](\}}||r|d|z)|rd||d<nd|d<t |rd |d <n+|d tvrt|d |d <nd |d <t||\|d <|d<t|rWt|rHt |s9t|d dd d\|d<|d<t|r||d<|tvrt||d<tt|d|d<tt|d|d<tt|d|d<tt|d|d<n?||d<t!d|dt#tdt'|rt)||d<t |r8t+|t-||}t/j|d }|d t0vr(t0|d |d!<t3||d"<t5|rgt6d#td$t8d%t:d&t<d't>d(td)tAtBtEtd*t&d+t d,tFd-tHd.tJd/tAtLtEtJd0td1tNd1tPd2} g} tSd3tU| d4D]1} | | |r| | | dz2t'|r!| d5|d6|dt |rCd7tWd8|d |} | d9| zt|r(d:|d;|dd|d?|ddzsign2map..nsAAAqq!1rzdims(%s) debug-capi:z=>r vardebuginforrvardebugshowvaluedebug-capi:slen()=%d =\"%s\"zdebug-capi:%s=%%pz#name#: varshowvalue%sshowvalueformatz #name#:slen( pydocsign pydocsignoutnote)/rr isintent_dictrprtrrc2buildvalue_mapr rrrrrrrrurvrqrr dictappendr rc c2capi_mapr debugcapirr isrequired isoptionalrl_andrl_notrriscomplexfunctionrisintent_callback isintent_auxrrmap cformat_mapr hasnote) rrrryr intent_flagsr;r>rilrlr@ddims r}rr s ECX  A!u!""ux}} E ECL##%%//1 1S66 /    A . . .)..H (H s|| L W) ) ),S\:LL#*1c?? CKZC,Ys^^,GCLL,'5 K" (($uU|| %H s8}# *K <<#AJCM ( 4\ BC  ( 4\ BC &wqz28|d|d|dddd}t|pg|d<t |r |d|d<t |pd|d <t |pd|d <|d r!t |d d pd|d <nd|d <t|pd|d<d|vr |d|d<d|vr |d|d<|S)z modulename rr.r/) f90modulename F90MODULENAMEtexf90modulename) modulename MODULENAME texmodulenamerestdocrrRr9r:bodyrinterface_usercode pymethoddefcoutputf2py_wrapper_output)ismodulerJr getrestdocr(rMrNgetpymethoddef)mrs r}rrsp{{? !& !&  1 1#$V9#4#4S%#@#@BBvYvY__.. !& 1 1#u = =?? ]](bC Nqzz iF !!nn*C O#A,"C y'$/& ! $=$=$C !!$& !'**0bC A~~9I!!%&'<%= !" Jrcd|i}|d|d<t||d<|dtvr(t|d|d<t||d<|dtvrdt|dz|d<t |rt |t ||}t||\|d<|d <t|r|d |d <d g|d <|S) Nr varname_irrrrrrrrrD) rrrr'rrr r r()rrrrs r}rrs a.C9~C C==CL 7|z!!!#g,/G "3H  7|{""!%S\)B!C s||2jC0011,8C,@,@)C c.)s||)&kF '(F Jrcd|dd|dd}t|rSd|dvrd}nd}|d |dd |dd |d <d |d<n|d|d <d|d<|d|d<t|d|d<td|dz|d<t ||d<d|d<|ddkrd|d<n |d|d<|ddkrt |rd|d<nd|d<|dt vrdt |dz|d<t|rt||d<t|rd|vr |d}n|d}t|d|r)|d|d|d<d g|d|d<||d!<t||\|d"<|d#<t |rd$|d<n t|r|d|d<d g|d<d%}d%}d&|vrYd|vrU|d&D]L}|d|}ttt|r|d'z}t|r|d'z}Mt!||d(<t!||d)<t|r$t|rd|vr|d|d*<d g|d<|S)+z\ name,begintitle,endtitle,argname ctype,rctype,maxnofargs,nofoptargs,returncptr cb_r_in_rR)r returncptrr.r;r<(rr callbacknameexternstaticrr4r0r5rrrctyper$z3 #ifdef F2PY_CB_RETURNCOMPLEX return_value= #endif rlz return_value=rr strlengthrrrrDrBrrz8 #ifdef F2PY_CB_RETURNCOMPLEX #ctype# #else void #endif rargsrrrroutnote)r$rorJrKrr#r'rr rr(r l_orrrr r)rRumrr<rnofargsrrs r}rr sx %)LLL""5  C ! $v,   FFF!'!%f!3!3!5!5!5!5!%f!3!3!5!5!5!5#N !H !&kN H &\C N V--C {S[899C OD>>CLCM 7|xH G H  8} T " " 0!C   !0C  7|{""!%S\)B!C .'--K$. t  XAAV A 4<? # # 9v,q/&1CK'7&8DLOF #G 0.>v,J()V JrcP|t|d}t|rd|d<|dtvr(t|d|d<t||d<|dtvrdt|dz|d<t |rt |t||}n&t|rt||d<d |d <t||\|d <|d <t|r|d |d <dg|d <t|||d<|S)N)rrrrrrrrrr<rrrrrD arrdocstr) rrrrr'rrr rr r r(r )rrrs r}rr\s5(3-- 0 0CSG  7|z!!!#g,/G "3H  7|{""!%S\)B!C s||jC0011 #"3''F F ,8C,@,@)C c.)s||)&kF '(F $Q,,C  Jr)r)N))__doc__rRrversion f2py_versionrcrrg crackfortranrrauxfuncs__all__ using_newcorerrrrrrrrrfrdrersr~r'rrr r r r r rrrrrrrr rr}rs  " ((((((        Hg  W  7  E  5   U   U   e  5  E      Y  i  "9  h  ! $'h '{'\'l'{ ' Z ' { ' 'Y'*'j':'|' '$]' ' :!' (--(L-;-!1-*-"; -   - ; -#L--j-*-";-~-'-"<-#M- (!-")+%---J(#ss      !#sCS !#&s# S! &&&Hc&S&!3&C&$S & "3 & S &%c&3&&C&$S& &)#&$S&%c& *3!&""!$%&&&L," #& !$%(&)+.!!$ & &#x*-AA#-g$; /7G *2FHH.O 08M 577#2#3;P$9;;$&wU*,,!#%5 6#%x.6l! &z** *T*T*TXxetd      d4uE  %k !"F# .000f   8::::zGGGT$   F   gggTNNNb:$OOOdr