ó
    Eñi(i  ã                   óf  • S r SSK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	  SSK	J
r
  / SQr\R                  r\R                  r0 r/ rSrS rS	 rS
 rS rS rS rS rS rS rS rS rS rS rS rS r S r!S r"S r#S r$S r%S r&S r'S r(S r)S  r*S! r+S" r,S# r-S$ r.S% r/S& r0S' r1S( r2S) r3S* r4S+ r5S, r6S- r7S. r8S/ r9S0 r:S1 r;S2 r<S3 r=S4 r>S5 r?S6 r@S7 rAS8 rBS9 rCS: rDS; rES< rFS= rGS> rHS? rIS@ rJSA rKSB rLSC rMSD rNSE rOSF rPSG rQSH rRSI rSSJ rTSK rUSL rVSM rWSN rXSO rYSP rZSQ r[SR r\SS r]ST r^SU r_\QSV\RSW\SSX\TSY\WSZ\VS[\LS\\[S]\]S^\^S_\_S`0r`Sa raSb rbSc rcSd rdSe reSf rfSg rgSh rhSi riSj rjSk rkSl rlSm rmSn rnSo ro " Sp Sq\p5      rq " Sr Ss5      rrSt rsSu rtSv ruSw rvSx rwS�Sy jrxSz ry0 4S{ jrzS| r{S} r|S~ r}S r~S€ rS� r€S‚ r�Sƒ r‚S„ rƒSŽS… jr„S† r…0 4S‡ jr†\GR                  " Sˆ\GR                  5      GR                  rŠ\GR                  " S‰\GR                  5      GR                  r‹SŠ rŒS‹ r�S�SŒ jrŽg)�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ÚcontainscommonÚcontainsderivedtypesc                 óz   • [         R                  SS5      (       a   [        R                  R	                  U 5        g g )NÚverboser   )ÚoptionsÚgetÚsysÚstdoutÚwrite)Úts    ÚP/home/mande/repo/quber/.venv/lib/python3.13/site-packages/numpy/f2py/auxfuncs.pyr]   r]   ;   s*   € Ü‡{�{�9˜a× Ñ Ü�
‰
×Ñ˜Õð !ó    c                 ó   • S[         ;   $ )NÚcapi)Údebugoptions©Úvars    ro   r	   r	   @   s   € Ø”\Ñ!Ð!rp   c                 óX   • SU ;   =(       a    U S   S:H  =(       a    [        U 5      (       + $ ©NÚtypespecÚ	character©r)   rt   s    ro   Ú_ischaracterr{   D   ó.   € Ø˜Ñ÷   Z¡°KÑ!?÷ Ü˜#‹Ôðrp   c                 óX   • SU ;   =(       a    U S   S:H  =(       a    [        U 5      (       + $ rw   rz   rt   s    ro   Ú	_isstringr~   I   r|   rp   c                 ó0   • [        U 5      =(       a    SU ;  $ ©NÚcharselector©r{   rt   s    ro   r!   r!   N   s   € Ü˜Ó×: °sÑ!:Ð:rp   c                 óF   • [        U 5      =(       a    [        U 5      (       + $ ©N©r!   r   rt   s    ro   r   r   R   s   € Ü(¨Ó-×B´g¸c³lÔ2BÐBrp   c                 ó<   • [        U 5      =(       a    [        U 5      $ r„   r…   rt   s    ro   r    r    V   s   € Ü(¨Ó-×>´'¸#³,Ð>rp   c                 ó0   • [        U 5      =(       a    SU ;   $ r€   r‚   rt   s    ro   rM   rM   Z   s   € Ü˜Ó×6 °3Ñ!6Ð6rp   c                 óF   • [        U 5      =(       a    [        U 5      (       + $ r„   ©rM   r   rt   s    ro   rK   rK   ^   s   € Ü" 3Ó'×<´¸³Ô,<Ð<rp   c                 ó<   • [        U 5      =(       a    [        U 5      $ r„   r‰   rt   s    ro   rL   rL   b   s   € Ü" 3Ó'×8¬G°C«LÐ8rp   c                 ó<   • [        U 5      =(       a    U S   S   S:H  $ )NÚ	dimensionéÿÿÿÿz(*))rL   rt   s    ro   r   r   f   s#   € ô ˜Ó×? # kÑ"2°2Ñ"6¸%Ñ"?Ð?rp   c                 ó:   • SU ;   =(       a    [        U 5      (       + $ ©NrŒ   rz   rt   s    ro   r   r   l   s   € Ø˜#Ñ×5¤j°£oÔ"5Ð5rp   c                 ój   • [        U 5      =(       d    [        U 5      =(       d    [        U 5      (       + $ r„   )r   rK   r)   rt   s    ro   rI   rI   p   s!   € Ü˜“×@¤¨£×@´¸C³ÔAÐArp   c                 óN   • [        U 5      =(       a    U R                  S5      S;   $ ©Nrx   )Úcomplexzdouble complex©rI   rj   rt   s    ro   r"   r"   t   s'   € Ü�C‹=÷ @Ø�7‰7�:ÓÐ"?Ñ?ð@rp   c                 óN   • [        U 5      =(       a    U R                  S5      S:H  $ )Nrx   Úlogicalr”   rt   s    ro   r;   r;   y   ó   € Ü�C‹=×=˜SŸW™W ZÓ0°IÑ=Ð=rp   c                 óN   • [        U 5      =(       a    U R                  S5      S:H  $ )Nrx   Úintegerr”   rt   s    ro   r.   r.   }   r—   rp   c                 óN   • [        U 5      =(       a    U R                  S5      S:H  $ )Nrx   Úrealr”   rt   s    ro   Úisrealrœ   �   s   € Ü�C‹=×:˜SŸW™W ZÓ0°FÑ:Ð:rp   c                 óh   •  U S   S   $ ! [          a     U S   S   s $ ! [          a      g f = ff = f)NÚkindselectorÚ*Úkind©ÚKeyErrorrt   s    ro   Úget_kindr£   …   sM   € ðØ�>Ñ" 3Ñ'Ð'øÜó ð	Ø�~Ñ& vÑ.Ò.øÜó 	Úð	úðús    ‚
 Š
1•œ1Ÿ
-©1¬-­1c                 ó‚   • U R                  S5      S:H  =(       a%    [        U 5      S:H  =(       a    [        U 5      (       + $ ©Nrx   r™   Ú1)rj   r£   r   rt   s    ro   r,   r,   �   s8   € Ø�7‰7�:Ó )Ñ+÷ 6Ü�S‹M˜SÑ ÷6Ü)0°«Ô%5ð6rp   c                 ól   • [        U 5      (       d  gU R                  S5      S;  a  g[        U 5      S:H  $ )Nr   rx   ©r™   r–   Ú8©rI   rj   r£   rt   s    ro   r@   r@   ”   s2   € Ü�C�=‰=ØØ
‡w�wˆzÓÐ"8Ó8ØÜ�C‹=˜CÑÐrp   c                 ól   • [        U 5      (       d  gU R                  S5      S:w  a  g[        U 5      S:H  $ )Nr   rx   r™   ú-1rª   rt   s    ro   rT   rT   œ   ó1   € Ü�C�=‰=ØØ
‡w�wˆzÓ˜iÓ'ØÜ�C‹=˜DÑ Ð rp   c                 ól   • [        U 5      (       d  gU R                  S5      S:w  a  g[        U 5      S:H  $ )Nr   rx   r™   ú-2rª   rt   s    ro   rX   rX   ¤   r­   rp   c                 ól   • [        U 5      (       d  gU R                  S5      S:w  a  g[        U 5      S:H  $ )Nr   rx   r™   ú-4rª   rt   s    ro   rS   rS   ¬   r­   rp   c                 ól   • [        U 5      (       d  gU R                  S5      S:w  a  g[        U 5      S:H  $ )Nr   rx   r™   ú-8rª   rt   s    ro   rV   rV   ´   r­   rp   c                 ól   • [        U 5      (       d  gU R                  S5      S:X  d  g[        U 5      S:H  $ )Nr   rx   r›   r©   rª   rt   s    ro   r'   r'   ¼   s1   € Ü�C�=‰=ØØ�7‰7�:Ó &Ó(ØÜ�C‹=˜CÑÐrp   c                 ól   • [        U 5      (       d  gU R                  S5      S:X  d  g[        U 5      S:H  $ )Nr   rx   r›   Ú16rª   rt   s    ro   r>   r>   Ä   s1   € Ü�C�=‰=ØØ�7‰7�:Ó &Ó(ØÜ�C‹=˜DÑ Ð rp   c                 ó@   • [        U 5      (       d  g[        U 5      S:H  $ )Nr   Ú32)r"   r£   rt   s    ro   r=   r=   Ì   s   € Ü�S�>‰>ØÜ�C‹=˜DÑ Ð rp   c                 óN   • [        U 5      =(       a    U R                  S5      S;   $ r’   )r   rj   rt   s    ro   r$   r$   Ò   s'   € Ü�3‹<÷ @Ø�7‰7�:ÓÐ"?Ñ?ð@rp   c                 óx   • [        U 5      =(       a)    U R                  S5      S:H  =(       a    [        U 5      S:H  $ r¥   ©r   rj   r£   rt   s    ro   r-   r-   ×   s4   € Ü�3‹<÷ !˜CŸG™G JÓ/°9Ñ<÷ !Ü�S‹M˜SÑ ð!rp   c                 óx   • [        U 5      =(       a)    U R                  S5      S;   =(       a    [        U 5      S:H  $ )Nrx   r¨   r¬   r»   rt   s    ro   rU   rU   Ü   ó5   € Ü�3‹<÷ "˜CŸG™G JÓ/Ð3IÑI÷ "Ü�S‹M˜TÑ!ð"rp   c                 óx   • [        U 5      =(       a)    U R                  S5      S;   =(       a    [        U 5      S:H  $ )Nrx   r¨   r¯   r»   rt   s    ro   rY   rY   á   r½   rp   c                 óx   • [        U 5      =(       a)    U R                  S5      S;   =(       a    [        U 5      S:H  $ )Nrx   r¨   r±   r»   rt   s    ro   ÚisunsignedarrayrÀ   æ   r½   rp   c                 óx   • [        U 5      =(       a)    U R                  S5      S;   =(       a    [        U 5      S:H  $ )Nrx   r¨   r³   r»   rt   s    ro   rW   rW   ë   r½   rp   c                 óx   • [        U 5      =(       a)    U R                  S5      S;   =(       a    [        U 5      S:H  $ )Nrx   r¨   r¦   r»   rt   s    ro   Úissigned_chararrayrÃ   ð   ó5   € Ü�3‹<÷ !˜CŸG™G JÓ/Ð3IÑI÷ !Ü�S‹M˜SÑ ð!rp   c                 óx   • [        U 5      =(       a)    U R                  S5      S;   =(       a    [        U 5      S:H  $ )Nrx   r¨   Ú2r»   rt   s    ro   Úissigned_shortarrayrÇ   õ   rÄ   rp   c                 óx   • [        U 5      =(       a)    U R                  S5      S;   =(       a    [        U 5      S:H  $ )Nrx   r¨   Ú4r»   rt   s    ro   Úissigned_arrayrÊ   ú   rÄ   rp   c                 óx   • [        U 5      =(       a)    U R                  S5      S;   =(       a    [        U 5      S:H  $ )Nrx   r¨   r©   r»   rt   s    ro   rJ   rJ   ÿ   rÄ   rp   c                 ó*   • SU ;   =(       a    SU S   ;   $ )NÚattrspecÚallocatable© rt   s    ro   r   r     s   € Ø˜Ñ×A °#°j±/Ñ!AÐArp   c                 ó:   • SU ;  =(       d    [        U 5      (       + $ r�   )rK   rt   s    ro   Ú	ismutablerÑ     s   € Ø 3Ñ&×7¬(°3«-Ô8Ð8rp   c                 ó   • SU ;   $ )NÚ
modulenamerÏ   ©Úrouts    ro   rC   rC     s   € Ø˜4ÑÐrp   c                 ó*   • SU ;   =(       a    SU S   :H  $ )NÚblockÚmodulerÏ   rÔ   s    ro   rB   rB     s   € Ø�d‰?×8˜x¨4°©=Ñ8Ð8rp   c                 ó*   • SU ;   =(       a    SU S   :H  $ )Nr×   ÚfunctionrÏ   rÔ   s    ro   r*   r*     s   € Ø�d‰?×:˜z¨T°'©]Ñ:Ð:rp   c                 ó‚   • [        U 5      (       a  g[        =(       a"    [        U 5      =(       a    [        U 5      (       + $ ©Nr   )r0   Ú	wrapfuncsr*   r)   rÔ   s    ro   r+   r+     s-   € Ü�$×ÑØÜ×Dœ DÓ)×D´:¸dÓ3CÔ/CÐDrp   c                 ó*   • SU ;   =(       a    SU S   :H  $ )Nr×   Ú
subroutinerÏ   rÔ   s    ro   rO   rO     s   € Ø�d‰?×<˜|¨t°G©}Ñ<Ð<rp   c                 ó^   • [        U 5      (       a  g[        U 5      =(       a    [        U 5      $ rÜ   )r0   rO   ÚhasassumedshaperÔ   s    ro   rQ   rQ   "  s%   € Ü�$×ÑØÜ˜Ó×7¤/°$Ó"7Ð7rp   c                 ó,   • SU R                  S/ 5      ;   $ )NÚvaluerÍ   ©rj   rt   s    ro   rb   rb   '  s   € Ø�c—g‘g˜j¨"Ó-Ñ-Ð-rp   c                 ó¾   • U R                  S5      (       a  gU S    H=  nU S   R                  U0 5      R                  S/ 5       H  nUS:X  d  M  SU S'       g   M?     g)Nrá   TÚargsÚvarsrŒ   Ú:Frä   )rÕ   ÚaÚds      ro   rá   rá   +  se   € Ø‡x�xÐ!×"Ñ"ØØ�&Œ\ˆØ�f‘×!Ñ! ! RÓ(×,Ñ,¨[¸"Ö=ˆAØ�C�xØ*.�Ð&Ñ'Úó >ñ ð
 rp   c                 ó<   • [        U 5      =(       d    [        U 5      $ r„   )rC   rá   rÔ   s    ro   Úrequiresf90wrapperrì   6  s   € Ü˜4Ó ×9¤O°DÓ$9Ð9rp   c                 ó<   • [        U 5      =(       d    [        U 5      $ r„   )r*   rO   rÔ   s    ro   rH   rH   :  s   € Ü�dÓ×1œ|¨DÓ1Ð1rp   c                 óz   • [        U 5      (       d  gSU ;   a  U S   nOU S   nXS   ;   a  [        U S   U   5      $ g©Nr   ÚresultÚnamerç   )r*   r;   ©rÕ   ré   s     ro   r<   r<   >  óJ   € Ü�d×ÑØØ�4ÓØ�‰N‰à�‰LˆØ�‰LÓÜ˜˜f™ a™Ó)Ð)Ørp   c                 óz   • [        U 5      (       d  gSU ;   a  U S   nOU S   nXS   ;   a  [        U S   U   5      $ grï   )r*   r@   rò   s     ro   rA   rA   J  sJ   € Ü�d×ÑØØ�4ÓØ�‰N‰à�‰LˆØ�‰LÓÜ˜4 ™<¨™?Ó+Ð+Ørp   c                 óz   • [        U 5      (       d  gSU ;   a  U S   nOU S   nXS   ;   a  [        U S   U   5      $ grï   )r*   r>   rò   s     ro   r?   r?   V  sJ   € Ü�d×ÑØØ�4ÓØ�‰N‰à�‰LˆØ�‰LÓÜ˜T &™\¨!™_Ó-Ð-Ørp   c                 óz   • [        U 5      (       d  gSU ;   a  U S   nOU S   nXS   ;   a  [        U S   U   5      $ grï   )r*   r"   rò   s     ro   r%   r%   b  ró   rp   c                 ó<   • [        U 5      (       a  [        S5        gg)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    ro   r&   r&   n  s$   € Ü˜×ÑÜð Hô 	Ið Ørp   c                 óz   • [        U 5      (       d  gSU ;   a  U S   nOU S   nXS   ;   a  [        U S   U   5      $ grï   )r*   rK   rò   s     ro   rN   rN   |  sJ   € Ü�d×ÑØØ�4ÓØ�‰N‰à�‰LˆØ�‰LÓÜ˜˜V™ Q™Ó(Ð(Ørp   c                 ó$   • SU ;   =(       a    U S   $ )NÚ	externalsrÏ   rÔ   s    ro   r   r   ˆ  s   € Ø˜$Ñ×4 4¨Ñ#4Ð4rp   c                 ó*   • SU ;   =(       a    SU S   ;   $ )NÚf2pyenhancementsÚ
threadsaferÏ   rÔ   s    ro   rR   rR   Œ  s"   € Ø Ñ%÷ 4Ø˜4Ð 2Ñ3Ñ3ð4rp   c                 ó$   • SU ;   =(       a    U S   $ )Nrç   rÏ   rÔ   s    ro   Úhasvariablesrÿ   ‘  s   € Ø�T‰>×*˜d 6™lÐ*rp   c                 ól   • SU ;   =(       a    SU S   ;   =(       a    SU S   ;  =(       a    [        U 5      $ )NrÍ   ÚoptionalÚrequired)r8   rt   s    ro   rD   rD   •  s?   € Ø˜#Ñ÷ . *°°J±Ñ"?÷ .Ø˜c *™oÑ-÷IÜ3CÀCÓ3HðIrp   c                 ó*   • SU ;   =(       a    SU S   ;   $ )NrÍ   ÚexternalrÏ   rt   s    ro   r)   r)   š  s   € Ø˜Ñ×> ¨s°:©Ñ!>Ð>rp   c                 ó˜   ^• SmSU R                  5       ;   a3  [        S U S    5       5      (       a  [        U4S jU S    5       5      $ g g )Nz	\((.*?)\)rÍ   c              3   ó,   #   • U  H
  nS U;   v •  M     g7f)rŒ   NrÏ   )Ú.0Úss     ro   Ú	<genexpr>Úgetdimension.<locals>.<genexpr>¡  s   é € Ð9ª Aˆ{˜aÖªùs   ‚c              3   óR   >#   • U  H  n[         R                  " TU5      v •  M     g 7fr„   )ÚreÚfindall)r  ÚvÚ
dimpatterns     €ro   r	  r
  ¢  s   øé € ÐKº?°aœŸ
š
 :¨q×1Ð1º?ùs   ƒ$')ÚkeysÚanyÚnext)ru   r  s    @ro   r   r   ž  sJ   ø€ Ø€JØ�S—X‘X“ZÓÜÑ9¨¨ZªÓ9×9Ñ9ÜÔK¸3¸zº?ÓKÓKÐKð :ð  rp   c                 óF   • [        U 5      (       + =(       a    [        U 5      $ r„   )rD   r8   rt   s    ro   rG   rG   ¥  s   € Ü˜#‹Ô×8Ô#3°CÓ#8Ð8rp   c                 ó6   ^ • 1 Skn[        U 4S jU 5       5      $ )N>   ÚpymethoddefÚcallstatementÚcallprotoargumentc              3   óH   >#   • U  H  oTR                  5       ;   v •  M     g 7fr„   )Úlower)r  Ú	directiveÚ	f2py_lines     €ro   r	  Ú$iscstyledirective.<locals>.<genexpr>«  s   øé € ÐJºz°)˜IŸO™OÓ-Ö-ºzùs   ƒ")r  )r  Ú
directivess   ` ro   r#   r#   ©  s   ø€ ÚF€JÜÔJ¹zÓJÓJÐJrp   c                 óŠ   • SU ;  a  gSU S   ;   a  gSU S   ;   a  gSU S   ;   a  gSU S   ;   a  gSU S   ;   a  gS	U S   ;   a  gg)
NÚintentr   Úhider   ÚinplaceÚinÚoutÚinoutÚoutinrÏ   rt   s    ro   r5   r5   ®  sj   € Ø�sÓØØ��X‘ÓØØ�C˜‘MÓ!ØØˆs�8‰}ÓØØ��H‘ÓØØ�#�h‘-ÓØØ�#�h‘-ÓØØrp   c                 ó¢   • SU ;   =(       aD    SU S   ;   =(       d    SU S   ;   =(       a&    SU S   ;  =(       a    SU S   ;  =(       a    SU S   ;  $ )Nr  r$  r%  r"  r   r!  rÏ   rt   s    ro   r6   r6   À  sg   € Ø˜‰O÷ K ¨C°©MÑ!9÷ "%Ø�s˜8‘}Ñ$÷KØ*.°c¸(±mÑ*C÷Kà˜#˜h™-Ñ'÷Kà,5¸SÀ¹]Ñ,JðLrp   c                 ó,   • SU R                  S/ 5      ;   $ )Nr#  r  rä   rt   s    ro   r9   r9   Æ  ó   € Ø�C—G‘G˜H bÓ)Ñ)Ð)rp   c                 ó²   • SU ;   =(       aL    SU S   ;   =(       d=    SU S   ;   =(       a.    SU S   ;  =(       a    [        [        [        5      " U 5      (       + $ )Nr  r   r#  r"  )r\   r6   r7   rt   s    ro   r4   r4   Ê  s\   € Ø˜‰O÷ D ¨3¨x©=Ñ!8÷ "CØ�c˜(‘mÑ#÷ B¨°C¸±MÑ(A÷ BÜœ.Ô*:Ô;¸CÓ@Ô@ðErp   c                 ó"   • [        U 5      (       + $ r„   )r4   rt   s    ro   r8   r8   Ð  s   € Ü˜SÓ!Ô!Ð!rp   c                 ó,   • SU R                  S/ 5      ;   $ )NÚcr  rä   rt   s    ro   r0   r0   Ô  s   € Ø�#—'‘'˜( BÓ'Ñ'Ð'rp   c                 ó,   • SU R                  S/ 5      ;   $ )NÚcacher  rä   rt   s    ro   Úisintent_cacher/  Ø  s   € Ø�c—g‘g˜h¨Ó+Ñ+Ð+rp   c                 ó,   • SU R                  S/ 5      ;   $ )NÚcopyr  rä   rt   s    ro   r2   r2   Ü  s   € Ø�S—W‘W˜X rÓ*Ñ*Ð*rp   c                 ó,   • SU R                  S/ 5      ;   $ )NÚ	overwriter  rä   rt   s    ro   r:   r:   à  ó   € Ø˜#Ÿ'™' (¨BÓ/Ñ/Ð/rp   c                 ó,   • SU R                  S/ 5      ;   $ )NÚcallbackr  rä   rt   s    ro   r1   r1   ä  ó   € Ø˜Ÿ™ ¨2Ó.Ñ.Ð.rp   c                 ó,   • SU R                  S/ 5      ;   $ )Nr!  r  rä   rt   s    ro   r7   r7   è  s   € Ø˜Ÿ™ ¨"Ó-Ñ-Ð-rp   c                 ó,   • SU R                  S/ 5      ;   $ )NÚauxr  rä   rt   s    ro   r/   r/   ì  r(  rp   c                 ó,   • SU R                  S/ 5      ;   $ )NÚaligned4r  rä   rt   s    ro   Úisintent_aligned4r=  ð  r7  rp   c                 ó,   • SU R                  S/ 5      ;   $ )NÚaligned8r  rä   rt   s    ro   Úisintent_aligned8r@  ô  r7  rp   c                 ó,   • SU R                  S/ 5      ;   $ )NÚ	aligned16r  rä   rt   s    ro   Úisintent_aligned16rC  ø  r4  rp   Ú	INTENT_INÚINTENT_INOUTÚ
INTENT_OUTÚINTENT_HIDEÚINTENT_CACHEÚINTENT_CÚOPTIONALÚINTENT_INPLACEÚINTENT_ALIGNED4ÚINTENT_ALIGNED8ÚINTENT_ALIGNED16c                 ó*   • SU ;   =(       a    SU S   ;   $ )NrÍ   ÚprivaterÏ   rt   s    ro   rE   rE     s   € Ø˜Ñ×= ¨c°*©oÑ!=Ð=rp   c                 óT   • [        U 5      S:X  a  SU ;   a  U S   S   S;   a  SnU$ SnU$ )Nr   rÍ   r   )ÚpublicrP  FT©Úlen)ru   Úis_vars     ro   rF   rF     s>   € ä
ˆ3ƒx�1ƒ}˜ sÓ*Ø�
‰O˜AÑÐ"7Ó7Øˆð €Mð ˆØ€Mrp   c                 ó   • SU ;   $ )NÚ=rÏ   rt   s    ro   r   r     s   € Ø�#‰:Ðrp   c                 ó:   • [        U 5      (       d  gU S   S   S;   $ )Nr   rW  )Ú"Ú')r   rt   s    ro   Úhasinitvalueasstringr[    s#   € Ü˜×ÑØØˆs‰8�A‰;˜*Ñ$Ð$rp   c                 ó   • SU ;   $ )NÚnoterÏ   rt   s    ro   r   r     s   € Ø�S‰=Ðrp   c                 óz   • [        U 5      (       d  gSU ;   a  U S   nOU S   nXS   ;   a  [        U S   U   5      $ grï   )r*   r   rò   s     ro   r   r   "  sJ   € Ü�d×ÑØØ�4ÓØ�‰N‰à�‰LˆØ�‰LÓÜ�t˜F‘| A‘Ó'Ð'Ørp   c                 ó   • SU ;   $ )NÚcommonrÏ   rÔ   s    ro   r   r   .  s   € Ø�tÑÐrp   c                 ó‚   • [        U 5      (       a  g[        U 5      (       a  U S    H  n[        U5      (       d  M    g   g©Nr   Úbodyr   )r   r   re   ©rÕ   Úbs     ro   re   re   2  s8   € Ü�‡�ØÜˆt‡}�}Ø�f”ˆAÜ˜a× Ó Ùñ ð rp   c                 ó*   • SU ;   =(       a    U S   S:H  $ )Nr×   ÚtyperÏ   rÔ   s    ro   Úhasderivedtypesrh  <  s   € Ø�t‰O×8  g¡°&Ñ!8Ð8rp   c                 ó‚   • [        U 5      (       a  g[        U 5      (       a  U S    H  n[        U5      (       d  M    g   grb  )rh  r   rd  s     ro   rf   rf   @  s:   € Ü�t×ÑØÜˆt‡}�}Ø�f”ˆAÜ˜q×!Ó!Ùñ ð rp   c                 ó„   • [        U 5      (       a  g[        U 5      (       d  gU S    H  n[        U5      (       d  M    g   g)Nr   r   rc  )rB   r   Úcontainsmodule)r×   re  s     ro   rk  rk  J  s;   € Ü�‡�ØÜ�5�>‰>ØØ�6Œ]ˆÜ˜!×ÓÙñ ð rp   c                 ó   • SU ;   $ )Nrc  rÏ   rÔ   s    ro   r   r   U  s   € Ø�T‰>Ðrp   c                 ó   • [        U 5      S L$ r„   )r   rÔ   s    ro   r   r   Y  s   € Ü˜DÓ!¨Ð-Ð-rp   c                 ó   • g)Nr   rÏ   rt   s    ro   Úistruero  ]  ó   € Ørp   c                 ó   • grÜ   rÏ   rt   s    ro   Úisfalserr  a  rp  rp   c                   ó   • \ rS rSrSrg)Ú	F2PYErrorie  rÏ   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__static_attributes__rÏ   rp   ro   rt  rt  e  s   † Úrp   rt  c                   ó    • \ rS rSrS rS rSrg)ra   ii  c                 ó   • Xl         g r„   ©Úmess)Úselfr}  s     ro   Ú__init__Úthrow_error.__init__k  s   € Ø�	rp   c                 ó>   • SU SU R                    S3n[        U5      e)Nz


  var = z
  Message: Ú
)r}  rt  )r~  ru   r}  s      ro   Ú__call__Úthrow_error.__call__n  s$   € Ø˜c˜U -°·	±	¨{¸"Ð=ˆÜ˜‹oÐrp   r|  N)ru  rv  rw  rx  r  rƒ  ry  rÏ   rp   ro   ra   ra   i  s   † òõrp   ra   c                  ó²   • S/ p![        [        U 5      5       H  nSXU4-  nUR                  SU-  5        M      [        U SSR	                  U5       35      $ )Núlambda vú%s,f%d=f[%d]úf%d(v)rè   z and ©ÚrangerT  ÚappendÚevalÚjoin©ÚfÚl1Úl2Úis       ro   rZ   rZ   s  s[   € Ø˜ˆÜ”3�q“6Ž]ˆØ˜r a˜jÑ(ˆØ
�	‰	�(˜a‘.Ö!ñ ô �2�$�a˜Ÿ™ RÓ(Ð)Ð*Ó+Ð+rp   c                  ó²   • S/ p![        [        U 5      5       H  nSXU4-  nUR                  SU-  5        M      [        U SSR	                  U5       35      $ )Nr†  r‡  rˆ  rè   z or r‰  rŽ  s       ro   r\   r\   {  sZ   € Ø˜ˆÜ”3�q“6Ž]ˆØ˜r a˜jÑ(ˆØ
�	‰	�(˜a‘.Ö!ñ ô �2�$�a˜Ÿ™ B›Ð(Ð)Ó*Ð*rp   c                 ó   • [        S5      $ )Nzlambda v,f=f:not f(v))rŒ  )r�  s    ro   r[   r[   ƒ  s   € ÜÐ'Ó(Ð(rp   c                 ó:   •  U S   S   S:H  $ ! [          a     gf = f)Nrü   ÚfortrannameÚ r   r¡   rÔ   s    ro   r(   r(   ‡  s/   € ðØÐ&Ñ'¨Ñ6¸"Ñ<Ð<øÜó Ùðús   ‚
 �
™c                 óœ   •  U S   S   nUS:X  a  [         eU(       d  [        SU S    S35        [         e U$ ! [          a	    U S   n U$ f = f)Nrü   r–  r—  zFailed to use fortranname from r‚  rñ   )r¢   r   )rÕ   rñ   s     ro   r   r   Ž  so   € ðØÐ&Ñ'¨Ñ6ˆØ�2‹:ÜˆNÞÜÐ5°dÐ;MÑ6NÐ5OÈrÐRÔSÜˆNð ð
 €Køô ó Ø�F‰|‰Ø€Kðús   ‚38 ¸AÁ
Ac                 óæ  •  U S   R                  U5      nU(       d  g US:”  a  [        U[        5      (       a  g [        U[        5      (       a  U[        U5      :¼  a  g XC   nUS S S:X  au  U(       a  SU-   S-   [        U5      -   S-   USS  -   nOUSS  nUSS  S:X  a(  U(       a  US S S	-   [        U5      -   S
-   nU$ US S n U$ [        U S[        U5       S35        U$ ! [         a     g f = f)Nrü   r   é   z'''z
	/* start z multiline (z) */
éýÿÿÿz
	/* end multiline (z)*/z( multiline block should end with `'''`: r‚  )rj   r¢   Ú
isinstanceÚstrÚlistrT  Úreprr   )rÕ   Ú	blocknameÚcommentÚcounterÚrs        ro   Úgetmultilineblockr¤  ›  s0  € ðØÐ#Ñ$×(Ñ(¨Ó3ˆö ØØ�ƒ{”z !¤S×)Ñ)ØÜ�!”T×ÑØ”c˜!“fÓØØ‰JˆØˆˆ!€u�ƒ~ÞØ 	Ñ)ØñÜ!% g£ñ/Ø19ñ:Ø<=¸a¸b¸EñB‰Að �!�"�ˆAØˆRˆSˆ6�U‹?ÞØ�c�r�FÐ5Ñ5¼¸W»ÑEÈÑM�ð
 €Hð �c�r�F‘ð €Hô �y�kÐ!IÌ$ÈqË'ÈÐRTÐUÔVØ€Høô/ ó Ùðús   ‚C# Ã#
C0Ã/C0c                 ó   • [        U S5      $ )Nr  ©r¤  rÔ   s    ro   r   r   ¸  s   € Ü˜T ?Ó3Ð3rp   c                 óè  • [        U SSS9nU(       a  U$ [        U 5      (       a  [        S5        g SSKJn  / / pT[        [        [        [        5      5      " U 5      (       a  UR                  SS/5        U S	    HØ  nU S
   U   n[        U5      (       a  M  Xa;   a  X   S-   nO�U" U5      n[        [        [        [        [        5      5      " U5      (       a  O&[        U5      (       a  O[!        U5      (       d  US-   n[        U5      (       d   [#        U5      (       d  [%        U5      (       a  UR'                  S5        UR'                  U5        MÚ     SR)                  XE-   5      n	U	(       d  Sn	U	$ )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Únru   ÚctypeÚ
proto_argss
             ro   r   r   ¼  sC  € Ü˜$Ð 3¸QÑ?€AÞØˆÜ˜×ÑÜØKô	MàÝ#Ø ˆzÜÔœu¤_Ó5Ô6°t×<Ñ<Ø×Ñ˜' 8Ð,Ô-Ø�&Œ\ˆØ�6‰l˜1‰oˆÜ˜S×!Ñ!ÙØ‹;Ø‘I 
Ñ*‰Eá˜S“MˆEÜ”Z¤¤h´	Ó!:Ô;¸C×@Ñ@ØÜ˜#—‘ØÜ! #×&Ñ&Ø ™�Ü˜—‘Ü$ S×)Ñ)Ü! #×&Ñ&Ø×!Ñ! (Ô+Ø×Ñ˜Öñ% ð( —‘˜)Ñ0Ó1€JÞØˆ
ØÐrp   c                 ó   • [        U S5      $ )NÚusercoder¦  rÔ   s    ro   r   r   â  s   € Ü˜T :Ó.Ð.rp   c                 ó   • [        U SSS9$ )Nr¶  r   )r¢  r¦  rÔ   s    ro   r   r   æ  s   € Ü˜T :°qÑ9Ð9rp   c                 ó   • [        U S5      $ )Nr  r¦  rÔ   s    ro   r   r   ê  s   € Ü˜T =Ó1Ð1rp   c                 óÊ   • / / p!SU ;   aX  U S   nSU ;   aH  U S    H  nX2;   d  M
  UR                  U5        M     U H  nX1;  d  M
  UR                  U5        M     X!4$ U S   nX!4$ )Nræ   Úsortvars)r‹  )rÕ   Úsortargsræ   ré   s       ro   Úgetargsr¼  î  s|   € Ø˜ˆdØ�ƒ~Ø�F‰|ˆØ˜ÓØ˜*Ô%�Ø•9Ø—O‘O AÖ&ñ &ó �ØÕ$Ø—O‘O AÖ&ñ ð
 ˆ>Ðð ˜F‘|ˆHØˆ>Ðrp   c                 ón  • / U R                  S/ 5      p!U S   R                  5        Vs/ s H$  n[        U S   U   5      (       d  M  X2;  d  M"  UPM&     nnXB-   nSU ;   aH  U S    H  nX2;   d  M
  UR                  U5        M     U H  nX1;  d  M
  UR                  U5        M     X!4$ X@S   -   nX!4$ s  snf )Nræ   rç   rº  )rj   r  r/   r‹  )rÕ   r»  ræ   ré   Úauxvarss        ro   r   r   þ  sÆ   € Ø˜Ÿ™ &¨"Ó-ˆdØ˜v™,×+Ñ+Ô-ó "Ò-�Q´¸dÀ6¹lÈ1¹o×1N‹qØ‘=÷ Ñ-€Gð "à‰>€DØ�TÓØ�jÔ!ˆAØ�yØ—‘ Ö"ñ "ó ˆAØÕ Ø—‘ Ö"ñ ð
 ˆ>Ðð  &™\Ñ)ˆØˆ>Ðùò"s   ©B2ÁB2ÁB2c                 ód   • SU ;  a  g S nU S   S:X  a
  U S   U S   4nU S   R                  US 5      $ )NÚf2pymultilinesr×   zpython modulerñ   rä   )rÕ   Úks     ro   r   r     sI   € Ø˜tÓ#ØØ€AØˆG�}˜Ó'Ø�‰M˜4 ™<Ð'ˆØÐ Ñ!×%Ñ% a¨Ó.Ð.rp   c                 óN   • S[        U 5      -
  S-
  S-  nSUS-   SU  SUS-   S3$ )NéP   é   é   z/*rŸ   Ú z*/rS  )rñ   Úlns     ro   r   r     s<   € Ø
Œs�4‹y‰.˜1Ñ
 Ñ	"€BØ��S‘ˆz˜˜4˜&  " s¡( ¨2Ð.Ð.rp   c                 ó\   • [        U [        5      (       a  [        [        4S jU / 5      $ U /$ )Nc                 ó   • X" U5      -   $ r„   rÏ   )ÚxÚyr�  s      ro   Ú<lambda>Úflatlist.<locals>.<lambda>  s   € ¨q°1°Q³4ªxrp   )rœ  rž  r   Úflatlist)Úlsts    ro   rÎ  rÎ    s(   € Ü�#”t×ÑÜ¤XÓ7¸¸bÓAÐAØˆ5€Lrp   c                 ó0   • U (       a  U S   S:X  a  U S S $ U $ )Nr�   r«  rÏ   )r  s    ro   r`   r`   #  s   € ÞˆQˆr‰U�c‹\Ø��"ˆvˆØ€Hrp   c           
      ó,  • [        U[        5      (       a  U Vs/ s H  n[        XU5      PM     sn$ [        U [        5      (       a  U  Vs/ s H  n[        X1U5      PM     sn$ S[        UR                  5       5      -   H…  nUS:X  a  M  SU;   a  XAS   ;   a	  US   U   nOUn[        X   [        5      (       a2  U R                  SU S3UR	                  [        X   5      5      5      n Mm  U R                  SU S3X   5      n M‡     U $ s  snf s  snf )NrÅ  ÚseparatorsforÚ#)rœ  rž  r^   r  r�  rÎ  )r�  rê   Ú
defaultsepÚ_mrÁ  Úseps         ro   r^   r^   )  sý   € Ü�!”T×ÑÙ78Ó9²q°”˜ Ö,±qÑ9Ð9Ü�#”t×ÑÙ58Ó9²S¨r”˜˜zÖ*±SÑ9Ð9Ø”�a—f‘f“h“ÔˆØ�ÓÙØ˜aÓ A¨?Ñ);Ó$;Ø�OÑ$ QÑ'‰CàˆCÜ�a‘dœD×!Ñ!Ø—+‘+  !  A˜h¨¯©´¸!¹$³Ó(@ÓAŠCà—+‘+  !  A˜h¨©Ó-ŠCñ  ð €Jùò :ùâ9s   šDÁDc                 ó–  • [        U[        5      (       a  U H  n[        X5      n M     U $ UR                  5        GH  nUS   S:X  a  M  X0;   aî  [        X   [        5      (       a  X   /X'   [        X   [        5      (       a;  [        X   [        5      (       a  X   X   -   X'   Mm  X   R                  X   5        M„  [        X   [        5      (       ad  [        X   [        5      (       aK  US:X  a1  X   R                  5        H  nX@U   ;  d  M  X   U   X   U'   M     Mé  [        X   X   5      X'   Mý  Mÿ  GM  X   X'   GM     U $ )Nr   Ú_rÒ  )rœ  rž  r
   r  r�  r‹  Údict)ÚrdÚarré   rÁ  Úk1s        ro   r
   r
   <  s$  € Ü�"”d×ÑÛˆAÜ˜BÓ"ŠBñ àˆ	Ø�W‰W�YˆØˆQ‰4�3‹;ÙØ‹7Ü˜"™%¤×%Ñ%Ø™˜�‘Ü˜"™%¤×&Ñ&Ü˜b™e¤T×*Ñ*Ø™E B¡E™M�B“Eà‘E—L‘L ¡Ö'Ü˜B™E¤4×(Ñ(Ü˜b™e¤T×*Ñ*Ø˜OÓ+Ø"$¡%§*¡*¦,˜BØ!¨A©�Ø,.©E°"©I ¡ b£	ó #/ô !+¨2©5°"±%Ó 8˜›ñ +ò )ð ‘EˆBŒEñ) ð* €Irp   c           	      óª  • 0 n[        U [        5      (       a+  U  H#  n[        XAU5      n[        X55      nSU;   d  M"    U$    U$ SU ;   a  U S   " U5      (       d  U$ SU ;   a0  [        SU S   0X5      nSU;   a  [        R
                  " US   5        U R                  5        GH-  nUS:X  a  X   X7'   M  [        X   [        5      (       a  [        X   U5      X7'   GO±[        X   [        5      (       a:  / X7'   X    H,  n[        Xx0X5      n	Xy;   d  M  X7   R                  X—   5        M.     GO`US   S:X  a  M—  [        X   [        5      (       Ga#  / X7'   X   R                  5        GH  n
[        U
[        R                  5      (       d  M%  U
" U5      (       d  M4  [        X   U
   [        5      (       aa  X   U
    HT  n[        U[        5      (       a   [        SU0X5      nUR                  SS	5      nX7   R                  [        X�5      5        MV     M¯  X   U
   n[        U[        5      (       a   [        SU0U5      nUR                  SS	5      nX7   R                  [        X�5      5        GM
     O[        S
[        X   5       S35        [        X7   [        5      (       d  GM  [!        X7   5      S:X  a	  X7   S   X7'   X7   / :X  d  GM+  X7	 GM0     U$ )NÚ_breakÚ_checkÚneedÚneedsrÒ  r   rØ  Ú	supertextr—  zapplyrules: ignoring rule z.
r   )rœ  rž  r   r
   r   Úappend_needsr  r�  r^   r‹  rÙ  ÚtypesÚFunctionTyperj   r   rŸ  rT  )Úrulesrê   ru   Úretr£  ÚrrÚresrÁ  r’  rÛ  rÜ  s              ro   r   r   Y  s�  € Ø
€CÜ�%œ×ÑÛˆAÜ˜A #Ó&ˆBÜ˜SÓ%ˆCØ˜2�~ØØˆ
ñ ð
 ˆ
Ø�5Ó %¨¢/°#×"6Ñ"6Øˆ
Ø�ƒÜ˜' 5¨¡=Ð1°1Ó:ˆØ�c‹>Ü×Ò  G¡Ô-à�Z‰Z�\ˆØ�ÓØ‘XˆC‰FÙÜ�e‘h¤×$Ñ$Ü˜U™X qÓ)ˆC‹FÜ˜™¤$×'Ñ'ØˆC‰FØ”X�Ü  ¨Ó/�Ø•7Ø‘F—M‘M "¡%Ö(ó ð ˆq‰T�S‹[ÙÜ˜™¤$×'Ò'ØˆC‰FØ‘h—m‘m—o�Ü˜b¤%×"4Ñ"4×5Ó5¹"¸S¿'»'Ü! %¡(¨2¡,´×5Ñ5Ø!&¡¨"¤˜AÜ)¨!¬T×2Ñ2Ü&0°+¸qÐ1AÀ1Ó&J Ø$'§G¡G¨K¸Ó$< Ø™FŸM™M¬'°!«-Ö8ó	 ".ð "™H R™L˜Ü% a¬×.Ñ.Ü",¨k¸1Ð-=¸qÓ"A˜CØ #§¡¨°RÓ 8˜AØ™Ÿ™¤g¨a£m×4ò &ô Ð0´°e±h³Ð0@ÀÐDÔEÜ�c‘fœd×#Ô#Ü�3‘6‹{˜aÓØ™ ™�‘Ø‰v˜Ž|Ø“FñI ðJ €Jrp   z%\s*python\s*module\s*(?P<name>[\w_]+)z4\s*python\s*module\s*(?P<name>[\w_]*?__user__[\w_]*)c                 óÖ   • S n[        U 5       nU H:  n[        U5      nU(       d  M  [        U5      (       a  M)  UR                  S5      n  O   S S S 5        U$ ! , (       d  f       U$ = f)Nrñ   )ÚopenÚ_f2py_module_name_matchÚ_f2py_user_module_name_matchÚgroup)Úsourcerñ   r�  ÚlineÚms        ro   rP   rP   –  sb   € Ø€DÜ	ˆfŒ˜ÛˆDÜ'¨Ó-ˆAßˆqÜ/°×5Ñ5ÙØ—w‘w˜v“�Ùñ ÷ 
ð €K÷ 
Œð €Kús   ŽA¨'AÁ
A(c           	      ó  • / nU S    Hn  nUS    Hb  nUR                  S5      (       d  M  UR                  UR                  S5      R                  5        Vs/ s H  nSU;  d  M  UPM     sn5        Md     Mp     U$ s  snf )Nrc  ÚuseÚ__)rj   r®  r  )ÚpymodÚall_usesÚinnerÚmodblockrÊ  s        ro   rc   rc   ¢  su   € Ø€HØ�v”ˆØ˜fœˆHØ�|‰|˜E×"Ó"Ø—‘¨H¯L©L¸Ó,?×,DÑ,DÔ,FÓ XÒ,F qÈ$ÐVWÉ-§Ñ,FÑ XÖYó &ñ ð €Oùò !Ys   Á
A<Á%A<c                 ó–  • / n0 nUR                  5        HJ  u  pgUR                  5        VV	s0 s H  u  p‰UR                  5       U	_M     n
nn	X¥UR                  5       '   ML     UR                  5        HË  u  pgX`;  a  0 X'   UR                  5        H©  u  p‰X’;   a_  X€U   ;   a!  [        SU< SU< SX   U   < SU	< S3	5        X�U   U'   U(       a  [        SU SU SU	 S	35        UR                  U	5        Mi  U(       d  Mr  [	        S
U< SU< SU	< SU	< S[        UR                  5       5      < S35        M«     MÍ     X4$ s  sn	nf )ar  
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.
z	Warning: redefinition of {'z':{'z':'z'->'z'}}
z
	Mapping "z(kind=z)" to "z"
z	Ignoring map {'z'}}: 'z' must be in r‚  )Úitemsr  r]   r‹  r   rž  r  )Ú
f2cmap_allÚnew_mapÚc2py_maprh   Úf2cmap_mappedÚnew_map_lowerrÁ  Úd1rÜ  Úv1Úd1_lowers              ro   rd   rd   ª  s+  € ðL €Mà€MØ—‘–‰ˆØ13·±´Ô<²¡v r�B—H‘H“J ’N±ˆÑ<Ø#+�a—g‘g“iÓ ñ !ð ×$Ñ$Ö&‰ˆØÓØˆJ‰Mà—h‘h–j‰FˆBØ‹~Ø A™Ó&Ýã›b *¡-°Ô"3³Rð9ôð %'˜1‘˜bÑ!ÞÜ˜k¨!¨¨F°2°$°g¸b¸TÀÐFÔGØ×$Ñ$ RÖ(ß�Ýã›"›b£"¤d¨8¯=©=«?Ö&;ð=öó !ñ	 'ð* Ð$Ð$ùó1 =s   ­E)r   r   )r—  )F)�Ú__doc__Úpprintr  rk   rä  Ú	functoolsr   r—  r   r   r   Ú__all__ÚversionÚf2py_versionr_   ri   rs   rÝ   r]   r	   r{   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@  rC  r3   rE   rF   r   r[  r   r   r   re   rh  rf   rk  r   r   ro  rr  Ú	Exceptionrt  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Ï   rp   ro   Ú<module>r     sH  ðñ	ó Û 	Û 
Û Ý ç !Ý ò€ð: ×"Ñ"€ð ‡}�}€à
€Ø€Ø€	òò
"òò
ò
;òCò?ò7ò=ò9ò@ò6òBò@ò
>ò>ò;òò6ò
 ò!ò!ò!ò!ò ò!ò!ò@ò
!ò
"ò
"ò
"ò
"ò
!ò
!ò
!ò
!ò
Bò9ò ò9ò;òEò=ò8ò
.òò:ò2ò	ò	ò	ò	òò	ò5ò4ò
+òIò
?òLò9òKò
ò$Lò*òEò"ò(ò,ò+ò0ò/ò.ò*ò/ò/ò0ð ˜k¨>¸>Ø˜|¨]¸MØ Ø˜Z¨°ZØ!Ð#3Ø"Ð$5Ø"Ð$5Ø#Ð%7ð€ò>òòò%òò	òòò9òòòò.òòô	�	ô 	÷ñ ò,ò+ò)òò
ôò:4ð ')ô #òL/ò:ò2òò ò"/ò/ò
òôò&ð:  ô 5ðp Ÿ*›*Ð%MØ%'§T¢Tó+ß+0ª5ð à!Ÿz›zð +=Ø>@¿dºdó DßDIÂEð ò
òõB%rp   