+
    "Ý³j¿9  ã                   óæ   € R t ^ RIt^ 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Ht  ! R R]4      t ! R	 R
]4      t]! RR7       ! R R4      4       tR tR t ! R R4      tR# )a8  Transactional, content-addressed checkpoint storage, independent of the looper.

Only CURRENT publishes a generation. Directory listings are never recovery
candidates: they may contain writes from an interrupted transaction. A manifest
names *all* artifacts needed by its continuation, including earlier layers.
N)Ú	dataclassÚfield)ÚPath)Ú	get_ident)Úuuid4)ÚFileLockÚTimeoutc                   ó   € ] tR t^tRtR# )ÚCheckpointError© N©Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__static_attributes__r   ó    Úb/home/luca/screen-checking/.venv/lib/python3.14/site-packages/gptqmodel/looper/checkpoint_store.pyr
   r
      ó   † Ûr   r
   c                   ó   € ] tR t^tRtR# )ÚCheckpointCorruptr   Nr   r   r   r   r   r      r   r   r   T)Úfrozenc                   óŒ   a € ] tR t^t o RtRtRt^tRt]	! RRRRR7      t
R t]V 3R lR	 l4       tV 3R
 lR ltV 3R ltRtV tR# )ÚCheckpointConfigÚautozlayer:1TNF)ÚdefaultÚinitÚreprÚcomparec                ó\  € \        V P                  4      \        Jd   \        R 4      hV P                  R9  d   \        R4      h\        V P                  \        4      '       g   \        R4      h\        P                  ! RV P                  P                  4       4      pVe    \        VP                  ^4      4      ^8  d   \        R4      h\        V P                  4      \        Jg   V P                  ^8  d   \        R4      h\        V P                  4      '       g   \        R4      hR# )	z%strict_device_check must be a booleanz'resume must be auto, required, or neverz+interval must be a string such as 'layer:1'zlayer:(\d+)Nz5interval must use the form 'layer:<positive integer>'zkeep_last must be at least twozcheckpoint path cannot be empty>   r   ÚneverÚrequired)ÚtypeÚstrict_device_checkÚboolÚ
