ó
    SBìgŒi  ã                   ób  • 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  SSK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/ r8S0 r9S1 r:S2 r;S3 r<S4 r=S5 r>S6 r?S7 r@S8 rAS9 rBS: rCS; rDS< rES= rFS> rGS? rHS@ rISA rJSB rKSC rLSD rMSE rNSF rOSG rPSH rQSI rRSJ rSSK rTSL rUSM rVSN rWSO rXSP rYSQ rZSR r[SS r\ST r]SU r^SV r_\QSW\RSX\SSY\TSZ\WS[\VS\\LS]\[S^\]S_\^S`\_Sa0r`Sb raSc rbSd rcSe rdSf reSg rfSh rgSi rhSj riSk rjSl rkSm rlSn rm " So Sp\n5      ro " Sq Sr5      rpSs rqSt rrSu rsSv rtSw ruSŒSx jrvSy rw0 4Sz jrxS{ ryS| rzS} 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Úcontainscommonc                 óz   • [         R                  SS5      (       a   [        R                  R	                  U 5        g g )NÚverboser   )ÚoptionsÚgetÚsysÚstdoutÚwrite)Úts    Ú5/usr/lib/python3/dist-packages/numpy/f2py/auxfuncs.pyr]   r]   <   s*   € Ü‡{�{�9˜a× Ñ Ü�
‰
×Ñ˜Õð !ó    c                 ó   • S[         ;   $ )NÚcapi)Údebugoptions©Úvars    rn   r	   r	   A   s   € Ø”\Ñ!Ð!ro   c                 óX   • SU ;   =(       a    U S   S:H  =(       a    [        U 5      (       + $ ©NÚtypespecÚ	character©r)   rs   s    rn   Ú_ischaracterrz   E   ó.   € Ø˜Ñ÷   Z¡°KÑ!?÷ Ü˜#‹Ôðro   c                 óX   • SU ;   =(       a    U S   S:H  =(       a    [        U 5      (       + $ rv   ry   rs   s    rn   Ú	_isstringr}   J   r{   ro   c                 ó0   • [        U 5      =(       a    SU ;  $ ©NÚcharselector©rz   rs   s    rn   r!   r!   O   s   € Ü˜Ó×: °sÑ!:Ð:ro   c                 óF   • [        U 5      =(       a    [        U 5      (       + $ ©N©r!   r   rs   s    rn   r   r   S   s   € Ü(¨Ó-×B´g¸c³lÔ2BÐBro   c                 ó<   • [        U 5      =(       a    [        U 5      $ rƒ   r„   rs   s    rn   r    r    W   s   € Ü(¨Ó-×>´'¸#³,Ð>ro   c                 ó0   • [        U 5      =(       a    SU ;   $ r   r�   rs   s    rn   rM   rM   [   s   € Ü˜Ó×6 °3Ñ!6Ð6ro   c                 óF   • [        U 5      =(       a    [        U 5      (       + $ rƒ   ©rM   r   rs   s    rn   rK   rK   _   s   € Ü" 3Ó'×<´¸³Ô,<Ð<ro   c                 ó<   • [        U 5      =(       a    [        U 5      $ rƒ   rˆ   rs   s    rn   rL   rL   c   s   € Ü" 3Ó'×8¬G°C«LÐ8ro   c                 ó<   • [        U 5      =(       a    U S   S   S:H  $ )NÚ	dimensionéÿÿÿÿz(*))rL   rs   s    rn   r   r   g   s#   € ô ˜Ó×? # kÑ"2°2Ñ"6¸%Ñ"?Ð?ro   c                 ó:   • SU ;   =(       a    [        U 5      (       + $ ©Nr‹   ry   rs   s    rn   r   r   m   s   € Ø˜#Ñ×5¤j°£oÔ"5Ð5ro   c                 ój   • [        U 5      =(       d    [        U 5      =(       d    [        U 5      (       + $ rƒ   )r   rK   r)   rs   s    rn   rI   rI   q   s!   € Ü˜“×@¤¨£×@´¸C³ÔAÐAro   c                 óN   • [        U 5      =(       a    U R                  S5      S;   $ ©Nrw   )Úcomplexzdouble complex©rI   ri   rs   s    rn   r"   r"   u   s'   € Ü�C‹=÷ @Ø�7‰7�:ÓÐ"?Ñ?ð@ro   c                 óN   • [        U 5      =(       a    U R                  S5      S:H  $ )Nrw   Úlogicalr“   rs   s    rn   r;   r;   z   ó   € Ü�C‹=×=˜SŸW™W ZÓ0°IÑ=Ð=ro   c                 óN   • [        U 5      =(       a    U R                  S5      S:H  $ )Nrw   Úintegerr“   rs   s    rn   r.   r.   ~   r–   ro   c                 óN   • [        U 5      =(       a    U R                  S5      S:H  $ )Nrw   Úrealr“   rs   s    rn   Úisrealr›   ‚   s   € Ü�C‹=×:˜SŸW™W ZÓ0°FÑ:Ð:ro   c                 óh   •  U S   S   $ ! [          a     U S   S   s $ ! [          a      g f = ff = f)NÚkindselectorÚ*Úkind©ÚKeyErrorrs   s    rn   Ú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      (       + $ ©Nrw   r˜   Ú1)ri   r¢   r   rs   s    rn   r,   r,   �   s8   € Ø�7‰7�:Ó )Ñ+÷ 6Ü�S‹M˜SÑ ÷6Ü)0°«Ô%5ð6ro   c                 ól   • [        U 5      (       d  gU R                  S5      S;  a  g[        U 5      S:H  $ )Nr   rw   ©r˜   r•   Ú8©rI   ri   r¢   rs   s    rn   r@   r@   •   s2   € Ü�C�=‰=ØØ
‡w�wˆzÓÐ"8Ó8ØÜ�C‹=˜CÑÐro   c                 ól   • [        U 5      (       d  gU R                  S5      S:w  a  g[        U 5      S:H  $ )Nr   rw   r˜   ú-1r©   rs   s    rn   rT   rT   �   ó1   € Ü�C�=‰=ØØ
‡w�wˆzÓ˜iÓ'ØÜ�C‹=˜DÑ Ð ro   c                 ól   • [        U 5      (       d  gU R                  S5      S:w  a  g[        U 5      S:H  $ )Nr   rw   r˜   ú-2r©   rs   s    rn   rX   rX   ¥   r¬   ro   c                 ól   • [        U 5      (       d  gU R                  S5      S:w  a  g[        U 5      S:H  $ )Nr   rw   r˜   ú-4r©   rs   s    rn   rS   rS   ­   r¬   ro   c                 ól   • [        U 5      (       d  gU R                  S5      S:w  a  g[        U 5      S:H  $ )Nr   rw   r˜   ú-8r©   rs   s    rn   rV   rV   µ   r¬   ro   c                 ól   • [        U 5      (       d  gU R                  S5      S:X  d  g[        U 5      S:H  $ )Nr   rw   rš   r¨   r©   rs   s    rn   r'   r'   ½   s1   € Ü�C�=‰=ØØ�7‰7�:Ó &Ó(ØÜ�C‹=˜CÑÐro   c                 ól   • [        U 5      (       d  gU R                  S5      S:X  d  g[        U 5      S:H  $ )Nr   rw   rš   Ú16r©   rs   s    rn   r>   r>   Å   s1   € Ü�C�=‰=ØØ�7‰7�:Ó &Ó(ØÜ�C‹=˜DÑ Ð ro   c                 ó@   • [        U 5      (       d  g[        U 5      S:H  $ )Nr   Ú32)r"   r¢   rs   s    rn   r=   r=   Í   s   € Ü�S�>‰>ØÜ�C‹=˜DÑ Ð ro   c                 óN   • [        U 5      =(       a    U R                  S5      S;   $ r‘   )r   ri   rs   s    rn   r$   r$   Ó   s'   € Ü�3‹<÷ @Ø�7‰7�:ÓÐ"?Ñ?ð@ro   c                 óx   • [        U 5      =(       a)    U R                  S5      S:H  =(       a    [        U 5      S:H  $ r¤   ©r   ri   r¢   rs   s    rn   r-   r-   Ø   s4   € Ü�3‹<÷ !˜CŸG™G JÓ/°9Ñ<÷ !Ü�S‹M˜SÑ ð!ro   c                 óx   • [        U 5      =(       a)    U R                  S5      S;   =(       a    [        U 5      S:H  $ )Nrw   r§   r«   rº   rs   s    rn   rU   rU   Ý   ó5   € Ü�3‹<÷ "˜CŸG™G JÓ/Ð3IÑI÷ "Ü�S‹M˜TÑ!ð"ro   c                 óx   • [        U 5      =(       a)    U R                  S5      S;   =(       a    [        U 5      S:H  $ )Nrw   r§   r®   rº   rs   s    rn   rY   rY   â   r¼   ro   c                 óx   • [        U 5      =(       a)    U R                  S5      S;   =(       a    [        U 5      S:H  $ )Nrw   r§   r°   rº   rs   s    rn   Úisunsignedarrayr¿   ç   r¼   ro   c                 óx   • [        U 5      =(       a)    U R                  S5      S;   =(       a    [        U 5      S:H  $ )Nrw   r§   r²   rº   rs   s    rn   rW   rW   ì   r¼   ro   c                 óx   • [        U 5      =(       a)    U R                  S5      S;   =(       a    [        U 5      S:H  $ )Nrw   r§   r¥   rº   rs   s    rn   Úissigned_chararrayrÂ   ñ   ó5   € Ü�3‹<÷ !˜CŸG™G JÓ/Ð3IÑI÷ !Ü�S‹M˜SÑ ð!ro   c                 óx   • [        U 5      =(       a)    U R                  S5      S;   =(       a    [        U 5      S:H  $ )Nrw   r§   Ú2rº   rs   s    rn   Úissigned_shortarrayrÆ   ö   rÃ   ro   c                 óx   • [        U 5      =(       a)    U R                  S5      S;   =(       a    [        U 5      S:H  $ )Nrw   r§   Ú4rº   rs   s    rn   Úissigned_arrayrÉ   û   rÃ   ro   c                 óx   • [        U 5      =(       a)    U R                  S5      S;   =(       a    [        U 5      S:H  $ )Nrw   r§   r¨   rº   rs   s    rn   rJ   rJ      rÃ   ro   c                 ó*   • SU ;   =(       a    SU S   ;   $ )NÚattrspecÚallocatable© rs   s    rn   r   r     s   € Ø˜Ñ×A °#°j±/Ñ!AÐAro   c                 ó:   • SU ;  =(       d    [        U 5      (       + $ rŽ   )rK   rs   s    rn   Ú	ismutablerÐ   	  s   € Ø 3Ñ&×7¬(°3«-Ô8Ð8ro   c                 ó   • SU ;   $ )NÚ
modulenamerÎ   ©Úrouts    rn   rC   rC     s   € Ø˜4ÑÐro   c                 ó*   • SU ;   =(       a    SU S   :H  $ )NÚblockÚmodulerÎ   rÓ   s    rn   rB   rB     s   € Ø�d‰?×8˜x¨4°©=Ñ8Ð8ro   c                 ó*   • SU ;   =(       a    SU S   :H  $ )NrÖ   ÚfunctionrÎ   rÓ   s    rn   r*   r*     s   € Ø�d‰?×:˜z¨T°'©]Ñ:Ð:ro   c                 ó‚   • [        U 5      (       a  g[        =(       a"    [        U 5      =(       a    [        U 5      (       + $ ©Nr   )r0   Ú	wrapfuncsr*   r)   rÓ   s    rn   r+   r+     s-   € Ü�$×ÑØÜ×Dœ DÓ)×D´:¸dÓ3CÔ/CÐDro   c                 ó*   • SU ;   =(       a    SU S   :H  $ )NrÖ   Ú
subroutinerÎ   rÓ   s    rn   rO   rO     s   € Ø�d‰?×<˜|¨t°G©}Ñ<Ð<ro   c                 ó^   • [        U 5      (       a  g[        U 5      =(       a    [        U 5      $ rÛ   )r0   rO   ÚhasassumedshaperÓ   s    rn   rQ   rQ   #  s%   € Ü�$×ÑØÜ˜Ó×7¤/°$Ó"7Ð7ro   c                 ó,   • SU R                  S/ 5      ;   $ )NÚvaluerÌ   ©ri   rs   s    rn   rb   rb   (  s   € Ø�c—g‘g˜j¨"Ó-Ñ-Ð-ro   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      rn   rà   rà   ,  se   € Ø‡x�xÐ!×"Ñ"ØØ�&Œ\ˆØ�f‘×!Ñ! ! RÓ(×,Ñ,¨[¸"Ö=ˆAØ�C�xØ*.�Ð&Ñ'Úó >ñ ð
 ro   c                 ó<   • [        U 5      =(       d    [        U 5      $ rƒ   )rC   rà   rÓ   s    rn   Úrequiresf90wrapperrë   7  s   € Ü˜4Ó ×9¤O°DÓ$9Ð9ro   c                 ó<   • [        U 5      =(       d    [        U 5      $ rƒ   )r*   rO   rÓ   s    rn   rH   rH   ;  s   € Ü�dÓ×1œ|¨DÓ1Ð1ro   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     rn   r<   r<   ?  óJ   € Ü�d×ÑØØ�4ÓØ�‰N‰à�‰LˆØ�‰LÓÜ˜˜f™ a™Ó)Ð)Øro   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     rn   rA   rA   K  sJ   € Ü�d×ÑØØ�4ÓØ�‰N‰à�‰LˆØ�‰LÓÜ˜4 ™<¨™?Ó+Ð+Øro   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     rn   r?   r?   W  sJ   € Ü�d×ÑØØ�4ÓØ�‰N‰à�‰LˆØ�‰LÓÜ˜T &™\¨!™_Ó-Ð-Øro   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     rn   r%   r%   c  rò   ro   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    rn   r&   r&   o  s$   € Ü˜×ÑÜð Hô 	Ið Øro   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     rn   rN   rN   }  sJ   € Ü�d×ÑØØ�4ÓØ�‰N‰à�‰LˆØ�‰LÓÜ˜˜V™ Q™Ó(Ð(Øro   c                 ó$   • SU ;   =(       a    U S   $ )NÚ	externalsrÎ   rÓ   s    rn   r   r   ‰  s   € Ø˜$Ñ×4 4¨Ñ#4Ð4ro   c                 ó*   • SU ;   =(       a    SU S   ;   $ )NÚf2pyenhancementsÚ
threadsaferÎ   rÓ   s    rn   rR   rR   �  s"   € Ø Ñ%÷ 4Ø˜4Ð 2Ñ3Ñ3ð4ro   c                 ó$   • SU ;   =(       a    U S   $ )Nræ   rÎ   rÓ   s    rn   Úhasvariablesrþ   ’  s   € Ø�T‰>×*˜d 6™lÐ*ro   c                 ól   • SU ;   =(       a    SU S   ;   =(       a    SU S   ;  =(       a    [        U 5      $ )NrÌ   ÚoptionalÚrequired)r8   rs   s    rn   rD   rD   –  s?   € Ø˜#Ñ÷ . *°°J±Ñ"?÷ .Ø˜c *™oÑ-÷IÜ3CÀCÓ3HðIro   c                 ó*   • SU ;   =(       a    SU S   ;   $ )NrÌ   ÚexternalrÎ   rs   s    rn   r)   r)   ›  s   € Ø˜Ñ×> ¨s°:©Ñ!>Ð>ro   c                 óÊ   • SnSU R                  5       ;   aH  [        S U S    5       5      (       a-  U S    Vs/ s H  n[        R                  " X5      PM     snS   $ g g s  snf )Nz	\((.*?)\)rÌ   c              3   ó,   #   • U  H
  nS U;   v •  M     g7f)r‹   NrÎ   )Ú.0Úss     rn   Ú	<genexpr>Úgetdimension.<locals>.<genexpr>¢  s   é € Ð9ª Aˆ{˜aÖªùs   ‚r   )ÚkeysÚanyÚreÚfindall)rt   Ú
dimpatternÚvs      rn   r   r   Ÿ  s^   € Ø€JØ�S—X‘X“ZÓÜÑ9¨¨ZªÓ9×9Ñ9Ø7:¸:²ÓG²°!”B—J’J˜zÖ-±ÑGÈÑJÐJð :ð  ùâGs   ¸ A c                 óF   • [        U 5      (       + =(       a    [        U 5      $ rƒ   )rD   r8   rs   s    rn   rG   rG   ¦  s   € Ü˜#‹Ô×8Ô#3°CÓ#8Ð8ro   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     €rn   r  Ú$iscstyledirective.<locals>.<genexpr>¬  s   øé € ÐJºz°)˜IŸO™OÓ-Ö-ºzùs   ƒ")r  )r  Ú
directivess   ` rn   r#   r#   ª  s   ø€ ÚF€JÜÔJ¹zÓJÓJÐJro   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Î   rs   s    rn   r5   r5   ¯  sj   € Ø�sÓØØ��X‘ÓØØ�C˜‘MÓ!ØØˆs�8‰}ÓØØ��H‘ÓØØ�#�h‘-ÓØØ�#�h‘-ÓØØro   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Î   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                 ó,   • SU R                  S/ 5      ;   $ )Nr   r  rã   rs   s    rn   r9   r9   Ç  ó   € Ø�C—G‘G˜H bÓ)Ñ)Ð)ro   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   rs   s    rn   r4   r4   Ë  s\   € Ø˜‰O÷ D ¨3¨x©=Ñ!8÷ "CØ�c˜(‘mÑ#÷ B¨°C¸±MÑ(A÷ BÜœ.Ô*:Ô;¸CÓ@Ô@ðEro   c                 ó"   • [        U 5      (       + $ rƒ   )r4   rs   s    rn   r8   r8   Ñ  s   € Ü˜SÓ!Ô!Ð!ro   c                 ó,   • SU R                  S/ 5      ;   $ )NÚcr  rã   rs   s    rn   r0   r0   Õ  s   € Ø�#—'‘'˜( BÓ'Ñ'Ð'ro   c                 ó,   • SU R                  S/ 5      ;   $ )NÚcacher  rã   rs   s    rn   Úisintent_cacher,  Ù  s   € Ø�c—g‘g˜h¨Ó+Ñ+Ð+ro   c                 ó,   • SU R                  S/ 5      ;   $ )NÚcopyr  rã   rs   s    rn   r2   r2   Ý  s   € Ø�S—W‘W˜X rÓ*Ñ*Ð*ro   c                 ó,   • SU R                  S/ 5      ;   $ )NÚ	overwriter  rã   rs   s    rn   r:   r:   á  ó   € Ø˜#Ÿ'™' (¨BÓ/Ñ/Ð/ro   c                 ó,   • SU R                  S/ 5      ;   $ )NÚcallbackr  rã   rs   s    rn   r1   r1   å  ó   € Ø˜Ÿ™ ¨2Ó.Ñ.Ð.ro   c                 ó,   • SU R                  S/ 5      ;   $ )Nr  r  rã   rs   s    rn   r7   r7   é  s   € Ø˜Ÿ™ ¨"Ó-Ñ-Ð-ro   c                 ó,   • SU R                  S/ 5      ;   $ )NÚauxr  rã   rs   s    rn   r/   r/   í  r%  ro   c                 ó,   • SU R                  S/ 5      ;   $ )NÚaligned4r  rã   rs   s    rn   Úisintent_aligned4r:  ñ  r4  ro   c                 ó,   • SU R                  S/ 5      ;   $ )NÚaligned8r  rã   rs   s    rn   Úisintent_aligned8r=  õ  r4  ro   c                 ó,   • SU R                  S/ 5      ;   $ )NÚ	aligned16r  rã   rs   s    rn   Úisintent_aligned16r@  ù  r1  ro   Ú	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Î   rs   s    rn   rE   rE     s   € Ø˜Ñ×= ¨c°*©oÑ!=Ð=ro   c                 óT   • [        U 5      S:X  a  SU ;   a  U S   S   S;   a  SnU$ SnU$ )Nr   rÌ   r   )ÚpublicrM  FT©Úlen)rt   Úis_vars     rn   rF   rF     s>   € ä
ˆ3ƒx�1ƒ}˜ sÓ*Ø�
‰O˜AÑÐ"7Ó7Øˆð €Mð ˆØ€Mro   c                 ó   • SU ;   $ )NÚ=rÎ   rs   s    rn   r   r     s   € Ø�#‰:Ðro   c                 ó:   • [        U 5      (       d  gU S   S   S;   $ )Nr   rT  )Ú"Ú')r   rs   s    rn   ÚhasinitvalueasstringrX    s#   € Ü˜×ÑØØˆs‰8�A‰;˜*Ñ$Ð$ro   c                 ó   • SU ;   $ )NÚnoterÎ   rs   s    rn   r   r     s   € Ø�S‰=Ðro   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     rn   r   r   #  sJ   € Ü�d×ÑØØ�4ÓØ�‰N‰à�‰LˆØ�‰LÓÜ�t˜F‘| A‘Ó'Ð'Øro   c                 ó   • SU ;   $ )NÚcommonrÎ   rÓ   s    rn   r   r   /  s   € Ø�tÑÐro   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     rn   re   re   3  s8   € Ü�‡�ØÜˆt‡}�}Ø�f”ˆAÜ˜a× Ó Ùñ ð ro   c                 ó„   • [        U 5      (       a  g[        U 5      (       d  gU S    H  n[        U5      (       d  M    g   g)Nr   r   r_  )rB   r   Úcontainsmodule)rÖ   r`  s     rn   rb  rb  =  s;   € Ü�‡�ØÜ�5�>‰>ØØ�6Œ]ˆÜ˜!×ÓÙñ ð ro   c                 ó   • SU ;   $ )Nr_  rÎ   rÓ   s    rn   r   r   H  s   € Ø�T‰>Ðro   c                 ó   • [        U 5      S L$ rƒ   )r   rÓ   s    rn   r   r   L  s   € Ü˜DÓ!¨Ð-Ð-ro   c                 ó   • g)Nr   rÎ   rs   s    rn   Úistruerf  P  ó   € Øro   c                 ó   • grÛ   rÎ   rs   s    rn   Úisfalseri  T  rg  ro   c                   ó   • \ rS rSrSrg)Ú	F2PYErroriX  rÎ   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__static_attributes__rÎ   ro   rn   rk  rk  X  s   † Úro   rk  c                   ó    • \ rS rSrS rS rSrg)ra   i\  c                 ó   • Xl         g rƒ   ©Úmess)Úselfrt  s     rn   Ú__init__Úthrow_error.__init__^  s   € Ø�	ro   c                 óB   • SU< SU R                   < S3n[        U5      e)Nz


  var = z
  Message: Ú
)rt  rk  )ru  rt   rt  s      rn   Ú__call__Úthrow_error.__call__a  s   � Û47¸¿¼ÐCˆÜ˜‹oÐro   rs  N)rl  rm  rn  ro  rv  rz  rp  rÎ   ro   rn   ra   ra   \  s   † òõro   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 ©ÚrangerQ  ÚappendÚevalÚjoin©ÚfÚl1Úl2Úis       rn   rZ   rZ   f  sT   € Ø˜ˆÜ”3�q“6Ž]ˆØ˜r a˜jÑ(ˆØ
�	‰	�(˜a‘.Ö!ñ ô ›2˜wŸ|™|¨BÕ/Ð0Ó1Ð1ro   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       rn   r\   r\   n  sS   € Ø˜ˆÜ”3�q“6Ž]ˆØ˜r a˜jÑ(ˆØ
�	‰	�(˜a‘.Ö!ñ ô ›2˜vŸ{™{¨2�Ð/Ó0Ð0ro   c                 ó   • [        S5      $ )Nzlambda v,f=f:not f(v))rƒ  )r†  s    rn   r[   r[   v  s   € ÜÐ'Ó(Ð(ro   c                 ó:   •  U S   S   S:H  $ ! [          a     gf = f)Nrû   ÚfortrannameÚ r   r    rÓ   s    rn   r(   r(   z  s/   € ðØÐ&Ñ'¨Ñ6¸"Ñ<Ð<øÜó Ùðús   ‚
 �
™c                 óš   •  U S   S   nUS:X  a  [         eU(       d  [        SU S   -  5        [         e U$ ! [          a	    U S   n U$ f = f)Nrû   r�  rŽ  z"Failed to use fortranname from %s
rð   )r¡   r   )rÔ   rð   s     rn   r   r   �  so   € ð	ØÐ&Ñ'¨Ñ6ˆØ�2‹:ÜˆNÞÜÐ9ØÐ,Ñ-ñ/ô 0äˆNð ð €Køô ó Ø�F‰|‰Ø€Kðús   ‚27 ·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  aw  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 `'''`: ry  )ri   r¡   Ú
isinstanceÚstrÚlistrQ  Úreprr   )rÔ   Ú	blocknameÚcommentÚcounterÚrs        rn   Úgetmultilineblockr›  �  s+  € ðØÐ#Ñ$×(Ñ(¨Ó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ô Û ¤$ q¦'ð+ô ,à€Høô1 ó Ùðús   ‚C% Ã%
C2Ã1C2c                 ó   • [        U S5      $ )Nr  ©r›  rÓ   s    rn   r   r   ­  s   € Ü˜T ?Ó3Ð3ro   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Únrt   ÚctypeÚ
proto_argss
             rn   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×@Ñ@ØÜ˜#—‘Øä# C×(Ñ(Ø! C™K�EÜ˜—‘Ü$ S×)Ñ)Ü! #×&Ñ&Ø×!Ñ! (Ô+Ø×Ñ˜Öñ' ð* —‘˜)Ñ0Ó1€JÞØˆ
ØÐro   c                 ó   • [        U S5      $ )NÚusercoder�  rÓ   s    rn   r   r   Ø  s   € Ü˜T :Ó.Ð.ro   c                 ó   • [        U SSS9$ )Nr­  r   )r™  r�  rÓ   s    rn   r   r   Ü  s   € Ü˜T :°qÑ9Ð9ro   c                 ó   • [        U S5      $ )Nr  r�  rÓ   s    rn   r   r   à  s   € Ü˜T =Ó1Ð1ro   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       rn   Úgetargsr³  ä  s|   € Ø˜ˆdØ�ƒ~Ø�F‰|ˆØ˜ÓØ˜*Ô%�Ø•9Ø—O‘O AÖ&ñ &ó �ØÕ$Ø—O‘O AÖ&ñ ð
 ˆ>Ðð ˜F‘|ˆHØˆ>Ðro   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±  )ri   r
  r/   r‚  )rÔ   r²  rå   rè   Úauxvarss        rn   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     rn   r   r     sI   € Ø˜tÓ#ØØ€AØˆG�}˜Ó'Ø�‰M˜4 ™<Ð'ˆØÐ Ñ!×%Ñ% a¨Ó.Ð.ro   c                 óT   • S[        U 5      -
  S-
  S-  nSUS-  < SU < SUS-  < S3$ )NéP   é   é   z/*rž   Ú z*/rP  )rð   Úlns     rn   r   r     s.   € Ø
Œs�4‹y‰.˜1Ñ
 Ñ	"�BØ #œX£t¨R°#¬XÐ6Ð6ro   c                 ó\   • [        U [        5      (       a  [        [        4S jU / 5      $ U /$ )Nc                 ó   • X" U5      -   $ rƒ   rÎ   )ÚxÚyr†  s      rn   Ú<lambda>Úflatlist.<locals>.<lambda>  s   € ¨q°1°Q³4ªxro   )r“  r•  r   Úflatlist)Úlsts    rn   rÅ  rÅ    s(   € Ü�#”t×ÑÜ¤XÓ7¸¸bÓAÐAØˆ5€Lro   c                 ó0   • U (       a  U S   S:X  a  U S S $ U $ )NrŒ   r¢  rÎ   )r  s    rn   r`   r`     s   € ÞˆQˆr‰U�c‹\Ø��"ˆvˆØ€Hro   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      (       a1  U R                  SU-  UR	                  [        X   5      5      5      n Ml  U R                  SU-  X   5      n M…     U $ s  snf s  snf )Nr¼  Úseparatorsforz#%s#)r“  r•  r^   r
  r„  rÅ  )r”  ré   Ú
defaultsepÚ_mr¸  Úseps         rn   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×!Ñ!Ø—+‘+˜f¨™l¨C¯H©H´X¸a¹d³^Ó,DÓEŠCà—+‘+˜f¨™l¨A©DÓ1Š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        rn   r
   r
   2  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ñ) ð* €Iro   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OVUS   S:X  a  M—  [        X   [        5      (       Ga  / X7'   X   R                  5        Hÿ  n
[        U
[        R                  5      (       d  M$  U
" U5      (       d  M3  [        X   U
   [        5      (       a]  X   U
    HP  n[        U[        5      (       a  [        SU0X5      nSU;   a  US   nOS	nX7   R                  [        X�5      5        MR     Mª  X   U
   n[        U[        5      (       a  [        SU0U5      nSU;   a  US   nOS	nX7   R                  [        X�5      5        GM     O[        S
[        X   5      -  5        [        X7   [        5      (       d  GMü  [        X7   5      S:X  a	  X7   S   X7'   X7   / :X  d  GM!  X7	 GM&     U$ )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–  rQ  )Úrulesré   rt   Úretrš  ÚrrÚresr¸  r‰  rÑ  rÒ  s              rn   r   r   O  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 Ø#.°#Ó#5Ø(+¨KÑ(8¡Aà(* AØ™FŸM™M¬'°!«-Ö8ó ".ð "™H R™L˜Ü% a¬×.Ñ.Ü",¨k¸1Ð-=¸qÓ"A˜CØ*¨cÓ1Ø$'¨Ñ$4¡à$& Ø™Ÿ™¤g¨a£m×4ò' &ô* Ð5¼¸U¹X»ÑFÔGÜ�c‘fœd×#Ô#Ü�3‘6‹{˜aÓØ™ ™�‘Ø‰v˜Ž|Ø“FñU ðV €Jro   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        rn   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 )Nr_  ÚuseÚ__)ri   r¥  r
  )ÚpymodÚall_usesÚinnerÚmodblockrÁ  s        rn   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’;   ab  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        Ml  U(       d  Mu  [	        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 ry  )Úitemsr  r]   r‚  r   r•  r
  )Ú
f2cmap_allÚnew_mapÚc2py_maprg   Úf2cmap_mappedÚnew_map_lowerr¸  Úd1rÒ  Úv1Úd1_lowers              rn   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Ñ!ÞÝÃ1ÃbË"ÐMÔNØ×$Ñ$ RÖ(ç�7Ýã›b£"£b¬$¨x¯}©}«Ö*?ðAöó !ñ	 'ð, Ð$Ð$ùó3 =s   ­E)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=  r@  r3   rE   rF   r   rX  r   r   r   re   rb  r   r   rf  ri  Ú	Exceptionrk  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     sA  ðñ	ó Û 
Û 	Û Ý å Ý Ý ò€ð: ×"Ñ"€ð ‡}�}€à
€Ø€Ø€	òò
"òò
ò
;òCò?ò7ò=ò9ò@ò6òBò@ò
>ò>ò;òò6ò
 ò!ò!ò!ò!ò ò!ò!ò@ò
!ò
"ò
"ò
"ò
"ò
!ò
!ò
!ò
!ò
Bò9ò ò9ò;òEò=ò8ò
.òò:ò2ò	ò	ò	ò	òò	ò5ò4ò
+òIò
?òKò9òKò
ò$Lò*òEò"ò(ò,ò+ò0ò/ò.ò*ò/ò/ò0ð ˜k¨>¸>Ø˜|¨]¸MØ Ø˜Z¨°ZØ!Ð#3Ø"Ð$5Ø"Ð$5Ø#Ð%7ð€ò>òòò%òò	òòòòò.òòô	�	ô 	÷ñ ò2ò1ò)òòôò<4ð ')ô $òN/ò:ò2òò ò"/ò7ò
òôò&ð:  ô ;ðz Ÿ*›*Ð%MØ%'§T¢Tó+ß+0ª5ð à!Ÿz›zð +=Ø>@¿dºdó DßDIÂEð ò
òõC%ro   