U ��.e) �@s�ddlmZddlZddlZddlZddlZddlZddlmZzddl m Z Wne k rhdZ YnXej ddkr�eZeZdd d �Zd d d ddddd�Zdd�ZejejdZdd�Zdd�Zddd�ZdS)�)�unicode_literalsN�)�format_rfc3339)�PurePath��FcCst��}t|||d�|��S)N)� sort_keys)�io�StringIO�dump�getvalue)�objr�foutrr�=/usr/lib/python3.8/site-packages/pip/_vendor/pytoml/writer.py�dumpssr�n�r�\�t�b�f�")� � r� �� rcs�g�d�����fdd�}d��t��kr���}|dkrT|����dt|�n$t|�dkrx|����dt|���d7�q|�d d ���d S) Nrcs"��kr��������dS)Nr)�appendr��i�res�s�startrr�flushsz_escape_string..flushz"\  r� z\u%04xrr�)�lenr�_escapes�ord�join)r!r#�crrr�_escape_strings   r+z-_cCstdd�|D��rt|�S|S)Ncss|]}|tkVqdS�N)� _key_chars��.0r*rrr� 4sz_escape_id..)�anyr+)r!rrr� _escape_id3sr2cCs t|t�r|rdSdSt|t�s*t|t�r2t|�St|t�rjt�|�sPt�|�r`t d� |���nt |�Sn�t|t�s~t|t �r�t |�St|tj�r�t|�St|t�r�d� d�dd�|D���St|t�r�d� d�d d�|��D���St|t��r�t t|��St|��dS) N�trueZfalsez{0} is not a valid TOML valuez[{0}]z, css|]}t|�VqdSr,)� _format_value)r/r rrrr0Hsz _format_value..z{{{0}}}css&|]\}}d�t|�t|��VqdS)z{} = {}N)�formatr2r4)r/�kr rrrr0Js)� isinstance�bool�int�long�unicode�float�mathZisnanZisinf� ValueErrorr5�repr�bytesr+�datetimer�listr)�dict�items� _path_types�str� RuntimeError)�vrrrr49s&         r4c s\d|dfg}|�rX|��\�}}�r^d�dd��D��}|rN|�d�|��n|�d�|��|rnt|���n|��}g}d} |D]��|�} t| t�r�|���f| df�q�t| t �r�| r�t dd�| D��r�|� ��fd d�| D��q�| dk�r|�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|t�VqdSr,)r7rC)r/�orrrr0dsc3s|]}��f|dfVqdS)TNr)r/�d�r6�namerrr0esz<#{} = null # To use: uncomment and replace null with value Tz {0} = {1} r)�popr)�writer5�sorted�keysr7rCrrB�all�extendr2r4�reversed) r rrZtables�tableZis_arrayZ section_nameZ table_keysZ new_tablesZhas_kvrHrrLrr Qs6     �r )F)F)Z __future__rr rAr=�string�sysZutilsr�pathlibrrE� ImportError� version_infor9r:rFr;rr'r+ZdigitsZ ascii_lettersr-r2r4r rrrr�s (