Ë
    ?çiµ
  ã                   ó@   — d dl mZ d„ Zd„ Zd
d„Zd„ Zd„ Zdd„Zdd	„Zy)é    )Údefaultdictc                 ó�  — | D �ci c]  }|d“Œ }}t        |«      t        | «      k7  rt        d«      ‚	 t        t        «      }d}| D ]"  }||d||       }|rd}|j	                  |«       Œ$ |j                  «       D ]%  }t        |«      dkD  sŒ|D ]  }||xx   dz  cc<   Œ Œ' |rnŒt| D �cg c]
  }|d||    ‘Œ c}S c c}w c c}w )a  
    Given an iterable names, return the shortest prefix for each element
    so that all prefixes are different. All elements in names must be unique.

    >>> get_short_names(['cat', 'castor', 'could', 'fire', 'first'])
    ['cat', 'cas', 'co', 'fire', 'firs']

    é   z%names must only contain unique valuesTNF)ÚlenÚ
ValueErrorr   ÚlistÚappendÚvalues)ÚnamesÚnameÚlengthsÚbucketsÚvalidÚbuckets         úc/Volumes/fast/ai/experiments/voice-extract-mac/.venv/lib/python3.12/site-packages/treetable/text.pyÚget_short_namesr      sì   € ñ $)Ó)¡5˜4ˆt�Q‰w 5€GÐ)Ü
ˆ7ƒ|”s˜5“zÒ!ÜÐ@ÓAÐAØ
ÜœdÓ#ˆØˆÛˆDØ˜T . 7¨4¡=Ð1Ñ2ˆFÙØ�Ø�M‰M˜$Õð	 ð
 —n‘nÖ&ˆFÜ�6‹{˜Q‹Û"�DØ˜D“M QÑ&”Mñ #ð 'ñ Øð ñ .3Ó3©U TˆD��'˜$‘-Ò ¨UÑ3Ð3ùò# *ùò" 4s   …
B>Â,Cc                 óH   — t        d„ | j                  d«      D «       d¬«      S )Nc              3   ó2   K  — | ]  }t        |«      –— Œ y ­w)N)r   )Ú.0Úlines     r   Ú	<genexpr>ztext_width.<locals>.<genexpr>"   s   è ø€ Ð7Ñ&6˜d”�D—	Ñ&6ùs   ‚Ú
r   )Údefault)ÚmaxÚsplit)Útexts    r   Ú
text_widthr   !   s   € ÜÑ7 d§j¡j°Ô&6Ó7ÀÔCÐCó    c              #   óŽ   K  — | j                  dd|z  «      } | sd–— y t        dt        | «      |«      D ]  }| |||z    –— Œ y ­w)NÚ	Ú Ú r   )ÚreplaceÚranger   )r   ÚwidthÚtabwidthÚindexs       r   Úwrapr(   %   sM   è ø€ Ø�<‰<˜˜c H™nÓ-€DÙØŠØÜ�qœ#˜d›) UÖ+ˆØ�5˜ ™Ð'Ó'ñ ,ùs   ‚AAc                 ó¢   — |dk(  r| j                  |«      S |dk(  r| j                  |«      S |dk(  r| j                  |«      S t        d|› �«      ‚)NÚ=Ú<Ú>zInvalid value for align )ÚcenterÚljustÚrjustr   )r   r%   Ú	alignments      r   Úalignr1   .   sZ   € Ø�CÒØ�{‰{˜5Ó!Ð!Ø	�cÒ	Ø�z‰z˜%Ó Ð Ø	�cÒ	Ø�z‰z˜%Ó Ð äÐ3°I°;Ð?Ó@Ð@r   c                 ó:   — d|› d�}d}dj                  || |g«      S )Nz[Úmz[0mr"   )Újoin)r   ÚcolorÚcodeÚrestores       r   Úcolorizer8   9   s+   € Ø�5�'˜Ð€DØ€GØ�7‰7�D˜$ Ð(Ó)Ð)r   Nc                 óè   ‡‡— | j                  d«      }‰€t        t        t        |«      «      n‰Š|D ��cg c]  }t	        |‰«      D ]  }|‘Œ Œ }}}dj                  ˆˆfd„|D «       «      S c c}}w )z”
    Return value justified to the given width, either
    to the left if align is '<', to the right if it is '>' or centered
    if it is '='.
    r   c              3   ó:   •K  — | ]  }t        |‰‰¬ «      –— Œ y­w))r%   r0   N)r1   )r   r   r0   r%   s     €€r   r   zwrap_align.<locals>.<genexpr>H   s"   øè ø€ ð IÙBG¸$Œˆd˜%¨9×5Ð5Á%ùs   ƒ)r   r   Úmapr   r(   r4   )r   r%   r0   Úlinesr   Úsub_lines    ``   r   Ú
wrap_alignr>   ?   su   ù€ ð �J‰J�tÓ€EØ$) MŒC””C˜“Ô °u€EÙ"'ÔJ¡%˜$¼¸TÀ5Ö8I¨HŠXÐ8IˆX %€EÑJØ�9‰9ô IÙBGóIó Ið Iùó Ks   ¶A.c                 ó  — | D �cg c]#  }t        |d   j                  dd«      d   «      ‘Œ% }}g }t        | Ž D ]¼  }|D �cg c]  }|j                  d«      ‘Œ }}t        t	        t         |«      «      }t        ||«      D �	�
cg c]  \  }	}
|	d|
z  g|t        |	«      z
  z  z   ‘Œ }}	}
g }t        |Ž D ]"  }|j                  |j                  |«      «       Œ$ |j                  dj                  |«      «       Œ¾ |S c c}w c c}w c c}
}	w )Nr   r   r   r!   )r   r   Úzipr   r;   r	   r4   )ÚcolumnsÚ	separatorÚcolumnÚwidthsÚjoinedÚrowsÚrowÚ
rows_linesÚheightÚ	row_linesr%   Ú
joined_rowr<   s                r   r4   r4   L   s  € Ù=DÓE¹W°6Œc�&˜‘)—/‘/ $¨Ó*¨1Ñ-Õ.¸W€FÐEØ€FÜ�W“ˆÙ15Ó6±¨#�c—i‘i •o°ˆ
Ð6Ü”Sœ˜jÓ)Ó*ˆô %(¨
°FÔ$;ô
á$;Ñ �	˜5ð ˜˜u™˜¨´#°i³.Ñ)@ÑAÓAØ$;ð 	ñ 
ð ˆ
Ü˜*Ó%ˆEØ×Ñ˜iŸn™n¨UÓ3Õ4ð &à�‰�d—i‘i 
Ó+Õ,ð ð €Mùò Fùò 7ùó
s   …(C:Á C?Â"D)é   )Nr+   )r"   )	Úcollectionsr   r   r   r(   r1   r8   r>   r4   © r   r   Ú<module>rO      s.   ðÝ #ò4ò:Dó(òAò*ó
Iôr   