bgXdZddlZddlZddlZddlmZddlmZddlmZgdZ ej Z ej j ZejZiZgZdZdZd Zd Zd Zd Zd ZdZdZdZdZdZdZdZdZ dZ!dZ"dZ#dZ$dZ%dZ&dZ'dZ(dZ)dZ*d Z+d!Z,d"Z-d#Z.d$Z/d%Z0d&Z1d'Z2d(Z3d)Z4d*Z5d+Z6d,Z7d-Z8d.Z9d/Z:d0Z;d1Zd4Z?d5Z@d6ZAd7ZBd8ZCd9ZDd:ZEd;ZFd<ZGd=ZHd>ZId?ZJd@ZKdAZLdBZMdCZNdDZOdEZPdFZQdGZRdHZSdIZTdJZUdKZVdLZWdMZXdNZYdOZZdPZ[dQZ\dRZ]dSZ^ePdTeQdUeRdVeSdWeVdXeUdYeMdZeZd[e\d\e]d]e^d^i Z_d_Z`d`ZadaZbdbZcdcZdddZedeZfdfZgdgZhdhZidiZjdjZkGdkdlelZmGdmdnZndoZodpZpdqZqdrZrdsZsddtZtduZuifdvZvdwZwdxZxdyZydzZzd{Z{d|Z|d}Z}d~Z~dZddZdZifdZdS)aW Auxiliary functions for f2py2e. 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 (BSD style) LICENSE. NO WARRANTY IS EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK. $Date: 2005/07/24 19:01:55 $ Pearu Peterson N)reduce) __version__)cfuncs)X applyrules debugcapi dictappenderrmessgentitlegetargs2getcallprotoargumentgetcallstatementgetfortrannamegetpymethoddef getrestdoc getusercode getusercode1hasbodyhascallstatement hascommon hasexternals hasinitvaluehasnote hasresultnote isallocatableisarrayisarrayofstrings ischaracterischaracterarrayischaracter_or_characterarray iscomplexiscomplexarrayiscomplexfunctioniscomplexfunction_warnisdoubleisdummyroutine isexternal isfunctionisfunction_wrapisint1 isint1array isinteger isintent_aux isintent_cisintent_callback isintent_copy isintent_dict isintent_hide isintent_inisintent_inoutisintent_inplaceisintent_nothide isintent_outisintent_overwrite islogicalislogicalfunctionislong_complex islong_doubleislong_doublefunction islong_longislong_longfunctionismoduleismoduleroutine isoptional isprivate isrequired isroutineisscalarissigned_long_longarrayisstring isstringarrayisstring_or_stringarrayisstringfunction issubroutineissubroutine_wrap isthreadsafe isunsignedisunsigned_charisunsigned_chararrayisunsigned_long_longisunsigned_long_longarrayisunsigned_shortisunsigned_shortarrayl_andl_notl_oroutmessreplaceshow stripcomma throw_error isattr_valuec~tddr!tj|dSdS)Nverboser)optionsgetsysstdoutwrite)ts f/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib64/python3.11/site-packages/numpy/f2py/auxfuncs.pyrYrYAs>{{9a   cdtvS)Ncapi) debugoptionsvars rgrrFs \ !!rhcBd|vo|ddkot| SNtypespec characterr'rls rg _ischaracterrsJ0   ZK!? # rhcBd|vo|ddkot| Srorrrls rg _isstringrvOrtrhc(t|od|vSN charselectorrsrls rgr r Ts    :s!::rhc@t|ot| SNr rrls rgrrXs ( - - Bgcll2BBrhc>t|ot|Sr|r}rls rgrr\s ( - - >'#,,>rhc(t|od|vSrxrzrls rgrJrJ`s    63!66rhc@t|ot| Sr|rJrrls rgrHrHds "3 ' ' < ,<t|ot|Sr|rrls rgrIrIhs "3 ' ' 8GCLL8rhcDt|o|dddkS)N dimensionz(*))rIrls rgrrls&    ?#k"22"6%"??rhc*d|vot| SNrrrrls rgrrrs #  5joo"55rhc^t|pt|pt| Sr|)rrHr'rls rgrFrFvs' @ @C AArhcNt|o|ddvSNrp)complexzdouble complexrFrbrls rgr!r!zs, C== @ 77:  "? ?@rhcRt|o|ddkS)Nrplogicalrrls rgr9r9$ C== =SWWZ00I==rhcRt|o|ddkS)Nrpintegerrrls rgr,r,rrhcRt|o|ddkS)Nrprealrrls rgisrealrs$ C== :SWWZ00F::rhc |ddS#t$r$ |ddcYS#t$rYYdSwxYwwxYw)N kindselector*kindKeyErrorrls rgget_kindrsq>"3''  ~&v. . . .    DDD s  > +> :>:>cz|ddko"t|dkot| SNrpr1)rbrrrls rgr*r*s? 77:  ) + 6 SMMS  6)0%56rhc|t|sdS|ddvrdSt|dkS)Nrrprr8rFrbrrls rgr>r>sC C==q wwz"888q C==C rhct|sdS|ddkrdSt|dkS)Nrrpr-1rrls rgrPrPB C==q wwzi''q C==D  rhct|sdS|ddkrdSt|dkS)Nrrpr-2rrls rgrTrTrrhct|sdS|ddkrdSt|dkS)Nrrpr-4rrls rgrOrOrrhct|sdS|ddkrdSt|dkS)Nrrpr-8rrls rgrRrRrrhct|sdS|ddksdSt|dkS)Nrrprrrrls rgr%r%sB C==q 77:  & ( (q C==C rhct|sdS|ddksdSt|dkS)Nrrpr16rrls rgr<r<sB C==q 77:  & ( (q C==D  rhcJt|sdSt|dkS)Nr32)r!rrls rgr;r;s& S>>q C==D  rhcNt|o|ddvSr)rrbrls rgr"r"s, 3<< @ 77:  "? ?@rhcxt|o+|ddkot|dkSrrrbrrls rgr+r+s; 3<< !CGGJ//9< ! SMMS !rhctt|o)|ddvot|dkS)Nrprrrrls rgrQrQ< 3<< "CGGJ//3II " SMMT !"rhctt|o)|ddvot|dkS)Nrprrrrls rgrUrUrrhctt|o)|ddvot|dkS)Nrprrrrls rgisunsignedarrayrrrhctt|o)|ddvot|dkS)Nrprrrrls rgrSrSrrhctt|o)|ddvot|dkS)Nrprrrrls rgissigned_chararrayr< 3<< !CGGJ//3II ! SMMS !rhctt|o)|ddvot|dkS)Nrpr2rrls rgissigned_shortarrayrrrhctt|o)|ddvot|dkS)Nrpr4rrls rgissigned_arrayrrrhctt|o)|ddvot|dkS)Nrprrrrls rgrGrGrrhcd|vo d|dvS)Nattrspec allocatablerls rgrr s   A#j/!AArhc*d|vpt| Sr)rHrls rg ismutablers3&7(3-- 88rhc d|vS)N modulenamerrouts rgrArAs 4 rhc"d|vo d|dkS)Nblockmodulerrs rgr@r@s d? 8x4=88rhc"d|vo d|dkS)Nrfunctionrrs rgr(r(s d? :zT']::rhcpt|rdStot|ot| SNr)r. wrapfuncsr(r'rs rgr)r)s:$q  DD)) D:d3C3C/CDrhc"d|vo d|dkS)Nr subroutinerrs rgrLrL$s d? <|tG}<t|pt|Sr|)rArrs rgrequiresf90wrapperr<s 4 9OD$9$99rhc>t|pt|Sr|)r(rLrs rgrErE@s d   1|D111rhct|sdSd|vr |d}n|d}||dvrt|d|SdSNrresultnamer)r(r9rrs rgr:r:D` d  q4 N LDLfa))) 1rhct|sdSd|vr |d}n|d}||dvrt|d|SdSr)r(r>rs rgr?r?Ps` d  q4 N LDL4<?+++ 1rhct|sdSd|vr |d}n|d}||dvrt|d|SdSr)r(r<rs rgr=r=\s` d  q4 N LDLT&\!_--- 1rhct|sdSd|vr |d}n|d}||dvrt|d|SdSr)r(r!rs rgr#r#hrrhcFt|rtddSdS)Na ************************************************************** Warning: code with a function returning complex value may not work correctly with your Fortran compiler. When using GNU gcc/g77 compilers, codes should work correctly for callbacks with: f2py -c -DF2PY_CB_RETURNCOMPLEX ************************************************************** rr)r#rYrs rgr$r$ts9 H I I Iq 1rhct|sdSd|vr |d}n|d}||dvrt|d|SdSr)r(rHrs rgrKrKs` d  q4 N LDLV Q((( 1rhcd|vo|dS)N externalsrrs rgrrs $  44 #44rhcd|vo d|dvS)Nf2pyenhancements threadsaferrs rgrNrNs"  % 4 4 23 34rhcd|vo|dS)Nrrrs rg hasvariablesrs T> *d6l*rhcPd|vo"d|dvod|dvot|S)Nroptionalrequired)r6rls rgrBrBsB #  .*J"? . c*o - I3CC3H3HIrhcd|vo d|dvS)Nrexternalrrls rgr'r's   >s:!>>rhc@t| ot|Sr|)rBr6rls rgrDrDs#  8#3C#8#88rhcd|vrdSd|dvrdSd|dvrdSd|dvrdSd|dvrdSd|dvrdSd |dvrdSdS) Nintentrhiderinplaceinoutinoutoutinrrls rgr3r3ssq XqCM!!q s8}q H q#h-q#h-q 1rhcnd|vo1d|dvs d|dvod|dvod|dvo d|dvS)Nrrrrrrrrls rgr4r4sg O KCM!9"% s8} $ K*.c(m*C K #h- ' K,5S],JLrhc2d|dgvS)Nrrrrls rgr7r7 CGGHb)) ))rhcd|voAd|dvp7d|dvo-d|dvo#ttt| S)Nrrrr)rXr4r5rls rgr2r2sd O D3x=!8"C c(m #BCM(AB;T.*:;;C@@@Erhc"t| Sr|)r2rls rgr6r6sS!! !!rhc2d|dgvS)Ncrrrls rgr.r.s #''(B'' ''rhc2d|dgvS)Ncacherrrls rgisintent_cachers cggh++ ++rhc2d|dgvS)Ncopyrrrls rgr0r0s SWWXr** **rhc2d|dgvS)N overwriterrrls rgr8r8 #''(B// //rhc2d|dgvS)Ncallbackrrrls rgr/r/ 2.. ..rhc2d|dgvS)Nrrrrls rgr5r5s "-- --rhc2d|dgvS)Nauxrrrls rgr-r-rrhc2d|dgvS)Naligned4rrrls rgisintent_aligned4rrrhc2d|dgvS)Naligned8rrrls rgisintent_aligned8r rrhc2d|dgvS)N aligned16rrrls rgisintent_aligned16r#rrh INTENT_IN INTENT_INOUT INTENT_OUT INTENT_HIDE INTENT_CACHEINTENT_COPTIONALINTENT_INPLACEINTENT_ALIGNED4INTENT_ALIGNED8INTENT_ALIGNED16cd|vo d|dvS)Nrprivaterrls rgrCrCs   =c*o!==rhc d|vS)N=rrls rgrrs #:rhcDt|sdS|dddvS)Nrr2)"')rrls rghasinitvalueasstringr6 s*   q s8A;* $$rhc d|vS)Nnoterrls rgrrs S=rhct|sdSd|vr |d}n|d}||dvrt|d|SdSr)r(rrs rgrrs` d  q4 N LDLtF|A''' 1rhc d|vS)Ncommonrrs rgrrs t rhct|rdSt|r|dD]}t|rdSdS)Nrbodyr)rrcontainscommon)rbs rgr>r>#sWqt}}f  Aa   qq  1rhct|rdSt|sdS|dD]}t|rdSdS)Nrrr=)r@rcontainsmodule)rr?s rgrArA-s\q 5>>q 6] !   11  1rhc d|vS)Nr=rrs rgrr8s T>rhc$t|duSr|)rrs rgrr<s D ! ! --rhcdS)Nrrrls rgistruerE@ 1rhcdSrrrls rgisfalserHDrFrhceZdZdS) F2PYErrorN)__name__ __module__ __qualname__rrhrgrJrJHsDrhrJceZdZdZdZdS)r]c||_dSr|)mess)selfrPs rg__init__zthrow_error.__init__Ns  rhc<d|d|jd}t|)Nz var = z Message:  )rPrJ)rQrmrPs rg__call__zthrow_error.__call__Qs$47CCCoorhN)rKrLrMrRrUrrhrgr]r]Ls2rhr]cdg}}tt|D]"}d|||fz}|d|z#t|dd|S)Nlambda v %s,f%d=f[%d]f%d(v)rz and rangelenappendevaljoinfl1l2is rgrVrVVsu B 3q66]]"" r1aj ( (a.!!!! 222w||B///0 1 11rhcdg}}tt|D]"}d|||fz}|d|z#t|dd|S)NrWrXrYrz or rZr`s rgrXrX^sr B 3q66]]"" r1aj ( (a.!!!! 222v{{2/ 0 00rhc tdS)Nzlambda v,f=f:not f(v))r^)ras rgrWrWfs ' ( ((rhcJ |dddkS#t$rYdSwxYw)Nr fortrannamerrrs rgr&r&js?&' 6"<< qqs  ""c |dd}|dkrt|std|dztn#t$r |d}YnwxYw|S)Nrrhriz"Failed to use fortranname from %s r)rr )rrs rgrrqs &' 6 2::N  9,-/ 0 0 0N  F| Ksrhc<gdgc}fddD}|zdvrCdD]}|vr||D]}||vr||n |dz}|fS)NrcRg|]#}td|r|v!|$S)r)r-).0rrrs rg zgetargs2..s@"""Qd6l1o1N1N"D== ==rhrr)rbkeysr])rrauxvarsrrs` @rgr r s&"--NHd"""""$v,++--"""G T>DTj! # #ADyy""" # #A  """ #T&\) >rhcd|vrdSd}|ddkr|d|df}|d|dS)Nf2pymultilinesrz python modulerr)rks rgrrsTt##t A G}'' M4< '  ! % %a . ..rhcVdt|z dz dz}d|dzd|d|dzdS)NPz/*r z*/)r\)rlns rgr r s> s4yy.1  "BB#XXXtttR#XXX 66rhcdt|trttfd|gS|gS)Nc|||zSr|r)xyras rgzflatlist..sq11Q44xrh)rnrprflatlist)lsts rgrrs7#tBX777bAAA 5Lrhc6|r|ddkr |ddS|S)Nrrr)ss rgr\r\ s(QrUc\\"v Hrhric *ttrfdDSttrfdDSdtzD]}|dkr dvr|dvrd|}n}t|tr@d|z|t |d|z|S)Nc2g|]}t|SrrZ)r_m defaultsepros rgrzreplace..s%999R,,999rhc2g|]}t|Srr)rrrrs rgrzreplace..s%999rAz**999rhr separatorsforz#%s#)rnrprrZr_r)rorrrseps``` rgrZrZs*!T:99999q9999#t:99999S9999 affhh  2 2     a  A?);$;$;O$Q'CCC adD ! ! 2++flCHHXad^^,D,DEECC++flAaD11CC Jrhc,t|tr|D]}t||}|S|D]Q}|ddkr||vr1t||tr ||g||<t||trRt||tr||||z||<||||t||t rt||t re|dkr@||D]#}|||vr||||||<$%t||||||<F||||<S|S)Nr_r)rnrpr rror]dict)rdarrrk1s rgr r "s"d # #AB""BB WWYY Q43;;  77"Q%%% A1"Q%&& 9beT**(qEBqEMBqEEqELLA''''BqE4(( 9beT**9O++"$Q%**,,66B!A,.qE"I1b 6!+2a5"Q% 8 81qEBqEE Irhc i}t|tr.|D])}t|||}t||}d|vrn*|Sd|vr|d|s|Sd|vr7td|di||}d|vrt j|d|D]}|dkr ||||<t||trt|||||<nt||trJg||<||D]:}t||i||} || vr!|| | |;n|ddkrt||trLg||<||D]*} t| tj r | |rt||| trr||| D]b}t|tr"td|i||}d|vr |d}nd }|| t||c||| }t|tr!td|i|}d|vr |d}nd }|| t||,n%td t||zt||tr9t||d kr||d||<||gkr||=|S) N_break_checkneedneedsrrr supertextrizapplyrules: ignoring rule %s. r)rnrprr r append_needsrrorZr]rtypes FunctionTyper rqr\) rulesrrmretrurrresrrdrrs rgrr?s C%  AAq#&&BS"%%C2~~ 5/%/#"6"6  '5=11c:: c>>  G - - - ZZ\\**   1XCF  eAh $ $! HU1Xq))CFF a$ ' ' HCF1X ) )A3//77FMM"Q%((( )qTS[[  a$ ' ' HCFAhmmoo 5 5b%"4555""S''5!%(2,555!&q"99A)!T22+&0+q1A1c&J&J#.##5#5(+K(8AA(*AFMM'!Q--88889"!HRL%a..'",k1-=q"A"AC*c11$' $4$&A gamm444' 5* 5U1XF G G G c!fd # # 3q6{{aQA1v||F Jrh)rr)ri)__doc__pprintrcr functoolsrrirr__all__version f2py_versionstderrrer r[rarkrrYrrsrvr rrrJrHrIrrrFr!r9r,rrr*r>rPrTrOrRr%r<r;r"r+rQrUrrSrrrrGrrrAr@r(r)rLrMr^rrrEr:r?r=r#r$rKrrNrrBr'rDr3r4r7r2r6r.rr0r8r/r5r-rr r#r1rCrr6rrrr>rArrrErH ExceptionrJr]rVrXrWr&rrvrr rrrrr rr rr\rZr rrrhrgrs    :"  *  }   """  ;;;CCC???777===999@@@ 666BBB@@@ >>>>>>;;;666    !!!!!!!!!!!!   !!!!!! @@@ !!! """ """ """ """ !!! !!! !!! !!! BBB999   999;;;EEE ===888 ...:::222                        555444 +++III ???999   $LLL ***EEE """(((,,,+++000///...***//////000k>>|]MZZ!#3"$5"$5#%7 >>>%%%           ...              222111)))       <444')$$$$N///:::222    "///777     &: ;;;;;;rh