+
    hiX                       ^ RI Ht ^ RIHt ^ RIt^ RIHt ^ RIHtH	t	H
t
 ^RIHtHtHtHtHtHt ^RIHtHtHt ]! R ]! ^ 4       4       4      ]! ]! ^4      4      ,          t]]! R	4      ,
          t]]! R
4      ,
          t]t]t]t]! R4      t]]! R4      ,          t ]! ]PB                  ]PD                  ,           R,           4      t#]#]! R4      ,          t$]! ]PJ                  4      t&]! RRRR	RRRRRRRRRR/4      t' ! R R](4      t)R]*/R R llt+R]*/R  R! llt, ! R" R#4      t- ! R$ R%4      t. ! R& R']
4      t/R( R) lt0R* R+ lt1R, R- lt2R. R/ lt3R0 R1 lt4R2 R3 lt5R4 R5 lt6R6 R7 lt7R8 R9 lt8R: R; lt9R< R= lt:R> R? lt;R@ RA lt<RBRC/RD RE llt=RF RG lt>RH RI lt?RJ RK lt@RL RM ltARN RO ltBRP RQ ltCRR RS ltDRT RU ltERV RW ltFR# )X    )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   "   T F  p\        V4      x  K  	  R # 5iN)chr).0is   & B/usr/lib/python3/dist-packages/setuptools/_vendor/tomli/_parser.py	<genexpr>r      s     1y!s1vvys   	z	
z 	
z-_z"'z\bz\tz\nz\fz\rz\""z\\\c                      ] tR t^5tRtRtR# )TOMLDecodeErrorz0An 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               $    V ^8  d   QhRRRRRR/# )   __fpr   r*   r   returndict[str, Any]r"   )formats   "r   __annotate__r1   9   s!     	- 	-x 	- 	- 	-r)   c                   V P                  4       p VP                  4       p\	        Y1R7      #   \         d    \        R4      Rhi ; i)z%Parse TOML from a binary file object.zEFile must be opened in binary mode, e.g. use `open('foo.toml', 'rb')`N)r*   )readdecodeAttributeError	TypeErrorloads)r-   r*   bss   &$  r   loadr:   9   sN    		AHHJ
 ,,	  S
	s	   . Ac               $    V ^8  d   QhRRRRRR/# )r,   __sstrr*   r   r.   r/   r"   )r0   s   "r   r1   r1   E   s!     ? ?s ?J ?> ?r)   c               <   V P                  RR4      p^ p\        \        4       \        4       4      pRp\	        V4      p \        W#\        4      p W#,          pTR8X  d   T^,          pK,  T\        9   d   \        Y#YET4      p\        Y#\        4      pMyTR8X  d`    Y#^,           ,          pTP                  P                  4        TR8X  d   \        Y#T4      w  r5M\        Y#T4      w  r5\        Y#\        4      pMTR8w  d   \        Y#R4      h\        Y#4      p Y#,          pTR8w  d   \        Y#R4      hT^,          pEK    \         d     TP                   P"                  # i ; i  \         d    Rp Li ; i  \         d     TP                   P"                  # i ; i)	zParse TOML from a string.z
