
    5pj,
              	       ~    S SK r SSSSS.r0 \ESS0ErS\S	\\\4   S
\4S jrSS\S\\\4   S-  S
\\\4   4S jjrg)    N
	"\)ntr   r   $valueescapesreturnc                 <   ^ [         R                  " SU4S jU 5      $ )a>  Expand backslash escapes in a single left-to-right pass.

Processing in one pass (rather than chained `str.replace` calls) ensures an escaped
backslash (`\\`) is consumed as a unit and cannot merge with the following character,
e.g. `\\n` is a backslash followed by `n`, not a newline. Unknown escapes are kept as-is.
z\\(.)c                 d   > TR                  U R                  S5      U R                  S5      5      $ )N   r   )getgroup)matchr   s    Y/var/www/html/pdf-tiff/venv/lib/python3.13/site-packages/huggingface_hub/utils/_dotenv.py<lambda>_unescape.<locals>.<lambda>   s!    '++ekk!nekkRSn*U    )resub)r
   r   s    `r   	_unescaper      s     66(UW\]]r   
dotenv_strenvironc                    0 n[         R                  " S[         R                  5      nU R                  5        GHH  nUR	                  5       nU(       a  UR                  S5      (       a  M3  UR                  U5      nU(       d  MM  UR                  S5      nSnUR                  S5      (       a  UR                  S5      =(       d    SnUR	                  5       nUR                  S5      (       a  UR                  S5      (       d,  UR                  S	5      (       aG  UR                  S	5      (       a1  UR                  S5      (       a  [        O[        n	[        USS
 U	5      nOUb  UR                  U5      nUc  GMD  XrU'   GMK     U$ )z
Parse a DOTENV-format string and return a dictionary of key-value pairs.
Handles quoted values, comments, export keyword, and blank lines.
a  
        ^\s*
        (?:export[^\S\n]+)?               # optional export
        ([A-Za-z_][A-Za-z0-9_]*)          # key
        [^\S\n]*(=)?[^\S\n]*
        (                                 # value group
            (?:
                '(?:\\'|[^'])*'           # single-quoted value
                | \"(?:\\\"|[^\"])*\"     # double-quoted value
                | [^#\n\r]+?              # unquoted value
            )
        )?
        [^\S\n]*(?:\#.*)?$                # optional inline comment
    #r   N       r   ')r   compileVERBOSE
splitlinesstrip
startswithr   r   endswith_DOUBLE_QUOTE_ESCAPES_ESCAPESr   r   )
r   r   envline_patternliner   keyvalraw_valr   s
             r   load_dotenvr1      s;   
 C::	 	

L$ %%'zz|ts++""4(5++a.CC{{1~~++a..BmmoNN3''CLL,=,=3>>RUCVCV[^[g[ghk[l[l7>7I7I#7N7N3T\G#C"Iw7C$kk#&C+ (. Jr   )N)r   r*   r)   strdictr   r1    r   r   <module>r5      s    	
 Ds$7.8.S#. ^S ^4S> ^c ^/C /$sCx.4*? /4PSUXPX> /r   