§
    ÈÁ³gŒi  ã                   ó  — 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
 g d¢Zej        Zej        Zi Zg ZdZd	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z d„ Z!d„ Z"d„ Z#d„ Z$d„ Z%d„ Z&d„ Z'd„ Z(d „ Z)d!„ Z*d"„ Z+d#„ Z,d$„ Z-d%„ Z.d&„ Z/d'„ Z0d(„ Z1d)„ Z2d*„ Z3d+„ Z4d,„ Z5d-„ Z6d.„ Z7d/„ Z8d0„ Z9d1„ Z:d2„ Z;d3„ Z<d4„ Z=d5„ Z>d6„ Z?d7„ Z@d8„ ZAd9„ ZBd:„ ZCd;„ ZDd<„ ZEd=„ ZFd>„ ZGd?„ ZHd@„ ZIdA„ ZJdB„ ZKdC„ ZLdD„ ZMdE„ ZNdF„ ZOdG„ ZPdH„ ZQdI„ ZRdJ„ ZSdK„ ZTdL„ ZUdM„ ZVdN„ ZWdO„ ZXdP„ ZYdQ„ ZZdR„ Z[dS„ Z\dT„ Z]dU„ Z^dV„ Z_eQdWeRdXeSdYeTdZeWd[eVd\eLd]e[d^e]d_e^d`e_daiZ`db„ Zadc„ Zbdd„ Zcde„ Zddf„ Zedg„ Zfdh„ Zgdi„ Zhdj„ Zidk„ Zjdl„ Zkdm„ Zldn„ Zm G do„ dpen¦  «        Zo G dq„ dr¦  «        Zpds„ Zqdt„ Zrdu„ Zsdv„ Ztdw„ ZudŽdx„Zvdy„ Zwi fdz„Zxd{„ Zyd|„ Zzd}„ Z{d~„ Z|d„ Z}d€„ Z~d�„ Zd‚„ Z€dƒ„ Z�d�d…„Z‚d†„ Zƒi fd‡„Z„ ej…        dˆej†        ¦  «        j‡        Zˆ ej…        d‰ej†        ¦  «        j‡        Z‰dŠ„ ZŠd‹„ Z‹d�d�„ZŒdS )‘a9  
Auxiliary functions for f2py2e.

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 (BSD style) LICENSE.

