
    &giX              
         S SK Jr  S SKJr  S SKrS SKJr  S SKJrJ	r	J
r
  SSKJrJrJrJrJrJr  SSKJrJrJr  \" S	 \" S
5       5       5      \" \" S5      5      -  r\\" S5      -
  r\\" S5      -
  r\r\r\r\" S5      r\\" S5      -  r \" \RB                  \RD                  -   S-   5      r#\#\" S5      -  r$\" \RJ                  5      r&\" SSSSSSSS.5      r' " S S\(5      r)\*S.S<S jjr+\*S.S=S jjr, " S S5      r- " S S 5      r. " S! S"\
5      r/S>S# jr0            S?S$ jr1S@S% jr2S@S& jr3SAS' jr4SAS( jr5            SBS) jr6        SCS* jr7SDS+ jr8SES, jr9SES- jr:SFS. jr;SGS/ jr<S0S1.       SHS2 jjr=SES3 jr>SIS4 jr?SES5 jr@SJS6 jrASHS7 jrB        SKS8 jrCSLS9 jrDSMS: jrESNS; jrFg)O    )annotations)IterableN)MappingProxyType)AnyBinaryIO
NamedTuple   )RE_DATETIMERE_LOCALTIME	RE_NUMBERmatch_to_datetimematch_to_localtimematch_to_number)Key
ParseFloatPosc              #  8   #    U  H  n[        U5      v   M     g 7fN)chr).0is     R/home/matz/Project1/venv/lib/python3.13/site-packages/pip/_vendor/tomli/_parser.py	<genexpr>r      s     1y!s1vvys          	z	
z 	
z-_z"'"\)z\bz\tz\nz\fz\rz\"z\\c                      \ rS rSrSrSrg)TOMLDecodeError5   z0An error raised if a document is not valid TOML. N)__name__
__module____qualname____firstlineno____doc____static_attributes__r&       r   r$   r$   5   s    :r-   r$   parse_floatc                   U R                  5       n UR                  5       n[	        X1S9$ ! [         a    [        S5      Sef = f)z%Parse TOML from a binary file object.zEFile must be opened in binary mode, e.g. use `open('foo.toml', 'rb')`Nr.   )readdecodeAttributeError	TypeErrorloads)__fpr/   bss       r   loadr9   9   sN    		AHHJ
 ,,	  S
	s	   + Ac                  U R                  SS5      nSn[        [        5       [        5       5      nSn[	        U5      n [        X#[        5      n X#   nUS:X  a  US-  nM#  U[        ;   a  [        X#XEU5      n[        X#[        5      nOnUS:X  aV   X#S-      nUR                  R                  5         US:X  a  [        X#U5      u  p5O[        X#U5      u  p5[        X#[        5      nOUS:w  a  [        X#S	5      e[        X#5      n X#   nUS:w  a  [        X#S
5      eUS-  nM  ! [         a     UR                   R"                  $ f = f! [         a    Sn Nf = f! [         a     UR                   R"                  $ f = f)zParse TOML from a string.z
r   r   r&   r	   [N#zInvalid statementz5Expected newline or end of document after a statement)replaceOutput
NestedDictFlagsmake_safe_parse_float
skip_charsTOML_WS
IndexErrorKEY_INITIAL_CHARSkey_value_ruleflagsfinalize_pendingcreate_list_rulecreate_dict_rulesuffixed_errskip_commentdatadict)__sr/   srcposoutheadercharsecond_chars           r   r5   r5   E   s   
 ++fd
#C
C
uw
'CF'4K 7+	8D 4<1HC$$ 3DCSw/CS[#*-Ag, II&&(c!.s=V.s=Sw/CS[s)<== 3$	8D 4<Q  	qa   	F 88==I	  #"#"  	 88==	s6   D  E E  
EEEE
E98E9c                  \    \ rS rSrSrSrSrSS jrSS jrSS jr	SS jr
SS	 jrSS
 jrSrg)r@      z)Flags that map to parsed keys/namespaces.r   r	   c                0    0 U l         [        5       U l        g r   )_flagsset_pending_flagsselfs    r   __init__Flags.__init__   s    ')47Er-   c                <    U R                   R                  X45        g r   )r[   addr]   keyflags      r   add_pendingFlags.add_pending   s    ,r-   c                    U R                    H  u  pU R                  XSS9  M     U R                   R                  5         g )NF	recursive)r[   rZ   clearrb   s      r   rH   Flags.finalize_pending   s6    ,,ICHHS%H0 -!!#r-   c                z    U R                   nUS S  H  nX2;  a    g X#   S   nM     UR                  US   S 5        g )Nnested)rY   pop)r]   rc   contks       r   	unset_allFlags.unset_all   sC    {{SbA}78$D  	R$r-   c                   U R                   nUS S US   peU H'  nXt;  a  [        5       [        5       0 S.XG'   XG   S   nM)     Xd;  a  [        5       [        5       0 S.XF'   XF   U(       a  SOS   R                  U5        g )Nrm   )rG   recursive_flagsrn   rn   ru   rG   )rY   rZ   ra   )r]   rc   rd   ri   rp   
key_parentkey_stemrq   s           r   rZ   	Flags.set   s~    {{"3BxRHA}$'EcerR78$D  '*uRTUDNI(7CGGMr-   c                    U(       d  gU R                   nUS S  H  nXC;  a    gX4   nX%S   ;   a    gUS   nM     US   nXc;   a  X6   nX#S   ;   =(       d    X#S   ;   $ g)NFrm   ru   Trn   rG   )rY   )r]   rc   rd   rp   rq   
inner_contrw   s          r   is_	Flags.is_   s    {{SbA}J"344h'D  r7>D=(KD9J4K,KKr-   )rY   r[   NreturnNone)rc   r   rd   intr~   r   rc   r   r~   r   )rc   r   rd   r   ri   boolr~   r   )rc   r   rd   r   r~   r   )r'   r(   r)   r*   r+   FROZENEXPLICIT_NESTr^   re   rH   rr   rZ   r{   r,   r&   r-   r   r@   r@      s2    3 F M:-$
 	Nr-   r@   c                  D    \ rS rSrS	S jrSS.     S
S jjrSS jrSrg)r?      c                    0 U l         g r   rN   r\   s    r   r^   NestedDict.__init__   s	    $&	r-   Taccess_listsc                   U R                   nU HQ  nXC;  a  0 X4'   X4   nU(       a  [        U[        5      (       a  US   n[        U[         5      (       a  MH  [        S5      e   U$ )Nrm   z There is no nest behind this key)rN   
isinstancelistKeyError)r]   rc   r   rp   rq   s        r   get_or_create_nestNestedDict.get_or_create_nest   sb     IIA}7D
4 6 6BxdD))ABB  r-   c                    U R                  US S 5      nUS   nX2;   a6  X#   n[        U[        5      (       d  [        S5      eUR	                  0 5        g 0 /X#'   g )Nrm   z/An object other than list found behind this key)r   r   r   r   append)r]   rc   rp   last_keylist_s        r   append_nest_to_listNestedDict.append_nest_to_list   s\    &&s3Bx0r7NEeT**PQQLL TDNr-   r   Nr}   )rc   r   r   r   r~   rN   r   )r'   r(   r)   r*   r^   r   r   r,   r&   r-   r   r?   r?      s2    ' "	 	
 