r   [N#zInvalid statementz5Expected newline or end of document after a statementr"   )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)r<   r*   srcposoutheadercharsecond_chars   &$      r   r7   r7   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E  	F 88==I	  #"#"  	 88==	s6   D? E% E8 ?E"!E"%E54E58FFc                  j    ] tR t^tRt^ t^tR R ltR R ltR R lt	R R	 lt
R
 R ltR R ltRtR# )rD   z)Flags that map to parsed keys/namespaces.c                   V ^8  d   QhRR/# r,   r.   Noner"   )r0   s   "r   r1   Flags.__annotate__   s     : :$ :r)   c                	2    / V n         \        4       V n        R # r   )_flagsset_pending_flagsselfs   &r   __init__Flags.__init__   s    ')47Er)   c               $    V ^8  d   QhRRRRRR/# )r,   keyr   flagintr.   r\   r"   )r0   s   "r   r1   r]      s!     - -s -# -$ -r)   c                	>    V P                   P                  W34       R # r   )ra   addrc   rg   rh   s   &&&r   add_pendingFlags.add_pending   s    ,r)   c                   V ^8  d   QhRR/# r[   r"   )r0   s   "r   r1   r]      s     $ $$ $r)   c                	    V P                    F  w  rV P                  WR R7       K  	  V P                   P                  4        R# )F	recursiveN)ra   r`   clearrl   s   &  r   rL   Flags.finalize_pending   s6    ,,ICHHS%H0 -!!#r)   c                    V ^8  d   QhRRRR/# r,   rg   r   r.   r\   r"   )r0   s   "r   r1   r]      s        S  T  r)   c                	    V P                   pVR R  F  pW29  d    R # W#,          R,          pK  	  VP                  VR,          R 4       R # )Nnested)r_   pop)rc   rg   contks   &&  r   	unset_allFlags.unset_all   sC    {{SbA}78$D  	R$r)   c               (    V ^8  d   QhRRRRRRRR/# )	r,   rg   r   rh   ri   rr   boolr.   r\   r"   )r0   s   "r   r1   r]      s.     	N 	Ns 	N# 	NT 	Nd 	Nr)   c               	8   V P                   pVR R VR,          reV F2  pWt9  d   R\        4       R\        4       R/ /WG&   WG,          R,          pK4  	  Wd9  d   R\        4       R\        4       R/ /WF&   WF,          V'       d   RMR,          P                  V4       R # )NrK   recursive_flagsrx   ry   )r_   r`   rk   )rc   rg   rh   rr   r{   
key_parentkey_stemr|   s   &&&$    r   r`   	Flags.set   s    {{"3BxRHA}"CE+<ceXrR78$D  %su.?RTUDNI(7CGGMr)   c               $    V ^8  d   QhRRRRRR/# )r,   rg   r   rh   ri   r.   r   r"   )r0   s   "r   r1   r]      s!      s # $ r)   c                	   V'       g   R # V P                   pVRR  F-  pWC9  d    R # W4,          pW%R,          9   d    R# VR,          pK/  	  VR,          pWc9   d'   W6,          pW#R,          9   ;'       g    W#R,          9   # R # )FNr   Trx   rK   ry   )r_   )rc   rg   rh   r{   r|   
inner_contr   s   &&&    r   is_	Flags.is_   s    {{SbA}J"344h'D  r7>D=(KKD9J4K,KKr)   )r_   ra   N)r#   r$   r%   r&   r'   FROZENEXPLICIT_NESTrd   rm   rL   r}   r`   r   r(   r"   r)   r   rD   rD      s7    3 F M:-$
 	N r)   rD   c                  B    ] tR t^tR R ltRR/R R lltR R ltR	tR
# )rC   c                   V ^8  d   QhRR/# r[   r"   )r0   s   "r   r1   NestedDict.__annotate__   s     ' '$ 'r)   c                	    / V n         R # r   rR   rb   s   &r   rd   NestedDict.__init__   s	    $&	r)   access_listsTc               $    V ^8  d   QhRRRRRR/# )r,   rg   r   r   r   r.   rR   r"   )r0   s   "r   r1   r      s(       	
 
r)   c               	    V P                   pV F]  pWC9  d   / W4&   W4,          pV'       d    \        V\        4      '       d
   VR,          p\        V\         4      '       d   KT  \        R4      h	  V# )   z There is no nest behind this keyry   )rR   
isinstancelistKeyError)rc   rg   r   r{   r|   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                    V ^8  d   QhRRRR/# rv   r"   )r0   s   "r   r1   r      s     	" 	"s 	"t 	"r)   c                	    V P                  VR R 4      pVR,          pW29   d=   W#,          p\        V\        4      '       g   \        R4      hVP	                  / 4       R # / .W#&   R # )Nz/An object other than list found behind this keyry   )r   r   r   r   append)rc   rg   r{   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   N)r#   r$   r%   r&   rd   r   r   r(   r"   r)   r   rC   rC      s     ' "	"	" 	"r)   rC   c                  ,    ] tR t^t$ R]R&   R]R&   RtR# )rB   rC   rQ   rD   rK   r"   N)r#   r$   r%   r&   __annotations__r(   r"   r)   r   rB   rB      s    
Lr)   rB   c               (    V ^8  d   QhRRRRRRRR/# )r,   rS   r=   rT   r   charszIterable[str]r.   r"   )r0   s   "r   r1   r1      s(      C c - C r)   c                ^     W,          V9   d   V^,          pK   V#   \          d     T# i ; i)r   )rH   )rS   rT   r   s   &&&r   rF   rF      s?    h%1HC   J  Js    ,,c               0    V ^8  d   QhRRRRRRRRRR	R
R/# )r,   rS   r=   rT   r   expecterror_onzfrozenset[str]error_on_eofr   r.   r"   )r0   s   "r   r1   r1      sD      		 
   	r)   c               "    V P                  W!4      pVP	                  WV 4      '       g/   W,          V9  d   V^,          pK  \        WRW,          : 24      hV#   \         d(    \        T 4      pT'       d   \        YR T: 24      Rh Lzi ; i)z	Expected NzFound invalid character )index
