ó r2Wc@sĢddlZddlZddlZddlZddlmZddlmZmZm Z d„Z d„Z d„Z d„Z d „Zd efd „ƒYZdS( iĸĸĸĸN(tCaseInsensitiveDicti(t HTTPResponsetpicklet text_typecCstj|ƒjdƒS(Ntascii(tbase64t b64encodetdecode(tb((sF/usr/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.pyt_b64_encode_bytes scCst|jdƒƒS(Ntutf8(R tencode(ts((sF/usr/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.pyt_b64_encode_strscCs#t|tƒrt|ƒSt|ƒS(N(t isinstanceRR R (R ((sF/usr/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.pyt _b64_encodes cCstj|jdƒƒS(NR(Rt b64decodeR (R((sF/usr/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.pyt_b64_decode_bytesscCst|ƒjdƒS(NR (RR(R ((sF/usr/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.pyt_b64_decode_strst SerializercBsAeZdd„Zd„Zd„Zd„Zd„Zd„ZRS(c Csxt|jƒ}|dkrB|jdtƒ}tj|ƒ|_niit|ƒd6t d„|jj ƒDƒƒd6|j d6|j d6t |jƒd6|jd6|jd6d 6}i|d 9stheaderststatustversiontreasontstricttresponsetvaryt,css?|]5\}}t|ƒ|dk r0t|ƒn|fVqdS(N(RtNone(RRR((sF/usr/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.pys Nsscc=2t separatorst:t sort_keysR (R R#(RRR!treadtFalsetiotBytesIOt_fpR tdicttitemsRRR RRRtsplittstriptgettjointzlibtcompresstjsontdumpstTrueR (tselftrequestRRtresponse_headerstdatatvaried_headerstheader((sF/usr/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.pyR3#s<          $cCsū|s dSy|jddƒ\}}Wntk r?d}nX|d dkrc||}d}n|jddƒdjdƒ}y#t|d j|ƒƒ||ƒSWntk rđdSXdS( NR iscc=0iscc=t=iĸĸĸĸRs _loads_v{0}(R,t ValueErrorRtgetattrtformattAttributeError(R5R6R8tver((sF/usr/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.pytloads[s    # cCsÐd|jdiƒkrdSxE|jdiƒjƒD]+\}}|jj|dƒ|kr5dSq5W|djdƒ}ytj|ƒ}Wn)tk rĩtj|jdƒƒ}nXt d|dt |dS(s`Verify our vary headers match and construct a real urllib3 HTTPResponse object. t*RNRRR tpreload_content( R.R+RR!tpopR'R(t TypeErrorR RR&(R5R6tcachedR:tvaluetbody_rawR((sF/usr/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.pytprepare_responsexs% cCsdS(N((R5R6R8((sF/usr/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.pyt _loads_v0šscCs8ytj|ƒ}Wntk r'dSX|j||ƒS(N(RRAR<RI(R5R6R8RF((sF/usr/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.pyt _loads_v1 s  cCsŌy%tjtj|ƒjdƒƒ}Wntk r9dSXt|ddƒ|ddģsRRcss?|]5\}}t|ƒ|dk r0t|ƒn|fVqdS(N(RR!(RRR((sF/usr/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.pys šsR( R2RAR0t decompressRR<RR*R+RRI(R5R6R8RF((sF/usr/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.pyt _loads_v2Ļs% #N( t__name__t __module__R!R3RARIRJRKRM(((sF/usr/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.pyR!s  8  "  (RR'R2R0tpip._vendor.requests.structuresRtcompatRRRR R RRRtobjectR(((sF/usr/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.pyts