+
    –°³j-  ã                   óÆ  € ^ RI t ^ RIt^ RIt^ RIHtHt ^ RIHt ^ RIH	t	 ^ RI
Ht ^ RIHt ^ RIHt ^ RIHtHtHt ^ R	IHt ]P,                  ! ]4      t]P2                  ! R
R7       ! R R]4      4       t ! R R4      t]P2                   ! R R4      4       tR R ltR R lt]] ]!],          3,          t"]P2                  ! R
R7       ! R R4      4       t# ! R R4      t$R# )é    N)ÚABCÚabstractmethod)Údefaultdict©Ú	Generator)Úcontextmanager)Úchain©ÚAny)ÚAppendingByteSerializerÚBytesReaderÚBytesWriter)Ú
OrderedSetT)Úfrozenc                   óâ   a € ] tR t^t o Rt]P                  ! RR7      t]V 3R lR l4       t	]V 3R lR l4       t
]V 3R lR	 l4       t]V 3R
 lR l4       t]V 3R lR l4       tV 3R ltRtV tR# )ÚCacheArtifactzG
Data for each cache artifact that will be serialized and deserialized
F)Úreprc                ó(   <€ V ^8„  d   QhRS[ RRRR/# )é   ÚwriterÚclsr   ÚreturnN©r   )ÚformatÚ__classdict__s   "€ÚV/home/luca/screen-checking/.venv/lib/python3.14/site-packages/torch/compiler/_cache.pyÚ__annotate__ÚCacheArtifact.__annotate__    s"   ø€ ÷ (ñ (™+ð (¨Oð (Àñ (ó    c                ór   € V P                  VP                  4       V P                  VP                  4       R # ©N)Ú	write_strÚkeyÚwrite_bytesÚcontent)r   r   s   &&r   Ú	serializeÚCacheArtifact.serialize   s&   € à×Ñ˜Ÿ™Ô!Ø×Ñ˜3Ÿ;™;Ö'r   c                ó*   <€ V ^8„  d   QhRS[ RS[RR/# )r   Úartifact_typeÚreaderr   r   )Ústrr   )r   r   s   "€r   r   r   %   s'   ø€ ÷ Hñ H¡3ð H±ð HÀñ Hr   c                ón   € VP                  4       pVP                  4       p\        P                  WV4      # r!   )Úread_strÚ
read_bytesÚCacheArtifactFactoryÚcreate)r)   r*   r#   r%   s   &&  r   ÚdeserializeÚCacheArtifact.deserialize$   s/   € à�o‰oÓˆØ×#Ñ#Ó%ˆÜ#×*Ñ*¨=¸wÓGÐGr   c                ó&   <€ V ^8„  d   QhRS[ RS[/# )r   r%   r   )r   Úbytes)r   r   s   "€r   r   r   +   s   ø€ ÷ ñ ™ð ¡ñ r   c                ó`   € \        V \        4      '       g   \        R \        V 4       24      hV # )zExpected bytes, got )Ú
isinstancer4   ÚAssertionErrorÚtype)r%   s   &r   ÚencodeÚCacheArtifact.encode*   s+   € ä˜'¤5×)Ò)Ü Ð#7¼¸W»°Ð!GÓHÐHØˆr   c                ó   <€ V ^8„  d   QhRR/# ©r   r   N© )r   r   s   "€r   r   r   1   s   ø€ ÷ ñ  ñ r   c                ó   € R # r!   r=   ©Úselfs   &r   Úpopulate_cacheÚCacheArtifact.populate_cache0   s   € ár   c                ó    <€ V ^8„  d   QhRS[ /# ©r   r   ©r+   )r   r   s   "€r   r   r   5   s   ø€ ÷ Xñ X‘#ñ Xr   c                 ó   € \        R4      h)zí
Returns the type of the artifact. Must be unique across all CacheArtifact classes.

