B
    `9                 @   s  d dl Z d dlZd dlmZ d dlmZ d dlmZ ejZejZdddZerd dl	m
Z
 d d	lmZ d dlmZ d d
lmZ n,d dlm
Z
 d d	lmZ d dlZd d
lmZ dd Zdd Zdddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydzd{d|d}d~ddddddddddddddddddddddddddddddddddddddddddddddddddddddZdS )    N)PY3)	text_type)http_cookieslatin1c             C   s   t | tr| |S | S )N)
isinstancer   encode)valuecharset r
   V/home/kop/projects/devel/pgwui/test_venv/lib/python3.7/site-packages/webtest/compat.pyto_bytes   s    

r   )name2codepoint)	urlencode)Iterablec             C   s,   t st| tr| d} tj| tjd d S )Nutf8)file)r   r   r   r   sixprint_sysstderr)r   r
   r
   r   print_stderr   s    

r   c             C   s   dd dd | D  d S )zG
    Escapes a value so that it can be safely stored in a cookie.

    " c             s   s   | ]}t ||V  qd S )N)COOKIE_ESCAPE_CHAR_MAPget).0xr
   r
   r   	<genexpr>+   s    z&escape_cookie_value.<locals>.<genexpr>)join)r   r
   r
   r   escape_cookie_value%   s    r   z\000z\001z\002z\003z\004z\005z\006z\007z\010z\011z\012z\013z\014z\015z\016z\017z\020z\021z\022z\023z\024z\025z\026z\027z\030z\031z\032z\033z\034z\035z\036z\037z\054z\073z\"z\\z\177z\200z\201z\202z\203z\204z\205z\206z\207z\210z\211z\212z\213z\214z\215z\216z\217z\220z\221z\222z\223z\224z\225z\226z\227z\230z\231z\232z\233z\234z\235z\236z\237z\240z\241z\242z\243z\244z\245z\246z\247z\250z\251z\252z\253z\254z\255z\256z\257z\260z\261z\262z\263z\264z\265z\266z\267z\270z\271z\272z\273z\274z\275z\276z\277z\300z\301z\302z\303z\304z\305z\306z\307z\310z\311z\312z\313z\314z\315z\316z\317z\320z\321z\322z\323z\324z\325z\326z\327z\330z\331z\332z\333z\334z\335z\336z\337z\340z\341z\342z\343z\344z\345z\346z\347z\350z\351z\352z\353z\354z\355z\356z\357z\360z\361z\362z\363z\364z\365z\366z\367z\370z\371z\372z\373z\374z\375z\376z\377) 	
,;r   \                                                                                                       ¡   ¢   £   ¤   ¥   ¦   §   ¨   ©   ª   «   ¬   ­   ®   ¯   °   ±   ²   ³   ´   µ   ¶   ·   ¸   ¹   º   »   ¼   ½   ¾   ¿   À   Á   Â   Ã   Ä   Å   Æ   Ç   È   É   Ê   Ë   Ì   Í   Î   Ï   Ð   Ñ   Ò   Ó   Ô   Õ   Ö   ×   Ø   Ù   Ú   Û   Ü   Ý   Þ   ß   à   á   â   ã   ä   å   æ   ç   è   é   ê   ë   ì   í   î   ï   ð   ñ   ò   ó   ô   õ   ö   ÷   ø   ù   ú   û   ü   ý   þ   ÿ)r   )r   r   r   r   Z	six.movesr   SimpleCookieCookieErrorr   html.entitiesr   urllib.parser   parseurlparsecollections.abcr   htmlentitydefsurllibcollectionsr   r   r   r
   r
   r
   r   <module>   s   