ValueErrorlenrO   
isdisjoint)rS   rT   r   r   r   new_poss   &&&$$ r   
skip_untilr      s    O))F( sw/00hh&1HC3'?|%LMMN  Oc(sy
-CD$N Os   A /BBc               $    V ^8  d   QhRRRRRR/# r,   rS   r=   rT   r   r.   r"   )r0   s   "r   r1   r1     s!     	 	c 	 	 	r)   c                     W,          pVR8X  d   \        W^,           R\        RR7      # V#   \          d    R p L2i ; i)Nr@   r   Fr   r   )rH   r   ILLEGAL_COMMENT_CHARS)rS   rT   rW   s   && r   rP   rP     sO    8 s{q$)>U
 	
 J  s   - ==c               $    V ^8  d   QhRRRRRR/# r   r"   )r0   s   "r   r1   r1     s!      C c c r)   c                R     Tp\        W\        4      p\        W4      pW8X  g   K&  V# )T)rF   TOML_WS_AND_NEWLINErP   )rS   rT   pos_before_skips   && r   skip_comments_and_array_wsr     s,    
#673$!Jr)   c               (    V ^8  d   QhRRRRRRRR/# 	r,   rS   r=   rT   r   rU   rB   r.   tuple[Pos, Key]r"   )r0   s   "r   r1   r1     s(      # C f  r)   c                T   V^,          p\        W\        4      p\        W4      w  rVP                  P	                  V\
        P                  4      '       g1   VP                  P	                  V\
        P                  4      '       d   \        WRV R24      hVP                  P                  V\
        P                  RR7        VP                  P                  V4       T P                  RT4      '       g   \        YR4      hT^,           T3#   \         d    \        YR4      Rhi ; i)	r   zCannot declare z twiceFrq   Cannot overwrite a valueN]z.Expected ']' at the end of a table declaration)rF   rG   	parse_keyrK   r   rD   r   r   rO   r`   rQ   r   r   