CacheArtifactFactory.register will add property method to CacheInfo based on this (def {type}_artifacts)
that returns all artifacts for specific cache.
z9CacheArtifact is an abstract class, please use a subclass)ÚRuntimeErrorr=   r   r   r8   ÚCacheArtifact.type4   s   € ô ÐVÓWÐWr   c                ó2   <€ V ^8„  d   Qh/ S[ ;R&   S[;R&   # )r   r#   r%   )r+   r4   )r   r   s   "€r   r   r      s   ø‡ ‚ ñ 
�Hñ ñ Ñ2ò r   r=   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__ÚdataclassesÚfieldr%   Ústaticmethodr&   r1   r9   r   rA   r8   Ú__annotate_func__Ú__static_attributes__Ú__classdictcell__©r   s   @r   r   r      s‰   ø‡ € ñð
 !×&Ò&¨EÔ2€Gà÷(ó ð(ð ÷Hó ðHð
 ÷ó ðð
 ÷ó ðð ÷Xó ðX÷? ƒ r   r   c                   ó¤   a € ] tR t^?t o Rt/ t]V 3R lR l4       t]V 3R lR l4       t]V 3R lR l4       t	]V 3R lR	 l4       t
V 3R
 ltRtV tR# )r/   z@
Factory for creating CacheArtifact objects based on their type
c                óF   <€ V ^8„  d   QhRS[ S[,          RS[ S[,          /# )r   Úartifact_clsr   )r8   r   )r   r   s   "€r   r   Ú!CacheArtifactFactory.__annotate__G   s%   ø€ ÷ ñ ¡D©Õ$7ð ¹DÁÕ<Oñ r   c                óâ   a€ VP                  4       oVP                  4       V P                  9   d   \        R S R24      hWP                  S&   \        \        S R2\        V3R l4      4       V# )úArtifact of type=z2 already registered in mega-cache artifact factoryÚ
_artifactsc                 ó*   <€ V P                   S,          # r!   ©Ú	artifacts)r@   Úartifact_type_keys   &€r   Ú<lambda>Ú/CacheArtifactFactory.register.<locals>.<lambda>Q   s   ø€  $§.¡.Ð1BÖ"Cr   )r8   Ú_artifact_typesr7   ÚsetattrÚ	CacheInfoÚproperty)r   rX   r`   s   &&@r   ÚregisterÚCacheArtifactFactory.registerF   s}   ø€ à(×-Ñ-Ó/ÐØ×ÑÓ #×"5Ñ"5Ô5Ü Ø#Ð$5Ð#6Ð6hÐióð ð 2>×ÑÐ-Ñ.ÜÜØ Ð! Ð,ÜÔCÓDô	
ð
 Ðr   c                ó6   <€ V ^8„  d   QhRS[ RS[S[,          /# )r   r`   r   )r+   r8   r   )r   r   s   "€r   r   rY   V   s    ø€ ÷ 6ñ 6±3ð 6¹4ÁÕ;Nñ 6r   c                óf   € WP                   9  d   \        R V R24      hV P                   V,          # )r[   z. not registered in mega-cache artifact factory)rc   r7   )r   r`   s   &&r   Ú_get_artifact_typeÚ'CacheArtifactFactory._get_artifact_typeU   s>   € à×$7Ñ$7Ô7Ü Ø#Ð$5Ð#6Ð6dÐeóð ð ×"Ñ"Ð#4Õ5Ð5r   c                ó2   <€ V ^8„  d   QhRS[ RS[ RS[RS[/# ©r   r`   r#   r%   r   )r+   r4   r   )r   r   s   "€r   r   rY   ^   s)   ø€ ÷ *ñ *¡sð *±ð *¹uð *Éñ *r   c                ó4   € V P                  V4      pV! W#4      # r!   )rk   ©r   r`   r#   r%   rX   s   &&&& r   r0   ÚCacheArtifactFactory.create]   s   € à×-Ñ-Ð.?Ó@ˆá˜CÓ)Ð)r   c                ó2   <€ V ^8„  d   QhRS[ RS[ RS[RS[/# rn   )r+   r   r   )r   r   s   "€r   r   rY   d   s-   ø€ ÷ ?ñ ?Ù #ð?Ù*-ð?Ù8;ð?á	ñ?r   c                óR   € V P                  V4      pV! W$P                  V4      4      # r!   )rk   r9   rp   s   &&&& r   Úencode_createÚ"CacheArtifactFactory.encode_createc   s+   € ð ×-Ñ-Ð.?Ó@ˆá˜C×!4Ñ!4°WÓ!=Ó>Ð>r   c                óL   <€ V ^8„  d   Qh/ S[ S[S[S[,          3,          ;R&   # )r   rc   )Údictr+   r8   r   )r   r   s   "€r   r   rY   ?   s!   ø‡ ‚ ñ
 ™#™t¡MÕ2Ð2Õ3Ñ8ò r   r=   N)rJ   rK   rL   rM   rN   rc   Úclassmethodrg   rk   r0   rt   rR   rS   rT   rU   s   @r   r/   r/   ?   sg   ø‡ € ñð 79€Oà÷ó ðð ÷6ó ð6ð ÷*ó ð*ð
 ÷?ó ð?÷K ƒ r   r/   c                   ó  a € ] tR t^lt o Rt]P                  ! R R7      t]V 3R lR l4       t	]V 3R lR l4       t
]V 3R lR	 l4       t]V 3R
 lR l4       t]V 3R lR l4       tV 3R lR ltV 3R lR ltV 3R lR ltV 3R ltRtV tR# )re   zV
