
    IxhiX              
      4   d dl mZ d dlmZ d dlZd dlmZ d dlmZm	Z	m
Z
 ddlmZmZmZmZmZmZ ddlmZmZmZ  ed	  ed
          D                        e ed                    z  Ze ed          z
  Ze ed          z
  ZeZeZeZ ed          Ze ed          z  Z  eej!        ej"        z   dz             Z#e# ed          z  Z$ eej%                  Z& edddddddd          Z' G d de(          Z)e*dd]d!Z+e*dd^d$Z, G d% d&          Z- G d' d(          Z. G d) d*e
          Z/d_d0Z0d`d6Z1dad7Z2dad8Z3dbd;Z4dbd<Z5dcd?Z6dddAZ7dedBZ8dfdDZ9dfdEZ:dgdGZ;dhdIZ<dJdKdidMZ=dfdNZ>djdQZ?dfdRZ@dkdTZAdidUZBdldWZCdmdYZDdnd[ZEdod\ZFdS )p    )annotations)IterableN)MappingProxyType)AnyBinaryIO
NamedTuple   )RE_DATETIMERE_LOCALTIME	RE_NUMBERmatch_to_datetimematch_to_localtimematch_to_number)Key
ParseFloatPosc              #  4   K   | ]}t          |          V  d S N)chr).0is     S/var/www/html/what/lib/python3.11/site-packages/setuptools/_vendor/tomli/_parser.py	<genexpr>r      s(      11!s1vv111111           	z	
z 	
z-_z"'"\)z\bz\tz\nz\fz\rz\"z\\c                      e Zd ZdZdS )TOMLDecodeErrorz0An error raised if a document is not valid TOML.N)__name__
__module____qualname____doc__ r   r   r%   r%   5   s        ::::r   r%   parse_float__fpr   r,   r   returndict[str, Any]c                   |                                  }	 |                                }n# t          $ r t          d          dw xY wt	          ||          S )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)r-   r,   bss       r   loadr8   9   sk    		AHHJJ   S
 
	 ,,,,s	   + A__sstrc               d   |                      dd          }d}t          t                      t                                }d}t	          |          }	 t          ||t                    }	 ||         }n# t          $ r Y n&w xY w|dk    r|dz  }>|t          v r*t          |||||          }t          ||t                    }n|dk    r~	 ||dz            }n# t          $ r d}Y nw xY w|j
                                         |dk    rt          |||          \  }}nt          |||          \  }}t          ||t                    }n|d	k    rt          ||d
          t          ||          }	 ||         }n# t          $ r Y n"w xY w|dk    rt          ||d          |dz  }S|j        j        S )zParse TOML from a string.z
r   r   r*   Tr	   [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)r9   r,   srcposoutheadercharsecond_chars           r   r5   r5   E   s   
 ++fd
#
#C
C
uww
'
'CF'44K0c7++	s8DD 	 	 	E	4<<1HC$$$ c3DDCS#w//CCS[[#*-cAg, # # #"#I&&(((c!!.sC==VV.sC==VS#w//CCS[[sC)<=== 3$$	s8DD 	 	 	E	4<<SQ   	qa0d 8=s6   *A3 3
B B
C C%$C%/E8 8
FFc                  J    e Zd ZdZdZdZddZddZddZddZ	ddZ
ddZdS )rA   z)Flags that map to parsed keys/namespaces.r   r	   r.   Nonec                :    i | _         t                      | _        d S r   )_flagsset_pending_flagsselfs    r   __init__zFlags.__init__   s    ')47EEr   keyr   flagintc                >    | j                             ||f           d S r   )r[   addr]   r_   r`   s      r   add_pendingzFlags.add_pending   s#    d,,,,,r   c                    | j         D ]\  }}|                     ||d           | j                                          d S )NF	recursive)r[   rZ   clearrd   s      r   rI   zFlags.finalize_pending   sN    , 	1 	1ICHHS$%H0000!!#####r   c                    | j         }|d d         D ]}||vr d S ||         d         }|                    |d         d            d S )Nnested)rY   pop)r]   r_   contks       r   	unset_allzFlags.unset_all   s^    {SbS 	% 	%A}}78$DDR$r   rh   boolc               <   | j         }|d d         |d         }}|D ]5}||vr!t                      t                      i d||<   ||         d         }6||vr!t                      t                      i d||<   ||         |rdnd                             |           d S )Nrk   )rH   recursive_flagsrl   rl   rs   rH   )rY   rZ   rc   )r]   r_   r`   rh   rn   
key_parentkey_stemro   s           r   rZ   z	Flags.set   s    {"3B3xRH
 	% 	%A}}$'EEceerRRQ78$DD4'*uuRTUUDNXIB((7CGGMMMMMr   c                    |sdS | j         }|d d         D ]&}||vr dS ||         }||d         v r dS |d         }'|d         }||v r||         }||d         v p	||d         v S dS )NFrk   rs   Trl   rH   )rY   )r]   r_   r`   rn   ro   