NO WARRANTY IS EXPRESSED OR IMPLIED.  USE AT YOUR OWN RISK.
é    N)Úreduceé   )Ú__version__)Úcfuncs)Úerrmess)_Ú
applyrulesÚ	debugcapiÚ
dictappendr   ÚgentitleÚgetargs2ÚgetcallprotoargumentÚgetcallstatementÚgetfortrannameÚgetpymethoddefÚ
getrestdocÚgetusercodeÚgetusercode1ÚgetdimensionÚhasbodyÚhascallstatementÚ	hascommonÚhasexternalsÚhasinitvalueÚhasnoteÚhasresultnoteÚisallocatableÚisarrayÚisarrayofstringsÚischaracterÚischaracterarrayÚischaracter_or_characterarrayÚ	iscomplexÚiscstyledirectiveÚiscomplexarrayÚiscomplexfunctionÚiscomplexfunction_warnÚisdoubleÚisdummyroutineÚ
isexternalÚ
isfunctionÚisfunction_wrapÚisint1Úisint1arrayÚ	isintegerÚisintent_auxÚ
isintent_cÚisintent_callbackÚisintent_copyÚisintent_dictÚisintent_hideÚisintent_inÚisintent_inoutÚisintent_inplaceÚisintent_nothideÚisintent_outÚisintent_overwriteÚ	islogicalÚislogicalfunctionÚislong_complexÚislong_doubleÚislong_doublefunctionÚislong_longÚislong_longfunctionÚismoduleÚismoduleroutineÚ
isoptionalÚ	isprivateÚ
isvariableÚ
isrequiredÚ	isroutineÚisscalarÚissigned_long_longarrayÚisstringÚisstringarrayÚisstring_or_stringarrayÚisstringfunctionÚissubroutineÚget_f2py_modulenameÚissubroutine_wrapÚisthreadsafeÚ
isunsignedÚisunsigned_charÚisunsigned_chararrayÚisunsigned_long_longÚisunsigned_long_longarrayÚisunsigned_shortÚisunsigned_shortarrayÚl_andÚl_notÚl_orÚoutmessÚreplaceÚshowÚ
stripcommaÚthrow_errorÚisattr_valueÚgetuseblocksÚprocess_f2cmap_dictÚcontainscommonc                 ó~   — t                                dd¦  «        r!t          j                             | ¦  «         d S d S )NÚverboser   )ÚoptionsÚgetÚsysÚstdoutÚwrite)Úts    úQ/var/www/html/mpstechhub/venv/lib/python3.11/site-packages/numpy/f2py/auxfuncs.pyr]   r]   <   s>   € Ý‡{‚{�9˜aÑ Ô ð ÝŒ
×Ò˜ÑÔÐÐÐðð ó    c                 ó   — dt           v S )NÚcapi)Údebugoptions©Úvars    rn   r	   r	   A   s   € Ø•\Ð!Ð!ro   c                 óB   — d| v o| d         dk    ot          | ¦  «         S ©NÚtypespecÚ	character©r)   rs   s    rn   Ú_ischaracterrz   E   ó0   € Ø˜Ðð   Z¤°KÒ!?ð Ý˜#‰ŒÐðro   c                 óB   — d| v o| d         dk    ot          | ¦  «         S rv   ry   rs   s    rn   Ú	_isstringr}   J   r{   ro   c                 ó(   — t          | ¦  «        od| vS ©NÚcharselector©rz   rs   s    rn   r!   r!   O   s   € Ý˜ÑÔÐ: °sÐ!:Ð:ro   c                 ó@   — t          | ¦  «        ot          | ¦  «         S ©N©r!   r   rs   s    rn   r   r   S   s   € Ý(¨Ñ-Ô-ÐBµg¸c±l´lÐ2BÐBro   c                 ó>   — t          | ¦  «        ot          | ¦  «        S rƒ   r„   rs   s    rn   r    r    W   s   € Ý(¨Ñ-Ô-Ð>µ'¸#±,´,Ð>ro   c                 ó(   — t          | ¦  «        od| v S r   r�   rs   s    rn   rM   rM   [   s   € Ý˜ÑÔÐ6 °3Ð!6Ð6ro   c                 ó@   — t          | ¦  «        ot          | ¦  «         S rƒ   ©rM   r   rs   s    rn   rK   rK   _   s   € Ý" 3Ñ'Ô'Ð<µ¸±´Ð,<Ð<ro   c                 ó>   — t          | ¦  «        ot          | ¦  «        S rƒ   rˆ   rs   s    rn   rL   rL   c   s   € Ý" 3Ñ'Ô'Ð8­G°C©L¬LÐ8ro   c                 óD   — t          | ¦  «        o| d         d         dk    S )NÚ	dimensionéÿÿÿÿz(*))rL   rs   s    rn   r   r   g   s&   € õ ˜ÑÔÐ? # kÔ"2°2Ô"6¸%Ò"?Ð?ro   c                 ó*   — d| v ot          | ¦  «         S ©Nr‹   ry   rs   s    rn   r   r   m   s   € Ø˜#ÐÐ5¥j°¡o¤oÐ"5Ð5ro   c                 ó^   — t          | ¦  «        pt          | ¦  «        pt          | ¦  «         S rƒ   )r   rK   r)   rs   s    rn   rI   rI   q   s'   € Ý˜‘”Ð@¥¨¡¤Ð@µ¸C±´ÐAÐAro   c                 óN   — t          | ¦  «        o|                      d¦  «        dv S ©Nrw   )Úcomplexzdouble complex©rI   ri   rs   s    rn   r"   r"   u   s,   € Ý�C‰=Œ=ð @Ø�7Š7�:ÑÔÐ"?Ð?ð@ro   c                 óR   — t          | ¦  «        o|                      d¦  «        dk    S )Nrw   Úlogicalr“   rs   s    rn   r;   r;   z   ó$   € Ý�C‰=Œ=Ð=˜SŸWšW ZÑ0Ô0°IÒ=Ð=ro   c                 óR   — t          | ¦  «        o|                      d¦  «        dk    S )Nrw   Úintegerr“   rs   s    rn   r.   r.   ~   r–   ro   c                 óR   — t          | ¦  «        o|                      d¦  «        dk    S )Nrw   Úrealr“   rs   s    rn   Úisrealr›   ‚   s$   € Ý�C‰=Œ=Ð:˜SŸWšW ZÑ0Ô0°FÒ:Ð:ro   c                 ó‚   — 	 | d         d         S # t           $ r$ 	 | d         d         cY S # t           $ r Y Y d S w xY ww xY w)NÚkindselectorÚ*Úkind©ÚKeyErrorrs   s    rn   Úget_kindr¢   †   sq   € ðØ�>Ô" 3Ô'Ð'øÝð ð ð ð	Ø�~Ô& vÔ.Ð.Ð.Ð.øÝð 	ð 	ð 	ØˆDˆDˆDð	øøøðøøøs    ‚ �
>›+¨>«
:µ>¹:º>c                 óz   — |                       d¦  «        dk    o"t          | ¦  «        dk    ot          | ¦  «         S ©Nrw   r˜   Ú1)ri   r¢   r   rs   s    rn   r,   r,   �   s?   € Ø�7Š7�:ÑÔ )Ò+ð 6Ý�S‰MŒM˜SÒ ð6Ý)0°©¬Ð%5ð6ro   c                 ó|   — t          | ¦  «        sdS |                      d¦  «        dvrdS t          | ¦  «        dk    S )Nr   rw   ©r˜   r•   Ú8©rI   ri   r¢   rs   s    rn   r@   r@   •   sC   € Ý�C‰=Œ=ð ØˆqØ
‡w‚wˆzÑÔÐ"8Ð8Ð8ØˆqÝ�C‰=Œ=˜CÒÐro   c                 ó€   — t          | ¦  «        sdS |                      d¦  «        dk    rdS t          | ¦  «        dk    S )Nr   rw   r˜   ú-1r©   rs   s    rn   rT   rT   �   óB   € Ý�C‰=Œ=ð ØˆqØ
‡w‚wˆzÑÔ˜iÒ'Ð'ØˆqÝ�C‰=Œ=˜DÒ Ð ro   c                 ó€   — t          | ¦  «        sdS |                      d¦  «        dk    rdS t          | ¦  «        dk    S )Nr   rw   r˜   ú-2r©   rs   s    rn   rX   rX   ¥   r¬   ro   c                 ó€   — t          | ¦  «        sdS |                      d¦  «        dk    rdS t          | ¦  «        dk    S )Nr   rw   r˜   ú-4r©   rs   s    rn   rS   rS   ­   r¬   ro   c                 ó€   — t          | ¦  «        sdS |                      d¦  «        dk    rdS t          | ¦  «        dk    S )Nr   rw   r˜   ú-8r©   rs   s    rn   rV   rV   µ   r¬   ro   c                 ó€   — t          | ¦  «        sdS |                      d¦  «        dk    sdS t          | ¦  «        dk    S )Nr   rw   rš   r¨   r©   rs   s    rn   r'   r'   ½   sB   € Ý�C‰=Œ=ð ØˆqØ�7Š7�:ÑÔ &Ò(Ð(ØˆqÝ�C‰=Œ=˜CÒÐro   c                 ó€   — t          | ¦  «        sdS |                      d¦  «        dk    sdS t          | ¦  «        dk    S )Nr   rw   rš   Ú16r©   rs   s    rn   r>   r>   Å   sB   € Ý�C‰=Œ=ð ØˆqØ�7Š7�:ÑÔ &Ò(Ð(ØˆqÝ�C‰=Œ=˜DÒ Ð ro   c                 óJ   — t          | ¦  «        sdS t          | ¦  «        dk    S )Nr   Ú32)r"   r¢   rs   s    rn   r=   r=   Í   s&   € Ý�S‰>Œ>ð ØˆqÝ�C‰=Œ=˜DÒ Ð ro   c                 óN   — t          | ¦  «        o|                      d¦  «        dv S r‘   )r   ri   rs   s    rn   r$   r$   Ó   s,   € Ý�3‰<Œ<ð @Ø�7Š7�:ÑÔÐ"?Ð?ð@ro   c                 óx   — t          | ¦  «        o+|                      d¦  «        dk    ot          | ¦  «        dk    S r¤   ©r   ri   r¢   rs   s    rn   r-   r-   Ø   s;   € Ý�3‰<Œ<ð !˜CŸGšG JÑ/Ô/°9Ò<ð !Ý�S‰MŒM˜SÒ ð!ro   c                 ót   — t          | ¦  «        o)|                      d¦  «        dv ot          | ¦  «        dk    S )Nrw   r§   r«   rº   rs   s    rn   rU   rU   Ý   ó<   € Ý�3‰<Œ<ð "˜CŸGšG JÑ/Ô/Ð3IÐIð "Ý�S‰MŒM˜TÒ!ð"ro   c                 ót   — t          | ¦  «        o)|                      d¦  «        dv ot          | ¦  «        dk    S )Nrw   r§   r®   rº   rs   s    rn   rY   rY   â   r¼   ro   c                 ót   — t          | ¦  «        o)|                      d¦  «        dv ot          | ¦  «        dk    S )Nrw   r§   r°   rº   rs   s    rn   Úisunsignedarrayr¿   ç   r¼   ro   c                 ót   — t          | ¦  «        o)|                      d¦  «        dv ot          | ¦  «        dk    S )Nrw   r§   r²   rº   rs   s    rn   rW   rW   ì   r¼   ro   c                 ót   — t          | ¦  «        o)|                      d¦  «        dv ot          | ¦  «        dk    S )Nrw   r§   r¥   rº   rs   s    rn   Úissigned_chararrayrÂ   ñ   ó<   € Ý�3‰<Œ<ð !˜CŸGšG JÑ/Ô/Ð3IÐIð !Ý�S‰MŒM˜SÒ ð!ro   c                 ót   — t          | ¦  «        o)|                      d¦  «        dv ot          | ¦  «        dk    S )Nrw   r§   Ú2rº   rs   s    rn   Úissigned_shortarrayrÆ   ö   rÃ   ro   c                 ót   — t          | ¦  «        o)|                      d¦  «        dv ot          | ¦  «        dk    S )Nrw   r§   Ú4rº   rs   s    rn   Úissigned_arrayrÉ   û   rÃ   ro   c                 ót   — t          | ¦  «        o)|                      d¦  «        dv ot          | ¦  «        dk    S )Nrw   r§   r¨   rº   rs   s    rn   rJ   rJ      rÃ   ro   c                 ó   — d| v o	d| d         v S )NÚattrspecÚallocatable© rs   s    rn   r   r     s   € Ø˜ÐÐA °#°j´/Ð!AÐAro   c                 ó*   — d| vpt          | ¦  «         S rŽ   )rK   rs   s    rn   Ú	ismutablerÐ   	  s   € Ø 3Ð&Ð7­(°3©-¬-Ð8Ð8ro   c                 ó
   — d| v S )NÚ