Return value of serialization and deserialization for the purpose of
instrumentation
c                 ó    € \        \        4      # r!   )r   Úlistr=   r   r   ra   ÚCacheInfo.<lambda>t   s	   € ¤¬DÔ 1r   )Údefault_factoryc                ó0   <€ V ^8„  d   QhRS[ S[,          /# rD   ©r{   r+   )r   r   s   "€r   r   ÚCacheInfo.__annotate__y   ó   ø€ ÷ ñ ¡D©¥Iñ r   c                ó   € R # r!   r=   r?   s   &r   Úinductor_artifactsÚCacheInfo.inductor_artifactsx   ó   € ár   c                ó0   <€ V ^8„  d   QhRS[ S[,          /# rD   r   )r   r   s   "€r   r   r€   }   r�   r   c                ó   € R # r!   r=   r?   s   &r   Úautotune_artifactsÚCacheInfo.autotune_artifacts|   r…   r   c                ó0   <€ V ^8„  d   QhRS[ S[,          /# rD   r   )r   r   s   "€r   r   r€   �   s   ø€ ÷ ñ ©©S­	ñ r   c                ó   € R # r!   r=   r?   s   &r   Úaot_autograd_artifactsÚ CacheInfo.aot_autograd_artifacts€   r…   r   c                ó0   <€ V ^8„  d   QhRS[ S[,          /# rD   r   )r   r   s   "€r   r   r€   …   s   ø€ ÷ ñ ™t¡C�yñ r   c                ó   € R # r!   r=   r?   s   &r   Úpgo_artifactsÚCacheInfo.pgo_artifacts„   r…   r   c                ó0   <€ V ^8„  d   QhRS[ S[,          /# rD   r   )r   r   s   "€r   r   r€   ‰   s   ø€ ÷ ñ ¡d©3¥iñ r   c                ó   € R # r!   r=   r?   s   &r   Úprecompile_artifactsÚCacheInfo.precompile_artifactsˆ   r…   r   c                ó$   <€ V ^8„  d   QhRS[ RR/# )r   Úartifactr   N)r   )r   r   s   "€r   r   r€   Œ   s   ø€ ÷ =ñ =™Mð =¨dñ =r   c                óz   € V P                   VP                  4       ,          P                  VP                  4       R # r!   )r_   r8   Úappendr#   )r@   r—   s   &&r   ÚaddÚCacheInfo.addŒ   s#   € Ø�‰�x—}‘}“Õ'×.Ñ.¨x¯|©|Ö<r   c                ó   <€ V ^8„  d   QhRR/# r<   r=   )r   r   s   "€r   r   r€   �   s   ø€ ÷ ñ �tñ r   c                ó:   € V P                   P                  4        R # r!   )r_   Úclearr?   s   &r   rž   ÚCacheInfo.clear�   s   € Ø�‰×ÑÖr   c                ó    <€ V ^8„  d   QhRS[ /# rD   ©Úbool)r   r   s   "€r   r   r€   ’   s   ø€ ÷ "ñ "‘tñ "r   c                ó$   € V P                   '       * # r!   r^   r?   s   &r   ÚemptyÚCacheInfo.empty’   s   € Ø—>‘>Ô!Ð!r   c                óL   <€ V ^8„  d   Qh/ S[ S[S[S[,          3,          ;R&   # )r   r_   )r   r+   r{   )r   r   s   "€r   r   r€   l   s!   ø‡ ‚ ñ ™3¡¡S¥	˜>Õ*ñ ò r   r=   N)rJ   rK   rL   rM   rN   rO   rP   r_   rf   rƒ   rˆ   rŒ   r�   r”   rš   rž   r¤   rR   rS   rT   rU   s   @r   re   re   l   s©   ø‡ € ñð
 .9×->Ò->Ù1ô.€Ið
 ÷ó ðð ÷ó ðð ÷ó ðð ÷ó ðð ÷ó ð÷=ð =÷ð ÷"ð "÷M ƒ r   re   c                ó,   € V ^8„  d   QhR\         RRRR/# )r   r   r   útuple[str, list[CacheArtifact]]r   Nr   )r   s   "r   r   r   –   s$   € ÷ 2ñ 2Üð2Ø?ð2à	ñ2r   c                 óÂ   € V P                  V^ ,          4       V P                  \        V^,          4      4       V^,           F  p\        P	                  W4       K  	  R# )r   N)r"   Úwrite_uint64Úlenr   r&   )r   r   r—   s   && r   Ú_serialize_single_cacher¬   –   sJ   € ð ×Ñ�S˜•VÔØ
