+
    –°³j<  ã                   óR  a € R t00 t ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIt^ RI	H
t
Ht ^ RIHt ^ RIHtHtHtHtHtHtHt ^ RIHt ^ RIHtHtHtHtHtHt ^ RIH t H!t!H"t"H#t#H$t$H%t% ^ R	I&H't' ^ R
I(H)t) ]PT                  ! ]+4      t,] ^ k RR.t- ! R R]4      t. ! R R]
4      t/R# )é    N)ÚAny)ÚFileSystemReaderÚFileSystemWriter)Úconsolidate_safetensors_files)Ú_gen_file_nameÚ_HFStorageInfoÚ_metadata_fnÚCUSTOM_METADATA_KEYÚSAVED_OFFSETS_KEYÚSHARDED_DIR_NAMEÚSUFFIX)ÚSerializationFormat)ÚChunkStorageMetadataÚMetadataÚMetadataIndexÚStorageMetaÚTensorPropertiesÚTensorStorageMetadata)ÚLoadPlanÚLoadPlannerÚReadItemÚSavePlanÚSavePlannerÚ	WriteItem)ÚWriteResult)ÚFutureÚHuggingFaceStorageWriterÚHuggingFaceStorageReaderc                   ó°   a a€ ] tR t^1t oRtRV3R lV 3R llltV3R lR ltV3R lV 3R lltV3R lR	 ltV3R
 lR lt	]