modulenamerÎ   ©Úrouts    rn   rC   rC     s   € Ø˜4ÐÐro   c                 ó"   — d| v od| d         k    S )NÚblockÚmodulerÎ   rÓ   s    rn   rB   rB     s   € Ø�dˆ?Ð8˜x¨4°¬=Ò8Ð8ro   c                 ó"   — d| v od| d         k    S )NrÖ   ÚfunctionrÎ   rÓ   s    rn   r*   r*     s   € Ø�dˆ?Ð:˜z¨T°'¬]Ò:Ð:ro   c                 óp   — t          | ¦  «        rdS t          ot          | ¦  «        ot          | ¦  «         S ©Nr   )r0   Ú	wrapfuncsr*   r)   rÓ   s    rn   r+   r+     s:   € Ý�$ÑÔð ØˆqÝÐD� DÑ)Ô)ÐDµ:¸dÑ3CÔ3CÐ/CÐDro   c                 ó"   — d| v od| d         k    S )NrÖ   Ú
subroutinerÎ   rÓ   s    rn   rO   rO     s   € Ø�dˆ?Ð<˜|¨t°G¬}Ò<Ð<ro   c                 ó`   — t          | ¦  «        rdS t          | ¦  «        ot          | ¦  «        S rÛ   )r0   rO   ÚhasassumedshaperÓ   s    rn   rQ   rQ   #  s2   € Ý�$ÑÔð ØˆqÝ˜ÑÔÐ7¥/°$Ñ"7Ô"7Ð7ro   c                 ó2   — d|                       dg ¦  «        v S )NÚvaluerÌ   ©ri   rs   s    rn   rb   rb   (  s   € Ø�c—g’g˜j¨"Ñ-Ô-Ð-Ð-ro   c                 óÎ   — |                       d¦  «        rdS | d         D ]D}| d                               |i ¦  «                              dg ¦  «        D ]}|dk    r	d| d<     dS ŒŒEdS )Nrà   TÚargsÚvarsr‹   ú:Frã   )rÔ   ÚaÚds      rn   rà   rà   ,  s�   € Ø‡x‚xÐ!Ñ"Ô"ð ØˆtØ�&Œ\ð ð ˆØ�f”×!Ò! ! RÑ(Ô(×,Ò,¨[¸"Ñ=Ô=ð 	ð 	ˆAØ�CŠxˆxØ*.�Ð&Ñ'Ø�t�t�tð ð	ð ˆ5ro   c                 ó>   — t          | ¦  «        pt          | ¦  «        S rƒ   )rC   rà   rÓ   s    rn   Úrequiresf90wrapperrë   7  s   € Ý˜4Ñ Ô Ð9¥O°DÑ$9Ô$9Ð9ro   c                 ó>   — t          | ¦  «        pt          | ¦  «        S rƒ   )r*   rO   rÓ   s    rn   rH   rH   ;  s   € Ý�dÑÔÐ1�|¨DÑ1Ô1Ð1ro   c                 óœ   — t          | ¦  «        sdS d| v r	| d         }n| d         }|| d         v rt          | d         |         ¦  «        S dS ©Nr   ÚresultÚnameræ   )r*   r;   ©rÔ   rè   s     rn   r<   r<   ?  ó`   € Ý�dÑÔð ØˆqØ�4ÐÐØ�ŒNˆˆà�ŒLˆØˆD�ŒLÐÐÝ˜˜fœ aœÑ)Ô)Ð)Øˆ1ro   c                 óœ   — t          | ¦  «        sdS d| v r	| d         }n| d         }|| d         v rt          | d         |         ¦  «        S dS rî   )r*   r@   rñ   s     rn   rA   rA   K  s`   € Ý�dÑÔð ØˆqØ�4ÐÐØ�ŒNˆˆà�ŒLˆØˆD�ŒLÐÐÝ˜4 œ<¨œ?Ñ+Ô+Ð+Øˆ1ro   c                 óœ   — t          | ¦  «        sdS d| v r	| d         }n| d         }|| d         v rt          | d         |         ¦  «        S dS rî   )r*   r>   rñ   s     rn   r?   r?   W  s`   € Ý�dÑÔð ØˆqØ�4ÐÐØ�ŒNˆˆà�ŒLˆØˆD�ŒLÐÐÝ˜T &œ\¨!œ_Ñ-Ô-Ð-Øˆ1ro   c                 óœ   — t          | ¦  «        sdS d| v r	| d         }n| d         }|| d         v rt          | d         |         ¦  «        S dS rî   )r*   r"   rñ   s     rn   r%   r%   c  rò   ro   c                 óF   — t          | ¦  «        rt          d¦  «         dS dS )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
    **************************************************************
