+
    &j                     N    R t ^ RIt^ s ! R R4      tR R ltR R ltR R	 ltR# )
z.Import mangling.
See mangling.md for details.
Nc                   `   a  ] tR t^t o RtV 3R lR ltV 3R lR ltV 3R lR ltR tR	t	V t
R
# )PackageManglerzR
Used on import, to ensure that all modules imported have a shared mangle parent.
c                   < V ^8  d   QhRR/# )   returnN )format__classdict__s   "o/Users/jameslopez/projects/CWCArchive/cwc-podcast/.venv/lib/python3.14/site-packages/torch/package/_mangling.py__annotate__PackageMangler.__annotate__   s     F F$ F    c                `    \         V n         \         ^,          s RV P                    R2V n        R# )   z<torch_package_>N_mangle_index_mangle_parentselfs   &r
   __init__PackageMangler.__init__   s.    * !00B0B/C1Er   c                    < V ^8  d   QhRS[ /# )r   r   str)r   r	   s   "r
   r   r      s     0 0c 0r   c                l    \        V4      ^ 8X  d   \        R4      hV P                  R,           V,           # )    zname must not be empty.)lenAssertionErrorr   )r   names   &&r
   manglePackageMangler.mangle   s/    t9> !9::""S(4//r   c                &   < V ^8  d   QhRS[ RS[ /# )r   mangledr   r   )r   r	   s   "r
   r   r       s     
 
 
 
r   c                    VP                  V P                  R,           4      '       d   VP                  R4      ^,          # V# )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
   demanglePackageMangler.demangle    s=     d11C788$$S)!,, r   c                    V P                   # )N)r   r   s   &r
   parent_namePackageMangler.parent_name,   s    """r   r   N)__name__
__module____qualname____firstlineno____doc__r   r!   r(   r+   __static_attributes____classdictcell__)r	   s   @r
   r   r      s4     F F0 0

 
# #r   r   c                0    V ^8  d   QhR\         R\        /# r   r    r   )r   bool)r   s   "r
   r   r   0   s     8 8S 8T 8r   c                 B    \        \        P                  ! R V 4      4      # )z<torch_package_\d+>)r6   rematchr    s   &r
   
is_mangledr;   0   s    /677r   c                0    V ^8  d   QhR\         R\         /# r5   r   )r   s   "r
   r   r   4   s     
 
3 
3 
r   c                x    \        V 4      '       d)   V P                  R4      w  rp\        V4      ^ 8w  d   V# R# V # )z
Note: Unlike PackageMangler.demangle, this version works on any
mangled name, irrespective of which PackageMangler created it.
r    )r;   r'   r   )r    _firstseplasts   &   r
   r(   r(   4   s>    
 $ NN3/T 3x1}t,",Kr   c                0    V ^8  d   QhR\         R\         /# r5   r   )r   s   "r
   r   r   A   s     @ @C @C @r   c                 X    \        V 4      '       d   V P                  R 4      ^ ,          # T # )r   )r;   r'   r:   s   &r
   get_mangle_prefixrD   A   s%    %/%5%54>>#q!?4?r   )r1   r8   r   r   r;   r(   rD   r   r   r
   <module>rE      s1    
 !# !#H8
@r   