inner_contru   s          r   is_z	Flags.is_   s     	5{SbS 	( 	(A}}uuaJz"3444tth'DDr7t>D4=(KDD9J4K,KKur   Nr.   rW   )r_   r   r`   ra   r.   rW   r_   r   r.   rW   )r_   r   r`   ra   rh   rq   r.   rW   )r_   r   r`   ra   r.   rq   )r&   r'   r(   r)   FROZENEXPLICIT_NESTr^   re   rI   rp   rZ   rx   r*   r   r   rA   rA      s        33 F M: : : :- - - -$ $ $ $
       	N 	N 	N 	N     r   rA   c                  ,    e Zd ZddZddddZddZdS )r@   r.   rW   c                    i | _         d S r   )rO   r\   s    r   r^   zNestedDict.__init__   s    $&			r   Taccess_listsr_   r   r   rq   rO   c                   | j         }|D ]V}||vri ||<   ||         }|rt          |t                    r|d         }t          |t                     st          d          W|S )Nrk   z There is no nest behind this key)rO   
isinstancelistKeyError)r]   r_   r   rn   ro   s        r   get_or_create_nestzNestedDict.get_or_create_nest   s     I 	C 	CA}}Q7D  
4 6 6  BxdD)) CABBBCr   c                    |                      |d d                   }|d         }||v rC||         }t          |t                    st          d          |                    i            d S i g||<   d S )Nrk   z/An object other than list found behind this key)r   r   r   r   append)r]   r_   rn   last_keylist_s        r   append_nest_to_listzNestedDict.append_nest_to_list   s    &&s3B3x00r7tNEeT** RPQQQLL TDNNNr   Nry   )r_   r   r   rq   r.   rO   rz   )r&   r'   r(   r^   r   r   r*   r   r   r@   r@      s_        ' ' ' ' "	     "	" 	" 	" 	" 	" 	"r   r@   c                  $    e Zd ZU ded<   ded<   dS )r?   r@   rN   rA   rH   N)r&   r'   r(   __annotations__r*   r   r   r?   r?      s%         LLLLLr   r?   rP   rQ   r   charsIterable[str]c                \    	 | |         |v r|dz  }| |         |v n# t           $ r Y nw xY w|S )Nr	   )rE   )rP   rQ   r   s      r   rC   rC      sV    #h%1HC #h%   Js    
))expecterror_onfrozenset[str]error_on_eofrq   c               B   	 |                      ||          }n6# t          $ r) t          |           }|rt          | |d|          d Y nw xY w|                    | ||                   s3| |         |vr|dz  }| |         |vt          | |d| |                   |S )Nz	Expected r	   zFound invalid character )index
ValueErrorlenrL   
isdisjoint)rP   rQ   r   r   r   new_poss         r   
skip_untilr      s    O))FC(( O O Oc(( 	OsG-C-C-CDD$N	O 	OO
 s3w;/00 N#hh&&1HC #hh&&3%LC%L%LMMMNs    0AAc                    	 | |         }n# t           $ r d }Y nw xY w|dk    rt          | |dz   dt          d          S |S )Nr=   r	   r   Fr   r   )rE   r   ILLEGAL_COMMENT_CHARS)rP   rQ   rT   s      r   rM   rM     sm    s8   s{{q$)>U
 
 
 	
 J    c                f    	 |}t          | |t                    }t          | |          }||k    r|S 1r   )rC   TOML_WS_AND_NEWLINErM   )rP   rQ   pos_before_skips      r   skip_comments_and_array_wsr     sB    c#6773$$/!!Jr   rR   tuple[Pos, Key]c                >   |dz  }t          | |t                    }t          | |          \  }}|j                            |t
          j                  s%|j                            |t
          j                  rt          | |d| d          |j        	                    |t
          j        d           	 |j
                            |           n # t          $ r t          | |d          d w xY w|                     d|          st          | |d          |dz   |fS )	Nr	   zCannot declare z twiceFrg   Cannot overwrite a value]z.Expected ']' at the end of a table declaration)rC   rD   	parse_keyrH   rx   rA   r|   r{   rL   rZ   rN   r   r   