r   r   )r%   r]   rÓ   s    rn   r&   r&   o  s9   € Ý˜ÑÔð 	Ýð Hñ 	Iô 	Ið 	Ið ˆqØˆ1ro   c                 óœ   — t          | ¦  «        sdS d| v r	| d         }n| d         }|| d         v rt          | d         |         ¦  «        S dS rî   )r*   rK   rñ   s     rn   rN   rN   }  s`   € Ý�dÑÔð ØˆqØ�4ÐÐØ�ŒNˆˆà�ŒLˆØˆD�ŒLÐÐÝ˜˜Vœ QœÑ(Ô(Ð(Øˆ1ro   c                 ó   — d| v o| d         S )NÚ	externalsrÎ   rÓ   s    rn   r   r   ‰  s   € Ø˜$ÐÐ4 4¨Ô#4Ð4ro   c                 ó   — d| v o	d| d         v S )NÚf2pyenhancementsÚ
threadsaferÎ   rÓ   s    rn   rR   rR   �  s"   € Ø Ð%ð 4Ø˜4Ð 2Ô3Ð3ð4ro   c                 ó   — d| v o| d         S )Nræ   rÎ   rÓ   s    rn   Úhasvariablesrþ   ’  s   € Ø�Tˆ>Ð*˜d 6œlÐ*ro   c                 óP   — d| v o"d| d         v od| d         vot          | ¦  «        S )NrÌ   ÚoptionalÚrequired)r8   rs   s    rn   rD   rD   –  sB   € Ø˜#Ðð . *°°J´Ð"?ð .Ø˜c *œoÐ-ðIÝ3CÀCÑ3HÔ3HðIro   c                 ó   — d| v o	d| d         v S )NrÌ   ÚexternalrÎ   rs   s    rn   r)   r)   ›  s   € Ø˜ÐÐ> ¨s°:¬Ð!>Ð>ro   c                 ó®   ‡— dŠd|                       ¦   «         v r9t          d„ | d         D ¦   «         ¦  «        rˆfd„| d         D ¦   «         d         S d S d S )Nz	\((.*?)\)rÌ   c              3   ó   K  — | ]}d |v V — Œ	dS )r‹   NrÎ   )Ú.0Úss     rn   ú	<genexpr>zgetdimension.<locals>.<genexpr>¢  s'   è è € Ð9Ð9 Aˆ{˜aÐÐ9Ð9Ð9Ð9Ð9Ð9ro   c                 ó:   •— g | ]}t          j        ‰|¦  «        ‘ŒS rÎ   )ÚreÚfindall)r  ÚvÚ
dimpatterns     €rn   ú
<listcomp>z getdimension.<locals>.<listcomp>£  s%   ø€ ÐGÐGÐG°!•B”J˜z¨1Ñ-Ô-ÐGÐGÐGro   r   )ÚkeysÚany)rt   r  s    @rn   r   r   Ÿ  sv   ø€ Ø€JØ�S—X’X‘Z”ZÐÐÝÐ9Ð9¨¨Z¬Ð9Ñ9Ô9Ñ9Ô9ð 	KØGÐGÐGÐG°s¸:´ÐGÑGÔGÈÔJÐJð  Ðð	Kð 	Kro   c                 ó@   — t          | ¦  «         ot          | ¦  «        S rƒ   )rD   r8   rs   s    rn   rG   rG   ¦  s   € Ý˜#‰ŒÐÐ8Õ#3°CÑ#8Ô#8Ð8ro   c                 óB   ‡ — h d£}t          ˆ fd„|D ¦   «         ¦  «        S )N>   ÚpymethoddefÚcallstatementÚcallprotoargumentc              3   óD   •K  — | ]}|‰                      ¦   «         v V — Œd S rƒ   ©Úlower)r  Ú	directiveÚ	f2py_lines     €rn   r  z$iscstyledirective.<locals>.<genexpr>¬  s2   øè è € ÐJÐJ°)ˆy˜IŸOšOÑ-Ô-Ð-ÐJÐJÐJÐJÐJÐJro   )r  )r  Ú
directivess   ` rn   r#   r#   ª  s1   ø€ ØFÐFÐF€JÝÐJÐJÐJÐJ¸zÐJÑJÔJÑJÔJÐJro   c                 ó¢   — d| vrdS d| d         v rdS d| d         v rdS d| d         v rdS d| d         v rdS d| d         v rdS d	| d         v rdS dS )
NÚintentr   Úhider   ÚinplaceÚinÚoutÚinoutÚoutinrÎ   rs   s    rn   r5   r5   ¯  s�   € Ø�sÐÐØˆqØ��X”ÐÐØˆqØ�C˜”MÐ!Ð!ØˆqØˆs�8Œ}ÐÐØˆqØ��H”ÐÐØˆqØ�#�h”-ÐÐØˆqØ�#�h”-ÐÐØˆqØˆ1ro   c                 ón   — d| v o1d| d         v s
d| d         v od| d         vod| d         vo	d| d         vS )Nr  r"  r#  r   r  r  rÎ   rs   s    rn   r6   r6   Á  sg   € Ø˜ˆOð K ¨C°¬MÐ!9ð "%Ø�s˜8”}Ð$ðKØ*.°c¸(´mÐ*CðKà˜#˜hœ-Ð'ðKà,5¸SÀ¼]Ð,JðLro   c                 ó2   — d|                       dg ¦  «        v S )Nr!  r  rã   rs   s    rn   r9   r9   Ç  ó   € Ø�C—G’G˜H bÑ)Ô)Ð)Ð)ro   c                 óŽ   — d| v oAd| d         v p7d| d         v o-d| d         vo# t          t          t          ¦  «        | ¦  «         S )Nr  r  r!  r   )r\   r6   r7   rs   s    rn   r4   r4   Ë  sd   € Ø˜ˆOð D ¨3¨x¬=Ð!8ð "CØ�c˜(”mÐ#ð B¨°C¸´MÐ(Að BØ;•T�.Õ*:Ñ;Ô;¸CÑ@Ô@Ð@ðEro   c                 ó"   — t          | ¦  «         S rƒ   )r4   rs   s    rn   r8   r8   Ñ  s   € Ý˜SÑ!Ô!Ð!Ð!ro   c                 ó2   — d|                       dg ¦  «        v S )NÚcr  rã   rs   s    rn   r0   r0   Õ  s   € Ø�#—'’'˜( BÑ'Ô'Ð'Ð'ro   c                 ó2   — d|                       dg ¦  «        v S )NÚcacher  rã   rs   s    rn   Úisintent_cacher-  Ù  s   € Ø�c—g’g˜h¨Ñ+Ô+Ð+Ð+ro   c                 ó2   — d|                       dg ¦  «        v S )NÚcopyr  rã   rs   s    rn   r2   r2   Ý  s   € Ø�S—W’W˜X rÑ*Ô*Ð*Ð*ro   c                 ó2   — d|                       dg ¦  «        v S )NÚ	overwriter  rã   rs   s    rn   r:   r:   á  ó   € Ø˜#Ÿ'š' (¨BÑ/Ô/Ð/Ð/ro   c                 ó2   — d|                       dg ¦  «        v S )NÚcallbackr  rã   rs   s    rn   r1   r1   å  ó   € Ø˜Ÿš ¨2Ñ.Ô.Ð.Ð.ro   c                 ó2   — d|                       dg ¦  «        v S )Nr  r  rã   rs   s    rn   r7   r7   é  s   € Ø˜Ÿš ¨"Ñ-Ô-Ð-Ð-ro   c                 ó2   — d|                       dg ¦  «        v S )NÚauxr  rã   rs   s    rn   r/   r/   í  r&  ro   c                 ó2   — d|                       dg ¦  «        v S )NÚaligned4r  rã   rs   s    rn   Úisintent_aligned4r;  ñ  r5  ro   c                 ó2   — d|                       dg ¦  «        v S )NÚaligned8r  rã   rs   s    rn   Úisintent_aligned8r>  õ  r5  ro   c                 ó2   — d|                       dg ¦  «        v S )NÚ	aligned16r  rã   rs   s    rn   Úisintent_aligned16rA  ù  r2  ro   Ú	INTENT_INÚINTENT_INOUTÚ
INTENT_OUTÚINTENT_HIDEÚINTENT_CACHEÚINTENT_CÚOPTIONALÚINTENT_INPLACEÚINTENT_ALIGNED4ÚINTENT_ALIGNED8ÚINTENT_ALIGNED16c                 ó   — d| v o	d| d         v S )NrÌ   ÚprivaterÎ   rs   s    rn   rE   rE     s   € Ø˜ÐÐ= ¨c°*¬oÐ!=Ð=ro   c                 ó^   — t          | ¦  «        dk    rd| v r| d         d         dv rd}nd}|S )Nr   rÌ   r   )ÚpublicrN  FT©Úlen)rt   Úis_vars     rn   rF   rF     sA   € å
ˆ3�x„x�1‚}€}˜ sÐ*Ð*Ø�
ŒO˜AÔÐ"7Ð7Ð7ØˆˆàˆØ€Mro   c                 ó
   — d| v S )Nú=rÎ   rs   s    rn   r   r     s   € Ø�#ˆ:Ðro   c                 óD   — t          | ¦  «        sdS | d         d         dv S )Nr   rU  )ú"ú')r   rs   s    rn   ÚhasinitvalueasstringrY    s*   € Ý˜ÑÔð ØˆqØˆsŒ8�AŒ;˜*Ð$Ð$ro   c                 ó
   — d| v S )NÚnoterÎ   rs   s    rn   r   r     s   € Ø�Sˆ=Ðro   c                 óœ   — t          | ¦  «        sdS d| v r	| d         }n| d         }|| d         v rt          | d         |         ¦  «        S dS rî   )r*   r   rñ   s     rn   r   r   #  s`   € Ý�dÑÔð ØˆqØ�4ÐÐØ�ŒNˆˆà�ŒLˆØˆD�ŒLÐÐÝ�t˜F”| A”Ñ'Ô'Ð'Øˆ1ro   c                 ó
   — d| v S )NÚcommonrÎ   rÓ   s    rn   r   r   /  s   € Ø�tÐÐro   c                 ó€   — t          | ¦  «        rdS t          | ¦  «        r| d         D ]}t          |¦  «        r dS ŒdS )Nr   Úbodyr   )r   r   re   )rÔ   Úbs     rn   re   re   3  sW   € Ý��„ð ØˆqÝˆt�}„}ð Ø�f”ð 	ð 	ˆAÝ˜aÑ Ô ð Ø�q�qðàˆ1ro   c                 ó„   — t          | ¦  «        rdS t          | ¦  «        sdS | d         D ]}t          |¦  «        r dS ŒdS )Nr   r   r`  )rB   r   Úcontainsmodule)rÖ   ra  s     rn   rc  rc  =  s\   € Ý��„ð ØˆqÝ�5‰>Œ>ð ØˆqØ�6Œ]ð ð ˆÝ˜!ÑÔð 	Ø�1�1ð	àˆ1ro   c                 ó
   — d| v S )Nr`  rÎ   rÓ   s    rn   r   r   H  s   € Ø�Tˆ>Ðro   c                 ó$   — t          | ¦  «        d uS rƒ   )r   rÓ   s    rn   r   r   L  s   € Ý˜DÑ!Ô!¨Ð-Ð-ro   c                 ó   — dS )Nr   rÎ   rs   s    rn   Úistruerg  P  ó   € Øˆ1ro   c                 ó   — dS rÛ   rÎ   rs   s    rn   Úisfalserj  T  rh  ro   c                   ó   — e Zd ZdS )Ú	F2PYErrorN)Ú__name__Ú
