+
    &j                         ^ RI t ^ RIHt ^ RIHtHt ^ RIHt ]! R4      t]! R4      t	]! R4      t
]! 4       tR R	 ltR# )
    N)Callable)ConcatenateTypeVar)	ParamSpec_P_T_Cc                    V ^8  d   QhR\         \        \        \        3,          \        3,          R\         \        \        \        3,          \        3,          /# )   freturn)r   r   r	   r   r   )formats   "n/Users/jameslopez/projects/CWCArchive/cwc-podcast/.venv/lib/python3.14/site-packages/torch/utils/_functools.py__annotate__r      sB      BF#R'(k"b&!2%&    c                v   a a RS P                   ,           o\        P                  ! S 4      R VV 3R ll4       pV# )a  
Like `@functools.cache` but for methods.

`@functools.cache` (and similarly `@functools.lru_cache`) shouldn't be used
on methods because it caches `self`, keeping it alive
forever. `@cache_method` ignores `self` so won't keep `self` alive (assuming
no cycles with `self` in the parameters).

Footgun warning: This decorator completely ignores self's properties so only
use it when you know that self is frozen or won't change in a meaningful
way (such as the wrapped function being pure).
_cache_method_c                p    V ^8  d   QhR\         R\        P                  R\        P                  R\        /# )r   selfargskwargsr   )r	   r   r   r   r   )r   s   "r   r   "cache_method.<locals>.__annotate__!   s0      2 bgg  r r   c                    < V'       d   \        R 4      h\        V SR4      ;p'       g   / p\        V SV4       VP                  V\        4      pV\        Jd   V# S! V .VO5/ VB pWSV&   V# )z.cache_method does not accept keyword argumentsN)AssertionErrorgetattrsetattrget_cache_sentinel)r   r   r   cachecached_valuevalue
cache_namer   s   &*,   r   wrapcache_method.<locals>.wrap    su     !QRR z4888ED*e,yy7.$(((dr   )__name__	functoolswraps)r   r#   r"   s   f @r   cache_methodr(      s:     "AJJ.J__Q   Kr   )r&   collections.abcr   typingr   r   typing_extensionsr   r   r   r	   objectr   r(    r   r   <module>r.      s<     $ ' ' t_T]T] (r   