ó
    F\hŠX  ã            
      ó€  • 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     Ú&/usr/lib/python3.13/tomllib/_parser.pyÚ	<genexpr>r      s   é € Ð1¢y !”s˜1—v�v¢yùs   ‚é    é   Ú	z	
z 	Ú
z-_z"'ÚÚÚÚ"Ú\)z\bz\tz\nz\fz\rz\"z\\c                  ó   • \ rS rSrSrSrg)ÚTOMLDecodeErroré5   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ðØ�H‰H‹Jˆô
 �Ñ,Ð,øô	 ó ÜØ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 N¼f = 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)r8   r/   ÚsrcÚposÚoutÚheaderÚcharÚsecond_chars           r   r5   r5   E   s   € ð
 �)‰)�F˜DÓ
!€CØ
€CÜ
”“œu›wÓ
'€CØ€FÜ'¨Ó4€Kð ä˜¤7Ó+ˆð	Ø‘8ˆDð �4‹<Ø�1‰HˆCÙØÔ$Ó$Ü  ¨3¸ÓDˆCÜ˜S¤wÓ/‰CØ�S‹[ð#Ø*-°A©g©,�ð �I‰I×&Ñ&Ô(Ø˜cÓ!Ü.¨s¸Ó=‘��Vä.¨s¸Ó=‘�Ü˜S¤wÓ/‰CØ�S‹[Ü˜sÐ)<Ó=Ð=ô ˜3Ó$ˆð	Ø‘8ˆDð �4‹<ÜØÐQóð ð 	ˆq‰ˆña øô ó 	ØðF �8‰8�=‰=ÐðI	ûô ó #Ø"’ð#ûô" ó 	Øð �8‰8�=‰=Ðð	ú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   € Ø13ˆŒÜ47³EˆÕr-   c                ó<   • U R                   R                  X45        g r   )rZ   Ú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)rZ   rY   Úclearra   s      r   rH   ÚFlags.finalize_pending—   s6   € Ø×,Ô,‰IˆCØ�H‰H�S¨%ˆ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)rX   Úpop)r\   rb   ÚcontÚks       r   Ú	unset_allÚFlags.unset_allœ   sC   € Ø�{‰{ˆØ�S�b“ˆAØ‹}ÙØ‘7˜8Ñ$Š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 )Nrl   )rG   Úrecursive_flagsrm   rm   rt   rG   )rX   rY   r`   )r\   rb   rc   rh   ro   Ú
key_parentÚkey_stemrp   s           r   rY   Ú	Flags.set¤   s~   € Ø�{‰{ˆØ" 3 B˜x¨¨R©�HÛˆAØ‹}Ü$'£E¼c»eÈrÑR�‘Ø‘7˜8Ñ$ŠDñ ð ÓÜ'*£uÄÃÐRTÑUˆD‰NØ‰®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)NFrl   rt   Trm   rG   )rX   )r\   rb   rc   ro   rp   Ú
inner_contrv   s          r   Úis_Ú	Flags.is_¯   s   € ÞØØ�{‰{ˆØ�S�b“ˆAØ‹}ÙØ™ˆJØÐ"3Ñ4Ó4ÙØ˜hÑ'ŠDñ ð �r‘7ˆØÓØ‘>ˆDØ ™=Ñ(×K¨DÐ9JÑ4KÑ,KÐKØr-   )rX   rZ   N©ÚreturnÚNone)rb   r   rc   Úintr}   r~   ©rb   r   r}   r~   )rb   r   rc   r   rh   Úboolr}   r~   )rb   r   rc   r   r}   r�   )r'   r(   r)   r*   r+   ÚFROZENÚEXPLICIT_NESTr]   rd   rH   rq   rY   rz   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$ )Nrl   z There is no nest behind this key)rN   Ú
isinstanceÚlistÚKeyError)r\   rb   rŠ   ro   rp   s        r   Úget_or_create_nestÚNestedDict.get_or_create_nestÆ   sb   € ð —I‘IˆÛˆAØ‹}Ø�‘Ø‘7ˆDÞ¤
¨4´× 6Ñ 6Ø˜B‘x�Ü˜d¤D×)Ó)ÜÐ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 )Nrl   z/An object other than list found behind this key)r�   rŒ   r�   rŽ   Úappend)r\   rb   ro   Úlast_keyÚlist_s        r   Úappend_nest_to_listÚNestedDict.append_nest_to_list×   s\   € Ø×&Ñ& s¨3¨B xÓ0ˆØ�r‘7ˆØÓØ‘NˆEÜ˜e¤T×*Ñ*ÜÐPÓQÐQØ�L‰L˜Õà ˜TˆDŠNr-   r‡   Nr|   )rb   r   rŠ   r�   r}   údict[str, Any]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   )rO   rP   Úcharss      r   rB   rB   è   sF   € ðØ‰h˜%ÓØ�1‰HˆCð ‰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)rO   rP   ÚexpectÚerror_onÚerror_on_eofÚnew_poss         r   Ú
skip_untilr¦   ñ   s£   € ðOØ—)‘)˜FÓ(ˆð ×Ñ˜s wÐ/×0Ñ0Ø‰h˜hÓ&Ø�1‰HˆCð ‰h˜hÕ&ä˜3Ð'?ÀÁ¹|Ð%LÓMÐMØ€Nøô ó OÜ�c“(ˆÞÜ˜s¨y¸¹
Ð-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)rO   rP   rS   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   )rO   rP   Ú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 twiceFrg   úCannot overwrite a valueÚ]z.Expected ']' at the end of a table declaration)rB   rC   Ú	parse_keyrG   rz   r@   rƒ   r‚   rK   rY   rM   r�   rŽ   Ú
startswith©rO   rP   rQ   rb   s       r   rJ   rJ     sò   € Øˆ1�H€CÜ
�SœwÓ
'€CÜ˜Ó"�H€Cà
‡y�y‡}�}�Sœ%×-Ñ-×.Ñ.°#·)±)·-±-ÀÄUÇ\Á\×2RÑ2RÜ˜3 °s°e¸6Ð%BÓCÐCØ‡I�I‡M�M�#”u×*Ñ*°e€MÑ<ðKØ�‰×#Ñ# CÔ(ð �>‰>˜#˜s×#Ñ#Ü˜3Ð%UÓVÐVØ�‰7�Cˆ<Ðøô ó 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 Frg   r¯   z]]z0Expected ']]' at the end of an array declaration)rB   rC   r±   rG   rz   r@   r‚   rK   rq   rY   rƒ   rM   r•   rŽ   r²   r³   s       r   rI   rI   .  sé   € Øˆ1�H€CÜ
�SœwÓ
'€CÜ˜Ó"�H€Cà
‡y�y‡}�}�Sœ%Ÿ,™,×'Ñ'Ü˜3Ð'IÈ#ÈÐ%OÓPÐPà‡I�I×Ñ˜Ôà‡I�I‡M�M�#”u×*Ñ*°e€MÑ<ðKØ�‰×$Ñ$ SÔ)ð �>‰>˜$ ×$Ñ$Ü˜3Ð%WÓXÐXØ�‰7�Cˆ<Ðøô ó 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)	Nrl   c              3  ó4   >#   • U  H  nTTS U -   v •  M     g 7fr   r&   )r   r   rR   rb   s     €€r   r   Ú!key_value_rule.<locals>.<genexpr>J  s   øé € ÐLÒ9K°A˜v¨¨B¨Q¨Ö/Ò9Kùs   ƒr	   zCannot redefine namespace r¶   r¯   Trg   )Úparse_key_value_pairÚranger    rG   rz   r@   rƒ   rK   rd   r‚   rM   r�   rŽ   rŒ   rN   r�   rY   )rO   rP   rQ   rR   r/   Úvalueru   rv   Úabs_key_parentÚrelative_path_cont_keysÚcont_keyÚnestrb   s      `        @r   rF   rF   C  sb  ù€ ô +¨3°[ÓA�O€CˆˆeØ˜s ˜8 S¨¡W�Ø˜jÑ(€NåL¼¸qÄ#ÀcÃ(Ô9KÓLÐÛ+ˆà�9‰9�=‰=˜¤5×#6Ñ#6×7Ñ7Ü˜sÐ+EÀhÀZÐ)PÓQÐQð 	�	‰	×Ñ˜h¬×(;Ñ(;Ö<ñ ,ð ‡y�y‡}�}�^¤U§\¡\×2Ñ2ÜØÐ:¸>Ð:JÐKó
ð 	
ðKØ�x‰x×*Ñ*¨>Ó:ˆð ÓÜ˜3Ð%?Ó@Ð@ä�%œ$¤˜×&Ñ&Ø�	‰	�‰�f˜s‘l¤E§L¡L¸DˆÑ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)rO   rP   r/   rb   rS   r¼   s         r   rº   rº   e  sv   € ô ˜Ó"�H€CðØ™8ˆð ˆsƒ{Ü˜3Ð%SÓTÐTØˆ1�H€CÜ
�SœwÓ
'€CÜ˜S {Ó3�J€CØ�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   )rO   rP   Úkey_partrb   rS   s        r   r±   r±   u  s’   € Ü" 3Ó,�M€CØˆ{€CÜ
�SœwÓ
'€CØ
ð	Ø"™xˆDð �3‹;Ø�8ˆOØˆ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   )rO   rP   rS   Ú	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©rO   rP   s     r   rÌ   rÌ   —  s   € Øˆ1�H€CÜ˜3¨uÑ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   )rO   rP   r/   ÚarrayÚvalÚcs         r   Úparse_arrayrØ   œ  sÏ   € Øˆ1�H€CØ€Eä
$ SÓ
.€CØ
‡~�~�c˜3×ÑØ�Q‰w˜ˆ~ÐØ
Ü˜s¨Ó5‰ˆØ�‰�SÔÜ(¨Ó2ˆà�c˜A‘gÐˆØ�‹8Ø˜‘7˜E�>Ð!Ø�‹8Ü˜sÐ)9Ó:Ð:Øˆq‰ˆä(¨Ó2ˆØ�>‰>˜#˜s×#Ñ#Ø˜‘7˜E�>Ð!ñ 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   p‡U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	   Ú}Trl   r¶   Fr‰   r¯   zDuplicate inline table key rÔ   zUnclosed inline tablerg   )r?   r@   rB   rC   r²   rN   rº   rz   r‚   rK   r�   rŽ   rŒ   r�   rY   )rO   rP   r/   Únested_dictrG   rb   r¼   ru   rv   rÀ   r×   s              r   Úparse_inline_tablerÜ   ´  s‡  € Øˆ1�H€CÜ“,€KÜ‹G€Eä
�SœwÓ
'€CØ
‡~�~�c˜3×ÑØ�Q‰w˜×(Ñ(Ð(Ð(Ø
Ü.¨s¸ÓE‰ˆ�%Ø" 3 B˜x¨¨R©�HØ�9‰9�Sœ%Ÿ,™,×'Ñ'Ü˜sÐ+MÈcÈUÐ)SÓTÐTð	OØ×1Ñ1°*È5Ð1ÐQˆDð ÓÜ˜sÐ+FÀxÁlÐ)SÓTÐTØˆX‰Ü˜¤7Ó+ˆØ�c˜A‘gÐˆØ�‹8Ø˜‘7˜K×,Ñ,Ð,Ð,Ø�‹8Ü˜sÐ)@ÓAÐAÜ�eœd¤D˜\×*Ñ*Ø�I‰I�cœ5Ÿ<™<°4ˆIÑ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Ž   )rO   rP   rÐ   Ú	escape_idrS   s        r   Úparse_basic_str_escaperç   Ô  sû   € ð ˜# ™'Ð"€IØˆ1�H€CÞ�YÐ"9Ó9ð ˜ÓÜ˜S¤wÓ/ˆCðØ‘x�ð �t‹|Ü" 3Ð-IÓJÐJØ�1‰HˆCÜ˜Ô#6Ó7ˆØ�BˆwˆØ�EÓÜ˜c¨Ó*Ð*Ø�EÓÜ˜c¨Ó*Ð*ðMØÔ1°)Ñ<Ð<Ð<øô ó Ø˜B�w’ðûô ó 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   )rO   rP   Úhex_lenÚhex_strÚhex_ints        r   rä   rä   õ  ss   € Ø˜™Ð&€GÜ
ˆ7ƒ|�wÓ¤n×&?Ñ&?À×&HÑ&HÜ˜3Ð%8Ó9Ð9Ø�N€CÜ�'˜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)rO   rP   rÍ   s      r   rË   rË      s:   € Øˆ1�H€CØ€IÜ
Ø�#Ô 9Èñ€Cð �‰7�C #Ð&Ð&Ð&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Ñ   )rO   rP   ÚliteralÚdelimÚend_posÚresults         r   Úparse_multiline_strrü   	  sÇ   € Øˆ1�H€CØ
‡~�~�d˜C× Ñ Øˆq‰ˆæØˆÜØØØÜ8Øñ
ˆð ˜Ð!ˆØ˜‰k‰àˆÜ% c¸$Ñ?‰ˆð �>‰>˜%×%Ñ%Øˆ{ÐØˆ1�H€CØ�>‰>˜%×%Ñ%Ø˜U‘NÐ"Ð"Øˆ1�H€CØ˜% !™)Ñ$Ð$Ð$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²   )	rO   rP   rÐ   r£   Úparse_escapesrû   rÍ   rS   Úparsed_escapes	            r   rÑ   rÑ   (  s  € ÞÜ4ˆÜ8‰ä*ˆÜ.ˆØ€FØ€IØ
ð	JØ‘8ˆDð �3‹;ÞØ˜Q‘w ¨YÐ);Ñ ;Ð;Ð;Ø�~‰~˜e S×)Ñ)Ø˜Q‘w ¨YÐ);Ñ ;Ð;Ð;Ø�1‰HˆCÙØ�4‹<Ø˜)Ð(Ñ(ˆFÙ!.¨sÓ!8ÑˆCØÑ#ˆFØˆIÙØÓÜ˜sÐ+=¸d¹XÐ)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       [!        X‚5      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NÊf = 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   )rO   rP   r/   rS   Ú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ƒ{Ø�>‰>˜& #×&Ñ&Ø˜‘7˜D�=Ð Øˆsƒ{Ø�>‰>˜' 3×'Ñ'Ø˜‘7˜E�>Ð!ð ˆsƒ{Ü˜3 [Ó1Ð1ð ˆsƒ{Ü! #¨KÓ8Ð8ô !×&Ò& sÓ0€NÞð	LÜ,¨^Ó<ˆLð ×!Ñ!Ó# \Ð1Ð1Ü"×(Ò(¨Ó2€OÞØ×"Ñ"Ó$Ô&8¸Ó&IÐIÐIô
 —?’? 3Ó,€LÞØ×ÑÓ!¤?°<Ó#MÐMÐMð ˜C !™GÐ$€KØ�nÓ$Ø�Q‰w™ KÓ0Ð0Ð0Ø˜3 ™7Ð#€JØÐ5Ó5Ø�Q‰w™ JÓ/Ð/Ð/ä
�s Ó
1Ð1øôy ó Ø‹ðûô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)rO   rP   ÚlineÚcolumns       r   Ú
coord_reprÚ suffixed_err.<locals>.coord_repr�  s_   € Ø”#�c“(‹?Ø$Ø�y‰y˜˜q #Ó&¨Ñ*ˆØ�1‹9Ø˜1‘W‰FàŸ:™: d¨A¨sÓ3Ñ3ˆFØ�t�f˜I f XÐ.Ð.r-   z (at Ú))rO   ÚstrrP   r   r}   r"  )r$   )rO   rP   Úmsgr  s       r   rK   rK   Œ  s'   € ô/ô ˜c˜U %©
°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Ó)F¸wÑ)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   ø€ Ù! )Ó,ˆÜ�k¤D¬$ <×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}   r—   )r8   r"  r/   r   r}   r—   )rO   r"  rP   r   rœ   zIterable[str]r}   r   )rO   r"  rP   r   r¢   r"  r£   zfrozenset[str]r¤   r�   r}   r   )rO   r"  rP   r   r}   r   )rO   r"  rP   r   rQ   r>   r}   útuple[Pos, Key])rO   r"  rP   r   rQ   r>   rR   r   r/   r   r}   r   )rO   r"  rP   r   r/   r   r}   ztuple[Pos, Key, Any])rO   r"  rP   r   r}   r-  )rO   r"  rP   r   r}   útuple[Pos, str])rO   r"  rP   r   r/   r   r}   ztuple[Pos, list[Any]])rO   r"  rP   r   r/   r   r}   ztuple[Pos, dict[str, Any]])rO   r"  rP   r   rÐ   r�   r}   r.  )rO   r"  rP   r   rï   r   r}   r.  )rO   r"  rP   r   rø   r�   r}   r.  )rO   r"  rP   r   r/   r   r}   ztuple[Pos, Any])rO   r"  rP   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�  ðõ
 #å $Û Ý "ß ,Ñ ,÷÷ ÷ )Ñ (áÑ1¡u¨R¤yÓ1Ó1±I¹cÀ#»hÓ4GÑG€
ð %¡y°£Ñ6Ð Ø$.±¸6Ó1BÑ$BÐ !à3Ð Ø&GÐ #à/Ð á
�EÓ
€Ø¡	¨$£Ñ/Ð Ù˜6×/Ñ/°&·-±-Ñ?À$ÑFÓG€Ø"¡Y¨uÓ%5Ñ5Ð Ù˜6×+Ñ+Ó,€á 0àØØØØØØñó
!Ð ô;�jô ;ð 8=÷ 	-ð 38÷ ?÷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2ôHAô"Hõr-   