__module__Ú__qualname__rÎ   ro   rn   rl  rl  X  s   € € € € € Ø€Dro   rl  c                   ó   — e Zd Zd„ Zd„ ZdS )ra   c                 ó   — || _         d S rƒ   )Úmess)Úselfrr  s     rn   Ú__init__zthrow_error.__init__^  s   € ØˆŒ	ˆ	ˆ	ro   c                 ó<   — d|›d| j         ›d�}t          |¦  «        ‚)Nz


  var = z
  Message: ú
)rr  rl  )rs  rt   rr  s      rn   Ú__call__zthrow_error.__call__a  s$   € € Ø47°C°C¸¼¸¸ÐCˆÝ˜‰oŒoÐro   N)rm  rn  ro  rt  rw  rÎ   ro   rn   ra   ra   \  s2   € € € € € ðð ð ðð ð ð ð ro   ra   c                  óÖ   — dg }}t          t          | ¦  «        ¦  «        D ]"}d|||fz  }|                     d|z  ¦  «         Œ#t          |›dd                     |¦  «        ›�¦  «        S )Núlambda vú%s,f%d=f[%d]úf%d(v)rç   z and ©ÚrangerR  ÚappendÚevalÚjoin©ÚfÚl1Úl2Úis       rn   rZ   rZ   f  su   € Ø˜ˆ€BÝ•3�q‘6”6‰]Œ]ð "ð "ˆØ˜r 1 a˜jÑ(ˆØ
�	Š	�(˜a‘.Ñ!Ô!Ð!Ð!Ý˜2˜2˜2˜wŸ|š|¨BÑ/Ô/Ð/Ð0Ñ1Ô1Ð1ro   c                  óÖ   — dg }}t          t          | ¦  «        ¦  «        D ]"}d|||fz  }|                     d|z  ¦  «         Œ#t          |›dd                     |¦  «        ›�¦  «        S )Nry  rz  r{  rç   z or r|  r�  s       rn   r\   r\   n  sr   € Ø˜ˆ€BÝ•3�q‘6”6‰]Œ]ð "ð "ˆØ˜r 1 a˜jÑ(ˆØ
�	Š	�(˜a‘.Ñ!Ô!Ð!Ð!Ý˜2˜2˜2˜vŸ{š{¨2™œ˜Ð/Ñ0Ô0Ð0ro   c                 ó    — t          d¦  «        S )Nzlambda v,f=f:not f(v))r  )r‚  s    rn   r[   r[   v  s   € ÝÐ'Ñ(Ô(Ð(ro   c                 óJ   — 	 | d         d         dk    S # t           $ r Y dS w xY w)Nrû   ÚfortrannameÚ r   r    rÓ   s    rn   r(   r(   z  s?   € ðØÐ&Ô'¨Ô6¸"Ò<Ð<øÝð ð ð Øˆqˆqðøøøs   ‚ ”
"¡"c                 ó²   — 	 | d         d         }|dk    rt           ‚|st          d| d         z  ¦  «         t           ‚n# t           $ r | d         }Y nw xY w|S )Nrû   r‰  rŠ  z"Failed to use fortranname from %s
rð   )r¡   r   )rÔ   rð   s     rn   r   r   �  s‰   € ð	ØÐ&Ô'¨Ô6ˆØ�2Š:ˆ:ÝˆNØð 	ÝÐ9ØÐ,Ô-ñ/ñ 0ô 0ð 0åˆNð	øõ ð ð ð Ø�FŒ|ˆˆˆðøøøà€Ks   ‚<? ¿AÁAc                 óF  — 	 | d                               |¦  «        }n# t          $ r Y d S w xY w|sd S |dk    rt          |t          ¦  «        rd S t          |t          ¦  «        r|t          |¦  «        k    rd S ||         }|d d…         dk    r‘|r'd|z   dz   t          |¦  «        z   dz   |dd …         z   }n
|dd …         }|dd …         dk    r.|r!|d d…         d	z   t          |¦  «        z   d
z   }n-|d d…         }n"t          |›dt          |¦  «        ›d�¦  «         |S )Nrû   r   é   z'''z
	/* start z multiline (z) */
éýÿÿÿz
	/* end multiline (z)*/z( multiline block should end with `'''`: rv  )ri   r¡   Ú
isinstanceÚstrÚlistrR  Úreprr   )rÔ   Ú	blocknameÚcommentÚcounterÚrs        rn   Úgetmultilineblockr—  �  s}  € ðØÐ#Ô$×(Ò(¨Ñ3Ô3ˆˆøÝð ð ð Øˆˆðøøøàð ØˆØ�‚{€{•z !¥SÑ)Ô)€{ØˆÝ�!•TÑÔð Ø•c˜!‘f”fÒÐØˆFØˆgŒJˆØˆˆ!ˆ„u�‚~€~Øð 	Ø 	Ñ)ØñÝ!% g¡¤ñ/Ø19ñ:Ø<=¸a¸b¸b¼EñBˆAˆAð �!�"�"”ˆAØˆRˆSˆSŒ6�UŠ?ˆ?Øð Ø�c�r�c”FÐ5Ñ5½¸W¹¼ÑEÈÑM��à�c�r�c”F��åØ �y�y¥$ q¡'¤' ' 'ð+ñ ,ô ,ð ,à€Hs   ‚ ž
,«,c                 ó"   — t          | d¦  «        S )Nr  ©r—  rÓ   s    rn   r   r   ­  s   € Ý˜T ?Ñ3Ô3Ð3ro   c           	      ó8  — t          | dd¬¦  «        }|r|S t          | ¦  «        rt          d¦  «         d S ddlm} g g }} t          t          t          t          ¦  «        ¦  «        | ¦  «        r| 	                    ddg¦  «         | d	         D ]í}| d
         |         }t          |¦  «        rŒ ||v r||         dz   }n¨ ||¦  «        } t          t          t          t          t          ¦  «        ¦  «        |¦  «        rn$t          |¦  «        rnt!          |¦  «        s|dz   }t          |¦  «        st#          |¦  «        st%          |¦  «        r|                     d¦  «         |                     |¦  «         Œîd                     ||z   ¦  «        }	|	sd}	|	S )Nr  r   )r”  z<warning: callstatement is defined without callprotoargument
