Ë
    Bü´j:'  ã                   ó|   — d Z ddlZddlmZ ddlmZmZmZmZm	Z	m
Z
mZmZmZmZmZmZmZ dd„Zd„ Zdd„Zdd	„Zd
„ Zy)a;  

Rules for building C/API module with 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 License.

NO WARRANTY IS EXPRESSED OR IMPLIED.  USE AT YOUR OWN RISK.
é    Né   )Úisoc_kindmap)ÚgetfortrannameÚ
isexternalÚ
isfunctionÚisfunction_wrapÚisintent_inÚisintent_outÚislogicalfunctionÚismoduleroutineÚisscalarÚissubroutineÚissubroutine_wrapÚoutmessÚshowc                 ód  — |€|}|| vrt        | «       t        d|› d�«       yd| |   vrt        | |   «       t        d|› d�«       y| |   d   }|dk(  rd| |   v r|› d| |   d   › d	�}i }d}d
| |   v r| |   d
   }d}nd| |   v r
| |   d   }d}d|v r<|r|d   dv r|› d�}n`|› d|› d|d   › d	�}nQ|d   dv r|› d|d   › d	�}n>|› d|d   › �}n3d|v r |› d|d   › �}d|v r|› d|d   › d	�}n|› d	�}nd|v r|› d|d   › d	�}|› d|› �}d| |   v r|› ddj                  | |   d   «      › d	�}|S )Nz,var2fixfortran: No definition for argument "z".
Ú Útypespecz*var2fixfortran: No typespec for argument "ÚtypeÚtypenameú(ú)ÚkindselectorÚkindÚcharselectorÚlenÚ*)r   ú:ú(*)z(len=*)ú=)r   r   z*(z(len=z,kind=z(kind=ú Ú	dimensionú,)r   r   Újoin)ÚvarsÚaÚfaÚf90modeÚvardefÚselectorÚlks          úR/root/workspace/ytshorts/venv/lib/python3.12/site-packages/numpy/f2py/func2subr.pyÚvar2fixfortranr-       s  € Ø	€zØˆØ��}ÜˆTŒ
ÜÐ>¸q¸cÀÐFÔGØØ˜˜a™Ñ ÜˆT�!‰WŒÜÐ<¸Q¸C¸tÐDÔEØØ�!‰W�ZÑ €FØ�Ò˜J¨$¨q©'Ñ1Ø�8˜1˜T !™W ZÑ0Ð1°Ð3ˆØ€HØ	€BØ˜˜a™Ñ Ø˜‘7˜>Ñ*ˆØ‰Ø	˜4 ™7Ñ	"Ø˜‘7˜>Ñ*ˆØˆØ
ˆh�ÙØ˜‰}Ð 1Ñ1Ø"˜8 7Ð+‘à"˜8 1 R D¨¨(°3©-¨¸Ð:‘Ø�c‰]˜jÑ(Ø�x˜r (¨3¡- °Ð2‰Fà�x˜q ¨#¡ Ð0‰FØ	�(Ñ	Ø�8˜5 ¨%¡Ð 1Ð2ˆØ�XÑØ�x˜v h¨vÑ&6Ð%7°qÐ9‰Fà�x˜q�\‰FØ	�8Ñ	Ø�8˜6 (¨6Ñ"2Ð!3°1Ð5ˆàˆx�q˜˜Ð€FØ�d˜1‘gÑØ�8˜1˜SŸX™X d¨1¡g¨kÑ&:Ó;Ð<¸AÐ>ˆØ€Mó    c                 ó�   — d}| d   j                  «       D ]-  }|j                  di «      j                  d«      }|t        v sŒ- y |S )NFr%   r   r   T)ÚvaluesÚgetr   )ÚroutÚuseisocÚvalueÚ
kind_values       r,   Úuseiso_c_bindingr6   N   sP   € Ø€GØ�f‘×$Ñ$Ó&ò ˆØ—Y‘Y˜~¨rÓ2×6Ñ6°vÓ>ˆ
ØœÒ%Ùðð €Nr.   c           	      óä  — t        | «      sJ ‚g }| d   }| d   D ]k  }| d   |   }t        |j                  dg «      «      D ]C  \  }}|dk(  sŒd|› d|› �}ddgd	œ}	d
|› d|› d�|	d<   |j                  |«       |	||<   ||d   |<   ŒE Œm | d   j	                  |«       t        |«      }
dg}|fd„}| d   }t        | «      }t        | «      }|› d�}||vr||   ||<   |g| d   dd  z   }n	|g| d   z   }t        ||d|«      }|d d dk(  r5|r	d|dd  z   }nd|dd  z   }||   d   }|j                  dd«      dk(  rd|d<   |j                  d|«      }d }t        | «      }dj                  |«      }|rb|j                  |› d�d«      }|D �cg c]
  }||k7  sŒ	|‘Œ }}|| d<    |d| d   › d|› d|› d�«       |s |d | d   › d!|› �«       |rG |d"«       n> |d#|› d|› d�«       |r |d"«       |
s# |d$|› �«       |j                  dd«      d%z   |z   }|
rF| d&   j                  d'«      D ]/  }|j                  «       j                  d «      sŒ#d(|vsŒ( ||«       Œ1 |dd  }g }|D ]-  }t        ||   «      sŒ |d$|› �«       |j                  |«       Œ/ |D ];  }||v rŒt!        ||   «      sŒ |t        |||¬)«      «       |j                  |«       Œ= |D ];  }||v rŒt#        ||   «      sŒ |t        |||¬)«      «       |j                  |«       Œ= |D ]  }||v rŒ |t        |||¬)«      «       Œ  ||«       |� ||«       |
r,|rn) |d*«        || d&   j                  «       «        |d+«       dj                  |D �cg c]	  }||vsŒ|‘Œ c}«      }|s.t%        | «      r ||› d,|› d-|› d.�«       n ||› d/|› d-|› d�«       |r |d0| d   › d|› �«       |d2   S  |d1«       |d2   S c c}w c c}w )3Nr%   Úargsr"   r   Úf2py_Ú_dÚintegerÚhide©r   Úintentúshape(ú, r   r    r   c                 ó   — |d   › d| › �|d<   y ©Nr   z
      © ©ÚlineÚrets     r,   Úaddzcreatefuncwrapper.<locals>.addj   ó   € Ø˜‘F�8˜8 D 6Ð*ˆˆAŠr.   ÚnameÚf2pywrapr   z
@@@NAME@@@é   zcharacter*(*)zcharacter(len=10)zcharacter*10r   r   r   Ú10úsubroutine f2pywrap_Ú
modulenameÚ_ú (úuse ú	, only : úuse iso_c_bindingúsubroutine f2pywrapú	external r!   Úsaved_interfaceú
Ú__user__©r(   Ú	interfaceúend interfacez = .not.(.not.r   z))z = úend subroutine f2pywrap_Úendr   )r   Ú	enumerater1   ÚappendÚextendÚboolr   r   r-   Úreplacer6   r$   ÚsplitÚlstripÚ
startswithr   r   r	   r   )r2   Ú	signatureÚ
extra_argsr%   r&   ÚvÚiÚdÚdnÚdvÚneed_interfacerF   rG   rI   Úfortrannamer(   Únewnamer8   Úl_tmplÚ
charselectÚl1Úrlr3   ÚsargsÚargrE   Údumped_argss                              r,   Úcreatefuncwrapperrw   V   sþ  € Ü�dÔÐÐà€JØ�‰<€DØ�&‰\ò 	'ˆØ�‰L˜‰OˆÜ˜aŸe™e K°Ó4Ó5ò 	'‰DˆAˆqØ�C‹xØ˜Q˜C˜r ! Ð%�Ø"+¸°xÑ@�Ø" 1 # R¨ s¨!Ð,��3‘Ø×!Ñ! "Ô%Ø��R‘Ø$&��+‘˜qÒ!ñ	'ð	'ð 	ˆ�L×Ñ˜
Ô#Ü˜*Ó%€Nàˆ$€Càó +à�‰<€DÜ  Ó&€KÜ˜dÓ#€GØ��hÐ€Gà�dÑØ˜T™
ˆˆW‰Øˆy˜4 ™<¨¨Ð+Ñ+‰àˆy˜4 ™<Ñ'ˆä˜D $¨°gÓ>€FØˆcˆr€{�oÒ%ÙØ(¨6°"°#¨;Ñ6‰Fà# f¨R¨S kÑ1ˆFØ˜$‘Z Ñ/ˆ
Ø�>‰>˜#˜rÓ" eÒ+Ø"ˆJ�s‰Oà	�‰˜ gÓ	.€BØ	€Bä˜tÓ$€GØ�I‰I�d‹O€EÙð —‘   b˜k¨2Ó.ˆØ#Ö3˜ s¨d£{’Ð3ˆÐ3ØˆˆV‰ÙÐ" 4¨Ñ#5Ð"6°a¸°v¸RÀ¸wÀaÐHÔIÙÙ�$�t˜LÑ)Ð*¨)°K°=ÐAÔBÙÙÐ#Õ$áÐ! $  r¨%¨°Ð2Ô3ÙÙÐ#Ô$ÙÙ�)˜K˜=Ð)Ô*Ø—‘ ¨bÓ1°CÑ7¸+ÑEˆBáØÐ*Ñ+×1Ñ1°$Ó7ò 	ˆDØ�{‰{‹}×'Ñ'¨Õ/°JÀdÒ4JÙ�D•	ð	ð ��ˆ8€DØ€KØò "ˆÜ�d˜1‘gÕÙ�)˜A˜3�Ô Ø×Ñ˜qÕ!ð"ð ò "ˆØ�ÑØÜ�D˜‘GÕÙ”˜t Q°Ô8Ô9Ø×Ñ˜qÕ!ð"ð ò "ˆØ�ÑØÜ�t˜A‘wÕÙ”˜t Q°Ô8Ô9Ø×Ñ˜qÕ!ð"ð ò 6ˆØ�ÑØÙŒN˜4 ¨GÔ4Õ5ð6ñ
 ˆ„GØ	€~ÙˆBŒáÙàá�ÔÙ�Ð&Ñ'×.Ñ.Ó0Ô1Ù�Ô à�I‰I $Ö>˜Q¨!°:Ò*=’qÒ>Ó?€EáÜ˜TÔ"Ù�7�)˜>¨+¨°a¸°w¸bÐAÕBá�7�)˜3˜{˜m¨1¨U¨G°1Ð5Ô6ÙÙÐ& t¨LÑ'9Ð&:¸!¸D¸6ÐBÔCð ˆq‰6€Mñ 	ˆEŒ
Øˆq‰6€MùòG 4ùòp ?s   Æ
O(ÆO(Í>	O-ÎO-c           	      ó¶  — t        | «      sJ ‚g }| d   }| d   D ]k  }| d   |   }t        |j                  dg «      «      D ]C  \  }}|dk(  sŒd|› d|› �}ddgd	œ}	d
|› d|› d�|	d<   |j                  |«       |	||<   ||d   |<   ŒE Œm | d   j	                  |«       t        |«      }
dg}|fd„}| d   }t        | «      }t        | «      }| d   }t        | «      }dj                  |«      }|r3 |d| d   › d|› d|› d�«       |r |d«       |s8 |d| d   › d|› �«       n& |d|› d|› d�«       |r |d«       |
s |d|› �«       |
rF| d   j                  d«      D ]/  }|j                  «       j                  d«      sŒ#d|vsŒ( ||«       Œ1 g }|D ]-  }t        ||   «      sŒ |d|› �«       |j                  |«       Œ/ |D ];  }||v rŒt        ||   «      sŒ |t        |||¬«      «       |j                  |«       Œ= |D ]  }||v rŒ |t        |||¬«      «       Œ |
rX|rnU |d«       | d   j                  d«      D ].  }|j                  «       j                  d«      rd|v rŒ' ||«       Œ0  |d«       dj                  |D �cg c]	  }||vsŒ|‘Œ c}«      }|s |d |› d!|› d�«       |r |d"| d   › d|› �«       |d$   S  |d#«       |d$   S c c}w )%Nr%   r8   r"   r   r9   r:   r;   r<   r=   r?   r@   r   r    r   c                 ó   — |d   › d| › �|d<   y rB   rC   rD   s     r,   rG   zcreatesubrwrapper.<locals>.addå   rH   r.   rI   rM   rN   rO   rP   rS   rQ   rR   rT   rU   rV   rW   rX   rY   rZ   r[   zcall r   r\   r]   r   )r   r^   r1   r_   r`   ra   r   r   r6   r$   rc   rd   re   r   r   r-   )r2   rf   rg   r%   r&   rh   ri   rj   rk   rl   rm   rF   rG   rI   rn   r(   r8   r3   rt   rE   rv   s                        r,   Úcreatesubrwrapperrz   Ñ   sˆ  € Ü˜ÔÐÐà€JØ�‰<€DØ�&‰\ò 	'ˆØ�‰L˜‰OˆÜ˜aŸe™e K°Ó4Ó5ò 	'‰DˆAˆqØ�C‹xØ˜Q˜C˜r ! Ð%�Ø"+¸°xÑ@�Ø" 1 # R¨ s¨!Ð,��3‘Ø×!Ñ! "Ô%Ø��R‘Ø$&��+‘˜qÒ!ñ	'ð	'ð 	ˆ�L×Ñ˜
Ô#Ü˜*Ó%€Nàˆ$€Càó +à�‰<€DÜ  Ó&€KÜ˜dÓ#€Gà�‰<€Dä˜tÓ$€GØ�I‰I�d‹O€EÙÙÐ" 4¨Ñ#5Ð"6°a¸°v¸RÀ¸wÀaÐHÔIÙÙÐ#Ô$ÙÙ�$�t˜LÑ)Ð*¨)°K°=ÐAÕBáÐ! $  r¨%¨°Ð2Ô3ÙÙÐ#Ô$ÙÙ�)˜K˜=Ð)Ô*áØÐ*Ñ+×1Ñ1°$Ó7ò 	ˆDØ�{‰{‹}×'Ñ'¨Õ/°JÀdÒ4JÙ�D•	ð	ð €KØò "ˆÜ�d˜1‘gÕÙ�)˜A˜3�Ô Ø×Ñ˜qÕ!ð"ð ò "ˆØ�ÑØÜ�D˜‘GÕÙ”˜t Q°Ô8Ô9Ø×Ñ˜qÕ!ð"ð ò 6ˆØ�ÑØÙŒN˜4 ¨GÔ4Õ5ð6ñ
 Ùàá�ÔØÐ.Ñ/×5Ñ5°dÓ;ò �Ø—;‘;“=×+Ñ+¨FÔ3¸
ÀdÑ8JØÙ�D•	ðñ �Ô à�I‰I $Ö>˜Q¨!°:Ò*=’qÒ>Ó?€EáÙˆe�K�=  % ¨Ð*Ô+ÙÙÐ& t¨LÑ'9Ð&:¸!¸D¸6ÐBÔCð ˆq‰6€Mñ 	ˆEŒ
Øˆq‰6€Mùò ?s   Ê	KÊKc                 ón  — t        | «      rØt        | «      }| d   }t        d|› d|› d�«       t        j                  | «      } |}|}d| v r| d   }| d   |   | d   |<   | d   |   }t	        |«      sWd|vrg |d<   |d   j                  d«       d	}|d   D ]  }|j                  d
«      sŒd} n |r|d   j                  d
|› �«       |g| d   z   | d   d d  | t        | «      fS t        | «      rDt        | «      }| d   }t        d|› d|› d�«       t        j                  | «      } | t        | «      fS | dfS )NrI   z)		Creating wrapper for Fortran function "z"("z")...
Úresultr%   r>   Úoutr   zout=r   r8   z+		Creating wrapper for Fortran subroutine "r   )
r   r   r   Úcopyr
   r_   re   rw   r   rz   )r2   rn   rI   ÚfnameÚrnameÚfvarÚflagri   s           r,   Úassubrrƒ   (  s‡  € Ü�tÔÜ$ TÓ*ˆØ�F‰|ˆÜð Ø�6˜˜[˜M¨ð2ô 	3ä�y‰y˜‹ˆØˆØˆØ�tÑØ˜‘NˆEØ"& v¡,¨uÑ"5ˆD�‰L˜ÑØ�F‰|˜EÑ"ˆÜ˜DÔ!Ø˜tÑ#Ø!#��X‘Ø�‰N×!Ñ! %Ô(ØˆDØ˜(‘^ò �Ø—<‘< Õ'Ø�DÙðñ Ø�X‘×%Ñ%¨¨U¨G nÔ5Ø ˜' D¨¡LÑ0ˆˆV‰‘QˆØÔ& tÓ,Ð,Ð,Ü˜ÔÜ$ TÓ*ˆØ�F‰|ˆÜð Ø�6˜˜[˜M¨ð2ô 	3ä�y‰y˜‹ˆØÔ& tÓ,Ð,Ð,Ø�ˆ8€Or.   )NN)r   )Ú__doc__r~   Ú	_isocbindr   Úauxfuncsr   r   r   r   r	   r
   r   r   r   r   r   r   r   r-   r6   rw   rz   rƒ   rC   r.   r,   ú<module>r‡      sD   ðñ
ó å #÷÷ ÷ õ ó",ò\óxóvTón!r.   