startswithrP   rQ   rR   r_   s       r   rK   rK     s-   1HC
S#w
'
'Cc""HC
y}}S%-.. D#)--U\2R2R D3%Bs%B%B%BCCCIMM#u*eM<<<K##C(((( K K K3%?@@dJK >>#s## W3%UVVV7C<s   6C C.c                &   |dz  }t          | |t                    }t          | |          \  }}|j                            |t
          j                  rt          | |d|           |j                            |           |j        	                    |t
          j
        d           	 |j                            |           n # t          $ r t          | |d          d w xY w|                     d|          st          | |d          |dz   |fS )N   "Cannot mutate immutable namespace Frg   r   z]]z0Expected ']]' at the end of an array declaration)rC   rD   r   rH   rx   rA   r{   rL   rp   rZ   r|   rN   r   r   r   r   s       r   rJ   rJ   .  s%   1HC
S#w
'
'Cc""HC
y}}S%,'' Q3%O#%O%OPPPIIMM#u*eM<<<K$$S)))) K K K3%?@@dJK >>$$$ Y3%WXXX7C<s   *C C"rS   r   c                &   t          | ||          \  }}d d         d         }}|z   }fdt          dt                              D             }	|	D ]`}
|j                            |
t
          j                  rt          | |d|
           |j                            |
