Ë
    [^(hc  ã                   óX   — d Z ddlZda G d„ d«      Zdedefd„Zdedefd„Zdedefd	„Zy)
z.Import mangling.
See mangling.md for details.
é    Nc                   ó:   — e Zd ZdZd	d„Zdefd„Zdedefd„Zd„ Zy)
ÚPackageManglerzZ
    Used on import, to ensure that all modules imported have a shared mangle parent.
    ÚreturnNc                 óV   — t         | _         t         dz  a d| j                   › d�| _        y )Né   z<torch_package_ú>)Ú_mangle_indexÚ_mangle_parent©Úselfs    úU/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/torch/package/_mangling.pyÚ__init__zPackageMangler.__init__   s.   € ä*ˆÔä˜Ñˆð !0°×0BÑ0BÐ/CÀ1ÐEˆÕó    c                 óF   — t        |«      dk7  sJ ‚| j                  dz   |z   S )Nr   ú.)Úlenr
   )r   Únames     r   ÚmanglezPackageMangler.mangle   s(   € Ü�4‹y˜AŠ~Ðˆ~Ø×"Ñ" SÑ(¨4Ñ/Ð/r   Úmangledc                 ój   — |j                  | j                  dz   «      r|j                  d«      d   S |S )z¿
        Note: This only demangles names that were mangled by this specific
        PackageMangler. It will pass through names created by a different
        PackageMangler instance.
        r   é   )Ú
startswithr
   Ú	partition)r   r   s     r   ÚdemanglezPackageMangler.demangle   s:   € ð ×Ñ˜d×1Ñ1°CÑ7Ô8Ø×$Ñ$ SÓ)¨!Ñ,Ð,ð ˆr   c                 ó   — | j                   S )N)r
   r   s    r   Úparent_namezPackageMangler.parent_name*   s   € Ø×"Ñ"Ð"r   )r   N)	Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Ústrr   r   r   © r   r   r   r      s1   „ ñóFð0˜có 0ð
 ð 
¨ó 
ó#r   r   r   r   c                 ó@   — t        t        j                  d| «      «      S )Nz<torch_package_\d+>)ÚboolÚreÚmatch©r   s    r   Ú
is_mangledr(   .   s   € Ü”—‘Ð/°Ó6Ó7Ð7r   c                 ój   — t        | «      r'| j                  d«      \  }}}t        |«      dk7  r|S dS | S )zŒ
    Note: Unlike PackageMangler.demangle, this version works on any
    mangled name, irrespective of which PackageMangler created it.
    r   r   Ú )r(   r   r   )r   Ú_firstÚsepÚlasts       r   r   r   2   s=   € ô
 �$ÔØ ŸN™N¨3Ó/Ñˆ��Tô ˜3“x 1’}ˆtÐ,¨"Ð,Ø€Kr   c                 óD   — t        | «      r| j                  d«      d   S | S )Nr   r   )r(   r   r'   s    r   Úget_mangle_prefixr/   ?   s"   € Ü%/°Ô%5ˆ4�>‰>˜#Ó˜qÑ!Ð?¸4Ð?r   )	r    r%   r	   r   r!   r$   r(   r   r/   r"   r   r   ú<module>r0      s]   ðñó 
ð €÷ #ñ  #ðF8�Sð 8˜Tó 8ð
�3ð 
˜3ó 
ð@˜Cð @ Cô @r   