ÿØÿàJFIFÿþ ÿÛC       ÿÛC ÿÀÿÄÿÄ"#QrÿÄÿÄ&1!A"2qQaáÿÚ ?Øy,æ/3JæÝ¹È߲؋5êXw²±ÉyˆR”¾I0ó2—PI¾IÌÚiMö¯–þrìN&"KgX:Šíµ•nTJnLK„…@!‰-ý ùúmë;ºgµŒ&ó±hw’¯Õ@”Ü— 9ñ-ë.²1<yà‚¹ïQÐU„ہ?.’¦èûbß±©Ö«Âw*VŒ) `$‰bØÔŸ’ëXÖ-ËTÜíGÚ3ð«g Ÿ§¯—Jx„–’U/ÂÅv_s(Hÿ@TñJÑãõçn­‚!ÈgfbÓc­:él[ðQe 9ÀPLbÃãCµm[5¿ç'ªjglå‡Ûí_§Úõl-;"PkÞÞÁQâ¼_Ñ^¢SŸx?"¸¦ùY騐ÒOÈ q’`~~ÚtËU¹CڒêV  I1Áß_ÿÙ kSc@sddlZddlZddlZddlmZmZmZddlmZdej fdYZ dej fdYZ dZ e d krejd d ndS( iN(tMarkuptescapet escape_silent(t text_typetMarkupTestCasecBseZdZdZdZdZdZdZdZdZ e j dkrid Z nd Z d Zd ZdZdZdZRS(cCsBd}td}||tt|t|ks>tdS(Ns?susername(RRRtAssertionError(tselftunsafetsafe((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyt test_adding s cCs{tdddksttdidd6dks?ttdddks[ttd dd kswtdS( Ns %ss s<bad user>s%(username)stusernames%igQ @t3s%.2fs3.14(RR(R((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyttest_string_interpolations  cCsJttddtks"ttd}|j|ksFtdS(Ntfootbar(ttypeRRt__html__(Rtx((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyttest_type_behaviors" cCsTdtfdY}t|dks1ttd|dksPtdS(NtFoocBs eZdZdZeZRS(cSsdS(Nsawesome((R((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyR'scSsdS(Ntawesome((R((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyt __unicode__)s(t__name__t __module__RRt__str__(((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyR&s  sawesomes%ss!awesome(tobjectRR(RR((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyttest_html_interop$scCs$|jtddtddS(Ns%s:%sssu <foo>:<bar>(ss(t assertEqualR(R((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyttest_tuple_interpol0scCsY|jtdidd6td|jtdidd6dd6tddS( Ns%(foo)ssR u<foo>s%(foo)s:%(bar)ssRu <foo>:<bar>(RR(R((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyttest_dict_interpol6s cCsXtddksttdjdks6ttdjdksTtdS(Ns"<>&'s"<>&'sFoo & Bars Foo & Bars <test>s(RRRt striptagstunescape(R((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyt test_escaping?sc Csxtdddftdddftddd ftd jd ddftdjdidd6gdftdjditdd6gdffD].\}}||kstd||fqWdS(Ns%igQ @R s%.2fgn! @s3.14s%s %s %sts < 123 >s{awesome}Rs s<awesome>s {0[1][bar]}isRs <bar/>s%r should be %r!(R!i{R"(RtformatR(Rtactualtexpected((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyttest_formattingEs%iicCs1tdjd}|tdks-tdS(Ns{}it0(RR#R(Rt formatted((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyttest_formatting_emptyTscCsdtfdY}dtfdY}tdj|tdksVttdj|tdkstdS(Nt HasHTMLOnlycBseZdZRS(cSs tdS(Ns(R(R((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyRZs(RRR(((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyR*YstHasHTMLAndFormatcBseZdZdZRS(cSs tdS(Ns(R(R((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyR^scSs tdS(Ns(R(Rtspec((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyt__html_format__`s(RRRR-(((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyR+]s s{0}ss(RRR#R(RR*R+((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyttest_custom_formattingXs*cCsPdtfdY}|dd}tdj|tdksLtdS(NtUsercBs#eZdZdZdZRS(cSs||_||_dS(N(tidR (RR0R ((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyt__init__hs cSsJ|dkr+tdj|j|jS|r@tdn|jS(Ntlinks{1}sInvalid format spec(RR#R0Rt ValueError(Rt format_spec((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyR-ks   cSstdj|jS(Ns{0}(RR#R (R((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyRts(RRR1R-R(((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyR/gs  iR s

User: {0:link}s:

User: foo(RRR#R(RR/tuser((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyttest_complex_custom_formattingfscCs1ddl}x|jD]}t||qWdS(Ni(t markupsafet__all__tgetattr(Rtmarkuptitem((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyt test_all_set{s cCs[tdtksttdtdks9ttdtdksWtdS(Nsu <foo>(RtNoneRRR(R((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyttest_escape_silentscCs|jtdjtdtdg|jtdjtdtdg|jtdjtdtdgdS(Nsa btatbsa b(RRtsplittrsplitt splitlines(R((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyttest_splittings   cCs$|jtddtddS(NR?itaaa(RR(R((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyttest_muls(ii(RRR R RRRRR R&tsyst version_infoR)R.R6R<R>RDRF(((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyR s            tMarkupLeakTestCasecBseZdZRS(cCst}xltdD]^}x<tdD].}tdtdtdtdq)W|jttjqWt|dkstddS( NiiR sufoouis'ouch, c extension seems to leak objects(tsettrangeRtaddtlentgct get_objectsR(RtcountstcountR;((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyttest_markup_leakss    (RRRR(((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyRIscCsNtj}|jtjtttdsJ|jtjtn|S(Nt func_code(tunittestt TestSuitetaddTestt makeSuiteRthasattrRRI(tsuite((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyRYs  t__main__t defaultTestRY(RNRGRTR7RRRtmarkupsafe._compatRtTestCaseRRIRYRtmain(((s6/usr/lib64/python2.7/site-packages/markupsafe/tests.pyts