ValueErrorÚresumeÚ
isinstanceÚintervalÚstrÚreÚ	fullmatchÚstripÚintÚgroupÚ	keep_lastÚpath)ÚselfÚmatchs   & r   Ú__post_init__ÚCheckpointConfig.__post_init__(   së   € Ü�×(Ñ(Ó)´Ó5ÜÐDÓEÐEØ�;‰;Ð;Ô;ÜÐFÓGÐGÜ˜$Ÿ-™-¬×-Ò-ÜØ=óð ô —’˜^¨T¯]©]×-@Ñ-@Ó-BÓCˆØŠ=œC §¡¨A£Ó/°!Ô3ÜØGóð ô �—‘Ó¤sÓ*¨d¯n©n¸qÔ.@ÜÐ=Ó>Ð>Ü�4—9‘9�~Š~ÜÐ>Ó?Ð?ñ r   c                ó    <€ V ^8„  d   QhRS[ /# )é   Úreturn)r-   )ÚformatÚ__classdict__s   "€r   Ú__annotate__ÚCheckpointConfig.__annotate__<   s   ø€ ÷ 3ñ 3¡ñ 3r   c                óZ   € \        V P                  P                  R^4      ^,          4      # )z2Return the layer interval encoded by ``interval``.Ú:)r-   r(   Úsplit©r1   s   &r   Úinterval_layersÚ CheckpointConfig.interval_layers;   s%   € ô �4—=‘=×&Ñ& s¨AÓ.¨qÕ1Ó2Ð2r   c                óF   <€ V ^8„  d   QhRS[ S[,          RS[ S[,          /# )r6   Úoffload_pathr7   ©r)   r   )r8   r9   s   "€r   r:   r;   @   s#   ø€ ÷ 
#ñ 
#©©t­ð 
#¹¹d½
ñ 
#r   c                óÞ   € V P                   R8w  d   V P                   # V P                  f8   Ve   \        V4      '       g   \        R4      h\        P                  V RV4       V P                  # )zDResolve ``auto`` once and retain the checkpoint root across retries.r   zDcheckpoint path='auto' requires quantize_config.offload_to_disk_pathÚ_resolved_path)r0   rF   r)   r%   ÚobjectÚ__setattr__)r1   rC   s   &&r   Úresolve_pathÚCheckpointConfig.resolve_path@   se   € à�9‰9˜ÔØ—9‘9ÐØ×ÑÒ&ØÒ#¬3¨|×+<Ò+<Ü ØZóð ô ×Ñ˜tÐ%5°|ÔDØ×"Ñ"Ð"r   c                ó�   <€ V ^8„  d   Qh/ S[ S[,          ;R&   S[ ;R&   S[ ;R&   S[;R&   S[;R&   S[ S[,          R,          ;R&   # )r6   r0   r&   r(   r/   r#   NrF   )r)   r   r-   r$   )r8   r9   s   "€r   r:   r;      s`   ø‡ ‚ á
‘�*Ññ ñ Ññ ñ Ññ	 ñ
 Ññ ñ Ñ$ñ ñ ™$•J Õ%ñ ò r   r   )r   r   r   r   r0   r&   r(   r/   r#   r   rF   r3   Úpropertyr@   rI   Ú__annotate_func__r   Ú__classdictcell__©r9   s   @r   r   r      s^   ø‡ € à€DØ€FØ€HØ€IØ $ÐÙ(-Ø˜5 u°eô)€Nò@ð& ÷3ó ð3÷
#ð 
#÷G ƒ r   r   c                 óT   € \         P                  ! V R RRR7      P                  R4      # )TF)Ú	sort_keysÚ
separatorsÚ	allow_nanzutf-8)Ú,r=   )ÚjsonÚdumpsÚencode)Úvalues   &r   Ú_jsonrY   M   s%   € Ü�:Š:Ø˜¨*Àôç�fˆWƒoðr   c           	      ó  € \         P                  ! V \         P                  \        \         R ^ 4      ,          4      p \         P                  ! V4       \         P
                  ! V4       R#   \         P
                  ! T4       i ; i)ÚO_DIRECTORYN)ÚosÚopenÚO_RDONLYÚgetattrÚfsyncÚclose)r0   Úfds   & r   Ú_sync_directoryrc   S   sK   € ä	�Š�”r—{‘{¤W¬R°ÀÓ%BÕBÓ	C€BðÜ
�Š�Œä
�Š�ŽøŒ�Š��ús   ½A+ Á+Bc                   óÔ   a € ] tR t^\t o ^tRR/V 3R lR lltR tR tR tR 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R tV 3R lR ltV 3R lR ltR tRtV tR# )ÚCheckpointStoreÚidentity_projectionNc                ó    <€ V ^8„  d   QhRS[ /# )r6   Úconfig)r   )r8   r9   s   "€r   r:   ÚCheckpointStore.__annotate___   s   ø€ ÷ ñ Ñ/ñ r   c               ó¾   € Wn         T;'       g    R  V n        \        VP                  4      P	                  4       V n        RV n        RV n        RV n        RV n	        R# )c                 ó   € V # ©Nr   )Úidentitys   &r   Ú<lambda>Ú*CheckpointStore.__init__.<locals>.<lambda>a   s   € ÉXr   Néÿÿÿÿ)
rh   Ú_identity_projectionr   r0   ÚabsoluteÚrootÚ_leaseÚ_ownerÚ	_identityÚ_cursor)r1   rh   rf   s   &&$r   Ú__init__ÚCheckpointStore.__init___   sM   € ØŒØ$7×$VÐ$VÑ<UˆÔ!Ü˜Ÿ™Ó%×.Ñ.Ó0ˆŒ	ØˆŒØˆŒØˆŒØˆŽr   c                ó4  € V P                   e   \        R4      h. pV P                  pVP                  4       '       g    VP	                  V4       VP
                  pK5  V P                  P                  RRR7       \        V4       F  p\        VP
                  4       K  	  \        \        V P                  R,          4      ^ R7      p VP                  4        T\        4       uT n         T n        R T n        R	T n         T P                  R,          P                  RR7       \        T P                  4       \        T P                  P
                  4       T #   \         d   p\        R4      ThR p?ii ; i  \"         d    T P%                  R R R 4       h i ; i)
