Ë
    ¡ehð  ã                   óø  — d dl Z d dlZ	  ej                  dej                  «      Z ej                  dej                  «      Z ej                  dej                  «      Zd„ Z ej                  d«      Z ej                  d«      Z	 ej                  d«      Z
d	„ Zd
„ Z ej                  d«      Zd„ Zd„ Z ej                  d«      Zd„ Zd„ Z ej                  dej                  «      Zd„ Zd„ Z ed«      Zy)é    Nz2(\n|\A)((     (\$|\*))|)\s*(subroutine|function)\bz+\n\s*end\s*(subroutine|function)\b.*(\n|\Z)z\n     (\$|\*)\s*function\bc                 óÄ  — g }d}	 t         j                  | |«      }|€	 |S |j                  «       }t        j	                  | ||j                  «       «      r)	 | j                  d||«      }|dk(  rn|}| ||dz    dk7  rnŒ(|dz  }t        j                  | |j                  «       «      }|xr |j                  «       dz
  xs t        | «      x}}|j                  ||f«       ŒÜ)z‘ Return a list of tuples for each function or subroutine each
    tuple is the start and end of a subroutine or function to be
    expanded.
    r   ú
éÿÿÿÿé   z
     $é   )
Úroutine_start_reÚsearchÚstartÚfunction_start_reÚmatchÚendÚrfindÚroutine_end_reÚlenÚappend)ÚastrÚspanlistÚindÚmr
   Úir   s          úQ/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/numpy/f2py/_src_pyf.pyÚparse_structurer   7   sî   € ð €HØ