×Ñœ˜C �F›Ô$Ø˜—F�FˆÜ×Ñ Ö1ó r   c                ó(   € V ^8„  d   QhR\         RR/# )r   r*   r   r¨   )r   )r   s   "r   r   r   Ÿ   s   € ÷ 	(ñ 	(Üð	(à&ñ	(r   c                 ó¸   € . pV P                  4       pV P                  4       p\        V4       F'  pVP                  \        P                  W 4      4       K)  	  W!3# r!   )r-   Úread_uint64Úranger™   r   r1   )r*   r_   r`   Únum_artifactsÚ_s   &    r   Ú_deserialize_single_cacher³   Ÿ   sX   € ð €IØŸ™Ó)ÐØ×&Ñ&Ó(€MÜ�=Ö!ˆØ×Ñœ×2Ñ2Ð3DÓMÖNñ "ð Ð'Ð'r   c                   óT   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tRtV t	R# )	ÚCacheArtifactRecorderzC
Shared entry point for cache implementations to record artifacts.
c                ó$   <€ V ^8„  d   QhRS[ RR/# )r   r%   r   Nr
   )r   r   s   "€r   r   Ú"CacheArtifactRecorder.__annotate__·   s   ø€ ÷ Tñ T™cð T dñ Tr   c                ó\   € \         P                  V P                  V P                  V4       R # r!   )ÚCacheArtifactManagerÚrecord_artifactr)   r#   ©r@   r%   s   &&r   ÚrecordÚCacheArtifactRecorder.record·   s   € Ü×,Ñ,¨T×-?Ñ-?ÀÇÁÈ7ÖSr   c                ó2   <€ V ^8„  d   QhRS[ R,          RR/# )r   r%   Nr   r
   )r   r   s   "€r   r   r·   º   s   ø€ ÷ !ñ !©¨t­ð !¸ñ !r   c                ó4   € Ve   V P                  V4       R # R # r!   )r¼   r»   s   &&r   Úrecord_if_presentÚ'CacheArtifactRecorder.record_if_presentº   s   € ØÒØ�K‰K˜Ö ñ r   c                ó2   <€ V ^8„  d   Qh/ S[ ;R&   S[ ;R&   # )r   r)   r#   rE   )r   r   s   "€r   r   r·   ®   s   ø‡ ‚ ñ Ññ ñ 
