
    EKg!                     B   U d Z ddlZddlmZmZmZ eeef   Zeegef   Z	dZ
 eej                        dz  Zeed<   eed<   	 ddlZddlmZ d	Zd
ZdefdZdefdZde	fdZdefdZdefdZy# e$ r) ddlZddlmZ e
ZeZdefdZde	fdZdefdZdefdZY yw xY w)z
Interface for natsort to access locale functionality without
having to worry about if it is using PyICU or the built-in locale.
    N)CallableUnioncast    null_string_localenull_string_locale_max)	getlocale    s   x7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7fx7freturnc                       y)NF r   r   Y/home/alanp/www/video.onchill/myenv/lib/python3.12/site-packages/natsort/compat/locale.py	dumb_sortr   $   s    r   c                      t               \  } }| |t        j                         S t        j                  |  d|       S )N.)r
   icuLocale)language_codeencodings     r   get_icu_localer   (   s?    "++x H$4::<zz]O1XJ788r   c                  d    t         j                  j                  t                     j                  S N)r   CollatorcreateInstancer   
getSortKeyr   r   r   get_strxfrmr   .   s     ||**>+;<GGGr   c                      t         j                  j                  } t        j                  t                     j	                  |       S r   )r   DecimalFormatSymbolskGroupingSeparatorSymbolr   	getSymbolseps    r   get_thousands_sepr$   1   s2    &&??''(89CCCHHr   c                      t         j                  j                  } t        j                  t                     j	                  |       S r   )r   r   kDecimalSeparatorSymbolr   r!   r"   s    r   get_decimal_pointr'   5   s2    &&>>''(89CCCHHr   strxfrmc                  0    t        d      t        d      k  S )NAar(   r   r   r   r   r   B   s    s|gcl**r   c                      t         S r   r(   r   r   r   r   r   E   s    r   c                     t        t        t        j                         d         } t	               rt        j
                         \  }}||y| d| }i ddddddddd	dd
dddddddddddddddddddddddi ddddddddddddddddddd dd!dd"dd#dd$dd%dd&dj                  ||       S | S )'Nthousands_sep,r   zde_DE.ISO8859-15zes_ES.ISO8859-1zde_AT.ISO8859-1de_at    znl_NL.UTF-8es_eszfr_CH.ISO8859-15zfr_CA.ISO8859-1zde_CH.ISO8859-1zfr_FR.ISO8859-15znl_NL.ISO8859-1zca_ES.UTF-8znl_NL.ISO8859-15de_ch'ca_eszde_AT.ISO8859-15zca_ES.ISO8859-1zde_AT.UTF-8zes_ES.UTF-8fr_frzes_ES.ISO8859-15zde_DE.ISO8859-1nl_nlfr_chfr_cazde_DE.UTF-8zca_ES.ISO8859-15zde_CH.ISO8859-15zfr_FR.ISO8859-1zfr_CH.ISO8859-1de_dezfr_FR.UTF-8zfr_CA.ISO8859-15)r   strlocale
localeconvr   r
   get)r#   r   r   locs       r   r$   r$   H   s   3))+O<= ;&,&6&6&8#M8$(8"O1XJ/C""C"!3" "3" 	"
 s" " #F" "6" "3" #F" "3" s" #C" " "  #C!"" "3#"$ s%"& s'"( )"* #C+", "3-". /"0 1"2 3"4 s5"6 #C7"8 #C9": "6;"< "6="> ?"@ vA"B #FC"D c#smE"H Jr   c                  L    t        t        t        j                         d         S )Ndecimal_point)r   r<   r=   r>   r   r   r   r'   r'   y   s    C**,_=>>r   )__doc__systypingr   r   r   r<   bytes
StrOrBytes	TrxfmFuncnull_stringchr
maxunicodenull_string_max__annotations__r   r=   r
   r   r	   boolr   r   r   r$   r'   ImportErrorr)   r   r   r   <module>rP      s    ( (3:
cUJ&'	
 cnn%*  " "a? 
 )t 9C 9H HIs IIs I  A?$,+t + /s /b?s ?AA?s   ,A0 0+BB