Ë
    rPêj>\  ã            $       ó¾  — d Z ddlmZmZ ddlmZ ddlZddlmZ ddl	m
Z
mZmZmZmZ ddlmZ d	d
lmZmZmZmZ d	dlmZ d	dlmZmZ d	dlmZmZ d	dlmZm Z   ejB                  e"«      Z# ed¬«      Z$e$jK                  dg d¢¬«      	 	 	 	 d‡dee& ed¬«      f   dee' edd¬«      f   deedz   edd¬«      f   dee' edd¬«      f   ded dfd!„«       Z(d"e&d e'fd#„Z)e$jK                  d$g d%¢¬«      	 	 	 	 	 	 dˆd"ee&dz   ed&¬«      f   d'ee' ed(d)d*¬«      f   d+ee' ed,d-¬«      f   d.ee' ed/d0d1¬«      f   d2eded dfd3„«       Z*d4e&dz  d2e&dz  d'e'd+e'd.e'de&dz  d dfd5„Z+d6eeez     d7e&d eeez     fd8„Z,d"e&d'e'd+e'd.e'de&dz  d dfd9„Z-e$jK                  d:d;d<g¬«      	 d‰dee& ed=¬«      f   ded dfd>„«       Z.e$jK                  d?g d@¢¬«      	 	 	 dŠdee& ed=¬«      f   dAee' edBdCdD¬«      f   dEee' edFdG¬«      f   ded df
dH„«       Z/e$jK                  dIg dJ¢¬«      	 	 	 	 	 	 d‹d"ee& edK¬«      f   d.ee' ed/d0dL¬«      f   dAee' edBdCdD¬«      f   dMee' edNdO¬«      f   dPee0e&   dz   edQ¬«      f   dRee0e&   dz   edS¬«      f   ded dfdT„«       Z1e$jK                  dUg dV¢¬«      	 d‰dWee& edX¬«      f   dYee& edZ¬«      f   ded dfd[„«       Z2e$jK                  d\g d]¢¬«      	 	 	 dŠdee& ed=¬«      f   dee' edd^¬«      f   d_ee' ed`da¬«      f   ded df
db„«       Z3e$jK                  dcg dd¢¬«      	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dŒdeee&dz   edf¬«      f   dgee&dz   edh¬«      f   d?ee' edi¬«      f   djee' edkdl¬«      f   dmee' edndo¬«      f   dpee&dz   edq¬«      f   dree&dz   eds¬«      f   dMee' edNdt¬«      f   dPee0e&   dz   edu¬«      f   dRee0e&   dz   edv¬«      f   dwee&dz   edx¬«      f   dyee' edzd{¬«      f   d|ee' ed}d~¬«      f   dee' ed€d�d‚¬«      f   ded df dƒ„«       Z4 e$jK                  d„g d…¢¬«       ed†«      «       y)�z7Contains commands to interact with buckets via the CLI.é    )ÚIterableÚIterator)Ú	AnnotatedN)Úlogging)ÚBUCKET_PREFIXÚ
BucketFileÚBucketFolderÚFilterMatcherÚ_parse_bucket_urié   )ÚREPO_REGIONSé   )Ú	SearchOptÚTokenOptÚ
get_hf_apiÚtyper_factory)Úmake_cp)Úformat_sizeÚprint_file_listing)ÚArgumentÚOption)ÚOutputFormatÚoutz"Commands to interact with buckets.)ÚhelpÚcreate)zhf buckets create my-bucketz hf buckets create user/my-bucketz-hf buckets create hf://buckets/user/my-bucketz*hf buckets create user/my-bucket --privatez+hf buckets create user/my-bucket --exist-okz,hf buckets create user/my-bucket --region us)ÚnameÚexamplesÚ	bucket_idzTBucket ID: bucket_name, namespace/bucket_name, or hf://buckets/namespace/bucket_nameÚprivatez	--privatezCreate a private bucket.Úregionz--regionzdCloud region in which to create the bucket. Can be one of 'us' or 'eu'. Requires Team plan or above.Úexist_okz
--exist-okz3Do not raise an error if the bucket already exists.ÚtokenÚreturnc                 ór  — t        |¬«      }| j                  t        «      rCt        | «      }|j                  r t        j                  d| › dt        › d�«      ‚|j                  } |j                  | |r|nd||¬«      }t        j                  d|j                  j                  «       |j                  ¬«       y)	zCreate a new bucket.©r"   z-Cannot specify a prefix for bucket creation: ú. Use namespace/bucket_name or únamespace/bucket_name.N)r   r    r!   zBucket created)ÚuriÚurl)r   Ú
startswithr   r   Úpath_in_repoÚclickÚBadParameterÚidÚcreate_bucketr   Úresultr(   Úto_urir)   )r   r   r    r!   r"   ÚapiÚparsedÚ
bucket_urls           ú`/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/huggingface_hub/cli/buckets.pyr   r   1   s²   € ôT ˜5Ô
!€Cà×ÑœMÔ*Ü" 9Ó-ˆØ×ÒÜ×$Ñ$Ø?À	¸{ð K1Ü1>°Ð?UðWóð ð —I‘Iˆ	à×"Ñ"ØÙ"‘¨ØØð	 #ó €Jô ‡J�JÐ Z§^¡^×%:Ñ%:Ó%<À*Ç.Á.ÖQó    Úargumentc                 ód   — | j                  t        «      r| t        t        «      d }d|v S | }d|v S )zFCheck if argument is a bucket ID (namespace/name) vs just a namespace.Nú/)r*   r   Úlen)r7   Úpaths     r5   Ú_is_bucket_idr<   o   s?   € à×Ñœ=Ô)ØœœMÓ*Ð,Ð-ˆð �$ˆ;Ðð ˆØ�$ˆ;Ðr6   z	list | ls)
zhf buckets listzhf buckets list huggingfacez$hf buckets list --search "my-prefix"zhf buckets list user/my-bucketz!hf buckets list user/my-bucket -Rz!hf buckets list user/my-bucket -hz%hf buckets list user/my-bucket --treez(hf buckets list user/my-bucket --tree -hz+hf buckets list hf://buckets/user/my-bucketz%hf buckets list user/my-bucket/sub -RzyNamespace (user or org) to list buckets, or bucket ID (namespace/bucket_name(/prefix) or hf://buckets/...) to list files.Úhuman_readablez--human-readablez-hz$Show sizes in human readable format.Úas_treez--treez3List files in tree format (only for listing files).Ú	recursivez--recursivez-Rz0List files recursively (only for listing files).Úsearchc                 óœ   — | duxr t        | «      }|r(|�t        j                  d«      ‚t        | ||||¬«       yt	        | |||||¬«       y)z½List buckets or files in a bucket.

    When called with no argument or a namespace, lists buckets.
    When called with a bucket ID (namespace/bucket_name), lists files in the bucket.
    Nz'Cannot use --search when listing files.)r7   r=   r>   r?   r"   )Ú	namespacer@   r=   r>   r?   r"   )r<   r,   r-   Ú_list_filesÚ_list_buckets)r7   r=   r>   r?   r@   r"   Úis_file_modes          r5   Úlist_cmdrF   x   sg   € ðr  4Ð'ÒC¬M¸(Ó,C€LáØÐÜ×$Ñ$Ð%NÓOÐOÜØØ)ØØØö	
ô 	ØØØ)ØØØö	
r6   rB   c           	      ó  — |rt        j                  d«      ‚|rt        j                  d«      ‚| �8| j                  t        «      r#| t	        t        «      d } | j                  d«      } t        |¬«      }|j                  | |¬«      D �cg c]T  }|j                  |j                  |rt        |j                  |«      n|j                  |j                  |j                  dœ‘ŒV }}t        j                  |dd	i¬
«       yc c}w )zList buckets in a namespace.z'Cannot use --tree when listing buckets.z,Cannot use --recursive when listing buckets.Nr9   r%   )rB   r@   )r.   r   ÚsizeÚtotal_filesÚ
created_atrH   Úright)Ú
alignments)r,   r-   r*   r   r:   Úrstripr   Úlist_bucketsr.   r   r   rH   rI   rJ   r   Útable)	rB   r@   r=   r>   r?   r"   r2   ÚbucketÚitemss	            r5   rD   rD   È   sõ   € ñ Ü× Ñ Ð!JÓKÐKÙÜ× Ñ Ð!OÓPÐPð Ð ×!5Ñ!5´mÔ!DØœc¤-Ó0Ð2Ð3ˆ	à×$Ñ$ SÓ)ˆ	ä
˜5Ô
!€Cð ×&Ñ&°À6Ð&ÓJö	ð ð —)‘)Ø—~‘~Ù@N”K §¡¨^Ô<ÐTZ×T_ÑT_Ø!×-Ñ-Ø ×+Ñ+ó	
ð	€Eð 	ô ‡I�Iˆe ¨Ð 1Ö2ùò	s   Â
AC?rQ   Úprefixc              #   ó¤   K  — |j                  d«      }| D ]6  }|r.|j                  |k(  s|j                  j                  |› d�«      sŒ3|–— Œ8 y­w)a  Drop entries that are not `prefix` itself or below it.

    The server matches `prefix` lexically, so listing "logs" also returns "logs.json" or "logs_backup/...".
    Filesystem semantics require path components => keep only what's actually under the prefix.
    r9   N)rM   r;   r*   )rQ   rR   Úitems      r5   Ú_iter_under_prefixrU   ë   sO   è ø€ ð �]‰]˜3Ó€FØò ˆÙ˜Ÿ™ fÒ,°·	±	×0DÑ0DÈÀxÈqÀ\Õ0RØ‹Jñùs   ‚AAÁ	Ac           	      óR  — |r6t         j                  t        j                  k(  rt	        j
                  d«      ‚t        |¬«      }t        | «      }t        t        |j                  |j                  |j                  xs d|¬«      |j                  «      «      }t        ||||¬«       y)zList files in a bucket.z%Cannot use --tree with --format json.r%   N©rR   r?   )r=   r>   r?   )r   Úmoder   Újsonr,   r-   r   r   ÚlistrU   Úlist_bucket_treer.   r+   r   )r7   r=   r>   r?   r"   r2   r3   rQ   s           r5   rC   rC   ÷   s—   € ñ ”3—8‘8œ|×0Ñ0Ò0Ü× Ñ Ð!HÓIÐIä
˜5Ô
!€CÜ˜xÓ(€FÜÜØ× Ñ Ø—	‘	Ø×*Ñ*Ò2¨dØ#ð !ó ð
 ×Ñó	
ó	€Eô �u¨^ÀWÐXaÖbr6   Úinfozhf buckets info user/my-bucketz+hf buckets info hf://buckets/user/my-bucketzFBucket ID: namespace/bucket_name or hf://buckets/namespace/bucket_namec                 ó–   — t        |¬«      }t        | «      }|j                  |j                  «      }t	        j
                  |d¬«       y)zGet info about a bucket.r%   r.   )Úid_keyN)r   r   Úbucket_infor.   r   Údict)r   r"   r2   r3   rP   s        r5   r\   r\     s8   € ô" ˜5Ô
!€CÜ˜yÓ)€FØ�_‰_˜VŸY™YÓ'€FÜ‡H�HˆV˜DÖ!r6   Údelete)z hf buckets delete user/my-bucketz-hf buckets delete hf://buckets/user/my-bucketz&hf buckets delete user/my-bucket --yesz-hf buckets delete user/my-bucket --missing-okÚyesz--yesz-yzSkip confirmation prompt.Ú
missing_okz--missing-okz3Do not raise an error if the bucket does not exist.c                 ó   — | j                  t        «      rDt        | «      }|j                  r t	        j
                  d| › dt        › d�«      ‚|j                  } n$d| vr t	        j
                  d| › dt        › d�«      ‚t        j                  d| › d�|¬	«       t        |¬
«      }|j                  | |¬«       t        j                  d| ¬«       y)zDelete a bucket.

    This deletes the entire bucket and all its contents. Use `hf buckets rm` to remove individual files.
    z-Cannot specify a prefix for bucket deletion: r&   r'   r9   úInvalid bucket ID: ú-. Must be in format namespace/bucket_name or z(Are you sure you want to delete bucket 'ú'?©rb   r%   )rc   zBucket deleted)r   N)r*   r   r   r+   r,   r-   r.   r   Úconfirmr   Údelete_bucketr0   )r   rb   rc   r"   r3   r2   s         r5   ra   ra   )  sÚ   € ðJ ×ÑœMÔ*Ü" 9Ó-ˆØ×ÒÜ×$Ñ$Ø?À	¸{ð K1Ü1>°Ð?UðWóð ð —I‘I‰	Ø	�IÑ	Ü× Ñ Ø! ) ð -;Ü;H¸/ÐI_ðaó
ð 	
ô
 ‡K�KÐ:¸9¸+ÀRÐHÈcÕRä
˜5Ô
!€CØ×Ñ�i¨JÐÔ7Ü‡J�JÐ¨9Ö5r6   zremove | rm)z)hf buckets remove user/my-bucket/file.txtz2hf buckets rm hf://buckets/user/my-bucket/file.txtz.hf buckets rm user/my-bucket/logs/ --recursivez:hf buckets rm user/my-bucket --recursive --include "*.tmp"z8hf buckets rm user/my-bucket/data/ --recursive --dry-runz¡Bucket path: namespace/bucket_name/path or hf://buckets/namespace/bucket_name/path. With --recursive, namespace/bucket_name is also accepted to target all files.z0Remove files recursively under the given prefix.Údry_runz	--dry-runz8Preview what would be deleted without actually deleting.ÚincludezQInclude only files matching pattern (can specify multiple). Requires --recursive.ÚexcludezLExclude files matching pattern (can specify multiple). Requires --recursive.c                 óN  ‡— t        | «      }|j                  Š|j                  }|dk(  r|st        j                  d‰› d‰› d�«      ‚|s|r|st        j                  d«      ‚t        |¬«      }	|�rt        j                  d«      }
g }t        |	j                  ‰|xs dd	¬
«      |«      D ]B  }t        |t        «      sŒ|j                  |«       |
j                  dt        |«      › d�«       ŒD |
j                  dt        |«      › d�«       |s|r9t!        ||¬«      }|D �cg c]   }|j#                  |j$                  «      sŒ|‘Œ" }}n|}|D �cg c]  }|j$                  ‘Œ }}t'        d„ |D «       «      }t)        |d	¬«      }|st        j*                  d«       yt        |«      › d|› �}|sK|sIt        j*                  dj-                  d„ |D «       «      «       t        j.                  d|› d‰› d�d¬«       |rGt        j*                  dj-                  ˆfd„|D «       «      «       t        j*                  d|› d�«       y|	j1                  ‰|¬«       t        j2                  d|› d‰› d�‰t        |«      |¬«       y|}|st        j                  d «      ‚|r7t        j*                  d!t4        › ‰› d"|› �«       t        j*                  d#«       yt        j.                  d$|› d%‰› d�|¬«       |	j1                  ‰|g¬«       t        j2                  d&|‰¬'«       yc c}w c c}w )(zbRemove files from a bucket.

    To delete an entire bucket, use `hf buckets delete` instead.
    Ú z?No file path specified. To remove files, provide a path (e.g. 'zd/FILE') or use --recursive to remove all files. To delete the entire bucket, use `hf buckets delete z`.z,--include and --exclude require --recursive.r%   zListing files from remoteNTrW   zListing files from remote (z files))Úinclude_patternsÚexclude_patternsc              3   ó4   K  — | ]  }|j                   –— Œ y ­w©N)rH   )Ú.0Úfs     r5   ú	<genexpr>zremove.<locals>.<genexpr>È  s   è ø€ Ò7 A˜Ÿ�Ñ7ùs   ‚)r=   zNo files to remove.z file(s) totaling ú
c              3   ó&   K  — | ]	  }d |› �–— Œ y­w)z  N© )rt   r;   s     r5   rv   zremove.<locals>.<genexpr>Ò  s   è ø€ ÒB¨t  D 6œ{ÑBùs   ‚zRemove z from 'rg   Frh   c              3   ó:   •K  — | ]  }d t         › ‰› d|› �–— Œ y­w)údelete: r9   N)r   )rt   r;   r   s     €r5   rv   zremove.<locals>.<genexpr>Ö  s#   øè ø€ ÒcÐPT ¬-¨¸¸À1ÀTÀFÔKÑcùs   ƒz
(dry run) z would be removed.)ra   zRemoved ú')r   Úfiles_deletedrH   zFile path cannot be empty.r{   r9   z"(dry run) 1 file would be removed.zRemove 'z' from 'zFile removed)r;   r   )r   r.   r+   r,   r-   r   r   ÚstatusrU   r[   Ú
isinstancer   ÚappendÚupdater:   Údoner
   Úmatchesr;   Úsumr   ÚtextÚjoinri   Úbatch_bucket_filesr0   r   )r7   r?   rb   rk   rl   rm   r"   r3   rR   r2   r~   Ú	all_filesrT   Úmatcherru   Úmatched_filesÚ
file_pathsÚ
total_sizeÚsize_strÚcount_labelÚ	file_pathr   s                        @r5   Úremover�   c  s  ø€ ôz ˜xÓ(€FØ—	‘	€IØ× Ñ €Fà�‚|™IÜ× Ñ ðØ �kð "DØDMÀ;ÈbðRó
ð 	
ñ 	‘7¡IÜ× Ñ Ð!OÓPÐPä
˜5Ô
!€CâÜ—‘Ð7Ó8ˆà&(ˆ	Ü&Ø× Ñ ØØ’~ Øð !ó ð
 ó
ò 
	UˆDô ˜$¤
Õ+Ø× Ñ  Ô&Ø—‘Ð ;¼CÀ	»NÐ;KÈ7ÐSÕTð
	Uð 	�‰Ð1´#°i³.Ð1AÀÐIÔJá‘gÜ#°WÈwÔWˆGØ(1ÖM 1°W·_±_ÀQÇVÁVÕ5LšQÐMˆMÑMà%ˆMà&3Ö4 �a—f“fÐ4ˆ
Ð4ÜÑ7¨Ô7Ó7ˆ
Ü˜z¸$Ô?ˆáÜ�H‰HÐ*Ô+Øä˜Z›Ð)Ð);¸H¸:ÐFˆá™7Ü�H‰H�T—Y‘YÑB°zÔBÓBÔCÜ�K‰K˜' + ¨g°i°[ÀÐCÈÕOáÜ�H‰H�T—Y‘YÓcÐXbÔcÓcÔdÜ�H‰H�z + Ð.@ÐAÔBØà×Ñ˜y°ÐÔ<Ü�
‰
Ø�{�m 7¨9¨+°QÐ7ØÜ˜j›/Øö		
ð ˆ	ÙÜ×$Ñ$Ð%AÓBÐBáÜ�H‰H�x¤˜¨y¨k¸¸9¸+ÐFÔGÜ�H‰HÐ9Ô:Øä�‰�h˜y˜k¨°)°¸BÐ?ÀSÕIà×Ñ˜y°)°ÐÔ=Ü�
‰
�>¨	¸YÖGùòY Nùò 5s   Ä# LÅLÅL"Úmove)z/hf buckets move user/old-bucket user/new-bucketz/hf buckets move user/my-bucket my-org/my-bucketzIhf buckets move hf://buckets/user/old-bucket hf://buckets/user/new-bucketÚfrom_idzMSource bucket ID: namespace/bucket_name or hf://buckets/namespace/bucket_nameÚto_idzRDestination bucket ID: namespace/bucket_name or hf://buckets/namespace/bucket_namec                 óž  — t        | «      }|j                  r t        j                  d| › dt        › d�«      ‚t        |«      }|j                  r t        j                  d|› dt        › d�«      ‚t        |¬«      }|j                  |j                  |j                  ¬«       t        j                  d|j                  |j                  ¬«       y)z2Move (rename) a bucket to a new name or namespace.z)Cannot specify a prefix for bucket move: r&   r'   r%   )r’   r“   zBucket movedN)
r   r+   r,   r-   r   r   Úmove_bucketr.   r   r0   )r’   r“   r"   Úparsed_fromÚ	parsed_tor2   s         r5   r‘   r‘   ò  sÃ   € ô2 $ GÓ,€KØ×ÒÜ× Ñ Ø7¸°yð A-Ü-:¨OÐ;QðSó
ð 	
ô " %Ó(€IØ×ÒÜ× Ñ Ø7¸°wð ?-Ü-:¨OÐ;QðSó
ð 	
ô
 ˜5Ô
!€CØ‡O�O˜KŸN™N°)·,±,€OÔ?Ü‡J�Jˆ~ {§~¡~¸Y¿\¹\ÖJr6   Úsettings)z,hf buckets settings user/my-bucket --privatez+hf buckets settings user/my-bucket --publicz9hf buckets settings hf://buckets/user/my-bucket --privatezMake the bucket private.Úpublicz--publiczMake the bucket public.c                 óÒ  — ||k(  rt        j                  d«      ‚| j                  t        «      rDt	        | «      }|j
                  r t        j                  d| › dt        › d�«      ‚|j                  } n$d| vr t        j                  d| › dt        › d�«      ‚t        |¬«      }|j                  | |¬	«       t        j                  d
| |¬«       t        j                  d| › d�«       y)z$Update bucket settings (visibility).z-Specify exactly one of --private or --public.z-Cannot specify a prefix for bucket settings: r&   r'   r9   re   rf   r%   )r   zBucket settings updated)r   r   zRun `hf buckets info z` to view bucket details.N)r,   r-   r*   r   r   r+   r.   r   Úupdate_bucket_settingsr   r0   Úhint)r   r   r™   r"   r3   r2   s         r5   r˜   r˜     sõ   € ð@ �&ÒÜ× Ñ Ð!PÓQÐQà×ÑœMÔ*Ü" 9Ó-ˆØ×ÒÜ×$Ñ$Ø?À	¸{ð K1Ü1>°Ð?UðWóð ð —I‘I‰	Ø	�IÑ	Ü× Ñ Ø! ) ð -;Ü;H¸/ÐI_ðaó
ð 	
ô
 ˜5Ô
!€CØ×Ñ˜y°'ÐÔ:Ü‡J�JÐ(°IÀwÕOÜ‡H�HÐ$ Y KÐ/HÐIÕJr6   Úsync)z2hf buckets sync ./data hf://buckets/user/my-bucketz2hf buckets sync hf://buckets/user/my-bucket ./dataz;hf buckets sync ./data hf://buckets/user/my-bucket --deletez^hf buckets sync hf://buckets/user/my-bucket ./data --include "*.safetensors" --exclude "*.tmp"zIhf buckets sync ./data hf://buckets/user/my-bucket --plan sync-plan.jsonlz'hf buckets sync --apply sync-plan.jsonlz<hf buckets sync ./data hf://buckets/user/my-bucket --dry-runzChf buckets sync ./data hf://buckets/user/my-bucket --dry-run | jq .ÚsourcezKSource path: local directory or hf://buckets/namespace/bucket_name(/prefix)ÚdestzPDestination path: local directory or hf://buckets/namespace/bucket_name(/prefix)z/Delete destination files not present in source.Úignore_timesz--ignore-timesz;Skip files only based on size, ignoring modification times.Úignore_sizesz--ignore-sizesz<Skip files only based on modification times, ignoring sizes.Úplanz=Save sync plan to JSONL file for review instead of executing.Úapplyz#Apply a previously saved plan file.z5Print sync plan to stdout as JSONL without executing.z6Include files matching pattern (can specify multiple).z6Exclude files matching pattern (can specify multiple).Úfilter_fromz(Read include/exclude patterns from file.Úexistingz
--existingzASkip creating new files on receiver (only update existing files).Úignore_existingz--ignore-existingzCSkip updating files that exist on receiver (only create new files).Úverbosez	--verbosez-vz%Show detailed logging with reasoning.c                 óâ   — t        |¬«      }|j                  | ||||||||	|
||||t        j                  «       ¬«       |r/t        j                  «       st        j                  d|› d�«       yyy)z0Sync files between local directory and a bucket.r%   )rž   rŸ   ra   r    r¡   r¥   r¦   rl   rm   r¤   r¢   r£   rk   r§   ÚquietzRun `hf buckets sync --apply z` to execute this plan.N)r   Úsync_bucketr   Úis_quietrœ   )rž   rŸ   ra   r    r¡   r¢   r£   rk   rl   rm   r¤   r¥   r¦   r§   r"   r2   s                   r5   r�   r�   [  s~   € ôX ˜5Ô
!€CØ‡O�OØØØØ!Ø!ØØ'ØØØØØØØÜ�l‰l‹nð ô ñ" ”C—L‘L”NÜ�‰Ð0°°Ð6MÐNÕOð #€tr6   Úcp)zEhf buckets cp hf://buckets/username/my-bucket/config.json config.jsonz<hf buckets cp hf://buckets/username/my-bucket/data.csv data/z;hf buckets cp hf://buckets/username/my-bucket/config.json -zQhf buckets cp model.safetensors hf://buckets/username/my-bucket/model.safetensorsz?hf buckets cp config.json hf://buckets/username/my-bucket/logs/z;hf buckets cp - hf://buckets/username/my-bucket/config.jsonzYhf buckets cp hf://buckets/username/my-bucket/data.csv hf://buckets/username/dest-bucket/z_hf buckets cp hf://buckets/username/source-bucket/logs/ hf://buckets/username/dest-bucket/logs/Úbuckets)FNFN)NFFFNNrs   )FFN)FFFNNN)NNFFFNNFNNNFFFN)5Ú__doc__Úcollections.abcr   r   Útypingr   r,   Úhuggingface_hubr   Úhuggingface_hub._bucketsr   r   r	   r
   r   Úhf_apir   Ú
_cli_utilsr   r   r   r   Ú_cpr   Ú_file_listingr   r   Ú
_frameworkr   r   Ú_outputr   r   Ú
get_loggerÚ__name__ÚloggerÚbuckets_cliÚcommandÚstrÚboolr   r<   rF   rD   rU   rC   r\   ra   rZ   r�   r‘   r˜   r�   ry   r6   r5   ú<module>rÀ      s
  ðñ >ç .Ý ã å #÷õ õ "÷ó õ ß :ß (ß &ð 
ˆ×	Ñ	˜HÓ	%€ñ Ð!EÔF€ð ×ÑØ	òð ó 
ð0 	ð 	ð 	Øñ90RØØÙØgô	
ð	ñð0Rð ØÙØØ+ô	
ð	ñð0Rð Ø�tÑÙØØwô	
ð	ñð0Rð* ØÙØØFô	
ð	ñð+0Rð8 ð90Rð: 
ò;0Ró
ð0Rðf˜Cð  Dó ð ×ÑØ	òð ó ð0 	ð 	ð 	ð 	ØØñE>
ØØˆd‰
ÙðWô	
ð	ñð>
ð ØÙØØØ7ô	
ð	ñð>
ð$ ØÙØØFô	
ð	ñð%>
ð2 ØÙØØØCô	
ð	ñð3>
ðB ðC>
ðD ðE>
ðF 
òG>
óð>
ðB 3Ø�T‰zð 3à�$‰Jð 3ð ð 3ð ð	 3ð
 ð 3ð �‰:ð 3ð 
ó 3ðF	˜h z°LÑ'@ÑAð 	È3ð 	ÐS[Ð\fÐiuÑ\uÑSvó 	ðcØðcàðcð ðcð ð	cð
 �‰:ðcð 
ócð6 ×ÑØ	à(Ø5ðð ó ð ñ"ØØÙØYô	
ð	ñð"ð ð"ð 
ò"óð"ð  ×ÑØ	òð ó ð. 	ð 	Øñ-.6ØØÙØYô	
ð	ñð.6ð 
ØÙØØØ,ô	
ð	ñ
ð.6ð ØÙØØFô	
ð	ñð.6ð, ð-.6ð. 
ò/.6óð.6ðb ×ÑØ	òð ó 	ð6 	ð 	ð 	ð 	ð 	Øñ[BHØØÙðaô	
ð	ñðBHð ØÙØØØCô	
ð	ñðBHð$ 
ØÙØØØ,ô	
ð	ñ
ð%BHð4 ØÙØØKô	
ð	ñð5BHðB ØˆS‰	�DÑÙØdô	
ð	ñðCBHðN ØˆS‰	�DÑÙØ_ô	
ð	ñðOBHðZ ð[BHð\ 
ò]BHó	ðBHðJ ×ÑØ	òð ó ð* ñ"KØØÙØ`ô	
ð	ñð"Kð ØÙØeô	
ð	ñð"Kð ð"Kð 
ò"Kóð"KðJ ×ÑØ	òð ó ð* 	ð 	Øñ+,KØØÙØYô	
ð	ñð,Kð ØÙØØ+ô	
ð	ñð,Kð ØÙØØ*ô	
ð	ñð,Kð* ð+,Kð, 
ò-,Kóð,Kðh ×ÑØ	ò	ð ó ð& 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ØñyrPØØˆd‰
ÙØ^ô	
ð	ñðrPð Øˆd‰
ÙØcô	
ð	ñðrPð ØÙØBô	
ð	ñðrPð& ØÙØØNô	
ð	ñð'rPð4 ØÙØØOô	
ð	ñð5rPðB Øˆd‰
ÙØPô	
ð	ñðCrPðN Øˆd‰
ÙØ6ô	
ð	ñðOrPðZ ØÙØØHô	
ð	ñð[rPðh ØˆS‰	�DÑÙØIô	
ð	ñðirPðt ØˆS‰	�DÑÙØIô	
ð	ñðurPð@ Øˆd‰
ÙØ;ô	
ð	ñðArPðL ØÙØØTô	
ð	ñðMrPðZ ØÙØØVô	
ð	ñð[rPðh ØÙØØØ8ô	
ð	ñðirPðx ðyrPðz 
ò{rPóðrPðv€× Ñ Ø	òð ó ñ 
ˆ)Óõr6   