U .e) @sddlmZddlZddlZddlZddlZddlZddlmZzddl m Z Wne k rhdZ YnXej ddkreZeZdd d Zd d d dddddZddZejejdZddZddZdddZdS))unicode_literalsN)format_rfc3339)PurePathFcCst}t|||d|S)N) sort_keys)ioStringIOdumpgetvalue)objrfoutrr=/usr/lib/python3.8/site-packages/pip/_vendor/pytoml/writer.pydumpssrnr\tbf")  r  rcsgdfdd}dtkr}|dkrT|dt|n$t|dkrx|dt|d7q|d d d S) Nrcs"krdS)Nr)appendriressstartrrflushsz_escape_string..flushz"\  r z\u%04xrr)lenr_escapesordjoin)r!r#crrr_escape_strings   r+z-_cCstdd|Drt|S|S)Ncss|]}|tkVqdSN) _key_chars.0r*rrr 4sz_escape_id..)anyr+)r!rrr _escape_id3sr2cCs t|tr|rdSdSt|ts*t|tr2t|St|trjt|sPt|r`t d |nt |Snt|ts~t|t rt |St|tjrt|St|trd ddd|DSt|trd dd d|DSt|trt t|St|dS) NtrueZfalsez{0} is not a valid TOML valuez[{0}]z, css|]}t|VqdSr,) _format_value)r/r rrrr0Hsz _format_value..z{{{0}}}css&|]\}}dt|t|VqdS)z{} = {}N)formatr2r4)r/kr rrrr0Js) isinstanceboolintlongunicodefloatmathZisnanZisinf ValueErrorr5reprbytesr+datetimerlistr)dictitems _path_typesstr RuntimeError)vrrrr49s&         r4c s\d|dfg}|rX|\}}r^dddD}|rN|d|n|d||rnt|n|}g}d} |D]|} t| tr|f| dfqt| t r| rt dd| Dr| fd d| Dq| dkr|d t d } q|d t t | d } q| t|sH| r |r |d q dS)NrF.css|]}t|VqdSr,)r2r.rrrr0Wszdump..z[[{0}]] z[{0}] css|]}t|tVqdSr,)r7rC)r/orrrr0dsc3s|]}f|dfVqdS)TNr)r/dr6namerrr0esz<#{} = null # To use: uncomment and replace null with value Tz {0} = {1} r)popr)writer5sortedkeysr7rCrrBallextendr2r4reversed) r rrZtablestableZis_arrayZ section_nameZ table_keysZ new_tablesZhas_kvrHrrLrr Qs6     r )F)F)Z __future__rr rAr=stringsysZutilsrpathlibrrE ImportError version_infor9r:rFr;rr'r+ZdigitsZ ascii_lettersr-r2r4r rrrrs (