startswithrS   rT   rU   rg   s   &&& r   rN   rN     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               (    V ^8  d   QhRRRRRRRR/# r   r"   )r0   s   "r   r1   r1   .  s(      # C f  r)   c                (   V^,          p\        W\        4      p\        W4      w  rVP                  P	                  V\
        P                  4      '       d   \        WRV 24      hVP                  P                  V4       VP                  P                  V\
        P                  RR7        VP                  P                  V4       T P                  RT4      '       g   \        YR4      hT^,           T3#   \         d    \        YR4      Rhi ; i)r,   "Cannot mutate immutable namespace Frq   r   Nz]]z0Expected ']]' at the end of an array declaration)rF   rG   r   rK   r   rD   r   rO   r}   r`   r   rQ   r   r   r   r   s   &&& r   rM   rM   .  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   .C8 8Dc               0    V ^8  d   QhRRRRRRRRR	R
RR/# )r,   rS   r=   rT   r   rU   rB   rV   r   r*   r   r.   r"   )r0   s   "r   r1   r1   C  s<      	#-0?Ir)   c                2  aa \        WV4      w  popSR R SR,          rvSV,           pVV3R l\        ^\        S4      4       4       p	V	 Fl  p
VP                  P	                  V
\
        P                  4      '       d   \        WRV
 24      hVP                  P                  V
\
        P                  4       Kn  	  VP                  P	                  V\
        P                  4      '       d   \        WRV 24      h VP                  P                  V4      pY{9   d   \        YR4      h\        T\        \        34      '       d4   TP                  P!                  SS,           \
        P                  RR7       Y[T&   T#   \         d    \        YR4      R hi ; i)Nc              3  <   <"   T F  pSSR V ,           x  K  	  R # 5ir   r"   )r   r   rV   rg   s   & r   r   !key_value_rule.<locals>.<genexpr>J  s!     L9KAvBQ//9Ks   zCannot redefine namespace r   r   Trq   ry   )parse_key_value_pairranger   rK   r   rD   r   rO   rm   r   rQ   r   r   r   rR   r   r`   )rS   rT   rU   rV   r*   valuer   r   abs_key_parentrelative_path_cont_keyscont_keynestrg   s   &&&f&       @r   rJ   rJ   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   ;E= =Fc               (    V ^8  d   QhRRRRRRRR/# )	r,   rS   r=   rT   r   r*   r   r.   ztuple[Pos, Key, Any]r"   )r0   s   "r   r1   r1   e  s,      	%/r)   c                    \        W4      w  r W,          pVR8w  d   \        WR4      hV^,          p\        W\        4      p\        WV4      w  rWV3#   \         d    R p LMi ; i)N=z,Expected '=' after a key in a key/value pair)r   rH   rO   rF   rG   parse_value)rS   rT   r*   rg   rW   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               $    V ^8  d   QhRRRRRR/# )r,   rS   r=   rT   r   r.   r   r"   )r0   s   "r   r1   r1   u  s!     , ,3 ,S ,_ ,r)   c                   \        W4      w  rV3p\        W\        4      p  W,          pVR8w  d   W3# V^,          p\        W\        4      p\        W4      w  rW23,          p\        W\        4      pKU    \         d    Rp LZi ; i)TN.)parse_key_partrF   rG   rH   )rS   rT   key_partrg   rW   s   &&   r   r   r   u  s    "3,MC{C
Sw
'C
	"xD 3;8Oq7+&s0{7+  	D	s   A6 6BBc               $    V ^8  d   QhRRRRRR/# r,   rS   r=   rT   r   r.   tuple[Pos, str]r"   )r0   s   "r   r1   r1     s&     M M M# M/ Mr)   c                     W,          pV\        9   d   Tp\        W\        4      pWW1 3# VR8X  d   \        W4      # VR8X  d   \	        W4      # \        WR4      h  \          d    R p Lai ; i)N'r   z(Invalid initial character for a key part)rH   BARE_KEY_CHARSrF   parse_literal_strparse_one_line_basic_strrO   )rS   rT   rW   	start_poss   &&  r   r   r     s    8 ~	>2	&&&s{ **s{'11
s!K
LL  s   A A,+A,c               $    V ^8  d   QhRRRRRR/# r   r"   )r0   s   "r   r1   r1     s!     6 6# 6C 6O 6r)   c                .    V^,          p\        WRR7      # )r   F	multiline)parse_basic_strrS   rT   s   &&r   r   r     s    1HC3u55r)   c               (    V ^8  d   QhRRRRRRRR/# )	r,   rS   r=   rT   r   r*   r   r.   ztuple[Pos, list]r"   )r0   s   "r   r1   r1     s)     " "S "s " "@P "r)   c                   V^,          p. p\        W4      pV P                  RV4      '       d   V^,           V3#  \        WV4      w  rVP                  V4       \        W4      pWV^,            pVR8X  d   V^,           V3# VR8w  d   \	        WR4      hV^,          p\        W4      pV P                  RV4      '       g   K  V^,           V3# )r   r   ,zUnclosed array)r   r   r   r   rO   )rS   rT   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               (    V ^8  d   QhRRRRRRRR/# )	r,   rS   r=   rT   r   r*   r   r.   ztuple[Pos, dict]r"   )r0   s   "r   r1   r1     s)     , ,C ,c ,
 ,GW ,r)   c                6   V^,          p\        4       p\        4       p\        W\        4      pV P	                  RV4      '       d   V^,           VP
                  3#  \        WV4      w  rpVRR VR,          rVP                  V\        P                  4      '       d   \        WRV 24      h VP                  VRR7      p	Y9   d   \        YRT: 24      hYiT&   \        Y\        4      pYT^,            p