�Hò r   r=   N)
rJ   rK   rL   rM   rN   r¼   rÀ   rR   rS   rT   rU   s   @r   rµ   rµ   ®   s'   ø‡ € ñ÷Tð T÷!ð !÷ ƒ r   rµ   c                   óX  a € ] tR t^¿t o Rt]! ]4      t]! 4       t	]
! ]R7      t]! 4       t]V 3R lR l4       t]]V 3R lR l4       4       t]V 3R lR l4       t]V 3R	 lR
 l4       t]V 3R lR l4       t]V 3R lR l4       t]V 3R lR l4       t]V 3R lR l4       tV 3R ltRtV tR# )r¹   a  
Lightweight manager class for collecting and processing cache artifacts for
hot loading

Intended Lifecycle:
- Execute code via torch.compile, this will call
    CacheArtifactRecorder.record on each cache artifact
- Call CacheArtifactManager.serialize to convert all the cache artifacts
    to portable format
- Call CacheArtifactManager.deserialize to hot load the cache artifacts on
    a potentially different process

NOTE: There's no FB/FC guarantees, results of cache artifacts will not be
      used unless code version matches.
©Úserialize_fnc                ó   <€ V ^8„  d   QhRR/# r<   r=   )r   r   s   "€r   r   Ú!CacheArtifactManager.__annotate__Þ   s   ø€ ÷  ñ  �dñ  r   c                óÖ   € V P                   P                  4        V P                  P                  4        V P                  P                  4        V P                  P                  4        R # r!   )Ú_new_cache_artifactsrž   Ú_seen_artifactsÚ_serializerÚ_cache_info©r   s   &r   rž   ÚCacheArtifactManager.clearÝ   sF   € à× Ñ ×&Ñ&Ô(Ø×Ñ×!Ñ!Ô#Ø�‰×ÑÔØ�‰×ÑÖr   c                ó.   <€ V ^8„  d   QhRS[ R,          /# )r   r   )NNNr   )r   r   s   "€r   r   rÇ   æ   s   ø€ ÷ 2ñ 2¡Ð+;Õ!<ñ 2r   c              #  ó�  "  € V P                   pV P                  pV P                  pV P                  p\	        \
        4      V n         \        4       V n        \        \        R 7      V n        V P                  P                  4       V n         Rx € Wn         W n        W0n        W@n        R#   Yn         Y n        Y0n        Y@n        i ; i5i)rÄ   N)