Nz checkpoint lease is already heldT)ÚparentsÚexist_okzwriter.lock)Útimeoutz-another writer owns this checkpoint directoryÚobjects)r|   rp   )rt   r
   rs   ÚexistsÚappendÚparentÚmkdirÚreversedrc   r   r)   Úacquirer   r   ru   rv   rw   ÚBaseExceptionÚ__exit__)r1   Úmissingr�   Ú	directoryÚleaseÚexcs   &     r   Ú	__enter__ÚCheckpointStore.__enter__h   sM  € Ø�;‰;Ò"Ü!Ð"DÓEÐEØˆØ—‘ˆØ—-‘-—/’/Ø�N‰N˜6Ô"Ø—]‘]ŠFØ�	‰	�‰ ¨tˆÔ4Ü! 'Ö*ˆIÜ˜I×,Ñ,Ö-ñ +äœ˜TŸY™Y¨Õ6Ó7ÀÔCˆð	Ø�M‰MŒOð
 $)¬)«+Ð ˆŒ�T”[ØˆŒØˆŒð	Ø�Y‰Y˜Õ"×)Ñ)°4Ð)Ô8Ü˜DŸI™IÔ&Ü˜DŸI™I×,Ñ,Ô-ð ˆøô ô 	Ü!Ø?óàðûð	ûô ô 	Ø�M‰M˜$  dÔ+Øð	ús%   Ã	E Ã?AE7 ÅE4Å#E/Å/E4Å7 Fc                óv   € V P                  4        V P                  P                  4        R ;V n        V n        R # rl   )Ú_check_ownerrt   Úreleaseru   )r1   Ú_s   &*r   r†   ÚCheckpointStore.__exit__†   s,   € Ø×ÑÔØ�‰×ÑÔØ$(Ð(ˆŒ�d–kr   c                ój   € V P                   e   V P                  \        4       8w  d   \        R4      hR # )Nz5checkpoint operations require the lease-owning thread)rt   ru   r   r
   r?   s   &r   rŽ   ÚCheckpointStore._check_owner‹   s.   € Ø�;‰;Ò $§+¡+´³Ô"<Ü!ØGóð ñ #=r   c                ó  € VP                  R VP                   R \        4       P                   R24      p VP	                  R4      ;_uu_ 4       pVP                  V4       VP                  4        \        P                  ! VP                  4       4       RRR4       \        P                  ! W14       \        VP                  4       VP                  RR7       R#   + '       g   i     LO; i  TP                  RR7       i ; i)Ú.ú.tmpÚxbNT©Ú
missing_ok)Ú	with_nameÚnamer   Úhexr]   ÚwriteÚflushr\   r`   ÚfilenoÚreplacerc   r�   Úunlink)r1   ÚdestinationÚdataÚ	temporaryÚstreams   &&&  r   Ú_atomic_writeÚCheckpointStore._atomic_write‘   sº   € Ø×)Ñ)¨A¨k×.>Ñ.>Ð-?¸qÄÃÇÁÀÈTÐ*RÓSˆ	ð	.Ø—‘ ×%Ô%¨Ø—‘˜TÔ"Ø—‘”Ü—’˜Ÿ™›Ô)÷ &ô �JŠJ�yÔ.Ü˜K×.Ñ.Ô/à×Ñ¨ÐÖ-÷ &×%ûð ×Ñ¨ÐÕ-ús$   ¶C/ ÁACÂ3C/ ÃC,	Ã'C/ Ã/Dc                ó&   <€ V ^8„  d   QhRS[ RS[/# )r6   r£   r7   )Úbytesr)   )r8   r9   s   "€r   r:   ri   �   s   ø€ ÷ ñ ™ð ¡#ñ r   c                ó^  € V P                  4        \        P                  ! V4      P                  4       pV P                  R,          V,          pVP                  4       '       d    V P                  V4       V# V P                  W14       V#   \         d    T P                  Y14        T# i ; i)zBPersist an immutable object; publishing its reference is separate.r~   )	rŽ   ÚhashlibÚsha256Ú	hexdigestrs   r   Úobject_pathr   r¦   )r1   r£   Údigestr0   s   &&  r   ÚputÚCheckpointStore.put�   sš   € à×ÑÔÜ—’ Ó%×/Ñ/Ó1ˆØ�y‰y˜9Õ$ vÕ-ˆØ�;‰;�=Š=ð/Ø× Ñ  Ô(ð ˆð ×Ñ˜tÔ*Øˆøô %ô /ð ×"Ñ" 4Õ.ð ˆð/ús   Á&B ÂB,Â+B,c                ó&   <€ V ^8„  d   QhRS[ RS[/# ©r6   r¯   r7   )r)   r©   )r8   r9   s   "€r   r:   ri   ­   s   ø€ ÷ 
ñ 
™#ð 
¡%ñ 
r   c                óž  € V P                  4        \        V\        4      '       d   \        P                  ! R V4      f   \        R4      h V P                  R,          V,          P                  4       p\        P                  ! T4      P                  4       T8w  d   \        RT 24      hT#   \         d   p\        RT 24      ThRp?ii ; i)ú[0-9a-f]{64}Núinvalid object referencer~   úmissing checkpoint object ú(checksum mismatch for checkpoint object )rŽ   r'   r)   r*   r+   r   rs   Ú
read_bytesÚFileNotFoundErrorr«   r¬   r­   )r1   r¯   r£   rŠ   s   &&  r   ÚgetÚCheckpointStore.get­   s·   € Ø×ÑÔÜ˜&¤#×&Ò&¬"¯,ª,°ÈÓ*OÒ*WÜ#Ð$>Ó?Ð?ð	TØ—I‘I 	Õ)¨FÕ2×>Ñ>Ó@ˆDô �>Š>˜$Ó×)Ñ)Ó+¨vÔ5Ü#Ð&NÈvÈhÐ$WÓXÐXØˆøô	 !ô 	TÜ#Ð&@ÀÀÐ$IÓJÐPSÐSûð	Tús   Á(B- Â-CÂ8CÃCc                ó&   <€ V ^8„  d   QhRS[ RS[/# r³   rD   )r8   r9   s   "€r   r:   ri   ¹   s   ø€ ÷ ñ ¡#ð ©$ñ r   c                óò  € V P                  4        \        V\        4      '       d   \        P                  ! RV4      f   \        R4      hV P                  R,          V,          p VP                  R4      ;_uu_ 4       p\        P                  ! VR4      P                  4       pRRR4       XT8w  d   \        RT 24      hT#   + '       g   i     L'; i  \         d   p\        RT 24      ThRp?ii ; i)	zAVerify an object without allocating its tensor payload in memory.rµ   Nr¶   r~   Úrbr¬   r·   r¸   )rŽ   r'   r)   r*   r+   r   rs   r]   r«   Úfile_digestr­   rº   )r1   r¯   r0   r¥   ÚactualrŠ   s   &&    r   r®   ÚCheckpointStore.object_path¹   sÐ   € à×ÑÔÜ˜&¤#×&Ò&¬"¯,ª,°ÈÓ*OÒ*WÜ#Ð$>Ó?Ð?Ø�y‰y˜9Õ$ vÕ-ˆð	TØ—‘˜4—” FÜ ×,Ò,¨V°XÓ>×HÑHÓJ�÷ !ð �VÔÜ#Ð&NÈvÈhÐ$WÓXÐXØˆ÷ !—ûä ô 	TÜ#Ð&@ÀÀÐ$IÓJÐPSÐSûð	Tús6   Á&C Á?&CÂ%C ÃC	ÃC ÃC ÃC6Ã"C1Ã1C6c                ó&   <€ V ^8„  d   QhRS[ RS[/# )r6   Úsourcer7   )r   r)   )r8   r9   s   "€r   r:   ri   È   s   ø€ ÷ .ñ .™tð .©ñ .r   c           	     óÞ  € V P                  4        VP                  4       pVP                  V P                  R,          8X  d(   V P	                  VP
                  4       VP
                  # V P                  R,          R\        4       P                   R2,          p\        P                  ! 4       p VP                  R4      ;_uu_ 4       qBP                  R4      ;_uu_ 4       pVP                  R	4      ;p'       d%   VP                  V4       VP                  V4       K=  VP                  4        \        P                   ! VP#                  4       4       RRR4       RRR4       VP%                  4       pV P                  R,          V,          pVP'                  4       '       d    V P	                  V4       M+\        P*                  ! W(4       \-        VP                  4       VVP/                  RR7       #   + '       g   i     Lª; i  + '       g   i     Lµ; i  \(         d/    \        P*                  ! Y(4       \-        TP                  4        Lri ; i  TP/                  RR7       i ; i)
zDStream a quiesced artifact into the store using bounded host memory.r~   r•   r–   r¿   r—   NTr˜   i  € )rŽ   rr   r�   rs   r®   r›   r   rœ   r«   r¬   r]   ÚreadÚupdater�   rž   r\   r`   rŸ   r­   r   r   r    rc   r¡   )	r1   rÄ   r¤   r¯   ÚreaderÚwriterÚchunkÚrefr¢   s	   &&       r   Úput_fileÚCheckpointStore.put_fileÈ   s±  € à×ÑÔØ—‘Ó"ˆØ�=‰=˜DŸI™I¨	Õ1Ô1Ø×Ñ˜VŸ[™[Ô)Ø—;‘;ÐØ—I‘I 	Õ)¨a´³·±¨}¸DÐ,AÕAˆ	Ü—’Ó!ˆð	.Ø—‘˜T×"Ô" f¯n©n¸T×.BÔ.BÀfØ%Ÿ{™{¨?Ó;Ð;�eÖ;Ø—M‘M %Ô(Ø—L‘L Ö'Ø—‘”Ü—’˜Ÿ™›Ô)÷ /C×"ð ×"Ñ"Ó$ˆCØŸ)™) iÕ/°#Õ5ˆKØ×!Ñ!×#Ò#ð8Ø×$Ñ$ SÕ)ô
 —