r   )Úgetctypezchar*Úsize_trå   ræ   Ú_typedefrž   ú,Úvoid)r—  r   r]   Ú	capi_mapsr›  rZ   rN   r[   r+   Úextendr1   r0   r\   rI   r"   rK   rb   r   rL   r~  r€  )
rÔ   Úcb_mapr–  r›  Ú	arg_typesÚ
arg_types2Únrt   ÚctypeÚ
proto_argss
             rn   r   r   ±  sÚ  € Ý˜$Ð 3¸QÐ?Ñ?Ô?€AØð ØˆÝ˜ÑÔð ÝØKñ	Mô 	Mð 	MàˆØ#Ð#Ð#Ð#Ð#Ð#Ø ˆz€IØ6…uÕ�u¥_Ñ5Ô5Ñ6Ô6°tÑ<Ô<ð .Ø×Ò˜' 8Ð,Ñ-Ô-Ð-Ø�&Œ\ð  ð  ˆØ�6Œl˜1ŒoˆÝ˜SÑ!Ô!ð 	ØØ�ˆ;ˆ;Ø˜1”I 
Ñ*ˆEˆEà�H˜S‘M”MˆEØ;�u•Z¥¥hµ	Ñ!:Ô!:Ñ;Ô;¸CÑ@Ô@ð (ØÝ˜#‘”ð (Øå# CÑ(Ô(ð (Ø! C™K�EÝ˜‘”ð ,Ý$ SÑ)Ô)ð,å! #Ñ&Ô&ð,ð ×!Ò! (Ñ+Ô+Ð+Ø×Ò˜ÑÔÐÐà—’˜) jÑ0Ñ1Ô1€JØð Øˆ
ØÐro   c                 ó"   — t          | d¦  «        S )NÚusercoder™  rÓ   s    rn   r   r   Ø  s   € Ý˜T :Ñ.Ô.Ð.ro   c                 ó&   — t          | dd¬¦  «        S )Nr©  r   )r•  r™  rÓ   s    rn   r   r   Ü  s   € Ý˜T :°qÐ9Ñ9Ô9Ð9ro   c                 ó"   — t          | d¦  «        S )Nr  r™  rÓ   s    rn   r   r   à  s   € Ý˜T =Ñ1Ô1Ð1ro   c                 óÈ   — g g }}d| v rW| d         }d| v rC| d         D ]}||v r|                      |¦  «         Œ|D ]}||vr|                      |¦  «         Œn| d         }||fS )Nrå   Úsortvars)r~  )rÔ   Úsortargsrå   rè   s       rn   Úgetargsr¯  ä  sŸ   € Ø˜ˆd€HØ�€~€~Ø�FŒ|ˆØ˜ÐÐØ˜*Ô%ð 'ð '�Ø˜�9�9Ø—O’O AÑ&Ô&Ð&øØð 'ð '�Ø˜HÐ$Ð$Ø—O’O AÑ&Ô&Ð&øð'ð ˜F”|ˆHØ�ˆ>Ðro   c                 ó<  ‡ ‡— g ‰                       dg ¦  «        c}Šˆˆ fd„‰ d                              ¦   «         D ¦   «         }|‰z   Šd‰ v rC‰ d         D ]}|‰v r|                     |¦  «         Œ‰D ]}||vr|                     |¦  «         Œn|‰ d         z   }‰|fS )Nrå   c                 óR   •— g | ]#}t          ‰d          |         ¦  «        r|‰v¯!|‘Œ$S )ræ   )r/   )r  rè   rå   rÔ   s     €€rn   r  zgetargs2.<locals>.<listcomp>ö  s@   ø€ ð "ð "ð "�Qµ¸dÀ6¼lÈ1¼oÑ1NÔ1Nð "Ø˜D�=�=ð Ø �=�=ro   ræ   r­  )ri   r  r~  )rÔ   r®  Úauxvarsrè   rå   s   `   @rn   r   r   ô  sé   øø€ Ø˜Ÿš &¨"Ñ-Ô-€N€Hˆdð"ð "ð "ð "ð "˜$˜vœ,×+Ò+Ñ-Ô-ð "ñ "ô "€Gà�T‰>€DØ�TÐÐØ�jÔ!ð 	#ð 	#ˆAØ�DˆyˆyØ—’ Ñ"Ô"Ð"øØð 	#ð 	#ˆAØ˜Ð Ð Ø—’ Ñ"Ô"Ð"øð	#ð ˜T &œ\Ñ)ˆØ�ˆ>Ðro   c                 ó‚   — d| vrd S d }| d         dk    r| d         | d         f}| d                               |d ¦  «        S )NÚf2pymultilinesrÖ   zpython modulerð   rã   )rÔ   Úks     rn   r   r     sT   € Ø˜tÐ#Ð#ØˆtØ€AØˆG„}˜Ò'Ð'Ø�ŒM˜4 œ<Ð'ˆØÐ Ô!×%Ò% a¨Ñ.Ô.Ð.ro   c                 óV   — dt          | ¦  «        z
  dz
  dz  }d|dz  ›d| ›d|dz  ›d�S )NéP   é   é   z/*rž   ú z*/rQ  )rð   Úlns     rn   r   r     s>   € Ø
�s�4‰yŒy‰.˜1Ñ
 Ñ	"€B€BØ #™X˜X˜X t t t¨R°#©X¨X¨XÐ6Ð6ro   c                 ód   — t          | t          ¦  «        rt          t          fd„| g ¦  «        S | gS )Nc                 ó   — |  ||¦  «        z   S rƒ   rÎ   )ÚxÚyr‚  s      rn   ú<lambda>zflatlist.<locals>.<lambda>  s   € ¨q°1°1°Q±4´4©x€ ro   )r�  r‘  r   Úflatlist)Úlsts    rn   rÁ  rÁ    s7   € Ý�#•tÑÔð BÝ¥XÐ7Ð7Ð7¸¸bÑAÔAÐAØˆ5€Lro   c                 ó6   — | r| d         dk    r
| d d…         S | S )NrŒ   rž  rÎ   )r  s    rn   r`   r`     s(   € Øð ˆQˆrŒU�cŠ\ˆ\Ø��"�ŒvˆØ€Hro   rŠ  c           
      ó*  ‡ ‡‡— t          ‰t          ¦  «        rˆˆ fd„‰D ¦   «         S t          ‰ t          ¦  «        rˆˆfd„‰ D ¦   «         S dt          ‰                     ¦   «         ¦  «        z  D ]¢}|dk    rŒ	d‰v r|‰d         v r‰d         |         }n‰}t          ‰|         t          ¦  «        r@‰                      d|z  |                     t          ‰|         ¦  «        ¦  «        ¦  «        Š Œƒ‰                      d|z  ‰|         ¦  «        Š Œ£‰ S )Nc                 ó2   •— g | ]}t          ‰|‰¦  «        ‘ŒS rÎ   ©r^   )r  Ú_mÚ
defaultsepr�  s     €€rn   r  zreplace.<locals>.<listcomp>!  s%   ø€ Ð9Ð9Ð9°•˜˜R Ñ,Ô,Ð9Ð9Ð9ro   c                 ó2   •— g | ]}t          |‰‰¦  «        ‘ŒS rÎ   rÆ  )r  rÇ  ré   rÈ  s     €€rn   r  zreplace.<locals>.<listcomp>#  s%   ø€ Ð9Ð9Ð9¨r•˜˜A˜zÑ*Ô*Ð9Ð9Ð9ro   r¹  Úseparatorsforz#%s#)r�  r‘  r  r^   r€  rÁ  )r�  ré   rÈ  rµ  Úseps   ```  rn   r^   r^     s*  øøø€ Ý�!•TÑÔð :Ø9Ð9Ð9Ð9Ð9°qÐ9Ñ9Ô9Ð9Ý�#•tÑÔð :Ø9Ð9Ð9Ð9Ð9°SÐ9Ñ9Ô9Ð9Ø•�a—f’f‘h”h‘”Ñð 
2ð 
2ˆØ�ÒÐØØ˜aÐÐ A¨¨?Ô);Ð$;Ð$;Ø�OÔ$ QÔ'ˆCˆCàˆCÝ�a˜”d�DÑ!Ô!ð 	2Ø—+’+˜f¨™l¨C¯HªHµX¸aÀ¼d±^´^Ñ,DÔ,DÑEÔEˆCˆCà—+’+˜f¨™l¨A¨a¬DÑ1Ô1ˆCˆCØ€Jro   c                 ó,  — t          |t          ¦  «        r|D ]}t          | |¦  «        } Œ| S |                     ¦   «         D �]Q}|d         dk    rŒ|| v �r1t          | |         t          ¦  «        r| |         g| |<   t          | |         t          ¦  «        rRt          ||         t          ¦  «        r| |         ||         z   | |<   Œ‡| |                              ||         ¦  «         Œ©t          | |         t          ¦  «        r€t          ||         t          ¦  «        re|dk    r@||                              ¦   «         D ]#}|| |         vr||         |         | |         |<   Œ$�Œ%t          | |         ||         ¦  «        | |<   �ŒF||         | |<   �ŒS| S )Nr   Ú_rÊ  )r�  r‘  r
   r  r�  r~  Údict)ÚrdÚarrè   rµ  Úk1s        rn   r
   r
   2  sš  € Ý�"•dÑÔð Øð 	#ð 	#ˆAÝ˜B Ñ"Ô"ˆBˆBØˆ	Ø�WŠW‰YŒYð ñ ˆØˆQŒ4�3Š;ˆ;ØØ�ˆ7‰7Ý˜"˜Qœ%¥Ñ%Ô%ð  Ø˜Aœ˜��1‘Ý˜"˜Qœ%¥Ñ&Ô&ð 9Ý˜b œe¥TÑ*Ô*ð (Ø˜qœE B q¤E™M�B�q‘E�Eà�q”E—L’L  A¤Ñ'Ô'Ð'Ð'Ý˜B˜qœE¥4Ñ(Ô(ð 9Ý˜b œe¥TÑ*Ô*ð 9Ø˜OÒ+Ð+Ø"$ Q¤%§*¢*¡,¤,ð 6ð 6˜BØ!¨¨A¬˜˜Ø,.¨q¬E°"¬I  1¤ b¡	øñ6õ !+¨2¨a¬5°"°Q´%Ñ 8Ô 8˜˜1™ùà�q”EˆBˆq‰E‰EØ€Iro   c           	      óœ  — i }t          | t          ¦  «        r.| D ])}t          |||¦  «        }t          ||¦  «        }d|v r nŒ*|S d| v r | d         |¦  «        s|S d| v r7t          d| d         i||¦  «        }d|v rt	          j        |d         ¦  «         |                      ¦   «         D �]ž}|dk    r| |         ||<   Œt          | |         t          ¦  «        rt          | |         |¦  «        ||<   �nÿt          | |         t          ¦  «        rJg ||<   | |         D ]:}t          ||i||¦  «        }	||	v r!||          	                    |	|         ¦  «         Œ;�nš|d         dk    rŒ½t          | |         t          ¦  «        �rLg ||<   | |                              ¦   «         D �]*}