t
          j                   a|j                            |t
          j	                  rt          | |d|           	 |j
                            |          }n # t          $ r t          | |d          d w xY w||v rt          | |d          t          |t          t          f          r*|j                            z   t
          j	        d           |||<   |S )	Nrk   c              3  2   K   | ]}d |         z   V  d S r   r*   )r   r   rS   r_   s     r   r   z!key_value_rule.<locals>.<genexpr>J  s0      LLAvBQB/LLLLLLr   r	   zCannot redefine namespace r   r   Trg   )parse_key_value_pairranger   rH   rx   rA   r|   rL   re   r{   rN   r   r   r   rO   r   rZ   )rP   rQ   rR   rS   r,   valuert   ru   abs_key_parentrelative_path_cont_keyscont_keynestr_   s      `        @r   rG   rG   C  s    +3[AAOCess8SWJj(NLLLLLq#c((9K9KLLL+ = =9==5#677 	RsC)Ph)P)PQQQ 		h(;<<<<
y}}^U\22 
K>KK
 
 	
Kx**>:: K K K3%?@@dJK43%?@@@%$&& B	fslELDAAADNJs   6D D.tuple[Pos, Key, Any]c                    t          | |          \  }}	 | |         }n# t          $ r d }Y nw xY w|dk    rt          | |d          |dz  }t          | |t                    }t          | ||          \  }}|||fS )N=z,Expected '=' after a key in a key/value pairr	   )r   rE   rL   rC   rD   parse_value)rP   rQ   r,   r_   rT   r   s         r   r   r   e  s     c""HCs8   s{{3%STTT1HC
S#w
'
'CS#{33JCU?s    --c                >   t          | |          \  }}|f}t          | |t                    }	 	 | |         }n# t          $ r d }Y nw xY w|dk    r||fS |dz  }t          | |t                    }t          | |          \  }}||fz  }t          | |t                    }q)NT.r	   )parse_key_partrC   rD   rE   )rP   rQ   key_partr_   rT   s        r   r   r   u  s    "3,,MC{C
S#w
'
'C,	"3xDD 	 	 	DDD	3;;8Oqc7++&sC00X{c7++,s   8 AAtuple[Pos, str]c                   	 | |         }n# t           $ r d }Y nw xY w|t          v r$|}t          | |t                    }|| ||         fS |dk    rt          | |          S |dk    rt	          | |          S t          | |d          )N'r"   z(Invalid initial character for a key part)rE   BARE_KEY_CHARSrC   parse_literal_strparse_one_line_basic_strrL   )rP   rQ   rT   	start_poss       r   r   r     s    s8   ~	c>22C	#&&&s{{ c***s{{'S111
sC!K
L
LLr   c                0    |dz  }t          | |d          S )Nr	   F	multiline)parse_basic_strrP   rQ   s     r   r   r     s     1HC3u5555r   tuple[Pos, list]c                   |dz  }g }t          | |          }|                     d|          r|dz   |fS 	 t          | ||          \  }}|                    |           t          | |          }| ||dz            }|dk    r|dz   |fS |dk    rt	          | |d          |dz  }t          | |          }|                     d|          r|dz   |fS )Nr	   r   T,zUnclosed array)r   r   r   r   rL   )rP   rQ   r,   arrayvalcs         r   parse_arrayr     s   1HCE
$S#
.
.C
~~c3 Qw~"sC55SS(c22cAg887E>!88sC)9:::q(c22>>#s## 	"7E>!"r   tuple[Pos, dict]c                f   |dz  }t                      }t                      }t          | |t                    }|                     d|          r|dz   |j        fS 	 t          | ||          \  }}}|d d         |d         }}|                    |t          j                  rt          | |d|           	 |
                    |d          }	n # t          $ r t          | |d          d w xY w||	v rt          | |d	|          ||	|<   t          | |t                    }| ||dz            }
|
dk    r|dz   |j        fS |
d
k    rt          | |d          t          |t
          t          f          r"|                    |t          j        d           |dz  }t          | |t                    }X)Nr	   }Trk   r   Fr   r   zDuplicate inline table key r   zUnclosed inline tablerg   )r@   rA   rC   rD   r   rO   r   rx   r{   rL   r   r   r   r   rZ   )rP   rQ   r,   nested_dictrH   r_   r   rt   ru   r   r   s              r   parse_inline_tabler     s   1HC,,KGGE
S#w
'
'C
~~c3 )Qw(((,.sCEES%"3B3xRH
99S%,'' 	UsC)Sc)S)STTT	O11*51QQDD 	O 	O 	OsC)CDD$N	OtsC)Sx)S)STTTXc7++cAg887K,,,88sC)@AAAedD\** 	9IIc5<4I888qc7+++,s   7C C,Fr   r   c                  | ||dz            }|dz  }|rt|dv rp|dk    rPt          | |t                    }	 | |         }n# t          $ r |dfcY S w xY w|dk    rt          | |d          |dz  }t          | |t                    }|dfS |dk    rt          | |d	          S |d
k    rt          | |d          S 	 |t          |         fS # t          $ r t          | |d          d w xY w)Nr   >   \	\ \
r    r   zUnescaped '\' in a stringr	   z\u   z\U   )rC   rD   rE   rL   r   parse_hex_charBASIC_STR_ESCAPE_REPLACEMENTSr   )rP   rQ   r   	escape_idrT   s        r   parse_basic_str_escaper     sM    C#'M"I1HC Y"999 S#w//C3x   Bwt||"3-IJJJ1HCc#677BwEc3***Ec3***M1)<<< M M M3%ABBLMs   ? AA8C C$c                &    t          | |d          S )NTr   )r   r   s     r    parse_basic_str_escape_multiliner     s    !#sd;;;;r   hex_lenra   c                $   | |||z            }t          |          |k    st                              |          st          | |d          ||z  }t	          |d          }t          |          st          | |d          |t          |          fS )NzInvalid hex value   z/Escaped character is not a Unicode scalar value)r   HEXDIGIT_CHARS
issupersetrL   ra   is_unicode_scalar_valuer   )rP   rQ   r   hex_strhex_ints        r   r   r     s    #g%&G
7||wn&?&?&H&H3%89997NC'2G"7++ X3%VWWWGr   c                `    |dz  }|}t          | |dt          d          }|dz   | ||         fS )Nr	   r   Tr   )r   ILLEGAL_LITERAL_STR_CHARS)rP   rQ   r   s      r   r   r      sJ    1HCI
S# 9  C 7C	#&&&r   literalc               `   |dz  }|                      d|          r|dz  }|r+d}t          | |dt          d          }| ||         }|dz   }nd}t          | |d	          \  }}|                      ||          s||fS |dz  }|                      ||          s|||z   fS |dz  }|||d
z  z   fS )N   r   r	   r   '''Tr   r"   r   r   )r   r   #ILLEGAL_MULTILINE_LITERAL_STR_CHARSr   )rP   rQ   r   delimend_posresults         r   parse_multiline_strr   	  s    1HC
~~dC   q @8
 
 
 S[!k%c3$???V >>%%% F{1HC>>%%% #FUN""1HC%!)$$$r   c                  |rt           }t          }nt          }t          }d}|}	 	 | |         }n # t          $ r t          | |d          d w xY w|dk    rB|s|dz   || ||         z   fS |                     d|          r|dz   || ||         z   fS |dz  }s|dk    r$|| ||         z  } || |          \  }}||z  }|}||v rt          | |d	|          |dz  })
Nr   TzUnterminated stringr"   r	   """r   r#   zIllegal character )!ILLEGAL_MULTILINE_BASIC_STR_CHARSr   ILLEGAL_BASIC_STR_CHARSr   rE   rL   r   )	rP   rQ   r   r   parse_escapesr   r   rT   parsed_escapes	            r   r   r   (  sY    /48*.FI	Js8DD 	J 	J 	JsC)>??TI	J3;; <QwYs]); ;;;~~eS)) <QwYs]); ;;;1HC4<<c)C-((F!.sC!8!8Cm#FI8sC)Fd)F)FGGGq)s	   / Atuple[Pos, Any]c                n   	 | |         }n# t           $ r d }Y nw xY w|dk    r8|                     d|          rt          | |d          S t          | |          S |dk    r8|                     d|          rt          | |d          S t	          | |          S |dk    r|                     d	|          r|d
z   dfS |dk    r|                     d|          r|dz   dfS |dk    rt          | ||          S |dk    rt          | ||          S t          j        | |          }|rK	 t          |          }n$# t          $ r}t          | |d          |d }~ww xY w|                                |fS t          j        | |          }|r#|                                t          |          fS t          j        | |          }|r$|                                t!          ||          fS | ||dz            }	|	dv r|dz    ||	          fS | ||d
z            }
|
dv r|d
z    ||
          fS t          | |d          )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)rE   r   r   r   r   r   r   r
   matchr   r   rL   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   s8    s{{>>%%% 	@&sC????'S111 s{{>>%%% 	?&sC>>>> c*** s{{>>&#&& 	!7D= s{{>>'3'' 	"7E>! s{{3[111 s{{!#sK888 !&sC00N 2	L,^<<LL 	L 	L 	LsC)CDD!K	L!!##\11"(c22O J""$$&8&I&III
 ?3,,L N!!?<#M#MMM cC!Gm$Kn$$QwK0000S37]#J555QwJ////
sC
1
11s$    %D5 5
E?EEmsgc                H    d	d}t          | d || |           d          S )
zZReturn a `TOMLDecodeError` where error message is suffixed with
    coordinates in source.rP   r:   rQ   r   r.   c                    |t          |           k    rdS |                     dd|          dz   }|dk    r|dz   }n||                     dd|          z
  }d| d| S )Nzend of documentr   r   r	   zline z	, column )r   countrindex)rP   rQ   linecolumns       r   
coord_reprz suffixed_err.<locals>.coord_repr  su    #c((??$$yyq#&&*1991WFF3::dAs333F.t..f...r   z (at ))rP   r:   rQ   r   r.   r:   )r%   )rP   rQ   r  r  s       r   rL   rL     sC    / / / / c??

3(<(<???@@@r   	codepointc                B    d| cxk    odk    nc pd| cxk    odk    nc S )Nr   i  i   i r*   )r  s    r   r   r     sE    ####e####G))F)F)F)Fw)F)F)F)FGr   c                4      t           u rt           S d fd}|S )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.
    	float_strr:   r.   r   c                t     |           }t          |t          t          f          rt          d          |S )Nz*parse_float must not return dicts or lists)r   rO   r   r   )r  float_valuer,   s     r   safe_parse_floatz/make_safe_parse_float.<locals>.safe_parse_float  s>    !k),,kD$<00 	KIJJJr   )r  r:   r.   r   )float)r,   r"  s   ` r   rB   rB     s;     e      r   )r-   r   r,   r   r.   r/   )r9   r:   r,   r   r.   r/   )rP   r:   rQ   r   r   r   r.   r   )rP   r:   rQ   r   r   r:   r   r   r   rq   r.   r   )rP   r:   rQ   r   r.   r   )rP   r:   rQ   r   rR   r?   r.   r   )rP   r:   rQ   r   rR   r?   rS   r   r,   r   r.   r   )rP   r:   rQ   r   r,   r   r.   r   )rP   r:   rQ   r   r.   r   )rP   r:   rQ   r   r.   r   )rP   r:   rQ   r   r,   r   r.   r   )rP   r:   rQ   r   r,   r   r.   r   )rP   r:   rQ   r   r   rq   r.   r   )rP   r:   rQ   r   r   ra   r.   r   )rP   r:   rQ   r   r   rq   r.   r   )rP   r:   rQ   r   r,   r   r.   r   )rP   r:   rQ   r   r  r:   r.   r%   )r  ra   r.   rq   )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   rD   r   ascii_lettersdigitsr   rF   	hexdigitsr   r   r   r%   r#  r8   r5   rA   r@   r?   rC   r   rM   r   rK   rJ   rG   r   r   r   r   r   r   r   r   r   r   r   r   r   rL   r   rB   r*   r   r   <module>r0     s  
 # " " " " " $ $ $ $ $ $  " " " " " " , , , , , , , , , ,                ) ( ( ( ( ( ( ( ( (Y11uuRyy11111IIcc#hh4G4GG
 %yy6 $.61B1B$B !3 &G #/ 
)E

		$/ 6/&-?$FGG"YYu%5%55 6+,, 0 0 
! 
! ; ; ; ; ;j ; ; ; 7< 	- 	- 	- 	- 	- 	- 27 ? ? ? ? ? ?D7 7 7 7 7 7 7 7t" " " " " " " "D    Z   
      ,	 	 	 	      $   *   D    , , , ,$M M M M 6 6 6 6
" " " "0, , , ,B .3M M M M M M:< < < <   ' ' ' '% % % %>   @A2 A2 A2 A2HA A A A"H H H H     r   