’
˜9Ô2Ü × 2Ñ 2Ô3Øà×Ñ¨ÐÕ-÷' /C×.Bú×"×"ûô )ô 8Ü—J’J˜yÔ6Ü# K×$6Ñ$6Ö7ð8ûð ×Ñ¨ÐÕ-úsb   Â0I Ã	H	Ã"A2G6	ÅH	ÅAI Æ%H Æ6-I Ç6HÈH	È	H	ÈI È6IÉI ÉIÉI ÉI,c                óF  € V P                   R ,          pVP                  4       '       g   . #  \        P                  ! VP	                  4       4      pVR,          pVR,          V P
                  8w  g{   \        V\        4      '       de   V'       d]   \        V4      \        \        V4      4      8w  g;   \        ;QJ d    R V 4       F  '       g   K   RM	  RM! R V 4       4      '       d   \        R4      hV#   \        \        \        3 d   p\        R4      ThRp?ii ; i)	ÚCURRENTÚgenerationsÚversionc              3   óŽ   "  € T F;  p\        V\        4      '       * ;'       g    \        P                  ! R V4      RJ x € K=  	  R# 5i)rµ   N)r'   r)   r*   r+   )Ú.0rË   s   & r   Ú	<genexpr>Ú+CheckpointStore._current.<locals>.<genexpr>ó   sH   é € ð ñ  $˜ô # 3¬Ó,Ô,÷ Bð BÜ—|’| O°SÓ9¸TÐAôBã#ùs
   ‚ A£"ATFzinvalid CURRENTz9invalid CURRENT; refusing to scan unpublished generationsN)rs   r   rU   Úloadsr¹   ÚVERSIONr'   ÚlistÚlenÚsetÚanyr%   ÚKeyErrorÚ	TypeErrorr   )r1   r0   ÚcurrentÚrefsrŠ   s   &    r   Ú_currentÚCheckpointStore._currentç   sé   € Ø�y‰y˜9Õ$ˆØ�{‰{�}Š}ØˆIð	Ü—j’j §¡Ó!2Ó3ˆGØ˜=Õ)ˆDà˜	Õ" d§l¡lÔ2Ü! $¬×-Ò-ßÜ�t“9¤¤C¨£I£Ô.ß“3ñ ñ  $ó—3—3’3ñ ñ  $ó÷ ò ô !Ð!2Ó3Ð3ØˆKøÜœH¤iÐ0ô 	Ü#ØKóàðûð	ús0   ­A"C9 Â,C9 Â=C9 ÃC9 Ã,C9 Ã9D ÄDÄD c                óD  €  \         P                  ! V P                  V4      4      pVR ,          V P                  8w  gc   \	        VR,          4      \
        JgI   VR,          ^ 8  g;   \        VR,          \        4      '       d   \        VR,          \        4      '       g   \        R4      hV P                  VR,          4       VR,          P                  4        F  pV P                  V4       K  	  V#   \        \        \        3 d   p\        RT 24      ThRp?ii ; i)rÑ   ÚcursorÚ	artifactsrm   zinvalid manifestÚcontinuationzinvalid checkpoint manifest N)rU   rÖ   r»   r×   r"   r-   r'   Údictr%   Úvaluesr®   rÜ   rÝ   r   )r1   rË   Úmanifestr¯   rŠ   s   &&   r   Ú	_manifestÚCheckpointStore._manifest   sè   € ð	SÜ—z’z $§(¡(¨3£-Ó0ˆHà˜Õ# t§|¡|Ô3Ü˜ Õ*Ó+´3Ó6Ø˜HÕ%¨Ô)Ü! (¨;Õ"7¼×>Ò>Ü! (¨:Õ"6¼×=Ò=ä Ð!3Ó4Ð4Ø�H‰H�X˜nÕ-Ô.Ø" ;Õ/×6Ñ6Ö8�Ø× Ñ  Ö(ñ 9àˆOøÜœH¤iÐ0ô 	SÜ#Ð&BÀ3À%Ð$HÓIÈsÐRûð	Sús   ‚C2C5 Ã5DÄDÄDc                ó    <€ V ^8„  d   QhRS[ /# )r6   rm   )ræ   )r8   r9   s   "€r   r:   ri     s   ø€ ÷ 'ñ '™Tñ 'r   c                ó„  aa	€ V P                  4        V P                  4       pV P                  P                  R8X  d   V'       d   \	        R4      h. pV FÍ  p V P                  V4      pT P                  TR,          4      o	T P                  T4      o\        S	4      \        S4      8w  dW   \        TT	3R lSP                  4       S	P                  4       ,           4       4      p\	        RRP                  T4       24      h\        T4      T n        TR,          T n        Tu # 	  V'       d"   \        R	R