"	"r-   r?   c                  *    \ rS rSr% S\S'   S\S'   Srg)r>      r?   rM   r@   rG   r&   N)r'   r(   r)   r*   __annotations__r,   r&   r-   r   r>   r>      s    
Lr-   r>   c                X     X   U;   a  US-  nX   U;   a  M  U$ ! [          a     U$ f = f)Nr	   )rD   )rP   rQ   charss      r   rB   rB      sF    h%1HC h% J  Js    
))c                   U R                  X!5      nUR	                  XU 5      (       d)  X   U;  a  US-  nX   U;  a  M  [        XSX   < 35      eU$ ! [         a&    [        U 5      nU(       a  [        XSU< 35      S e Nrf = f)Nz	Expected r	   zFound invalid character )index
ValueErrorlenrK   
isdisjoint)rP   rQ   expecterror_onerror_on_eofnew_poss         r   
skip_untilr      s    O))F( sw/00hh&1HC hh&3'?|%LMMN  Oc(sy
-CD$N Os   A -BBc                f     X   nUS:X  a  [        XS-   S[        SS9$ U$ ! [          a    S n N)f = f)Nr<   r	   r   Fr   r   )rD   r   ILLEGAL_COMMENT_CHARS)rP   rQ   rT   s      r   rL   rL     sO    8 s{q$)>U
 	
 J  s   ! 00c                P     Un[        X[        5      n[        X5      nX:X  a  U$ M&  r   )rB   TOML_WS_AND_NEWLINErL   )rP   rQ   pos_before_skips      r   skip_comments_and_array_wsr     s1    
#673$!J r-   c                6   US-  n[        X[        5      n[        X5      u  pUR                  R	                  U[
        R                  5      (       d/  UR                  R	                  U[
        R                  5      (       a  [        XSU S35      eUR                  R                  U[
        R                  SS9   UR                  R                  U5        U R                  SU5      (       d  [        XS5      eUS-   U4$ ! [         a    [        XS5      S ef = f)	Nr	   zCannot declare z twiceFrh   Cannot overwrite a value]z.Expected ']' at the end of a table declaration)rB   rC   	parse_keyrG   r{   r@   r   r   rK   rZ   rM   r   r   
startswithrP   rQ   rR   rc   s       r   rJ   rJ     s    1HC
Sw
'C"HC
yy}}S%--..#))--U\\2R2R3se6%BCCIIMM#u**eM<K##C( >>#s##3%UVV7C<  K3%?@dJKs   ;D   Dc                   US-  n[        X[        5      n[        X5      u  pUR                  R	                  U[
        R                  5      (       a  [        XSU 35      eUR                  R                  U5        UR                  R                  U[
        R                  SS9   UR                  R                  U5        U R                  SU5      (       d  [        XS5      eUS-   U4$ ! [         a    [        XS5      S ef = f)N   "Cannot mutate immutable namespace Frh   r   z]]z0Expected ']]' at the end of an array declaration)rB   rC   r   rG   r{   r@   r   rK   rr   rZ   r   rM   r   r   r   r   s       r   rI   rI   .  s    1HC
Sw
'C"HC
yy}}S%,,''3'I#%OPPIIIIMM#u**eM<K$$S) >>$$$3%WXX7C<  K3%?@dJKs   &C+ +Dc                
  ^^ [        XU5      u  nmnTS S TS   pvTU-   nUU4S j[        S[        T5      5       5       n	U	 Hk  n
UR                  R	                  U
[
        R                  5      (       a  [        XSU
 35      eUR                  R                  U
[
        R                  5        Mm     UR                  R	                  U[
        R                  5      (       a  [        XSU 35      e UR                  R                  U5      nX{;   a  [        XS5      e[        U[        [        45      (       a,  UR                  R!                  TT-   [
        R                  SS9  X[U'   U$ ! [         a    [        XS5      S ef = f)	Nrm   c              3  4   >#    U  H  nTTS U -   v   M     g 7fr   r&   )r   r   rS   rc   s     r   r   !key_value_rule.<locals>.<genexpr>J  s     L9KAvBQ/9Ks   r	   zCannot redefine namespace r   r   Trh   )parse_key_value_pairranger   rG   r{   r@   r   rK   re   r   rM   r   r   r   rN   r   rZ   )rP   rQ   rR   rS   r/   valuerv   rw   abs_key_parentrelative_path_cont_keyscont_keynestrc   s      `        @r   rF   rF   C  sb    +3[AOCes8SWj(NLq#c(9KL+99==5#6#677s+EhZ)PQQ 			h(;(;< , yy}}^U\\22:>:JK
 	
Kxx**>: 3%?@@%$&&		fslELLDANJ  K3%?@dJKs   1E* *Fc                    [        X5      u  p X   nUS:w  a  [        XS5      eUS-  n[        X[        5      n[        XU5      u  pXU4$ ! [         a    S n NGf = f)N=z,Expected '=' after a key in a key/value pairr	   )r   rD   rK   rB   rC   parse_value)rP   rQ   r/   rc   rT   r   s         r   r   r   e  sv     "HC8 s{3%STT1HC
Sw
'CS{3JCU?  s   A AAc                    [        X5      u  pU4n[        X[        5      n  X   nUS:w  a  X4$ US-  n[        X[        5      n[        X5      u  pX24-  n[        X[        5      nMG  ! [         a    S n NPf = f)N.r	   )parse_key_partrB   rC   rD   )rP   rQ   key_partrc   rT   s        r   r   r   u  s    "3,MC{C
Sw
'C
	"xD 3;8Oq7+&s0{7+   	D	s   A) )A87A8c                     X   nU[        ;   a  Un[        X[        5      nXX1 4$ US:X  a  [        X5      $ US:X  a  [	        X5      $ [        XS5      e! [          a    S n N]f = f)N'r!   z(Invalid initial character for a key part)rD   BARE_KEY_CHARSrB   parse_literal_strparse_one_line_basic_strrK   )rP   rQ   rT   	start_poss       r   r   r     s    8 ~	>2	&&&s{ **s{'11
s!K
LL  s   A A$#A$c                     US-  n[        XSS9$ )Nr	   F	multiline)parse_basic_strrP   rQ   s     r   r   r     s    1HC3u55r-   c                d   US-  n/ n[        X5      nU R                  SU5      (       a  US-   U4$  [        XU5      u  pUR                  U5        [        X5      nXUS-    nUS:X  a  US-   U4$ US:w  a  [	        XS5      eUS-  n[        X5      nU R                  SU5      (       a  US-   U4$ M  )Nr	   r   ,zUnclosed array)r   r   r   r   rK   )rP   rQ   r/   arrayvalcs         r   parse_arrayr     s    1HCE
$S
.C
~~c3Qw~
s5S(2cAg87E>!8s)9::q(2>>#s##7E>! r-   c                   US-  n[        5       n[        5       n[        X[        5      nU R	                  SU5      (       a  US-   UR
                  4$  [        XU5      u  pnUS S US   pUR                  U[        R                  5      (       a  [        XSU 35      e UR                  USS9n	X;   a  [        XS	U< 35      eXiU'   [        X[        5      nXUS-    n
U
S:X  a  US-   UR
                  4$ U
S
:w  a  [        XS5      e[        U[
        [        45      (       a  UR                  U[        R                  SS9  US-  n[        X[        5      nGM  ! [         a    [        XS5      S ef = f)Nr	   }Trm   r   Fr   r   zDuplicate inline table key r   zUnclosed inline tablerh   )r?   r@   rB   rC   r   rN   r   r{   r   rK   r   r   r   r   rZ   )rP   rQ   r/   nested_dictrG   rc   r   rv   rw   r   r   s              r   parse_inline_tabler     s   1HC,KGE
Sw
'C
~~c3Qw((((
.sE%"3BxRH99S%,,''s+McU)STT	O11*51QD s+Fxl)STTX7+cAg87K,,,,8s)@AAedD\**IIc5<<4I8q7++   	Os)CD$N	Os    E E3Fr   c               ~   XUS-    nUS-  nU(       aL  US;   aF  US:w  a,  [        X[        5      n X   nUS:w  a  [        XS5      eUS-  n[        X[        5      nUS4$ US:X  a  [        XS	5      $ US
:X  a  [        XS5      $  U[        U   4$ ! [         a    US4s $ f = f! [         a    [        XS5      S ef = f)Nr   >   \	\
\ r    r   zUnescaped '\' in a stringr	   z\u   z\U   )rB   rC   rD   rK   r   parse_hex_charBASIC_STR_ESCAPE_REPLACEMENTSr   )rP   rQ   r   	escape_idrT   s        r   parse_basic_str_escaper     s     #'"I1HCY"99 Sw/Cx t|"3-IJJ1HC#67BwEc**Ec**M1)<<<  Bw  M3%ABLMs   B 
B$ B! B!$B<c                    [        XSS9$ )NTr   )r   r   s     r    parse_basic_str_escape_multiliner     s    !#d;;r-   c                    XX-    n[        U5      U:w  d  [        R                  U5      (       d  [        XS5      eX-  n[	        US5      n[        U5      (       d  [        XS5      eU[        U5      4$ )NzInvalid hex value   z/Escaped character is not a Unicode scalar value)r   HEXDIGIT_CHARS
issupersetrK   r   is_unicode_scalar_valuer   )rP   rQ   hex_lenhex_strhex_ints        r   r   r     ss    &G
7|wn&?&?&H&H3%899NC'2G"7++3%VWWGr-   c                B    US-  nUn[        XS[        SS9nUS-   XU 4$ )Nr	   r   Tr   )r   ILLEGAL_LITERAL_STR_CHARS)rP   rQ   r   s      r   r   r      s:    1HCI
# 9C 7C#&&&r-   c               8   US-  nU R                  SU5      (       a  US-  nU(       a  Sn[        U US[        SS9nXU nUS-   nOSn[        XSS	9u  pU R                  X15      (       d  X4$ US-  nU R                  X15      (       d  XU-   4$ US-  nXUS
-  -   4$ )N   r   r	   r   '''Tr   r!   r   r   )r   r   #ILLEGAL_MULTILINE_LITERAL_STR_CHARSr   )rP   rQ   literaldelimend_posresults         r   parse_multiline_strr   	  s    1HC
~~dC  q8
 !k%c$? >>%%%{1HC>>%%%UN""1HC%!)$$$r-   c                  U(       a  [         n[        nO[        n[        nSnUn  X   nUS:X  a;  U(       d  US-   XPXa -   4$ U R                  SU5      (       a  US-   XPXa -   4$ US-  nMG  US:X  a  XPXa -  nU" X5      u  pXX-  nUnMe  Xs;   a  [        XSU< 35      eUS-  nM  ! [         a    [        XS5      S ef = f)	Nr   zUnterminated stringr!   r	   """r   r"   zIllegal character )!ILLEGAL_MULTILINE_BASIC_STR_CHARSr   ILLEGAL_BASIC_STR_CHARSr   rD   rK   r   )	rP   rQ   r   r   parse_escapesr   r   rT   parsed_escapes	            r   r   r   (  s   48*.FI
	J8D 3;QwY); ;;;~~eS))QwY); ;;;1HC4<)((F!.s!8C#FIs+=dX)FGGq)   	Js)>?TI	Js   B& &B>c                    X   nUS:X  a,  U R                  SU5      (       a
  [        XSS9$ [        X5      $ US:X  a,  U R                  SU5      (       a
  [        XSS9$ [	        X5      $ US:X  a  U R                  S	U5      (       a  US
-   S4$ US:X  a  U R                  SU5      (       a  US-   S4$ US:X  a  [        XU5      $ US:X  a  [        XU5      $ [        R                  " X5      nU(       a   [        U5      nUR                  5       U4$ [        R                  " X5      nU(       a  UR                  5       [        U5      4$ [        R                  " X5      nU(       a  UR                  5       [!        X5      4$ XUS-    n	U	S;   a  US-   U" U	5      4$ XUS
-    n
U
S;   a  US
-   U" U
5      4$ [        XS5      e! [          a    S n GNf = f! [         a  n[        XS5      UeS nAff = f)Nr!   r   F)r   r   r   Tttruer   ffalse   r;   {zInvalid date or datetimer   >   infnan>   +inf+nan-inf-nanzInvalid value)rD   r   r   r   r   r   r   r
   matchr   r   rK   endr   r   r   r   )rP   rQ   r/   rT   datetime_matchdatetime_objelocaltime_matchnumber_matchfirst_three
first_fours              r   r   r   H  s   8 s{>>%%%&s??'11 s{>>%%%&s>> ** s{>>&#&&7D= s{>>'3''7E>! s{3[11 s{!#K88 !&&s0N	L,^<L !!#\11"((2O""$&8&III
 ??3,L!?<#MMM C!G$Kn$QwK00037#J55QwJ///
s
11y  L  	Ls)CD!K	Ls)   G 4G GG
G0G++G0c                :    SS jn[        U SU" X5       S35      $ )zVReturn a `TOMLDecodeError` where error message is suffixed with
coordinates in source.c                    U[        U 5      :  a  gU R                  SSU5      S-   nUS:X  a  US-   nOXR                  SSU5      -
  nSU SU 3$ )Nzend of documentr   r   r	   zline z	, column )r   countrindex)rP   rQ   linecolumns       r   
coord_repr suffixed_err.<locals>.coord_repr  s_    #c(?$yyq#&*191WF::dAs33FtfIfX..r-   z (at ))rP   strrQ   r   r~   r"  )r$   )rP   rQ   msgr  s       r   rK   rK     s'    / cU%
3(<'=Q?@@r-   c                d    SU s=:*  =(       a    S:*  Os  =(       d    SU s=:*  =(       a    S:*  $ s  $ )Nr   i  i   i r&   )	codepoints    r   r   r     s-    ##e#G))F)Fw)FG)FGr-   c                6   ^  T [         L a  [         $ SU 4S jjnU$ )a  A decorator to make `parse_float` safe.

`parse_float` must not return dicts or lists, because these types
would be mixed with parsed TOML tables and arrays, thus confusing
the parser. The returned decorated callable raises `ValueError`
instead of returning illegal types.
c                d   > T" U 5      n[        U[        [        45      (       a  [        S5      eU$ )Nz*parse_float must not return dicts or lists)r   rN   r   r   )	float_strfloat_valuer/   s     r   safe_parse_float/make_safe_parse_float.<locals>.safe_parse_float  s0    !),kD$<00IJJr-   )r(  r"  r~   r   )float)r/   r*  s   ` r   rA   rA     s     e r-   )r6   r   r/   r   r~   dict[str, Any])rO   r"  r/   r   r~   r-  )rP   r"  rQ   r   r   zIterable[str]r~   r   )rP   r"  rQ   r   r   r"  r   zfrozenset[str]r   r   r~   r   )rP   r"  rQ   r   r~   r   )rP   r"  rQ   r   rR   r>   r~   tuple[Pos, Key])rP   r"  rQ   r   rR   r>   rS   r   r/   r   r~   r   )rP   r"  rQ   r   r/   r   r~   ztuple[Pos, Key, Any])rP   r"  rQ   r   r~   r.  )rP   r"  rQ   r   r~   tuple[Pos, str])rP   r"  rQ   r   r/   r   r~   ztuple[Pos, list])rP   r"  rQ   r   r/   r   r~   ztuple[Pos, dict])rP   r"  rQ   r   r   r   r~   r/  )rP   r"  rQ   r   r   r   r~   r/  )rP   r"  rQ   r   r   r   r~   r/  )rP   r"  rQ   r   r/   r   r~   ztuple[Pos, Any])rP   r"  rQ   r   r#  r"  r~   r$   )r%  r   r~   r   )r/   r   r~   r   )G
__future__r   collections.abcr   stringtypesr   typingr   r   r   _rer
   r   r   r   r   r   _typesr   r   r   	frozensetr   r   
ASCII_CTRLr   r   r   r   r   rC   r   ascii_lettersdigitsr   rE   	hexdigitsr   r   r   r$   r,  r9   r5   r@   r?   r>   rB   r   rL   r   rJ   rI   rF   r   r   r   r   r   r   r   r   r   r   r   r   r   rK   r   rA   r&   r-   r   <module>r<     s  
 # $  " , ,  ) (1uRy11Ic#h4GG
 %y6 $.61B$B !3 &G #/ 
E
	$/ 6//&--?$FG"Yu%55 6++, 0
! ;j ; 7< 	- 27 ?D7 7t" "DZ 
		 
   	,	$*	#-0?ID	%/ ,$M 6
"0,B .3M	MM&*MM:<'%>@A2	A2A2%/A2A2HA"Hr-   