t          |
t          j        ¦  «        �r |
|¦  «        �r t          | |         |
         t          ¦  «        rr| |         |
         D ]b}t          |t          ¦  «        r"t          d|i||¦  «        }d|v r	|d         }nd	}||          	                    t          ||¦  «        ¦  «         ŒcŒ½| |         |
         }t          |t          ¦  «        r!t          d|i|¦  «        }d|v r	|d         }nd	}||          	                    t          ||¦  «        ¦  «         �Œ,n%t          d
t          | |         ¦  «        z  ¦  «         t          ||         t          ¦  «        r9t          ||         ¦  «        dk    r||         d         ||<   ||         g k    r||= �Œ |S )NÚ_breakÚ_checkÚneedÚneedsrÊ  r   rÍ  Ú	supertextrŠ  zapplyrules: ignoring rule %s.
r   )r�  r‘  r   r
   r   Úappend_needsr  r�  r^   r~  rÎ  ÚtypesÚFunctionTyper   r’  rR  )Úrulesré   rt   Úretr–  ÚrrÚresrµ  r…  rÐ  rÑ  s              rn   r   r   O  sŽ  € Ø
€CÝ�%�ÑÔð Øð 	ð 	ˆAÝ˜A˜q #Ñ&Ô&ˆBÝ˜S "Ñ%Ô%ˆCØ˜2ˆ~ˆ~Ø�ð àˆ
Ø�5ÐÐ / %¨¤/°#Ñ"6Ô"6ÐØˆ
Ø�€€Ý˜' 5¨¤=Ð1°1°cÑ:Ô:ˆØ�cˆ>ˆ>ÝÔ  G¤Ñ-Ô-Ð-à�ZŠZ‰\Œ\ð *ñ *ˆØ�ÒÐØ˜1”XˆC�‰FØÝ�e˜A”h¥Ñ$Ô$ð !	HÝ˜U 1œX qÑ)Ô)ˆC�‰F‰FÝ˜˜aœ¥$Ñ'Ô'ð 	HØˆC�‰FØ˜1”Xð )ð )�Ý  A ¨¨3Ñ/Ô/�Ø˜�7�7Ø˜”F—M’M " Q¤%Ñ(Ô(Ð(øñ)ð ˆqŒT�SŠ[ˆ[ØÝ˜˜aœ¥$Ñ'Ô'ñ 	HØˆC�‰FØ˜A”h—m’m‘o”oð 5ñ 5�Ý˜b¥%Ô"4Ñ5Ô5ñ 5¸"¸"¸S¹'¼'ñ 5Ý! %¨¤(¨2¤,µÑ5Ô5ð 5Ø!& q¤¨"¤ð 9ð 9˜AÝ)¨!­TÑ2Ô2ð +Ý&0°+¸qÐ1AÀ1ÀcÑ&JÔ&J Ø#.°#Ð#5Ð#5Ø(+¨KÔ(8 A Aà(* AØ œFŸMšM­'°!°Q©-¬-Ñ8Ô8Ð8Ð8ð9ð " !œH RœL˜Ý% a­Ñ.Ô.ð 'Ý",¨k¸1Ð-=¸qÑ"AÔ"A˜CØ*¨cÐ1Ð1Ø$'¨Ô$4  à$& Ø˜AœŸš¥g¨a°¡m¤mÑ4Ô4Ð4ùð'5õ* Ð5½¸UÀ1¼X¹¼ÑFÑGÔGÐGÝ�c˜!”f�dÑ#Ô#ð 	Ý�3�q”6‰{Œ{˜aÒÐØ˜Qœ œ��A‘Ø�1Œv˜Š|ˆ|Ø˜�FùØ€Jro   z%\s*python\s*module\s*(?P<name>[\w_]+)z4\s*python\s*module\s*(?P<name>[\w_]*?__user__[\w_]*)c                 óÒ   — d }t          | ¦  «        5 }|D ]:}t          |¦  «        }|r't          |¦  «        rŒ#|                     d¦  «        } nŒ;d d d ¦  «         n# 1 swxY w Y   |S )Nrð   )ÚopenÚ_f2py_module_name_matchÚ_f2py_user_module_name_matchÚgroup)Úsourcerð   r‚  ÚlineÚms        rn   rP   rP   ‘  s¼   € Ø€DÝ	ˆf‰Œð ˜Øð 	ð 	ˆDÝ'¨Ñ-Ô-ˆAØð Ý/°Ñ5Ô5ð ØØ—w’w˜v‘”�Ø�ð	ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð €Ks   ’>AÁA Á#A c                 óè   — g }| d         D ]f}|d         D ][}|                      d¦  «        rD|                     d„ |                      d¦  «                             ¦   «         D ¦   «         ¦  «         Œ\Œg|S )Nr`  Úusec                 ó   — g | ]}d |v¯|‘Œ	S )Ú__rÎ   )r  r¾  s     rn   r  z getuseblocks.<locals>.<listcomp>¢  s   € Ð XÐ XÐ X qÈ$ÐVWÈ-È- È-È-È-ro   )ri   r¡  r  )ÚpymodÚall_usesÚinnerÚmodblocks       rn   rc   rc   �  s�   € Ø€HØ�v”ð Zð ZˆØ˜fœð 	Zð 	ZˆHØ�|Š|˜EÑ"Ô"ð ZØ—’Ð XÐ X¨H¯LªL¸Ñ,?Ô,?×,DÒ,DÑ,FÔ,FÐ XÑ XÔ XÑYÔYÐYøð	Zð €Oro   Fc                 óŽ  — g }i }|                      ¦   «         D ]:\  }}d„ |                      ¦   «         D ¦   «         }|||                     ¦   «         <   Œ;|                      ¦   «         D ]Ú\  }}|| vri | |<   |                      ¦   «         D ]·\  }	}
|
|v rn|	| |         v r(t          d|›d|	›d| |         |	         ›d|
›d�	¦  «         |
| |         |	<   |rt          d|›d|	›d	|
›d
�¦  «         |                     |
¦  «         Œw|r>t	          d|›d|	›d|
›d|
›dt          |                     ¦   «         ¦  «        ›d�¦  «         Œ¸ŒÛ| |fS )aê  
    Update the Fortran-to-C type mapping dictionary with new mappings and
    return a list of successfully mapped C types.

    This function integrates a new mapping dictionary into an existing
    Fortran-to-C type mapping dictionary. It ensures that all keys are in
    lowercase and validates new entries against a given C-to-Python mapping
    dictionary. Redefinitions and invalid entries are reported with a warning.

    Parameters
    ----------
    f2cmap_all : dict
        The existing Fortran-to-C type mapping dictionary that will be updated.
        It should be a dictionary of dictionaries where the main keys represent
        Fortran types and the nested dictionaries map Fortran type specifiers
        to corresponding C types.

    new_map : dict
        A dictionary containing new type mappings to be added to `f2cmap_all`.
        The structure should be similar to `f2cmap_all`, with keys representing
        Fortran types and values being dictionaries of type specifiers and their
        C type equivalents.

    c2py_map : dict
        A dictionary used for validating the C types in `new_map`. It maps C
        types to corresponding Python types and is used to ensure that the C
        types specified in `new_map` are valid.

    verbose : boolean
        A flag used to provide information about the types mapped

    Returns
    -------
    tuple of (dict, list)
        The updated Fortran-to-C type mapping dictionary and a list of
        successfully mapped C types.
    c                 ó>   — i | ]\  }}|                      ¦   «         |“ŒS rÎ   r  )r  rÑ  Úv1s      rn   ú
