4XSSKrSSKrSSKrSSKrSSKrSSKJr SSKJr SSK J r Sr \R"S5r SrSr\R"\"/S Q55r\R"\"/S Q55rS rS r\R*R-S S5r\R*R-\S5r\R*R-\S5r\R*R-\S5r\R*R-\S5r\R*R-\S5r\R*R-\S5r\R*R-\S5r\R*R-\S5rSr "SS\RB5r"Sr#"SS\"5r$"SS\"5r%"SS 5r&"S!S"\&\"5r'"S#S$\&\"5r("S%S&\&\"5r)"S'S(\RB5r*"S)S*\"5r+"S+S,\"5r,"S-S.\"5r-"S/S0\"5r."S1S2\R^5r0"S3S4\"5r1"S5S6\Rd5r3"S7S8\"5r4"S9S:\RB5r5"S;S<\RB5r6"S=S>\RB5r7\8S?:Xa\Rr"5 g)@N)partial)support) os_helpers=3hIElQAAAAAJAAAAHAAAAGQAAAAAAAAArAAAAAAAAACsAAAAFQAAAK0AAAAjAAAAwwAAAKEAAADn AAAAMAAAAIkBAAAHAAAAugEAABYAAADCAQAAHAAAANkBAAALAAAA9gEAAEIBAAACAgAAFgAAAEUD AAAeAAAAXAMAAKEAAAB7AwAAMgAAAB0EAAAFAAAAUAQAABsAAABWBAAAIQAAAHIEAAAJAAAAlAQA AABSYXltb25kIEx1eHVyeSBZYWNoLXQAVGhlcmUgaXMgJXMgZmlsZQBUaGVyZSBhcmUgJXMgZmls ZXMAVGhpcyBtb2R1bGUgcHJvdmlkZXMgaW50ZXJuYXRpb25hbGl6YXRpb24gYW5kIGxvY2FsaXph dGlvbgpzdXBwb3J0IGZvciB5b3VyIFB5dGhvbiBwcm9ncmFtcyBieSBwcm92aWRpbmcgYW4gaW50 ZXJmYWNlIHRvIHRoZSBHTlUKZ2V0dGV4dCBtZXNzYWdlIGNhdGFsb2cgbGlicmFyeS4AV2l0aCBj b250ZXh0BFRoZXJlIGlzICVzIGZpbGUAVGhlcmUgYXJlICVzIGZpbGVzAG11bGx1c2sAbXkgY29u dGV4dARudWRnZSBudWRnZQBteSBvdGhlciBjb250ZXh0BG51ZGdlIG51ZGdlAG51ZGdlIG51ZGdl AFByb2plY3QtSWQtVmVyc2lvbjogMi4wClBPLVJldmlzaW9uLURhdGU6IDIwMDMtMDQtMTEgMTQ6 MzItMDQwMApMYXN0LVRyYW5zbGF0b3I6IEouIERhdmlkIEliYW5leiA8ai1kYXZpZEBub29zLmZy PgpMYW5ndWFnZS1UZWFtOiBYWCA8cHl0aG9uLWRldkBweXRob24ub3JnPgpNSU1FLVZlcnNpb246 IDEuMApDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9aXNvLTg4NTktMQpDb250ZW50 LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0CkdlbmVyYXRlZC1CeTogcHlnZXR0ZXh0LnB5IDEuMQpQ bHVyYWwtRm9ybXM6IG5wbHVyYWxzPTI7IHBsdXJhbD1uIT0xOwoAVGhyb2F0d29iYmxlciBNYW5n cm92ZQBIYXkgJXMgZmljaGVybwBIYXkgJXMgZmljaGVyb3MAR3V2ZiB6YnFoeXIgY2ViaXZxcmYg dmFncmVhbmd2YmFueXZtbmd2YmEgbmFxIHlicG55dm1uZ3ZiYQpmaGNjYmVnIHNiZSBsYmhlIENs Z3ViYSBjZWJ0ZW56ZiBvbCBjZWJpdnF2YXQgbmEgdmFncmVzbnByIGdiIGd1ciBUQUgKdHJnZ3Jr ZyB6cmZmbnRyIHBuZ255YnQgeXZvZW5lbC4ASGF5ICVzIGZpY2hlcm8gKGNvbnRleHQpAEhheSAl cyBmaWNoZXJvcyAoY29udGV4dCkAYmFjb24Ad2luayB3aW5rIChpbiAibXkgY29udGV4dCIpAHdp bmsgd2luayAoaW4gIm15IG90aGVyIGNvbnRleHQiKQB3aW5rIHdpbmsA sABCDs3hIElQAABQAGAAAAHAAAAEwAAAALAAAAfAAAAAAAAACoAAAAFQAAAKkAAAAjAAAAvwAAAKEAAADj AAAABwAAAIUBAAALAAAAjQEAAEUBAACZAQAAFgAAAN8CAAAeAAAA9gIAAKEAAAAVAwAABQAAALcD AAAJAAAAvQMAAAEAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABQAAAAYAAAACAAAAAFJh eW1vbmQgTHV4dXJ5IFlhY2gtdABUaGVyZSBpcyAlcyBmaWxlAFRoZXJlIGFyZSAlcyBmaWxlcwBU aGlzIG1vZHVsZSBwcm92aWRlcyBpbnRlcm5hdGlvbmFsaXphdGlvbiBhbmQgbG9jYWxpemF0aW9u CnN1cHBvcnQgZm9yIHlvdXIgUHl0aG9uIHByb2dyYW1zIGJ5IHByb3ZpZGluZyBhbiBpbnRlcmZh Y2UgdG8gdGhlIEdOVQpnZXR0ZXh0IG1lc3NhZ2UgY2F0YWxvZyBsaWJyYXJ5LgBtdWxsdXNrAG51 ZGdlIG51ZGdlAFByb2plY3QtSWQtVmVyc2lvbjogMi4wClBPLVJldmlzaW9uLURhdGU6IDIwMDAt MDgtMjkgMTI6MTktMDQ6MDAKTGFzdC1UcmFuc2xhdG9yOiBKLiBEYXZpZCBJYsOhw7FleiA8ai1k YXZpZEBub29zLmZyPgpMYW5ndWFnZS1UZWFtOiBYWCA8cHl0aG9uLWRldkBweXRob24ub3JnPgpN SU1FLVZlcnNpb246IDEuMApDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9aXNvLTg4 NTktMQpDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiBub25lCkdlbmVyYXRlZC1CeTogcHlnZXR0 ZXh0LnB5IDEuMQpQbHVyYWwtRm9ybXM6IG5wbHVyYWxzPTI7IHBsdXJhbD1uIT0xOwoAVGhyb2F0 d29iYmxlciBNYW5ncm92ZQBIYXkgJXMgZmljaGVybwBIYXkgJXMgZmljaGVyb3MAR3V2ZiB6YnFo eXIgY2ViaXZxcmYgdmFncmVhbmd2YmFueXZtbmd2YmEgbmFxIHlicG55dm1uZ3ZiYQpmaGNjYmVn IHNiZSBsYmhlIENsZ3ViYSBjZWJ0ZW56ZiBvbCBjZWJpdnF2YXQgbmEgdmFncmVzbnByIGdiIGd1 ciBUQUgKdHJnZ3JrZyB6cmZmbnRyIHBuZ255YnQgeXZvZW5lbC4AYmFjb24Ad2luayB3aW5rAA== s3hIElQcAAAAGAAAAHAAAAEwAAAALAAAAfAAAAAAAAACoAAAAFQAAAKkAAAAjAAAAvwAAAKEAAADj AAAABwAAAIUBAAALAAAAjQEAAEUBAACZAQAAFgAAAN8CAAAeAAAA9gIAAKEAAAAVAwAABQAAALcD AAAJAAAAvQMAAAEAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABQAAAAYAAAACAAAAAFJh eW1vbmQgTHV4dXJ5IFlhY2gtdABUaGVyZSBpcyAlcyBmaWxlAFRoZXJlIGFyZSAlcyBmaWxlcwBU aGlzIG1vZHVsZSBwcm92aWRlcyBpbnRlcm5hdGlvbmFsaXphdGlvbiBhbmQgbG9jYWxpemF0aW9u CnN1cHBvcnQgZm9yIHlvdXIgUHl0aG9uIHByb2dyYW1zIGJ5IHByb3ZpZGluZyBhbiBpbnRlcmZh Y2UgdG8gdGhlIEdOVQpnZXR0ZXh0IG1lc3NhZ2UgY2F0YWxvZyBsaWJyYXJ5LgBtdWxsdXNrAG51 ZGdlIG51ZGdlAFByb2plY3QtSWQtVmVyc2lvbjogMi4wClBPLVJldmlzaW9uLURhdGU6IDIwMDAt MDgtMjkgMTI6MTktMDQ6MDAKTGFzdC1UcmFuc2xhdG9yOiBKLiBEYXZpZCBJYsOhw7FleiA8ai1k YXZpZEBub29zLmZyPgpMYW5ndWFnZS1UZWFtOiBYWCA8cHl0aG9uLWRldkBweXRob24ub3JnPgpN SU1FLVZlcnNpb246IDEuMApDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9aXNvLTg4 NTktMQpDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiBub25lCkdlbmVyYXRlZC1CeTogcHlnZXR0 ZXh0LnB5IDEuMQpQbHVyYWwtRm9ybXM6IG5wbHVyYWxzPTI7IHBsdXJhbD1uIT0xOwoAVGhyb2F0 d29iYmxlciBNYW5ncm92ZQBIYXkgJXMgZmljaGVybwBIYXkgJXMgZmljaGVyb3MAR3V2ZiB6YnFo eXIgY2ViaXZxcmYgdmFncmVhbmd2YmFueXZtbmd2YmEgbmFxIHlicG55dm1uZ3ZiYQpmaGNjYmVn IHNiZSBsYmhlIENsZ3ViYSBjZWJ0ZW56ZiBvbCBjZWJpdnF2YXQgbmEgdmFncmVzbnByIGdiIGd1 ciBUQUgKdHJnZ3JrZyB6cmZmbnRyIHBuZ255YnQgeXZvZW5lbC4AYmFjb24Ad2luayB3aW5rAA== )4rrrrrrrrrr$rrrrrrr,rrrrrrr rrrrrrrrrrforrbarr)4r rrrrrrrrrrr rrrr rrrr rrrrrrrr rrrrrrrr rrrrrrr0rrrrrrrrs3hIElQAAAAADAAAAHAAAADQAAAAAAAAAAAAAAAAAAABMAAAABAAAAE0AAAAQAAAAUgAAAA8BAABj AAAABAAAAHMBAAAWAAAAeAEAAABhYsOeAG15Y29udGV4dMOeBGFiw54AUHJvamVjdC1JZC1WZXJz aW9uOiAyLjAKUE8tUmV2aXNpb24tRGF0ZTogMjAwMy0wNC0xMSAxMjo0Mi0wNDAwCkxhc3QtVHJh bnNsYXRvcjogQmFycnkgQS4gV0Fyc2F3IDxiYXJyeUBweXRob24ub3JnPgpMYW5ndWFnZS1UZWFt OiBYWCA8cHl0aG9uLWRldkBweXRob24ub3JnPgpNSU1FLVZlcnNpb246IDEuMApDb250ZW50LVR5 cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9dXRmLTgKQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzog N2JpdApHZW5lcmF0ZWQtQnk6IG1hbnVhbGx5CgDCpHl6AMKkeXogKGNvbnRleHQgdmVyc2lvbikA sL3hIElQAAAAABAAAAHAAAACQAAAADAAAALAAAAAAAAAA4AAAAeAEAADkAAAABAAAAAAAAAAAAAAAA UHJvamVjdC1JZC1WZXJzaW9uOiBObyBQcm9qZWN0IDAuMApQT1QtQ3JlYXRpb24tRGF0ZTogV2Vk IERlYyAxMSAwNzo0NDoxNSAyMDAyClBPLVJldmlzaW9uLURhdGU6IDIwMDItMDgtMTQgMDE6MTg6 NTgrMDA6MDAKTGFzdC1UcmFuc2xhdG9yOiBKb2huIERvZSA8amRvZUBleGFtcGxlLmNvbT4KSmFu ZSBGb29iYXIgPGpmb29iYXJAZXhhbXBsZS5jb20+Ckxhbmd1YWdlLVRlYW06IHh4IDx4eEBleGFt cGxlLmNvbT4KTUlNRS1WZXJzaW9uOiAxLjAKQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFy c2V0PWlzby04ODU5LTE1CkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IHF1b3RlZC1wcmludGFi bGUKR2VuZXJhdGVkLUJ5OiBweWdldHRleHQucHkgMS4zCgA= xx LC_MESSAGESz gettext.mozgettext_bad_magic_number.mozgettext_bad_major_version.mozgettext_bad_minor_version.mozgettext_corrupt.mozgettext_big_endian.moz ugettext.moz metadata.moc[RR5 S[l[RR5 g)Nmessages)gettext _localedirsclear_current_domain _translations8/opt/alt/python313/lib64/python3.13/test/test_gettext.py reset_gettextr"s. (G !r c*\rSrSr\S5rSrSrg)GettextBaseTestcJUR[R[RR [ 5S5 [RR[ 5(d[R"[ 5 [[S5nUR[R"[55 SSS5 [[S5nUR[R"[ 55 SSS5 [["S5nUR[R"[$55 SSS5 [[&S5nUR[R"[(55 SSS5 [[*S5nUR[R"[,55 SSS5 [[.S5nUR[R"[055 SSS5 [[2S5nUR[R"[455 SSS5 [[6S5nUR[R"[855 SSS5 g!,(df  GN=f!,(df  GN=f!,(df  GN~=f!,(df  GNN=f!,(df  GN=f!,(df  N=f!,(df  N=f!,(df  g=f)Nrwb)addClassCleanuprrmtreeospathsplit LOCALEDIRisdirmakedirsopenMOFILEwritebase64 decodebytes GNU_MO_DATAMOFILE_BAD_MAGIC_NUMBERGNU_MO_DATA_BAD_MAGIC_NUMBERMOFILE_BAD_MAJOR_VERSIONGNU_MO_DATA_BAD_MAJOR_VERSIONMOFILE_BAD_MINOR_VERSIONGNU_MO_DATA_BAD_MINOR_VERSIONMOFILE_CORRUPTGNU_MO_DATA_CORRUPTMOFILE_BIG_ENDIANGNU_MO_DATA_BIG_ENDIANUMOFILEUMO_DATAMMOFILEMMO_DATA)clsfps r! setUpClassGettextBaseTest.setUpClasss I,,bggmmI.Fq.IJww}}Y'' KK " &$ 2 HHV'' 4 5 )4 0B HHV''(DE F1 *D 1R HHV''(EF G2 *D 1R HHV''(EF G2 .$ '2 HHV''(;< =( #T *b HHV''(>? @+ '4 B HHV''1 2! '4 B HHV''1 2!   0 0 1 1 1 1 ' ' * * s`*J*J**J<*K*K !*K2#*L%*L J'* J9< K  K K/2 L L L"cUR[R"55UlSURS'[ 5 UR [5 g)NrLANGUAGE) enterContextrEnvironmentVarGuardenvr" addCleanupselfs r!setUpGettextBaseTest.setUps<$$Y%B%B%DE#  &r )rLN)__name__ __module__ __qualname____firstlineno__ classmethodrFrP__static_attributes__rr r!r$r$s33*'r r$s3hIElQAAAAABAAAAHAAAACQAAAAAAAAAAAAAAAAAAAAsAAAAggAAAC0AAAAAUGx1cmFsLUZvcm1z OiBucGx1cmFscz0yOyBwbHVyYWw9KG4gIT0gMSk7CiMtIy0jLSMtIyAgbWVzc2FnZXMucG8gKEVk WCBTdHVkaW8pICAjLSMtIy0jLSMKQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVU Ri04CgA= cD\rSrSrSrSrSrSrSrSr Sr S r S r g ) GettextTestCase1c[RU5 [RUl[ Ul[R"SURS/S9 g)Nrpgettextnames) r$rPr*curdir localedirr1mofilerinstallrNs r!rPGettextTestCase1.setUps8d#  4>>*Fr cURnU"[S5S5 U"[S5S5 U"[S5S5 U"[S5S5 gN albatrossmulluskbaconzRaymond Luxury Yach-tzThroatwobbler Mangrove nudge nudge wink wink assertEqual_rOeqs r!test_some_translations'GettextTestCase1.test_some_translationsI    1[>;' 1Y<! 1 % &(@A 1^ k*r chURnU"[SS5S5 U"[SS5S5 gN my contextriwink wink (in "my context")my other context!wink wink (in "my other context"))rlr\rns r!#test_some_translations_with_context4GettextTestCase1.test_some_translations_with_contexts6    8L- 0 ( * 8& 6 . 0r cURnU"[S5S5 U"[S5S5 U"[S5S5 U"[S5S5 grerkrns r!test_double_quotes#GettextTestCase1.test_double_quotesrrr cURnU"[S5S5 U"[S5S5 U"[S5S5 U"[S5S5 grerkrns r!test_triple_single_quotes*GettextTestCase1.test_triple_single_quotesL    1_ {+ 1] W% 1 ) *,DE 1  +.r cURnU"[S5S5 U"[S5S5 U"[S5S5 U"[S5S5 grerkrns r!test_triple_double_quotes*GettextTestCase1.test_triple_double_quotesrr c@URnU"[S5S5 gNzThis module provides internationalization and localization support for your Python programs by providing an interface to the GNU gettext message catalog library.zGuvf zbqhyr cebivqrf vagreangvbanyvmngvba naq ybpnyvmngvba fhccbeg sbe lbhe Clguba cebtenzf ol cebivqvat na vagresnpr gb gur TAH trggrkg zrffntr pngnybt yvoenel.rkrns r!test_multiline_strings'GettextTestCase1.test_multiline_stringss&    1$ % $ %r c>URnURn[URS5n[R "U5nSSS5 WR 5 U"[S5S5 UR 5 U"[S5S5 SSKnUR SS/S 9 U"[UR5 U"URUR5 U"[UR5 U"[UR5 U?U? g!,(df  N=f) Nrbrirjrgrhrrngettextr]) rlassertNotEqualr0rarGNUTranslationsrbrmbuiltinsrr\)rOroneqrEtrs r!test_the_alternative_interface/GettextTestCase1.test_the_alternative_interface s   !! $++t $''+A%  1] [)  1Y<! J/ 0 1aii 8  QYY' 8QZZ  Hajj!    !% $s D Dr`raN) rRrSrTrUrPrpryr|rrrrrWrr r!rYrYs+G +0+//%r rYcn\rSrSrSrSrSrSrSrSr Sr S r S r S r S rS rSrSrSrSrg)GettextTestCase2i#c[RU5 [RUl[ R "SUR5 [ R"S5 [ R UlgNr) r$rPr*r_r`rbindtextdomain textdomainrmrNs r!rPGettextTestCase2.setUp$sHd#y$..99%r cdUR[R"S5UR5 gr)rlrrr`rNs r!test_bindtextdomain$GettextTestCase2.test_bindtextdomain-s! // :DNNKr cNUR[R"5S5 gr)rlrrrNs r!test_textdomain GettextTestCase2.test_textdomain0s ++-y9r c[[S5nUR[5n[R "U5 SSS5 WR nURURS5 URURS5 URUR[5 SSS5 g!,(df  N{=f!,(df  g=f)NrrzBad magic number) r0r6 assertRaisesOSErrorrr exceptionrlerrnostrerrorfilenamerOrEcmrs r!test_bad_magic_number&GettextTestCase2.test_bad_magic_number3s )4 0B""7+r''+, I   Y__a 0   Y//1C D   Y//1H I1 0++1 0"CB3A,C3 C =C Cc[[S5nUR[5n[R "U5 SSS5 WR nURURS5 URURS5 URUR[5 SSS5 g!,(df  N{=f!,(df  g=f)NrrzBad version number 5) r0r8rrrrrrlrrrrs r!test_bad_major_version'GettextTestCase2.test_bad_major_version=s *D 1R""7+r''+, I   Y__a 0   Y//1G H   Y//1I J2 1++2 1rc[[S5n[R"U5 SSS5 g!,(df  g=fNr)r0r:rrrOrEs r!test_bad_minor_version'GettextTestCase2.test_bad_minor_versionGs) *D 1R  # #B '2 1 1s1 ?c[[S5nUR[5n[R "U5 SSS5 WR nURURS5 URURS5 URUR[5 SSS5 g!,(df  N{=f!,(df  g=f)NrrzFile is corrupt) r0r<rrrrrrlrrrrs r!test_corrupt_file"GettextTestCase2.test_corrupt_fileLs .$ '2""7+r''+, I   Y__a 0   Y//1B C   Y// @( '++( 'rc[[S5n[R"U5nSSS5 UR WRS5S5 g!,(df  N0=f)Nrfoobar)r0r>rrrlrOrErs r!test_big_endian_file%GettextTestCase2.test_big_endian_fileVsH #T *b''+A+ 5)51+ *s A A cURnU"URS5S5 U"URS5S5 U"URS5S5 U"URS5S5 grerkrns r!rp'GettextTestCase2.test_some_translations\[    466+  , 466) g& 466* +-EF 466. !;/r cURnU"[R"SS5S5 U"[R"SS5S5 grt)rlrr\rns r!ry4GettextTestCase2.test_some_translations_with_contextdsB    7  L- 8 ( * 7  . > . 0r cURnU"[R"SSS5S5 U"[R"SSS5S5 g)Nrrurirvrwrx)rlr dpgettextrns r!.test_some_translations_with_context_and_domain?GettextTestCase2.test_some_translations_with_context_and_domainksF    7  Y m D ( * 7  Y(:M J . 0r cURnU"URS5S5 U"URS5S5 U"URS5S5 U"URS5S5 grerkrns r!r|#GettextTestCase2.test_double_quotesrrr cURnU"URS5S5 U"URS5S5 U"URS5S5 U"URS5S5 grerkrns r!r*GettextTestCase2.test_triple_single_quotesz\    466/ "K0 466- '* 466. /1IJ 466$ %{3r cURnU"URS5S5 U"URS5S5 U"URS5S5 U"URS5S5 grerkrns r!r*GettextTestCase2.test_triple_double_quotesrr cLURnU"URS5S5 grrkrns r!r'GettextTestCase2.test_multiline_stringss*    466$ % $ %r )rmr`N)rRrSrTrUrPrrrrrrrrpryrr|rrrrWrr r!rr#sQ!L:JK( A2 000044%r rc2\rSrSrSSjrSrSrSrSrg) PluralFormsTestsicU"X4S5nURX5 U"X4S5nURX5 U"U5nURX5 URRRS-n UR [ 5n U"X4S5nSSS5 URW R [5 URU RU 5 URX5 UR [ 5n U"X4S5nSSS5 URU R [5 URU RU S-5 URX5 U(a(UR[5 U"X4S5 SSS5 gUR [ 5n U"X4S5nSSS5 URX5 g!,(df  GN;=f!,(df  N=f!,(df  g=f!,(df  NT=f)Nr  ?皙?) rl_test_plural_forms__code__co_firstlineno assertWarnsDeprecationWarningr__file__linenor TypeError) rOrrsingularplural tsingulartplural numbers_onlyxrrs r!r#PluralFormsTests._test_plural_formss Xq ) & Xq ) $ H  &((11@@2E   0 1R3/A2 h/ F+ &   0 1R3/A2 h/ FQJ/ $ ""9-40.-!!"45Xt46   Q (#2 1 2 1.-65s0 G: G8 G' G8 G G$' G58 HcURURURSSSS5 URURURSSSS5 g)NThere is %s fileThere are %s filesHay %s ficheroHay %s ficheros%d file deleted%d files deleted)rrrrNs r!test_plural_forms"PluralFormsTests.test_plural_formssR  MM4<<  4 / 1  MM4<< 1 1 3r c[URS5n[URS5nURXSSSS5 URXSSSS5 g)N With contextrrHay %s fichero (context)Hay %s ficheros (context)rr)r npgettextr\r)rOrrs r!test_plural_context_forms*PluralFormsTests.test_plural_context_formss_4>>>:$--8    4 &(C E   1 1 3r cUR[URS5[URS5SSSS5 g)NzUnknown contextrr)rrrr\rNs r!test_plural_wrong_context_forms0PluralFormsTests.test_plural_wrong_context_formss:  DNN$5 6 DMM#4 5  4  4  6r rN)T) rRrSrTrUrrrrrWrr r!rrs)-)<3 36r rc\rSrSrSrSrg)"GNUTranslationsPluralFormsTestCaseicL[RU5 [R"S[R 5 [R "S5 [RUl[RUl[RUl[RUl gr) r$rPrrr*r_rrr\rrNs r!rP(GNUTranslationsPluralFormsTestCase.setUpsdd#y"))49% (( ((  **r rrrr\N)rRrSrTrUrPrWrr r!rrs +r rc&\rSrSrSrSrSrSrg),GNUTranslationsWithDomainPluralFormsTestCaseicp[RU5 [R"S[R 5 [ [RS5Ul[ [RS5Ul [ [RS5Ul [ [RS5Ul gr)r$rPrrr*r_rdgettext dngettextrrr\ dnpgettextrrNs r!rP2GNUTranslationsWithDomainPluralFormsTestCase.setUpstd#y"))4w//;  1 19=  1 19=  !3!3Y?r c UR[[RS5[[RS5SSSSSS9 g)NunknownrrFr)rrrrrrNs r!test_plural_forms_wrong_domainKGNUTranslationsWithDomainPluralFormsTestCase.test_plural_forms_wrong_domainsD  G%%y 1 G$$i 0  4  4  r c UR[[RSS5[[RSS5SSSSSS9 g)NrrrrFr)rrrrrrNs r!&test_plural_context_forms_wrong_domainSGNUTranslationsWithDomainPluralFormsTestCase.test_plural_context_forms_wrong_domainsH  G&& > B G%%y. A  4  4  r rN)rRrSrTrUrPr r rWrr r!rrs@  r rc&\rSrSrSrSrSrSrg)'GNUTranslationsClassPluralFormsTestCaseic6[RU5 [[S5n[R "U5nSSS5 WRUlUR UlURUlURUlg!,(df  NS=fr) r$rPr0r1rrrr\rrs r!rP-GNUTranslationsClassPluralFormsTestCase.setUpshd# &$ 2''+A yy       s B  Bc [R"5nURURURSSSSSS9 g)NrrFr)rNullTranslationsrrrOrs r!#test_plural_forms_null_translationsKGNUTranslationsClassPluralFormsTestCase.test_plural_forms_null_translationss?  $ $ &  JJ  4  4  r c [R"5nUR[URS5[UR S5SSSSSS9 g)NrrrFr)rrrrrr\rs r!+test_plural_context_forms_null_translationsSGNUTranslationsClassPluralFormsTestCase.test_plural_context_forms_null_translationssN  $ $ &  AKK 0 AJJ /  4  4  r rN)rRrSrTrUrPrrrWrr r!rrs%  r rc\rSrSrSrSrSrSrSrSr Sr S r S r S r S rS rSrSrSrSrSrSrSrSrSrSrg)PluralFormsInternalTestCaseic URn[R"S5nSR[ S5Vs/sHn[ U"U55PM sn5nU"US5 gs snf)N000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000rlrc2pyjoinrangestrrOrofrss r!test_ja#PluralFormsInternalTestCase.test_jasZ    LL  GGs5Ac!A$i5 6 1Y Z6A'c URn[R"S5nSR[ S5Vs/sHn[ U"U55PM sn5nU"US5 gs snf)Nn != 1rr10111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111r!r&s r!test_de#PluralFormsInternalTestCase.test_de"sZ    LL " GGs5Ac!A$i5 6 1Y Z6r+c URn[R"S5nSR[ S5Vs/sHn[ U"U55PM sn5nU"US5 gs snf)Nzn>1rr00111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111r!r&s r!test_fr#PluralFormsInternalTestCase.test_fr(sZ    LL  GGs5Ac!A$i5 6 1Y Z6r+c URn[R"S5nSR[ S5Vs/sHn[ U"U55PM sn5nU"US5 gs snf)Nz)n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2rr20111111111111111111101111111110111111111011111111101111111110111111111011111111101111111110111111111011111111111111111110111111111011111111101111111110111111111011111111101111111110111111111011111111r!r&s r!test_lv#PluralFormsInternalTestCase.test_lv.s[    LLD E GGs5Ac!A$i5 6 1Y Z6r+c URn[R"S5nSR[ S5Vs/sHn[ U"U55PM sn5nU"US5 gs snf)Nzn==1 ? 0 : n==2 ? 1 : 2rr20122222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222r!r&s r!test_gd#PluralFormsInternalTestCase.test_gd4s[    LL2 3 GGs5Ac!A$i5 6 1Y Z6r+c URn[R"S5nSR[ S5Vs/sHn[ U"U55PM sn5nU"US5 gs snf)Nzn==1 ? 0 : (n==2 ? 1 : 2)rrr:r!r&s r!test_gd2$PluralFormsInternalTestCase.test_gd2:s[    LL4 5 GGs5Ac!A$i5 6 1Y Z6r+c URn[R"S5nSR[ S5Vs/sHn[ U"U55PM sn5nU"US5 gs snf)Nz6n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < 20)) ? 1 : 2rr10111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222111111111111111111122222222222222222222222222222222222222222222222222222222222222222222222222222222r!r&s r!test_ro#PluralFormsInternalTestCase.test_roAs[    LLQ R GGs5Ac!A$i5 6 1Y Z6r+c URn[R"S5nSR[ S5Vs/sHn[ U"U55PM sn5nU"US5 gs snf)NzEn%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2rr20111111112222222222201111111120111111112011111111201111111120111111112011111111201111111120111111112011111111222222222220111111112011111111201111111120111111112011111111201111111120111111112011111111r!r&s r!test_lt#PluralFormsInternalTestCase.test_ltGs[    LL` a GGs5Ac!A$i5 6 1Y Z6r+c URn[R"S5nSR[ S5Vs/sHn[ U"U55PM sn5nU"US5 gs snf)NzPn%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2rr20111222222222222222201112222220111222222011122222201112222220111222222011122222201112222220111222222011122222222222222220111222222011122222201112222220111222222011122222201112222220111222222011122222r!r&s r!test_ru#PluralFormsInternalTestCase.test_ruMs[    LLk l GGs5Ac!A$i5 6 1Y Z6r+c URn[R"S5nSR[ S5Vs/sHn[ U"U55PM sn5nU"US5 gs snf)Nz#(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2rr20111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222r!r&s r!test_cs#PluralFormsInternalTestCase.test_csSs[    LL> ? GGs5Ac!A$i5 6 1Y Z6r+c URn[R"S5nSR[ S5Vs/sHn[ U"U55PM sn5nU"US5 gs snf)Nz@n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2rr20111222222222222222221112222222111222222211122222221112222222111222222211122222221112222222111222222211122222222222222222111222222211122222221112222222111222222211122222221112222222111222222211122222r!r&s r!test_pl#PluralFormsInternalTestCase.test_plYs[    LL[ \ GGs5Ac!A$i5 6 1Y Z6r+c URn[R"S5nSR[ S5Vs/sHn[ U"U55PM sn5nU"US5 gs snf)Nz:n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3rr30122333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333012233333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333r!r&s r!test_sl#PluralFormsInternalTestCase.test_sl_s[    LLU V GGs5Ac!A$i5 6 1Y Z6r+c URn[R"S5nSR[ S5Vs/sHn[ U"U55PM sn5nU"US5 gs snf)NzNn==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 ? 4 : 5rr01233333333444444444444444444444444444444444444444444444444444444444444444444444444444444444444444445553333333344444444444444444444444444444444444444444444444444444444444444444444444444444444444444444r!r&s r!test_ar#PluralFormsInternalTestCase.test_ares[    LLi j GGs5Ac!A$i5 6 1Y Z6r+c@URnU"[[RS5 U"[[RS5 U"[[RS5 U"[[RSS-S-5 UR [R"S5"S5S 5 U"[[RS 5 U"[[RS S-S-S S--5 UR [R"S 5"S5S5 g)Nzos.chmod('/etc/passwd',0777)z"(eval(foo) && ""zf"{os.system('sh')}"zn+i'nzn+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+n+nr ez((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((n))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))()z)((((((((((((((((((((n)))))))))))))))))))))r ValueErrorrr"rl)rOraisess r! test_security)PluralFormsInternalTestCase.test_securityks""z7<<)GHz7<<)<=z7<<)ABz7<<ec)9: n5a8#>z7<<)@Az7<<US3u9)DE &;# UHn[T"U55v M g7fNr%.0rr's r! FPluralFormsInternalTestCase.test_chained_comparison..~ =HqQqTH!r010z 1 < n == nc3F># UHn[T"U55v M g7frgrhris r!rkrlrmrn100z n == n < 2c3F># UHn[T"U55v M g7frgrhris r!rkrlrmrnz 0 < n < 2c3F># UHn[T"U55v M g7frgrhris r!rkrlrmrn111)rr"rlr#r$rOr's @r!test_chained_comparison3PluralFormsInternalTestCase.test_chained_comparison{s LL '  =E!H ==uE LL &  =E!H ==uE LL &  =E!H ==uE LL %  =E!H ==uEr c\UR[R"S5"S5S5 g)N0123r {rlrr"rNs r!test_decimal_number/PluralFormsInternalTestCase.test_decimal_numbers  f-a0#6r c/SQnUH7nUR[5 [R"U5 SSS5 M9 g!,(df  MK=f)N)zx>1z(n>1zn>1)z 42**42**420xaz1.01e2zn>0x1z+nz-nzn()zn(1)z1+nnzn nzn ? 1 2)rrarr")rOinvalid_expressionsexprs r!test_invalid_syntax/PluralFormsInternalTestCase.test_invalid_syntaxs? (D"":. T"/.(..s A A c[R"S5nURU"S5S5 URU"S5S5 URU"S5S5 g)Nz!!!nrr r)rr"rlrus r! test_negation)PluralFormsInternalTestCase.test_negationsL LL  1q! 1q! 1q!r cdUR[R"S5"S5S5 UR[R"S5"S5S5 UR[R"S5"S5S5 UR[R"S5"S5S5 g)Nz n?1?2:3:4rrr rz n?1:3?4:5r{rNs r!test_nested_condition_operator:PluralFormsInternalTestCase.test_nested_condition_operatorsz k215q9 k215q9 k215q9 k215q9r c[R"S5nURU"S5S5 URU"S5S5 URU"S5S5 URU"S5S5 UR[US5 g) Nz2/n*3r rrri)rr"rlrZeroDivisionErrorrus r! test_division)PluralFormsInternalTestCase.test_divisionss LL ! 1q! 1q! 1q! 2# +Q2r c[R"S5nURU"S5S5 URU"S5S5 UR[5 URU"S5S5 SSS5 UR[5 URU"S5S5 SSS5 UR[5 URU"S5S5 SSS5 UR [ US5 UR [ US 5 UR [ U/5 UR [ U[55 g!,(df  N=f!,(df  N=f!,(df  N=f) Nr-r rrrg@r22)rr"rlrrrrobjectrus r!test_plural_number.PluralFormsInternalTestCase.test_plural_numbers LL " 1q! 1q!   0 1   QsVQ '2   0 1   QsVQ '2   0 1   QsVQ '2 )Q, )Q- )Q+ )Q12 1 1 1 1 1s$EEE0 E E-0 E>rN)rRrSrTrUr)r/r3r7r;r>rBrFrJrNrRrVrZrcrvr|rrrrrrWrr r!rrszZ Z Z Z Z ZZ Z Z Z Z Z Z D F7#" : 3 2r rc \rSrSrSrSrSrg)GNUTranslationParsingTestic*[[S5nUR[R"[ 55 SSS5 [[S5n[ R"U5nSSS5 g!,(df  N>=f!,(df  g=f)Nr'r)r0r1r2r3r4GNU_MO_DATA_ISSUE_17898rrrs r!!test_plural_form_error_issue17898;GNUTranslationParsingTest.test_plural_form_error_issue17898s_ &$ 2 HHV''(?@ A &$ 2''+A    s*A3B3 B Bcp[[S5nUR[R"[ 55 SSS5 [[S5n[ R"U5nURUR5SS5 SSS5 g!,(df  Na=f!,(df  g=f)z]Checks that comments like: #-#-#-#-# messages.po (EdX Studio) #-#-#-#-# are ignored. r'Nrz plural-formsznplurals=2; plural=(n != 1);) r0r1r2r3r4rrrrlinfors r!*test_ignore_comments_in_headers_issue36239DGNUTranslationParsingTest.test_ignore_comments_in_headers_issue36239s}&$ 2 HHV''(?@ A &$ 2''+A   QVVXn57U V    s*B:B' B$' B5rN)rRrSrTrUrrrWrr r!rrs , Wr rc,\rSrSrSrSrSrSrSrg)UnicodeTranslationsTestic$[RU5 [[S5n[R "U5UlSSS5 UR RUlUR RUlg!,(df  NE=fr) r$rPr0r@rrrrmr\rs r!rPUnicodeTranslationsTest.setUpsZd# '4 B,,R0DF! ! B BcNURURS5[5 g)Nr)assertIsInstancermr%rNs r!test_unicode_msgid*UnicodeTranslationsTest.test_unicode_msgids dffRj#.r cFURURS5S5 g)NabÞu¤yzrkrNs r!test_unicode_msgstr+UnicodeTranslationsTest.test_unicode_msgstrs )84r cURSS5nUR[U[55 UR US5 g)Nu mycontextÞru¤yz (context version))r\ assertTrue isinstancer%rlrs r!test_unicode_context_msgstr3UnicodeTranslationsTest.test_unicode_context_msgstrs6 MM/8 4  1c*+ 67r )rmr\rN) rRrSrTrUrPrrrrWrr r!rrs(/58r rc2\rSrSrSrSrSrSrSrSr g) UnicodeTranslationsPluralTestic$[RU5 [[S5n[R "U5UlSSS5 UR RUlUR RUlg!,(df  NE=fr) r$rPr0r1rrrrrrs r!rP#UnicodeTranslationsPluralTest.setUps\d# &$ 2,,R0DF  )) rc URnU"[URSSS5[55 U"[URSSS5[55 gNrr r)rrrr%rOunlesss r!r0UnicodeTranslationsPluralTest.test_unicode_msgidsCz$--B2C89z$--B2C89r c URnU"[URSSSS5[55 U"[URSSSS5[55 gr)rrrr%rs r!test_unicode_context_msgid8UnicodeTranslationsPluralTest.test_unicode_context_msgidsGz$..RQ7=>z$..RQ7=>r c(URnURnURSSS5nU"[U[55 U"US5 U"[U[55 URSSS5nU"[U[55 U"US5 g)Nrrr rrr)rlrrrr%rOrorrs r!r1UnicodeTranslationsPluralTest.test_unicode_msgstrs    MM,.BA Fz!S!" 1z!S!" MM,.BA Fz!S!" 1 r cURnURnURSSSS5nU"[U[55 U"US5 URSSSS5nU"[U[55 U"US5 g)Nrrrr rrr)rlrrrr%rs r! test_unicode_msgstr_with_context>UnicodeTranslationsPluralTest.test_unicode_msgstr_with_contexts|    NN>-/CQ Hz!S!" 1() NN>-/CQ Hz!S!" 1)*r )rrrN) rRrSrTrUrPrrrrrWrr r!rrs*: ? ! +r rc \rSrSrSrSrSrg)WeirdMetadataTesti c[RU5 [[S5n[R "U5UlSSS5 g! UR5 e=f!,(df  g=fr)r$rPr0rBrrrtearDownrs r!rPWeirdMetadataTest.setUp sWd# '4 B  004!    ! sA#A  A  A## A1cURR5nUR[U5S5 URUSS5 g)N zlast-translatorz=John Doe Jane Foobar )rrrllen)rOrs r!test_weird_metadata%WeirdMetadataTest.test_weird_metadatas?vv{{} TA& /0 K Mr )rN)rRrSrTrUrPrrWrr r!rr s Mr rc\rSrSrSrSrg)DummyGNUTranslationsicg)NrrrNs r!rDummyGNUTranslations.foosr rN)rRrSrTrUrrWrr r!rrsr rc\rSrSrSrSrg)GettextCacheTestCasei c[RUl[UlUR [ [R5S5 [R"SUR5nUR [ [R5S5 [R"SUR[S9nUR [ [R5S5 UR UR[5 [R"SUR[S9nUR [ [R5S5 UR UR[5 g)Nrrr )class_r) r*r_r`r1rarlrrr translationr __class__rs r! test_cacheGettextCacheTestCase.test_cache!s  W223Q7    4>> : W223Q7    4>>'; = W223Q7 &:;    4>>'; = W223Q7 &:;r rN)rRrSrTrUrrWrr r!rr ssF82fXRs33r cSUSU3$)Nz pgettext: rr)rOcontextrs r!r\FallbackTranslations.pgettextAsG9Bwi00r cSUSUSUSU3$)Nz npgettext: rr)rOrrrr]s r!rFallbackTranslations.npgettextDs!WIRxr&A3??r rN) rRrSrTrUrrr\rrWrr r!rr:s%41@r rc&\rSrSrSrSrSrSrg)FallbackTestCaseiHct[R"5nUR[55 UR URS5S5 UR UR SSS5S5 UR UR SS5S5 UR URSSSS5S5 g) Nr gettext: foofoosr ngettext: foo, foos, 1rpgettext: context, foo npgettext: context, foo, foos, 1)rr add_fallbackrrlrr\rrs r!test_null_translations_fallback0FallbackTestCase.test_null_translations_fallbackIs  $ $ & +-. 5)>: E6151 3 Iu51 3 YvqA; =r c[[S5n[R"U5nSSS5 WR [ 55 UR URS5S5 UR URSSS5S5 UR URSS5S5 UR URSSSS5S 5 g!,(df  N=f) Nrrrrr rrrr) r0r1rrrrrlrr\rrs r!test_gnu_translations_fallback/FallbackTestCase.test_gnu_translations_fallbackTs &$ 2''+A  +-. 5)>: E6151 3 Iu51 3 YvqA; = s C C"c"SS[R5nU"5n[5n[R"5nURU5 URU5 UR URS5S5 UR URS5S5 UR URS5S5 g)Nc(^\rSrSrU4SjrSrU=r$)>FallbackTestCase.test_nested_fallbacks..NestedFallbackiac0>US:Xag[TU]U5$)Nrfallback)superr)rOrrs r!rFFallbackTestCase.test_nested_fallbacks..NestedFallback.gettextbse#%ww//r r)rRrSrTrUrrW __classcell__)rs@r!NestedFallbackras  0 0r rrz gettext: barrr)rrrrrl)rOr fallback1 fallback2rs r!test_nested_fallbacks&FallbackTestCase.test_nested_fallbacks`s 0W55 0 #$ (*  $ $ & y! y! **51>B 5):6 5)>:r rN)rRrSrTrUrrrrWrr r!rrHs = =;r rc\rSrSrSrSrg)ExpandLangTestCaseirc zS/SS/SS/SS//SQ/SQ/SQ/SQS .nUR5Hjup#URUS 9 [RR S US 9 UR [ R"U5U5 SSS5 SSS5 Ml g!,(df  N=f!,(df  M=f) Ncscs_CZ cs.ISO8859-2cs@euro)cs_CZ.ISO8859-2r r r ) cs_CZ@euror r r )cs.ISO8859-2@euror r r )cs_CZ.ISO8859-2@eurorrr r r r r )r r r r r rrr)localezlocale.normalize) return_value)itemssubTestunittestmockpatchrlr _expand_lang)rOlocalesrexpandeds r!test_expand_lang#ExpandLangTestCase.test_expand_langss&t_+T2!4( &B"8%; !(  FV,]](();6<)>$$W%9%9&%A8L>-,!0>>-,s#B+'BB+ B( $B++ B: rN)rRrSrTrUrrWrr r!rrrsMr rc\rSrSrSrSrSrSr\RRS5S5r \RRS5S5r S r S rS rg ) FindTestCaseicUR[R"55UlUR[R"55UlSHnURR U5 M g)NrILC_ALLrLANG)rJrrKrLtemp_cwdtempdirunset)rOkeys r!rPFindTestCase.setUpsS$$Y%B%B%DE((););)=> @C HHNN3 Ar c~[RRURS5n[RRX!S5n[R"U5 [RRUS5n[ US5nUR [5 SSS5 U$!,(df  U$=f)Nrrz mofile.mor')r*r+r#r$r/r0r2r5)rOlang locale_dir mofile_dirmo_filer's r!create_mo_fileFindTestCase.create_mo_files~WW\\$,,9 WW\\*MB  J'',,z;7 '4 A GGK !! s B-- B<cBURS5nSHnURRUS5 [R"S[ R RURS5S9nURX15 URRU5 M g)Nga_IEr rar)r`) r-rLsetrfindr*r+r#r$rlr%)rOr,varresults r!test_find_with_env_vars$FindTestCase.test_find_with_env_varssv%%g.@C HHLLg &\\(,.GGLLx,PRF   V - HHNN3  Ar cURRSS5 URS5n[R"S[ R RURS5S/S9nURX!5 g)NrIpt_BRr0rar)r` languages) rLr1r-rr2r*r+r#r$rlrOr,r4s r!test_find_with_languages%FindTestCase.test_find_with_languagess_  Z)%%g.h(* T\\8(L)0 3 )r zgettext._expand_langcR[R"S5 URS5 g)NrC)rr2assert_called_withrOpatch_expand_langs r!test_find_with_no_lang#FindTestCase.test_find_with_no_langs  U,,S1r cURRSS5 [R"S5 UR S5 g)NrIr>r)rLr1rr2r?r@s r!test_find_with_cFindTestCase.test_find_with_cs0  Z% U,,S1r c$/nSH#nURURU55 M% [R"S[R R URS5SS/SS9nUR[U5[U55 g)N)r0es_ESrarr0rHTr`r9all) appendr-rr2r*r+r#r$rlsorted)rOpathsr)r4s r! test_find_allFindTestCase.test_find_allss&D LL,,T2 3'h(* T\\8(L)0'(:F 7r cURS5/n[R"S[RR UR S5SS/SS9nURX!5 g)Nr0rarTrI)r-rr2r*r+r#r$rlr:s r!test_find_deduplication$FindTestCase.test_find_deduplicationsS&&w/0h"'',,t||X2V)0'(:F )r )rLr$N)rRrSrTrUrPr-r5r;rrrrBrErNrQrWrr r!rrsh   *]]/0212 ]]/0212 8*r rc\rSrSrSrSrg) MiscTestCaseic<[R"U[SS1S9 g)Nr"ENOENT) not_exported)r check__all__rrNs r! test__all__MiscTestCase.test__all__sT7+18*< >r rN)rRrSrTrUrYrWrr r!rTrTs>r rT__main__):r*r3rr unittest.mock functoolsrtestr test.supportrr5 b64encoder7r9r;bytesr=r?rArCr+r#r-r1r6r8r:r<r>r@rBr"TestCaser$rrYrrrrrrrrrrrrrrrrrrrTrRmainrr r!rds " 2 &//8 !0!>&&u.(" ))%1+    GGLL} - i .'',,y2OP77<< 3QR77<< 3QRi)=>GGLL,CD '',,y- 0 '',,y- 0" 'h'''<LL^o%o%d;6;6| +)9? + 3C_ 8 .> :Z2("3"3Z2zWW,8o8('+O'+TMM"722 8$$>  z MMOGX8 &r