rÉ   rÊ   rË   rÌ   r   r{   r   r   r¬   Ú	__class__)r   Úoriginal_new_cache_artifactsÚoriginal_seen_artifactsÚoriginal_serializerÚoriginal_cache_infos   &    r   Úwith_fresh_cacheÚ%CacheArtifactManager.with_fresh_cacheä   s£   é € ð (+×'?Ñ'?Ð$Ø"%×"5Ñ"5ÐØ!Ÿo™oÐØ!Ÿo™oÐä#.¬tÓ#4ˆÔ Ü(›lˆÔÜ1Ô?VÔWˆŒØŸ/™/×3Ñ3Ó5ˆŒð	2Ûà'CÔ$Ø"9ÔØ1ŒOØ1ŽOøð (DÔ$Ø"9ÔØ1ŒOØ1�Oüs   ‚BCÂB) ÂCÂ)CÃCc                ó0   <€ V ^8„  d   QhRS[ RS[ RS[RR/# )r   r)   r#   r%   r   N)r+   r   )r   r   s   "€r   r   rÇ   ù   s3   ø€ ÷ *ñ *áð*ñ ð*ñ ð	*ð
 
ñ*r   c                óü   € \         P                  WV4      pW@P                  9   d   R# \        P	                  RV4       V P
                  V,          P                  V4       V P                  P                  V4       R# )zO
Called from each caching operation to record the artifact in this
"mega" list
NzRecording %s)r/   rt   rÊ   ÚlogÚdebugrÉ   r™   rš   )r   r)   r#   r%   r—   s   &&&& r   rº   Ú$CacheArtifactManager.record_artifactø   s`   € ô (×5Ñ5°mÈ'ÓRˆØ×*Ñ*Ô*ÙÜ�	‰	�. (Ô+Ø× Ñ  Õ/×6Ñ6°xÔ@Ø×Ñ×Ñ Ö)r   c                ó    <€ V ^8„  d   QhRS[ /# rD   r¡   )r   r   s   "€r   r   rÇ     s   ø€ ÷ 2ñ 2™tñ 2r   c                ó2   € \        V P                  4      ^ 8g  # )z7
Have we seen new artifacts since last serialize call?
)r«   rÉ   rÍ   s   &r   Úneed_serializeÚ#CacheArtifactManager.need_serialize
  s   € ô
 �3×+Ñ+Ó,°Ñ1Ð1r   c                óD   <€ V ^8„  d   QhRS[ S[S[3,          R,          /# r<   )Útupler4   re   )r   r   s   "€r   r   rÇ     s#   ø€ ÷ ñ ™%¡¡yÐ 0Õ1°DÕ8ñ r   c                ó`  € \        V P                  P                  4       !   F4  p\        P	                  RV4       V P
                  P                  V4       K6  	  V P
                  P                  4       '       d   R#  \        P                  ! V P
                  4      pV P                  P                  V P                  P                  4       4       V P                  P                  4       pV P                  P                  4        W23#   \         d    \        P!                  RRR7        R# i ; i)z/
Converts the "mega" list into portable format
z
saving: %sNz Failed to pickle cache artifactsT©Úexc_info)r	   rÉ   ÚvaluesrÚ   rÛ   rÌ   rš   r¤   ÚcopyÚdeepcopyrË   ÚextendÚitemsÚto_bytesrž   Ú	ExceptionÚwarning)r   r—   ÚinfoÚartifact_bytess   &   r   r&   ÚCacheArtifactManager.serialize  sê   € ô
 ˜s×7Ñ7×>Ñ>Ó@ÔAˆHÜ�I‰I�l HÔ-Ø�O‰O×Ñ Ö)ñ Bð �?‰?× Ñ ×"Ò"ñ ð		Kô —=’= §¡Ó1ˆDØ�O‰O×"Ñ" 3×#;Ñ#;×#AÑ#AÓ#CÔDØ Ÿ_™_×5Ñ5Ó7ˆNØ×$Ñ$×*Ñ*Ô,Ø!Ð'Ð'øÜô 	KÜ�K‰KÐ:ÀTˆKÕJÙð	Kús   Á=B	D Ä"D-Ä,D-c                ó4   <€ V ^8„  d   QhRS[ RS[R,          /# )r   Úserialized_artifactsr   N)r4   ÚCacheArtifactsResult)r   r   s   "€r   r   rÇ   ,  s!   ø€ ÷ ñ ©%ð Ñ4HÈ4Õ4Oñ r   c                óÌ   €  \         P                  4        \        \        P                  ! V \
        R7      4      pV#   \         d    \        P                  RRR7        R# i ; i)z7
