+
    QV-jÔ  ã                   óæ   € R t ^ RIt^ RIt^ RIt]P                  ! R4      t]P                  ! R4      t]P                  ! R4      t]P                  ! R4      tRt	Rt
R tR	 tR
 tR tRR ltRR ltR# )zUtilities for file names.Nz([A-Z]+)([A-Z][a-z])z([a-z\d])([A-Z])z(?<!_)_(?!_)z(_{2,})z^\w+(\.\w+)*$z<>:/\|?*c                óz   € \         P                  RV 4      p \        P                  RV 4      p V P                  4       # )z(Convert camel-case string to snake-case.z\1_\2)Ú_uppercase_uppercase_reÚsubÚ_lowercase_uppercase_reÚlower©Únames   &Ú`/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/datasets/naming.pyÚcamelcase_to_snakecaser
   "   s2   € ä"×&Ñ& x°Ó6€DÜ"×&Ñ& x°Ó6€DØ�:‰:‹<Ðó    c                óè   € \         P                  V 4      p V  Uu. uF  p\        P                  V4      NK  	  p pRP                  R \        P
                  P                  V 4       4       4      # u upi )z/Convert snake-case string to camel-case string.Ú c              3   óR   "  € T F  qR 8w  g   K  VP                  4       x € K  	  R# 5i)r   N)Ú
capitalize)Ú.0Úns   & r	   Ú	<genexpr>Ú)snakecase_to_camelcase.<locals>.<genexpr>-   s"   é € ÐZÑ+N aÐWYÑRY”>�1—<‘<—>�>Ó+Nùs   ‚'�')Ú_single_underscore_reÚsplitÚ_multiple_underscores_reÚjoinÚ	itertoolsÚchainÚfrom_iterable)r   r   s   & r	   Úsnakecase_to_camelcaser   )   s[   € ä ×&Ñ& tÓ,€DÙ7;Ó<±t°!Ô$×*Ñ*¨1Ö-±t€DÐ<Ø�7‰7ÑZ¬9¯?©?×+HÑ+HÈÔ+NÓZÓZÐZùò =s   šA/c                 ó|   € \         P                  P                  V 4      V 8w  d   \        R V  24      h\	        V 4      # )ú&Should be a dataset name, not a path: )ÚosÚpathÚbasenameÚ
ValueErrorr
   r   s   &r	   Úfilename_prefix_for_namer"   0   s7   € Ü	‡w�w×Ñ˜Ó Ô%ÜÐAÀ$ÀÐHÓIÐIÜ! $Ó'Ð'r   c                 óô   € \         P                  P                  V 4      V 8w  d   \        R V  24      h\        P
                  ! \        V4      '       g   \        R\         RV R24      h\        V 4       RV 2# )r   zSplit name should match 'z'' but got 'z'.Ú-)r   r   r    r!   ÚreÚmatchÚ	_split_rer"   )r   r   s   &&r	   Úfilename_prefix_for_splitr(   6   sp   € Ü	‡w�w×Ñ˜Ó Ô%ÜÐAÀ$ÀÐHÓIÐIÜ�8Š8”I˜u×%Ò%ÜÐ4´Y°K¸|ÈEÈ7ÐRTÐUÓVÐVÜ& tÓ,Ð-¨Q¨u¨gÐ6Ð6r   c                 óˆ   € \        W4      pV'       d   VR V 2,          p\        P                  P                  W$4      pV R2# )Ú.Ú*)r(   r   r   r   )Údataset_namer   Údata_dirÚfiletype_suffixÚprefixÚfilepaths   &&&&  r	   Úfilepattern_for_dataset_splitr1   >   s?   € Ü& |Ó;€FßØ�A�oÐ&Ð'Õ'ˆÜ�w‰w�|‰|˜HÓ-€HØˆZ�qˆ>Ðr   c           	      óp  € \        W4      p\        P                  P                  W4      pV'       dc   \	        V4      ^8”  dS   \	        V4      p\        V4       Uu. uF  qu RVR RVR 2NK  	  ppV'       d   V U	u. uF  q™RV 2,           NK  	  pp	V# Tp	V'       d   V	RV 2,          p	V	.# u upi u up	i )é   r$   Ú05dz-of-r*   )r(   r   r   r   ÚlenÚrange)
r   r,   r   r.   Úshard_lengthsr/   Ú
num_shardsÚshard_idÚ	filenamesÚfilenames
   &&&&&     r	   Úfilenames_for_dataset_splitr<   F   s½   € Ü& |Ó;€FÜ�W‰W�\‰\˜$Ó'€Fçœ˜]Ó+¨aÔ/Ü˜Ó'ˆ
ÜTYÐZdÔTeÓfÑTeÈ�x˜q ¨# ¨d°:¸cÐ2BÓCÑTeˆ	ÐfßÙJSÓTÉ)¸h a¨Ð'8Ð$9×9Ð9É)ˆIÐTØÐàˆßØ˜!˜OÐ,Ð-Õ-ˆHØˆzÐùò gùâTs   ÁB.Á=B3)N)NN)Ú__doc__r   r   r%   Úcompiler   r   r   r   r'   Ú"INVALID_WINDOWS_CHARACTERS_IN_PATHr
   r   r"   r(   r1   r<   © r   r	   Ú<module>rA      s}   ðñ   ã Û 	Û 	ð Ÿ*š*Ð%<Ó=Ð ØŸ*š*Ð%8Ó9Ð àŸ
š
 ?Ó3Ð ØŸ:š: jÓ1Ð à€	à%0Ð "òò[ò(ò7ôör   