€CØ
Ü×#Ñ# D¨#Ó.ˆØˆ9Øð €Oð —‘“	ˆÜ×"Ñ" 4¨°·±³Ô8ØØ—J‘J˜t S¨%Ó0�Ø�b’5ØØ�Ø˜˜!˜A™#�; 
Ò*Øð ð 	�‰
ˆÜ×!Ñ! $¨¯©«Ó0ˆØ’O˜!Ÿ%™%›' !™)Ò0¤s¨4£yÐ0ˆˆcØ�‰˜ ˜Ô%ð! ó    z<\s*(\w[\w\d]*)\s*>z<\s*(\w[\w\d]*)\s*=\s*(.*?)\s*>z<\s*((.*?))\s*>c                 óÌ   — t         j                  | «      }i }|D ]G  }|d   j                  «       xs t        |«      }|d   j	                  dd«      }t        |«      }|||<   ŒI |S )Nr   r   ú\,ú@comma@)Únamed_reÚfindallÚstripÚ
unique_keyÚreplaceÚconv)r   ÚrepsÚnamesÚrepÚnameÚreplÚthelists          r   Úfind_repl_patternsr)   V   sl   € Ü×Ñ˜DÓ!€DØ€EØò ˆØ�1‰v�|‰|‹~Ò2¤¨EÓ!2ˆØ�1‰v�~‰~˜e YÓ/ˆÜ�t“*ˆØˆˆdŠð	ð
 €Lr   c                 ó\   — t        | «      }t        j                  t        d| «      d   } | |fS )NÚ r   )r)   ÚreÚsubnr   )r   r$   s     r   Úfind_and_remove_repl_patternsr.   `   s-   € Ü˜tÓ$€EÜ�7‰7”8˜R Ó& qÑ)€DØ�ˆ;Ðr   z\A\\(?P<index>\d+)\Zc                 ó6  — | j                  d«      }|D �cg c]  }|j                  «       ‘Œ }}t        t        |«      «      D ]?  }t        j                  ||   «      }|sŒt        |j                  d«      «      }||   ||<   ŒA dj                  |«      S c c}w )Nú,Úindex)	Úsplitr   Úranger   Úitem_rer   ÚintÚgroupÚjoin)r   ÚbÚxÚlr   r   Újs          r   r"   r"   f   s‰   € Ø�
‰
�3‹€AØÖ�qˆ�‰�Ð€AÐÜ”3�q“6‹]ò ˆÜ�M‰M˜!˜A™$ÓˆÚÜ�A—G‘G˜GÓ$Ó%ˆAØ�Q‘4ˆAˆaŠDð	ð
 �8‰8�A‹;Ðùò 	s   –Bc                 ól   — t        | j                  «       «      }d}d}|sd|z  }||v r|dz  }nd}|sŒS )z( Obtain a unique key given a dictionary.Fr   z__l%sT)ÚlistÚkeys)ÚadictÚallkeysÚdoneÚnÚnewkeys        r   r    r    p   sJ   € ä�5—:‘:“<Ó €GØ€DØ	€AÙØ˜A‘ˆØ�WÑØ�‰F‰AàˆDò ð €Mr   z\A\s*(\w[\w\d]*)\s*\Zc           
      ón  ‡‡‡— | j                  dd«      } | j                  dd«      } t        | «      Št        j                  d| «      } ˆfd„}t        j                  || «      } d }d }i Št
        j                  | «      D ]Ò  }|‰vsŒ‰j                  ||j                  |d «      «      }|€t        d|z  «      ‚||vr|j                  d«      s|||<   |j                  d	«      D �cg c]  }|j                  d
d	«      ‘Œ }}t        |«      }	|€
|	}|‰|<   |}Œ™|	|k(  r|‰|<   Œ¤t        dj                  |d	j                  ‰|   «      ||«      «       ŒÔ ‰s| S ˆˆfd„}
d}t        |«      D ]  Š|t
        j                  |
| «      dz   z  }Œ  |j                  dd«      }|j                  dd«      }|S c c}w )Nz\>z@rightarrow@z\<z@leftarrow@z<\1>c                 óþ   •— t        | j                  d«      j                  dd«      «      }t        j	                  |«      rd|z  S d }‰j                  «       D ]  }‰|   |k(  sŒ|}Œ |€t        ‰«      }|‰|<   d|z  S )Nr   r   r   z<%s>)r"   r6   r!   Útemplate_name_rer   r>   r    )Úmobjr(   r&   ÚkeyÚlnamess       €r   Úlistreplzexpand_sub.<locals>.listrepl…   sŠ   ø€ Ü�t—z‘z !“}×,Ñ,¨U°IÓ>Ó?ˆÜ×!Ñ! 'Ô*Ø˜WÑ%Ð%ØˆØ—;‘;“=ò 	ˆCØ�c‰{˜gÓ%Ø‘ð	ð ˆ<Ü˜fÓ%ˆDØ"ˆF�4‰LØ˜‰}Ðr   zNo replicates found for <%s>Ú_r0   r   zHMismatch in number of replacements (base <{}={}>) for <{}={}>. Ignoring.c                 ó^   •— | j                  d«      }‰j                  |‰dz   |gz  «      ‰   S )Nr   )r6   Úget)rG   r&   ÚkÚruless     €€r   Únamereplzexpand_sub.<locals>.namerepl®   s0   ø€ Ø�z‰z˜!‹}ˆØ�y‰y˜  !¡ d V™|Ó,¨QÑ/Ð/r   r+   z

ú>ú<)r!   r)   r   ÚsubÚlist_reÚtemplate_rer   rM   Ú
ValueErrorÚ
startswithr2   r   ÚprintÚformatr7   r3   )Úsubstrr$   rJ   ÚnumsubsÚ	base_ruleÚrr(   r   ÚruleÚnumrP   ÚnewstrrN   rI   rO   s               @@@r   Ú
expand_subra      sÍ  ú€ Ø�^‰^˜E >Ó2€FØ�^‰^˜E =Ó1€FÜ Ó'€FÜ�\‰\˜' 6Ó*€Fôô �[‰[˜ 6Ó*€Fð €GØ€IØ€EÜ× Ñ  Ó(ò jˆØ�EŠ>Ø—j‘j  E§I¡I¨a°Ó$6Ó7ˆGØˆÜ Ð!?À1Ñ!EÓFÐFØ˜‰~ g×&8Ñ&8¸Ô&=Ø"��a‘Ø7>·}±}ÀSÓ7IÖJ°!�A—I‘I˜i¨Õ-ÐJˆDÐJÜ�d“)ˆCàˆØ�Ø��a‘Ø‘	Ø˜’Ø��a’äð /ß/5©v°iÀÇÁÈ%ÐPYÑJZÓA[Ð]^Ð`gÓ/hõjð#jñ& Øˆõ0ð €FÜ�7‹^ò =ˆØ”+—/‘/ (¨FÓ3°fÑ<Ñ<‰ð=ð �^‰^˜N¨CÓ0€FØ�^‰^˜M¨3Ó/€FØ€Mùò3 Ks   Ã&F2c                 ó  — | }d}t        |«      }d}i }|j                  t        «       |D ]I  }t        |||d    «      \  }}||z  }|j                  |«       |t	        ||d   |d    |«      z  }|d   }ŒK |||d  z  }|S )Nr+   r   r   )r   ÚupdateÚ_special_namesr.   ra   )	Úallstrr`   ÚwritestrÚstructÚoldendr$   rS   Ú
cleanedstrÚdefss	            r   Úprocess_strrk   º   s«   € Ø€FØ€Hä˜VÓ$€Fà€FØ€EØ	‡L�L”Ô Øò ˆÜ8¸ÀÀsÈ1ÁvÐ9NÓOÑˆ
�DØ�JÑˆØ�‰�TÔØ”J˜v c¨!¡f¨S°©VÐ4°eÓ<Ñ<ˆØ�a‘&‰ðð ��v�w�Ñ€Hà€Or   z8(\n|\A)\s*include\s*['\"](?P<name>[\w\d./\\]+\.src)['\"]c                 ó"  — t         j                  j                  | «      }t        | «      5 }g }|D ]Æ  }t        j                  |«      }|rœ|j                  d«      }t         j                  j                  |«      s t         j                  j                  ||«      }t         j                  j                  |«      r|j                  t        |«      «       Œ¤|j                  |«       Œ¶|j                  |«       ŒÈ 	 d d d «       |S # 1 sw Y   S xY w)Nr&   )ÚosÚpathÚdirnameÚopenÚinclude_src_rer   r6   Úisabsr7   ÚisfileÚextendÚresolve_includesr   )ÚsourceÚdÚfidÚlinesÚliner   Úfns          r   ru   ru   Ï   sÍ   € Ü
�‰�‰˜Ó€AÜ	ˆf‹ð #˜ØˆØò 	#ˆDÜ×$Ñ$ TÓ*ˆAÙØ—W‘W˜V“_�Ü—w‘w—}‘} RÔ(ÜŸ™Ÿ™ a¨Ó,�BÜ—7‘7—>‘> "Ô%Ø—L‘LÔ!1°"Ó!5Õ6à—L‘L Õ&à—‘˜TÕ"ñ	#÷#ð €L÷#ð €Lús   «CDÄDc                 óL   — t        | «      }t        dj                  |«      «      S )Nr+   )ru   rk   r7   )rv   ry   s     r   Úprocess_filer}   á   s   € Ü˜VÓ$€EÜ�r—w‘w˜u“~Ó&Ð&r   zÿ
<_c=s,d,c,z>
<_t=real,double precision,complex,double complex>
<prefix=s,d,c,z>
<ftype=real,double precision,complex,double complex>
<ctype=float,double,complex_float,complex_double>
<ftypereal=real,double precision,\0,\1>
<ctypereal=float,double,\0,\1>
)rm   r,   ÚcompileÚIr   r   r   r   rU   r   rT   r)   r.   r4   r"   r    rF   ra   rk   rq   ru   r}   rd   © r   r   ú<module>r�      s  ðÛ 	Û 	ð+ðZ �2—:‘:ÐSÐUW×UYÑUYÓZÐ Ø�—‘ÐJÈBÏDÉDÓQ€Ø�B—J‘JÐ=¸r¿t¹tÓDÐ òð6 ˆb�j‰jÐ/Ó0€Øˆ2�:‰:Ð8Ó9€Ø
ˆ"�*‰*Ð'Ó
(€òòð
 ˆ"�*‰*Ð,Ó
-€òòð �2—:‘:Ð6Ó7Ð ò9òvð& �—‘ÐWÐY[×Y]ÑY]Ó^€òò$'ñ $ð %ó �r   