<dictcomp>z'process_f2cmap_dict.<locals>.<dictcomp>Ï  s&   € Ð<Ð<Ð<¡v r¨2�B—H’H‘J”J Ð<Ð<Ð<ro   z	Warning: redefinition of {'z':{'z':'z'->'z'}}
z
	Mapping "z(kind=z)" to "z"
z	Ignoring map {'z'}}: 'z' must be in rv  )Úitemsr  r]   r~  r   r‘  r  )Ú
f2cmap_allÚnew_mapÚc2py_maprg   Úf2cmap_mappedÚnew_map_lowerrµ  Úd1Úd1_lowerrÑ  rñ  s              rn   rd   rd   ¥  s¶  € ðL €Mà€MØ—’‘”ð ,ð ,‰ˆˆ2Ø<Ð<°·²±´Ð<Ñ<Ô<ˆØ#+ˆ�a—g’g‘i”iÑ Ð à×$Ò$Ñ&Ô&ð ð ‰ˆˆ2Ø�JÐÐØˆJ�q‰Mà—h’h‘j”jð 	ð 	‰FˆB�Ø�Xˆ~ˆ~Ø˜ AœÐ&Ð&Ý�Gà˜1˜1˜b˜b˜b *¨Q¤-°Ô"3Ð"3Ð"3°R°R°Rð9ñô ð ð %'�
˜1”˜bÑ!Øð OÝ�GÀ1À1À1ÀbÀbÀbÈ"È"È"ÐMÑNÔNÐNØ×$Ò$ RÑ(Ô(Ð(Ð(àð Ý�Gà˜1˜1˜b˜b˜b " " " b b b­$¨x¯}ª}©¬Ñ*?Ô*?Ð*?Ð*?ðAñô ð øð	ð$ �}Ð$Ð$ro   )r   r   )rŠ  )F)�Ú__doc__Úpprintrj   r
  rÙ  Ú	functoolsr   rŠ  r   r   r   Ú__all__ÚversionÚf2py_versionr_   rh   rr   rÜ   r]   r	   rz   r}   r!   r   r    rM   rK   rL   r   r   rI   r"   r;   r.   r›   r¢   r,   r@   rT   rX   rS   rV   r'   r>   r=   r$   r-   rU   rY   r¿   rW   rÂ   rÆ   rÉ   rJ   r   rÐ   rC   rB   r*   r+   rO   rQ   rb   rà   rë   rH   r<   rA   r?   r%   r&   rN   r   rR   rþ   rD   r)   r   rG   r#   r5   r6   r9   r4   r8   r0   r-  r2   r:   r1   r7   r/   r;  r>  rA  r3   rE   rF   r   rY  r   r   r   re   rc  r   r   rg  rj  Ú	Exceptionrl  ra   rZ   r\   r[   r(   r   r—  r   r   r   r   r   r¯  r   r   r   rÁ  r`   r^   r
   r   ÚcompileÚIÚmatchrá  râ  rP   rc   rd   rÎ   ro   rn   ú<module>r     s’  ðð	ð 	ð €€€Ø 
€
€
€
Ø 	€	€	€	Ø €€€Ø Ð Ð Ð Ð Ð à Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð ðð ð €ð: Ô"€ð „}€à
€Ø€Ø€	ðð ð ð
"ð "ð "ðð ð ð
ð ð ð
;ð ;ð ;ðCð Cð Cð?ð ?ð ?ð7ð 7ð 7ð=ð =ð =ð9ð 9ð 9ð@ð @ð @ð6ð 6ð 6ðBð Bð Bð@ð @ð @ð
>ð >ð >ð>ð >ð >ð;ð ;ð ;ðð ð ð6ð 6ð 6ð
 ð  ð  ð!ð !ð !ð!ð !ð !ð!ð !ð !ð!ð !ð !ð ð  ð  ð!ð !ð !ð!ð !ð !ð@ð @ð @ð
!ð !ð !ð
"ð "ð "ð
"ð "ð "ð
"ð "ð "ð
"ð "ð "ð
!ð !ð !ð
!ð !ð !ð
!ð !ð !ð
!ð !ð !ð
Bð Bð Bð9ð 9ð 9ð ð  ð  ð9ð 9ð 9ð;ð ;ð ;ðEð Eð Eð=ð =ð =ð8ð 8ð 8ð
.ð .ð .ðð ð ð:ð :ð :ð2ð 2ð 2ð	ð 	ð 	ð	ð 	ð 	ð	ð 	ð 	ð	ð 	ð 	ðð ð ð	ð 	ð 	ð5ð 5ð 5ð4ð 4ð 4ð
+ð +ð +ðIð Ið Ið
?ð ?ð ?ðKð Kð Kð9ð 9ð 9ðKð Kð Kð
ð ð ð$Lð Lð Lð*ð *ð *ðEð Eð Eð"ð "ð "ð(ð (ð (ð,ð ,ð ,ð+ð +ð +ð0ð 0ð 0ð/ð /ð /ð.ð .ð .ð*ð *ð *ð/ð /ð /ð/ð /ð /ð0ð 0ð 0ð ˜k¨>¸>Ø˜|¨]¸MØ Ø˜Z¨°ZØ!Ð#3Ø"Ð$5Ø"Ð$5Ø#Ð%7ð€ð>ð >ð >ðð ð ðð ð ð%ð %ð %ðð ð ð	ð 	ð 	ðð ð ðð ð ðð ð ðð ð ð.ð .ð .ðð ð ðð ð ð	ð 	ð 	ð 	ð 	�	ñ 	ô 	ð 	ðð ð ð ð ñ ô ð ð2ð 2ð 2ð1ð 1ð 1ð)ð )ð )ðð ð ðð ð ðð ð ð ð<4ð 4ð 4ð ')ð $ð $ð $ð $ðN/ð /ð /ð:ð :ð :ð2ð 2ð 2ðð ð ð ð ð ð"/ð /ð /ð7ð 7ð 7ð
ð ð ðð ð ðð ð ð ð&ð ð ð:  ð ;ð ;ð ;ð ;ðz %˜"œ*Ð%MØ%'¤Tñ+ô +Ü+0ð à)˜rœzð +=Ø>@¼dñ Dô  DÜDIð ð
ð 
ð 
ðð ð ðC%ð C%ð C%ð C%ð C%ð C%ro   