T
R8X  d   T^,           TP
                  3# T
R	8w  d   \        YR
4      h\        T\
        \        34      '       d#   TP                  T\        P                  RR7       T^,          p\        Y\        4      pEK$    \         d    \        YR4      Rhi ; i)r   }TNr   F)r   r   zDuplicate inline table key r   zUnclosed inline tablerq   ry   )rC   rD   rF   rG   r   rR   r   r   r   rO   r   r   r   r   r`   )rS   rT   r*   nested_dictrK   rg   r   r   r   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? ?Fr   Fc               (    V ^8  d   QhRRRRRRRR/# 	r,   rS   r=   rT   r   r   r   r.   r   r"   )r0   s   "r   r1   r1     s2     M M	MM&*MMr)   c                  WV^,            pV^,          pV'       dX   VR9   dQ   VR8w  d6   \        W\        4      p W,          pTR8w  d   \        YR4      hT^,          p\        W\        4      pVR3# VR8X  d   \        W^4      # VR8X  d   \        W^4      #  V\        V,          3#   \         d    TR3u # i ; i  \         d    \        YR4      Rhi ; i)	r,   \
 r   zUnescaped '\' in a stringz\uz\UN>   \	r   \ )rF   rG   rH   rO   r   parse_hex_charBASIC_STR_ESCAPE_REPLACEMENTSr   )rS   rT   r   	escape_idrW   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<?Cc               $    V ^8  d   QhRRRRRR/# r   r"   )r0   s   "r   r1   r1     s!     < <# <C <O <r)   c                    \        WR R7      # )Tr   )r  r   s   &&r    parse_basic_str_escape_multiliner    s    !#d;;r)   c               (    V ^8  d   QhRRRRRRRR/# )	r,   rS   r=   rT   r   hex_lenri   r.   r   r"   )r0   s   "r   r1   r1     s(       #   r)   c                    WW,            p\        V4      V8w  g   \        P                  V4      '       g   \        WR 4      hW,          p\	        V^4      p\        V4      '       g   \        WR4      hV\        V4      3# )zInvalid hex valuez/Escaped character is not a Unicode scalar value)r   HEXDIGIT_CHARS
issupersetrO   ri   is_unicode_scalar_valuer   )rS   rT   r  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               $    V ^8  d   QhRRRRRR/# r   r"   )r0   s   "r   r1   r1      s!     ' '3 'S '_ 'r)   c                X    V^,          pTp\        WR\        RR7      pV^,           WV 3# )r   r   Tr   )r   ILLEGAL_LITERAL_STR_CHARS)rS   rT   r   s   && r   r   r      s:    1HCI
# 9C 7C#&&&r)   c               (    V ^8  d   QhRRRRRRRR/# )	r,   rS   r=   rT   r   literalr   r.   r   r"   )r0   s   "r   r1   r1   	  s(     % %S %s % % %r)   c                  V^,          pV P                  RV4      '       d
   V^,          pV'       d%   Rp\        V VR\        RR7      pWV pV^,           pMRp\        WRR7      w  rV P                  W14      '       g   W3# V^,          pV P                  W14      '       g   WV,           3# V^,          pWV^,          ,           3# )   r   r   '''Tr   r   r   )r   r   #ILLEGAL_MULTILINE_LITERAL_STR_CHARSr   )rS   rT   r  delimend_posresults   &&$   r   parse_multiline_strr  	  s    1HC
