+
    LV-jr  ã                   óŠ   € ^ RI t ^ RIHtHt ^ RIHt ^ RIHt ^ RIH	t	H
t
 ^ RIHt R tR t ! R	 R
]
4      t ! R R]	4      tR# )é    N)ÚClientÚ_get_global_client)ÚWorker)Ú
filesystem)ÚAbstractBufferedFileÚAbstractFileSystem©Úinfer_storage_optionsc                 ód   € V f   \        4       # \        V \        4      '       d   V # \        V 4      # ©N)r   Ú
isinstancer   )Úclients   &Úl/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/fsspec/implementations/dask.pyÚ_get_clientr   
   s.   € Ø‚~Ü!Ó#Ð#Ü	�FœF×	#Ò	#Øˆô �f‹~Ðó    c                  ó4   € \        \        P                  4      # r   )Úboolr   Ú
_instances© r   r   Ú
_in_workerr      s   € Ü”×!Ñ!Ó"Ð"r   c                   ó~   a a€ ] tR t^t oRtRV 3R llt]R 4       tR tR t	R t
R tR tR	 tRR
 ltR tRtVtV ;t# )ÚDaskWorkerFileSystema  View files accessible to a worker as any other remote file-system

When instances are run on the worker, uses the real filesystem. When
run on the client, they call the worker to provide information or data.