Converts the portable format back into CacheArtifacts
)Údeserialize_fnz#Failed to un-pickle cache artifactsTrä   N)	r¹   Ú"_ensure_cache_artifacts_registeredrw   r   Úto_listr³   rì   rÚ   rí   )rò   r_   s   & r   r1   Ú CacheArtifactManager.deserialize+  s^   € ð

	Ü ×CÑCÔEÜÜ'×/Ò/Ø(Ü#<ôóˆIð Ðøô	 ô 	Ü�K‰KÐ=ÈˆKÔMÚð	ús   ‚9= ½"A#Á"A#c                ó&   <€ V ^8„  d   QhRS[ RS[/# )r   r_   r   )ró   re   )r   r   s   "€r   r   rÇ   ?  s   ø€ ÷ ñ Ñ#7ð ¹Iñ r   c                óÄ   € \        4       p\        V P                  4       !   F:  p\        P	                  R V4       VP                  V4       VP                  4        K<  	  V# )zwriting: %s)re   r	   ræ   rÚ   rÛ   rš   rA   )r_   rî   r—   s   &  r   Úpopulate_cachesÚ$CacheArtifactManager.populate_caches>  sN   € ä‹{ˆÜ˜y×/Ñ/Ó1Ô2ˆHÜ�I‰I�m XÔ.Ø�H‰H�XÔØ×#Ñ#Ö%ñ 3ð
 ˆr   c                ó   <€ V ^8„  d   QhRR/# r<   r=   )r   r   s   "€r   r   rÇ   I  s   ø€ ÷ 
ñ 
°4ñ 
r   c                óB   € ^ RI Hp ^ RIHp ^ RIHp ^ RIHp ^ RIH	p R# )zÚWhen deserializing caches in fresh process, we need to ensure that all
cache artifacts are registered in the cache registry. This is done by
simply importing all the cache artifacts already wrapped with register call.
)ÚPrecompileCacheArtifact)ÚPGOCacheArtifact)ÚAOTAutogradCacheArtifact)ÚInductorCacheArtifact)ÚAutotuneCacheArtifactN)
Útorch._dynamo.packagerÿ   Útorch._dynamo.pgor   Ú-torch._functorch._aot_autograd.autograd_cacher  Útorch._inductor.codecacher  Ú&torch._inductor.runtime.autotune_cacher  )r   rÿ   r   r  r  r  s   &     r   rö   Ú7CacheArtifactManager._ensure_cache_artifacts_registeredH  s   € õ 	BÝ6õ	
õ 	D÷	
r   c                ó�   <€ V ^8„  d   Qh/ S[ ;R&   S[S[,          ;R&   S[S[S[S[S[,          3,          ,          ;R&   S[;R&   # )r   rÉ   rÊ   rË   rÌ   )ró   r   r   r   râ   r+   r{   re   )r   r   s   "€r   r   rÇ   ¿   sT   ø‡ ‚ ñ$ /ÑBñ% ñ*  ¡Õ.Ñ=ñ+ ñ2 )©©s±D¹Õ4GÐ/GÕ)HÕIñ ñ3 ñ8 Ñ(ò9 r   r=   N)rJ   rK   rL   rM   rN   r   r{   rÉ   r   rÊ   r   r¬   rË   re   rÌ   rx   rž   r   rÖ   rº   rß   r&   rQ   r1   rû   rö   rR   rS   rT   rU   s   @r   r¹   r¹   ¿   sç   ø‡ € ññ" 2=¸TÓ1BÐñ 2<³€Oñ
 	 Ð-DÔEð ñ '›[€Kà÷ ó ð ð Ø÷2ó ó ð2ð$ ÷*ó ð*ð" ÷2ó ð2ð ÷ó ðð2 ÷ó ðð$ ÷ó ðð ÷
ó ð
÷U ƒ r   r¹   )%rç   rO   ÚloggingÚabcr   r   Úcollectionsr   Úcollections.abcr   Ú
contextlibr   Ú	itertoolsr	   Útypingr   Ú&torch.utils._appending_byte_serializerr   r   r   Útorch.utils._ordered_setr   Ú	getLoggerrJ   rÚ   Ú	dataclassr   r/   re   r¬   r³   rw   r+   r{   ró   rµ   r¹   r=   r   r   Ú<module>r     sç   ðÛ Û Û ß #Ý #Ý %Ý %Ý Ý ÷ñ õ
 0ð ×Ò˜Ó!€ð ×Ò˜dÔ#ô%X�Có %Xó $ð%X÷P*?ñ *?ðZ ×Ñ÷&"ð &"ó ð&"õR2õ	(ð ˜C  mÕ!4Ð4Õ5Ð ð ×Ò˜dÔ#÷!ð !ó $ð!÷ W
ó W
r   