~~dC  q8
 !k%c$? >>%%%{1HC>>%%%UN""1HC%!)$$$r)   c               (    V ^8  d   QhRRRRRRRR/# r   r"   )r0   s   "r   r1   r1   (  s(       3 d  r)   c                  V'       d   \         p\        pM\        p\        pR pTp  W,          pTR8X  dR   T'       g   T^,           YPYa ,           3# T P                  RT4      '       d   T^,           YPYa ,           3# T^,          pKb  TR8X  d!   YPYa ,          pT! Y4      w  rYX,          pTpK  Ys9   d   \        YRT: 24      hT^,          pK    \         d    \        YR4      Rhi ; i)r   zUnterminated stringNr   """r   zIllegal character )!ILLEGAL_MULTILINE_BASIC_STR_CHARSr  ILLEGAL_BASIC_STR_CHARSr  rH   rO   r   )	rS   rT   r   r   parse_escapesr  r   rW   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   C C)c               (    V ^8  d   QhRRRRRRRR/# )	r,   rS   r=   rT   r   r*   r   r.   ztuple[Pos, Any]r"   )r0   s   "r   r1   r1   H  s2     A2 A2	A2A2%/A2A2r)   c                L    W,          pVR8X  d1   V P                  RV4      '       d   \        WRR7      # \        W4      # VR8X  d1   V P                  RV4      '       d   \        WRR7      # \	        W4      # VR8X  d$   V P                  R	V4      '       d   V^,           R3# VR
8X  d$   V P                  RV4      '       d   V^,           R3# VR8X  d   \        WV4      # VR8X  d   \        WV4      # \        P                  ! W4      pV'       d    \        V4      pTP                  4       T3# \        P                  ! W4      pV'       d   VP                  4       \        V4      3# \        P                  ! W4      pV'       d   VP                  4       \!        W4      3# WV^,            p	V	R9   d   V^,           V! V	4      3# WV^,            p
V
R9   d   V^,           V! V
4      3# \        WR4      h  \          d    R p ELi ; i  \         d   p\        YR4      ThR p?ii ; i)Nr   r  F)r  r   r  Tttrueffalser?   {zInvalid date or datetimezInvalid value>   infnan>   +inf+nan-inf-nan)rH   r   r  r   r   r   r   r	   matchr   r   rO   endr
   r   r   r   )rS   rT   r*   rW   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)   G2 H 2HHH#HH#c               (    V ^8  d   QhRRRRRRRR/# )r,   rS   r=   rT   r   msgr.   r!   r"   )r0   s   "r   r1   r1     s.     A Ac A A# A/ Ar)   c                <    R R lp\        V RV! W4       R24      # )zVReturn a `TOMLDecodeError` where error message is suffixed with
coordinates in source.c               $    V ^8  d   QhRRRRRR/# r   r"   )r0   s   "r   r1   "suffixed_err.<locals>.__annotate__  s!     / / /# /# /r)   c                    V\        V 4      8  d   R # V P                  R^ V4      ^,           pV^8X  d   V^,           pMWP                  R^ V4      ,
          pRV RV 2# )zend of documentr   zline z	, column )r   countrindex)rS   rT   linecolumns   &&  r   
coord_repr suffixed_err.<locals>.coord_repr  s_    #c(?$yyq#&*191WF::dAs33FtfIfX..r)   z (at ))r!   )rS   rT   r9  rB  s   &&& r   rO   rO     s'    / cU%
3(<'=Q?@@r)   c                    V ^8  d   QhRRRR/# )r,   	codepointri   r.   r   r"   )r0   s   "r   r1   r1     s     H Hs Ht Hr)   c                j    ^ T u;8*  ;'       d    R8*  Mu ;'       g    RT u;8*  ;'       d    R8*  # u # )r   i  i   i r"   )rF  s   &r   r  r    s0    ##e#GG))F)Fw)FG)FGr)   c                    V ^8  d   QhRRRR/# )r,   r*   r   r.   r"   )r0   s   "r   r1   r1     s      z j r)   c                :   a  S \         J d   \         # R V 3R llpV# )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                    V ^8  d   QhRRRR/# )r,   	float_strr=   r.   r   r"   )r0   s   "r   r1   +make_safe_parse_float.<locals>.__annotate__  s      C C r)   c                f   < S! V 4      p\        V\        \        34      '       d   \        R 4      hV# )z*parse_float must not return dicts or lists)r   rR   r   r   )rK  float_valuer*   s   & r   safe_parse_float/make_safe_parse_float.<locals>.safe_parse_float  s0    !),kD$<00IJJr)   )float)r*   rO  s   f r   rE   rE     s$     e  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   rG   r   ascii_lettersdigitsr   rI   	hexdigitsr	  r   r   r!   rQ  r:   r7   rD   rC   rB   rF   r   rP   r   rN   rM   rJ   r   r   r   r   r   r   r  r  r   r   r  r   r   rO   r  rE   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xxxxxx
! ;j ;	-e 	-? ?D7 7t" "DZ 
,	$*D ,$M 6
"0,@M-2M:<'%>@A2HA"Hr)   