**Warning** this implementation is experimental, and read-only for now.
c                óÂ   <€ \         SV `  ! R/ VB  VR J VR J ,          '       g   \        R4      hWn        W n        R V n        W@n        W0n        V P                  4        R # )NzKPlease provide one of filesystem instance (fs) or target_protocol, not bothr   )	ÚsuperÚ__init__Ú
ValueErrorÚtarget_protocolÚtarget_optionsÚworkerr   ÚfsÚ_determine_worker)Úselfr   r   r    r   ÚkwargsÚ	__class__s   &&&&&,€r   r   ÚDaskWorkerFileSystem.__init__!   sf   ø€ ô 	‰ÒÑ"˜6Ò"Ø�d�
˜°$Ð6×7Ô7Üð-óð ð  /ÔØ,ÔØˆŒØŒØŒØ×ÑÖ r   c                óf   € \        V 4      pR V9   d   RV9   d   RVR ,           RVR,           2/# / # )ÚhostÚportr   Ú:r	   )ÚpathÚsos   & r   Ú_get_kwargs_from_urlsÚ*DaskWorkerFileSystem._get_kwargs_from_urls1   s<   € ä" 4Ó(ˆØ�RŒ<˜F bœLØ  F¥ ¨A¨b°­j¨\Ð:Ð;Ð;àˆIr   c                ó.  € \        4       '       dI   R V n        V P                  f2   \        V P                  3/ V P
                  ;'       g    / B V n        R# R# RV n        \        V P                  4      V n        \        P                  ! V 4      V n
        R# )TNF)r   r   r    r   r   r   r   r   ÚdaskÚdelayedÚrfs©r"   s   &r   r!   Ú&DaskWorkerFileSystem._determine_worker9   sr   € Ü�<Š<ØˆDŒKØ�w‰wŠÜ$Ø×(Ñ(ñØ-1×-@Ñ-@×-FÐ-FÀBñ�–ñ ð
  ˆDŒKÜ% d§k¡kÓ2ˆDŒKÜ—|’| DÓ)ˆDŽHr   c                óº   € V P                   '       d   V P                  P                  ! V/ VB  R # V P                  P                  ! V/ VB P	                  4        R # r   )r   r    Úmkdirr1   Úcompute©r"   Úargsr#   s   &*,r   r5   ÚDaskWorkerFileSystem.mkdirE   s>   € Ø�;�;ˆ;Ø�G‰G�MŠM˜4Ð* 6Ô*à�H‰H�NŠN˜DÐ+ FÑ+×3Ñ3Ö5r   c                óº   € V P                   '       d   V P                  P                  ! V/ VB  R # V P                  P                  ! V/ VB P	                  4        R # r   )r   r    Úrmr1   r6   r7   s   &*,r   r;   ÚDaskWorkerFileSystem.rmK   ó>   € Ø�;�;ˆ;Ø�G‰G�JŠJ˜Ð' Ô'à�H‰H�KŠK˜Ð( Ñ(×0Ñ0Ö2r   c                óº   € V P                   '       d   V P                  P                  ! V/ VB  R # V P                  P                  ! V/ VB P	                  4        R # r   )r   r    Úcopyr1   r6   r7   s   &*,r   r?   ÚDaskWorkerFileSystem.copyQ   s>   € Ø�;�;ˆ;Ø�G‰G�LŠL˜$Ð) &Ô)à�H‰H�MŠM˜4Ð* 6Ñ*×2Ñ2Ö4r   c                óº   € V P                   '       d   V P                  P                  ! V/ VB  R # V P                  P                  ! V/ VB P	                  4        R # r   )r   r    Úmvr1   r6   r7   s   &*,r   rB   ÚDaskWorkerFileSystem.mvW   r=   r   c                ó²   € V P                   '       d   V P                  P                  ! V/ VB # V P                  P                  ! V/ VB P	                  4       # r   )r   r    Úlsr1   r6   r7   s   &*,r   rE   ÚDaskWorkerFileSystem.ls]   sD   € Ø�;�;ˆ;Ø—7‘7—:’:˜tÐ. vÑ.Ð.à—8‘8—;’; Ð/¨Ñ/×7Ñ7Ó9Ð9r   c                óž   € V P                   '       d&   V P                  P                  ! V3R VRVRVRV/VB # \        RRV RVR VRVRVRV/VB # )ÚmodeÚ
block_sizeÚ
autocommitÚcache_optionsr    r*   r   )r   r    Ú_openÚDaskFile)r"   r*   rH   rI   rJ   rK   r#   s   &&&&&&,r   rL   ÚDaskWorkerFileSystem._openc   s¦   € ð �;�;ˆ;Ø—7‘7—=’=Øñàðð &ðð &ð	ð
 ,ðð ñð ô ñ Øðàðð ðð &ð	ð
 &ðð ,ðð ñð r   c                ó:  € V P                   '       dM   V P                  W4      ;_uu_ 4       pVP                  V4       VP                  WC,
          4      uuR R R 4       # V P                  P                  WW44      P                  4       #   + '       g   i     R # ; ir   )r   rL   ÚseekÚreadr1   Úfetch_ranger6   )r"   r*   rH   ÚstartÚendÚfs   &&&&& r   rR   Ú DaskWorkerFileSystem.fetch_range€   sk   € Ø�;�;ˆ;Ø—‘˜D×'Ô'¨1Ø—‘�u”Ø—v‘v˜c�kÓ*÷ (Ò'ð —8‘8×'Ñ'¨°EÓ?×GÑGÓIÐI÷	 (×'Ð'ús   ¬(B	Â	B	)r   r    r1   r   r   r   )NNNN)ÚrbNTN)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   Ústaticmethodr,   r!   r5   r;   r?   rB   rE   rL   rR   Ú__static_attributes__Ú__classdictcell__Ú__classcell__©r$   Ú__classdict__s   @@r   r   r      sR   ù‡ € ñ÷!ð  ñó ðò
*ò6ò3ò5ò3ò:ô÷:Jò Jr   r   c                   óL   a a€ ] tR t^‰t oRV 3R lltRR ltR tR tRtVt	V ;t
# )rM   c                óL   <€ VR 8w  d   \        R4      h\        SV `  ! R/ VB  R# )rW   z1Remote dask files can only be opened in "rb" modeNr   )r   r   r   )r"   rH   r#   r$   s   &&,€r   r   ÚDaskFile.__init__Š   s&   ø€ Ø�4Œ<ÜÐPÓQÐQÜ‰ÒÑ"˜6Ô"r   c                ó   € R # r   r   )r"   Úfinals   &&r   Ú_upload_chunkÚDaskFile._upload_chunk�   s   € Ùr   c                ó   € R# )zCreate remote file/uploadNr   r2   s   &r   Ú_initiate_uploadÚDaskFile._initiate_upload’   s   € ár   c                ód   € V P                   P                  V P                  V P                  W4      # )z*Get the specified set of bytes from remote)r    rR   r*   rH   )r"   rS   rT   s   &&&r   Ú_fetch_rangeÚDaskFile._fetch_range–   s#   € à�w‰w×"Ñ" 4§9¡9¨d¯i©i¸ÓDÐDr   r   )rW   )F)rX   rY   rZ   r[   r   rh   rk   rn   r^   r_   r`   ra   s   @@r   rM   rM   ‰   s    ù‡ € ÷#ô
ò÷Eò Er   rM   )r/   Údistributed.clientr   r   Údistributed.workerr   Úfsspecr   Úfsspec.specr   r   Úfsspec.utilsr
   r   r   r   rM   r   r   r   Ú<module>ru      sB   ðÛ ß 9Ý %å ß @Ý .òò#ônJÐ-ô nJôbEÐ#ö Er   