ÿØÿà JFIF    ÿÛ „ !.%+&8&+/1555$;@;4?.451 4,$,44444444444414444444444444444444444444444444444444ÿÀ  á á" ÿÄ     ÿÄ ?    !1AQaq"2‘¡±ÁðBRbrÑá#‚’¢²3S CñÿÄ   ÿÄ !    !1QAa‘2ÿÚ   ? 5˜Z¯V¦cø)›t/? z¨±>Õ5€¶‹Á¤·¼z¼Ü¬+ñ®v¤¨_ˆR­BFn©—˜ý®ç̝P8gýt·ÉSTŦˆìät?þé¼íìN/Þa)ì–í6ô… Ï¿øÃj´¿KÇü]ÿ ªô¹-eKànëÕHTx}ýSÜ›ÿ ”7Ø×&µ<¦  ¥ÑO¶[Ù¯ä¨ÞÃÿ PZ-¬;#õ|•oaÿ ©CìÞz3˜öː/¤­ñTûIØ}š^ mÓ%ªxˆ¥ÉŸu=Z+ISe¿45™¼u;ú&WØ÷€æßQ™®{|íx*TC“#ZŠìZ§²‹ 6pv…³¿¡äª*áZÐ%ÒOáˆo"x«OHk w±æ+¬V(kMúŸ5Vö«$ ÁrÏbàb57/luR ¸ÑÛj Òµì`Мq­û žICÀÊ•©4€Âcà¨Ï€O´<èÐ:›ù(Ë^L8þ‘ÍÌ#¸Ð_Ì©ÙK(Öz 4¬û+¸;ü’V’84‘¬ÃŽ:[â‡ÔÌáõp¢~§ªlæ£ö{®G>J¼"°‡7¯ÆÉèßû ‹É‹§ÁòÃýâßî ^ƾÙõ‹×óH#«LP½ïX=xÑÍ$|W?•~• îëÔ©ª‹ {ÝT…Kÿ ”hûâá)J*ö˜–ÔU;iÇ€/ ÆþjóZ\ýwØ=Ìm ºèËL9 ýèÆð/¨’¥öo=nË.%Îì ŽÕ¯È|{Oj²ƒE6e/ßdÄõ²Ìâ1O®ò×TsəԸhOMýíMˆ¿¼H˜l²,7Â¥#MF/Úf°Ö½± ¸–dr‹NýÊ íjqx{œÉ ä-È ¦ øÄër¨q°ð †nцýÑÄÆ’mä…n<0È™;ÁÝá¯ÁZƒ7FÀmì­ É&9ˆîéi¶ùN§Y• ÃZãAâ?•‡©‰ , ó¾IŸŠc1 4â&y­&pŠ­6;M À 0¹qç»p.á …ŸÅáK@%6·y6ƒ‰3?”úºŽ‰éX5ªPT §µ!=Mž«Ú½‹ÅgÂSâÉaþÓoö–¯ÁÔìR>5éÿ üs¶ÆUcÌ kÇR ]ÿ ù¬¼«VŽ;Â|‡~¢¦”ÏŰæ {L™Õ°Óv¹ò¸írޡעCÃ!íVÕ {¶»sŒNPg/ "uÕbkm²“$ďå¿é¹§°½æz¯6 †s¿!s–wÚÝ“™Œ °.ûj>·+™Òa…©Œ&rÝÎtÛë긪Ît’LAVp%c Úý[ÄzJ¾ÇàXXç@˜ó<êL]·T˜¾¥1Ó©V‡g´æ½¦Ý@¹óø!_@´ÞâSÁ —S3™•& ]@JHÚý©ZŽ €×æÔr»Áf!‡yÞ4Mv*èÓã_{‘åóUuљØ«Oïé*®EvÑ Œ÷‡U \"㪒ÍK+À 4“M¡ï:0¥5í!'<@î´”>Ç»&Z–ïCCV˜Ì5Šo&îhè.žû |ÓK©h$s6KìŒëã)¹hI¦GïOåóI;ììü#É$Š0…Ææ¥TØ.5­¾gn´ “ÂÖ\:hœ89G)J@„}œ:’Ò{/Š"¦_Æ×7Æ3VÇŠÊa]ÚŒÙ€Ä–=®uÁßâACZƒ§§£ Qnâ:«,×{tyø¬iÛcœÜÄ€H½ÄÍCk´÷šß .W'b¤Íåh]÷€=,Žv×cÚEÚHXJX¶îo¨FÒtèöŸ>ªª6[J®Fµ£sGÁeqõfe\íjÒÐïÄÐGˆe1Ø‹.Ø”‘Ëuø Y­ˆÜ ŽG|zùªüMpDnQWÄ”%JŠ™)â*p@Örš«ÕT2Ð%ˆG#ª„ ·¤!°ŸOTÂT¸aÚ%4&h™LµšØüÐ.F¿²ÐÞ_Ç‚¾ÅÃaÜ÷09Æ q€öy˜v‡85õN÷]¬äѼóS{°_MެúÔ#°Ç¸0åÞè2ëôPcvÆw9®ií1Ä8F™˜à‰´+‰Ik1òÝ7“Ñ×ÒsÝ\x‚h`ÞÑ`ó"|µEcý£n˜h`}GÞ !±ù²Ápü²ß6 0ïi󜵩SÈÇ7˜-ÕURO˜¦´f$ªž-Í6(œ}<„ éc øs]ŽŽ„*—¾ ìdŽ„)méª\¿êÎIg¾ØÞ~I#C/¼¼´EÁÈŽi8“©õådô·>euä ƒ'Ê×लR1ÉJE1ÐAát`t;ÇР%Ý<‡¥„ÍÆ`×Oyó)õiI€ñQaŸ4Ûù\áàaÃÔ¹HÃu¹*k€¦<„e S‡&õÏ B!ŽhüÞ`yj}mªf×\¿ Ç~æ­9‡û\՞Ǖg²1Žû5V7 !àöšm° c`ܬøÇìµÒ'P"?…´Ö,"§^•õލsÔ)6˜sæéÍR¼ ò|Sl”‹7 nPW Gòú÷½§O¯‡„l¡kSÞŒr½PÊ@æ¢pŽ-mÿ #Ÿ˜Àº¶Áä¦;ïÔæ$1££`“Õ>„—·ž)ßð³ñ#Ï Ô$¶œ‰ÊE‹À;÷º ¯«P:Ñ”8–IÊtpÞ3ª“>ê“þës4ò2OÏÕ­±zô†Õ§‰.÷ä¸;¿˜“'œ›žª}«Œ{ª±Ì 9ÔóÞÕ‡0 $íWV3Üì¬ —@kÝ4@¿r¼±½¬™›?øØæ´'Áé®CË3-g$˜ö‡×auÚi´Žp/êÛ æF›Ú2v‹ã¿¿,nB1̨ƃqÞa5͝@&Æû“él÷ \C²½UÍc ¯k×¢U ÖéQå™—-r wô ÞÏ<Ò=&=ÿ Ôê Òêˈt,i—;LîÜ á¸*ÚÃ1$êL•LÍ <É)ýÐà’ ;F™{ƒ™˜€&'}‚ãÄK`¡ÞT@I;®žZóè‚s’7®°›+§O­Åq©é»²9<Ô J ¼9O’HL»Ùïì¸rk¼Ž_ý‘TŸu[²ßÚŒ·ü÷B%¯E ŸÔX5êO´ Ç•€’I0 ÉJX` ñ¹õ%;µŸD‘«´€àwÒ™U ûئžÖö\×®×´8 ½‡ºÐÆÓ§?Àkmœ=;d5*@-ì0F Rªýš[Ü6âö̃ڸr*KA9· u*µæ£?U¸Âêí†8@¦X4 e-ò„0s{ HâUpU?¼mñRa°®a%Ð'tÉ×’\¾ÊÉ]t›h>·(Ë@R¼¡Ãt h}’O÷au<+nT…Ö…MӐ??Óe95 q>í/;&JSû °¯ÊéÞ øƒ*Ã2½Ài&:nôUl=¾¿5eˆ3”ñc|Ú2V”>„»&eE;«ÚäC p¢Û úy 9š[ŒÌx¼擼A&DåÒ¯ˆ¤ÀÌ;"˜ ÏQä¸åhÊ}Ûq«Û0WžÒ|»€ø®öCm5•\ÇÀ§Pe3£]0ÃàLDÉ‰1øªxjgwT‚÷¿LΨK‹›ùs—xˆÜ±µ kæ¸f‰‰ÜGk/LÛØ6d9ò¶ùA{ƒA3š/¬D¬khÓk‰`˜"㯒r¿±Óã jx‡°e}<Ñø\3y:'À•/h½Í€Ç4~g ?Û(¼]v‘ªlKÎâ~?O‚W%{Ì:“'©úNq¾›úo(X’¥¯ˆ nFê{Ç€ü?º'ë ø‹ì Þ09ŒÌç9Æ —ËC`j@ÓÄ(+a‹un¸#ÂꟋ{K`‘ÑÍÍ'à´»/Û,KW;Þ4²þð ï Nm|~fGÏ(…³Ã)«1ö­Õ ¥‡¨©ƒÃ™ü-s=à=U66Ï«Ýc蓦W¹íž®›nÔ%êÇìŒ<#Ü×84ån®Ð ÒåOC` ñânÑs‡¢ç 1õ%Îhì½Ã½® e:ݼUZo™`  ÅZŸŒÊ«ê1ÏÄo$q¹Þ€©ˆhÐÉä¯ñ[!…Ú˜àJ:x2$Íß&PåT£6ç— ‡Í*4Ýšçjÿ ‰É nófÐ ó(L5C•åÆ\rMÒ@ò }y-W}™üýVù—ú¢=Ù”c®‘< M ž ´Phr ¦©TD ‘ù.$´÷O‡‘V2Æò.=IUŒ=ž‡â¬i™aþÓåÙ?òUø'ØÖ•.~* šTŒ!•-×áºTâ®ä#õü'´ eýlYÅÓeÕKÂrT"CÚ@u!Óxƒ{š3€}1¿(r}%«nËamjÑ%ÑNEò v ˜à  σöK³,*º.àzù¨™Ó ÚçâU¦*¿ 9{%Ö¹ njûdaXöb) kÛÆ±ûÓ\°M7ˆÂ=û›ç¿Ã‚­V»Cg–8ÙêE- j)k$º`Ã-ùEýeBÆÇ]c¡°ñty&Òd0nõ'¡W+ƒ*|–øµFa\GQªEAÔp5\Ǽ·¼Ç8·õ -â§Ú[ ‡ uZeÖ 3}×d'+¹:ð+K†Û®s!Ï$úe€<Û”x)1»a­¡LC]¸µík…ÚàA»AYº{†ªS[¦5HÒ7ù --,ísòDØ€èk ÞÀîÜ ò@â( ËNˆë›4ô½•/¦o‡€Û7 ê•ÆêòðÜy'Án½µ á˜ݦ ndeo…[ì¶Ê,¥R³Ä=À±—–ß;£™´ñSâ*g§”ïaið‘Jå~™ÓÞ ß³Õ¢»8x埒²52>AÊb&-÷\7´éÄù€T˜,w;3{ï˜k…à¹ÄqÀ«œ{€\ ˆ¾[´¨јr &Úé„Ívˆ±8†¿]|¬ņ4I×pÞS1ÈÖz‰#Ìv‡G!YNògñ:màTz¢Ý1ô©^O=~ë|5Bã™ç•¼µõ•bÆ@úÕS¬ÈŒ#¬zünrŸ û” Z²•èðV"ÁHÚý©wÝ €7¼Ìu1hÑa3Éä û f$o¿É ™Ú›ÝçnpÒ3äÌ3†Í§,Äï]$‰/pê †«À¼¸e9­Æê_C]žƒ·ý·frÁN«, E=›Çq -‰öŒ:aÏ¿±í&£Í:-} 84‘ÿ eƒQÑeëSsuiA ³g㟥ú£?ÿ ʼn*”“÷aühe:ÊWa@ÒÞk±eØ] F Ô—r.åä˜ @ö¥ªZoÐýYL·¥S²G/‡ñ <~*ZÆ´è>JlòàÛÆ½ÿ 窘ìGN¢:I®KšJp/`íIÁÀõ#Ä-€ö­šµŒoF4|ÆQØÆ@Ì|£Ô…¢À{9˜è½Üó›€ôYÒÎYsið;ís¤€à²ˆ‚4qÉVŒI$ ‰"° æµ8cXGjœˏ¡Aâý•ËÜ¢ûï e·çLx']á"oÅÎê3¯Ç—¹”ó0nå‚âg{Œñ> S´˜îè°g238‚ãköÝfÚd´6Ò€;ò÷±¢™¼›º ¢Æ'¥Ðx'e¬ç ]bÈÆV¢ó‹kýBO ðÊâ$Ÿ!×T 3Mýמ žìٍàÌü‘8÷€àæØ8æ©6‰©L´«…oãpð„~Çk‰!ñ;‹”ÛžÍ àž±z Ÿôû øŸÝužÏ;ÿ #|u6™Þ¬ÚˆÐõA4¶â|ôl|Ê2ŽÇ¤ÝÅÇY.<#Aí.k§hóF‚”Y; M½Ö4hŸ4&›­¿tès´%FìL¥£Ãk‰ÇT¤haÁ¤ÚxfÉ`ÑìË›>i 3t‚:,–+^÷´–{Û–Nxi"x‘Ûg î¨>¥Õ܁ùZH,2Û“:8xÊ¢Çí9.É-Ìâã-=çjwµS˜dütžçwýGòú®®ûº_ˆýx$–¡ãøO EÚÛÏ÷R„×w+3£Á£öUMyR²¹âŒ°š›¸Ñãò9§Ó_Dl+Ùßc›úšGÅÌc†Ž!Ko=¶.‘Îÿ c²(2®V mª.ÿ ¹B›¹å ù„öŸSV>™ü¯$y:G¢Z×àøúdî¹û­·ýÇ´:•c LÍõi_‹ö+ÎæGÊè>OŠ•äž´§Þ{X}¨1ÚTc›»Qþ•êô°t¿OP?eæ~É{5]•ÙR£r5†nZ\ã@ &îJõ ¾àC°þV>fé¥/ü5ñÊIº_é5 ;e­h<@ Ä&æÃëE%;X,ÒãÆÞ`Oò¦kŸm#˜!ÀyÄ¢| óLšò¥Ä` ¶R=|ÈCâh5ò3DˆïF†ðÒ#ÅìÛœ?¸yhBãœí ZxßÎÄhºRK„`Þödvײ™ÀÈÑÒgŒuY w³%†ƒÓzõ ÖÏp‚dH®¦A´ù§»ÓÇMæ~)ˆð‡û:ù&Ä •vGD´À n ݇¼Ö8Fö óáà£~Ë¥x`oK|Ä?fxiØü%pìR>éò+Û±éÎ>núlFŤ'tq8LZÏvÃ?„¡ß±È⽆¯³íü@x|PöUäèØã¡ð‚ŒAìÏ"vÍwóŸÍ{ ý0.z È•Ö{,N¡£¡ŸKÕÙž>Ýœþ ÍÀ°<×EA!Å‚D™IúOÍ¡>ôG}Â` ÍßkÜL™Ž Þð™ {IøF²¹òQ3&!ÃÂÞz.d&Ï-sH¸,Ôõ˜ŽP€ 77ˆÝ¼ÊëÜw =cÕ Ú,ØÐ5ÎYÐ)ì´öœgŒ[¤ßv㙑8心>h]§µháYš£²ºÑ.{Ï7Sð•?´~×SÃKýJÛ˜ ™Íäiúu<µX¶1õ^kâçIÑ£sZ4h>j*ÔšD:4­¿_ ÷¸ Õxæÿ ¸?Mù _•­ÊÐ ä ÷ý ÑwL œ­ïnTkÛUÍN©ë:¦fV ¶ÜÔÜMªÅâA½–¿R×TXš-%iTÊT•‡Ù‚JôϐZxWÑè‰f‰òG º ×Õû2aZ7OU3[“×AT–ÞŒ…-‘¤”Ì ì&(ˆ¿­•ƒkï’:ðY¦W‘ Å)“†‘˜³Åtcø˜ñTÂwÚÇ4|üLÇªí–v- qˆèU qPE.†â‘˜µ Æ,ÐÅs]8¾„oúÑ i>ÜxxÈó)ƒ ´æÁâØ$À‰vžŸf$Ž |ãw;ÀÁIJ»b` {¦Ó¤Ú$©YÀ‘n@Óïž«9J¼êG m¤ ܯ¹ÌW4€ÐÒÅÛ‡#褕Ÿn-?í|с¥÷Ú¹¬'´ÞÜ9ÓK `hê£SÄSà?7—Wí_´…óB›»:=Ãïq`<8ñÓŒÑlú2d¬ê³£hÖ[l|$vÝro~'R®‰§°ñmY ͧäP |PUª¹·:3Œ[Û{Xÿ ºâ@‚W–Äé u‚ ¯´*=íή.pûÒdt @G‰¬ s¸ ëÉücr ÞæÑ¨Ê@>¤¢Ö±. Þ'¯°ÌME[YéïĵÂCå½ Ué©Áû'Ê9%eÔðNU”ë‘ÌsD3/®+UI˜9h.WC”빓$#:pz:YÓ ¿xž* ³$Í +$kñAŠ‹†¢ Uê>¸)_š¬÷©ßAÂÔb9ÇU ¯¾á•9¯ÏÏ÷O÷¼¼Fähal1‰3Ì[Ïr•´UCksNÐ] R‘¸¥H+§Šé†c©vÖÞ0iÓ76s†î!§=ß ¼~Ô'°Ãmäoäš³ªøi1úÉ)³yV8 CLÄØÁ‘WYïi€H6ÖÑiámø^ÈY´°Ñ7¥Û*—Ñ©L«Qƒï—Ùrÿ ›£Ð*š¸ˆL©ˆ$ˆ ÷¾D§9È®«qbqC)–ˆïv´çñsÑVT­Ø, <àïºÀO«Jý·õ àfPìð .wFšir´þ’2_Y *Æ€x\« ì€9š@ Ž|F⇥ˆkZ@hÖÄ0t¿-<“‹qµ¾*ZL¤Ú)&BJpÓF5=$„at*Zš$’ÑtdûÝRI1 2މ$€$I$#‰SÞ’Hë¬ï;Á$¡t$’`<(ñÇt)$‡Ð.Êf¢X’Kt=Éé$‚ˆªè¢oÝëòI%Rgcª÷ŠyI%¡‰ÿ !ñ)´õ $¤ Ô’IIGÿÙa 3g0 @sdZddlZddlZddlZddlZddlmZddlmZGdddZ Gddde Z Gd d d e Z Gd d d Z Gd dde Z GdddZGdddZdS)zF Common tests shared by test_unicode, test_userstring and test_bytes. N)support)UserListc@s&eZdZd ddZddZddZdS) SequencewxyzcCs ||_dSNseq)selfrr 0/opt/python39/lib/python3.9/test/string_tests.py__init__ zSequence.__init__cCs t|jSr)lenrr r r r __len__ r zSequence.__len__cCs |j|Srr)r ir r r __getitem__ r zSequence.__getitem__N)r)__name__ __module__ __qualname__r rrr r r r r s rc@seZdZddZddZdS)BadSeq1cCsgd|_dS)N)hello{rrr r r r r zBadSeq1.__init__cCs dj|jS)Nz {0} {1} {2})formatrrr r r __str__r zBadSeq1.__str__N)rrrr rr r r r rsrc@seZdZddZddZdS)BadSeq2cCsgd|_dS)Nabcrrr r r r r zBadSeq2.__init__cCsdS)Nr rr r r rr zBadSeq2.__len__N)rrrr rr r r r rsrc@sleZdZdZdZddZddZddZd d Zd d Z d dZ ddZ ddZ ddZ ddZddZddZddZddZdd Zd!d"Zeejd#kped$d%kd&d'd(Zd)d*Zd+d,Zd-d.Zd/d0Zd1d2Z d3d4Z!d5d6Z"d7d8Z#d9d:Z$d;d<Z%d=d>Z&d?d@Z'dAdBZ(dCdDZ)dEdFZ*dGdHZ+dIdJZ,dKdLZ-dMdNZ.dOdPZ/dQdRZ0dSdTZ1dS)UBaseTestNFcs~t|trj|St|tr2fdd|DSt|trRtfdd|DSt|trvtfdd|DS|SdS)Ncsg|]}|qSr fixtype.0xrr r +r z$BaseTest.fixtype..csg|]}|qSr r#r%rr r r(-r cs$g|]\}}||fqSr r#)r&keyvaluerr r r(/s) isinstancestr __class__ type2testlisttupledictitems)r objr rr r$'s      zBaseTest.fixtypecCs|t|d|jdS)N123)assertIstyper$r.rr r r test_fixtype6szBaseTest.test_fixtypecs|}|}|}fdd|D}t|||i|}||||urzGdddjj}WntyYn$0||}t|||}||dS)Ncsi|]\}}||qSr r#)r&kvrr r >r z'BaseTest.checkequal..c@s eZdZdS)z$BaseTest.checkequal..subtypeNrrrr r r r subtypeHsr<)r$r2getattr assertEqualr-r. TypeError assertIsNot)r resultr3 methodnameargskwargsZ realresultr<r rr checkequal:s"    zBaseTest.checkequalcGsb||}||}||}t|||Wdn1sB0Y|t|jddS)N)r$ assertRaisesr=ZassertNotEqualr, exception)r excr3rBrCcmr r r checkraisesRs    ,zBaseTest.checkraisescGs&||}||}t|||dSr)r$r=)r r3rBrCr r r checkcallZs  zBaseTest.checkcallc s<dddddddddddddddddddddddddddddddddddddd ddddd ddddd dddddddddddd dddddd dddddd dddd ddddd ddddd d dddd d d ddd d dd dd dd dd dddd dd tjddd dddd dddddd ddtjdtddjrddddntdddgd}d}t|}t}t||D]F}g}t|D]"}t ||\}}| ||qD| d |q4fdd|D}|D]}t|} |D]}| |} |rt | t||d t|\} } nt|dd} } | s| | kr| dd| |f| | d| | |fqqdS)Naaacountrrr rFxxr*)rFrrrcsg|]}|qSr r#r&tsrr r r(r z'BaseTest.test_count..z%s != 0 for %sz%s != %s for %s)rEsysmaxsizerKr?contains_bytesrsetrangedivmodappendaddjoinrOreplacer$r>) r charsetdigitsbase teststringsrentryjmnr1r2remr rr test_count_sj   zBaseTest.test_countc stdddddddddddddd dddd dd ddd d dddd d d d dddd ddd dd ddd ddd ddd dd d ddddtddjrddddntddddd dd dd dd dddd dd tjddd dddd dddddd ddtjdddddtjddgd}d}t|}t}t||D]F}g}t|D]"}t ||\}}| ||q| d |qfdd|D}|D]^}|D]R}| |} | dk} ||v} | | | dkr|| | t||qqdS)Nr abcdefghiabcfindabc rQrSdefrUrFrMrP rrarrrrrrrrrar rrWrVabxxxrFrrr csg|]}|qSr r#rXrr r r(r z&BaseTest.test_find..)rErKr?r\rZr[rr]r^r_r`rarbrqr> r rdrerfrgrrhrirjlocrlrmr rr test_findsR    zBaseTest.test_findc sddddddddddddd ddd d ddddd dddd d dddd dd dddd ddd d d ddd ddd ddd ddd ddddtddjrd dddntdddgd}d}t|}t}t||D]F}g}t|D]"}t||\}}|||q@| d |q0fdd|D}|D]^}|D]R}| |} | d k} ||v} | | | d kr || | t||qqd dddt jdddddddS)NrsrprfindrrrvrFrabcdrSZabczrMrUrurrwrPrrWrzr{csg|]}|qSr r#rXrr r r(r z'BaseTest.test_rfind..rxryrQu <......м...<)rErKr?r\rr]r^r_r`rarbrr>rZr[r|r rr test_rfindsJ    $zBaseTest.test_rfindcCs"|dddd|dddd|dddd|ddddd |tddd |td ddd |td dd d|td dd d|dddd|ddddd|tddddd|dddddd|dddddd|tdd|jr|tdddn|tddddS)NrrpindexrFrMrtrrrsrQhibZ abcdefghiab abcdefghighir!rSrPrurrvrUrwrrWrErK ValueErrorr?r\rr r r test_index s"zBaseTest.test_indexcCs<|dddd|dddd|dddd|d dddd d |tddd |td ddd |td ddd d |tdddd d|tdddd d |dddd|ddddd|tddddd|dddddd|dddddd|tdd|jr(|tdddn|tddddS)NrvrprindexrFrMrtrsrrrrSrZ defghiabcrQrrr!rurrUrwrPrrWrrr r r test_rindex&s$zBaseTest.test_rindexcCs0|ddd|ddd|tddddS)NrHeLLolowerrWrErKr?rr r r test_lower@szBaseTest.test_lowercCs0|ddd|ddd|tddddS)NZHELLOrupperrrWrrr r r test_upperEszBaseTest.test_uppercCs|ddd|dddd|dddd|ddd|dddd|d ddd|d d dd|jddddd |jddddd |d d dd|tddddtjdkrtddkr|tddtjdS)Nzabc ab def g hizabc ab def g hi expandtabsr!zabc ab def g hirUzabc ab def g hizabc ab def g hizabc ab def g hizabc ab def g hi)tabsizez a bz a brQrrWPz a b)rErKr?rZr[structcalcsize OverflowErrorrr r r test_expandtabsJsBzBaseTest.test_expandtabscCs.|gdddd|dgdddd|ddgdddd|gd dddd |gddddd |gddddd |gddddtjd |dgdddd|gd dddd |dgddd|dgddd|ddgddd|ddgddd|gdddd|gddddd |dgdddddd|dgddgdddddd|gdddd |dd!gddd d|gd"ddd d |gdddd d |gdddd d |gdddd tjd#|dgddd d|gd$d%dd d |ddgd&dd'|dd(gd)dd'|gd*d+dd'|dd,gd-dd.|ddgd/dd/|d/gd/dd/d|d0d0gd1dd2|d3gd3dd4|dgddd/|d5gd5dd/|d6d7gd8dd9|gd:d;dd9|dgdd|dgddd?|dgd@dAgdd@|jgdddddB|jddgdddddC|jddgdddddD|jddgdddddE|jddFgdGdddC|tdHddIdIdI|tdHdd|tdHddddS)JNrrr da|b|c|dsplit|rrzb|c|drQ)rrzc|drPrMrU)rrFzb||c||d a||b||c||drrFendcase endcase |z startcasez | startcaserFZbothcaserF |bothcase|)rrFzbcdabcd(a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|rS a|a|a|a|a a//b//c//d//zb//c//d)rrzc//drR)rrFz b////c////da////b////c////d endcase testtest begincasetest begincaserFz bothcase rFtest bothcase testbcabbbcbbrNrxabbaabbaaaaaaabaaAZbobbZ Abbobbbobbbbobb)rBrFZ AbbobbBbbobbdaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHBLAHaBLAHasepmaxsplitrrrrb c da b c drrWrErZr[rKr?rrr r r test_splitgs      zBaseTest.test_splitcCs|gdddd|ddgdddd|gddddd |gddddd |gddddd |gddddtjd |dgdddd |gddddd |dgddd|dgddd|ddgddd|ddgddd|gdddd|gddddd |dgdddddd|dgdgd dddddd |gdd!dd"|d#dgd!dd"d|gd$d!dd"d |gdd!dd"d |gdd!dd"d |gdd!dd"tjd%|d!gd!dd"d |gd&d'dd"d |ddgd(dd)|ddgd*dd)|gd+d,dd)|d-d.gd/dd0|ddgd1dd1|d1gd1dd1d |d-d-gd2dd3|d4gd4dd5|dgddd1|d6gd6dd1|d7d8gd9dd:|gd;ddd?|dgdd=dd>dd?d@|dAgdgdBd=dd>dd?dB|jgdddddC|jddgdddddD|jddgdddddE|jddgdddddF|jdGdgdHdddD|tdIddJdJdJ|tdIdd|tdIddd dS)KNrrrsplitrza|b|crrQ)za|br rrPrMrUdr)za||b||crFrrrrFrz | begincaserrrr)zabr rrrrrrrSrrrrza//b//c)za//br rr{)z a////b////crFrrrrrrrrxr rrrNrrrrrZbbobrZ bbobbbobbAr)rFrrZ bbobbBbbobbArrrrrrrrrra b crrrWrrr r r test_rsplits      zBaseTest.test_rsplitcCs|j}|ddddd|ddddd|ddddd|ddddd|dddddd|dddddd|dddddtj|ddddd|ddddd|ddddd|d dddd |d d ddd |d d ddd d|d d ddd tj|d d ddd d|d d ddd d|dd ddd d|dd ddd d|d d ddd d|ddddd|ddddd|dddddd|dddddtj|dddddd|dddddd|dddddd|d ddddd|dddddd|ddddd|ddddd|dddddd|dddddtj|dddddd|dddddd|dddddd|dddddd|dddddd|dddddd|ddddd|ddddd|ddddd|d d ddd|d!d"dddd#|dd$dd$d|d%d&dd$d|dd'dd$d|dd(dd$d|d)d*dd$d|d+d+dd$d|d,d,dd$d|d-d.dd$d|d/d0dd$dtj|d/d0dd$dd|d/d0dd$dd|d/d0dd$dd|d1d0dd$dd|d0d0dd$dd|d/d0dd$d|d2d2dd$d|d3d3dd$d|d4d5dd4d|d6d7dd4d|d8d9dd4d|d8d8dd4d|d:d:dd;d;|dd:dd;d=d|d:d:dd;d=d|d:d:dd?d@|dAd:ddBdC|dDdEddBdC|dFd:ddGdH|dIdJddGdH|d:d:ddKdH|dLdMddNdO|dLdMddNdOtj|dLdMddNdOd|dLdMddNdOd|dLdMddNdOd|dPdMddNdOd|dQdMddNdOd|dMdMddNdOd|dRdSdd4dT|dUdVdd4dT|dSdSddWdW|dXdYddZd[|dXdYddZd[d|dXdYddZd[tj|dXdYddZd[d|d\dYddZd[d|dYdYddZd[d|d]d^ddKd_|d`daddbdc|dYdYdd@d[|dddeddfdg|dddeddfdgtj|dddeddfdgd|dddeddfdgd|dddeddfdgd|dhdeddfdgd|dideddfdgd|dededdfdgd|dSdjddSd4|dkdlddSd4|dmdmdd4dn|dodpddHdqd|drdpddHd|dsdpddHdqd|dtdpddHdqd|dtdpddHdqd|dpdpddHdqd|dtdpddHdq|dpdpddudq|dpdpddudqd|dvd2dddw|dxd2dddwd|d2d2dddwd|ddddd|d2d2ddydzd|d2d2dd{dz|dd|dd|d|dd}dd|d|dud~dd|d|tdd|tddd|tdddd|tdddddS)NrFrcrrz*A**z*1A*1z*1z*-#A*-#z*-#z*-A*-A*-AAz*-rSrUrMz*-A*-ArPz*-AArQrZAAAZ AAAAAAAAAAZBCDZABACADAr{ZBCDAZBCADAZBACADAZABCADZABCADAAz *************z^A^a^AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA^itheZaterZtheaterZthetheZ thethethetherZtheatheatheatheathatZthaetz here and rezhere and therezhere and re and rezhere and there and therezhere and re and thererrZabcdefgZbobZbbobobZbobXbobZ bbobobXbbobobZaaaaaaaZ aaaaaaabobzWho goes there?ozWhO gOes there?OzWhO goes there?rqzwho goes there?Wwzwwho goes there?wwzWWho goes there?WWzWho goes there!?!zWho goes there!!zWho goes there??.zTh** ** a t**suezThis is a tissueisz**zTh** ** a tissuezTh** is a tissueZcobobZbobobZcobZ cobobXcobocobZ bobobXbobobobZbotZ ReyKKjaviKKZ Reykjavikr8ZKKZ ReyKKjavikzA----B----C----zA.B.C.z----u...м......< ...м...... "zBaseTest.test_additional_splitcCs,|gddd|gddd|ddgdddd |gd dddd |gddddd |gddddd |gddddtjd|dgdddd|dgdddd|gddddd |gdd|dgdd|ddgdd|ddgdddd |dgdddd|ddgdddd |gddddd |gddddd |ddgdddd d!}|dgd|d||dd"gdg|ddd |d#gdgd$|ddd$d%D]B}|d&d'g|d|d&d'g|dd|d&d'g|ddd qdS)(N)rrrrrzthis is the rsplit functionrrrrrrrQ)za br rrPrMrUrrz a b c d )za br rrrrrrr az a b crz a br )rrr rrXrrz a arrrrrrr r r test_additional_rsplitsN  "zBaseTest.test_additional_rsplitcCs|ddd|ddd|ddd|dddd}|d |d|d |d|d |d|dddd|dddd|dddd|dddddS) Nrz hello stripzhello lstripz hellorstripz abc rrz abc z abcrE)r rr r r test_strip_whitespace&szBaseTest.test_strip_whitespacecCs|dddd|dddd|dddd|dddd|d d dd |d d dd |tddd d |tddd d |tddd d dS)NrZxyzzyhelloxyzzyr ZxyzZ helloxyzzyr Z xyzzyhellor rFZ mississippiZ mississipprrWrrr r r test_strip7szBaseTest.test_stripcCsd|dddd|dddd|dddd|dddd|d dddd |tdddS) Nz abc rrljustrRzabc rwrMrPz abc*******rrrr r r test_ljustFs zBaseTest.test_ljustcCsd|dddd|dddd|dddd|dddd|d dddd |tdddS) Nz abcrrrjustrRz abcrwrMrPz *******abcrrrr r r test_rjustNs zBaseTest.test_rjustcCsd|dddd|dddd|dddd|dddd|d dddd |tdddS) Nz abc rrcenterrRz abc rwrMrPz ***abc****rrrr r r test_centerVs zBaseTest.test_centercCs"|ddd|tddddS)NzhEllO CoMPuTErSzHeLLo cOmpUteRsswapcaserrWrrr r r test_swapcase^szBaseTest.test_swapcasecCs|dddd|dddd|dddd|dddd|dddd|dddd |d d dd|d d dd|d d dd |d d dd|dddd|dddd|tdddS)Nr4zfillrPrMZ0123rUz+123z+0123r{z-123z-0123Z000rFZ34rQZ0034rrr r r test_zfillcszBaseTest.test_zfillcCsv|ddd|ddd|ddd|ddd|ddd|dd d|dd d|tddd dS) NFrFislowerTrr rrZaBcabc rWrrr r r test_islowersszBaseTest.test_islowercCsv|ddd|ddd|ddd|ddd|ddd|dd d|dd d|td dd dS) NFrFisupperrTrrABCZAbCzABC rrrWrrr r r test_isupper}szBaseTest.test_isuppercCs|ddd|ddd|ddd|ddd|ddd|dd d|dd d|dd d|dd d|dd d|ddd|tddddS)NFrFistitlerTrrzA Titlecased LinezA Titlecased LinezA Titlecased, LinezNot a capitalized StringzNot a Titlecase StringzNot--a Titlecase StringZNOTrrrWrrr r r test_istitleszBaseTest.test_istitlecCs|ddd|ddd|ddd|ddd|ddd|dd d|dd d|dd d|td dd dS)NFrFisspacerT   rz z arrrWrrr r r test_isspaceszBaseTest.test_isspacecCsv|ddd|ddd|ddd|ddd|ddd|dd d|dd d|tddd dS) NFrFisalphaTrrrrrZaBc123rrWrrr r r test_isalphaszBaseTest.test_isalphacCs|ddd|ddd|ddd|ddd|ddd|dd d|dd d|dd d|td dd dS)NFrFisalnumTrrrZ 123abc456Za1b3czaBc000 rrrrWrrr r r test_isalnumszBaseTest.test_isalnumcCs|ddd|ddd|ddd|ddd|ddd|dd dtd D]d}|dd |dd|dd |dd|dd |dd d|dd |dd dq\dS) NTrFisasciirzF€ér!r%z )rEr^)r pr r r test_isasciis zBaseTest.test_isasciicCsZ|ddd|ddd|ddd|ddd|ddd|td dd dS) NFrFisdigitrT0 0123456789Z 0123456789arrrWrrr r r test_isdigits zBaseTest.test_isdigitcCsh|ddd|ddd|ddd|ddd|dd d|d d d|td dd dS)Nz Hello rtitlerrzFormat This As Title StringzfOrMaT thIs aS titLe StringzFormat,This-As*Title;StringzfOrMaT,thIs-aS*titLe;StringZGetintZgetIntrrWrrr r r test_titleszBaseTest.test_titlecCs|gddd|gddd|gddd|gddd|gdd d|gd d d|gd d dd |gd d dd|jgd d dd d|jgd d ddd|tdddddS)N)rrrtrFrz abc def ghi splitlinesz abc def ghi)rrrtrz abc def ghiz abc def ghi )rrrtrrFzabc def ghi )rFrrrtrrFz abc def ghi F)rrzdef zghi r'T)keependsrrrWrrr r r test_splitliness&    zBaseTest.test_splitlines)2rrrr.r\r$r7rErKrLror~rrrrrrrrrunittestZskipIfrZr[rrrrrrrr rrrrrrrrr!r#r(r*r,r2r6r8r;r r r r r"sZ@95FF2  $(       r"c@seZdZddZddZdS) CommonTestcCsF|d}|d}|D]}||7}t|q|t|t|dS)NZDNSSECrF)r.hashr>)r rrr r r r test_hashs    zCommonTest.test_hashcCsX|ddd|ddd|ddd|ddd|dd d|d d ddS) Nu ῼῳῳῳu ῳῳῼῼruⓅⓨⓣⓗⓞⓝuⓅⓎⓉⒽⓄⓃuⓟⓨⓣⓗⓞⓝu Ⅰⅱⅲu ⅠⅡⅢu ⅰⅱⅲu ƛᴀᶆȡᾷrrr r r test_capitalize_nonasciis$z#CommonTest.test_capitalize_nonasciiN)rrrr?r@r r r r r=s r=c@seZdZddZddZddZddZd d Zd d Zd dZ ddZ ddZ e j ddZddZddZddZddZddZdd Zd!S)"MixinStrUnicodeUserStringTestcCs|dddd|dddd|dddd|dddd|dddd|ddddd |dddd d |dddd d |ddddd |dddd d|ddddd|dddddd|dddddd|dddddd |dddddd|ddddd d|dddddd|dddddd|dddddd|dddddd|ddddd|ddddd|dddd d|dddd d|dddddd|dddd d|tdd|tddd|dddd|dddd|dddd|dddd |dddd!d|dddd"d|dddd#dd|dddd$dd |dddd$dd%|tddd&dS)'NTr startswithrF hello worldrFellorQrrUr{rrw helloworldloworMrrrSirTrirWrZharZlloZhelloxrr helloworldrFrNrDrO)rrrZhelrPrWrrr r r test_startswith sT  z-MixinStrUnicodeUserStringTest.test_startswithcCs|dddd|dddd|dddd|dddd|dd dd |dd dd d d |dd dd d d|dd dddd|dd dddd|dd ddd d|dd dddd|dd ddd d|dddddd|dddddd|dddddd|dddddd|dddddd|ddddd|ddddd|dddddd|dddddd|dd dd d|dd dd dd|dd dd dd |dd dd dd|dd dddd|dd dddd|dd dddd|dd ddd d |dd dddd|tdd|tddd!|dddd"|dddd#|dddd$|dddd%|dd dd&d |dd dd'd d|dddd(dd|dddd)dd|dddd*dd|tddd+dS),NTrendswithrFrrFrCrEZworlrMrsZworldrvrFrQrrPrUr!rxrrHrIrTirGrSiiirrWrJrKrLr rMrP)hellZellrQ)rrUrRrrr r r test_endswith=s\  z+MixinStrUnicodeUserStringTest.test_endswithcCs|dddd|dddd|dddd|dddd|dddd|dddd |dd dd |dd dd |dddd dS) NTrF __contains__rrFrzabczabcrZasdfZasdrrr r r test___contains__qsz/MixinStrUnicodeUserStringTest.test___contains__cCs|dddd|dddd|dddd|dddtdd|dddtdd|dddtdd |d ddtdd|tddd dS) Nrrrrrr rSrMrQrFrtrEslicerKr?rr r r test_subscript|sz,MixinStrUnicodeUserStringTest.test_subscriptcCs|dddtdd|dddtdd|dddtdd|dddtd d|d ddtd d|d ddtdd|d ddtdd|d ddtd d|d ddtdd |tddd dS)NrrrrrYrMrxrPrrQrrFirtrZrr r r test_slicesz(MixinStrUnicodeUserStringTest.test_slicec Cs~tjtj}dddddtjdddf }|D]P}|D]F}|ddD]4}t||||}|d||d t|||q@q0q(dS) NrrQrM)rSrHirFr) string ascii_lettersrerZr[r/rErbr[)r sindicesstartstopstepLr r r test_extended_getslices  z4MixinStrUnicodeUserStringTest.test_extended_getslicecCsb|dddd|dddd|dddd|dddd|tdd|tddddS) NrFrr__mul__rSrrQZ abcabcabcrMrrr r r test_muls z&MixinStrUnicodeUserStringTest.test_mulc Cs|dddgd|dddd|dddd|d ddd |d ddt|d d dd|dd dtdg|dddgd|tdjgddD]`}|d |d|ddddd |g||d |d|ddddd |f|q|dddt|tdd|tddd|tddd|tddddtgzdd}| d|Wn>ty}z$dt |vr| dWYd}~nd}~00| ddS) Nrr%rbrrrFZbd)rFrrFrZac)rrFr rFzw x y zrrr)rrzza.b.crr)rrrM)r{}rrSrrrQrPcssddVdS)NrUrFr r r r r fsz2MixinStrUnicodeUserStringTest.test_join..f+zjoin() ate exception messagezexception not raised) rErrrGr?rbrrKbytesr$r,Zfail)r rrmer r r test_joins8   z'MixinStrUnicodeUserStringTest.test_joincCsf|dddd|dddd|dd dd|dd dd|d d dd |d d dd |dddd|dd dddD]}|ttfd d|qtjd}t|}|dddd|dddd||dd||ddt||dddd|dddd|t dd|t ddd|t ddd|t d dd|td di|t d!dd"|t ddd|t ddd#|d$d%dd&d$i|d'd(dd)|t d*dd+|t d,dd-|td.dd|td/d0dd1|td2d0dd1|td*dtjd3d4f|td5dtjd3d6fGd7d8d8t }|t dd|dS)9Nz+hello+z+%s+__mod__rz+10+z+%d+rRrz%c""$$Z10z%dr.)ii z 42z%3ldrWZ42E@z0042.00z%07.2fz%07.2Frrz%(foo)sz%s%srRrz%(fooz%(foo)s %(bar)s)foorWyE@barz %((foo))sz(foo)Zhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxz%sxZgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa%*s)ryrzz%10.*f)ryrxz%10z%%%dflg @z%%.%dfrQrF%.*f$I$I?c@s eZdZdS)z8MixinStrUnicodeUserStringTest.test_formatting..XNr;r r r r Xr r~) rErKrrrZr[r,rLfloatr?object)r ZordinalZ longvalueZ slongvaluer~r r r test_formattingsR     z-MixinStrUnicodeUserStringTest.test_formattingcCsddlm}m}m}d|d>d}|tdd|ddf|tdd|ddf|tdd|ddf|tdd|ddfdS) Nr)PY_SSIZE_T_MAXINT_MAXUINT_MAXrQr{rrrFr|r})Z _testcapirrr bit_lengthrKr)r rrrZSIZE_MAXr r r test_formatting_c_limitss        z6MixinStrUnicodeUserStringTest.test_formatting_c_limitscCsJtdD]<}d|}d}tdD]"}|ddd}||d|q qdS) Nrz%%.%ifg{Gz?<g.DT! @g@g$@rr)r^rL)r Zprecrr*r'r r r test_floatformattings   z2MixinStrUnicodeUserStringTest.test_floatformattingcCs|ddd|ddd|ddd|ddd|ddddd|ddd|ddd |ddd|ddd |ddd|ddd |ddddS) NrrrTrrrrcrrr7rrr r r test_inplace_rewritessz3MixinStrUnicodeUserStringTest.test_inplace_rewritescCsx|ddddd}|d|dd|d|dd |d |dd |d |dd |t|dd|t|dddS)N)zthis is the partiz tion methodzthis is the partition method partitionrhttp://www.python.orghttp://www.python.orgr)rrFrFrrFhttp://rrzhttp://www.python.orgrFrrFrErKrr?r Sr r r test_partition.sz,MixinStrUnicodeUserStringTest.test_partitioncCsx|ddddd}|d|dd|d|dd |d |dd |d |dd |t|dd|t|dddS)N)zthis is the rpartirz on methodzthis is the rpartition method rpartitionrrrr)rFrFrrrrrrrFrrr r r test_rpartition=sz-MixinStrUnicodeUserStringTest.test_rpartitioncCs*d}|d|ddd|d|dddd|d|dddd|d|dddd|d|d dd|d|d ddd|d|d ddd|d|d ddd|d|d dd|d|d ddd|d|d ddd|d|d ddd|d|d dd|d|d ddd|d|d ddd|d|d ddd|d|d dd|d |d ddd|d |d ddd|d|d ddd|d|ddd|d|dddd|d|dddd|d|dddd|d|ddd|d|dddd|d|dddd|d|dddddS)NrrPrqrrMrHrrrrrrOrQr'TrTrrFrBr)r rar r r test_none_argumentsLs:z1MixinStrUnicodeUserStringTest.test_none_argumentsc Csd}d}|td|j|ddd|td|j|ddd|td|j|ddd|td|j|ddd|td|j|ddd|td|j|ddd|td |j|ddd| d d d d dS)Nrr'z^find\(z^rfind\(z^index\(z ^rindex\(z^count\(z ^startswith\(z ^endswith\(rRrrqr) ZassertRaisesRegexr?rqrrrrOrBrTrE)r rar'r r r *test_find_etc_raise_correct_error_messagesrs0       zHMixinStrUnicodeUserStringTest.test_find_etc_raise_correct_error_messagesN)rrrrSrVrXr\r]rgrirqrrZ cpython_onlyrrrrrrrr r r r rA s"04     $5  &rAc@seZdZddZdS)MixinStrUnicodeTestcCsn|j}Gddd|}|d}||g}||||t|||d}||g}|||dS)Nc@s eZdZdS)z5MixinStrUnicodeTest.test_bug1001011..subclassNr;r r r r subclasssrr)r.rbr@r5r6)r trs1s2r r r test_bug1001011s z#MixinStrUnicodeTest.test_bug1001011N)rrrrr r r r rsr)__doc__r<r_rZrrr collectionsrrrrr"r=rArr r r r s(   Z