P                  V4      ,           4      hV P                  P                  R8X  d   \	        R4      h\        V4      V n        RV n        R#   \         d'   pTP                  \        T4      4        Rp?EKe  Rp?ii ; i)z@Load the newest complete *published* generation, or fail closed.r    z:checkpoint exists; resume='never' requires a new directoryNrm   c              3   ó´   <"  € T FM  p\        SP                  V4      4      \        SP                  V4      4      8w  g   VS9   VS9   8w  g   KI  Vx € KO  	  R # 5irl   )rY   r»   )rÓ   ÚkeyÚactual_identityÚexpected_identitys   & €€r   rÔ   Ú'CheckpointStore.load.<locals>.<genexpr>$  sY   øé € ð  áP˜Ü˜_×0Ñ0°Ó5Ó6ÜÐ.×2Ñ2°3Ó7Ó8ô9à˜Ñ.°CÐ;LÑ4LÑM÷	 ’CÛPùs   ƒAAÁ
Az)incompatible checkpoint identity fields: z, rã   z"no complete published checkpoint: z; r!   z0resume='required' but no checkpoint is publishedrp   )rŽ   rà   rh   r&   r
   ré   r   r€   r)   rq   rY   ÚsortedÚkeysÚjoinrv   rw   )
r1   rm   rß   ÚfailuresrË   rè   rŠ   Úfieldsrï   rð   s
   &&      @@r   ÚloadÚCheckpointStore.load  sŠ  ù€ à×ÑÔØ�}‰}‹ˆØ�;‰;×Ñ Ô(¯TÜ!ØLóð ð ˆÛˆCðØŸ>™>¨#Ó.�ð !%× 9Ñ 9¸(À:Õ:NÓ OÐØ"×7Ñ7¸ÓAˆOÜÐ&Ó'¬5°Ó+AÔAÜõ  à.×3Ñ3Ó5Ð8I×8NÑ8NÓ8PÖPó ó �ô &Ø?ÀÇ	Á	È&Ó@QÐ?RÐSóð ô # 8›_ˆDŒNØ# HÕ-ˆDŒLØŠOñ+ ÷, Ü#Ø4°t·y±yÀÓ7JÕJóð ð �;‰;×Ñ Ô+Ü!Ð"TÓUÐUÜ˜x›ˆŒØˆŒÙøô7 %ô Ø—‘¤ C£Ô)Þûðús   ÁFÆF?ÆF:Æ:F?c          
      óH   <€ V ^8„  d   QhRS[ RS[RS[RS[ S[S[3,          /# )r6   rm   rã   rå   rä   )ræ   r-   r)   )r8   r9   s   "€r   r:   ri   ;  s=   ø€ ÷ 2ñ 2ñ ð2ñ ð	2ñ
 ð2ñ ™™S˜•>ñ2r   c               ój  € V P                  4        V P                  f   V P                  V4       V P                  \        V4      8w  d   \	        R4      h\        V4      \        Jg   V^ 8  d   \        R4      hW P                  8:  d   \	        R4      hRV P                  RVRVRVRV/pV P                  V4       VP                  4        F  pV P                  V4       K  	  V P                  \        V4      4      p. pV P                  4        F.  p	W—8X  d   K   V P                  V	4       TP#                  T	4       K0  	  V P%                  V P&                  R	,          \        RV P                  R
V.V,           R V P(                  P*                   /4      4       W n        V#   \          d     K¡  i ; i)Nz.cannot change checkpoint identity within a runz$cursor must be a nonnegative integerzcheckpoint cursor must advancerÑ   rm   rã   rå   rä   rÏ   rÐ   )rŽ   rv   r÷   rY   r
   r"   r-   r%   rw   r×   r»   rç   r®   r°   rà   ré   r   r€   r¦   rs   rh   r/   )
r1   rm   rã   rå   rä   rè   r¯   rË   ÚretainedÚolds
   &$$$$     r   ÚcommitÚCheckpointStore.commit;  s‰  € ð 	×ÑÔà�>‰>Ò!Ø�I‰I�hÔØ�>‰>œU 8›_Ô,Ü!Ð"RÓSÐSÜ�‹<œsÓ" f¨q¤jÜÐCÓDÐDØ—\‘\Ô!Ü!Ð"BÓCÐCà�t—|‘|Ø˜Ø�fØ˜LØ˜ð
ˆð 	�‰�ÔØ×&Ñ&Ö(ˆFØ×Ñ˜VÖ$ñ )à�h‰h”u˜X“Ó'ˆð ˆØ—=‘=–?ˆCØŒzÙðØ—‘˜sÔ#ð �O‰O˜CÖ ñ #ð 	×ÑØ�I‰I˜	Õ!Üà˜tŸ|™|Ø! S E¨HÕ$4Ð6M¸¿¹×8MÑ8MÐ#Nðóô	
ð ŒØˆøô %ô Úðús   ÄF#Æ#F2Æ1F2c                óf  € V P                  4        \        V P                  4       4      p\        V4       FR  pV P	                  V4      pVP                  VR,          4       VP                  VR,          P                  4       4       KT  	  V P                  R,          P                  4        Fv  p\        P                  ! RVP                  4      '       g=   \        P                  ! RVP                  4      '       g   KS  VP                  V9  g   Kf  VP                  4        Kx  	  \        V P                  R,          4       V P                  P                  4        F<  p\        P                  ! RVP                  4      '       g   K,  VP                  4        K>  	  \        V P                  4       R# )zÖRemove unreachable objects under the run lease, after publication.

Kept separate from commit so a cleanup failure cannot report a durable
commit as failed. Corrupt retained metadata aborts cleanup conservatively.
rå   rä   r~   z&\.(?:[0-9a-f]{64}\.)?[0-9a-f]{32}\.tmprµ   z\.CURRENT\.[0-9a-f]{32}\.tmpN)rŽ   rÚ   rà   Útupleré   ÚaddrÇ   rç   rs   Úiterdirr*   r+   r›   r¡   rc   )r1   Ú	reachablerË   rè   r0   s   &    r   ÚcollectÚCheckpointStore.collecto  s  € ð 	×ÑÔÜ˜Ÿ™›Ó(ˆ	Ü˜Ö#ˆCØ—~‘~ cÓ*ˆHØ�M‰M˜( >Õ2Ô3Ø×Ñ˜X kÕ2×9Ñ9Ó;Ö<ñ $ð —Y‘Y Õ*×3Ñ3Ö5ˆDÜ�|Š|ÐEÀtÇyÁy×QÒQÜ—’˜_¨d¯i©i×8Ô8¸T¿Y¹YÈiÖ=Wà—‘–ñ	 6ô
 	˜Ÿ	™	 IÕ-Ô.Ø—I‘I×%Ñ%Ö'ˆDÜ�|Š|Ð;¸T¿Y¹Y×GÔGØ—‘–ñ (ô 	˜Ÿ	™	Ö"r   )rw   rv   rq   rt   ru   rh   rs   )r   r   r   r   r×   rx   r‹   r†   rŽ   r¦   r°   r»   r®   rÌ   rà   ré   r÷   rý   r  r   rN   rO   s   @r   re   re   \   s‚   ø‡ € Ø€GðÈ÷ ò òò<)ò
ò
.÷ð ÷ 
ð 
÷ð ÷.ð .ò>ò2S÷$'ð '÷R2ð 2÷h#ð #r   re   )Ú__doc__r«   rU   r\   r*   Údataclassesr   r   Úpathlibr   Ú	threadingr   Úuuidr   Úfilelockr   r   ÚRuntimeErrorr
   r   r   rY   rc   re   r   r   r   Ú<module>r     st   ðñó Û Û 	Û 	ß (Ý Ý Ý ç &ô	�lô 	ô	˜ô 	ñ �$Ô÷,#ð ,#ó ð,#ò^ò÷h#ó h#r   