V3R lR l4       tRtVtV ;t# )r   zH
A writer that writes to storage in the huggingface safetensors format.
c                óf   <€ V ^8„  d   QhRS[ RS[S[ S[3,          R,          RS[RS[RS[RS[RR/# )	é   ÚpathÚfqn_to_index_mappingNÚthread_countÚsave_distributedÚenable_consolidationÚthread_count_consolidationÚreturn)ÚstrÚdictÚintÚbool)ÚformatÚ__classdict__s   "€Úh/home/luca/screen-checking/.venv/lib/python3.14/site-packages/torch/distributed/checkpoint/hf_storage.pyÚ__annotate__Ú%HuggingFaceStorageWriter.__annotate__6   sg   ø€ ÷ 'Eñ 'Eáð'Eñ #¡3© 8�n¨tÕ3ð'Eñ ð	'Eñ
 ð'Eñ #ð'Eñ %(ð'Eð 
ñ'Eó    c                ó<  <€ \         SV `  V\        P                  VR7       W n        W@n        WPn        RV n        V P                  '       dJ   \        V P                  4      V n        V P                  P                  V P                  \        4      V n	        W`n        R# )aœ  
Initialize the huggingface writer pointing to path.

Args:
    path: directory where the checkpoint will be read from.
    fqn_to_index_mapping: A mapping from tensor FQN to the index of the file that the tensor should be written to.
                      Indices are from 1 to N, where N is the number of files. If not provided,
                      the tensors will be written to a single file. If none, then all the tensors on the
                      same rank will be written to the same file.
    thread_count: Number of threads to use to write distributed checkpoint. Default to 1.
    save_distributed: If True, save the checkpoint using distributed APIs where every rank saves its own shard.
                Default is False which assumes rank-0 checkpointing of the full state_dict.
    enable_consolidation: If True, consolidate the sharded checkpoint after saving. The sharded tensors will be
                        saved to path/sharded and the full tensors will be saved to path. Default to False.
    thread_count_consolidation: Number of threads to use for parallel processing of saving data
                        to consolidated output files. Default to 1.
)r"   Úserialization_formatr$   N)ÚsuperÚ__init__r   ÚSAFETENSORSr#   r%   r&   Úconsolidated_output_pathr)   r"   ÚfsÚconcat_pathr   r'   )Úselfr"   r#   r$   r%   r&   r'   Ú	__class__s   &&&&&&&€r/   r6   Ú!HuggingFaceStorageWriter.__init__6   s‚   ø€ ô6 	‰ÑØÜ!4×!@Ñ!@Ø%ð 	ô 	
ð
 <PÔ!Ø&6ÔØ*>Ô!Ø48ˆÔ%Ø×$×$Ð$Ü,/°·	±	«NˆDÔ)ØŸ™×+Ñ+¨D¯I©IÔ7GÓHˆDŒIØ*DÖ'r2   c                óF   <€ V ^8„  d   QhRS[ S[,          RS[ S[,          /# )r!   Úplansr(   )Úlistr   )r-   r.   s   "€r/   r0   r1   _   s#   ø€ ÷ ñ ©©h­ð ¹DÁ½Nñ r2   c                óì   € . p\        V^R7       F`  w  r4/ pV P                  e   V P                  VR&   V P                  '       d   W5R&   VP                  \        P
                  ! WER7      4       Kb  	  V# )é   )Ústartr#   Úshard_index)Ústorage_data)Ú	enumerater#   r%   ÚappendÚdataclassesÚreplace)r;   r?   Ú	new_plansÚiÚplanrE   s   &&    r/   Úprepare_global_planÚ,HuggingFaceStorageWriter.prepare_global_plan_   sq   € Øˆ	Ü  ¨a×0‰GˆAØ+-ˆLØ×(Ñ(Ò4Ø7;×7PÑ7P�Ð3Ñ4Ø×$×$Ð$Ø./˜]Ñ+à×Ñœ[×0Ò0°ÔQÖRñ 1ð Ðr2   c                óL   <€ V ^8„  d   QhRS[ RS[RS[S[S[,          ,          /# )r!   rL   Úplannerr(   )r   r   r   r@   r   )r-   r.   s   "€r/   r0   r1   l   s3   ø€ ÷ 8ñ 8áð8ñ ð8ñ 
‘‘[Õ!Õ	"ñ	8r2   c                óF  <€ \        VP                  4      ^ 8X  d   \        4       pVP                  . 4       V# VP                  pRpRpRV9   d
   VR,          pRV9   d
   VR,          pV P                  WQP                  4      pVe   \        VP                  4       4      M^p\        P                  ! 4       p	VP                  4        FH  w  r«\        W¨V4      pV	P                  V P                  P                  V P                  V4      WË34       KJ  	  \        SV `A  W)4      # )r   Nr#   rD   )ÚlenÚitemsr   Ú
set_resultrE   Ú_split_by_storage_planÚmaxÚvaluesÚqueueÚQueuer   Úputr9   r:   r"   r5   Ú_write_data)r;   rL   rP   ÚfutrE   Ústorage_planrD   ÚbucketsÚhighest_indexÚ
file_queueÚ
file_indexÚwrite_itemsÚ	file_namer<   s   &&&          €r/   Ú
write_dataÚ#HuggingFaceStorageWriter.write_datal   sý   ø€ ô
 ˆt�z‰z‹?˜aÔÜ ›(ˆCØ�N‰N˜2ÔØˆJð (,×'8Ñ'8ˆØ.2ˆØ"&ˆØ! \Ô1Ø'Ð(>Õ?ˆLØ˜LÔ(Ø& }Õ5ˆKà×-Ñ-¨l¿J¹JÓGˆØ6BÒ6Nœ˜L×/Ñ/Ó1Ô2ÐTUˆä"'§+¢+£-ˆ
Ø'.§}¡}¦Ñ#ˆJÜ& zÀ+ÓNˆIØ�N‰NØ—‘×$Ñ$ T§Y¡Y°	Ó:¸IÐSöñ (7ô ‰wÑ" 7Ó7Ð7r2   c                óJ   <€ V ^8„  d   QhRS[ RS[S[S[,          ,          RR/# )r!   ÚmetadataÚresultsr(   N)r   r@   r   )r-   r.   s   "€r/   r0   r1   ‹   s1   ø€ ÷ %Bñ %B™xð %B±$±t¹KÕ7HÕ2Ið %BÈdñ %Br2   c                óè  € V P                   '       d*   V P                  '       g   \        P                  R 4       R# V P                   '       d   V P                  e   V P                  M-\
        P                  VP                  P                  4       ^4      p\        \        V P                  4      V P                  V P                  VR7      # / p/ p^ pV F�  pTP                  V Uu/ uF-  qˆP                  P                   VP"                  P$                  bK/  	  up4       T\'        V Uu. uF  qˆP"                  P(                  NK  	  up4      ,          pKƒ  	  RV/VR&   WTR&   V P*                  P-                  V P                  \.         4      p	V P*                  P1                  V	R4      ;_uu_ 4       p
\2        P4                  ! WJ^R7       RRR4       R# u upi u upi   + '       g   i     R# ; i)z4Not consolidating sharded checkpoint in finish step.N)Ú	input_dirÚ
output_dirÚnum_threadsr#   Ú
total_sizerg   Ú
weight_mapÚw)Úindent)r%   r&   ÚloggerÚinfor#   r*   ÚfromkeysÚstate_dict_metadataÚkeysr   r)   r"   r8   r'   ÚupdateÚindexÚfqnrE   Úrelative_pathÚsumÚlengthr9   r:   r	   Úcreate_streamÚjsonÚdump)r;   rg   rh   r#   Úmetadata_to_writeÚ
storage_mdrm   Úwr_listÚwrÚmetadata_pathÚmetadata_files   &&&        r/   ÚfinishÚHuggingFaceStorageWriter.finish‹   s•  € Ø× × Ð ¨×)B×)BÐ)Bô
 �K‰KÐNÔOÙØ× × Ð ð ×,Ñ,Ò8ð ×)Ò)ä—]‘] 8×#?Ñ#?×#DÑ#DÓ#FÈÓJð !ô 1Ü˜dŸi™i›.Ø×8Ñ8Ø ×;Ñ;Ø%9ô	ð ð ÐØˆ
Øˆ
ÛˆGØ×ÑÙGNÓOÁwÀ—‘—‘˜rŸ™×<Ñ<Ò<ÁwÑOôð œ#ÁÓHÁ¸"Ÿ™×5Ô5ÁÑHÓIÕIŠJñ	 ð
 *6°zÐ(BÐ˜*Ñ%Ø*4˜,Ñ'àŸ™×+Ñ+¨D¯I©I¼,¸ÓIˆØ�W‰W×"Ñ" =°#×6Ô6¸-Ü�IŠIÐ'¸qÕA÷ 7Ñ6ùò PùâH÷
 7×6Ð6ús   Ã&3G
Ä*GÆ3G Ç G1	c          	      ó†   <€ V ^8„  d   QhRS[ S[S[3,          R,          RS[S[,          RS[ S[S[S[,          3,          /# )r!   r]   NrS   r(   )r*   r)   r+   r@   r   )r-   r.   s   "€r/   r0   r1   ²   sD   ø€ ÷ ñ Ù ¡¡c �N¨TÕ1ðÙ:>¹y½/ðá	‰c‘4™	•?Ð"Õ	#ñr2   c                ó°   € Vf   ^V/# / pV FE  pVP                   P                  pW,          pWc9  d   V.W6&   K.  W6,          P                  V4       KG  	  V# ©N)rw   rx   rG   )r;   r]   rS   r^   ÚitemÚkeyÚidxs   &&&    r/   rU   Ú/HuggingFaceStorageWriter._split_by_storage_plan²   s^   € ð ÒØ�u�:ÐàˆÛˆDØ—*‘*—.‘.ˆCàÕ#ˆCØÔ!Ø $˜v�“à•×#Ñ# DÖ)ñ ð ˆr2   c                ó    <€ V ^8„  d   QhRS[ /# ©r!   r(   )r)   )r-   r.   s   "€r/   r0   r1   Æ   s   ø€ ÷ ñ ™sñ r2   c                ó   € \         # r‰   )r	   )r;   s   &r/   rƒ   Ú&HuggingFaceStorageWriter.metadata_pathÅ   s   € äÐr2   )r8   r&   r#   r"   r%   r'   )NrB   FFrB   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r6   rM   rd   r…   rU   Úpropertyrƒ   Ú__static_attributes__Ú__classdictcell__Ú__classcell__©r<   r.   s   @@r/   r   r   1   s[   ù‡ € ñ÷'Eõ 'E÷Rð ÷8ó 8÷>%Bð %B÷Nð ð& ÷ó ÷ð r2   c                   óŽ   a a€ ] tR t^Êt oRtRV3R lV 3R lll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R lt	Rt
VtV ;t# )r   zI
A reader that reads a checkpoint in the huggingface safetensors format.
c                ó*   <€ V ^8„  d   QhRS[ RS[RR/# )r!   r"   r$   r(   N)r)   r+   )r-   r.   s   "€r/   r0   Ú%HuggingFaceStorageReader.__annotate__Ï   s"   ø€ ÷ 
)ñ 
)™Sð 
)±ð 
)¸Dñ 
)r2   c                ó4   <€ \         SV `  VR7       W n        R# )zÑ
Initialize the huggingface reader pointing to path.

Args:
    path: directory where the checkpoint will be read from.
    thread_count: Number of threads to use to read distributed checkpoint. Default to 1.
)r"   N)r5   r6   r$   )r;   r"   r$   r<   s   &&&€r/   r6   Ú!HuggingFaceStorageReader.__init__Ï   s   ø€ ô 	‰Ñ˜dÐÔ#Ø(Ör2   c                ó*   <€ V ^8„  d   QhRS[ RS[RR/# )r!   ÚreqrP   r(   N)r   r   )r-   r.   s   "€r/   r0   rž   Û   s"   ø€ ÷ 2ñ 2©Hð 2¹{ð 2Ètñ 2r2   c           	     ój  € \         ;QJ d2    . R \        VP                  VP                  4       4       F  NK  	  5M+! R \        VP                  VP                  4       4       4      pVP	                  VP
                  P                  4      V,          pVP                  V4      P                  4       pVP                  4       VP                  4       8w  d;   \        RVP
                   RVP                  4        RVP                  4        24      hVP                  V4       VP                  W&4       R# )z1Helper function to process a single read request.c              3   óJ   "  € T F  w  r\        WV,           4      x € K  	  R # 5ir‰   )Úslice)Ú.0Úoffsetr{   s   &  r/   Ú	<genexpr>ÚAHuggingFaceStorageReader._process_read_request.<locals>.<genexpr>Þ   s%   é € ð 
á"G‘�ô �& 6�/×*Ð*Û"Gùs   ‚!#zreq z mismatch sizes z vs N)ÚtupleÚzipÚstorage_offsetsÚlengthsÚ	get_sliceÚstorage_indexrx   Úresolve_tensorÚdetachÚsizeÚAssertionErrorÚcopy_Úcommit_tensor)r;   Úfr¢   rP   ÚslicesÚtensorÚtarget_tensors   &&&&   r/   Ú_process_read_requestÚ.HuggingFaceStorageReader._process_read_requestÛ   sÿ   € ÷ ”ñ 
ä"% c×&9Ñ&9¸3¿;¹;Ô"Gó
—‘ñ 
ä"% c×&9Ñ&9¸3¿;¹;Ô"Gó
ó 
ˆð —‘˜S×.Ñ.×2Ñ2Ó3°FÕ;ˆØ×.Ñ.¨sÓ3×:Ñ:Ó<ˆà×ÑÓ 6§;¡;£=Ô0Ü Ø�s×(Ñ(Ð)Ð)9¸-×:LÑ:LÓ:NÐ9OÈtÐTZ×T_ÑT_ÓTaÐSbÐcóð ð 	×Ñ˜FÔ#Ø×Ñ˜cÖ1r2   c                óX   <€ V ^8„  d   QhRS[ P                  RS[ P                  RS[RR/# )r!   r`   Úresult_queuerP   r(   N)rX   rY   r   )r-   r.   s   "€r/   r0   rž   í   s;   ø€ ÷ ñ á—K‘Kðñ —k‘kðñ ð	ð
 
ñr2   c                ó&  € ^ RI Hp   VP                  4       w  rVV! VRR7      ;_uu_ 4       pV F  pV P                  WxV4       K  	  RRR4       VP	                  R4       K\    + '       g   i     L#; i  \
        P                   d     R# i ; i)r   ©Ú	safe_openTÚpt©ÚfilenameÚ	frameworkN)ÚsafetensorsrÀ   Ú
get_nowaitrº   rZ   rX   ÚEmpty)	r;   r`   r½   rP   rÀ   rc   Úreqsr¶   r¢   s	   &&&&     r/   Ú_read_files_from_queueÚ/HuggingFaceStorageReader._read_files_from_queueí   s   € õ 	*ð	ØØ",×"7Ñ"7Ó"9‘�	Ù¨	¸T×BÕBÀaÛ#˜Ø×2Ñ2°1¸7ÖCñ  $÷ Cð × Ñ  Ö&÷ C×Bûô �{‰{ô 	Úð	ús(   ˆ%A7 ­A$Á	A7 Á$A4	Á/A7 Á7BÂBc                ó:   <€ V ^8„  d   QhRS[ RS[RS[R,          /# )r!   rL   rP   r(   N)r   r   r   )r-   r.   s   "€r/   r0   rž   ÿ   s&   ø€ ÷ 7ñ 7™hð 7±ð 7ÁÈÅñ 7r2   c           	     ó¬  € ^ RI Hp / pVP                   FM  pV P                  VP                  ,          pVP
                  pVP                  V. 4      P                  V4       KO  	  V P                  ^8:  g   \        V4      ^8:  dR   VP                  4        F;  w  rxV! VRR7      ;_uu_ 4       p	V F  p
V P                  WšV4       K  	  RRR4       K=  	  EM\        P                  ! 4       p\        P                  ! 4       pVP                  4        F  w  rxVP                  Wx34       K  	  . p\        V P                  \        V4      4      p\        V4       FH  p\         P"                  ! V P$                  W¼V3R7      pVP'                  4        VP                  V4       KJ  	  V F  pVP)                  4        K  	  ^ p  VP+                  4        V^,          pK  \1        4       pVP3                  R4       V#   + '       g   i     EKu  ; i  \        P,                   d     Mi ; iT\        T4      8w  g   K_  \/        RT R\        T4       24      h)r   r¿   rÁ   rÂ   N)ÚtargetÚargszNot all files were processed: z out of )rÅ   rÀ   rS   rE   r¯   ry   Ú
setdefaultrG   r$   rR   rº   rX   rY   rZ   ÚminÚrangeÚ	threadingÚThreadrÉ   rC   ÚjoinrÆ   rÇ   r³   r   rT   )r;   rL   rP   rÀ   Úper_fileÚ	read_itemÚitem_mdrc   rÈ   r¶   r¢   r`   r½   Úthreadsrl   Ú_ÚtÚprocessed_countr\   s   &&&                r/   Ú	read_dataÚ"HuggingFaceStorageReader.read_dataÿ   sÿ  € Ý)à.0ˆàŸœˆIØ&*×&7Ñ&7¸	×8OÑ8OÕ&PˆGØ×-Ñ-ˆIØ×Ñ 	¨2Ó.×5Ñ5°iÖ@ñ $ð
 ×Ñ Ô!¤S¨£]°aÔ%7Ø#+§>¡>Ö#3‘�	Ù¨	¸T×BÕBÀaÛ#˜Ø×2Ñ2°1¸7ÖCñ  $÷ CÑBó $4ô ',§k¢k£mˆJÜ(-¯ª«ˆLð $,§>¡>Ö#3‘�	Ø—‘ 	Ð0Ö1ñ $4ð ˆGÜ˜d×/Ñ/´°X³Ó?ˆKÜ˜;Ö'�Ü×$Ò$Ø×6Ñ6Ø$°GÐ<ô�ð —‘”	Ø—‘˜qÖ!ñ (ó �Ø—‘–ñ ð  ˆOðØØ ×+Ñ+Ô-Ø# qÕ(’Oô “hˆØ�‰�tÔØˆ
÷W C×BÑBûôB —;‘;ô Ùðúð ¤# h£-Ö/Ü$Ø4°_Ð4EÀXÌcÐRZËmÈ_Ð]óð s   Â.G:ÇH Ç:HÈH'È&H'c                ó    <€ V ^8„  d   QhRS[ /# r�   )r   )r-   r.   s   "€r/   r0   rž   9  s   ø€ ÷ Nñ N™xñ Nr2   c                ó\  € ^ RI Hp ^ RIHp / p/ p. pV P                  P                  V P                  4       F1  pVP                  \        4      '       g   K   VP                  V4       K3  	  V EF×  pV! VRR7      ;_uu_ 4       pVP                  4       p	VP                  4       p
RpV
'       dE   V
P                  \        4      '       d*   \        P                  ! V
P                  \        4      4      pV	 EFC  pVP!                  V4      P#                  4       pVP!                  V4      P%                  4       pVe   W¼,          \&        ,          pM^ .\)        V4      ,          pWÃ9  d�   \+        \-        V! V4      R7      \.        P0                  ! \3        Wß4       UUu. uF  w  ppVV,           NK  	  upp4      \5        \.        P0                  ! X4      \.        P0                  ! V4      R7      .R7      W<&   MÖW<,          P6                  P                  \5        \.        P0                  ! V4      \.        P0                  ! V4      R	7      4       \9        W<,          P:                  4      p\=        \)        V4      4       F.  p\?        VV,          VV,          VV,          ,           4      VV&   K0  	  \.        P0                  ! V4      W<,          n        Ve    \A        WËV,          \&        ,          R
7      pM\A        V^ .\)        V4      ,          R
7      p\C        V\.        P0                  ! V4      V! V4      R7      VV&   EKF  	  RRR4       EKÚ  	  \E        VVR7      p\G        VRR4      f   \I        4       Vn%        V PL                  VPJ                  n&        V# u uppi   + '       g   i     EK<  ; i)r   r¿   )Ú	_getdtyperÁ   )rÄ   N)Údtype)ÚoffsetsÚsizes)Ú
propertiesr²   Úchunks)rã   )rx   r§   )ry   Úshaperá   )rt   rE   Ústorage_meta)'rÅ   rÀ   Úsafetensors.torchrà   r9   Úlsr"   Úendswithr   rG   ru   rg   Úgetr
   r}   Úloadsr®   Ú	get_shapeÚ	get_dtyper   rR   r   r   ÚtorchÚSizer«   r   rå   r@   r²   rÑ   rV   r   r   r   Úgetattrr   rç   Úload_id)r;   rÀ   rà   rt   rE   Úsafetensors_filesÚfileÚsafetensor_filer¶   ru   Úextra_metadataÚdcp_sharding_infor‹   ræ   rá   r§   Úsavedr²   rK   Úmetadata_indexrg   s   &                    r/   Úread_metadataÚ&HuggingFaceStorageReader.read_metadata9  sç  € Ý)Ý/à@BÐØ<>ˆàÐØ—G‘G—J‘J˜tŸy™yÖ)ˆDØ�}‰}œV×$Ô$Ø!×(Ñ(¨Ö.ñ *ô  1ˆOÙ˜?°d×;Õ;¸qØ—v‘v“x�Ø!"§¡£�à$(Ð!ß! n×&8Ñ&8Ô9L×&MÒ&MÜ(,¯
ª
Ø&×*Ñ*Ô+>Ó?ó)Ð%ô  �CØŸK™K¨Ó,×6Ñ6Ó8�EØŸK™K¨Ó,×6Ñ6Ó8�Eà(Ò4Ø!2Õ!7Ô8IÕ!J™à"# ¤s¨5£zÕ!1˜àÔ5Ü3HÜ'7¹iÈÓ>NÔ'OÜ!&§¢ÜEHÈÔEWÔ XÑEW±M°E¸6 ¨§ ÑEWÒ Xó"ô !5Ü,1¯JªJ°vÓ,>Ü*/¯*ª*°UÓ*;ô!"ð$ô4Ð+Ò0ð ,Õ0×7Ñ7×>Ñ>Ü0Ü %§
¢
¨6Ó 2¼%¿*º*ÀUÓ:Kôôô
  $Ð$7Õ$<×$AÑ$AÓB˜Ü!&¤s¨4£yÖ!1˜AÜ&)¨$¨q­'°5¸µ8¸fÀQ½iÕ3GÓ&H˜D ›Gñ "2ä8=¿
º
À4Ó8HÐ+Õ0Ô5ð )Ò4Ü)6Ø #¸cÕ,BÔCTÕ,Uô*™ô *7¸3ÈÀsÌSÐQVËZÕGWÔ)X˜Ü3AØ&5Ü#Ÿjšj¨Ó/Ù'¨Ó.ô4�L Ô0ñQ  ÷ <Ò;ñ  1ôr Ø 3Ø%ô
ˆô
 �8˜^¨TÓ2Ò:Ü$/£MˆHÔ!Ø(,¯©ˆ×ÑÔ%àˆùóU !Y÷/ <×;Ñ;ús'   ÂANÃCNÆNÆ2FNÎNÎN+)r$   )rB   )r’   r“   r”   r•   r–   r6   rº   rÉ   rÜ   rú   r˜   r™   rš   r›   s   @@r/   r   r   Ê   sE   ù‡ € ñ÷
)õ 
)÷2ð 2÷$ð ÷$7ð 7÷tN÷ Nð Nr2   c                óT   € V ^8„  d   Qh/ ^ \         9   d   \        P                  ;R&   # )r!   rq   )Ú__conditional_annotations__ÚloggingÚLogger)r-   s   "r/   r0   r0      s    € × Ñ ÷T 5Ò 4Œ�‰Ñ 4òU r2   )1rý   rH   r}   rþ   rX   rÒ   Útypingr   rï   Útorch.distributed.checkpointr   r   Ú8torch.distributed.checkpoint._consolidate_hf_safetensorsr   Ú&torch.distributed.checkpoint._hf_utilsr   r   r	   r
   r   r   r   Ú'torch.distributed.checkpoint.filesystemr   Ú%torch.distributed.checkpoint.metadatar   r   r   r   r   r   Ú$torch.distributed.checkpoint.plannerr   r   r   r   r   r   Ú$torch.distributed.checkpoint.storager   Útorch.futuresr   Ú	getLoggerr’   rq   Ú__all__r   r   r0   )rý   s   @r/   Ú<module>r     s–   øðç Ð Û Û Û Û Ý ã ß Kõ÷÷ ñ õ H÷÷ ÷÷ õ =Ý  ð !×*Ò*¨8Ó4€Ó 4à%Ð'AÐ
B€ôVÐ/ô Vôr}Ð/ö }r2   