+
    ÏÜ³j’È ã                   óV  € ^ RI t ^ RIt ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RI	t	^ RI
t
^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIH t  ^ RIH!t! ^ RIH"t" ^ RIH#t# ^ RIH$t$ ^ RIH%t% ^ RIH&t& ^ R	IH't' ^ R
IH(t( ]"PR                  ! R4      t*]"PR                  ! R4       ^ RI+t+^ RI,t-^ RI.t,^ RI/t,^ RI0t,^ RI1t,^ RI2t,^ RI3t,^ RI.H4t4 ^ RI,H5t5  ^ RI,H6t6 ]6Pn                  t8 ^ RI:H;t;H<t< Rt= ^ RI,H>t> Rt? ^ RI@t@] P‚                  '       d   ] P„                  ! R4      hRtC]D! RRR7      tE]	PŒ                  P�                  R4      '       d   RMRtHR tIR tJR tK]	P˜                  R8X  d
   ^ RI,HMtM R tN]5Pž                  tPRtQRtR]R'       d	   R R!R"utStTtUMRRRutStTtU] P¬                  tWR#tX]Y! ]*R$R4      '       * tZ]P¶                  R%8H  t\R& t] ]	P¼                  ! R'4      t_R)R*.t` ^ R+IaHbtbHctcHdtdHete R, tgR- th ! R. R/] PÒ                  4      tj ! R0 R1]f4      tk ! R2 R3]f4      tlR4 tm ! R5 R64      tn ! R7 R8]l4      to ! R9 R:]-Pà                  4      tq ! R; R<]l4      trR= tsR> tt ! R? R@]l4      tu ! RA RB]l4      tv ! RC RD]l4      tw ! RE RF]l4      tx ! RG RH]l4      ty ! RI RJ]f4      tzRK t{ ! RL RM]f4      t| ! RN RO]f4      t} ! RP RQ]l4      t~ ! RR RS]l4      t ! RT RU]l4      t€ ! RV RW]l4      t�RñRX lt‚RY tƒRZ t„R[ t… ! R\ R]]f4      t† ! R^ R_]‡4      tˆR` t‰ ! Ra Rb]l4      tŠRc t‹Rd tŒ ! Re Rf]l4      t� ! Rg Rh]l4      tŽ^ RiI1H�t�H�t�H‘t‘  ! Rj Rk]f4      t’Rl t“ ! Rm Rn]�4      t” ! Ro Rp]�4      t•]•EP-                  Rq]’Rr7       ]•EP-                  Rs]’RòRt7       ]•EP-                  Ru]“]”Rv7        ! Rw Rx]l4      t—]EP0                  ! 4       t™Ry tš ! Rz R{]�4      t›]›EP-                  R|]šRr7        ! R} R~]�4      tœ]œEP-                  R|4       Rt� ! R€ R�]l4      tž]!EP>                  ! R‚4       ! Rƒ R„]l4      4       t  ! R… R†4      t¡ ! R‡ Rˆ] PÒ                  4      t¢]I! R‰4      t£ ! RŠ R‹]l4      t¤ ! RŒ R�]l4      t¥ ! RŽ R�]l4      t¦ ! R� R‘]l4      t§] EPP                  ! ]8R’4      ]!EP>                  ! R‚4       ! R“ R”]l4      4       4       t© ! R• R–]l4      tª ! R— R˜]b4      t« ! R™ Rš]l4      t¬R› t­] EPP                  ! ]?Rœ4      ]!EP>                  ! R‚4       ! R� Rž]l4      4       4       t® ! RŸ R ]l4      t¯ ! R¡ R¢] PÒ                  4      t° ! R£ R¤]l4      t± ! R¥ R¦]l4      t² ! R§ R¨] PÒ                  4      t³ ! R© Rª] PÒ                  4      t´]!EP>                  ! R‚4       ! R« R¬] PÒ                  4      4       tµ]!EP>                  ! R­4      ]!EP>                  ! R‚4       ! R® R¯] PÒ                  4      4       4       t¶R° t·]!EP>                  ! R‚4       ! R± R²] PÒ                  4      4       t¸R³ t¹R´ tºRµ t»R¶ t¼ ! R· R¸]f4      t½ ! R¹ Rº] PÒ                  4      t¾ ! R» R¼] PÒ                  4      t¿ ! R½ R¾] PÒ                  4      tÀ ! R¿ RÀ] PÒ                  4      tÁ ! RÁ RÂ] PÒ                  4      tÂ ! RÃ RÄ] PÒ                  4      tÃ ! RÅ RÆ] PÒ                  4      tÄ ! RÇ RÈ] PÒ                  4      tÅ ! RÉ RÊ] PÒ                  4      tÆ ! RË RÌ] PÒ                  4      tÇ] EP�                  ! ]P¶                  R%8H  RÍ4       ! RÎ RÏ] PÒ                  4      4       tÉ ! RÐ RÑ] PÒ                  4      tÊ ! RÒ RÓ] PÒ                  4      tË]!EP>                  ! R‚4       ! RÔ RÕ] PÒ                  4      4       tÌ ! RÖ R×] PÒ                  4      tÍ ! RØ RÙ]l4      tÎ ! RÚ RÛ]l4      tÏ ! RÜ RÝ] PÒ                  4      tÐ ! RÞ Rß]f4      tÑ ! Rà Rá]Ñ4      tÒ ! Râ Rã]Ñ4      tÓ ! Rä Rå]Ñ4      tÔRóRæ ltÕ] EP�                  ! ]Ö! ]*Rç4      '       * Rè4      ] EP�                  ! ]P¶                  Ré8g  Rê4       ! Rë Rì] PÒ                  4      4       4       t×] EP�                  ! ]EP°                  Rí8*  Rî4      ] EPP                  ! ]?Rœ4       ! Rï Rð] PÒ                  4      4       4       tÙR#   ]9 d    Rt8 ELÉi ; i  ]9 d    Rt= ELÎi ; i  ]9 d    Rt? ELÕi ; i  ]9 d    Rt@ ELài ; i   R(t_ EL
; i  ]9 d    ]ftbR;tc;tdte ELi ; i)ôé    N)Úsupport)Úhashlib_helper)Úimport_helper)Ú	os_helper)Úscript_helper)Úsocket_helper)Úthreading_helper)Úwarnings_helper)ÚsubTestsÚ_multiprocessingzmultiprocess.synchronize©Úwait)Úutil)Ú	reductionF)ÚValueÚcopyT)Úshared_memoryz?libasan has a pthread_create() dead lock related to thread+forkçš™™™™™¹?)Ú
__cleanenvÚ
__isolatedÚCOVERAGEg     €V@g      N@c                 ó$   € V P                  R 4      # )Úlatin)Úencode)Úss   &Ú\/home/luca/screen-checking/.venv/lib/python3.14/site-packages/multiprocess/tests/__init__.pyr   r   f   s   € Ø�8‰8�GÓÐó    c                 óž   € \        V \        P                  P                  4      '       d#   V P	                  4        V P                  4        R # R # ©N)Ú
isinstanceÚmultiprocessingÚqueuesÚQueueÚcloseÚjoin_thread©Úqueues   &r   Úclose_queuer(   j   s5   € Ü�%œ×/Ñ/×5Ñ5×6Ò6Ø�‰ŒØ×ÑÖñ 7r   c                 ó>   € \         P                  ! V \        R 7       R# ©©ÚtimeoutN)r	   r%   ÚTIMEOUT)Úprocesss   &r   Újoin_processr/   p   s   € ô × Ò  ´'×:r   Úposix)Úresource_trackerc                 ó@   € \         P                  V,          ! V 4       R # r   )r1   Ú_CLEANUP_FUNCS)ÚnameÚrtypes   &&r   Ú_resource_unlinkr6   y   s   € Ü×'Ñ'¨Ö.¨tÖ4r   g=
×£p=ê?gffffffÖ?gffffffö?ç      @ÚHAVE_BROKEN_SEM_GETVALUEÚwin32c                 ó6   € Ve
   VR8  d   R p\        V .V4      # )Nç        r   )Úhandler,   s   &&r   Úwait_for_handler=   ˜   s"   € ØÒ˜w¨œ}ØˆÜ��˜'Ó"Ð"r   ÚSC_OPEN_MAXé   Ú__main__Útest_multiprocessing_forkserver)Ú	StructureÚc_intÚc_doubleÚ
c_longlongc                 ó¼   € Rp  \         P                  ! R4      pTR8X  g   Y8¼  d   R# \        P
                  ! RT ,          4      h  \        \        3 d     R# i ; i)zACheck that the system supports enough semaphores to run the test.r?   ÚSC_SEM_NSEMS_MAXNzHThe OS doesn't support enough semaphores to run the test (required: %d).éÿÿÿÿ)ÚosÚsysconfÚAttributeErrorÚ
ValueErrorÚunittestÚSkipTest)Ú	nsems_minÚnsemss     r   Úcheck_enough_semaphoresrQ   °   sj   € ð €IðÜ—
’
Ð-Ó.ˆð �„{�eÔ(ÙÜ
×
Ò
ð >Ø@IõJó Kð Køô œJÐ'ô âðús   „A ÁAÁAc                ó   a € V 3R lpV# )aÈ  Returns a decorator: raises SkipTest when SM != spawn at test time.

This can be useful to save overall Python test suite execution time.
"spawn" is the universal mode available on all platforms so this limits the
decorated test to only execute within test_multiprocessing_spawn.

This would not be necessary if we refactored our test suite to split things
into other test files when they are not start method specific to be rerun
under all start methods.
c                 óJ   <a € \         P                  ! S 4      VV 3R  l4       pV# )c                  ó†   <€ \         P                  ! 4       ;pR 8w  d   \        P                  ! RV: RS 24      hS! V / VB # )Úspawnústart_method=z, not 'spawn'; )r!   Úget_start_methodrM   rN   )ÚargsÚkwargsÚstart_methodÚreasonÚ	test_items   *, €€r   Úspawn_check_wrapperÚKonly_run_in_spawn_testsuite.<locals>.decorator.<locals>.spawn_check_wrapperÍ   sG   ø€ ä /× @Ò @Ó BÐB�ÀwÔNÜ×'Ò'¨=¨<©/¸ÈÈÐ(QÓRÐRÙ˜dÐ- fÑ-Ð-r   )Ú	functoolsÚwraps)r\   r]   r[   s   f €r   Ú	decoratorÚ.only_run_in_spawn_testsuite.<locals>.decoratorË   s&   ù€ ä	�Š˜Ó	#õ	.ó 
$ð	.ð
 #Ð"r   © )r[   ra   s   f r   Úonly_run_in_spawn_testsuiterd   ¿   s   ø€ õ#ð Ðr   c                   óp   a € ] tR t^Øt o Rt]P                  ! ]P                  R8H  R4      R 4       t	Rt
V tR# )ÚTestInternalDecoratorszBLogic within a test suite that could errantly skip tests? Test it!r9   ztest requires that fork exists.c                ó4  € \         P                  ! 4       R 8w  d   \        P                  ! R4      h \	        R4      R 4       p\         P                  ! RR7      p \         P                  ! R RR7       V P                  X! 4       ^4       \         P                  ! R	RR7       V P                  \        P                  4      ;_uu_ 4       pV! 4        RRR4       V P                  R\        XP                  4      4       V P                  R
\        VP                  4      4       \         P                  ! VRR7       R#   \
         d    pT P                  RT 24        Rp?ELRp?ii ; i  + '       g   i     L¡; i  \         P                  ! TRR7       i ; i)rU   z'only run in test_multiprocessing_spawn.ztesting this decoratorc                  ó   € ^# ©é   rc   rc   r   r   Úreturn_four_if_spawnÚUTestInternalDecorators.test_only_run_in_spawn_testsuite.<locals>.return_four_if_spawná   s   € ár   z.expected decorated `def` not to raise; caught NT©Ú
allow_none©ÚforceÚforkrV   )r!   rW   rM   rN   rd   Ú	ExceptionÚfailÚset_start_methodÚassertEqualÚassertRaisesÚassertInÚstrÚ	exception)Úselfrk   ÚerrÚorig_start_methodÚctxs   &    r   Ú test_only_run_in_spawn_testsuiteÚ7TestInternalDecorators.test_only_run_in_spawn_testsuiteÛ   s=  € ä×+Ò+Ó-°Ô8Ü×#Ò#Ð$MÓNÐNð	NÜ(Ð)AÓBñó Cðô
 ,×<Ò<ÈÔMÐð		LÜ×,Ò,¨W¸DÕAØ×ÑÑ1Ó3°QÔ7Ü×,Ò,¨V¸4Õ@Ø×"Ñ"¤8×#4Ñ#4×5Ô5¸Ù$Ô&÷ 6à�M‰MÐ2´C¸¿¹Ó4FÔGØ�M‰M˜/¬3¨s¯}©}Ó+=Ô>ä×,Ò,Ð->Àd×Køô ô 	NØ�I‰IÐFÀsÀeÐL×MÒMûð	Nú÷ 6×5ûô
 ×,Ò,Ð->ÀdÖKús=   ²D= ÁA.E= Ã	E*ÃAE= Ä=E'ÅE"Å"E'Å*E:	Å5E= Å=Frc   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__rM   ÚskipIfÚsysÚplatformr~   Ú__static_attributes__Ú__classdictcell__©Ú__classdict__s   @r   rf   rf   Ø   s2   ø‡ € ÙLà‡_‚_�S—\‘\ WÑ,Ð.OÓPñLó QöLr   rf   c                   ó,   a € ] tR t^øt o R tR tRtV tR# )ÚTimingWrapperc                ó    € Wn         R V n        R # r   )ÚfuncÚelapsed)rz   r�   s   &&r   Ú__init__ÚTimingWrapper.__init__ú   s   € ØŒ	ØˆŽr   c                óà   € \         P                  ! 4       p V P                  ! V/ VB \         P                  ! 4       V,
          V n        #   \         P                  ! 4       T,
          T n        i ; ir   )ÚtimeÚ	monotonicr�   r�   )rz   rX   ÚkwdsÚts   &*, r   Ú__call__ÚTimingWrapper.__call__þ   sK   € Ü�NŠNÓˆð	0Ø—9’9˜dÐ+ dÑ+äŸ>š>Ó+¨aÕ/ˆD�Løœ4Ÿ>š>Ó+¨aÕ/ˆD�Lús   —A
 Á
#A-)r�   r�   N©r€   r�   r‚   rƒ   r‘   r˜   rˆ   r‰   rŠ   s   @r   r�   r�   ø   s   ø‡ € ò÷0ð 0r   r�   c                   óX   a € ] tR tRt o Rt]! 4       tRtR tR t	R t
]
tV 3R ltRtV tR# )	ÚBaseTestCasei	  Nc                óF   € \         '       d   V P                  W^4       R# R# ©é   N)ÚCHECK_TIMINGSÚassertAlmostEqual©rz   ÚaÚbs   &&&r   ÚassertTimingAlmostEqualÚ$BaseTestCase.assertTimingAlmostEqual  s   € ß‹=Ø×"Ñ" 1¨Ö+ñ r   c                óV   €  V! V!  pV P                  W4      #   \         d     R # i ; ir   )ru   ÚNotImplementedError)rz   Úvaluer�   rX   Úress   &&&* r   ÚassertReturnsIfImplementedÚ'BaseTestCase.assertReturnsIfImplemented  s7   € ð	0Ù˜‘+ˆCð ×#Ñ# EÓ/Ð/øô #ô 	Úð	ús   ‚ ™(§(c                ó   € \        R 4      h)z#shouldn't try to pickle a test case)r¨   )rz   rX   s   &*r   Ú
__reduce__ÚBaseTestCase.__reduce__  s   € Ü!Ð"GÓHÐHr   c                ó6   <€ V ^8„  d   Qh/ S[ S[,          ;R&   # )é   ÚSTART_METHODS)Úsetrx   )Úformatr‹   s   "€r   Ú__annotate__ÚBaseTestCase.__annotate__	  s   ø‡ ‚ ñ ‘s•8Ñ#ò	 r   rc   )Ú	processesÚmanagerÚthreads)r€   r�   r‚   rƒ   ÚALLOWED_TYPESr³   r²   rZ   r¥   r«   r®   Ú__reduce_ex__Ú__annotate_func__rˆ   r‰   rŠ   s   @r   rœ   rœ   	  s4   ø‡ € à7€Má!›e€MØ€Lò,ò0òIð €M÷1 ƒ r   rœ   c                 óÊ   €  V P                  4       #   \         dF     T P                  u #   \         d(     T P                  u u #   \         d    \        hi ; ii ; ii ; ir   )Ú	get_valuerK   Ú_Semaphore__valueÚ_valuer¨   ©rz   s   &r   r¾   r¾   '  sg   € ð	*Ø�~‰~ÓÐøÜô *ð	*Ø×)Ñ)Ò)øÜô 	*ð*Ø—{‘{Ô"øÜ!ô *Ü)Ð)ð*úð	*úð*ús:   ‚ ’A"ž,©A"¬A¸AÁAÁA"ÁAÁAÁA"c                   ó&   a € ] tR tRt o R tRtV tR# )ÚDummyCallablei7  c                óX   € \        V\        4      '       g   Q hVP                  ^4       R# ©é   N)r    rÃ   Úput)rz   ÚqÚcs   &&&r   r˜   ÚDummyCallable.__call__8  s    € Ü˜!œ]×+Ò+Ð+Ð+Ø	�‰ˆaŽr   rc   N)r€   r�   r‚   rƒ   r˜   rˆ   r‰   rŠ   s   @r   rÃ   rÃ   7  s   ø‡ € ÷ð r   rÃ   c                   ó@  a € ] tR tRt o R9tR tR t]P                  ! R4      R 4       t	]
R 4       tR t]
R 4       tR	 t]
R
 4       tR t]
R 4       t]
R 4       tR t]P*                  ! ]P.                  R4      R 4       t]
R 4       t]
R 4       t]
R 4       t]
R 4       t]
R 4       tR:R lt]P>                  ! ] PB                  R8H  R4      R 4       t"]P>                  ! ] PB                  R8H  R4      R 4       t#R t$R t%R t&R t']
R  4       t(]P>                  ! R!R"4      R# 4       t)]
R$ 4       t*R% t+]
R;R& l4       t,R' t-]P                  ! R(4      R) 4       t.R* t/]
R+ 4       t0R, t1]
R- 4       t2R. t3]
/ 3R/ l4       t4R0 t5R1 t6]7R<R2 l4       t8R3 t9R4 t:R5 t;R6 t<R7 t=R8t>V t?R# )=Ú_TestProcessi=  c                ó$  € V P                   R 8X  d+   V P                  RP                  V P                   4      4       V P                  4       pVP                  pV P                  VP                  4       4       V P                  VP                  4       V P                  V\        4       V P                  \        V4      ^ 8„  4       V P                  VP                  \        P                  ! 4       4       V P                  VP                   R4       R# )r¹   útest not appropriate for {}N)ÚTYPEÚskipTestr´   Úcurrent_processÚauthkeyÚ
assertTrueÚis_aliveÚassertFalseÚdaemonÚassertIsInstanceÚbytesÚlenru   ÚidentrI   ÚgetpidÚexitcode)rz   ÚcurrentrÒ   s   &  r   Útest_currentÚ_TestProcess.test_currentA  s½   € Ø�9‰9˜	Ô!Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJà×&Ñ&Ó(ˆØ—/‘/ˆà�‰˜×(Ñ(Ó*Ô+Ø×Ñ˜Ÿ™Ô(Ø×Ñ˜g¤uÔ-Ø�‰œ˜G› qÑ(Ô)Ø×Ñ˜Ÿ™¬¯	ª	«Ô4Ø×Ñ˜×)Ñ)¨4Ö0r   c                óL  € V P                   R 8X  d   V P                  RV P                    24       \        P                  \        P
                  ! \        P                  4      \        P                  ! \        P                  4      \        P                  ! \        P
                  ! \        P                  4      4      .pV F`  pV P                  V4       V P                  4       pVP                  4        VP                  4        V P                  VP                  ^ 4       Kb  	  R# )r¹   útest not appropriate for N)rÏ   rÐ   r†   Ú
executablerI   Úfsencoder   ÚFakePathÚset_executableÚProcessÚstartÚjoinru   rÜ   )rz   ÚpathsÚpathÚps   &   r   Útest_set_executableÚ _TestProcess.test_set_executableO  s¼   € Ø�9‰9˜	Ô!Ø�M‰MÐ5°d·i±i°[ÐAÔBä�N‰NÜ�KŠKœŸ™Ó'Ü×ÒœsŸ~™~Ó.Ü×ÒœrŸ{š{¬3¯>©>Ó:Ó;ð	
ˆó ˆDØ×Ñ Ô%Ø—‘“ˆAØ�G‰GŒIØ�F‰FŒHØ×Ñ˜QŸZ™Z¨Ö+ó r   Úcpuc           
     óì  € ^R^.R3p\         \        3p\        P                  ! W4      pV F°  w  rEV P	                  WER7      ;_uu_ 4        V P                  ^4      pV P                  V P                  V! Wd34      R7      pRVn        VP                  4        VP                  4       pV P                  W„4       VP                  4        \        V4       RRR4       K²  	  R#   + '       g   i     KÇ  ; i)rŸ   rx   )rX   Ú	args_type©ÚtargetrX   TN©rŸ   )ÚlistÚtupleÚ	itertoolsÚproductÚsubTestr#   ræ   Ú
_test_argsrÖ   rç   Úgetru   rè   r(   )	rz   Ú
args_casesÚ
args_typesÚ
test_casesrX   rð   rÈ   rë   Ú
child_argss	   &        r   Útest_args_argumentÚ_TestProcess.test_args_argument_  s¿   € ð ˜   TÐ*ˆ
ÜœE�]ˆ
ä×&Ò& zÓ>ˆ
ã)‰OˆDØ—‘ 4�×=Õ=Ø—J‘J˜q“M�à—L‘L¨¯©¹iÈÈ	Ó>R�LÓS�Ø�”Ø—‘”	ØŸU™U›W�
Ø× Ñ  Ô2Ø—‘”Ü˜A”÷ >Ñ=ó  *ß=×=Ð=ús   ÁB	C"Ã"C3c                ó(   € VP                  V4       R # r   ©rÇ   )ÚclsrÈ   Úargs   &&&r   rù   Ú_TestProcess._test_argst  s   € à	�‰ˆcŽ
r   c                óü  € V P                   R 8X  d+   V P                  RP                  V P                   4      4       V P                  V P                  R7      pV P                  VP                  V P                  4       P                  4       V P                  V P                  RR7      pV P                  VP                  4       V P                  V P                  RR7      pV P                  VP                  4       R# )r¹   rÎ   ©rò   T©rò   rÖ   FN)
rÏ   rÐ   r´   ræ   Ú_testru   rÖ   rÑ   rÓ   rÕ   )rz   Úproc0Úproc1Úproc2s   &   r   Útest_daemon_argumentÚ!_TestProcess.test_daemon_argumentx  s±   € Ø�9‰9˜	Ô!Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJð —‘ D§J¡J�Ó/ˆØ×Ñ˜Ÿ™ t×';Ñ';Ó'=×'DÑ'DÔEØ—‘ D§J¡J°t�Ó<ˆØ�‰˜Ÿ™Ô%Ø—‘ D§J¡J°u�Ó=ˆØ×Ñ˜Ÿ™Ö&r   c                óD  € V P                  4       pVP                  V4       VP                  V4       VP                  VP                  4       V P                  R 8w  dB   VP                  \	        VP
                  4      4       VP                  VP                  4       R# R# )r¹   N)rÑ   rÇ   r4   rÏ   rØ   rÒ   Úpid)r  rÈ   rX   r–   rÝ   s   &&*, r   r	  Ú_TestProcess._test„  sl   € à×%Ñ%Ó'ˆØ	�‰ˆdŒØ	�‰ˆdŒØ	�‰ˆg�l‰lÔØ�8‰8�yÔ Ø�E‰E”%˜Ÿ™Ó(Ô)Ø�E‰E�'—+‘+Öñ !r   c                óp  € V P                   R 8X  d+   V P                  RP                  V P                   4      4       V P                  V P	                  4       4       V P                  RR7      w  rV P                  V P                  V3R7      pVP                  4        VP                  4        VP                  4       w  rEV P                  W@P                  4       P                  4       V P                  V\        P                  ! 4       4       V P                  WPP                  4       P                   4       R# )r¹   rÎ   F©Úduplexrñ   N)rÏ   rÐ   r´   ÚassertIsNoneÚparent_processÚPiperæ   Ú_test_send_parent_processrç   rè   Úrecvru   rÑ   r  rI   rÛ   r4   )rz   ÚrconnÚwconnrë   Ú
parent_pidÚparent_names   &     r   Útest_parent_process_attributesÚ+_TestProcess.test_parent_process_attributesŽ  sÝ   € Ø�9‰9˜	Ô!Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJà×Ñ˜$×-Ñ-Ó/Ô0à—y‘y¨�yÓ.‰ˆØ�L‰L × >Ñ >ÀeÀXˆLÓNˆØ	�‰Œ	Ø	�‰ŒØ"'§*¡*£,Ñˆ
Ø×Ñ˜×%9Ñ%9Ó%;×%?Ñ%?Ô@Ø×Ñ˜¤R§Y¢Y£[Ô1Ø×Ñ˜×&:Ñ&:Ó&<×&AÑ&AÖBr   c                ót   € ^ RI Hp VP                  V! 4       P                  V! 4       P                  .4       R# )r   ©r  N)Úmultiprocess.processr  Úsendr  r4   ©r  r  r  s   && r   r  Ú&_TestProcess._test_send_parent_process�  s(   € å7Ø�
‰
‘NÓ$×(Ñ(©.Ó*:×*?Ñ*?Ð@ÖAr   c                óŒ  € V P                   R 8X  d+   V P                  RP                  V P                   4      4       V P                  RR7      w  rV P	                  V P
                  V3R7      pVP                  4        VP                  \        P                  R7      '       g   \        R4      hVP                  4       pV P                  VR4       VP                  4        VP                  4        VP                  \        P                  R7      '       g   \        R4      hVP                  4       pV P                  VR4       R	# )
r¹   rÎ   Fr  rñ   r+   z(Could not communicate with child processÚaliveú	not aliveN)rÏ   rÐ   r´   r  ræ   Ú_test_create_grandchild_processrç   Úpollr   ÚLONG_TIMEOUTÚAssertionErrorr  ru   Ú	terminaterè   )rz   r  r  rë   Úparent_process_statuss   &    r   Ú_test_parent_processÚ!_TestProcess._test_parent_process¢  sú   € Ø�9‰9˜	Ô!Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJð
 —y‘y¨�yÓ.‰ˆØ�L‰LØ×7Ñ7¸u¸ið ó Iˆà	�‰Œ	à�z‰z¤'×"6Ñ"6ˆz×7Ò7Ü Ð!KÓLÐLØ %§
¡
£ÐØ×ÑÐ.°Ô8à	�‰ŒØ	�‰Œà�z‰z¤'×"6Ñ"6ˆz×7Ò7Ü Ð!KÓLÐLØ %§
¡
£ÐØ×ÑÐ.°Ö<r   c                óŽ   € V P                  V P                  V3R 7      pVP                  4        \        P                  ! R4       R# )rñ   i,  N)ræ   Ú_test_report_parent_statusrç   r”   Úsleep)r  r  rë   s   && r   r)  Ú,_TestProcess._test_create_grandchild_process»  s0   € à�K‰K˜s×=Ñ=ÀUÀIˆKÓNˆØ	�‰Œ	Ü�
Š
�3Žr   c                ó   € ^ RI Hp TP                  V! 4       P                  4       '       d   RMR4       V! 4       P	                  \
        P                  R7       TP                  V! 4       P                  4       '       d	   R4       R# R4       R# )r   r!  r'  r(  r+   N)r"  r  r#  rÔ   rè   r   ÚSHORT_TIMEOUTr$  s   && r   r2  Ú'_TestProcess._test_report_parent_statusÁ  s`   € å7Ø�
‰
™nÓ.×7Ñ7×9Ò9‘7¸{ÔKÙÓ×Ñ¤g×&;Ñ&;ÐÔ<Ø�
‰
™nÓ.×7Ñ7×9Ò9�7ÖK¸{ÖKr   c                óð  € V P                  ^4      pV P                  4       pV^^3pR^RR/pRpV P                  V P                  W4VR7      pRVn        V P                  4       pV P                  R8w  d'   V P                  VP                  VP                  4       V P                  VP                  4       R4       V P                  VP                  R4       V P                  W`P                  4       4       V P                  \        V P                  4       4      \        4       V P                  VP                  R	4       VP!                  4        V P                  VP                  R	4       V P                  VP                  4       R4       V P#                  W`P                  4       4       V P                  VP%                  4       VR
,          4       V P                  VP%                  4       V4       V P                  VP%                  4       VP&                  4       V P                  R8w  dU   V P                  VP%                  4       VP                  4       V P                  VP%                  4       VP(                  4       VP+                  4        V P                  VP                  ^ 4       V P                  VP                  4       R4       V P                  W`P                  4       4       \-        V4       R	# )rŸ   ÚhelloÚbyegR¸…ëQ@ÚSomeProcess)rò   rX   rY   r4   Tr¹   FNºrŸ   NN)r#   ÚEventræ   r	  rÖ   rÑ   rÏ   ru   rÒ   rÔ   ÚassertNotInÚactive_childrenÚassertIsÚtyperô   rÜ   rç   rw   rú   r4   r  rè   r(   )rz   rÈ   ÚerX   rY   r4   rë   rÝ   s   &       r   Útest_processÚ_TestProcess.test_processÈ  s%  € Ø�J‰J�q‹MˆØ�J‰J‹LˆØ�1�aˆyˆØ˜"˜e DÐ)ˆØˆØ�L‰LØ—:‘: D¸dð ó ˆð ˆŒØ×&Ñ&Ó(ˆà�9‰9˜	Ô!Ø×Ñ˜QŸY™Y¨¯©Ô8Ø×Ñ˜Ÿ™› uÔ-Ø×Ñ˜Ÿ™ 4Ô(Ø×Ñ˜×0Ñ0Ó2Ô3Ø�‰”d˜4×/Ñ/Ó1Ó2´DÔ9Ø×Ñ˜Ÿ™ TÔ*à	�‰Œ	à×Ñ˜Ÿ™ TÔ*Ø×Ñ˜Ÿ™› tÔ,Ø�‰�a×-Ñ-Ó/Ô0à×Ñ˜Ÿ™› $ r¥(Ô+Ø×Ñ˜Ÿ™› &Ô)Ø×Ñ˜Ÿ™› !§&¡&Ô)Ø�9‰9˜	Ô!Ø×Ñ˜QŸU™U›W g§o¡oÔ6Ø×Ñ˜QŸU™U›W a§e¡eÔ,à	�‰Œà×Ñ˜Ÿ™ QÔ'Ø×Ñ˜Ÿ™› uÔ-Ø×Ñ˜×0Ñ0Ó2Ô3Ü�AŽr   zneeds native_idc                ó°  € V P                   R 8X  d+   V P                  RP                  V P                   4      4       \        P                  ! 4       P
                  pV P                  ^4      pV P                  V P                  V3R7      pVP                  4        VP                  4       pVP                  4        \        V4       V P                  W4       R# ©r¹   rÎ   rñ   N)rÏ   rÐ   r´   Ú	threadingÚmain_threadÚ	native_idr#   ræ   Ú"_test_process_mainthread_native_idrç   rú   rè   r(   ÚassertNotEqual)rz   Úcurrent_mainthread_native_idrÈ   rë   Úchild_mainthread_native_ids   &    r   Ú!test_process_mainthread_native_idÚ._TestProcess.test_process_mainthread_native_idð  sš   € à�9‰9˜	Ô!Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJä'0×'<Ò'<Ó'>×'HÑ'HÐ$à�J‰J�q‹MˆØ�L‰L × GÑ GÈqÈdˆLÓSˆØ	�‰Œ	à%&§U¡U£WÐ"Ø	�‰ŒÜ�AŒà×ÑÐ8ÖUr   c                óf   € \         P                  ! 4       P                  pVP                  V4       R # r   )rG  rH  rI  rÇ   )r  rÈ   Úmainthread_native_ids   && r   rJ  Ú/_TestProcess._test_process_mainthread_native_id  s$   € ä(×4Ò4Ó6×@Ñ@ÐØ	�‰Ð"Ö#r   c                ó2   € \         P                  ! ^d4       R# ©éd   N©r”   r3  ©r  s   &r   Ú_sleep_someÚ_TestProcess._sleep_some  s   € ä�
Š
�3Žr   c                óR   € VP                  4        \        P                  ! ^d4       R# rT  )r³   r”   r3  ©r  Úevents   &&r   Ú_sleep_some_eventÚ_TestProcess._sleep_some_event
  s   € à�	‰	ŒÜ�
Š
�3Žr   c                óŽ   € \         P                   ! \         P                  \         P                  4       V P                  V4       R # r   )ÚsignalÚSIGINTÚSIG_DFLr]  r[  s   &&r   Ú_sleep_no_int_handlerÚ"_TestProcess._sleep_no_int_handler  s&   € ä�Š”f—m‘m¤V§^¡^Ô4Ø×Ñ˜eÖ$r   c                ó2   € \         P                  ! V4       R # r   rV  )r  Údelays   &&r   Ú_test_sleepÚ_TestProcess._test_sleep  s   € ä�
Š
�5Ör   Nc                ó  a€ V P                   R 8X  d+   V P                  RP                  V P                   4      4       V P                  4       pV'       g   V P                  pV P                  W#3R7      oRSn        SP                  4        V P                  SP                  4       R4       V P                  SV P                  4       4       V P                  SP                  R4       \        SP                  4      pV P                  V! ^ 4      R4       V P                  VP                   R4       V P                  SP                  4       R4       V P                  V! R4      R4       V P                  VP                   R4       V P                  SP                  4       R4       \"        P$                  pVP'                  V4      '       g6   SP)                  4        SP                  4        V P+                  RV R24       V! S4       \-        \.        R4      '       d–   V3R	 lp\.        P.                  ! \.        P0                  V4      p \.        P2                  ! ^4       V P                  V! 4       R4       \.        P2                  ! ^ 4       \.        P.                  ! \.        P0                  V4       MV P                  V! 4       R4       V P                  VP                   R4       V P                  SP                  4       R
4       V P5                  SV P                  4       4       SP                  4        SP                  #   \.        P2                  ! ^ 4       \.        P.                  ! \.        P0                  T4       i ; i)r¹   rÎ   rñ   TNr;   zevent not signaled in ú secondsÚalarmc                  ó(   <€ \        R S,          4      h)zjoin took too long: %s©ÚRuntimeError)rX   rë   s   *€r   ÚhandlerÚ+_TestProcess._kill_process.<locals>.handler<  s   ø€ Ü"Ð#;¸aÕ#?Ó@Ð@r   FrH   )rÏ   rÐ   r´   r=  r]  ræ   rÖ   rç   ru   rÔ   rw   r?  rÜ   r�   rè   r¥   r�   r   r6  r   r-  rs   Úhasattrr`  ÚSIGALRMrk  r>  )	rz   Úmethrò   r\  rè   r,   ro  Úold_handlerrë   s	   &&&     @r   Ú_kill_processÚ_TestProcess._kill_process  sj  ø€ Ø�9‰9˜	Ô!Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJà—
‘
“ˆßØ×+Ñ+ˆFØ�L‰L ¨XˆLÓ6ˆØˆŒØ	�‰Œ	à×Ñ˜Ÿ™› tÔ,Ø�‰�a˜×-Ñ-Ó/Ô0Ø×Ñ˜Ÿ™ TÔ*ä˜QŸV™VÓ$ˆà×Ñ™˜a› $Ô'Ø×$Ñ$ T§\¡\°3Ô7Ø×Ñ˜Ÿ™› tÔ,à×Ñ™˜b› 4Ô(Ø×$Ñ$ T§\¡\°3Ô7Ø×Ñ˜Ÿ™› tÔ,ä×'Ñ'ˆØ�z‰z˜'×"Ò"Ø�K‰KŒMØ�F‰FŒHØ�I‰IÐ.¨w¨i°xÐ@ÔAáˆQŒä”6˜7×#Ò#õAä Ÿ-š-¬¯©¸Ó@ˆKð;Ü—’˜RÔ Ø× Ñ ¡£¨Ô.ä—’˜Q”Ü—’œfŸn™n¨kÕ:à×Ñ™T›V TÔ*à×$Ñ$ T§\¡\°3Ô7à×Ñ˜Ÿ™› uÔ-Ø×Ñ˜˜D×0Ñ0Ó2Ô3à	�‰Œà�z‰zÐøô —’˜Q”Ü—’œfŸn™n¨kÕ:ús   É
-M Í=M?Úntz
POSIX onlyc                ó|   € V P                  \        P                  P                  4      pV P	                  V^4       R# rž   )ru  r!   ræ   Ú	interruptru   ©rz   rÜ   s   & r   Útest_interruptÚ_TestProcess.test_interruptQ  s.   € à×%Ñ%¤o×&=Ñ&=×&GÑ&GÓHˆØ×Ñ˜ 1Ö%r   c                ó²   € V P                  \        P                  P                  V P                  R 7      pV P                  V\        P                  ) 4       R# ©r  N)ru  r!   ræ   ry  rc  ru   r`  ra  rz  s   & r   Útest_interrupt_no_handlerÚ&_TestProcess.test_interrupt_no_handlerY  s@   € à×%Ñ%¤o×&=Ñ&=×&GÑ&GÐPT×PjÑPjÐ%ÓkˆØ×Ñ˜¤F§M¡M >Ö2r   c                óš   € V P                  \        P                  P                  4      pV P	                  V\
        P                  ) 4       R # r   )ru  r!   ræ   r-  ru   r`  ÚSIGTERMrz  s   & r   Útest_terminateÚ_TestProcess.test_terminate^  s4   € Ø×%Ñ%¤o×&=Ñ&=×&GÑ&GÓHˆØ×Ñ˜¤F§N¡N ?Ö3r   c                ó
  € V P                  \        P                  P                  4      p\        P
                  R 8w  d$   V P                  V\        P                  ) 4       R# V P                  V\        P                  ) 4       R# ©rw  N)
ru  r!   ræ   ÚkillrI   r4   ru   r`  ÚSIGKILLr‚  rz  s   & r   Ú	test_killÚ_TestProcess.test_killb  sU   € Ø×%Ñ%¤o×&=Ñ&=×&BÑ&BÓCˆÜ�7‰7�dŒ?Ø×Ñ˜X¬¯© Ö7à×Ñ˜X¬¯© Ö7r   c                ó¨   €  \         P                  ! 4       pV P                  V\        4       V P                  V^4       R#   \         d    ^p L9i ; irž   )r!   Ú	cpu_countr¨   r×   ÚintÚassertGreaterEqual)rz   Úcpuss   & r   Útest_cpu_countÚ_TestProcess.test_cpu_counti  sM   € ð	Ü"×,Ò,Ó.ˆDð 	×Ñ˜d¤CÔ(Ø×Ñ  aÖ(øô #ô 	ØŠDð	ús   ‚A ÁAÁAc                ó  € V P                  \        V P                  4       4      \        4       V P	                  4       pV P                  VP                  RR 7      pV P                  W P                  4       4        RVn        VP                  4        V P                  W P                  4       4       VP                  4        VP                  4        V P                  W P                  4       4       R#   TP                  4        i ; i)rñ   TNrc   )ru   rA  r?  rô   r=  ræ   r   r>  rÖ   rç   rw   r³   rè   )rz   r\  rë   s   &  r   Útest_active_childrenÚ!_TestProcess.test_active_childrenq  s¸   € Ø×Ñœ˜d×2Ñ2Ó4Ó5´tÔ<à—
‘
“ˆØ�L‰L §
¡
°ˆLÓ4ˆØ×Ñ˜×0Ñ0Ó2Ô3ð	ØˆAŒHØ�G‰GŒIØ�M‰M˜!×1Ñ1Ó3Ô4à�I‰IŒKà	�‰ŒØ×Ñ˜×0Ñ0Ó2Ö3øð �I‰I�Kús   Á;6C2 Ã2Dc                óü   € VP                  V4       \        V4      ^8  d[   \        ^4       FI  pV P                  V P                  WV.,           3R7      pVP                  4        VP                  4        KK  	  R# R# ©r±   rñ   N)r#  rÙ   Úrangeræ   Ú_test_recursionrç   rè   )r  r  ÚidÚirë   s   &&&  r   r˜  Ú_TestProcess._test_recursion‚  se   € à�
‰
�2ŒÜˆr‹7�QŒ;Ü˜1–X�Ø—K‘KØ×.Ñ.°eÀÀ½V°_ð  ó �ð —‘”	Ø—‘–ó ñ r   Tú#fails with is_dill(obj, child=True)c                ó@  € V P                  R R7      w  rV P                  V. 4       \        P                  ! \        4       . pVP                  4       '       d"   VP                  VP                  4       4       K7  . ^ .^ ^ .^ ^.^.^^ .^^..pV P                  W44       R# )Fr  N)	r  r˜  r”   r3  ÚDELTAr*  Úappendr  ru   )rz   r  r  ÚresultÚexpecteds   &    r   Útest_recursionÚ_TestProcess.test_recursion�  s”   € à—y‘y¨�yÓ.‰ˆØ×Ñ˜U BÔ'ä�
Š
”5ÔØˆØ�j‰j�lŠlØ�M‰M˜%Ÿ*™*›,Ö'ð ØˆcØ�A�Ø�A�ØˆcØ�A�Ø�A�ðˆð 	×Ñ˜Ö*r   c                ó(   € VP                  R 4       R# )g      $@Nr   r[  s   &&r   Ú_test_sentinelÚ_TestProcess._test_sentinel¢  s   € à�
‰
�4Ör   c                ó¬  € V P                   R 8X  d+   V P                  RP                  V P                   4      4       V P                  4       pV P	                  V P
                  V3R7      pV P                  \        4      ;_uu_ 4        VP                   RRR4       VP                  4        V P                  VP                  4       VP                  pV P                  V\        4       V P                  \        VRR7      4       VP!                  4        VP                  4        V P#                  \        V^R7      4       R#   + '       g   i     L·; i)r¹   rÎ   rñ   Nr;   r+   )rÏ   rÐ   r´   r=  ræ   r¥  rv   rL   Úsentinelrç   Ú
addCleanuprè   r×   r�  rÕ   r=   r³   rÓ   )rz   r\  rë   r¨  s   &   r   Útest_sentinelÚ_TestProcess.test_sentinel¦  sá   € Ø�9‰9˜	Ô!Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJØ—
‘
“ˆØ�L‰L × 3Ñ 3¸5¸(ˆLÓCˆØ×Ñœz×*Õ*Ø�JŠJ÷ +à	�‰Œ	Ø�‰˜Ÿ™ÔØ—:‘:ˆØ×Ñ˜h¬Ô,Ø×Ñœ¨¸3Ô?Ô@Ø�	‰	ŒØ	�‰ŒØ�‰œ¨¸!Ô<Ö=÷ +×*ús   ÂEÅE	c                óZ   € Ve   VP                  4        \        P                  ! V4       R # r   )rú   r†   Úexit)r  ÚrcrÈ   s   &&&r   Ú_test_closeÚ_TestProcess._test_close¶  s   € àŠ=Ø�E‰EŒGÜ�Š�Žr   c                ó(  € V P                   R 8X  d+   V P                  RP                  V P                   4      4       V P                  4       pV P	                  V P
                  RV/R7      pRVn        VP                  4        V P                  VP                  4       R4       V P                  \        4      ;_uu_ 4        VP                  4        RRR4       VP                  R4       VP                  4        V P                  VP                  4       R4       V P                  VP                  ^ 4       VP                  4        V P                  \        4      ;_uu_ 4        VP                  4        RRR4       V P                  \        4      ;_uu_ 4        VP                  4        RRR4       V P                  \        4      ;_uu_ 4        VP!                  4        RRR4       VP                  4        \"        P$                  ! V4      p?\&        P(                  ! 4        V P+                  V! 4       R4       \-        V4       R#   + '       g   i     EL€; i  + '       g   i     Lð; i  + '       g   i     LÍ; i  + '       g   i     Lª; i)r¹   rÎ   rÈ   )rò   rY   TNF)rÏ   rÐ   r´   r#   ræ   r¯  rÖ   rç   ru   rÔ   rv   rL   r$   rÇ   rè   rÜ   r-  ÚweakrefÚrefÚgcÚcollectr@  r(   )rz   rÈ   rë   Úwrs   &   r   Ú
test_closeÚ_TestProcess.test_close¼  s˜  € Ø�9‰9˜	Ô!Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJØ�J‰J‹LˆØ�L‰L × 0Ñ 0¸#¸q¸ˆLÓBˆØˆŒØ	�‰Œ	Ø×Ñ˜Ÿ™› tÔ,à×Ñœz×*Õ*Ø�G‰GŒI÷ +ð 	
�‰ˆdŒØ	�‰ŒØ×Ñ˜Ÿ™› uÔ-Ø×Ñ˜Ÿ™ QÔ'Ø	�‰Œ	Ø×Ñœz×*Õ*Ø�J‰JŒL÷ +à×Ñœz×*Õ*Ø�F‰FŒH÷ +à×Ñœz×*Õ*Ø�K‰KŒM÷ +à	�‰Œ	ä�[Š[˜‹^ˆØÜ
�
Š
ŒØ�‰‘b“d˜DÔ!ä�AŽ÷+ +×*Ð*ú÷ +×*úç*×*úç*×*ús0   Â?IÅ"IÆI.ÇJÉI	ÉI+	É.I>	ÊJ	Úwalltimec                óV  € V P                   R 8X  d+   V P                  RP                  V P                   4      4       \        P                  ! 4       p\
        P                  P                  R4      pVR8X  d   V'       d   ^M^M^dp\        V4       Uu. uF   pV P                  V P                  R
R7      NK"  	  ppV F  pVP                  4        K  	  V F  p\        V4       K  	  V F  pV P                  VP                  ^ 4       K!  	  \        V4       Uu. uF  pV P                  V P                  R7      NK!  	  ppV F  pVP                  4        K  	  \         P"                  ! R4       V F  pVP%                  4        K  	  V F  p\        V4       K  	  \
        P&                  R8w  do   \(        P*                  ) .p\,        P.                  R8X  d!   VP1                  \(        P2                  ) 4       V F  pV P5                  VP                  V4       K!  	  R	# R	# u upi u upi )r¹   rÎ   r   rU   rñ   r  çü©ñÒMbP?rw  ÚdarwinN)ç{®Gáz„?)rÏ   rÐ   r´   r!   rW   rI   Úenvironrú   r—  ræ   rg  rç   r/   ru   rÜ   rX  r”   r3  r-  r4   r`  r‚  r†   r‡   rŸ  rˆ  rw   )rz   ÚsmÚtravisÚNrš  Úprocsrë   Ú	exitcodess   &       r   Útest_many_processesÚ _TestProcess.test_many_processesÜ  s¶  € à�9‰9˜	Ô!Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJä×-Ò-Ó/ˆÜ—‘—‘ 
Ó+ˆØ$&¨'¤M—&‰Q™a°sˆô   œ(ó$Ù"�Qð —‘ T×%5Ñ%5¸G�ÖDÙ"ð 	ð $ãˆAØ�G‰GŽIñ ãˆAÜ˜ŽOñ ãˆAØ×Ñ˜QŸZ™Z¨Ö+ñ ô   œ(ó$Ù"�Qð —‘ T×%5Ñ%5�Ö6Ù"ð 	ð $ãˆAØ�G‰GŽIñ ä�
Š
�5ÔÛˆAØ�K‰KŽMñ ãˆAÜ˜ŽOñ ä�7‰7�dŒ?Ü Ÿ.™.˜Ð)ˆIÜ�|‰|˜xÔ'ð × Ñ ¤&§.¡. Ô1Û�Ø—‘˜aŸj™j¨)Ö4ó ñ ùò%$ùò$s   Â&H!Ä%H&c                ó~  € \        4       p\        P                  ! V4      pV P                  4       pV P	                  WV3R 7      p?VP                  4        VP                  4        \        P                  ! 4        V P                  V! 4       R4       V P                  VP                  4       ^4       \        V4       R# ©rñ   N)rÃ   r²  r³  r#   ræ   rç   rè   r´  rµ  r@  ru   rú   r(   )rz   rÉ   r¶  rÈ   rë   s   &    r   Útest_lose_target_refÚ!_TestProcess.test_lose_target_ref  s€   € Ü‹OˆÜ�[Š[˜‹^ˆØ�J‰J‹LˆØ�L‰L ¨A¨ˆLÓ/ˆØØ	�‰Œ	Ø	�‰ŒÜ
�
Š
ŒØ�‰‘b“d˜DÔ!Ø×Ñ˜Ÿ™› !Ô$Ü�AŽr   c                ón   € VP                  \        P                  ! 4       4       VP                  4        R # r   )rÇ   r   Úfd_countr   )rz   ÚevtrÈ   s   &&&r   Ú_test_child_fd_inflationÚ%_TestProcess._test_child_fd_inflation  s    € à	�‰Œi× Ò Ó"Ô#Ø�‰Ž
r   c                ó^  € V P                   R 8X  d+   V P                  RP                  V P                   4      4       \        P                  ! 4       pVR8X  d!   V P                  RP                  V4      4       ^pV P                  4       pV P                  4       p\        V4       Uu. uF!  pV P                  V P                  W43R7      NK#  	  ppV F  pVP                  4        K  	   \        V4       Uu. uF  qTP                  4       NK  	  ppV P                  \        \        V4      4      ^V4       VP                  4        V F  pVP                  4        K  	  \!        V4       R# u upi u upi   TP                  4        T F  pTP                  4        K  	  \!        T4       i ; i)r¹   rÎ   rq   rñ   N)rÏ   rÐ   r´   r!   rW   r=  r#   r—  ræ   rÍ  rç   rú   ru   rÙ   r³   rè   r(   )	rz   r¿  rÁ  rÌ  rÈ   rš  rÂ  rë   Ú	fd_countss	   &        r   Útest_child_fd_inflationÚ$_TestProcess.test_child_fd_inflation  sV  € ð �9‰9˜	Ô!Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJä×-Ò-Ó/ˆØ�Œ<ð �M‰MÐ7×>Ñ>¸rÓBÔCàˆØ�j‰j‹lˆØ�J‰J‹Lˆô   œ(ó$Ù"�Qð —‘ T×%BÑ%BÈ#È�ÖRÙ"ð 	ð $ãˆAØ�G‰GŽIñ ð	Ü*/°¬(Ó3©( QŸ™ž©(ˆIÐ3Ø×ÑœS¤ Y£Ó0°!°YÔ?ð �G‰GŒIÛ�Ø—‘–ñ ä˜ŽNùò$ùò 4øð �G‰GŒIÛ�Ø—‘–ñ ä˜�Nús$   Â''E,Ã*E6 Ã7E1Ä'E6 Å1E6 Å66F,c                ó¶   a€ V3R  lpV3R lp\         P                  ! VR7      P                  4        \         P                  ! VRR7      P                  4        R# )c                  óT   <€ \         P                  ! R 4       S P                  4        R# )ç      à?N©r”   r3  r³   ©rÌ  s   €r   Úfunc1Ú2_TestProcess._test_wait_for_threads.<locals>.func14  s   ø€ Ü�JŠJ�sŒOØ�G‰GŽIr   c                  óT   <€ \         P                  ! ^4       S P                  4        R# )é   N)r”   r3  Úclearr×  s   €r   Úfunc2Ú2_TestProcess._test_wait_for_threads.<locals>.func28  s   ø€ Ü�JŠJ�rŒNØ�I‰IŽKr   r  Tr  N)rG  ÚThreadrç   )rz   rÌ  rØ  rÝ  s   &f  r   Ú_test_wait_for_threadsÚ#_TestProcess._test_wait_for_threads2  s?   ø€ õ	õ	ô 	×Ò Ô&×,Ñ,Ô.Ü×Ò ¨dÔ3×9Ñ9Ö;r   c                óV  € V P                   R 8X  d+   V P                  RP                  V P                   4      4       V P                  4       pV P	                  V P
                  V3R7      pVP                  4        VP                  4        V P                  VP                  4       4       R# rF  )
rÏ   rÐ   r´   r=  ræ   rà  rç   rè   rÓ   Úis_set)rz   rÌ  Úprocs   &  r   Útest_wait_for_threadsÚ"_TestProcess.test_wait_for_threads?  su   € ð �9‰9˜	Ô!Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJà�j‰j‹lˆØ�|‰| 4×#>Ñ#>ÀcÀVˆ|ÓLˆØ�
‰
ŒØ�	‰	ŒØ�‰˜Ÿ
™
›Ö%r   c                óê   € VP                  4        FN  w  r4VR 8X  d'   \        P                  ! 4       pVP                  4        MVR8X  g   Q hRp\	        \
        VR4       KP  	  VP                  4        R# )r$   ÚremoveN)ÚitemsÚioÚStringIOr$   Úsetattrr†   r³   )rz   rÌ  Úbreak_std_streamsÚstream_nameÚactionÚstreams   &&&   r   Ú_test_error_on_stdio_flushÚ'_TestProcess._test_error_on_stdio_flushK  s^   € à#4×#:Ñ#:Ö#<ÑˆKØ˜Ô ÜŸš›�Ø—‘•à Ô)Ð)Ð)Ø�Ü”C˜ dÖ+ñ $=ð 	�‰Ž	r   c           	     ó$  € \         P                  ! 4       R .pV^ ,          P                  4        R FÆ  pV F½  p\        \        V4      p\        \        W#4        V P                  4       pV P                  V P                  V3R7      pVP                  4        VP                  4        V P                  VP                  4       4       V P                  VP                  ^ 4       \        \        W$4       K¿  	  KÈ  	  R #   \        \        Y$4       i ; i)Nrñ   ©ÚstdoutÚstderr)rê  rë  r$   Úgetattrr†   rì  r=  ræ   rñ  rç   rè   rÓ   rã  ru   rÜ   )rz   Ústreamsrî  rð  Ú
old_streamrÌ  rä  s   &      r   Útest_error_on_stdio_flush_1Ú(_TestProcess.test_error_on_stdio_flush_1W  sÌ   € ä—;’;“= $Ð'ˆØ��
×ÑÔÛ/ˆKÛ!�Ü$¤S¨+Ó6�
Üœ˜[Ô1ð	:ØŸ*™*›,�CØŸ<™<¨t×/NÑ/NØ.1¨Vð (ó 5�Dà—J‘J”LØ—I‘I”KØ—O‘O C§J¡J£LÔ1Ø×$Ñ$ T§]¡]°AÔ6äœC Ö9ó "ó 0øô œC Õ9ús   ÁB	C=Ã=Dc           	     ó¬  € R F¸  pR F¯  p\        \        V4      p V P                  4       pV P                  V P                  WAV/3R7      pVP                  4        VP                  4        V P                  VP                  4       4       V P                  VP                  ^ 4       \        \        W4       K±  	  Kº  	  R#   \        \        Y4       i ; i)rõ  rñ   Nrô  )r$   rè  )r÷  r†   r=  ræ   rñ  rç   rè   rÓ   rã  ru   rÜ   rì  )rz   rî  rï  rù  rÌ  rä  s   &     r   Útest_error_on_stdio_flush_2Ú(_TestProcess.test_error_on_stdio_flush_2j  s«   € ó 0ˆKÛ-�Ü$¤S¨+Ó6�
ð	:ØŸ*™*›,�CØŸ<™<¨t×/NÑ/NØ.1ÀÐ3HÐ-Ið (ó K�Dà—J‘J”LØ—I‘I”KØ—O‘O C§J¡J£LÔ1Ø×$Ñ$ T§]¡]°AÔ6äœC Ö9ó .ó 0øô œC Õ9ús   œBCÃCc                óR   € \         P                  ! V4       V P                  4        R # r   rÖ  )rÌ  rf  s   &&r   Ú_sleep_and_set_eventÚ!_TestProcess._sleep_and_set_event{  s   € ä�
Š
�5ÔØ�‰Ž	r   c                óÆ  € V P                   R 8X  d+   V P                  RP                  V P                   4      4       \        P                  ! 4       pVR8w  d!   V P                  RP                  V4      4       ^ RIHp VP                  4        RpV P                  4       pV P                  V P                  WT3R7      pVP                  4        VP                  p\        P                  ! Wq4       \        P                   ! VR,          4       V P                  4       pV P                  V P                  V3R7      p	V	P                  4        V	P#                  4        V P%                  VP'                  4       4       V P)                  V	P*                  ^ 4       VP#                  4        V P%                  VP'                  4       4       V P-                  VP*                  R4       R# )	r¹   rÎ   Ú
forkserver)Ú_forkserverrÕ  rñ   g       @N)r   éÿ   )rÏ   rÐ   r´   r!   rW   Úmultiprocess.forkserverr  Úensure_runningr=  ræ   r   rç   Ú_forkserver_pidrI   r‡  r”   r3  rè   rÓ   rã  ru   rÜ   rw   )
rz   Úsignumr¿  r  rf  rÌ  rä  r  Úevt2r  s
   &&        r   Úcheck_forkserver_deathÚ#_TestProcess.check_forkserver_death€  sQ  € ð �9‰9˜	Ô!Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJÜ×-Ò-Ó/ˆØ�Ôð �M‰MÐ7×>Ñ>¸rÓBÔCå7Ø×"Ñ"Ô$ð ˆà�j‰j‹lˆØ�|‰| 4×#<Ñ#<ÀCÀ<ˆ|ÓPˆØ�
‰
Œà×)Ñ)ˆÜ
�Š�Ôä�
Š
�5˜3•;Ôà�z‰z‹|ˆØ—‘ D×$=Ñ$=ÀTÀG�ÓLˆØ�‰ŒØ�
‰
ŒØ�‰˜Ÿ™›Ô&Ø×Ñ˜Ÿ™¨Ô+à�	‰	ŒØ�‰˜Ÿ
™
›Ô%Ø�‰�d—m‘m XÖ.r   c                óD   € V P                  \        P                  4       R # r   )r  r`  ra  rÁ   s   &r   Útest_forkserver_sigintÚ#_TestProcess.test_forkserver_sigint¦  s   € à×#Ñ#¤F§M¡MÖ2r   c                ór   € \         P                  R 8w  d"   V P                  \        P                  4       R# R# r†  )rI   r4   r  r`  rˆ  rÁ   s   &r   Útest_forkserver_sigkillÚ$_TestProcess.test_forkserver_sigkillª  s$   € ä�7‰7�dŒ?Ø×'Ñ'¬¯©Ö7ñ r   c                ó  € V P                   R 8X  d   V P                  RV P                    24       \        P                  ! 4       R8w  d   V P                  R4       \        P                  P
                  pVP                  4        V P                  VP                  4       VP                  pV P                  V4       V P                  \        V4      ^4       VP                  pV P                  V4       \        P                  P                  W2R7      pVP                  4        V P!                  \"        P$                  R7      pVP'                  4        VP)                  4        V P+                  VP,                  ^ 4       R# )r¹   rá   r  ú forkserver start method specific©rÒ   r  N)rÏ   rÐ   r!   rW   r  r  r  rÓ   r  Ú_forkserver_authkeyÚassertGreaterrÙ   Ú_forkserver_addressÚ
connectionÚClientr$   ræ   r†   r­  rç   rè   ru   rÜ   )rz   r  rÒ   ÚaddrÚclienträ  s   &     r   Útest_forkserver_auth_is_enabledÚ,_TestProcess.test_forkserver_auth_is_enabled¯  s  € Ø�9‰9˜	Ô!Ø�M‰MÐ5°d·i±i°[ÐAÔBÜ×+Ò+Ó-°Ô=Ø�M‰MÐ<Ô=ä$×/Ñ/×;Ñ;ˆ
Ø×!Ñ!Ô#Ø�‰˜
×2Ñ2Ô3Ø×0Ñ0ˆØ�‰˜Ô Ø×Ñœ3˜w›<¨Ô,Ø×-Ñ-ˆØ�‰˜Ôô !×+Ñ+×2Ñ2°4Ð2ÓIˆØ�‰Œð �|‰|¤3§8¡8ˆ|Ó,ˆØ�
‰
ŒØ�	‰	ŒØ×Ñ˜Ÿ™¨Ö*r   c           	     ó�  € V P                   R 8X  d   V P                  RV P                    24       \        P                  ! 4       R8w  d   V P                  R4       \        P                  P
                  pVP                  4        V P                  VP                  4       \        VP                  4      p\        P                  P                  P                  VRR4      ;_uu_ 4        RV,          Vn
        V P                  \         P"                  R7      pV P%                  \        P&                  4      ;_uu_ 4        VP)                  4        RRR4       ?RRR4       V P                  \         P"                  R7      pVP)                  4        VP+                  4        R#   + '       g   i     L[; i  + '       g   i     Le; i)r¹   rá   r  r  r  Nó   Tr  )rÏ   rÐ   r!   rW   r  r  r  rÓ   r  rÙ   r  rM   ÚmockÚpatchÚobjectræ   r†   r­  rv   ÚAuthenticationErrorrç   rè   )rz   r  Úauthkey_lenrä  s   &   r   Ú"test_forkserver_without_auth_failsÚ/_TestProcess.test_forkserver_without_auth_failsÉ  s6  € Ø�9‰9˜	Ô!Ø�M‰MÐ5°d·i±i°[ÐAÔBÜ×+Ò+Ó-°Ô=Ø�M‰MÐ<Ô=ä$×/Ñ/×;Ñ;ˆ
Ø×!Ñ!Ô#Ø�‰˜
×2Ñ2Ô3Ü˜*×8Ñ8Ó9ˆÜ�]‰]× Ñ ×'Ñ'ØÐ1°4÷9õ 9ð .2°KÕ-?ˆJÔ*Ø—<‘<¤s§x¡x�<Ó0ˆDØ×"Ñ"¤?×#FÑ#F×GÕGØ—
‘
”÷ Hà÷9ð �|‰|¤3§8¡8ˆ|Ó,ˆØ�
‰
ŒØ�	‰	Ž÷ H×Gú÷9÷ 9ús%   Ã(AF5Ä>F"	Å	F5Æ"F2Æ-F5Æ5G	rc   ©r·   r¹   r   ©r   N)r;   )@r€   r�   r‚   rƒ   rº   rÞ   rì   r   Úrequires_resourcerÿ   Úclassmethodrù   r  r	  r  r  r/  r)  r2  rC  rM   Ú
skipUnlessrG  Ú_HAVE_THREAD_NATIVE_IDrN  rJ  rX  r]  rc  rg  ru  r…   rI   r4   r{  r  rƒ  r‰  r�  r“  r˜  r¢  r¥  rª  r¯  r·  rÄ  rÈ  rÍ  rÑ  rà  rå  rñ  rú  rý  Ústaticmethodr   r  r  r  r  r&  rˆ   r‰   rŠ   s   @r   rÌ   rÌ   =  s»  ø‡ € à,€Mò1ò,ð  ×Ò˜uÓ%ñó &ðð( ñó ðò
'ð ñó ðòCð ñBó ðBò=ð2 ñó ðð
 ñLó ðLò&ðP ×Ò˜×9Ñ9Ð;LÓMñVó NðVð  ñ$ó ð$ð ñó ðð ñó ðð ñ%ó ð%ð ñó ðô7ðr ‡_‚_�R—W‘W ‘_ lÓ3ñ&ó 4ð&ð ‡_‚_�R—W‘W ‘_ lÓ3ñ3ó 4ð3ò4ò8ò)ò4ð" ñó ðð ‡_‚_�TÐ@ÓAñ+ó Bð+ð( ñó ðò>ð  óó ðò
ð@ ×Ò˜zÓ*ñ"5ó +ð"5òHð ñó ðòð> ñ
<ó ð
<ò
&ð Ø@Bó 	ó ð	ò:ò&:ð" óó ðò$/òL3ò8ò
+÷4ð r   rÌ   c                   ó8   a € ] tR tRt o R tR tR tR tRtV t	R# )Ú_UpperCaseriæ  c                óˆ   € \         P                  P                  V 4       \         P                  ! 4       w  V n        V n        R # r   )r!   ræ   r‘   r  Ú
child_connÚparent_connrÁ   s   &r   r‘   Ú_UpperCaser.__init__è  s.   € Ü×Ñ×(Ñ(¨Ô.Ü,;×,@Ò,@Ó,BÑ)ˆŒ˜Ö)r   c                ó  € V P                   P                  4        \        V P                  P                  R 4       F,  pV P                  P                  VP                  4       4       K.  	  V P                  P                  4        R # r   )r3  r$   Úiterr2  r  r#  Úupper©rz   r   s   & r   ÚrunÚ_UpperCaser.runì  sW   € Ø×Ñ×ÑÔ Ü�d—o‘o×*Ñ*¨DÖ1ˆAØ�O‰O× Ñ  §¡£Ö+ñ 2à�‰×ÑÖr   c                ó–   € \        V4      \        J g   Q hV P                  P                  V4       V P                  P	                  4       # r   )rA  rx   r3  r#  r  r8  s   &&r   ÚsubmitÚ_UpperCaser.submitò  s;   € Ü�A‹wœ#‹~Ðˆ~Ø×Ñ×Ñ˜aÔ Ø×Ñ×$Ñ$Ó&Ð&r   c                ó¤   € V P                   P                  R 4       V P                   P                  4        V P                  P                  4        R # r   )r3  r#  r$   r2  rÁ   s   &r   ÚstopÚ_UpperCaser.stop÷  s8   € Ø×Ñ×Ñ˜dÔ#Ø×Ñ×ÑÔ Ø�‰×ÑÖr   )r2  r3  N)
r€   r�   r‚   rƒ   r‘   r9  r<  r?  rˆ   r‰   rŠ   s   @r   r0  r0  æ  s   ø‡ € òCò ò'÷
 ð  r   r0  c                   óV   a € ] tR tRt o R	tR tR t]R 4       t]R 4       t	R t
RtV tR# )
Ú_TestSubclassingProcessiü  c                ó  € \        4       pR Vn        VP                  4        V P                  VP	                  R4      R4       V P                  VP	                  R4      R4       VP                  4        VP                  4        R# )Tr9  ÚHELLOÚworldÚWORLDN)r0  rÖ   rç   ru   r<  r?  rè   )rz   Ú
uppercasers   & r   Útest_subclassingÚ(_TestSubclassingProcess.test_subclassing   sg   € Ü “]ˆ
Ø ˆ
ÔØ×ÑÔØ×Ñ˜×*Ñ*¨7Ó3°WÔ=Ø×Ñ˜×*Ñ*¨7Ó3°WÔ=Ø�‰ÔØ�‰Ör   c                ó$  € V P                   R 8X  d+   V P                  RP                  V P                   4      4       \        P                  pV P                  \        P                  V4       V P                  V P                  V3R7      pVP                  4        VP                  4        \        VRR7      ;_uu_ 4       pVP                  4       pV P                  RV4       V P                  RV4       RRR4       R#   + '       g   i     R# ; i)r¹   rÎ   rñ   úutf-8©ÚencodingÚZeroDivisionErrorz__init__.pyN)rÏ   rÐ   r´   r   ÚTESTFNr©  Úunlinkræ   Ú_test_stderr_flushrç   rè   ÚopenÚreadrw   )rz   Útestfnrä  Úfr{   s   &    r   Útest_stderr_flushÚ)_TestSubclassingProcess.test_stderr_flush	  s»   € à�9‰9˜	Ô!Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJä×!Ñ!ˆØ�‰œ	×(Ñ(¨&Ô1Ø�|‰| 4×#:Ñ#:À&Àˆ|ÓKˆØ�
‰
ŒØ�	‰	ŒÜ�& 7×+Õ+¨qØ—&‘&“(ˆCà�M‰MÐ-¨sÔ3Ø�M‰M˜-¨Ô-÷	 ,×+×+Ò+ús   Â?5C>Ã>D	c                óæ   € \         P                  ! V\         P                  \         P                  ,          \         P                  ,          4      p\        VR RRR7      \
        n        ^^ ,           R# ©ÚwrK  F)rM  ÚclosefdN)rI   rR  ÚO_WRONLYÚO_CREATÚO_EXCLr†   rö  )r  rT  Úfds   && r   rQ  Ú*_TestSubclassingProcess._test_stderr_flush  sC   € ä�WŠW�VœRŸ[™[¬2¯:©:Õ5¼¿	¹	ÕAÓBˆÜ˜"˜c¨G¸UÔCŒŒ
Ø	ˆ!�ˆr   c                ó   € \         P                  ! V\         P                  \         P                  ,          \         P                  ,          4      p\        VR RRR7      \
        n        \
        P                  ! V4       R# rY  )rI   rR  r\  r]  r^  r†   rö  r­  )r  r[   rT  r_  s   &&& r   Ú_test_sys_exitÚ&_TestSubclassingProcess._test_sys_exit!  sF   € ä�WŠW�VœRŸ[™[¬2¯:©:Õ5¼¿	¹	ÕAÓBˆÜ˜"˜c¨G¸UÔCŒŒ
Ü�Š�Ör   c                óø  € V P                   R 8X  d+   V P                  RP                  V P                   4      4       \        P                  pV P                  \        P                  V4       . R	OR3 FÌ  pV P                  V P                  W!3R7      pRVn	        VP                  4        \        V4       V P                  VP                  ^4       \        VRR7      ;_uu_ 4       pVP                  4       pRRR4       V P                  XP!                  4       \#        V4      4       \$        P                  ! V4       KÎ  	  . R
OpV F‡  w  rxV P'                  VR7      ;_uu_ 4        V P                  \(        P*                  VR7      pRVn	        VP                  4        \        V4       V P                  VP                  V4       RRR4       K‰  	  R#   + '       g   i     Læ; i  + '       g   i     K±  ; i)r¹   rÎ   zignore thisrñ   TrK  rL  N©rX   ©rŸ   r±   é   ))©TrŸ   )©Fr   ))é   rj  )r   r   )rc   r   )rÏ   rÐ   r´   r   rO  r©  rP  ræ   rb  rÖ   rç   r/   ru   rÜ   rR  rS  Úrstriprx   rI   rø   r†   r­  )	rz   rT  r[   rë   rU  ÚcontentÚcasesrX   r¡  s	   &        r   Útest_sys_exitÚ%_TestSubclassingProcess.test_sys_exit'  so  € à�9‰9˜	Ô!Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJä×!Ñ!ˆØ�‰œ	×(Ñ(¨&Ô1ò Øó
ˆFð —‘ D×$7Ñ$7¸vÐ>N�ÓOˆAØˆAŒHØ�G‰GŒIÜ˜ŒOØ×Ñ˜QŸZ™Z¨Ô+ä�f w×/Õ/°1ØŸ&™&›(�÷ 0à×Ñ˜WŸ^™^Ó-¬s°6«{Ô;ä�IŠI�fÖñ
ò ˆó $‰NˆDØ—‘ 4�×(Õ(Ø—L‘L¬¯©°t�LÓ<�Ø�”Ø—‘”	Ü˜Q”Ø× Ñ  §¡¨XÔ6÷ )Ñ(ó $÷ 0×/ú÷ )×(Ð(ús   Ã&GÅ'A G(ÇG%Ç(G9rc   N©r·   )r€   r�   r‚   rƒ   rº   rH  rV  r+  rQ  rb  rn  rˆ   r‰   rŠ   s   @r   rB  rB  ü  sF   ø‡ € à"€Mòò.ð" ñó ðð ñó ð÷
&7ð &7r   rB  c                 ól   € \        V R 4      '       d   V P                  4       # V P                  4       ^ 8H  # )Úempty)rq  rr  Úqsize©rÈ   s   &r   Úqueue_emptyru  S  s+   € Üˆq�'×ÒØ�w‰w‹yÐà�w‰w‹y˜A‰~Ðr   c                 ól   € \        V R 4      '       d   V P                  4       # V P                  4       V8H  # )Úfull)rq  rw  rs  )rÈ   Úmaxsizes   &&r   Ú
queue_fullry  Y  s+   € Üˆq�&×ÒØ�v‰v‹xˆà�w‰w‹y˜GÑ#Ð#r   c                   ó¢   a € ] tR tRt o ]R 4       tR t]R 4       tR t]R 4       t	R t
R t]R	 4       tR
 tR tR tR tR tR tR tRtV tR# )Ú
_TestQueuei`  c                óŠ   € VP                  4        \        ^4       F  pVP                  4        K  	  VP                  4        R# )é   N)r   r—  rú   r³   )r  r'   Úchild_can_startÚparent_can_continuerš  s   &&&& r   Ú	_test_putÚ_TestQueue._test_putc  s1   € à×ÑÔÜ�q–ˆAØ�I‰IŽKñ à×ÑÖ!r   c                ó  € ^pV P                  VR7      pV P                  4       pV P                  4       pV P                  V P                  W#V3R7      pRVn        VP                  4        V P                  \        V4      R4       V P                  \        W!4      R4       VP                  ^4       VP                  ^R4       VP                  ^RR4       VP                  ^R4       VP                  ^RR4       VP                  ^4       \        P                  ! \        4       V P                  \        V4      R4       V P                  \        W!4      R4       \        VP                  4      p\        VP                  4      pV P                  \         P"                  V^R4       V P%                  VP&                  ^ 4       V P                  \         P"                  V^RR4       V P%                  VP&                  ^ 4       V P                  \         P"                  V^4       V P%                  VP&                  ^ 4       V P                  \         P"                  V^R\(        4       V P%                  VP&                  \(        4       V P                  \         P"                  V^R\*        4       V P%                  VP&                  ^ 4       V P                  \         P"                  V^R\,        R7       V P%                  VP&                  \,        4       VP/                  4        VP1                  4        V P                  \        V4      R4       V P                  \        W!4      R4       VP3                  4        \5        V4       R# )r}  ©rx  rñ   TFNr+   )r#   r=  ræ   r€  rÖ   rç   ru   ru  ry  rÇ   Ú
put_nowaitr”   r3  rž  r�   rv   ÚpyqueueÚFullr¥   r�   ÚTIMEOUT1ÚTIMEOUT2ÚTIMEOUT3r³   r   rè   r(   )rz   ÚMAXSIZEr'   r~  r  rä  rÇ   r„  s   &       r   Útest_putÚ_TestQueue.test_putj  sž  € ØˆØ—
‘
 7�
Ó+ˆØŸ*™*›,ˆØ"Ÿj™j›lÐà�|‰|Ø—>‘>ØÐ*=Ð>ð ó ˆð ˆŒØ�
‰
Œà×Ñœ UÓ+¨TÔ2Ø×Ñœ EÓ3°UÔ;à�	‰	�!ŒØ�	‰	�!�TÔØ�	‰	�!�T˜4Ô Ø�	‰	�!�UÔØ�	‰	�!�U˜DÔ!Ø×Ñ˜Ôô 	�
Š
”5Ôà×Ñœ UÓ+¨UÔ3Ø×Ñœ EÓ3°TÔ:ä˜EŸI™IÓ&ˆÜ" 5×#3Ñ#3Ó4ˆ
à×Ñœ'Ÿ,™,¨¨Q°Ô6Ø×$Ñ$ S§[¡[°!Ô4à×Ñœ'Ÿ,™,¨¨Q°°tÔ<Ø×$Ñ$ S§[¡[°!Ô4à×Ñœ'Ÿ,™,¨
°AÔ6Ø×$Ñ$ Z×%7Ñ%7¸Ô;à×Ñœ'Ÿ,™,¨¨Q°´hÔ?Ø×$Ñ$ S§[¡[´(Ô;à×Ñœ'Ÿ,™,¨¨Q°´xÔ@Ø×$Ñ$ S§[¡[°!Ô4à×Ñœ'Ÿ,™,¨¨Q°¼hÐÔGØ×$Ñ$ S§[¡[´(Ô;à×ÑÔØ× Ñ Ô"à×Ñœ UÓ+¨TÔ2Ø×Ñœ EÓ3°UÔ;à�	‰	ŒÜ�EÖr   c                óð   € VP                  4        VP                  ^4       VP                  ^4       VP                  ^4       VP                  ^4       VP                  ^4       VP                  4        R# rž   )r   rÇ   r³   ©r  r'   r~  r  s   &&&&r   Ú	_test_getÚ_TestQueue._test_get¥  sQ   € à×ÑÔØ�	‰	�!ŒØ�	‰	�!ŒØ�	‰	�!ŒØ�	‰	�!ŒØ�	‰	�!ŒØ×ÑÖ!r   c                ó  € V P                  4       pV P                  4       pV P                  4       pV P                  V P                  WV3R 7      pRVn        VP                  4        V P                  \        V4      R4       VP                  4        VP                  4        \        P                  ! \        P                  4       F  p\        V4      '       d   K   M	  V P                  \        V4      R4       V P                  VP                  4       ^4       V P                  VP                  RR4      ^4       V P                  VP                  R4      ^4       V P                  VP                  ^R7      ^4       V P                  VP                  4       ^4       V P                  \        V4      R4       \        VP                  4      p\        VP                  4      pV P!                  \"        P$                  VR4       V P'                  VP(                  ^ 4       V P!                  \"        P$                  VRR4       V P'                  VP(                  ^ 4       V P!                  \"        P$                  V4       V P'                  VP(                  ^ 4       V P!                  \"        P$                  VR\*        4       V P'                  VP(                  \*        4       V P!                  \"        P$                  VR\,        4       V P'                  VP(                  ^ 4       V P!                  \"        P$                  V\.        R7       V P'                  VP(                  \.        4       VP1                  4        \3        V4       R# )rñ   TFNr+   )r#   r=  ræ   r�  rÖ   rç   ru   ru  r³   r   r   Úsleeping_retryr6  Ú
get_nowaitrú   r�   rv   r…  ÚEmptyr¥   r�   r‡  rˆ  r‰  rè   r(   )rz   r'   r~  r  rä  Ú_rú   r“  s   &       r   Útest_getÚ_TestQueue.test_get¯  sŒ  € Ø—
‘
“ˆØŸ*™*›,ˆØ"Ÿj™j›lÐà�|‰|Ø—>‘>ØÐ*=Ð>ð ó ˆð ˆŒØ�
‰
Œà×Ñœ UÓ+¨TÔ2à×ÑÔØ× Ñ Ô"ä×'Ò'¬×(=Ñ(=Ö>ˆAÜ˜u×%Ô%Ùñ ?ð 	×Ñœ UÓ+¨UÔ3à×Ñ˜×)Ñ)Ó+¨QÔ/Ø×Ñ˜Ÿ™ 4¨Ó.°Ô2Ø×Ñ˜Ÿ™ 4›¨!Ô,Ø×Ñ˜Ÿ™¨1˜Ó-¨qÔ1Ø×Ñ˜Ÿ™› aÔ(à×Ñœ UÓ+¨TÔ2ä˜EŸI™IÓ&ˆÜ" 5×#3Ñ#3Ó4ˆ
à×Ñœ'Ÿ-™-¨¨eÔ4Ø×$Ñ$ S§[¡[°!Ô4à×Ñœ'Ÿ-™-¨¨e°TÔ:Ø×$Ñ$ S§[¡[°!Ô4à×Ñœ'Ÿ-™-¨Ô4Ø×$Ñ$ Z×%7Ñ%7¸Ô;à×Ñœ'Ÿ-™-¨¨d´HÔ=Ø×$Ñ$ S§[¡[´(Ô;à×Ñœ'Ÿ-™-¨¨e´XÔ>Ø×$Ñ$ S§[¡[°!Ô4à×Ñœ'Ÿ-™-¨´hÐÔ?Ø×$Ñ$ S§[¡[´(Ô;à�	‰	ŒÜ�EÖr   c                óN   € \        ^
^4       F  pVP                  V4       K  	  R# ©é
   N)r—  rÇ   )r  r'   rš  s   && r   Ú
_test_forkÚ_TestQueue._test_forkå  s   € ä�r˜2–ˆAØ�I‰I�aŽLó r   c                óú  € V P                  4       p\        ^
4       F  pVP                  V4       K  	  \        P                  ! \
        4       V P                  V P                  V3R7      pRVn        VP                  4        \        ^4       F#  pV P                  VP                  4       V4       K%  	  V P                  \        P                  VP                  R4       VP                  4        \!        V4       R# )rš  rñ   TFN)r#   r—  rÇ   r”   r3  rž  ræ   r›  rÖ   rç   ru   rú   rv   r…  r”  rè   r(   )rz   r'   rš  rë   s   &   r   Ú	test_forkÚ_TestQueue.test_forkí  s³   € ð —
‘
“ˆô �r–ˆAØ�I‰I�aŽLñ ô 	�
Š
”5Ôð �L‰L §¡°u°hˆLÓ?ˆØˆŒØ	�‰Œ	ô �r–ˆAØ×Ñ˜UŸY™Y›[¨!Ö,ñ à×Ñœ'Ÿ-™-¨¯©°EÔ:à	�‰ŒÜ�EÖr   c                óF  € V P                  4       p V P                  VP                  4       ^ 4       VP                  ^4       V P                  VP                  4       ^4       VP                  ^4       V P                  VP                  4       ^4       VP                  4        V P                  VP                  4       ^4       VP                  4        V P                  VP                  4       ^ 4       \        V4       R#   \         d    T P	                  R4        Líi ; i)r   zqsize method not implementedN)r#   ru   rs  r¨   rÐ   rÇ   rú   r(   ©rz   rÈ   s   & r   Ú
test_qsizeÚ_TestQueue.test_qsize	  sÏ   € Ø�J‰J‹Lˆð	:Ø×Ñ˜QŸW™W›Y¨Ô*ð 	
�‰ˆaŒØ×Ñ˜Ÿ™› AÔ&Ø	�‰ˆaŒØ×Ñ˜Ÿ™› AÔ&Ø	�‰ŒØ×Ñ˜Ÿ™› AÔ&Ø	�‰ŒØ×Ñ˜Ÿ™› AÔ&Ü�AŽøô #ô 	:Ø�M‰MÐ8Ö9ð	:ús   ’ D ÄD ÄD c                ó”   € \        VP                  R 4       F-  p\        P                  ! \        4       VP                  4        K/  	  R # r   )r6  rú   r”   r3  rž  Ú	task_done)r  rÈ   Úobjs   && r   Ú_test_task_doneÚ_TestQueue._test_task_done  s,   € ä˜Ÿ™˜tÖ$ˆCÜ�JŠJ”uÔØ�K‰KŽMó %r   c                ó¾  € V P                  4       p\        ^4       Uu. uF!  pV P                  V P                  V3R7      NK#  	  ppV F  pRVn        VP                  4        K  	  \        ^
4       F  pVP                  V4       K  	  VP                  4        V F  pVP                  R4       K  	  V F  pVP                  4        K  	  \        V4       R# u upi )rj   rñ   TN)	ÚJoinableQueuer—  ræ   r§  rÖ   rç   rÇ   rè   r(   )rz   r'   rš  Úworkersrë   s   &    r   Útest_task_doneÚ_TestQueue.test_task_done  sÄ   € Ø×"Ñ"Ó$ˆô " !œHó&Ù$�qð —<‘< t×';Ñ';À5À(�<ÖKÙ$ð 	ð &ó ˆAØˆAŒHØ�G‰GŽIñ ô �r–ˆAØ�I‰I�aŽLñ ð 	�
‰
ŒãˆAØ�I‰I�dŽOñ ó ˆAØ�F‰FŽHñ ä�EÖùò#&s   ž'Cc           	     ó  € \         P                  ! 4       ;_uu_ 4        R p\        VR,           RRR7      ;_uu_ 4       pVP                  R4       RRR4       \        P
                  ! \        P                  ! 4       4      ;_uu_ 4         \        V4       RRR4       RRR4       R#   + '       g   i     L`; i  \        P                   d    T P                  R4        LMi ; i  + '       g   i     LY; i  + '       g   i     R# ; i)Úimported_by_an_imported_moduleú.pyrZ  rK  rL  a  if 1:
                    import multiprocess as multiprocessing

                    q = multiprocessing.Queue()
                    q.put('knock knock')
                    q.get(timeout=3)
                    q.close()
                    del q
                Nz?Probable regression on import lock contention; see Issue #22853)r   Útemp_cwdrR  Úwriter   ÚDirsOnSysPathrI   ÚgetcwdÚ
__import__r…  r”  rs   )rz   Úmodule_namerU  s   &  r   Útest_no_import_lock_contentionÚ)_TestQueue.test_no_import_lock_contention5  s·   € Ü×Ò×!Õ!Ø:ˆKÜ�k EÕ)¨3¸×AÕAÀQØ—‘ð ô ÷ Bô ×,Ò,¬R¯YªY«[×9Õ9ð3Ü˜{Ô+÷ :÷ "Ñ!çA×Aûô —}‘}ô 3Ø—I‘Ið 2ö 3ð3ú÷ :×9ú÷ "×!Ð!úsX   ž C:¾B(	Á9C:Â	C'	ÂB;ÂC:Â(B8Â3C:Â;&C$Ã!C'	Ã#C$Ã$C'	Ã'C7Ã2C:Ã:D	c                ó$  € \         P                  ! 4       p\        P                  ! 4       pV P	                  \
        P                  VP                  R R4       \        P                  ! 4       V,
          pV P                  VR4       \        V4       R# )Tçš™™™™™É?r   N)
r!   r#   r”   r•   rv   r…  r”  rú   rŽ  r(   )rz   rÈ   rç   Údeltas   &   r   Útest_timeoutÚ_TestQueue.test_timeoutJ  sb   € Ü×!Ò!Ó#ˆÜ—’Ó ˆØ×Ñœ'Ÿ-™-¨¯©°°eÔ<Ü—’Ó  5Õ(ˆð 	×Ñ  uÔ-Ü�AŽr   c                ó  € V P                   R 8w  d+   V P                  RP                  V P                   4      4        ! R R\        4      p\        P
                  P                  4       ;_uu_ 4        V P                  4       pVP                  V! 4       4       VP                  R4       V P                  VP                  \
        P                  R7      4       \        V4       RRR4       \        P
                  P                  4       ;_uu_ 4        V P                  ^R7      pVP                  V! 4       4       VP                  R4        V P                  VP                  4       ^4       V P                  VP                  \
        P                  R7      4       V P                  VP!                  4       4       \        V4       RRR4       R#   + '       g   i     Lô; i  \         d     Lƒi ; i  + '       g   i     R# ; i)r·   rÎ   c                   ó&   a € ] tR tRt o R tRtV tR# )ÚF_TestQueue.test_queue_feeder_donot_stop_onexc.<locals>.NotSerializableiZ  c                ó   € \         hr   )rK   rÁ   s   &r   r®   ÚQ_TestQueue.test_queue_feeder_donot_stop_onexc.<locals>.NotSerializable.__reduce__[  s   € Ü$Ð$r   rc   N©r€   r�   r‚   rƒ   r®   rˆ   r‰   rŠ   s   @r   ÚNotSerializablerÀ  Z  s   ø‡ € ÷%ð %r   rÄ  Tr+   Nrƒ  )rÏ   rÐ   r´   r#  Útestr   Úcaptured_stderrr#   rÇ   rÓ   rú   r6  r(   ru   rs  r¨   rr  )rz   rÄ  rÈ   s   &  r   Ú"test_queue_feeder_donot_stop_onexcÚ-_TestQueue.test_queue_feeder_donot_stop_onexcU  s_  € à�9‰9˜Ô#Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJô	%œfô 	%ô �\‰\×)Ñ)×+Õ+Ø—
‘
“ˆAØ�E‰E‘/Ó#Ô$Ø�E‰E�$ŒKØ�O‰O˜AŸE™E¬'×*?Ñ*?˜EÓ@ÔAÜ˜ŒN÷ ,ô �\‰\×)Ñ)×+Õ+ð —
‘
 1�
Ó%ˆAØ�E‰E‘/Ó#Ô$Ø�E‰E�$ŒKðØ× Ñ  §¡£¨AÔ.ð
 �O‰O˜AŸE™E¬'×*?Ñ*?˜EÓ@ÔAà�O‰O˜AŸG™G›IÔ&Ü˜ŒN÷ ,Ñ+÷ ,×+ûô 'ô ñ ðú÷ ,×+Ð+ús>   Á1A2GÄ:G3Å G"Å,AG3ÇG	Ç"G0Ç-G3Ç/G0Ç0G3Ç3H	c                óÀ  a€ V P                   R 8w  d+   V P                  RP                  V P                   4      4        ! R R\        4      o ! V3R lR\        P
                  P                  4      pS! 4       p\        P                  P                  4       ;_uu_ 4        V! \        P                  ! 4       R7      pVP                  V4       VP                  R4       V P                  VP                  \        P                  R7      4       R	R	R	4       V P                  VP                  4       V P                  VP                   4       R	#   + '       g   i     LH; i)
r·   rÎ   c                   ó0   a € ] tR tRt o RtR tR tRtV tR# )ÚK_TestQueue.test_queue_feeder_on_queue_feeder_error.<locals>.NotSerializablei{  zMock unserializable objectc                ó"   € R V n         R V n        R# ©FN)Úreduce_was_calledÚ on_queue_feeder_error_was_calledrÁ   s   &r   r‘   ÚT_TestQueue.test_queue_feeder_on_queue_feeder_error.<locals>.NotSerializable.__init__}  s   € Ø).�Ô&Ø8=�Ö5r   c                ó   € R V n         \        hrh  )rÎ  rK   rÁ   s   &r   r®   ÚV_TestQueue.test_queue_feeder_on_queue_feeder_error.<locals>.NotSerializable.__reduce__�  s   € Ø)-�Ô&Ü$Ð$r   )rÏ  rÎ  N)	r€   r�   r‚   rƒ   r„   r‘   r®   rˆ   r‰   rŠ   s   @r   rÄ  rË  {  s   ø‡ € Ù,ò>÷%ð %r   rÄ  c                   ó<   <a € ] tR tRt o Rt]V3R l4       tRtV tR# )ÚE_TestQueue.test_queue_feeder_on_queue_feeder_error.<locals>.SafeQueuei…  z1Queue with overloaded _on_queue_feeder_error hookc                ón   <€ \        V \        4      '       d   \        VS4      '       d
   R Vn        R# R# R# ©TN)r    rK   rÏ  )rB  r¦  rÄ  s   &&€r   Ú_on_queue_feeder_errorÚ\_TestQueue.test_queue_feeder_on_queue_feeder_error.<locals>.SafeQueue._on_queue_feeder_error‡  s/   ø€ ä˜q¤.×1Ò1Ü" 3¨×8Ò8Ø;?�CÖ8ñ 9ñ 2r   rc   N)	r€   r�   r‚   rƒ   r„   r.  r×  rˆ   r‰   )r‹   rÄ  s   @€r   Ú	SafeQueuerÔ  …  s   ù‡ € ÙCØô@ó ö@r   rÙ  )r}   Tr+   N)rÏ   rÐ   r´   r#  r!   r"   r#   rÅ  r   rÆ  Úget_contextrÇ   rÓ   rú   r6  rÎ  rÏ  )rz   rÙ  Únot_serializable_objrÈ   rÄ  s   &   @r   Ú'test_queue_feeder_on_queue_feeder_errorÚ2_TestQueue.test_queue_feeder_on_queue_feeder_erroru  sñ   ø€ ð �9‰9˜Ô#Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJô	%œfô 	%÷	@œ×.Ñ.×4Ñ4ô 	@ñ  /Ó0Ðä�\‰\×)Ñ)×+Õ+Ùœo×9Ò9Ó;Ô<ˆAØ�E‰EÐ&Ô'ð �E‰E�$ŒKØ�O‰O˜AŸE™E¬'×*?Ñ*?˜EÓ@ÔA÷ ,ð 	�‰Ð,×>Ñ>Ô?Ø�‰Ð,×MÑMÖN÷ ,×+ús   ÂA.EÅE	c                ó@  € \         P                  ! 4       \         P                  ! 4       3 FB  pVP                  4        VP	                  4        V P                  VP                  4       4       KD  	  \         P                  ! 4       \         P                  ! 4       3 Fk  pVP                  R 4       VP                  4        VP	                  4        V P                  \        R4      ;_uu_ 4        VP                  4        RRR4       Km  	  R#   + '       g   i     K‚  ; i)Úfooú	is closedN)
r!   r#   rª  r$   r%   rÓ   rr  rÇ   ÚassertRaisesRegexÚOSErrorr¡  s   & r   Ú"test_closed_queue_empty_exceptionsÚ-_TestQueue.test_closed_queue_empty_exceptions›  s»   € ô
 !×&Ò&Ó(¬/×*GÒ*GÓ*IÓIˆAØ�G‰GŒIØ�M‰MŒOØ�O‰O˜AŸG™G›IÖ&ñ Jô
 !×&Ò&Ó(¬/×*GÒ*GÓ*IÓIˆAØ�E‰E�%ŒLØ�G‰GŒIØ�M‰MŒOØ×'Ñ'¬°×=Õ=Ø—‘”	÷ >Ñ=ó	 J÷ >×=Ð=ús   Ã-DÄDc                ó´  € \         P                  ! 4       \         P                  ! 4       3 F‚  pVP                  4        V P	                  \
        R 4      ;_uu_ 4        VP                  R4       RRR4       V P	                  \
        R 4      ;_uu_ 4        VP                  4        RRR4       K„  	  R#   + '       g   i     LM; i  + '       g   i     K¬  ; i)rà  rß  N)r!   r#   rª  r$   rá  rL   rÇ   rú   r¡  s   & r   Ú$test_closed_queue_put_get_exceptionsÚ/_TestQueue.test_closed_queue_put_get_exceptions¬  s‡   € Ü ×&Ò&Ó(¬/×*GÒ*GÓ*IÓIˆAØ�G‰GŒIØ×'Ñ'¬
°K×@Õ@Ø—‘�e”÷ Aà×'Ñ'¬
°K×@Õ@Ø—‘”÷ AÑ@ó	 Jç@×@úç@×@Ð@ús   ÁB3ÂCÂ3CÃCrc   N)r€   r�   r‚   rƒ   r+  r€  r‹  r�  r–  r›  rž  r¢  r§  r¬  r·  r¼  rÇ  rÜ  rã  ræ  rˆ   r‰   rŠ   s   @r   r{  r{  `  s–   ø‡ € ð ñ"ó ð"ò9ðv ñ"ó ð"ò4ðl ñó ðòò8ð  ñó ðò
ò,3ò*	òò@$OòL÷"ð r   r{  c                   óð   a € ] tR tRt o ]RR l4       t]R 4       tR tR t]	R 4       t
]P                  ! ]R4      R	 4       t]RR
 l4       tR tR t]P                  ! ]R4      R 4       tR tR tRtV tR# )Ú	_TestLocki·  Nc                óf   € V P                  4        Ve   VP                  \        V 4      4       R # R # r   )ÚacquirerŸ  Úrepr)ÚlockÚls   &&r   Ú_acquireÚ_TestLock._acquire¹  s%   € à�‰ŒØŠ=Ø�H‰H”T˜$“ZÖ ñ r   c                ór   € V P                  4        VP                  4        \        P                  ! R 4       R# )ç      ð?N)rë  r³   r”   r3  )rí  r\  s   &&r   Ú_acquire_eventÚ_TestLock._acquire_event¿  s   € à�‰ŒØ�	‰	ŒÜ�
Š
�3Žr   c                ó>  € V P                   R 8w  d+   V P                  RP                  V P                   4      4       V P                  4       pV P	                  R\        V4      4       VP                  4        V P	                  R\        V4      4       VP                  4        Rp. p\        P                  ! V P                  W3VR7      pVP                  4        \        P                  ! R4       V P	                  RV R2V^ ,          4       VP                  4        \        P                  ! V P                  V3VR7      pVP                  4        \        P                  ! R4       V P	                  R	\        V4      4       VP                  4        R
p\        P                  ! 4       P!                  4       pV P#                  V P                  W3VR7      pVP                  4        VP%                  4        V P	                  RV R2V^ ,          4       V P                  4       pV P'                  4       pV P#                  V P(                  W3RR7      pVP                  4        VP+                  4        V P	                  R\        V4      4       VP-                  4        R# )r·   rÎ   z<Lock(owner=None)>z<Lock(owner=MainProcess)>ÚT1©rò   rX   r4   r   z<Lock(owner=MainProcess|ú)>z<Lock(owner=SomeOtherThread)>ÚP1z<Lock(owner=ÚP2z<Lock(owner=SomeOtherProcess)>N)rÏ   rÐ   r´   ÚLockru   rì  rë  ÚreleaserG  rß  rï  rç   r”   r3  r!   ÚManagerrô   ræ   rè   r=  ró  r   r-  )rz   rí  Útnamerî  r—   Úpnamerë   r\  s   &       r   Útest_repr_lockÚ_TestLock.test_repr_lockÅ  s  € Ø�9‰9˜Ô#Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJà�y‰y‹{ˆØ×ÑÐ-´°T³
Ô;à�‰ŒØ×ÑÐ4´t¸D³zÔBØ�‰ŒàˆØˆÜ×Ò D§M¡MØ#' )Ø"'ô)ˆð 	
�‰Œ	Ü�
Š
�3ŒØ×ÑÐ3°E°7¸"Ð=¸qÀ½tÔDØ�‰Œä×Ò D§M¡MØ#' 'Ø"'ô)ˆð 	
�‰Œ	Ü�
Š
�3ŒØ×ÑÐ8¼$¸t»*ÔEØ�‰ŒàˆÜ×#Ò#Ó%×*Ñ*Ó,ˆØ�L‰L §¡Ø#˜iØ#ð ó %ˆð 	
�‰Œ	Ø	�‰ŒØ×Ñ˜<¨ w¨bÐ1°1°Qµ4Ô8à�y‰y‹{ˆØ—
‘
“ˆØ�L‰L × 3Ñ 3Ø#˜mØ"ð ó $ˆð 	
�‰Œ	Ø�
‰
ŒØ×ÑÐ9¼DÀ»JÔGØ	�‰Žr   c                ó  € V P                  4       pV P                  VP                  4       R 4       \        P                  R8”  d    V P                  VP                  4       4       V P                  VP                  R4      R4       V P                  VP                  4       R4       \        P                  R8”  d    V P                  VP                  4       4       V P                  \        \        P                  3VP                  4       R# )Té¦ FN)rû  ru   rë  r†   Ú
hexversionrÓ   Úlockedrü  rÕ   rv   rL   rG  ÚThreadError©rz   rí  s   & r   Ú	test_lockÚ_TestLock.test_lockõ  s­   € Ø�y‰y‹{ˆØ×Ñ˜Ÿ™›¨Ô.Ü�>‰>˜IÔ% t§¡°t·{±{³}Ô'EØ×Ñ˜Ÿ™ eÓ,¨eÔ4Ø×Ñ˜Ÿ™›¨Ô.Ü�>‰>˜IÔ% t×'7Ñ'7¸¿¹»Ô'FØ×Ñœ:¤y×'<Ñ'<Ð=¸t¿|¹|ÖLr   c                óp   € VP                  4        VP                  4       Vn        VP                  4        R # r   )rë  r  r©   r³   )r  rí  r\  rª   s   &&&&r   Ú_test_lock_locked_2processesÚ&_TestLock._test_lock_locked_2processesþ  s!   € à�‰ŒØ—K‘K“MˆŒ	Ø�	‰	Žr   úneeds sharedctypesc                óò  € V P                   R 8w  d+   V P                  RP                  V P                   4      4       V P                  4       pV P	                  4       pV P                  R^ 4      pV P                  V P                  WV3R7      pVP                  4        VP                  4        V P                  VP                  4       4       V P                  VP                  4       VP                  4        R# ©r·   rÎ   r¤   rñ   N)rÏ   rÐ   r´   rû  r=  r   ræ   r  rç   r   rÓ   r  r©   rè   )rz   rí  r\  rª   rë   s   &    r   Útest_lock_locked_2processesÚ%_TestLock.test_lock_locked_2processes  s°   € à�9‰9˜Ô#Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJà�y‰y‹{ˆØ—
‘
“ˆØ�j‰j˜˜aÓ ˆØ�L‰L × AÑ AØ#¨CÐ0ð ó 2ˆà	�‰Œ	Ø�
‰
ŒØ�‰˜Ÿ™›Ô&Ø�‰˜Ÿ	™	Ô"Ø	�‰Žr   c                óö   € \        V4       F  pV P                  4        K  	  Ve   VP                  \        V 4      4       \        P
                  ! V4       \        V4       F  pV P                  4        K  	  R # r   )r—  rë  rŸ  rì  r”   r3  rü  )rí  r,   rî  Únr•  s   &&&& r   Ú_acquire_releaseÚ_TestLock._acquire_release  sQ   € ä�q–ˆAØ�L‰LŽNñ àŠ=Ø�H‰H”T˜$“ZÔ Ü�
Š
�7ÔÜ�q–ˆAØ�L‰LŽNó r   c                óÔ  € V P                   R 8w  d+   V P                  RP                  V P                   4      4       V P                  4       pV P	                  R\        V4      4       ^p\        V4       F  pVP                  4        K  	  V P	                  RV R2\        V4      4       \        V4       F  pVP                  4        K  	  . . rT\        V4       F`  pVP                  \        P                  ! V P                  VRWV^,           3RV^,            2R7      4       VR,          P                  4        Kb  	  V F  pVP                  4        K  	  \        V4       F*  pV P                  RV^,            R	V^,            R2V4       K,  	  V P                  4       p\        P                  ! VP                  R
7      pVP                  4        VP                  4        V P	                  R\        V4      4       Rp	\         P"                  ! 4       P%                  4       pV P'                  V P                  VRV3V	R7      p
V
P                  4        V
P                  4        V P	                  RV	 R2V^ ,          4       V P                  4       pV P'                  V P(                  V3R7      p
V
P                  4        V
P                  4        V P	                  R\        V4      4       R# )r·   rÎ   z<RLock(None, 0)>z<RLock(MainProcess, rø  r   ÚTr÷  z<RLock(MainProcess|Tz, r  z!<RLock(SomeOtherThread, nonzero)>rù  z<RLock(z, 1)>rñ   z"<RLock(SomeOtherProcess, nonzero)>NrH   )rÏ   rÐ   r´   ÚRLockru   rì  r—  rë  rü  rŸ  rG  rß  r  rç   rè   rw   r!   rý  rô   ræ   rï  )rz   rí  r  r•  r—   rî  rš  Út_Úrlockrÿ  rë   s   &          r   Útest_repr_rlockÚ_TestLock.test_repr_rlock  sL  € Ø�9‰9˜Ô#Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJà�z‰z‹|ˆØ×ÑÐ+¬T°$«ZÔ8àˆÜ�q–ˆAØ�L‰LŽNñ à×ÑÐ/°¨s°"Ð5´t¸D³zÔBÜ�q–ˆAØ�L‰LŽNñ ð �2ˆ1Ü�q–ˆAØ�H‰H”Y×%Ò%¨T×-BÑ-BØ,0°#°q¸A½#Ð+>Ø-.¨q°­s¨e¨9ô6ô 7ð ˆb�E�K‰KŽMñ	 ó
 ˆBØ�G‰GŽIñ ä�q–ˆAØ�M‰MÐ0°°1µ°°R¸¸!½°u¸BÐ?ÀÖCñ ð —
‘
“ˆÜ×Ò E§M¡MÔ2ˆØ	�‰Œ	Ø	�‰ŒØ×ÑÐ<¼dÀ5»kÔJàˆÜ×#Ò#Ó%×*Ñ*Ó,ˆØ�L‰L × 5Ñ 5Ø# S¨!˜nØ#ð ó %ˆð 	
�‰Œ	Ø	�‰ŒØ×Ñ˜7 5 '¨Ð/°°1µÔ6à—
‘
“ˆØ�L‰L §¡°U°HˆLÓ=ˆØ	�‰Œ	Ø	�‰ŒØ×ÑÐ=¼tÀE»{ÖKr   c                ó*  € V P                  4       pV P                  VP                  4       R 4       \        P                  R8”  d    V P                  VP                  4       4       V P                  VP                  4       R 4       V P                  VP                  4       R 4       V P                  VP                  4       R4       \        P                  R8”  d    V P                  VP                  4       4       V P                  VP                  4       R4       V P                  VP                  4       R4       \        P                  R8”  d    V P                  VP                  4       4       V P                  \        \        3VP                  4       R# )Tr  N)r  ru   rë  r†   r  rÓ   r  rü  rÕ   rv   r,  rn  r  s   & r   Ú
test_rlockÚ_TestLock.test_rlockL  s  € Ø�z‰z‹|ˆØ×Ñ˜Ÿ™›¨Ô.Ü�>‰>˜IÔ% t§¡°t·{±{³}Ô'EØ×Ñ˜Ÿ™›¨Ô.Ø×Ñ˜Ÿ™›¨Ô.Ø×Ñ˜Ÿ™›¨Ô.Ü�>‰>˜IÔ% t§¡°t·{±{³}Ô'EØ×Ñ˜Ÿ™›¨Ô.Ø×Ñ˜Ÿ™›¨Ô.Ü�>‰>˜IÔ% t×'7Ñ'7¸¿¹»Ô'FØ×Ñœ>¬<Ð8¸$¿,¹,ÖGr   c                óò  € V P                   R 8w  d+   V P                  RP                  V P                   4      4       V P                  4       pV P	                  4       pV P                  R^ 4      pV P                  V P                  WV3R7      pVP                  4        VP                  4        V P                  VP                  4       4       V P                  VP                  4       VP                  4        R# r  )rÏ   rÐ   r´   r  r=  r   ræ   r  rç   r   rÓ   r  r©   rè   )rz   r  r\  rª   rë   s   &    r   Útest_rlock_locked_2processesÚ&_TestLock.test_rlock_locked_2processesY  s°   € à�9‰9˜Ô#Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJà—
‘
“ˆØ—
‘
“ˆØ�j‰j˜˜aÓ ˆà�L‰L × AÑ AØ$¨SÐ1ð ó 3ˆà	�‰Œ	Ø�
‰
ŒØ�‰˜Ÿ™›Ô'Ø�‰˜Ÿ	™	Ô"Ø	�‰Žr   c                ó’   € V P                  4       ;_uu_ 4       pV P                  V4       R R R 4       R #   + '       g   i     R # ; ir   )rû  rÓ   ©rz   r  s   & r   Útest_lock_contextÚ_TestLock.test_lock_contextj  s'   € Ø�Y‰Y�[Œ[˜FØ�O‰O˜FÔ#÷ �[�[Š[úó	   ™5µA	c                ó’   € V P                  4       ;_uu_ 4       pV P                  V4       R R R 4       R #   + '       g   i     R # ; ir   )r  rÓ   r$  s   & r   Útest_rlock_contextÚ_TestLock.test_rlock_contextn  s'   € Ø�Z‰Z�\Œ\˜VØ�O‰O˜FÔ#÷ �\�\Š\úr'  rc   r   )NrŸ   )r€   r�   r‚   rƒ   r.  rï  ró  r   r  r+  r  rM   r,  ÚHAS_SHAREDCTYPESr  r  r  r  r!  r%  r)  rˆ   r‰   rŠ   s   @r   ré  ré  ·  sÃ   ø‡ € àó!ó ð!ð
 ñó ðò
.ò`Mð ñó ðð
 ×ÒÐ)Ð+?Ó@ñó Aðð óó ðò,Lò\Hð ×ÒÐ)Ð+?Ó@ñó Aðò $÷$ð $r   ré  c                   ó8   a € ] tR tRt o R tR tR tR tRtV t	R# )Ú_TestSemaphoreis  c                ó\  € V P                  ^\        V4       V P                  VP                  4       R4       V P                  ^\        V4       V P                  VP                  4       R4       V P                  ^ \        V4       V P                  VP                  R4      R4       V P                  ^ \        V4       V P                  VP	                  4       R4       V P                  ^\        V4       V P                  VP	                  4       R4       V P                  ^\        V4       R# )r±   TFN)r«   r¾   ru   rë  rü  ©rz   Úsems   &&r   Ú_test_semaphoreÚ_TestSemaphore._test_semaphoreu  sß   € Ø×'Ñ'¨¬9°cÔ:Ø×Ñ˜Ÿ™›¨Ô-Ø×'Ñ'¨¬9°cÔ:Ø×Ñ˜Ÿ™›¨Ô-Ø×'Ñ'¨¬9°cÔ:Ø×Ñ˜Ÿ™ UÓ+¨UÔ3Ø×'Ñ'¨¬9°cÔ:Ø×Ñ˜Ÿ™›¨Ô-Ø×'Ñ'¨¬9°cÔ:Ø×Ñ˜Ÿ™›¨Ô-Ø×'Ñ'¨¬9°cÖ:r   c                ó&  € V P                  ^4      pV P                  V4       V P                  VP                  4       R4       V P	                  ^\
        V4       V P                  VP                  4       R4       V P	                  ^\
        V4       R# ©r±   N)Ú	Semaphorer1  ru   rü  r«   r¾   r/  s   & r   Útest_semaphoreÚ_TestSemaphore.test_semaphore‚  sn   € Ø�n‰n˜QÓˆØ×Ñ˜SÔ!Ø×Ñ˜Ÿ™›¨Ô-Ø×'Ñ'¨¬9°cÔ:Ø×Ñ˜Ÿ™›¨Ô-Ø×'Ñ'¨¬9°cÖ:r   c                óJ   € V P                  ^4      pV P                  V4       R# r4  )ÚBoundedSemaphorer1  r/  s   & r   Útest_bounded_semaphoreÚ%_TestSemaphore.test_bounded_semaphoreŠ  s    € Ø×#Ñ# AÓ&ˆØ×Ñ˜SÖ!r   c                ó   € V P                   R 8w  d+   V P                  RP                  V P                   4      4       V P                  ^ 4      p\	        VP
                  4      pV P                  V! R4      R4       V P                  VP                  R4       V P                  V! RR4      R4       V P                  VP                  R4       V P                  V! R\        4      R4       V P                  VP                  ^ 4       V P                  V! R\        4      R4       V P                  VP                  \        4       V P                  V! \        R7      R4       V P                  VP                  \        4       R# )r·   rÎ   Fr;   NTr+   )rÏ   rÐ   r´   r5  r�   rë  ru   r¥   r�   r‡  rˆ  r‰  )rz   r0  rë  s   &  r   r¼  Ú_TestSemaphore.test_timeout’  s  € Ø�9‰9˜Ô#Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJà�n‰n˜QÓˆÜ §¡Ó,ˆà×Ñ™ ›¨Ô/Ø×$Ñ$ W§_¡_°cÔ:à×Ñ™ ¨Ó-¨uÔ5Ø×$Ñ$ W§_¡_°cÔ:à×Ñ™ ¬Ó1°5Ô9Ø×$Ñ$ W§_¡_°aÔ8à×Ñ™ ¤xÓ0°%Ô8Ø×$Ñ$ W§_¡_´hÔ?à×Ñ™¬Ô2°EÔ:Ø×$Ñ$ W§_¡_´hÖ?r   rc   N)
r€   r�   r‚   rƒ   r1  r6  r:  r¼  rˆ   r‰   rŠ   s   @r   r-  r-  s  s    ø‡ € ò;ò;ò"÷@ð @r   r-  c                   óò   a € ] tR tRt o ]RR l4       tR tR tR tR t	R t
R	 t]R
 4       t]P                  ! ]R4      R 4       t]R 4       t]P                  ! ]R4      R 4       t]R 4       tR tRtV tR# )Ú_TestConditioni©  Nc                ó¨   € VP                  4        VP                  4        VP                  V4       VP                  4        VP                  4        R # r   )rë  rü  r   )r  ÚcondÚsleepingÚwokenr,   s   &&&&&r   rU  Ú_TestCondition.f«  s5   € à�‰ŒØ×ÑÔØ�	‰	�'ÔØ�‰ŒØ�‰Žr   c                óÂ   € \         P                  ! \         P                  4       F  p V! 4       V8X  d    MK  	  V P	                  W!4       R #   \         d      K"  i ; ir   )r   r’  r6  r¨   r«   )rz   r�   r©   r•  s   &&& r   ÚassertReachesEventuallyÚ&_TestCondition.assertReachesEventually³  sW   € Ü×'Ò'¬×(=Ñ(=Ö>ˆAðÙ“6˜U”?Ùñ #ñ ?ð 	×'Ñ'¨Ö4øô 'ô Ûðús   ©AÁAÁAc                ó<  € V P                   R 8X  dy    VP                  P                  4       VP                  P                  4       ,
          pV P	                  V^ 4       V P	                  VP
                  P                  4       ^ 4       R# R#   \         d     R# i ; i©r·   N)rÏ   Ú_sleeping_countr¾   Ú_woken_countru   Ú_wait_semaphorer¨   )rz   rA  Úsleeperss   && r   Úcheck_invariantÚ_TestCondition.check_invariant½  s†   € à�9‰9˜Ô#ðØ ×0Ñ0×:Ñ:Ó<Ø ×-Ñ-×7Ñ7Ó9õ:�à× Ñ  ¨1Ô-Ø× Ñ  ×!5Ñ!5×!?Ñ!?Ó!AÀ1ÖEñ $øô 'ô Úðús   “A5B ÂBÂBc                ó6  a€ V P                  4       pV P                  ^ 4      pV P                  ^ 4      oV P                  V P                  WS3R7      pRVn        VP                  4        \        P                  ! V P                  WS3R7      pRVn        VP                  4        VP                  4        VP                  4        V P                  V3R l^ 4       VP                  4        VP                  4        VP                  4        V P                  V3R l^4       VP                  4        VP                  4        VP                  4        V P                  V3R l^4       V P                  V4       \        P                  ! V4       \        V4       R# )r   rñ   Tc                  ó   <€ \        S 4      # r   ©r¾   ©rC  s   €r   Ú<lambda>Ú,_TestCondition.test_notify.<locals>.<lambda>Ú  ó
   ø€ ¬Y°uÔ-=r   c                  ó   <€ \        S 4      # r   rR  rS  s   €r   rT  rU  â  rV  r   c                  ó   <€ \        S 4      # r   rR  rS  s   €r   rT  rU  ê  rV  r   N)Ú	Conditionr5  ræ   rU  rÖ   rç   rG  rß  rë  rF  Únotifyrü  rN  r	   r%   r/   )rz   rA  rB  rë   r—   rC  s   &    @r   Útest_notifyÚ_TestCondition.test_notifyÈ  s3  ø€ Ø�~‰~ÓˆØ—>‘> !Ó$ˆØ—‘˜qÓ!ˆà�L‰L §¡¨d¸eÐ-DˆLÓEˆØˆŒØ	�‰Œ	ä×Ò D§F¡F°$À%Ð1HÔIˆØˆŒØ	�‰Œ	ð 	×ÑÔØ×ÑÔð 	×$Ñ$Ô%=¸qÔAð 	�‰ŒØ�‰ŒØ�‰Œð 	×$Ñ$Ô%=¸qÔAð 	�‰ŒØ�‰ŒØ�‰Œð 	×$Ñ$Ô%=¸qÔAð 	×Ñ˜TÔ"ä×$Ò$ QÔ'Ü�QŽr   c                óÆ  € V P                  4       pV P                  ^ 4      pV P                  ^ 4      p. p\        ^4       F   pV P                  V P                  WV\
        3R7      pRVn        VP                  4        VP                  V4       \        P                  ! V P                  WV\
        3R7      pRVn        VP                  4        VP                  V4       K¢  	  \        ^4       F  pVP                  4        K  	  \        ^4       F  pVP                  4        K  	  V P                  ^ \        V4       V P                  V4       \        ^4       F–  pV P                  V P                  WV3R7      pRVn        VP                  4        VP                  V4       \        P                  ! V P                  WV3R7      pRVn        VP                  4        VP                  V4       K˜  	  \        ^4       F  pVP                  4        K  	  \        P                   ! \"        4       V P                  ^ \        V4       VP                  4        VP%                  4        VP'                  4        \        ^4       F  pVP                  4        K  	  V P                  ^ \        V4       V P                  V4       V F  p\(        P*                  ! V4       K  	  R# )r   rñ   TN)rY  r5  r—  ræ   rU  r‡  rÖ   rç   rŸ  rG  rß  rë  r«   r¾   rN  r”   r3  rž  Ú
notify_allrü  r	   r%   )	rz   rA  rB  rC  r«  rš  rë   r—   rZ  s	   &        r   Útest_notify_allÚ_TestCondition.test_notify_allò  s>  € Ø�~‰~ÓˆØ—>‘> !Ó$ˆØ—‘˜qÓ!ˆð ˆÜ�q–ˆAØ—‘ D§F¡FØ#'°5¼(Ð"Cð ó EˆAàˆAŒHØ�G‰GŒIØ�N‰N˜1Ôä× Ò ¨¯©Ø'+°u¼hÐ&GôIˆAàˆAŒHØ�G‰GŒIØ�N‰N˜1Öñ ô �q–ˆAØ×ÑÖñ ô �q–ˆAØ�M‰MŽOñ à×'Ñ'¨¬9°eÔ<ð 	×Ñ˜TÔ"ô �q–ˆAØ—‘ D§F¡F°$À%Ð1H�ÓIˆAØˆAŒHØ�G‰GŒIØ�N‰N˜1Ôä× Ò ¨¯©°dÀeÐ5LÔMˆAØˆAŒHØ�G‰GŒIØ�N‰N˜1Öñ ô �q–ˆAØ×ÑÖñ ô 	�
Š
”5ÔØ×'Ñ'¨¬9°eÔ<ð 	�‰ŒØ�‰ÔØ�‰Œô �q–ˆAØ�M‰MŽOñ à×'Ñ'¨¬9°eÔ<ð 	×Ñ˜TÔ"ãˆAä×(Ò(¨Ö+ó r   c                ór  a€ V P                  4       pV P                  ^ 4      pV P                  ^ 4      o. p\        ^4       F–  pV P                  V P                  WS3R7      pRVn        VP                  4        VP                  V4       \        P                  ! V P                  WS3R7      pRVn        VP                  4        VP                  V4       K˜  	  \        ^4       F  pVP                  4        K  	  \        P                  ! \        4       V P                  ^ \        S4       VP                  4        VP!                  ^R7       VP#                  4        V P%                  V3R l^4       VP                  4        VP!                  ^R7       VP#                  4        V P%                  V3R l^4       VP                  4        VP!                  ^R7       VP#                  4        V P                  ^\        S4       V P'                  V4       V F  p\(        P*                  ! V4       K  	  R# )r   rñ   T)r  c                  ó   <€ \        S 4      # r   rR  rS  s   €r   rT  Ú._TestCondition.test_notify_n.<locals>.<lambda>W  rV  r   c                  ó   <€ \        S 4      # r   rR  rS  s   €r   rT  rc  ^  rV  r   N)rY  r5  r—  ræ   rU  rÖ   rç   rŸ  rG  rß  rë  r”   r3  rž  r«   r¾   rZ  rü  rF  rN  r	   r%   )	rz   rA  rB  r«  rš  rë   r—   rZ  rC  s	   &       @r   Útest_notify_nÚ_TestCondition.test_notify_n7  s®  ø€ Ø�~‰~ÓˆØ—>‘> !Ó$ˆØ—‘˜qÓ!ˆð ˆÜ�q–ˆAØ—‘ D§F¡F°$À%Ð1H�ÓIˆAØˆAŒHØ�G‰GŒIØ�N‰N˜1Ôä× Ò ¨¯©°dÀeÐ5LÔMˆAØˆAŒHØ�G‰GŒIØ�N‰N˜1Öñ ô �q–ˆAØ×ÑÖñ ô 	�
Š
”5ÔØ×'Ñ'¨¬9°eÔ<ð 	�‰ŒØ�‰�aˆÔØ�‰Œð 	×$Ñ$Ô%=¸qÔAð 	�‰ŒØ�‰�aˆÔØ�‰Œà×$Ñ$Ô%=¸qÔAð 	�‰ŒØ�‰�aˆÔØ�‰Œà×'Ñ'¨¬9°eÔ<ð 	×Ñ˜TÔ"ãˆAä×(Ò(¨Ö+ó r   c                ó  € V P                  4       p\        VP                  4      pVP                  4        V! \        4      pVP                  4        V P                  VR 4       V P                  VP                  \        4       R# rÍ  )	rY  r�   r   rë  r‡  rü  ru   r¥   r�   )rz   rA  r   rª   s   &   r   r¼  Ú_TestCondition.test_timeoutn  s[   € Ø�~‰~ÓˆÜ˜TŸY™YÓ'ˆØ�‰ŒÙ”8‹nˆØ�‰ŒØ×Ñ˜˜eÔ$Ø×$Ñ$ T§\¡\´8Ö<r   c                ó  a€ T;_uu_ 4        ^ Sn         VP                  4        VP                  V3R l4      pV'       d   SP                   ^8w  d   \        P                  ! ^4       RRR4       R#   + '       g   i     R# ; i)r   c                  ó"   <€ S P                   ^8H  # ri   ©r©   ©Ústates   €r   rT  Ú0_TestCondition._test_waitfor_f.<locals>.<lambda>|  ó   ø€ ¨E¯K©K¸ªNr   N)r©   rZ  Úwait_forr†   r­  )r  rA  rm  r   s   &&f r   Ú_test_waitfor_fÚ_TestCondition._test_waitfor_fw  sL   ø€ çŠTØˆEŒKØ�K‰KŒMØ—]‘]Ô#:Ó;ˆFß˜UŸ[™[¨AÔ-Ü—’˜”÷ �T�TŠTús   ŒAA2Á2B	r  c                óÆ  a€ V P                  4       pV P                  R R4      oV P                  V P                  VS3R7      pRVn        VP                  4        V;_uu_ 4        VP                  V3R l4      pV P                  V4       V P                  SP                  ^ 4       RRR4       \        ^4       FU  p\        P                  ! R4       V;_uu_ 4        S;P                  ^,          un	        VP                  4        RRR4       KW  	  \        V4       V P                  VP                  ^ 4       R#   + '       g   i     L�; i  + '       g   i     K¦  ; i)rš  rñ   Tc                  ó"   <€ S P                   ^ 8H  # )r   rk  rl  s   €r   rT  Ú-_TestCondition.test_waitfor.<locals>.<lambda>‹  ro  r   Nr½  rH   )rY  r   ræ   rq  rÖ   rç   rp  rÓ   ru   r©   r—  r”   r3  rZ  r/   rÜ   )rz   rA  rë   r   rš  rm  s   &    @r   Útest_waitforÚ_TestCondition.test_waitfor€  sô   ø€ ð �~‰~ÓˆØ—
‘
˜3 Ó#ˆà�L‰L × 4Ñ 4¸DÀ%¸=ˆLÓIˆØˆŒØ	�‰Œ	çŠTØ—]‘]Ô#:Ó;ˆFØ�O‰O˜FÔ#Ø×Ñ˜UŸ[™[¨!Ô,÷ ô
 �q–ˆAÜ�JŠJ�tÔß’Ø—’˜qÕ •Ø—‘”÷ ‘ñ ô 	�QŒØ×Ñ˜Ÿ™ QÖ'÷ �Tú÷ —�ús   Á$AD<Ã*EÄ<E	ÅE c                óL  a€ VP                  4        T;_uu_ 4        R p\        P                  ! 4       pVP                  V3R lVR7      p\        P                  ! 4       V,
          pV'       g   V\        ,
          V8:  d   RVn        RRR4       R#   + '       g   i     R# ; i)r   c                  ó"   <€ S P                   ^8H  # ri   rk  rl  s   €r   rT  Ú8_TestCondition._test_waitfor_timeout_f.<locals>.<lambda>ž  ro  r   r+   TN)rü  r”   r•   rp  Ú	CLOCK_RESr©   )r  rA  rm  Úsuccessr0  r¡  Údtr   s   &&f&&   r   Ú_test_waitfor_timeout_fÚ&_TestCondition._test_waitfor_timeout_f˜  sh   ø€ à�‰ŒßŠTØˆHÜ—’Ó!ˆBØ—]‘]Ô#:ÀH�]ÓMˆFÜ—’Ó! BÕ&ˆBß˜x¬)Õ3¸Ô:Ø $�”÷ �T�TŠTús   œA,BÂB#	c                ó–  € V P                  4       pV P                  R ^ 4      pV P                  R R4      pV P                  ^ 4      pV P                  V P                  WW43R7      pRVn        VP                  4        V P                  VP                  \        P                  R7      4       \        ^4       FU  p\        P                  ! R4       V;_uu_ 4        V;P                  ^,          un        VP                  4        RRR4       KW  	  \!        V4       V P                  VP                  4       R#   + '       g   i     K’  ; i)rš  Frñ   Tr+   r½  N)rY  r   r5  ræ   r~  rÖ   rç   rÓ   rë  r   r+  r—  r”   r3  r©   rZ  r/   )rz   rA  rm  r|  r0  rë   rš  s   &      r   Útest_waitfor_timeoutÚ#_TestCondition.test_waitfor_timeout£  sð   € ð �~‰~ÓˆØ—
‘
˜3 Ó"ˆØ—*‘*˜S %Ó(ˆØ�n‰n˜QÓˆà�L‰L × <Ñ <Ø#¨GÐ9ð ó ;ˆàˆŒØ	�‰Œ	Ø�‰˜Ÿ™¬G×,@Ñ,@˜ÓAÔBô �q–ˆAÜ�JŠJ�uÔß’Ø—’˜qÕ •Ø—‘”÷ ‘ñ ô 	�QŒØ�‰˜Ÿ™Ö&÷ —�ús   Ã*D7Ä7Ec                óô   € V;_uu_ 4        VP                  4        R R R 4       \        P                  ! ^4       Ve(   \        P                  ! V\
        P                  4       R # R #   + '       g   i     LS; ir   )rZ  r”   r3  rI   r‡  r`  ra  )r  rÉ   r  s   &&&r   Ú_test_wait_resultÚ _TestCondition._test_wait_result»  sD   € çŠQØ�H‰HŒJ÷ ä�
Š
�1ŒØŠ?Ü�GŠG�CœŸ™Ö'ñ ÷ �Qús   ‹A'Á'A7	c                ó€  € \        V \        4      '       d,   \        P                  R 8w  d   \        P
                  ! 4       pMRpV P                  4       pT;_uu_ 4        V P                  VP                  ^ 4      4       V P                  VP                  R4      4       V P                  V P                  W!3R7      pVP                  4        V P                  VP                  ^<4      4       Ve"   V P                  \        VP                  ^<4       VP                  4        RRR4       R#   + '       g   i     R# ; i)r9   Nr   rñ   )r    ÚProcessesMixinr†   r‡   rI   rÛ   rY  rÕ   r   ræ   r„  rç   rÓ   rv   ÚKeyboardInterruptrè   )rz   r  rÉ   rë   s   &   r   Útest_wait_resultÚ_TestCondition.test_wait_resultÃ  sÏ   € Ü�dœN×+Ò+´·±ÀÔ0GÜ—)’)“+‰CàˆCà�N‰NÓˆßŠQØ×Ñ˜QŸV™V A›YÔ'Ø×Ñ˜QŸV™V C›[Ô)à—‘ D×$:Ñ$:À!À�ÓJˆAØ�G‰GŒIà�O‰O˜AŸF™F 2›JÔ'ØŠØ×!Ñ!Ô"3°Q·V±V¸RÔ@à�F‰FŒH÷ �Q�QŠQús   ÁCD,Ä,D=	rc   r   )r€   r�   r‚   rƒ   r+  rU  rF  rN  r[  r_  re  r¼  rq  rM   r,  r+  rv  r~  r�  r„  r‰  rˆ   r‰   rŠ   s   @r   r?  r?  ©  sÇ   ø‡ € àóó ðò5ò	ò(òTC,òJ5,òn=ð ñó ðð ×ÒÐ)Ð+?Ó@ñ(ó Að(ð. ñ%ó ð%ð ×ÒÐ)Ð+?Ó@ñ'ó Að'ð. ñ(ó ð(÷ð r   r?  c                   óH   a € ] tR tRt o ]R 4       tR tV 3R lR ltRtV t	R# )Ú
_TestEventiØ  c                óZ   € \         P                  ! \        4       VP                  4        R # r   )r”   r3  rˆ  r³   r[  s   &&r   Ú_test_eventÚ_TestEvent._test_eventÚ  s   € ä�
Š
”8ÔØ�	‰	Žr   c                ó~  € V P                  4       p\        VP                  4      pV P                  VP	                  4       R 4       V P                  V! R4      R 4       V P                  VP                  R4       V P                  V! \        4      R 4       V P                  VP                  \        4       VP                  4        V P                  VP	                  4       R4       V P                  V! 4       R4       V P                  VP                  R4       V P                  V! \        4      R4       V P                  VP                  R4       VP                  4        V P                  V P                  V3R7      pRVn        VP                  4        V P                  V! 4       R4       VP                  4        R# )Fr;   Trñ   N)r=  r�   r   ru   rã  r¥   r�   r‡  r³   rÜ  ræ   rŽ  rÖ   rç   rè   )rz   r\  r   rë   s   &   r   Ú
test_eventÚ_TestEvent.test_eventß  sF  € Ø—
‘
“ˆÜ˜UŸZ™ZÓ(ˆð 	×Ñ˜Ÿ™›¨Ô/ð 	×Ñ™˜c› EÔ*Ø×$Ñ$ T§\¡\°3Ô7Ø×Ñ™œh›¨Ô/Ø×$Ñ$ T§\¡\´8Ô<à�	‰	Œð 	×Ñ˜Ÿ™›¨Ô.Ø×Ñ™› Ô&Ø×$Ñ$ T§\¡\°3Ô7Ø×Ñ™œh›¨Ô.Ø×$Ñ$ T§\¡\°3Ô7ð 	�‰Œð �L‰L × 0Ñ 0¸°xˆLÓ@ˆØˆŒØ	�‰Œ	Ø×Ñ™› Ô&Ø	�‰Žr   c                ó   <€ V ^8„  d   QhRR/# )r±   ÚreturnNrc   )r´   r‹   s   "€r   rµ   Ú_TestEvent.__annotate__  s   ø€ ÷ Wñ W˜4ñ Wr   c                óà  € V P                  4       pV P                  R 8X  dt   V P                  \        V4      R4       VP	                  4        V P                  \        V4      R4       VP                  4        V P                  \        V4      R4       R# V P                  R8X  dI   V P                  \        V4      R4       VP	                  4        V P                  \        V4      R4       R# R# )r·   z<Event at .* unset>z<Event at .* set>r¸   z(<EventProxy object, typeid 'Event' at .*N)r=  rÏ   ÚassertRegexrì  r³   rÜ  )rz   r\  s   & r   Ú	test_reprÚ_TestEvent.test_repr  s®   € Ø—
‘
“ˆØ�9‰9˜Ô#Ø×ÑœT %›[Ð*@ÔAØ�I‰IŒKØ×ÑœT %›[Ð*>Ô?Ø�K‰KŒMØ×ÑœT %›[Ð*@ÖAØ�Y‰Y˜)Ô#Ø×ÑœT %›[Ð*UÔVØ�I‰IŒKØ×ÑœT %›[Ð*UÖVñ $r   rc   N)
r€   r�   r‚   rƒ   r+  rŽ  r‘  r˜  rˆ   r‰   rŠ   s   @r   rŒ  rŒ  Ø  s)   ø‡ € àñó ðò!÷FWö Wr   rŒ  c                   ó>   a € ] tR tRt o R tR tR tR tR tRt	V t
R# )	Ú
_DummyListi  c                óØ   € \         P                  P                  \        P                  ! R 4      4      p\         P
                  ! 4       pV P                  W34       ^ V P                  ^ &   R# ©rš  N)r!   ÚheapÚBufferWrapperÚstructÚcalcsizerû  Ú__setstate__Ú
_lengthbuf)rz   Úwrapperrí  s   &  r   r‘   Ú_DummyList.__init__  sM   € Ü!×&Ñ&×4Ñ4´V·_²_ÀSÓ5IÓJˆÜ×#Ò#Ó%ˆØ×Ñ˜7˜/Ô*Øˆ�‰˜Ór   c                ó€   € Vw  V n         V n        V P                   P                  4       P                  R 4      V n        R# r�  )Ú_wrapperÚ_lockÚcreate_memoryviewÚcastr£  )rz   rm  s   &&r   r¢  Ú_DummyList.__setstate__   s/   € Ø&+Ñ#ˆŒ˜œ
ØŸ-™-×9Ñ9Ó;×@Ñ@ÀÓEˆŽr   c                ó2   € V P                   V P                  3# r   )r§  r¨  rÁ   s   &r   Ú__getstate__Ú_DummyList.__getstate__$  s   € Ø—‘˜tŸz™zÐ*Ð*r   c                ó¦   € V P                   ;_uu_ 4        V P                  ^ ;;,          ^,          uu&   RRR4       R#   + '       g   i     R# ; ir)  ©r¨  r£  )rz   r•  s   &&r   rŸ  Ú_DummyList.append'  s+   € Ø�Z�Z‹ZØ�O‰O˜A× !Õ#Ó÷ �Z�ZŠZús	   • ?¿A	c                óŽ   € V P                   ;_uu_ 4        V P                  ^ ,          uuRRR4       #   + '       g   i     R# ; ir)  r°  rÁ   s   &r   Ú__len__Ú_DummyList.__len__+  s#   € Ø�Z�Z‹ZØ—?‘? 1Õ%÷ �Z�Z‹Zús	   •3³A	)r£  r¨  r§  N)r€   r�   r‚   rƒ   r‘   r¢  r­  rŸ  r³  rˆ   r‰   rŠ   s   @r   r›  r›    s$   ø‡ € òòFò+ò$÷&ð &r   r›  c                  ó2   € \         P                  ! R 4       R# )r½  NrV  rc   r   r   Ú_waitr¶  /  s   € ä‡J‚JˆtÖr   c                   óL   a € ] tR tRt o RtRR ltR tR tR tR t	R t
R	tV tR
# )ÚBunchi4  z
A bunch of threads.
c                óÚ  € W n         W0n        W@n        VP                  4       V n        VP                  4       V n        VP                  4       V n        V'       g   V P                  P                  4        . p\        V4       FG  pVP                  V P                  R7      pRVn        VP                  4        VP                  V4       KI  	  R p	\        P                   ! W	V4      V n        R# )z™
Construct a bunch of `n` threads running the same function `f`.
If `wait_before_exit` is True, the threads won't terminate until
do_finish() is called.
r  Tc                 ó8   € V  F  pVP                  4        K  	  R # r   )rè   )r¹   rë   s   & r   ÚfinalizeÚ Bunch.__init__.<locals>.finalizeN  s   € Û�Ø—‘–ó r   N)rU  rX   r  Ú	DummyListÚstartedÚfinishedr=  Ú	_can_exitr³   r—  ræ   ÚtaskrÖ   rç   rŸ  r²  r»  Ú
_finalizer)
rz   Ú	namespacerU  rX   r  Úwait_before_exitr¹   rš  rë   r»  s
   &&&&&&    r   r‘   ÚBunch.__init__8  sµ   € ð ŒØŒ	ØŒØ ×*Ñ*Ó,ˆŒØ!×+Ñ+Ó-ˆŒØ"Ÿ™Ó*ˆŒßØ�N‰N×ÑÔ àˆÜ�q–ˆAØ×!Ñ!¨¯©Ð!Ó3ˆAØˆAŒHØ�G‰GŒIØ�N‰N˜1Öñ	 ò	ô "×*Ò*¨4¸7ÓCˆŽr   c                ó  € \         P                  ! 4       pV P                  P                  V4        V P                  ! V P
                  !   V P                  P                  V4       V P                  P                  ^4       V P                  P                  4       '       g   Q hR#   T P                  P                  T4       T P                  P                  ^4       T P                  P                  4       '       g   Q hi ; i)é   N)
rI   rÛ   r¾  rŸ  rU  rX   r¿  rÀ  r   rã  ©rz   r  s   & r   rÁ  Ú
Bunch.taskT  s²   € Ü�iŠi‹kˆØ�‰×Ñ˜CÔ ð	+Ø�FŠF�D—I‘IÒà�M‰M× Ñ  Ô%Ø�N‰N×Ñ Ô#Ø—>‘>×(Ñ(×*Ò*Ð*Ò*øð �M‰M× Ñ  Ô%Ø�N‰N×Ñ Ô#Ø—>‘>×(Ñ(×*Ò*Ð*Ñ*ús   ²B& Â&AD c                óf   € \        V P                  4      V P                  8  d   \        4        K0  R # r   )rÙ   r¾  r  r¶  rÁ   s   &r   Úwait_for_startedÚBunch.wait_for_started^  s!   € Ü�$—,‘,Ó $§&¡&Ô(ÜŽGñ )r   c                óf   € \        V P                  4      V P                  8  d   \        4        K0  R # r   )rÙ   r¿  r  r¶  rÁ   s   &r   Úwait_for_finishedÚBunch.wait_for_finishedb  s!   € Ü�$—-‘-Ó  4§6¡6Ô)ÜŽGñ *r   c                ó:   € V P                   P                  4        R # r   )rÀ  r³   rÁ   s   &r   Ú	do_finishÚBunch.do_finishf  s   € Ø�‰×ÑÖr   c                ó&   € V P                  4        R # r   )rÂ  rÁ   s   &r   r$   ÚBunch.closei  s   € Ø�‰Ör   )rÀ  rÂ  rX   rU  r¿  r  r¾  Nri  )r€   r�   r‚   rƒ   r„   r‘   rÁ  rË  rÎ  rÑ  r$   rˆ   r‰   rŠ   s   @r   r¸  r¸  4  s.   ø‡ € ñôDò8+òòò÷ð r   r¸  c                   ó,   a € ] tR tRt o R tR tRtV tR# )Ú
AppendTrueim  c                ó   € Wn         R # r   ©r¦  )rz   r¦  s   &&r   r‘   ÚAppendTrue.__init__n  s   € ØŽr   c                ó<   € V P                   P                  R 4       R# rÖ  )r¦  rŸ  rÁ   s   &r   r˜   ÚAppendTrue.__call__p  s   € Ø�‰�‰˜Ör   rØ  Nrš   rŠ   s   @r   rÖ  rÖ  m  s   ø‡ € ò÷ð r   rÖ  c                   ó  a € ] tR tRt o Rt^tRtR tR tR t	R t
]R 4       tRR	 ltR
 t]R 4       tR t]R 4       tR t]R 4       tR t]R 4       tR t]R 4       tR t]R 4       tR t]R 4       tR tR t]R 4       tR tRt V t!R# )Ú_TestBarrierit  z
Tests for Barrier objects.
g      >@c                ó^   € V P                  V P                  V P                  R 7      V n        R# r*   )ÚBarrierrÁ  ÚdefaultTimeoutÚbarrierrÁ   s   &r   ÚsetUpÚ_TestBarrier.setUp{  s    € Ø—|‘| D§F¡F°D×4GÑ4G�|ÓHˆŽr   c                óH   € V P                   P                  4        R V n         R # r   )rá  ÚabortrÁ   s   &r   ÚtearDownÚ_TestBarrier.tearDown~  s   € Ø�‰×ÑÔØˆŽr   c                ó’   € V P                   R 8X  d   . # V P                   R8X  d   V P                  P                  4       # \        4       # )r¹   r¸   )rÏ   r¸   rô   r›  rÁ   s   &r   r½  Ú_TestBarrier.DummyList‚  s:   € Ø�9‰9˜	Ô!ØˆIØ�Y‰Y˜)Ô#Ø—<‘<×$Ñ$Ó&Ð&ä“<Ðr   c                ó¸   € \        WW P                  ^,
          4      p V! V!   VP                  4        VP                  4        R#   TP                  4        i ; irž   )r¸  rÁ  rÎ  r$   )rz   rU  rX   r¤   s   &&& r   Úrun_threadsÚ_TestBarrier.run_threadsŠ  sA   € Ü�$˜4§¡¨¥Ó*ˆð	ÙˆtŠHØ×ÑÔ!à�G‰GŽIøˆA�G‰G�Iús   ŸA ÁAc                ó  € VP                   pW@P                  8X  g   Q h\        V4       F™  pV^ ,          P                  R4       \	        V^,          4      WT,          8X  g   Q hVP                  4        V^,          P                  R4       \	        V^ ,          4      V^,           V,          8X  g   Q hVP                  4        K›  	   VP                  ^ 8X  g   Q h VP                  '       d   Q hR#   \         d     L#i ; i)r   TN)	ÚpartiesrÁ  r—  rŸ  rÙ   r   Ú	n_waitingr¨   Úbroken)r  rá  Úresultsr  Úmrš  s   &&&&  r   Ú	multipassÚ_TestBarrier.multipass’  sÓ   € à�O‰OˆØ—E‘EŒzÐˆzÜ�q–ˆAØ�A�J×Ñ˜dÔ#Ü�w˜q•z“? a¥eÔ+Ð+Ð+Ø�L‰LŒNØ�A�J×Ñ˜dÔ#Ü�w˜q•z“? q¨1¥u°¥kÔ1Ð1Ð1Ø�L‰LŽNñ ð	Ø×$Ñ$¨Ô)Ð)Ñ)ð —>—>�>Ð!Ð!‘>øô #ô 	Ùð	ús   ÃC2 Ã2D Ã?D c                ó–   € V P                  4       V P                  4       .pV P                  V P                  V P                  W!34       R# )z+
Test that a barrier is passed in lockstep
N)r½  rë  ró  rá  )rz   Úpassesrñ  s   && r   Útest_barrierÚ_TestBarrier.test_barrier£  s9   € ð —>‘>Ó# T§^¡^Ó%5Ð6ˆØ×Ñ˜Ÿ™¨$¯,©,¸Ð)HÖIr   c                ó$   € V P                  ^
4      # )z3
Test that a barrier works for 10 consecutive runs
)r÷  rÁ   s   &r   Útest_barrier_10Ú_TestBarrier.test_barrier_10ª  s   € ð × Ñ  Ó$Ð$r   c                óH   € VP                  4       pVP                  V4       R # r   )r   rÇ   )r  rá  r'   rª   s   &&& r   Ú_test_wait_return_fÚ _TestBarrier._test_wait_return_f°  s   € à�l‰l‹nˆØ�	‰	�#Žr   c                ó:  € V P                  4       pV P                  V P                  V P                  V34       \	        V P
                  4       Uu. uF  q!P                  4       NK  	  ppV P                  VP                  ^ 4      ^4       \        V4       R# u upi )z)
test the return value from barrier.wait
N)
r#   rë  rý  rá  r—  rÁ  rú   ru   Úcountr(   )rz   r'   rš  rñ  s   &   r   Útest_wait_returnÚ_TestBarrier.test_wait_returnµ  st   € ð —
‘
“ˆØ×Ñ˜×1Ñ1°D·L±LÀ%Ð3HÔIÜ(-¨d¯f©f¬Ó6© 1—9‘9–;©ˆÐ6Ø×Ñ˜Ÿ™ qÓ)¨1Ô-Ü�EÖùò 7s   ÁBc                óR   € VP                  4        \        V4      ^8w  d   \        hR# rž   )r   rÙ   rn  )r  rá  rñ  s   &&&r   Ú_test_action_fÚ_TestBarrier._test_action_f¿  s"   € à�‰ŒÜˆw‹<˜1ÔÜÐñ r   c                óâ   € V P                  4       pV P                  V P                  \        V4      R7      pV P	                  V P
                  W!34       V P                  \        V4      ^4       R# )z
Test the 'action' callback
)rï  N)r½  rß  rÁ  rÖ  rë  r  ru   rÙ   )rz   rñ  rá  s   &  r   Útest_actionÚ_TestBarrier.test_actionÅ  sX   € ð —.‘.Ó"ˆØ—,‘,˜tŸv™v¬j¸Ó.A�,ÓBˆØ×Ñ˜×,Ñ,¨wÐ.@ÔAØ×Ñœ˜W› qÖ)r   c                ó8  €  VP                  4       pW@P                  ^,          8X  d   \        hVP                  4        VP                  R4       R#   \        P
                   d    TP                  R4        R# \         d    TP                  4         R# i ; i©r±   TN)r   rÁ  rn  rŸ  rG  ÚBrokenBarrierErrorrå  )r  rá  Úresults1Úresults2rš  s   &&&& r   Ú_test_abort_fÚ_TestBarrier._test_abort_fÎ  sl   € ð		Ø—‘“ˆAØ—E‘E˜1•HŒ}Ü"Ð"Ø�L‰LŒNØ�O‰O˜DÖ!øÜ×+Ñ+ô 	"Ø�O‰O˜D×!Üô 	Ø�M‰M�Oð	ús   ‚AA Á&BÁ;BÂBÂBc                ón  € V P                  4       pV P                  4       pV P                  V P                  V P                  W34       V P	                  \        V4      ^ 4       V P	                  \        V4      V P                  ^,
          4       V P                  V P                  P                  4       R# )z;
Test that an abort will put the barrier in a broken state
N)	r½  rë  r  rá  ru   rÙ   rÁ  rÓ   rð  )rz   r  r  s   &  r   Ú
test_abortÚ_TestBarrier.test_abortÛ  s„   € ð —>‘>Ó#ˆØ—>‘>Ó#ˆØ×Ñ˜×+Ñ+ØŸ,™,¨Ð;ô	=à×Ñœ˜X›¨Ô*Ø×Ñœ˜X›¨¯©¨q­Ô1Ø�‰˜Ÿ™×+Ñ+Ö,r   c                óÈ  € VP                  4       pWPP                  ^,          8X  dL   VP                  V P                  ^,
          8  d   \        P                  ! R4       K:  VP                  4        M" VP                  4        VP                  R4       VP                  4        VP                  R4       R#   \        P                   d    TP                  R4        LKi ; i)r±   r»  TN)	r   rÁ  rï  r”   r3  ÚresetrŸ  rG  r  )r  rá  r  r  Úresults3rš  s   &&&&& r   Ú_test_reset_fÚ_TestBarrier._test_reset_fç  s™   € à�L‰L‹NˆØ—‘�q•Œ=à×#Ñ# c§e¡e¨A¥gÔ-Ü—
’
˜5Ö!Ø�M‰M�Oð&Ø—‘”Ø—‘ Ô%ð 	�‰ŒØ�‰˜Öøô	 ×/Ñ/ô &Ø—‘ Ö%ð&ús   Á4!B8 Â8&C!Ã C!c                ó�  € V P                  4       pV P                  4       pV P                  4       pV P                  V P                  V P                  WV34       V P	                  \        V4      ^ 4       V P	                  \        V4      V P                  ^,
          4       V P	                  \        V4      V P                  4       R# )z<
Test that a 'reset' on a barrier frees the waiting threads
N)r½  rë  r  rá  ru   rÙ   rÁ  )rz   r  r  r  s   &   r   Ú
test_resetÚ_TestBarrier.test_resetù  s•   € ð —>‘>Ó#ˆØ—>‘>Ó#ˆØ—>‘>Ó#ˆØ×Ñ˜×+Ñ+ØŸ,™,¨¸HÐEô	Gà×Ñœ˜X›¨Ô*Ø×Ñœ˜X›¨¯©¨q­Ô1Ø×Ñœ˜X›¨¯©Ö/r   c                ó  €  VP                  4       pW`P                  ^,          8X  d   \        hVP                  4        VP                  R4       VP                  4       V P                  ^,          8X  d   VP                  4        VP                  4        VP                  4        VP                  R4       R#   \        P
                   d    TP                  R4        L‘\         d    TP                  4         L­i ; ir
  )r   rÁ  rn  rŸ  rG  r  rå  r  )r  rá  Úbarrier2r  r  r  rš  s   &&&&&& r   Ú_test_abort_and_reset_fÚ$_TestBarrier._test_abort_and_reset_f	  s­   € ð		Ø—‘“ˆAØ—E‘E˜1•HŒ}Ü"Ð"Ø�L‰LŒNØ�O‰O˜DÔ!ð �=‰=‹?˜cŸe™e Q�hÔ&Ø�M‰MŒOØ�‰ŒØ�‰ŒØ�‰˜Öøô ×+Ñ+ô 	"Ø�O‰O˜DÖ!Üô 	Ø�M‰MŽOð	ús   ‚AB9 Â9&C>Ã!C>Ã*C>Ã=C>c                óÆ  € V P                  4       pV P                  4       pV P                  4       pV P                  V P                  4      pV P                  V P                  V P
                  WAW#34       V P                  \        V4      ^ 4       V P                  \        V4      V P                  ^,
          4       V P                  \        V4      V P                  4       R# )z6
Test that a barrier can be reset after being broken.
N)r½  rß  rÁ  rë  r  rá  ru   rÙ   )rz   r  r  r  r  s   &    r   Útest_abort_and_resetÚ!_TestBarrier.test_abort_and_reset	  s§   € ð —>‘>Ó#ˆØ—>‘>Ó#ˆØ—>‘>Ó#ˆØ—<‘< §¡Ó'ˆà×Ñ˜×5Ñ5ØŸ,™,¨¸HÐOô	Qà×Ñœ˜X›¨Ô*Ø×Ñœ˜X›¨¯©¨q­Ô1Ø×Ñœ˜X›¨¯©Ö/r   c                óþ   € VP                  4       pW0P                  ^,          8X  d   \        P                  ! R4        VP                  R4       R#   \        P
                   d    TP                  R4        R# i ; i)r±   rò  rÕ  TN)r   rÁ  r”   r3  rG  r  rŸ  ©r  rá  rñ  rš  s   &&& r   Ú_test_timeout_fÚ_TestBarrier._test_timeout_f+	  sW   € à�L‰L‹NˆØ—‘�q•Œ=ä�JŠJ�sŒOð	!Ø�L‰L˜ÖøÜ×+Ñ+ô 	!Ø�N‰N˜4× ð	!ús   ¿A Á&A<Á;A<c                óÔ   € V P                  4       pV P                  V P                  V P                  V34       V P	                  \        V4      V P                  P                  4       R# )z
Test wait(timeout)
N)r½  rë  r$  rá  ru   rÙ   rî  )rz   rñ  s   & r   r¼  Ú_TestBarrier.test_timeout6	  sM   € ð —.‘.Ó"ˆØ×Ñ˜×-Ñ-°·±¸gÐ/FÔGØ×Ñœ˜W› t§|¡|×';Ñ';Ö<r   c                ó  € VP                  V P                  4      pW0P                  ^,          8X  d   \        P                  ! R4        VP                  4        R#   \
        P                   d    TP                  R4        R# i ; i)r±   rò  TN)r   rà  rÁ  r”   r3  rG  r  rŸ  r#  s   &&& r   Ú_test_default_timeout_fÚ$_TestBarrier._test_default_timeout_f>	  s]   € à�L‰L˜×+Ñ+Ó,ˆØ—‘�q•Œ=ä�JŠJ�sŒOð	!Ø�L‰LŽNøÜ×+Ñ+ô 	!Ø�N‰N˜4× ð	!ús   Á
A Á&BÂBc                óä   € V P                  V P                  RR7      pV P                  4       pV P                  V P                  W34       V P                  \        V4      VP                  4       R# )z$
Test the barrier's default timeout
rÕ  r+   N)rß  rÁ  r½  rë  r)  ru   rÙ   rî  )rz   rá  rñ  s   &  r   Útest_default_timeoutÚ!_TestBarrier.test_default_timeoutI	  sW   € ð —,‘,˜tŸv™v¨s�,Ó3ˆØ—.‘.Ó"ˆØ×Ñ˜×5Ñ5¸Ð7IÔJØ×Ñœ˜W› w§¡Ö7r   c                óh   € V P                  ^4      pVP                  4        VP                  4        R# rž   )rß  r   )rz   r¤   s   & r   Útest_single_threadÚ_TestBarrier.test_single_threadR	  s!   € Ø�L‰L˜‹OˆØ	�‰ŒØ	�‰Žr   c                óº   € \        V4       F7  pVP                  4        V;_uu_ 4        VP                  V4       R R R 4       K9  	  R #   + '       g   i     KN  ; ir   )r—  r   r#  )r  rá  rö  Úconnrí  rš  s   &&&&& r   Ú_test_thousand_fÚ_TestBarrier._test_thousand_fW	  s8   € ä�v–ˆAØ�L‰LŒNß’Ø—	‘	˜!”÷ ‘ó ç—�ús   ©A	Á	Ac                óD  € V P                   R 8X  d+   V P                  RP                  V P                   4      4       RpV P                  4       pV P	                  R4      w  r4\        V P                  4       FX  pV P                  V P                  V P                  WV3R7      pVP                  4        V P                  VP                  4       KZ  	  \        V4       F?  p\        V P                  4       F#  pV P                  VP                  4       V4       K%  	  KA  	  R# )r¸   rÎ   éè  Frñ   N)rÏ   rÐ   r´   rû  r  r—  rÁ  ræ   r3  rá  rç   r©  rè   ru   r  )rz   rö  rí  r2  r2  Újrë   rš  s   &       r   Útest_thousandÚ_TestBarrier.test_thousand^	  sØ   € Ø�9‰9˜	Ô!Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJØˆØ�y‰y‹{ˆØŸ9™9 UÓ+ÑˆÜ�t—v‘v–ˆAØ—‘ D×$9Ñ$9Ø!%§¡¨vÀ4Ð Hð ó JˆAà�G‰GŒIØ�O‰O˜AŸF™FÖ#ñ	 ô �v–ˆAÜ˜4Ÿ6™6–]�Ø× Ñ  §¡£¨aÖ0ó #ó r   )rá  Nró   )"r€   r�   r‚   rƒ   r„   rÁ  rà  râ  ræ  r½  rë  r+  ró  r÷  rú  rý  r  r  r  r  r  r  r  r  r   r$  r¼  r)  r,  r/  r3  r8  rˆ   r‰   rŠ   s   @r   rÝ  rÝ  t  s  ø‡ € ñð 	
€AØ€NòIòò òð ñ"ó ð"ô Jò%ð ñó ðòð ñó ðò
*ð ñ
ó ð
ò
-ð ñó ðò"0ð ñó ðò*0ð ñ!ó ð!ò=ð ñ!ó ð!ò8òð
 ñó ð÷1ð 1r   rÝ  c            	       ó|   a € ] tR tRt o RtRRRRR]! R4      ]! R4      3.tR t]R 4       t	RR lt
R tR	 tR
tV tR# )Ú
_TestValueir	  rÉ   ÚxÚyc                óD   € \         '       g   V P                  R 4       R# R# ©z"requires multiprocess.sharedctypesN©r+  rÐ   rÁ   s   &r   râ  Ú_TestValue.setUp~	  ó   € ßÓØ�M‰MÐ>Ö?ñ  r   c                ó^   € \        WP                  4       F  w  r#V^,          Vn        K  	  R# r4  )ÚzipÚcodes_valuesr©   )r  ÚvaluesÚsvÚcvs   &&  r   r	  Ú_TestValue._test‚	  s$   € ä˜&×"2Ñ"2Ö3‰FˆBØ˜!•uˆBŽHó 4r   c           	     ó†  € V'       d3   V P                    UUUu. uF  w  r#pV P                  W#4      NK  	  ppppM1V P                    UUUu. uF  w  r#pV P                  W#4      NK  	  pppp\        WPP                   4       F(  w  rgV P	                  VP
                  V^,          4       K*  	  V P                  V P                  V3R7      pRVn        VP                  4        VP                  4        \        WPP                   4       F(  w  rgV P	                  VP
                  V^,          4       K*  	  R# u upppi u upppi )rŸ   rñ   TN)rE  ÚRawValuer   rD  ru   r©   ræ   r	  rÖ   rç   rè   )	rz   ÚrawÚcoder©   r•  rF  rG  rH  rä  s	   &&       r   Ú
test_valueÚ_TestValue.test_valueˆ	  s  € ßà,0×,=Ò,=õ?Ù,=™.˜$ qð —m‘m DÖ0Ù,=ð ò ?ˆFð -1×,=Ò,=õ?Ù,=™.˜$ qð —j‘j Ö-Ù,=ð ò ?ô ˜&×"3Ñ"3Ö4‰FˆBØ×Ñ˜RŸX™X r¨!¥uÖ-ñ 5ð �|‰| 4§:¡:°V°Iˆ|Ó>ˆØˆŒØ�
‰
ŒØ�	‰	Œä˜&×"3Ñ"3Ö4‰FˆBØ×Ñ˜RŸX™X r¨!¥uÖ-ó 5ùô?ùô?s   ™D5ÁD<c                ó*   € V P                  R R7       R# ©T)rL  N)rN  rÁ   s   &r   Útest_rawvalueÚ_TestValue.test_rawvalue›	  s   € Ø�‰˜DˆÖ!r   c                ó   € V P                  R ^4      pVP                  4       pVP                  4       pV P                  R ^RR7      pVP                  4       pVP                  4       pV P                  4       pV P                  R ^VR7      pVP                  4       p	VP                  4       p
V P	                  Wy4       V P                  R ^RR7      pV P                  VR4       V P                  VR4       V P                  \        V P                   R ^RR7       V P                  R ^4      pV P                  VR4       V P                  VR4       R# )rš  N©rí  FÚget_lockÚget_objÚnavalue)	r   rV  rW  rû  ru   ÚassertNotHasAttrrv   rK   rK  )rz   Úval1Úlock1Úobj1Úval2Úlock2Úobj2rí  Úval3Úlock3Úobj3Úarr4Úarr5s   &            r   Útest_getobj_getlockÚ_TestValue.test_getobj_getlockž	  s  € Ø�z‰z˜#˜qÓ!ˆØ—‘“ˆØ�|‰|‹~ˆà�z‰z˜#˜q tˆzÓ,ˆØ—‘“ˆØ�|‰|‹~ˆà�y‰y‹{ˆØ�z‰z˜#˜q tˆzÓ,ˆØ—‘“ˆØ�|‰|‹~ˆØ×Ñ˜Ô%à�z‰z˜#˜q uˆzÓ-ˆØ×Ñ˜d JÔ/Ø×Ñ˜d IÔ.à×Ñœ.¨$¯*©*°c¸1À9ÐÔMà�}‰}˜S !Ó$ˆØ×Ñ˜d JÔ/Ø×Ñ˜d IÖ.r   rc   Nrp  )rš  i÷  iª^  )Údg      @g      À)Úhiÿÿÿéê   )rÈ   ì        ì        ri  )r€   r�   r‚   rƒ   rº   r   rE  râ  r+  r	  rN  rR  re  rˆ   r‰   rŠ   s   @r   r;  r;  r	  s_   ø‡ € à"€Mð 	ØØØØ	‰e�C‹j™% ›*Ð%ð
€Lò@ð ñó ðô
.ò&"÷/ð /r   r;  c                   ó  a € ] tR tRt o R
t]R 4       t]P                  ! ]	RJ R4      RR l4       t
]P                  ! ]	RJ R4      R 4       t]P                  ! ]	RJ R4      R 4       t]P                  ! ]	RJ R4      R 4       tR	tV tR# )Ú
_TestArrayi¸	  c                ó€   € \        ^\        V4      4       F$  pW;;,          W^,
          ,          ,          uu&   K&  	  R# rž   )r—  rÙ   )r  Úseqrš  s   && r   rU  Ú_TestArray.f¼	  s)   € ä�qœ#˜c›(Ö#ˆAØ�F�c˜A�#•hÕ�Fó $r   Nzrequires _ctypesc                óÊ  € . ROpV'       d   V P                  RV4      pMV P                  RV4      pV P                  \        V4      \        V4      4       V P                  V^,          V^,          4       V P                  \	        VR,          4      \	        VR,          4      4       \
        P
                  ! R. R	O4      ;VR&   VR&   V P                  \	        VR,          4      V4       V P                  V4       V P                  V P                  V3R7      pRVn        VP                  4        VP                  4        V P                  \	        VR,          4      V4       R# )
é¨  rš  :r±   é   N:rj   rj  NºNNNrñ   TN)
rr  ir  i¦  i5  é–   éé   i$  iÖ  iÊ  i?  )rŸ   r±   rg  rj   )ÚRawArrayÚArrayru   rÙ   rô   ÚarrayrU  ræ   rÖ   rç   rè   )rz   rL  ro  Úarrrë   s   &&   r   Ú
test_arrayÚ_TestArray.test_arrayÁ	  s  € â@ˆßØ—-‘-  SÓ)‰Cà—*‘*˜S #Ó&ˆCà×Ñœ˜S›¤3 s£8Ô,Ø×Ñ˜˜Q�  Q¥Ô(Ø×Ñœ˜c #�h›¬¨c°#­h«Ô8ä#Ÿkšk¨#ª|Ó<Ð<ˆˆC‰�3�s‘8à×Ñœ˜c !�f› sÔ+à�‰ˆsŒà�L‰L §¡¨c¨VˆLÓ4ˆØˆŒØ	�‰Œ	Ø	�‰Œà×Ñœ˜c !�f› sÖ+r   c           	     óF  € ^
p\        ^4       F�  pV P                  RV4      pV P                  \        V4      V4       V P                  \	        V4      ^ .V,          4       \        ^
4      VR&   V P                  \	        V4      \	        \        ^
4      4      4       ?K‘  	  R# )rš  rš  rt  N)r—  rx  ru   rÙ   rô   )rz   Úsizer•  rz  s   &   r   Útest_array_from_sizeÚ_TestArray.test_array_from_sizeÚ	  s�   € àˆô
 �q–ˆAØ—*‘*˜S $Ó'ˆCØ×ÑœS ›X tÔ,Ø×ÑœT #›Y¨¨¨d­
Ô3Ü˜2“YˆC�‰FØ×ÑœT #›Y¬¬U°2«Y«Ô8Úó r   c                ó*   € V P                  R R7       R# rQ  )r{  rÁ   s   &r   Útest_rawarrayÚ_TestArray.test_rawarrayé	  s   € à�‰˜DˆÖ!r   c                óB  € V P                  R \        \        ^
4      4      4      pVP                  4       pVP	                  4       pV P                  R \        \        ^
4      4      RR7      pVP                  4       pVP	                  4       pV P                  4       pV P                  R \        \        ^
4      4      VR7      pVP                  4       p	VP	                  4       p
V P                  Wy4       V P                  R \        ^
4      RR7      pV P                  VR4       V P                  VR4       V P                  \        V P                   R \        ^
4      RR7       V P                  R \        ^
4      4      pV P                  VR4       V P                  VR4       R# )rš  NrU  FrV  rW  Únotalock)rx  rô   r—  rV  rW  rû  ru   rY  rv   rK   rw  )rz   Úarr1r[  r\  Úarr2r^  r_  rí  Úarr3ra  rb  rc  rd  s   &            r   Útest_getobj_getlock_objÚ"_TestArray.test_getobj_getlock_objí	  sB  € à�z‰z˜#œt¤E¨"£I›Ó/ˆØ—‘“ˆØ�|‰|‹~ˆà�z‰z˜#œt¤E¨"£I›°TˆzÓ:ˆØ—‘“ˆØ�|‰|‹~ˆà�y‰y‹{ˆØ�z‰z˜#œt¤E¨"£I›°TˆzÓ:ˆØ—‘“ˆØ�|‰|‹~ˆØ×Ñ˜Ô%à�z‰z˜#œu R›y¨uˆzÓ5ˆØ×Ñ˜d JÔ/Ø×Ñ˜d IÔ.Ø×Ñœ.ØŸ*™* c¬5°«9¸:ð 	ô 	Gð �}‰}˜S¤%¨£)Ó,ˆØ×Ñ˜d JÔ/Ø×Ñ˜d IÖ.r   rc   rp  ri  )r€   r�   r‚   rƒ   rº   r+  rU  rM   r…   rC   r{  r  r‚  r‰  rˆ   r‰   rŠ   s   @r   rm  rm  ¸	  s¬   ø‡ € à"€Màñó ðð ‡_‚_�U˜d�]Ð$6Ó7ó,ó 8ð,ð0 ‡_‚_�U˜d�]Ð$6Ó7ñó 8ðð ‡_‚_�U˜d�]Ð$6Ó7ñ"ó 8ð"ð ‡_‚_�U˜d�]Ð$6Ó7ñ/ó 8ö/r   rm  c                   ó`   a € ] tR tRt o RtR tR tR tR tR t	R t
R tR	 tR
 tR tRtV tR# )Ú_TestContainersi
  c                óè  € V P                  \        \        ^
4      4      4      pV P                  VR,          \        \        ^
4      4      4       V P                  4       pV P                  VR,          . 4       VP                  \        \        ^4      4      4       V P                  VR,          \        \        ^4      4      4       V P                  V^,          ^4       V P                  VR,          . RO4       V^,          pV P                  VR,          . RO4       V P                  V^^.,           . RO4       V P                  VR,          \        \        ^
4      4      4       W.pV P                  V4      pT P                  V Uu. uF  qUR,          NK  	  up. RO. RO.4       V P                  V.4      pVP	                  R4       V P                  V^ ,          R,          . R	O4       R# u upi )
rš  rt  :r±   rš  Nr9  N)r±   rg  rj   )
r   rŸ   r±   rg  rj   r   rŸ   r±   rg  rj   )r   rŸ   r±   rg  rj   r   rŸ   r±   rg  rj   rÆ   r}  )
r   rŸ   r±   rg  rj   rÆ   r}  rs  rj  é	   )r   rŸ   r±   rg  rj   rÆ   r}  rs  rj  rŽ  r9  )rô   r—  ru   ÚextendrŸ  )rz   r£   r¤   rg  rB  ÚelementrU  s   &      r   Ú	test_listÚ_TestContainers.test_list
  sz  € Ø�I‰I”dœ5 ›9“oÓ&ˆØ×Ñ˜˜1�œt¤E¨"£I›Ô/à�I‰I‹KˆØ×Ñ˜˜1�˜rÔ"à	�‰””e˜A“h“Ô Ø×Ñ˜˜1�œt¤E¨!£H›~Ô.à×Ñ˜˜1�˜qÔ!Ø×Ñ˜˜4�¢'Ô*à	ˆQ�ˆØ×Ñ˜˜1�Ò=Ô>à×Ñ˜˜a ˜V�Ò%IÔJà×Ñ˜˜1�œt¤E¨"£I›Ô/àˆFˆØ�I‰I�a‹LˆØ×ÑÙ'(Ó)¡q˜G�Q�ZˆZ¡qÑ)Ú+Ò-KÐLô	ð
 �I‰I�q�c‹NˆØ	�‰�ÔØ×Ñ˜˜1�˜a�Ò"IÖJùò *s   Æ	G/c                óD  € V P                  4       pV P                  V\        P                  P                  4       RpV FI  pV P                  VR7      ;_uu_ 4        V P                  \        \        W4      4      4       RRR4       KK  	  R#   + '       g   i     K`  ; i)Ú__contains__©r4   N)r”  Ú__delitem__Ú__getitem__Ú__iadd__r³  Ú__reversed__Ú__setitem__rŸ  rÜ  r   r�  ÚindexÚinsertÚpoprè  Úreverse)	rô   r×   ÚcollectionsÚabcÚMutableSequencerø   rÓ   Úcallabler÷  )rz   r£   Úmutable_sequence_methodsr4   s   &   r   Útest_list_isinstanceÚ$_TestContainers.test_list_isinstance.
  st   € Ø�I‰I‹KˆØ×Ñ˜a¤§¡×!@Ñ!@ÔAð
$
Ð ó -ˆDØ—‘ 4�×(Õ(Ø—‘¤¬°Ó)9Ó :Ô;÷ )Ñ(ó -ß(×(Ð(úó   Á$BÂBc                óH  € V P                  \        \        ^
4      4      4      p\        V4      pV P                  \        V4      \        \        ^
4      4      4       V P                  \        V4      . 4       \        V4      p^dV^ &   V P                  \	        V4      ^d4       R# r™  )rô   r—  r6  ru   Únext)rz   r£   Úits   &  r   Útest_list_iterÚ_TestContainers.test_list_iter?
  sw   € Ø�I‰I”dœ5 ›9“oÓ&ˆÜ�!‹WˆØ×Ñœ˜b›¤4¬¨b«	£?Ô3Ø×Ñœ˜b› 2Ô&ä�!‹WˆØˆˆ!‰Ø×Ñœ˜b› 3Ö'r   c           
     ó  € T P                  \        ^4       Uu. uF  qP                  \        ^4      4      NK  	  up4      pT P                  V Uu. uF  q3R,          NK  	  up. RO.^,          4       ^7V^ ,          R&   V P                  V^ ,          R,          . RO4       \        ^^4       F$  pV P                  W$,          R,          . RO4       K&  	  V P                  V^,          P                  4       ^4       V P                  \	        V^,          4      ^4       \        ^ ^^4       F$  pV P                  \	        W$,          4      ^4       K&  	  ?V P                  4       pVP                  V4       ?R# u upi u upi )rg  rt  N)r   rŸ   r±   rH   )r   rŸ   é7   )rô   r—  ru   r�  rÙ   rŸ  )rz   Ú_ir£   Úinnerrš  r¤   s   &     r   Útest_list_proxy_in_listÚ'_TestContainers.test_list_proxy_in_listI
  s$  € Ø�I‰I´U¸1´XÓ>±X¨r—y‘y¤ q£Ö*±XÑ>Ó?ˆØ×Ñ±Ó2± u Ÿ(˜(±Ñ2²Y°KÀ!µOÔDàˆˆ!�ˆR‰Ø×Ñ˜˜1�˜a�¢*Ô-Ü�q˜!–ˆAØ×Ñ˜Q�T !�W¢iÖ0ñ ð 	×Ñ˜˜1�Ÿ™› QÔ'Ø×Ñœ˜Q˜q�T› AÔ&Ü�q˜!˜Q–ˆAØ×ÑœS ¥›Y¨Ö*ñ  ð à�I‰I‹KˆØ	�‰�ŒÚùò# ?ùÚ2s   ™"E9ÁE>c           
     óL  € V P                  4       p\        \        ^A^F4      4      pV F  p\        V4      W&   K  	  V P	                  VP                  4       \        R V 4       4      4       V P	                  \        VP                  4       4      V4       T P	                  \        VP                  4       4      V Uu. uF  p\        V4      NK  	  up4       T P	                  \        VP                  4       4      V Uu. uF  q3\        V4      3NK  	  up4       R# u upi u upi )éA   c              3   ó:   "  € T F  q\        V4      3x € K  	  R # 5ir   )Úchr©Ú.0rš  s   & r   Ú	<genexpr>Ú,_TestContainers.test_dict.<locals>.<genexpr>b
  s   é € Ð'E¹W¸¬C°«F­»Wùs   ‚N)
Údictrô   r—  rµ  ru   r   ÚsortedÚkeysrF  ré  )rz   rg  Úindicesrš  s   &   r   Ú	test_dictÚ_TestContainers.test_dict]
  sÕ   € Ø�I‰I‹KˆÜ”u˜R “}Ó%ˆÛˆAÜ�q“6ˆA‹Dñ à×Ñ˜Ÿ™›¤4Ñ'E¹WÓ'EÓ#EÔFØ×Ñœ §¡£Ó)¨7Ô3Ø×Ñœ §¡£
Ó+¹gÓ-F¹g¸¬c°!®f¹gÑ-FÔGØ×Ñœ §¡£	Ó*Á'Ó,JÁ'¸Q´°Q³«[Á'Ñ,JÖKùò .GùÚ,Js   Â<D
Ã>D!
c                óD  € V P                  4       pV P                  V\        P                  P                  4       RpV FI  pV P                  VR7      ;_uu_ 4        V P                  \        \        W4      4      4       RRR4       KK  	  R#   + '       g   i     K`  ; i)r”  r•  N)r”  r–  Ú__eq__r—  Ú__iter__r³  Ú__ne__rš  rÜ  rú   ré  r¼  r�  ÚpopitemÚ
setdefaultÚupdaterF  )	rº  r×   rŸ  r   ÚMutableMappingrø   rÓ   r¢  r÷  )rz   r£   Úmutable_mapping_methodsr4   s   &   r   Útest_dict_isinstanceÚ$_TestContainers.test_dict_isinstanceg
  st   € Ø�I‰I‹KˆØ×Ñ˜a¤§¡×!?Ñ!?Ô@ð#
Ðó
 ,ˆDØ—‘ 4�×(Õ(Ø—‘¤¬°Ó)9Ó :Ô;÷ )Ñ(ó ,ß(×(Ð(úr¦  c                ój  € V P                  4       p\        \        ^A^F4      4      pV F  p\        V4      W&   K  	  \	        V4      pV P                  \        V4      V4       V P                  \        V4      . 4       \	        V4      pVP                  4        V P                  \        \        V4       R# )r³  N)
rº  rô   r—  rµ  r6  ru   rÜ  rv   rn  r¨  )rz   rg  r½  rš  r©  s   &    r   Útest_dict_iterÚ_TestContainers.test_dict_itert
  s‡   € Ø�I‰I‹KˆÜ”u˜R “}Ó%ˆÛˆAÜ�q“6ˆA‹Dñ ä�!‹WˆØ×Ñœ˜b› 7Ô+Ø×Ñœ˜b› 2Ô&ä�!‹WˆØ	�‰Œ	Ø×Ñœ,¬¨bÖ1r   c                ó–  € V P                  ^^R7      pV P                  ^
^R7      pV P                  WR7      pV P                  VR,          ^
4       V P                  VR,          R,          ^
4       ^VR,          R&   V P                  VR,          ^4       V P                  VR,          R,          ^4       ^VR,          R&   V P                  VR,          ^4       V P                  VR,          R,          ^4       ??V P                  VR,          R,          ^4       ^VR,          R&   V P                  VR,          R,          ^4       VR,          pVR,          p^VR&   V P                  VR,          ^4       V P                  VR,          R,          ^4       VP                  4        V P                  \        V4      ^ 4       V P                  VR,          ^4       V P                  VR	,          ^4       V P	                  W.4      p^V^ ,          R
&   V P                  VR
,          ^4       V P                  V^ ,          R
,          ^4       ??V P                  V^ ,          R
,          ^4       V P	                  ^X^c.V.4      pV P                  V^ ,          \        4       V P                  VR,          R,          R,          ^4       R# )r±   )ÚferretsÚhamsters)ÚwaterÚfeed)ÚpetsÚsuppliesrÑ  rÔ  ÚblanketsrÓ  rÏ  rÐ  ÚmarmotsrÒ  NrH   )rº  ru   rÜ  rÙ   rô   r×   )rz   rÓ  rÔ  rg  rî  Úouters   &     r   Útest_dict_proxy_nestedÚ&_TestContainers.test_dict_proxy_nested�
  sb  € Ø�y‰y ¨QˆyÓ/ˆØ—9‘9 2¨A�9Ó.ˆØ�I‰I˜4ˆIÓ3ˆà×Ñ˜ 'Õ*¨BÔ/Ø×Ñ˜˜:� wÕ/°Ô4à$%ˆˆ*��jÑ!Ø×Ñ˜ *Õ-¨qÔ1Ø×Ñ˜˜:� zÕ2°AÔ6à!"ˆˆ*��gÑØ×Ñ˜ 'Õ*¨AÔ.Ø×Ñ˜˜:� wÕ/°Ô3àØØ×Ñ˜˜6� 9Õ-¨qÔ1Ø$&ˆˆ*��jÑ!Ø×Ñ˜˜:� zÕ2°BÔ7à��yˆØ�Z•=ˆØˆ�ÑØ×Ñ˜ 'Õ*¨AÔ.Ø×Ñ˜˜:� wÕ/°Ô3à	�‰Œ	Ø×Ñœ˜Q› Ô#Ø×Ñ˜ 'Õ*¨AÔ.Ø×Ñ˜˜jÕ)¨1Ô-à�I‰I�tÐ&Ó'ˆØˆˆ!�ˆY‰Ø×Ñ˜˜i�¨!Ô,Ø×Ñ˜˜1�˜i�¨!Ô,àØØ×Ñ˜˜1�˜i�¨!Ô,à—	‘	˜B ˜8 Q˜-Ó(ˆØ×Ñ˜e A�h¬Ô-Ø×Ñ˜˜r� 2� vÕ.°Ö2r   c                ó¦  € V P                  4       pVP                  V P                  4       4       V^ ,          P                  ^{4       V P	                  V^ ,          P                  4       ^{4       V P                  4       pV P                  4       V^ &   V^ ,          P                  R4       V P	                  V^ ,          P                  4       R4       R# )r   éÈ  N)rô   rŸ  r#   rÇ   ru   rú   rº  r¢   s   &  r   Útest_nested_queueÚ!_TestContainers.test_nested_queue¯
  s‹   € Ø�I‰I‹KˆØ	�‰�—‘“ÔØ	ˆ!��‰�ŒØ×Ñ˜˜1�Ÿ™› SÔ)Ø�I‰I‹KˆØ�z‰z‹|ˆˆ!‰Ø	ˆ!��‰�ŒØ×Ñ˜˜1�Ÿ™› SÖ)r   c                ó"  € V P                  4       pR Vn        RVn        RVn        V P	                  VP                  VP                  3R4       V=V P	                  \        V4      R4       V P                  VR4       V P                  VR4       R# )ÚBobÚBuilderÚhiddenzNamespace(name='Bob')r4   ÚjobN)rß  rà  )Ú	Namespacer4   râ  Ú_hiddenru   rx   ÚassertHasAttrrY  )rz   r  s   & r   Útest_namespaceÚ_TestContainers.test_namespace¹
  sz   € Ø�N‰NÓˆØˆŒØˆŒØˆŒ	Ø×Ñ˜!Ÿ&™& !§%¡%˜Ð*<Ô=ØˆEØ×Ñœ˜Q›Ð!8Ô9Ø×Ñ˜1˜fÔ%Ø×Ñ˜a Ö'r   rc   N©r¸   )r€   r�   r‚   rƒ   rº   r‘  r¤  rª  r°  r¾  rÉ  rÌ  rØ  rÜ  ræ  rˆ   r‰   rŠ   s   @r   rŒ  rŒ  
  sD   ø‡ € à €MòKò><ò"(òò(Lò<ò2ò,3ò\*÷	(ð 	(r   rŒ  c                 óx   € Vf   \         P                  ! V4       W ,          # VP                  V4       W ,          # r   )r”   r3  r   )r<  r   r\  s   &&&r   Úsqrrê  È
  s1   € Ø‚}Ü�
Š
�4Ôð �3€Jð 	�
‰
�4ÔØ�3€Jr   c                 ó   € W,          # r   rc   )r<  r=  s   &&r   Úmulrì  Ï
  ó	   € Ø�3€Jr   c                 óR   € \         P                  ! V 4       \        R R,          4      h)r<  i   )r”   r3  rL   r   s   &r   Úraise_large_valuerrorrï  Ò
  s   € Ü‡J‚JˆtÔÜ
�S˜7•]Ó
#Ð#r   c                 ó   € V # r   rc   ©r<  s   &r   Úidentityrò  Ö
  s   € Ø€Hr   c                   ó0   a € ] tR tRt o ^ tR tR tRtV tR# )ÚCountedObjectiÙ
  c                ó^   € V ;P                   ^,          un         \        P                  V 4      # ró   )Ún_instancesr#  Ú__new__rW  s   &r   r÷  ÚCountedObject.__new__Ü
  s   € Ø�Š˜1Õ�Ü�~‰~˜cÓ"Ð"r   c                óJ   € \        V 4      ;P                  ^,          un        R# rž   )rA  rö  rÁ   s   &r   Ú__del__ÚCountedObject.__del__à
  s   € ÜˆT‹
×Ò !Õ#×r   rc   N)	r€   r�   r‚   rƒ   rö  r÷  rú  rˆ   r‰   rŠ   s   @r   rô  rô  Ù
  s   ø‡ € Ø€Kò#÷$ð $r   rô  c                   ó   € ] tR tRtRtR# )ÚSayWhenErroriã
  rc   N©r€   r�   r‚   rƒ   rˆ   rc   r   r   rý  rý  ã
  s   † £r   rý  c              #   ó€   "  € VR8X  d   \        R4      h\        V 4       F  pW!8X  d   \        R4      hVx € K  	  R# 5i)rŸ   zSomebody said whenNrH   )rý  r—  )ÚtotalÚwhenrš  s   && r   Úexception_throwing_generatorr  å
  s<   é € Øˆr„zÜÐ/Ó0Ð0Ü�5Ž\ˆØŒ9ÜÐ3Ó4Ð4ØŒó ùs   ‚<>c                   ó`  a a€ ] tR tRt o]V 3R l4       t]V 3R l4       tR tR tR t	R t
R tR	 tR
 tR tR tR tR tR tR tR tR tR tR tR tR t]R 4       t]P8                  ! RR4      R 4       t]R 4       t]P8                  ! RR4      R 4       tR t R t!R t"R  t#R!t$Vt%V ;t&# )"Ú	_TestPooliî
  c                óP   <€ \         SV `  4        V P                  ^4      V n        R# )rj   N)ÚsuperÚ
setUpClassÚPoolÚpool©r  Ú	__class__s   &€r   r  Ú_TestPool.setUpClassð
  s   ø€ ä‰ÑÔØ—8‘8˜A“;ˆŽr   c                óš   <€ V P                   P                  4        V P                   P                  4        R V n         \        SV `  4        R # r   )r	  r-  rè   r  ÚtearDownClassr
  s   &€r   r  Ú_TestPool.tearDownClassõ
  s2   ø€ à�‰×ÑÔØ�‰�‰ŒØˆŒÜ‰ÑÖr   c                óÒ   € V P                   P                  pV P                  V! \        R4      \        ^4      4       V P                  V! \        RR^/4      \        ^R7      4       R# )rÆ   r<  rñ  N)rÆ   rc   )r	  Úapplyru   rê  )rz   Úpapplys   & r   Ú
test_applyÚ_TestPool.test_applyü
  sK   € Ø—‘—‘ˆØ×Ñ™¤ TÓ*¬C°«FÔ3Ø×Ñ™¤ R¨#¨a¨Ó1´3¸´8Ö<r   c                ó–  € V P                   P                  pV P                  V! \        \	        \        ^
4      4      4      \	        \        \        \	        \        ^
4      4      4      4      4       V P                  V! \        \	        \        ^d4      4      ^R7      \	        \        \        \	        \        ^d4      4      4      4      4       R# )rš  ©Ú	chunksizeN)r	  Úmapru   rê  rô   r—  )rz   Úpmaps   & r   Útest_mapÚ_TestPool.test_map  s|   € Ø�y‰y�}‰}ˆØ×Ñ™œc¤4¬¨b«	£?Ó3´T¼#¼cÄ4ÌÈbË	Ã?Ó:SÓ5TÔUØ×Ñ™œc¤4¬¨c«
Ó#3¸rÔBÜœc¤#¤t¬E°#«JÓ'7Ó8Ó9ö	;r   c           
     óÖ  € V P                   P                  p\        \        \	        ^
4      \	        ^	RR4      4      4      pV P                  V! \        V4      \        \        P                  ! \        V4      4      4       \        \        \	        ^d4      \	        ^cRR4      4      4      pV P                  V! \        V^R7      \        \        P                  ! \        V4      4      4       R# )rš  r  NrH   )r	  Ústarmaprô   rD  r—  ru   rì  rö   )rz   ÚpsmapÚtupless   &  r   Útest_starmapÚ_TestPool.test_starmap  s¦   € Ø—	‘	×!Ñ!ˆÜ”cœ% ›)¤U¨1¨R°£_Ó5Ó6ˆØ×Ñ™œs FÓ+Üœi×/Ò/´°VÓ<Ó=ô	?ä”cœ% ›*¤e¨B¨r°2Ó&6Ó7Ó8ˆØ×Ñ™œs F°bÔ9Üœi×/Ò/´°VÓ<Ó=ö	?r   c           
     ó  € \        \        \        ^d4      \        ^cRR4      4      4      pV P                  V P                  P                  \        V4      P                  4       \        \        P                  ! \        V4      4      4       R# )rU  NrH   )
rô   rD  r—  ru   r	  Ústarmap_asyncrì  rú   rö   r  )rz   r  s   & r   Útest_starmap_asyncÚ_TestPool.test_starmap_async  s_   € Ü”cœ% ›*¤e¨B¨r°2Ó&6Ó7Ó8ˆØ×Ñ˜Ÿ™×0Ñ0´°fÓ=×AÑAÓCÜœi×/Ò/´°VÓ<Ó=ö	?r   c                óø   € V P                  V P                  P                  \        \	        \        ^
4      4      4      P                  4       \	        \        \        \	        \        ^
4      4      4      4      4       R# r™  )ru   r	  Ú	map_asyncrê  rô   r—  rú   r  rÁ   s   &r   Útest_map_asyncÚ_TestPool.test_map_async  sK   € Ø×Ñ˜Ÿ™×,Ñ,¬S´$´u¸R³y³/ÓB×FÑFÓHÜœc¤#¤t¬E°"«I£Ó7Ó8ö	:r   c                óR  € V P                   R 8X  d   V P                  P                  4       M. pV P                  P	                  \
        R.VP                  VP                  R7      P                  4        V P                  ^\        V4      4       V P                  ^.V^ ,          4       V P                  P	                  \
        R.VP                  VP                  R7      P                  4        V P                  ^\        V4      4       V P                  V^,          \        4       R# )r¸   Ú1)ÚcallbackÚerror_callbackr£   N)rÏ   r¸   rô   r	  r'  r�  rŸ  r   ru   rÙ   r×   rL   )rz   Ú	call_argss   & r   Útest_map_async_callbacksÚ"_TestPool.test_map_async_callbacks  sß   € Ø+/¯9©9¸	Ô+A�D—L‘L×%Ñ%Ô'Àrˆ	Ø�	‰	×ÑœC # Ø%.×%5Ñ%5Ø+4×+;Ñ+;ð 	ó 	=ç=A¹T¼VØ×Ñ˜œC 	›NÔ+Ø×Ñ˜!˜˜i¨�lÔ+Ø�	‰	×ÑœC # Ø%.×%5Ñ%5Ø+4×+;Ñ+;ð 	ó 	=ç=A¹T¼VØ×Ñ˜œC 	›NÔ+Ø×Ñ˜i¨�l¬JÖ7r   c                óh  € V P                   R 8X  d+   V P                  RP                  V P                   4      4        ! R R\        4      pV P	                  \
        4      ;_uu_ 4        V P                  P                  \        V! 4       .^
,          4       RRR4       R#   + '       g   i     R# ; i)r¹   rÎ   c                   ó&   a € ] tR tRt o R tRtV tR# )Ú*_TestPool.test_map_unplicklable.<locals>.Ai*  c                ó   € \        R 4      h)zcannot picklerm  rÁ   s   &r   r®   Ú5_TestPool.test_map_unplicklable.<locals>.A.__reduce__+  s   € Ü" ?Ó3Ð3r   rc   NrÃ  rŠ   s   @r   ÚAr3  *  s   ø‡ € ÷4ð 4r   r6  N)	rÏ   rÐ   r´   r#  rv   rn  r	  r  rê  )rz   r6  s   & r   Útest_map_unplicklableÚ_TestPool.test_map_unplicklable&  sr   € à�9‰9˜	Ô!Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJô	4”ô 	4ð ×Ñœ|×,Õ,Ø�I‰I�M‰Mœ#¡£˜u R�xÔ(÷ -×,×,Ò,ús   Á(.B Â B1	c                óÎ   €  V P                   P                  \        . ^R7      P                  \        R7       R#   \
        P                   d    T P                  R4        R# i ; i)rŸ   r  r+   z2pool.map_async with chunksize stalled on null listN)r	  r'  rê  rú   r‡  r!   ÚTimeoutErrorrs   rÁ   s   &r   Útest_map_chunksizeÚ_TestPool.test_map_chunksize0  sS   € ð	LØ�I‰I×Ñ¤ R°1ÐÓ5×9Ñ9Ä(Ð9ÖKøÜ×+Ñ+ô 	LØ�I‰IÐJ×Kð	Lús   ‚6: º&A$Á#A$c           	     ój  € V P                   R 8X  d+   V P                  RP                  V P                   4      4       V P                  \        4      ;_uu_ 4        V P
                  P                  \        \        ^R4      ^4       RRR4       V P                  \        4      ;_uu_ 4        V P
                  P                  \        \        ^R4      ^4       RRR4       V P                  \        4      ;_uu_ 4        V P
                  P                  \        \        ^
^4      ^4       RRR4        ! R R4      pV P                  \        4      ;_uu_ 4        V P
                  P                  \        V! 4       ^4       RRR4       V P                  \        4      ;_uu_ 4        V P
                  P                  \        V! 4       ^4       RRR4       R#   + '       g   i     ELW; i  + '       g   i     EL; i  + '       g   i     LÜ; i  + '       g   i     L™; i  + '       g   i     R# ; i)r¸   rÎ   Nc                   ó2   a € ] tR tRt o R tR tR tRtV tR# )ÚE_TestPool.test_map_handle_iterable_exception.<locals>.SpecialIterableiD  c                ó   € V # r   rc   rÁ   s   &r   rÂ  ÚN_TestPool.test_map_handle_iterable_exception.<locals>.SpecialIterable.__iter__E  s   € Ø�r   c                ó   € \         hr   )rý  rÁ   s   &r   Ú__next__ÚN_TestPool.test_map_handle_iterable_exception.<locals>.SpecialIterable.__next__G  s   € Ü"Ð"r   c                ó   € ^# ró   rc   rÁ   s   &r   r³  ÚM_TestPool.test_map_handle_iterable_exception.<locals>.SpecialIterable.__len__I  s   € Ùr   rc   N)	r€   r�   r‚   rƒ   rÂ  rC  r³  rˆ   r‰   rŠ   s   @r   ÚSpecialIterabler?  D  s   ø‡ € òò#÷ð r   rG  rH   )	rÏ   rÐ   r´   rv   rý  r	  r  rê  r  )rz   rG  s   & r   Ú"test_map_handle_iterable_exceptionÚ,_TestPool.test_map_handle_iterable_exception6  sc  € Ø�9‰9˜	Ô!Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJð ×Ñœ|×,Õ,Ø�I‰I�M‰Mœ#Ô;¸A¸rÓBÀAÔF÷ -ð ×Ñœ|×,Õ,Ø�I‰I�M‰Mœ#Ô;¸A¸rÓBÀAÔF÷ -ð ×Ñœ|×,Õ,Ø�I‰I�M‰Mœ#Ô;¸BÀÓBÀAÔF÷ -÷	ñ 	ð ×Ñœ|×,Õ,Ø�I‰I�M‰Mœ#™Ó0°!Ô4÷ -à×Ñœ|×,Õ,Ø�I‰I�M‰Mœ#™Ó0°!Ô4÷ -Ñ,÷% -×,Ð,ú÷ -×,Ð,ú÷ -×,ú÷ -×,úç,×,Ð,ús<   Á,GÂ*,G'Ã;,G;Å'HÆ"'H!ÇG$	Ç'G8	Ç;H	ÈH	È!H2	c                óê   € V P                   P                  \        ^\        34      p\	        VP
                  4      pV P                  V! 4       ^14       V P                  VP                  \        4       R# )rs  N)	r	  Úapply_asyncrê  r‡  r�   rú   ru   r¥   r�   )rz   rª   rú   s   &  r   Ú
test_asyncÚ_TestPool.test_asyncP  sP   € Ø�i‰i×#Ñ#¤C¨!¬X¨Ó8ˆÜ˜CŸG™GÓ$ˆØ×Ñ™› Ô#Ø×$Ñ$ S§[¡[´(Ö;r   c                ón  € V P                  ^4      p V P                  R8X  d   \        P                  ! 4       MRpVP	                  \
        ^\        \        P                  ,           V34      p\        VP                  4      pV P                  \        P                  V\        R7       V P                  VP                  \        4       Ve   VP!                  4        VP#                  4        VP%                  4        R#   Xe   TP!                  4        TP#                  4        TP%                  4        i ; i)rg  r¹   Nr+   )r  rÏ   rG  r=  rK  rê  rˆ  r   r6  r�   rú   rv   r!   r:  r¥   r�   r³   r-  rè   )rz   rë   r\  rª   rú   s   &    r   Útest_async_timeoutÚ_TestPool.test_async_timeoutV  sÒ   € Ø�I‰I�a‹Lˆð
	Ø)-¯©°iÔ)?”I—O’OÔ%ÀTˆEØ—-‘-¤ a¬´G×4IÑ4IÕ)IÈ5Ð%QÓRˆCÜ §¡Ó(ˆCØ×Ñœo×:Ñ:¸CÌÐÔRØ×(Ñ(¨¯©´hÔ?àÒ Ø—	‘	”Ø�K‰KŒMØ�F‰FŽHøð Ò Ø—	‘	”Ø�K‰KŒMØ�F‰F�Hús   “B5C> Ã>6D4c                ó
  € V P                   P                  \        \        \	        ^
4      4      4      pV P                  \        V4      \        \        \        \        \	        ^
4      4      4      4      4       V P                   P                  \        \        \	        ^
4      4      4      p\	        ^
4       F$  pV P                  \        V4      W",          4       K&  	  V P                  \        VP                  4       V P                   P                  \        \        \	        R4      4      ^dR7      p\	        R4       F$  pV P                  \        V4      W",          4       K&  	  V P                  \        VP                  4       R# ©rš  r6  r  N)r	  Úimaprê  rô   r—  ru   r  r¨  rv   ÚStopIterationrC  ©rz   r©  rš  s   &  r   Ú	test_imapÚ_TestPool.test_imapd  só   € Ø�Y‰Y�^‰^œC¤¤e¨B£i£Ó1ˆØ×Ñœ˜b›¤4¬¬C´´e¸B³i³Ó(AÓ#BÔCà�Y‰Y�^‰^œC¤¤e¨B£i£Ó1ˆÜ�r–ˆAØ×ÑœT "›X q¥sÖ+ñ à×Ñœ-¨¯©Ô5à�Y‰Y�^‰^œC¤¤e¨D£kÓ!2¸cˆ^ÓBˆÜ�t–ˆAØ×ÑœT "›X q¥sÖ+ñ à×Ñœ-¨¯©Ö5r   c                óœ  € V P                   R 8X  d+   V P                  RP                  V P                   4      4       V P                  P	                  \
        \        ^R4      ^4      pV P                  \        VP                  4       V P                  P	                  \
        \        ^R4      ^4      pV P                  \        VP                  4       V P                  P	                  \
        \        ^
^4      ^4      p\        ^4       F$  pV P                  \        V4      W",          4       K&  	  V P                  \        VP                  4       V P                  P	                  \
        \        ^^4      ^4      p\        ^4       F$  pV P                  \        V4      W",          4       K&  	  V P                  \        VP                  4       V P                  P	                  \
        \        ^^4      ^4      p\        ^4       F$  pV P                  \        V4      W",          4       K&  	  V P                  \        VP                  4       R# ©r¸   rÎ   NrH   )rÏ   rÐ   r´   r	  rS  rê  r  rv   rý  rC  r—  ru   r¨  rU  s   &  r   Ú#test_imap_handle_iterable_exceptionÚ-_TestPool.test_imap_handle_iterable_exceptionr  s”  € Ø�9‰9˜	Ô!Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJð �Y‰Y�^‰^œCÔ!=¸aÀÓ!DÀaÓHˆØ×Ñœ,¨¯©Ô4à�Y‰Y�^‰^œCÔ!=¸aÀÓ!DÀaÓHˆØ×Ñœ,¨¯©Ô4à�Y‰Y�^‰^œCÔ!=¸bÀ!Ó!DÀaÓHˆÜ�q–ˆAØ×ÑœT "›X q¥sÖ+ñ à×Ñœ,¨¯©Ô4ð �Y‰Y�^‰^œCÔ!=¸bÀ!Ó!DÀaÓHˆÜ�q–ˆAØ×ÑœT "›X q¥sÖ+ñ à×Ñœ,¨¯©Ô4Ø�Y‰Y�^‰^œCÔ!=¸bÀ!Ó!DÀaÓHˆÜ�q–ˆAØ×ÑœT "›X q¥sÖ+ñ à×Ñœ,¨¯©Ö4r   c                óâ  € V P                   P                  \        \        \	        ^
4      4      4      pV P                  \        V4      \        \        \        \        \	        ^
4      4      4      4      4       V P                   P                  \        \        \	        R4      4      ^dR7      pV P                  \        V4      \        \        \        \        \	        R4      4      4      4      4       R# rR  )r	  Úimap_unorderedrê  rô   r—  ru   r»  r  )rz   r©  s   & r   Útest_imap_unorderedÚ_TestPool.test_imap_unorderedŒ  s•   € Ø�Y‰Y×%Ñ%¤c¬4´°b³	«?Ó;ˆØ×Ñœ ›¤T¬#¬c´4¼¸b»	³?Ó*CÓ%DÔEà�Y‰Y×%Ñ%¤c¬4´°d³Ó+<ÈÐ%ÓLˆØ×Ñœ ›¤T¬#¬c´4¼¸d»Ó3DÓ*EÓ%FÖGr   c           
     óâ  € V P                   R 8X  d+   V P                  RP                  V P                   4      4       V P                  P	                  \
        \        ^R4      ^4      pV P                  \        VP                  4       V P                  P	                  \
        \        ^R4      ^4      pV P                  \        VP                  4       V P                  P	                  \
        \        ^
^4      ^4      p\        \        \
        \        \        ^
4      4      4      4      pV P                  \        4      ;_uu_ 4        \        ^
4       F0  p\        V4      pV P                  WB4       VP                  V4       K2  	  RRR4       V P                  P	                  \
        \        ^^4      ^4      p\        \        \
        \        \        ^4      4      4      4      pV P                  \        4      ;_uu_ 4        \        ^4       F0  p\        V4      pV P                  WB4       VP                  V4       K2  	  RRR4       R#   + '       g   i     LÍ; i  + '       g   i     R# ; irY  )rÏ   rÐ   r´   r	  r]  rê  r  rv   rý  rC  rô   r  r—  r¨  rw   rè  )rz   r©  Úexpected_valuesrš  r©   s   &    r   Ú-test_imap_unordered_handle_iterable_exceptionÚ7_TestPool.test_imap_unordered_handle_iterable_exception“  sÂ  € Ø�9‰9˜	Ô!Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJð �Y‰Y×%Ñ%¤cÜ&BÀ1ÀbÓ&IØ&'ó)ˆð 	×Ñœ,¨¯©Ô4à�Y‰Y×%Ñ%¤cÜ&BÀ1ÀbÓ&IØ&'ó)ˆð 	×Ñœ,¨¯©Ô4à�Y‰Y×%Ñ%¤cÜ&BÀ2ÀqÓ&IØ&'ó)ˆô œs¤3¬¬U°2«Y«Ó8Ó9ˆØ×Ñœ|×,Õ,ä˜2–Y�Ü˜R›�Ø—‘˜eÔ5Ø×&Ñ& uÖ-ñ ÷ -ð �Y‰Y×%Ñ%¤cÜ&BÀ2ÀqÓ&IØ&'ó)ˆô œs¤3¬¬U°2«Y«Ó8Ó9ˆØ×Ñœ|×,Õ,Ü˜2–Y�Ü˜R›�Ø—‘˜eÔ5Ø×&Ñ& uÖ-ñ ÷ -Ñ,÷ -×,ú÷ -×,Ð,ús   ÅA I
È A IÉ
I	ÉI.	c                óÎ  € V P                   R 8X  d   \        M\        pV P                  WP                  R4       V P                  WP                  ^ 4       V P                   R 8w  dZ   V P	                  ^4      p V P                  ^\        VP                  4      4       VP                  4        VP                  4        R# R#   TP                  4        TP                  4        i ; i)r¸   NrH   )
rÏ   ÚRemoteErrorrL   rv   r  ru   rÙ   Ú_poolr$   rè   )rz   Úexpected_errorrë   s   &  r   Útest_make_poolÚ_TestPool.test_make_pool·  s¥   € Ø)-¯©°iÔ)?�+Ü)ð 	ð 	×Ñ˜.¯)©)°RÔ8Ø×Ñ˜.¯)©)°QÔ7à�9‰9˜	Ô!Ø—	‘	˜!“ˆAðØ× Ñ  ¤C¨¯©£LÔ1à—‘”	Ø—‘–ñ "øð
 —‘”	Ø—‘•ús   Á9%C Ã"C$c                óZ  € \         P                  pV P                  R 8X  d   ^pV P                  ^4      p\	        R4       Uu. uF  q1NK  	  ppVP                  \        P                  V^R7      p\        P                  ! R4       VP                  4        VP                  4        R# u upi )r¹   i'  r  rº  N)
r   r+  rÏ   r  r—  r'  r”   r3  r-  rè   )rz   Ú
sleep_timerë   rš  rX   r   s   &     r   rƒ  Ú_TestPool.test_terminateÆ  s   € ä×)Ñ)ˆ
à�9‰9˜	Ô!ð ˆJà�I‰I�a‹LˆÜ$)¨&¤MÓ2¡M˜q’
¡MˆÐ2Ø—‘œTŸZ™Z¨¸�Ó;ˆÜ�
Š
�3ŒØ	�‰ŒØ	�‰Žùò	 3s   Á
B(c                óØ  € V P                  ^4      pV P                  VP                  \        . 4      . 4       V P                  \	        VP                  \        . 4      4      . 4       V P                  \	        VP                  \        . 4      4      . 4       V P                  VP                  \        . 4      P                  4       . 4       VP                  4        VP                  4        R# rž   )r  ru   r  rê  rô   rS  r]  r'  rú   r$   rè   ©rz   rë   s   & r   Útest_empty_iterableÚ_TestPool.test_empty_iterable×  s    € à�I‰I�a‹Lˆà×Ñ˜Ÿ™œs B›¨Ô,Ø×Ñœ˜aŸf™f¤S¨"›oÓ.°Ô3Ø×Ñœ˜a×.Ñ.¬s°BÓ7Ó8¸"Ô=Ø×Ñ˜Ÿ™¤S¨"Ó-×1Ñ1Ó3°RÔ8à	�‰Œ	Ø	�‰Žr   c                óÔ  € V P                   R 8X  d¿   \        \        ^
4      4      pV Uu. uF  p\        V4      NK  	  ppV P	                  ^4      ;_uu_ 4       pVP                  \        V4      pV P                  VP                  4       V4       RRR4       XP                  4        V P                  \        VP
                  \        V4       R# R# u upi   + '       g   i     LO; irI  )rÏ   rô   r—  rê  r  r'  ru   rú   rè   rv   rL   )rz   ÚLrš  r¡  rë   Úrs   &     r   Útest_contextÚ_TestPool.test_contextã  sž   € Ø�9‰9˜Ô#Ü”U˜2“Y“ˆAÙ()Ó*© 1œ˜Až©ˆHÐ*Ø—‘˜1—” Ø—K‘K¤ QÓ'�Ø× Ñ  §¡£¨(Ô3÷ ð �F‰FŒHØ×Ñœj¨!¯+©+´s¸AÖ>ñ $ùâ*ß—ús   ªCÁ7CÃC'	c                ó   € \        ^{4      h©é{   rm  rW  s   &r   Ú_test_tracebackÚ_TestPool._test_tracebackí  s   € ä˜3ÓÐr   Trœ  c           	     óN  € V P                   R 8X  Ed    V P                  ^4      ;_uu_ 4       p VP                  V P                  4       V P	                  R4       RRR4       XP                  4        V P                  \        X4      \        4       V P                  VP                  R4       VP                  pV P                  \        V4      \        P                  P                  4       V P!                  RVP"                  4       \$        P&                  P)                  4       ;_uu_ 4       p VhR#   \
         d   pTp Rp?LìRp?ii ; i  + '       g   i     Lü; i  \         d+    \*        P,                  ! \*        P.                  ! 4       !    Mi ; i RRR4       M  + '       g   i     M; iT P!                  RXP1                  4       4       T P                  ^4      ;_uu_ 4       p TP3                  \4        \7        ^R4      ^4       T P	                  R4       M  \
         d   pTp Rp?MRp?ii ; iT P                  \        T4      \8        4       T P                  TP                  R4       RRR4       M  + '       g   i     M; iTP                  4        R# )r·   zexpected RuntimeErrorNz&raise RuntimeError(123) # some commentzexpected SayWhenErrorrw  rH   )rÏ   r  r  ry  rs   rr   rè   r@  rA  rn  ru   rX   Ú	__cause__r!   r	  ÚRemoteTracebackrw   ÚtbrÅ  r   rÆ  r†   Ú
excepthookÚexc_infoÚgetvaluer  rê  r  rý  )rz   rë   rB  ÚexcÚcauseÚf1s   &     r   Útest_tracebackÚ_TestPool.test_tracebackñ  s×  € ð �9‰9˜Õ#Ø—‘˜1—” ð7Ø—G‘G˜D×0Ñ0Ô1ð —I‘IÐ5Ô6÷ ð �F‰FŒHØ�M‰Mœ$˜s›)¤\Ô2Ø×Ñ˜SŸX™X vÔ.Ø—M‘MˆEØ�M‰Mœ$˜u›+¤×';Ñ';×'KÑ'KÔLØ�M‰MÐBÀEÇHÁHÔMä—‘×-Ñ-×/Ô/°2ð4Ø�Iñ# $øô !ô Ø•Cûðú÷ —ûô" $ô 4Ü—N’N¤C§L¢L£NÔ3ð4úØ3÷	 0×/×/Ð/úð
 �M‰MÐBØŸ+™+›-ô)ð —‘˜1—” ð7Ø—E‘Eœ#Ô;¸A¸rÓBÀAÔFð —I‘IÐ5Õ6øô !ô Ø•Cûðúð —‘œd 3›i¬Ô6Ø—‘˜cŸm™m¨TÔ2÷ ——�úð �F‰FŽHs”   ¬E®D4Á	EÄ.F#Ä0E!Ä4EÄ?EÅEÅEÅEÅE	Å!2FÆF#ÆFÆF#Æ#F3	Ç/JÇ1!H$ÈJÈ$H;È/H6È1JÈ6H;È;>JÊJ	c                ó   € \        R 4      h)rß  rm  rW  s   &r   Ú_test_wrapped_exceptionÚ!_TestPool._test_wrapped_exception  s   € ä˜5Ó!Ð!r   c           	     ó8  € V P                  ^4      ;_uu_ 4       pV P                  \        4      ;_uu_ 4        VP                  V P                  4       RRR4       RRR4       XP                  4        R#   + '       g   i     L*; i  + '       g   i     L5; irž   )r  rv   rn  r  rˆ  rè   rn  s   & r   Útest_wrapped_exceptionÚ _TestPool.test_wrapped_exception  s\   € ð �Y‰Y�q�\Œ\˜QØ×"Ñ"¤<×0Õ0Ø—‘˜×4Ñ4Ô5÷ 1÷ ð 	
�‰Ž÷ 1×0ú÷ �\ús"   šB	¸A6	ÁB	Á6BÂB	Â	B	c           	     óz  € \         P                  ! 4       pV P                  \        4      ;_uu_ 4        V P	                  ^4      ;_uu_ 4       p VP                  \        ^ ^.4       \         P                  ! R4       VP                  4        VP                  4         RRR4       RRR4       V P                  \         P                  ! 4       V,
          R4       R#   \         P                  ! R4       TP                  4        TP                  4        i ; i  + '       g   i     L�; i  + '       g   i     LŒ; i)r±   rÕ  NgÍÌÌÌÌÌì?)r”   r•   rv   rL   r  r  rï  r3  r$   rè   r  )rz   Út_startrë   s   &  r   Útest_map_no_failfastÚ_TestPool.test_map_no_failfast$  s¿   € ô —.’.Ó"ˆà×Ñœz×*Õ*Ø—‘˜1—” ðØ—E‘EÔ/°!°Q°Ô8ä—J’J˜s”OØ—G‘G”IØ—F‘F•H÷ ÷ +ð 	×Ñœ4Ÿ>š>Ó+¨gÕ5°sÖ;øô —J’J˜s”OØ—G‘G”IØ—F‘F•Hú÷ —ú÷ +×*ús;   ³D*ÁD	ÁCÁ'6D	ÂD*Ã8DÄD	ÄD'Ä"D*Ä*D:	c                óÎ  € \        ^
4       Uu. uF  p\        4       NK  	  ppV Uu. uF  p\        P                  ! V4      NK  	  ppV P                  P                  \        V4       ?\        P                  ! \        4       \        P                  ! 4        V P                  \        R V 4       4      R04       V P                  \        P                  ^ 4       R# u upi u upi )rš  c              3   ó.   "  € T F  q! 4       x € K  	  R # 5ir   rc   )r·  r¶  s   & r   r¸  Ú3_TestPool.test_release_task_refs.<locals>.<genexpr>B  s   é € Ð1©D b˜RŸT˜T«Dùs   ‚N)r—  rô  r²  r³  r	  r  rò  r”   r3  rž  r   Ú
gc_collectru   r³   rö  )rz   rš  ÚobjsÚoÚrefss   &    r   Útest_release_task_refsÚ _TestPool.test_release_task_refs8  s¤   € ô */¨r¬Ó3© A”–©ˆÐ3Ù(,Ó-© 1”—’˜A–©ˆÐ-Ø�	‰	�‰”h Ô%àÜ�
Š
”5ÔÜ×ÒÔØ×ÑœÑ1©DÓ1Ó1°D°6Ô:ð 	×Ñœ×2Ñ2°AÖ6ùò 4ùÚ-s
   ŽC§C"c           	     óš  € V P                   R 8X  d   V P                  R4       V P                  ^4      pV;_uu_ 4         RRR4       V P                  \        4      ;_uu_ 4        V;_uu_ 4         RRR4       RRR4       VP                  4        R#   + '       g   i     L\; i  + '       g   i     L=; i  + '       g   i     LH; i)r¸   útest not applicable to managerN)rÏ   rÐ   r  rv   rL   rè   ©rz   r	  s   & r   Ú
test_enterÚ_TestPool.test_enterG  s~   € Ø�9‰9˜	Ô!Ø�M‰MÐ:Ô;à�y‰y˜‹|ˆßŠTØ÷ ð
 ×Ñœz×*Õ*ç’Ø÷ ÷ +ð 	�	‰	Ž÷ �Tú÷ —ú÷ +×*ús/   ¾BÁ%B:Á0B'	Á2B:ÂB$	Â'B7Â2B:Â:C
	c                óš  € V P                   R 8X  d   V P                  R4       V P                  ^4      pVP                  4        VP	                  4        \
        P                  P                  Vn        \        P                  ! R\        34      ;_uu_ 4        Rp\        P                  ! 4        RRR4       R#   + '       g   i     R# ; i)r¸   r›  z%unclosed running multiprocessing poolN)rÏ   rÐ   r  r-  rè   r!   r	  ÚRUNÚ_stater
   Úcheck_warningsÚResourceWarningr   r”  rœ  s   & r   Útest_resource_warningÚ_TestPool.test_resource_warningW  s—   € Ø�9‰9˜	Ô!Ø�M‰MÐ:Ô;à�y‰y˜‹|ˆØ�‰ÔØ�	‰	Œô &×*Ñ*×.Ñ.ˆŒä×+Ò+Ø8¼/ÐJ÷Lõ LàˆDÜ×ÒÔ ÷L÷ L÷ Lò Lús   ÂB9Â9C
	rc   )'r€   r�   r‚   rƒ   r+  r  r  r  r  r   r$  r(  r/  r7  r;  rH  rL  rO  rV  rZ  r^  rb  rh  rƒ  ro  rt  ry  rM   r…   r…  rˆ  r‹  r�  r˜  r�  r¤  rˆ   r‰   Ú__classcell__©r  r‹   s   @@r   r  r  î
  s  ù‡ € àôó ðð ô ó ð ò=ò
;ò?ò?ò
:ò8ò)òLò5ò4<òò6ò5ò4Hò".òHòò"
ò?ð ñ ó ð ð ‡_‚_�TÐ@ÓAñ$ó Bð$ðL ñ"ó ð"ð ‡_‚_�TÐ@ÓAñó Bðò<ò(7ò÷ !ò !r   r  c                  ó   € \        R 4      h©Úkey)ÚKeyErrorrc   r   r   Úraisingr¬  g  s   € Ü
�5‹/Ðr   c                  ó   € R  # )c                  ó   € ^*# )é*   rc   rc   r   r   rT  Ú%unpickleable_result.<locals>.<lambda>k  s   € ‘2r   rc   rc   r   r   Úunpickleable_resultr±  j  s   € ÙÐr   c                   ó0   a € ] tR tRt o RtR tR tRtV tR# )Ú_TestPoolWorkerErrorsim  c                ó^  a€ \         P                  ! ^4      pR.oV3R lpVP                  \        VR7      pV P	                  \
        VP                  4       V P                  S^ ,          4       V P                  S^ ,          \
        4       VP                  4        VP                  4        R# )r±   Nc                 ó   <€ V S^ &   R# r)  rc   ©r‚  Ú
scratchpads   &€r   ÚerrbackÚ@_TestPoolWorkerErrors.test_async_error_callback.<locals>.errbackt  s   ø€ ØˆJ�q‹Mr   ©r-  )r!   r  rK  r¬  rv   r«  rú   rÓ   r×   r$   rè   )rz   rë   r¸  rª   r·  s   &   @r   Útest_async_error_callbackÚ/_TestPoolWorkerErrors.test_async_error_callbackp  s}   ø€ Ü× Ò  Ó#ˆà�Vˆ
õ	 ð �m‰mœG°GˆmÓ<ˆØ×Ñœ( C§G¡GÔ,Ø�‰˜
 1�Ô&Ø×Ñ˜j¨�m¬XÔ6à	�‰Œ	Ø	�‰Žr   c                óì  a€ ^ RI Hp \        P                  ! ^4      p\	        ^4       F§  pR.oV3R lpVP                  \        VR7      pV P                  WP                  4       S^ ,          pV P                  V4       V P                  S^ ,          V4       V P                  VP                  4       V P                  VP                  4       K©  	  VP                  4        VP                  4        R# )r   )ÚMaybeEncodingErrorNc                 ó   <€ V S^ &   R# r)  rc   r¶  s   &€r   r¸  Ú@_TestPoolWorkerErrors._test_unpickleable_result.<locals>.errback‡  s   ø€ Ø #�
˜1“r   rº  )Úmultiprocess.poolr¾  r!   r  r—  rK  r±  rv   rú   rÓ   r×   ÚassertIsNotNoner‚  r©   r$   rè   )rz   r¾  rë   Ú	iterationr¸  rª   Úwrappedr·  s   &      @r   Ú_test_unpickleable_resultÚ/_TestPoolWorkerErrors._test_unpickleable_result  s¼   ø€ Ý8Ü× Ò  Ó#ˆô ˜ržˆIà˜ˆJõ$ð —-‘-Ô 3ÀG�-ÓLˆCØ×ÑÐ0·'±'Ô:Ø  •mˆGØ�O‰O˜GÔ$Ø×!Ñ! *¨Q¥-Ð1CÔDØ× Ñ  §¡Ô-Ø× Ñ  §¡Ö/ñ #ð 	
�‰Œ	Ø	�‰Žr   rc   Nrp  )	r€   r�   r‚   rƒ   rº   r»  rÅ  rˆ   r‰   rŠ   s   @r   r³  r³  m  s   ø‡ € Ø#€Mò÷ð r   r³  c                   ó<   a € ] tR tRt o RtR tR tR tR tRt	V t
R# )	Ú_TestPoolWorkerLifetimei•  c                óü  € \         P                  ! ^^
R7      pV P                  ^\        VP                  4      4       VP                   Uu. uF  q"P
                  NK  	  pp. p\        ^d4       F)  pVP                  VP                  \        V34      4       K+  	  \        V4       F.  w  rgV P                  VP                  4       \        V4      4       K0  	  VP                  4        ^2pV'       dt   \        ;QJ d&    R VP                   4       F  '       d   K   RM	  RM! R VP                   4       4      '       g&   V^,          p\        P                  ! \         4       K{  VP                   Uu. uF  q"P
                  NK  	  p	pV P#                  RV4       V P#                  RV	4       V P%                  \'        V4      \'        V	4      4       VP)                  4        VP+                  4        R# u upi u upi )rg  ©Úmaxtasksperchildc              3   ó@   "  € T F  qP                  4       x € K  	  R # 5ir   )rÔ   )r·  rZ  s   & r   r¸  ÚD_TestPoolWorkerLifetime.test_pool_worker_lifetime.<locals>.<genexpr>©  s   é € Ð#B¹'°Q§J¡J§L L»'ùs   ‚FTN)r!   r  ru   rÙ   rf  r  r—  rŸ  rK  rê  Ú	enumeraterú   Ú_repopulate_poolÚallr”   r3  rž  r>  rK  r»  r$   rè   )
rz   rë   rZ  Úorigworkerpidsrñ  rš  r7  rª   Ú	countdownÚfinalworkerpidss
   &         r   Útest_pool_worker_lifetimeÚ1_TestPoolWorkerLifetime.test_pool_worker_lifetime˜  sd  € Ü× Ò  °RÔ8ˆØ×Ñ˜œC §¡›LÔ)Ø)*¯ªÓ1© AŸ%œ%©ˆÐ1àˆÜ�s–ˆAØ�N‰N˜1Ÿ=™=¬¨q¨eÓ4Ö5ñ ô " 'Ö*‰HˆQØ×Ñ˜SŸW™W›Y¬¨A«Ö/ñ +ð 	
×ÑÔð ˆ	ß§£Ñ#B¸!¿'º'Ó#B§§¢Ñ#B¸!¿'º'Ó#B× BÒ BØ˜�NˆIÜ�JŠJ”uÖØ*+¯'ª'Ó2©' QŸ5œ5©'ˆÐ2à×Ñ˜˜~Ô.Ø×Ñ˜˜Ô/à×ÑœF >Ó2´F¸?Ó4KÔLØ	�‰Œ	Ø	�‰Žùò1 2ùò" 3s   ÁG4Å4G9c                óf  € \         P                  ! ^^R7      p. p\        ^4       F*  pVP                  VP	                  \
        VR34      4       K,  	  VP                  4        VP                  4        \        V4       F.  w  rEV P                  VP                  4       \        V4      4       K0  	  R# )rg  rÊ  g333333Ó?N)r!   r  r—  rŸ  rK  rê  r$   rè   rÎ  ru   rú   )rz   rë   rñ  rš  r7  rª   s   &     r   Ú%test_pool_worker_lifetime_early_closeÚ=_TestPoolWorkerLifetime.test_pool_worker_lifetime_early_closeµ  s�   € ô × Ò  °QÔ7ˆØˆÜ�q–ˆAØ�N‰N˜1Ÿ=™=¬¨q°#¨hÓ7Ö8ñ à	�‰Œ	Ø	�‰Œä! 'Ö*‰HˆQØ×Ñ˜SŸW™W›Y¬¨A«Ö/ó +r   c                ó¼   € R FA  pV P                  \        4      ;_uu_ 4        \        P                  ! ^VR7       RRR4       KC  	  R#   + '       g   i     KX  ; i)r   rÊ  N)r   rH   rÕ  Ú12)rv   rL   r!   r  )rz   r©   s   & r   Ú"test_pool_maxtasksperchild_invalidÚ:_TestPoolWorkerLifetime.test_pool_maxtasksperchild_invalidÂ  s?   € Û'ˆEØ×"Ñ"¤:×.Õ.Ü×$Ò$ Q¸Õ?÷ /Ñ.ó (ß.×.Ð.ús   £A
Á
Ac                ó”   € R p\         P                  P                  P                  ! RV3/ \        B w  r#pV P                  V^ 4       R# )a‹  if 1:
            from multiprocess import Pool
            problem = None
            class A:
                def __init__(self):
                    self.pool = Pool(processes=1)
            def test():
                global problem
                problem = A()
                problem.pool.map(float, tuple(range(10)))
            if __name__ == "__main__":
                test()
        ú-cN)rÅ  r   r   Úassert_python_okÚENVru   ©rz   Úcmdr®  Úoutr{   s   &    r   Ú>test_worker_finalization_via_atexit_handler_of_multiprocessingÚV_TestPoolWorkerLifetime.test_worker_finalization_via_atexit_handler_of_multiprocessingÇ  sA   € ðˆô —|‘|×1Ñ1×BÒBÀ4ÈÑTÔPSÑT‰ˆ�Ø×Ñ˜˜QÖr   rc   Nrp  )r€   r�   r‚   rƒ   rº   rÔ  r×  rÛ  rä  rˆ   r‰   rŠ   s   @r   rÈ  rÈ  •  s$   ø‡ € Ø#€Mòò:0ò@÷
 ð  r   rÈ  )ÚBaseManagerÚ	BaseProxyre  c                   ó2   a € ] tR tRt o R tR tR tRtV tR# )ÚFooBariß  c                ó   € R # )úf()rc   rÁ   s   &r   rU  ÚFooBar.fà  s   € Ùr   c                ó   € \         hr   )rL   rÁ   s   &r   ÚgÚFooBar.gâ  s   € ÜÐr   c                ó   € R # )ú_h()rc   rÁ   s   &r   Ú_hÚ	FooBar._hä  s   € Ùr   rc   N)	r€   r�   r‚   rƒ   rU  rî  rò  rˆ   r‰   rŠ   s   @r   ré  ré  ß  s   ø‡ € òò÷ð r   ré  c               #   óF   "  € \        ^
4       F  p W ,          x € K  	  R# 5ir™  )r—  )rš  s    r   Úbazrõ  ç  s   é € Ü�2ŽYˆØ�cŒ	ó ùs   ‚!c                   ó0   a € ] tR tRt o RtR tR tRtV tR# )ÚIteratorProxyië  c                ó   € V # r   rc   rÁ   s   &r   rÂ  ÚIteratorProxy.__iter__í  s   € Øˆr   c                ó$   € V P                  R 4      # ©rC  )Ú_callmethodrÁ   s   &r   rC  ÚIteratorProxy.__next__ï  s   € Ø×Ñ 
Ó+Ð+r   rc   Nrû  )	r€   r�   r‚   rƒ   Ú	_exposed_rÂ  rC  rˆ   r‰   rŠ   s   @r   r÷  r÷  ë  s   ø‡ € Ø€Iò÷,ð ,r   r÷  c                   ó   € ] tR tRtRtR# )Ú	MyManageriò  rc   Nrþ  rc   r   r   r   r   ò  s   † Ûr   r   ÚFoo)r¢  ÚBar)r¢  Úexposedrõ  )r¢  Ú	proxytypec                   ó<   a € ] tR tRt o RtR tR tR tR tRt	V t
R# )	Ú_TestMyManageriú  c                óö   € \        \        R 7      pVP                  4        V P                  V4       VP	                  4        V P                  VP                  P                  ^ \        P                  ) 34       R# ©)Úshutdown_timeoutN)
r   ÚSHUTDOWN_TIMEOUTrç   ÚcommonÚshutdownrw   Ú_processrÜ   r`  r‚  ©rz   r¸   s   & r   Útest_mymanagerÚ_TestMyManager.test_mymanagerþ  sU   € ÜÔ-=Ô>ˆØ�‰ŒØ�‰�GÔØ×ÑÔð
 	�‰�g×&Ñ&×/Ñ/°!´f·n±n°_Ð1EÖFr   c                ó  € \        \        R 7      pV;_uu_ 4        V P                  V4       RRR4       V P                  VP                  P
                  ^ \        P                  ) 34       R#   + '       g   i     LI; ir  )r   r
  r  rw   r  rÜ   r`  r‚  r  s   & r   Útest_mymanager_contextÚ%_TestMyManager.test_mymanager_context	  sR   € ÜÔ-=Ô>ˆßŠWØ�K‰K˜Ô ÷ ð
 	�‰�g×&Ñ&×/Ñ/°!´f·n±n°_Ð1EÖF÷ �Wús   ›A.Á.A>	c                ó   € \        \        R 7      pVP                  4        V;_uu_ 4        V P                  V4       RRR4       V P	                  VP
                  P                  ^ 4       R#   + '       g   i     L8; ir  )r   r
  rç   r  ru   r  rÜ   r  s   & r   Ú!test_mymanager_context_prestartedÚ0_TestMyManager.test_mymanager_context_prestarted  sP   € ÜÔ-=Ô>ˆØ�‰ŒßŠWØ�K‰K˜Ô ÷ à×Ñ˜×)Ñ)×2Ñ2°AÖ6÷ �Wús   «A-Á-A=	c                óà  € VP                  4       pVP                  4       pVP                  4       pR Uu. uF  p\        W%4      '       g   K  VNK  	  ppR Uu. uF  p\        W54      '       g   K  VNK  	  ppV P	                  VR R.4       V P	                  VR R.4       V P	                  VP                  4       R4       V P                  \        VP                  4       V P	                  VP                  R 4      R4       V P                  \        VP                  R4       V P	                  VP                  4       R4       V P	                  VP                  4       R4       V P	                  VP                  R 4      R4       V P	                  VP                  R4      R4       T P	                  \        V4      \        ^
4       Uu. uF  qˆV,          NK  	  up4       R# u upi u upi u upi )rU  rî  rò  rë  rñ  N)rU  rî  rò  )r  r  rõ  rq  ru   rU  rv   rL   rî  rü  re  rò  rô   r—  )	rz   r¸   rß  Úbarrõ  r4   Úfoo_methodsÚbar_methodsrš  s	   &&       r   r  Ú_TestMyManager.common  sy  € Ø�k‰k‹mˆØ�k‰k‹mˆØ�k‰k‹mˆá(8ÓOÑ(8 ¼GÀC×<N—t�tÑ(8ˆÐOÙ(8ÓOÑ(8 ¼GÀC×<N—t�tÑ(8ˆÐOà×Ñ˜ s¨C jÔ1Ø×Ñ˜ s¨D kÔ2à×Ñ˜Ÿ™› %Ô(Ø×Ñœ* c§e¡eÔ,Ø×Ñ˜Ÿ™¨Ó-¨uÔ5Ø×Ñœ+ s§¡¸Ô=à×Ñ˜Ÿ™› %Ô(Ø×Ñ˜Ÿ™› 6Ô*Ø×Ñ˜Ÿ™¨Ó-¨uÔ5Ø×Ñ˜Ÿ™¨Ó.°Ô7à×Ñœ˜c›´%¸´)Ó$<±)¨Q q§S S±)Ñ$<Ö=ùò! PùÚOùò %=s   µG!ÁG!ÁG&Á1G&ÇG+
rc   Nrè  )r€   r�   r‚   rƒ   rº   r  r  r  r  rˆ   r‰   rŠ   s   @r   r  r  ú  s%   ø‡ € à €Mò	GòGò7÷>ð >r   r  c                  ó   € \         # r   )Ú_queuerc   r   r   Ú	get_queuer  6  s   € Ü€Mr   c                   ó   € ] tR tRtRtRtR# )ÚQueueManageri9  z$manager class used by server processrc   N©r€   r�   r‚   rƒ   r„   rˆ   rc   r   r   r   r   9  s   † Ý.r   r   r  c                   ó   € ] tR tRtRtRtR# )ÚQueueManager2i=  z@manager class which specifies the same interface as QueueManagerrc   Nr!  rc   r   r   r#  r#  =  s   † ÝJr   r#  Ú	xmlrpclibc                   óT   a € ] tR tRt o Rt. ROt]R,          t]R 4       tR t	Rt
V tR# )	Ú_TestRemoteManageriD  Nrt  c                óº   € \        W\        \        R 7      pVP                  4        VP	                  4       pVP                  \        V P                  4      4       R# )©ÚaddressrÒ   Ú
serializerr	  N)r#  Ú
SERIALIZERr
  Úconnectr  rÇ   rõ   rF  ©r  r)  rÒ   r¸   r'   s   &&&  r   Ú_putterÚ_TestRemoteManager._putterN  sC   € äØ¼Ü-ô/ˆð 	�‰ÔØ×!Ñ!Ó#ˆà�	‰	”%˜Ÿ
™
Ó#Ö$r   c                óŒ  € \         P                  ! ^ 4      p\        \        P                  ^ 3V\
        \        R7      pVP                  4        V P                  VP                  4       V P                  V P                  VP                  V3R7      pRVn        VP                  4        \        VP                  V\
        \        R7      pVP                  4        VP!                  4       pV P#                  VP%                  4       V P&                  4       V P)                  \*        VP,                  \.        P0                  4       ?R# )é    r(  rñ   TN)rI   Úurandomr   r   ÚHOSTr+  r
  rç   r©  r  ræ   r.  r)  rÖ   r#  r,  r  ru   rú   r   rv   rr   rÇ   r”   r3  )rz   rÒ   r¸   rë   Úmanager2r'   s   &     r   Útest_remoteÚ_TestRemoteManager.test_remoteX  sé   € Ü—*’*˜R“.ˆäÜ"×'Ñ'¨Ð+°WÌÜ-ô/ˆð 	�‰ŒØ�‰˜×(Ñ(Ô)à�L‰L §¡°G·O±OÀWÐ3MˆLÓNˆØˆŒØ	�‰Œ	ä Ø—O‘O¨WÄÜ-ô/ˆð 	×ÑÔØ×"Ñ"Ó$ˆà×Ñ˜Ÿ™› d§k¡kÔ2ð 	×Ñœ) U§Y¡Y´·
±
Ô;ò r   rc   rè  )úhello worldNTç      @u   hallÃ¥ vÃ¤rldenu   Ð¿Ñ€Ð¸Ð²Ñ–Ñ‚ Ñ�Ð²Ñ–Ñ‚s   hallå världen)r€   r�   r‚   rƒ   rº   rF  r   r+  r.  r5  rˆ   r‰   rŠ   s   @r   r&  r&  D  s8   ø‡ € à €Mò€Fð
 �A�Y€Fàñ%ó ð%÷ð r   r&  Úsha256c                   ó6   a € ] tR tRt o ]R 4       tR tRtV tR# )Ú_TestManagerRestartiu  c                ó”   € \        W\        \        R 7      pVP                  4        VP	                  4       pVP                  R4       R# )r(  r7  N)r   r+  r
  r,  r  rÇ   r-  s   &&&  r   r.  Ú_TestManagerRestart._putterx  s:   € äØ¼Ü-ô/ˆð 	�‰ÔØ×!Ñ!Ó#ˆØ�	‰	�-Ö r   c                óJ  € \         P                  ! ^ 4      p\        \        P                  ^ 3V\
        \        R7      p VP                  4       pVP                  pVP                  P                  4        VP                  4        V P                  V P                  VP                  V3R7      pVP                  4        VP                  4        VP                  4       pV P!                  VP#                  4       R4       ?\%        VR4      '       d   VP'                  4        \        YA\
        \        R7      p TP                  4        T P)                  TP&                  4       R#   \%        TR4      '       d   TP'                  4        i i ; i  \*         d‹   pTP,                  \,        P.                  8w  d   h \0        P2                  ! R4       \        YA\
        \        R7      p\%        TR4      '       d"   T P)                  TP&                  4        Rp?R#  Rp?R# Rp?ii ; i)r1  r(  rñ   r7  r  rò  N)rI   r2  r   r   r3  r+  r
  Ú
get_serverr)  Úlistenerr$   rç   ræ   r.  rè   r  ru   rú   rq  r  r©  râ  ÚerrnoÚ
EADDRINUSEr”   r3  )rz   rÒ   r¸   Úsrvrr  rë   r'   rB  s   &       r   Útest_rapid_restartÚ&_TestManagerRestart.test_rapid_restart�  sš  € Ü—*’*˜R“.ˆÜÜ"×'Ñ'¨Ð+°WÜ!Ô4DôFˆð	#Ø×%Ñ%Ó'ˆDØ—<‘<ˆDð �M‰M×ÑÔ!Ø�M‰MŒOà—‘ D§L¡L¸¿¹ÈÐ7Q�ÓRˆAØ�G‰GŒIØ�F‰FŒHØ×%Ñ%Ó'ˆEØ×Ñ˜UŸY™Y›[¨-Ô8Øä�w 
×+Ò+Ø× Ñ Ô"äØ´jÜ-ô/ˆð	2Ø�M‰MŒOØ�O‰O˜G×,Ñ,Ö-øô �w 
×+Ò+Ø× Ñ Õ"ð ,ûô ô 
	2Ø�w‰wœ%×*Ñ*Ô*Øô �JŠJ�sŒOÜ"Ø¼*Ü!1ô3ˆGô �w 
×+Ò+Ø—‘ × 0Ñ 0×1Ò1õ ,ûð
	2ús%   ¿C E% Ä8+F Å%%F
ÆH"ÆA9HÈH"rc   N)	r€   r�   r‚   rƒ   r+  r.  rD  rˆ   r‰   rŠ   s   @r   r;  r;  u  s#   ø‡ € ð ñ!ó ð!÷'2ð '2r   r;  c                   ó,   a € ] tR tRt o R tR tRtV tR# )ÚFakeConnectioni«  c                ó   € R # r   rc   )rz   Úpayloads   &&r   r#  ÚFakeConnection.send¬  s   € Ùr   c                ó0   € R \         P                  ! 4       3# )z#ERROR)r…  r”  rÁ   s   &r   r  ÚFakeConnection.recv¯  s   € ØœŸš›Ð(Ð(r   rc   N)r€   r�   r‚   rƒ   r#  r  rˆ   r‰   rŠ   s   @r   rG  rG  «  s   ø‡ € ò÷)ð )r   rG  c                   ó8   a € ] tR tRt o R tR tR tR tRtV t	R# )ÚTestManagerExceptionsi²  c                ó:   € \         P                  ! 4       V n        R # r   )r!   rý  ÚmgrrÁ   s   &r   râ  ÚTestManagerExceptions.setUp´  s   € Ü"×*Ò*Ó,ˆŽr   c                ón   € V P                   P                  4        V P                   P                  4        R # r   ©rP  r  rè   rÁ   s   &r   ræ  ÚTestManagerExceptions.tearDown·  ó   € Ø�‰×ÑÔØ�‰�‰Žr   c                ó˜  € V P                   P                  4       p\        P                  ! 4       '       d5   \        P                  ! 4        V P                  \        P                  4        VP                  4        V P                  X! 4       R 4       R #   \        P                   d!   p\        P                  ! T4      p R p?LIR p?ii ; ir   )rP  r#   r´  Ú	isenabledÚdisabler©  Úenabler“  r…  r”  r²  r³  ru   )rz   r'   rB  r¶  s   &   r   Útest_queue_getÚ$TestManagerExceptions.test_queue_get»  s~   € Ø—‘—‘Ó ˆÜ�<Š<�>Š>Ü�JŠJŒLØ�O‰OœBŸI™IÔ&ð	 Ø×ÑÔð 	×Ñ™›˜tÖ$øô �}‰}ô 	 Ü—’˜Q“�Bûð	 ús   Á+B ÂC	Â)CÃC	c                ó–  € \         P                  ! 4       '       d5   \         P                  ! 4        V P                  \         P                  4        \
        P                  P                  \        4       R R 4       V P                  X! 4       R 4       R #   \        P                   d!   p\        P                  ! T4      p R p?LIR p?ii ; ir   )r´  rW  rX  r©  rY  r!   ÚmanagersÚdispatchrG  r…  r”  r²  r³  ru   )rz   rB  r¶  s   &  r   Útest_dispatchÚ#TestManagerExceptions.test_dispatchÆ  s}   € Ü�<Š<�>Š>Ü�JŠJŒLØ�O‰OœBŸI™IÔ&ð	 Ü×$Ñ$×-Ñ-¬nÓ.>ÀÀdÔKð 	×Ñ™›˜tÖ$øô �}‰}ô 	 Ü—’˜Q“�Bûð	 ús   Á)B ÂCÂ(CÃC)rP  N)
r€   r�   r‚   rƒ   râ  ræ  rZ  r_  rˆ   r‰   rŠ   s   @r   rN  rN  ²  s   ø‡ € ò-òò	%÷%ð %r   rN  Ú c            	       ó  a € ] tR tRt o Rt]R 4       tR tR tR t	R t
]R 4       t]RR l4       t]P                  ! ]R	4      R
 4       t]P                  ! ]R	4      ]P"                  ! ]P&                  R8H  R4      ]P"                  ! ]R8*  R4      ]P                  ! ]! ]R4      R4      R 4       4       4       4       t]R 4       t]P                  ! ]R	4      ]P"                  ! ]P&                  R8H  R4      R 4       4       tR tRtV tR# )Ú_TestConnectioniÖ  c                óŠ   € \        VP                  \        4       F  pVP                  V4       K  	  VP	                  4        R # r   )r6  Ú
recv_bytesÚSENTINELÚ
send_bytesr$   )r  r2  Úmsgs   && r   Ú_echoÚ_TestConnection._echoÚ  s,   € ä˜Ÿ™¬Ö2ˆCØ�O‰O˜CÖ ñ 3à�
‰
Žr   c                óª  € V P                  4       w  rV P                  V P                  V3R 7      pRVn        VP	                  4        . R
Op\        R4      pV^
,          p\        P                  ! R\        \        ^4      4      4      pV P                  R8X  d.   V P                  \        VP                  4       4      \        4       V P                  VP                  V4      R4       V P                  VP                  4       V4       V P                  VP!                  V4      R4       V P                  VP#                  4       V4       V P                  R8X  Ed   \        P                  ! R^ .^
,          4      p\        V4      ^ .^
\%        V4      ,
          ,          ,           p	V P                  VP!                  V4      R4       V P                  VP'                  V4      \%        V4      VP(                  ,          4       V P                  \        V4      V	4       \        P                  ! R^ .^
,          4      p^ .^,          \        V4      ,           ^ .^\%        V4      ,
          ,          ,           p	V P                  VP!                  V4      R4       V P                  VP'                  V^VP(                  ,          4      \%        V4      VP(                  ,          4       V P                  \        V4      V	4       \+        \        R4      4      pV P                  VP!                  V4      R4        VP'                  V4      p
V P-                  RV
,          4       \5        VP6                  4      pV P                  V! 4       R4       V P9                  VP:                  ^ 4       V P                  V! R4      R4       V P9                  VP:                  ^ 4       V P                  V! \<        4      R4       V P9                  VP:                  \<        4       VP                  R4       \>        P@                  ! R4       V P                  V! \<        4      R4       V P9                  VP:                  ^ 4       V P                  VP                  4       R4       \        R	4      R,          pVP!                  V4       V P                  VP#                  4       V4       VP!                  \B        4       VPE                  4        V P                  R8X  dy   V P                  VPF                  R4       V P                  VPH                  R4       V PK                  \L        VP                  4       V PK                  \L        VP"                  4       VPO                  4        R#   \.        P0                   d)   pT P                  TP2                  T34        Rp?ELrRp?ii ; i)rñ   TNr7  rš  r·   zexpected BufferTooShort, got %sFr   ÚX)rŸ   r8  Nz(                                        rH   i   )(r  ræ   ri  rÖ   rç   r   ry  rô   r—  rÏ   ru   rA  Úfilenor�  r#  r  rg  re  rÙ   Úrecv_bytes_intoÚitemsizeÚ	bytearrayrs   r!   ÚBufferTooShortrX   r�   r*  r¥   r�   r‡  r”   r3  rf  r$   ÚreadableÚwritablerv   ÚEOFErrorrè   )rz   r2  r2  rë   ro  rh  Úlongmsgrz  Úbufferr¡  rª   rB  r*  Úreally_big_msgs   &             r   Útest_connectionÚ_TestConnection.test_connectionà  s0  € ØŸ9™9›;Ñˆà�L‰L §
¡
°*°ˆLÓ?ˆØˆŒØ	�‰Œ	âˆÜ�MÓ"ˆØ˜•(ˆÜ�kŠk˜#œt¤E¨!£H›~Ó.ˆà�9‰9˜Ô#Ø×ÑœT $§+¡+£-Ó0´#Ô6à×Ñ˜Ÿ™ 3›¨Ô.Ø×Ñ˜Ÿ™› cÔ*à×Ñ˜Ÿ™¨Ó-¨tÔ4Ø×Ñ˜Ÿ™Ó*¨CÔ0à�9‰9˜Õ#Ü—[’[  q c¨"¥fÓ-ˆFÜ˜C“y A 3¨"¬s°3«x­-Õ#8Õ8ˆHØ×Ñ˜TŸ_™_¨SÓ1°4Ô8Ø×Ñ˜T×1Ñ1°&Ó9Ü  ›X¨¯©Õ7ô9à×ÑœT &›\¨8Ô4ä—[’[  q c¨"¥fÓ-ˆFØ�s˜Q•w¤ c£Õ*¨a¨S°F¼SÀ»XÕ4EÕ-FÕFˆHØ×Ñ˜TŸ_™_¨SÓ1°4Ô8Ø×Ñ˜T×1Ñ1°&¸!¸f¿o¹oÕ:MÓNÜ  ›X¨¯©Õ7ô9à×ÑœT &›\¨8Ô4äœu X›Ó/ˆFØ×Ñ˜TŸ_™_¨WÓ5°tÔ<ðCØ×*Ñ*¨6Ó2�ð —	‘	Ð;¸cÕAÔBä˜TŸY™YÓ'ˆà×Ñ™› Ô'Ø×$Ñ$ T§\¡\°1Ô5à×Ñ™˜b› 5Ô)Ø×$Ñ$ T§\¡\°1Ô5à×Ñ™œh›¨Ô/Ø×$Ñ$ T§\¡\´8Ô<à�	‰	�$ŒÜ�
Š
�2Œà×Ñ™œh›¨Ô.Ø×$Ñ$ T§\¡\°1Ô5à×Ñ˜Ÿ™› dÔ+ä˜s›Ð'7Õ8ˆØ�‰˜Ô'Ø×Ñ˜Ÿ™Ó*¨NÔ;à�‰œÔ!Ø×ÑÔà�9‰9˜Ô#Ø×Ñ˜TŸ]™]¨DÔ1Ø×Ñ˜TŸ]™]¨DÔ1Ø×Ñœh¨¯	©	Ô2Ø×Ñœh¨¯©Ô8à	�‰ŽøôK #×1Ñ1ô 5Ø× Ñ  §¡¨'¨×4Ò4ûð5ús   Ì2V ÖWÖ*W×Wc                óx  € V P                  R R7      w  rV P                  VP                  ^4      R4       V P                  VP                  4       ^4       V P                  R8X  dÔ   V P                  VP
                  R4       V P                  VP                  R 4       V P                  VP
                  R 4       V P                  VP                  R4       V P                  \        VP                  ^4       V P                  \        VP                  4       V P                  \        VP                  4       R# R# )Fr  Nr·   T)
r  ru   r#  r  rÏ   rr  rs  rv   râ  r*  )rz   ÚreaderÚwriters   &  r   Útest_duplex_falseÚ!_TestConnection.test_duplex_false/  sá   € ØŸ™¨%˜Ó0‰ˆØ×Ñ˜Ÿ™ Q›¨Ô.Ø×Ñ˜Ÿ™›¨Ô*Ø�9‰9˜Ô#Ø×Ñ˜VŸ_™_¨dÔ3Ø×Ñ˜VŸ_™_¨eÔ4Ø×Ñ˜VŸ_™_¨eÔ4Ø×Ñ˜VŸ_™_¨dÔ3Ø×Ñœg v§{¡{°AÔ6Ø×Ñœg v§{¡{Ô3Ø×Ñœg v§{¡{Ö3ñ $r   c                ó–  € V P                  4       w  rV P                  V P                  V3R 7      pRVn        VP	                  4        VP                  4        \        R4      pVP                  V4       V P                  VP                  4       V4       VP                  \        4       VP                  4        VP                  4        R# ©rñ   Tr9  N)r  ræ   ri  rÖ   rç   r$   r   rg  ru   re  rf  rè   )rz   r2  r2  rë   rh  s   &    r   Útest_spawn_closeÚ _TestConnection.test_spawn_close<  s�   € ð  Ÿ9™9›;Ñˆà�L‰L §
¡
°*°ˆLÓ?ˆØˆŒØ	�‰Œ	Ø×ÑÔä�G‹nˆØ�‰˜ÔØ×Ñ˜Ÿ™Ó*¨CÔ0à�‰œÔ!Ø�
‰
ŒØ	�‰Žr   c                ó>  € V P                   R 8w  d+   V P                  RP                  V P                   4      4       \        R4      pV P	                  4       w  r#VP                  V4       V P                  VP                  4       V4       VP                  V^4       V P                  VP                  4       VR,          4       VP                  V^^4       V P                  VP                  4       V^^ 4       VP                  V^4       V P                  VP                  4       \        R4      4       VP                  V^^ 4       V P                  VP                  4       \        R4      4       V P                  \        VP
                  V^4       V P                  \        VP
                  V^^4       V P                  \        VP
                  V^^4       V P                  \        VP
                  VR4       V P                  \        VP
                  V^R4       R# )r·   rÎ   Úabcdefghijklmnopqrstuvwxyz:rÆ   NNra  NrH   )
rÏ   rÐ   r´   r   r  rg  ru   re  rv   rL   )rz   rh  r£   r¤   s   &   r   Útest_sendbytesÚ_TestConnection.test_sendbytesQ  sˆ  € Ø�9‰9˜Ô#Ø�M‰MÐ7×>Ñ>¸t¿y¹yÓIÔJäÐ0Ó1ˆØ�y‰y‹{‰ˆà	�‰�SÔØ×Ñ˜Ÿ™›¨Ô-à	�‰�S˜!ÔØ×Ñ˜Ÿ™›¨¨R­Ô1à	�‰�S˜!˜QÔØ×Ñ˜Ÿ™›¨¨Q¨s¨Ô4à	�‰�S˜"ÔØ×Ñ˜Ÿ™›¬¨r«Ô3à	�‰�S˜"˜aÔ Ø×Ñ˜Ÿ™›¬¨r«Ô3à×Ñœ* a§l¡l°C¸Ô<à×Ñœ* a§l¡l°C¸¸QÔ?à×Ñœ* a§l¡l°C¸¸QÔ?à×Ñœ* a§l¡l°C¸Ô<à×Ñœ* a§l¡l°C¸¸BÖ?r   c                ó¦   €  \         P                  ! V4       R #   \         d,   pTP                  \        P                  8X  d    Rp?R# h Rp?ii ; i)TNF)rI   Úfstatrâ  rA  ÚEBADF)r  r_  rB  s   && r   Ú_is_fd_assignedÚ_TestConnection._is_fd_assignedq  s?   € ð	Ü�HŠH�RŒLñ øô ô 	Ø�w‰wœ%Ÿ+™+Ô%ÝØûð	ús   ‚ šA¥AÁ
AÁAc                óž  € V'       dR   \        ^ R4       FA  pV P                  V4      '       d   K  \        P                  ! VP	                  4       V4       KC  	  \
        P                  ! V4      p\        '       d&   \        P                  ! V\        P                  4      p\        P                  ! WR4       \        P                  ! V4       R# )r   r?   N)r—  rŠ  rI   Údup2rm  r   Úrecv_handleÚmsvcrtÚopen_osfhandler\  r²  r$   )r  r2  ÚdataÚcreate_dummy_fdsrš  r_  s   &&&&  r   Ú_writefdÚ_TestConnection._writefd|  s~   € çÜ˜1˜c–]�Ø×*Ñ*¨1×-Ô-Ü—G’G˜DŸK™K›M¨1Ö-ñ #ô ×"Ò" 4Ó(ˆß‹6Ü×&Ò& r¬2¯;©;Ó7ˆBÜ
�Š�ÔÜ
�Š�Žr   ú$test needs multiprocessing.reductionc                ó:  € V P                   R 8w  d   V P                  R4       V P                  RR7      w  rV P                  V P                  VR3R7      pRVn        VP                  4        V P                  \        P                  \        P                  4       \        \        P                  R4      ;_uu_ 4       pVP                  4       p\        '       d   \        P                  ! V4      p\        P                   ! WVP"                  4       RRR4       VP%                  4        \        \        P                  R4      ;_uu_ 4       pV P'                  VP)                  4       R4       RRR4       R#   + '       g   i     Lm; i  + '       g   i     R# ; i)	r·   úonly makes sense with processesTr  s   foorñ   ÚwbNÚrb)rÏ   rÐ   r  ræ   r“  rÖ   rç   r©  r   rP  rO  rR  rm  r�  Úget_osfhandler   Úsend_handler  rè   ru   rS  )rz   r2  r2  rë   rU  r_  s   &     r   Útest_fd_transferÚ _TestConnection.test_fd_transferˆ  s  € à�9‰9˜Ô#Ø�M‰MÐ;Ô<ØŸ9™9¨D˜9Ó1Ñˆà�L‰L §¡°ZÀÐ4HˆLÓIˆØˆŒØ	�‰Œ	Ø�‰œ	×(Ñ(¬)×*:Ñ*:Ô;Ü”)×"Ñ" D×)Ô)¨QØ—‘“ˆBß‹vÜ×)Ò)¨"Ó-�Ü×!Ò! $¨A¯E©EÔ2÷	 *ð
 	
�‰ŒÜ”)×"Ñ" D×)Ô)¨QØ×Ñ˜QŸV™V›X vÔ.÷ *Ñ)÷ *×)ú÷ *×)Ð)ús   Â=AE6Å!F	Å6F	Æ	F	r9   ú*test semantics don't make sense on Windowsr?   z)largest assignable fd number is too smallr�  ztest needs os.dup2()c                ó  € V P                   R 8w  d   V P                  R4       V P                  RR7      w  rV P                  V P                  VRR3R7      pRVn        VP                  4        V P                  \        P                  \        P                  4       \        \        P                  R4      ;_uu_ 4       pVP                  4       p\        R\        4       F  pV P                  V4      '       d   K   M	  V P!                  R4       \"        P$                  ! VX4        \&        P(                  ! WVP*                  4       \"        P,                  ! V4        R	R	R	4       VP/                  4        \        \        P                  R
4      ;_uu_ 4       pV P1                  VP3                  4       R4       R	R	R	4       R	#   \"        P,                  ! T4       i ; i  + '       g   i     Lˆ; i  + '       g   i     R	# ; i)r·   r—  Tr  s   barrñ   r˜  r?   z2could not find an unassigned large file descriptorNr™  )rÏ   rÐ   r  ræ   r“  rÖ   rç   r©  r   rP  rO  rR  rm  r—  ÚMAXFDrŠ  rs   rI   r�  r   r›  r  r$   rè   ru   rS  )rz   r2  r2  rë   rU  r_  Únewfds   &      r   Útest_large_fd_transferÚ&_TestConnection.test_large_fd_transfer›  sd  € ð �9‰9˜Ô#Ø�M‰MÐ;Ô<ØŸ9™9¨D˜9Ó1Ñˆà�L‰L §¡°ZÀÈÐ4NˆLÓOˆØˆŒØ	�‰Œ	Ø�‰œ	×(Ñ(¬)×*:Ñ*:Ô;Ü”)×"Ñ" D×)Ô)¨QØ—‘“ˆBÜ˜s¤EÖ*�Ø×+Ñ+¨E×2Ô2Ùñ +ð —	‘	ÐNÔOÜ�GŠG�B˜Ôð Ü×%Ò% d°1·5±5Ô9ä—’˜•÷ *ð 	
�‰ŒÜ”)×"Ñ" D×)Ô)¨QØ×Ñ˜QŸV™V›X vÔ.÷ *Ñ)øô —’˜•ú÷ *×)ú÷ *×)Ð)ús6   Â>8G Ã;,G Ä(!GÅ	G Æ!G3ÇGÇG Ç G0	Ç3H	c                óP   € \         P                  ! VP                  4       R 4       R# )ó    N)rI   r²  rm  ©rz   r2  s   &&r   Ú_send_data_without_fdÚ%_TestConnection._send_data_without_fd¼  s   € ä
�Š�—‘“ Ö&r   zdoesn't make sense on Windowsc                óF  € V P                   R 8w  d   V P                  R4       V P                  RR7      w  rV P                  V P                  V3R7      pRVn        VP                  4        V P                  \        \        P                  V4       VP                  4        R# )r·   r—  Tr  rñ   N)rÏ   rÐ   r  ræ   r§  rÖ   rç   rv   rn  r   rŽ  rè   ©rz   r2  r2  rë   s   &   r   Útest_missing_fd_transferÚ(_TestConnection.test_missing_fd_transferÀ  s{   € ð
 �9‰9˜Ô#Ø�M‰MÐ;Ô<ØŸ9™9¨D˜9Ó1Ñˆà�L‰L × :Ñ :À*ÀˆLÓOˆØˆŒØ	�‰Œ	Ø×Ñœ,¬	×(=Ñ(=¸tÔDØ	�‰Žr   c           	     óÄ  € V P                  4       w  rT;_uu_ 4        T;_uu_ 4        VP                  R 4       V P                  VP                  4       R 4       V P                  R8X  d7   V P                  VP                  4       V P                  VP                  4       RRR4       RRR4       V P                  R8X  dy   V P                  VP                  4       V P                  VP                  4       V P                  \        VP                  4       V P                  \        VP                  4       R# R#   + '       g   i     L£; i  + '       g   i     L®; i)éÁ  r·   N)
r  r#  ru   r  rÏ   rÕ   ÚclosedrÓ   rv   râ  r¢   s   &  r   rt  Ú_TestConnection.test_contextÏ  sØ   € Ø�y‰y‹{‰ˆçŠQ—’Ø�F‰F�4ŒLØ×Ñ˜QŸV™V›X tÔ,Ø�y‰y˜KÔ'Ø× Ñ  §¡Ô*Ø× Ñ  §¡Ô*÷ �Qð �9‰9˜Ô#Ø�O‰O˜AŸH™HÔ%Ø�O‰O˜AŸH™HÔ%Ø×Ñœg q§v¡vÔ.Ø×Ñœg q§v¡vÖ.ñ	 $÷ —ú�Q�Qús#   �E¨A9D<	Â!EÄ<EÅEÅE	rc   Nr(  ri  )r€   r�   r‚   rƒ   rº   r+  ri  rx  r}  r�  r…  rŠ  r“  rM   r,  ÚHAS_REDUCTIONrœ  r…   r†   r‡   r   rq  rI   r¢  r§  r«  rt  rˆ   r‰   rŠ   s   @r   rc  rc  Ö  s]  ø‡ € à,€Màñó ðò
Mò^4òò*@ð@ ñó ðð ó	ó ð	ð ×Ò˜Ð(NÓOñ/ó Pð/ð$ ×Ò˜Ð(NÓOØ‡_‚_�S—\‘\ WÑ,ØAóCà‡_‚_�U˜c‘\Ø@óBà×Ò™  VÓ,Ø/ó1ñ/ó1óBóCó Pð/ð4 ñ'ó ð'ð ×Ò˜Ð(NÓOØ‡_‚_�S—\‘\ WÑ,Ð.MÓNñó Oó Pð÷/ð /r   rc  c                   ó|   a € ] tR tRt o R	tR tR tR t]P                  ! ]
P                  R4      R 4       tRtV tR# )
Ú_TestListeneriß  c                ó  € V P                   P                   Fp  pV P                   P                  VR 7      pV P                  VP                  4       V P                  \        V P                   P                  VP                  V4       Kr  	  R# ©©ÚfamilyN)r  ÚfamiliesÚListenerr©  r$   rv   râ  r)  )rz   r·  rî  s   &  r   Útest_multiple_bindÚ _TestListener.test_multiple_bindã  sb   € Ø—o‘o×.Ô.ˆFØ—‘×(Ñ(°Ð(Ó7ˆAØ�O‰O˜AŸG™GÔ$Ø×Ñœg t§¡×'?Ñ'?ØŸi™i¨ö1ó /r   c                óD  € V P                   P                  4       ;_uu_ 4       pV P                   P                  VP                  4      ;_uu_ 4       pVP	                  4       ;_uu_ 4       pVP                  R 4       V P                  VP                  4       R 4       RRR4       RRR4       RRR4       V P                  R8X  d#   V P                  \        XP                  4       R# R#   + '       g   i     LU; i  + '       g   i     L`; i  + '       g   i     Lk; i)r®  Nr·   ©r  r¹  r  r)  Úacceptr#  ru   r  rÏ   rv   râ  )rz   rî  rÉ   rg  s   &   r   rt  Ú_TestListener.test_contextê  s°   € Ø�_‰_×%Ñ%×'Ô'¨1Ø—‘×'Ñ'¨¯	©	×2Ô2°aØ—X‘X—Z”Z 1Ø—F‘F˜4”LØ×$Ñ$ Q§V¡V£X¨tÔ4÷  ÷ 3÷ (ð �9‰9˜Ô#Ø×Ñœg q§x¡xÖ0ñ $÷	  —Zú÷ 3×2ú÷ (×'ús;   £.DÁC<	Á*2C)ÂC<	Â$DÃ)C9Ã4C<	Ã<DÄDÄD	c           	     ó´  a € R  pV 3R lpRpS P                   P                  VR7      ;_uu_ 4       p\        P                  ! W$P                  V3R7      pVP                  4         VP                  4       ;_uu_ 4       pS P                  VP                  4       R4       RRR4       VP                  4         RRR4       S P                  R8X  d9   S P                  \        4      ;_uu_ 4        XP                  4        RRR4       R# R#   + '       g   i     Lt; i  TP                  4        i ; i  + '       g   i     Lƒ; i  + '       g   i     R# ; i)c                  ó   € \        R 4      h)zConnection took too long...rm  re  s   *r   ro  Ú1_TestListener.test_empty_authkey.<locals>.handlerö  s   € ÜÐ<Ó=Ð=r   c                 ób   <€ SP                   P                  WR 7      pVP                  R4       R# )r  r®  N)r  r  r#  )r  rÒ   r  rz   s   && €r   r9  Ú-_TestListener.test_empty_authkey.<locals>.runù  s&   ø€ Ø—_‘_×+Ñ+¨DÐ+ÓBˆFØ�K‰K˜Ör   r   r  rñ   r®  Nr·   )r  r¹  rG  rß  r)  rç   r¾  ru   r  rè   rÏ   rv   râ  )rz   ro  r9  rª  r@  Úthreadrg  s   f      r   Útest_empty_authkeyÚ _TestListener.test_empty_authkeyô  sñ   ø€ ò	>õ	ð ˆà�_‰_×%Ñ%¨cÐ%×2Ô2°hÜ×%Ò%¨S×8HÑ8HÈ#Ð7NÔOˆFØ�L‰LŒNðØ—_‘_×&Ô&¨!Ø×$Ñ$ Q§V¡V£X¨tÔ4÷ 'ð —‘•÷ 3ð �9‰9˜Ô#Ø×"Ñ"¤7×+Õ+Ø—‘Ô!÷ ,Ñ+ñ $÷ '×&ûð —‘•ú÷ 3×2ú÷ ,×+Ð+úsG   ±4D3Á&DÁ>!D	ÂDÂ'D3Ã.EÄDÄDÄD0Ä0D3Ä3E	ÅE	z"test needs abstract socket supportc                óF  € V P                   P                  R 4      ;_uu_ 4       pV P                   P                  VP                  4      ;_uu_ 4       pVP	                  4       ;_uu_ 4       pVP                  R4       V P                  VP                  4       R4       RRR4       RRR4       RRR4       V P                  R8X  d#   V P                  \        XP                  4       R# R#   + '       g   i     LU; i  + '       g   i     L`; i  + '       g   i     Lk; i)z
 somethingr®  Nr·   r½  )rz   r@  r  rg  s   &   r   Útest_abstract_socketÚ"_TestListener.test_abstract_socket  sº   € ð �_‰_×%Ñ% m×4Ô4¸Ø—‘×'Ñ'¨×(8Ñ(8×9Ô9¸VØ—_‘_×&Ô&¨!Ø—K‘K Ô%Ø×$Ñ$ Q§V¡V£X¨tÔ4÷ '÷ :÷ 5ð �9‰9˜Ô#Ø×Ñœg x§¡Ö7ñ $÷	 '×&ú÷ :×9ú÷ 5×4ús;   ¤.DÁC=	Á+2C*ÂC=	Â%DÃ*C:Ã5C=	Ã=DÄDÄD 	rc   Nrp  )r€   r�   r‚   rƒ   rº   rº  rt  rÆ  rM   r,  r   Úabstract_sockets_supportedrÉ  rˆ   r‰   rŠ   s   @r   r³  r³  ß  sC   ø‡ € à"€Mò1ò1ò"ð0 ×Ò˜×8Ñ8Ø=ó?ñ8ó?ö8r   r³  c                   óF   a € ] tR tRt o Rt]R 4       tR tR tR t	Rt
V tR# )	Ú_TestListenerClienti  c                ó~   € V P                   P                  V4      pVP                  R 4       VP                  4        R# )r9  N)r  r  r#  r$   )r  r)  r2  s   && r   r	  Ú_TestListenerClient._test  s+   € à�~‰~×$Ñ$ WÓ-ˆØ�	‰	�'ÔØ�
‰
Žr   c                ó–  € V P                   P                   F®  pV P                   P                  VR 7      pV P                  V P                  VP
                  3R7      pRVn        VP                  4        VP                  4       pV P                  VP                  4       R4       VP                  4        VP                  4        K°  	  R# )r¶  rñ   Tr9  N)r  r¸  r¹  ræ   r	  r)  rÖ   rç   r¾  ru   r  rè   r$   )rz   r·  rî  rë   r2  s   &    r   Útest_listener_clientÚ(_TestListenerClient.test_listener_client#  sŒ   € Ø—o‘o×.Ô.ˆFØ—‘×(Ñ(°Ð(Ó7ˆAØ—‘ D§J¡J°a·i±i°\�ÓBˆAØˆAŒHØ�G‰GŒIØ—8‘8“:ˆDØ×Ñ˜TŸY™Y›[¨'Ô2Ø�F‰FŒHØ�G‰GŽIó /r   c                ó¤  € V P                   P                  4       pV P                  V P                  VP                  3R 7      pRVn        VP                  4        \        P                  ! ^4       VP                  4       pV P                  VP                  4       R4       VP                  4        VP                  4        VP                  4        R# r€  )r  r¹  ræ   r	  r)  rÖ   rç   r”   r3  r¾  ru   r  r$   rè   )rz   rî  rë   r2  s   &   r   Útest_issue14725Ú#_TestListenerClient.test_issue14725.  s‰   € Ø�O‰O×$Ñ$Ó&ˆØ�L‰L §
¡
°!·)±)°ˆLÓ>ˆØˆŒØ	�‰Œ	Ü�
Š
�1Œð
 �x‰x‹zˆØ×Ñ˜Ÿ™› gÔ.Ø�
‰
ŒØ	�‰ŒØ	�‰Ž	r   c                ó¤  € V P                   P                   Fµ  pV P                   P                  VR 7      pV P                   P                  VP                  4      pVP                  4       pVP                  R4       V P                  VP                  ^4      4       VP                  4        VP                  4        VP                  4        K·  	  R# )r¶  ó   helloN)
r  r¸  r¹  r  r)  r¾  rg  rÓ   r*  r$   )rz   Úfamrî  rÉ   r£   s   &    r   Útest_issue16955Ú#_TestListenerClient.test_issue16955>  s‹   € Ø—?‘?×+Ô+ˆCØ—‘×(Ñ(°Ð(Ó4ˆAØ—‘×&Ñ& q§y¡yÓ1ˆAØ—‘“
ˆAØ�L‰L˜Ô"Ø�O‰O˜AŸF™F 1›IÔ&Ø�G‰GŒIØ�G‰GŒIØ�G‰GŽIó ,r   rc   Nr(  )r€   r�   r‚   rƒ   rº   r+  r	  rÑ  rÔ  rÙ  rˆ   r‰   rŠ   s   @r   rÍ  rÍ    s0   ø‡ € à,€Màñó ðò
	ò÷ 	ð 	r   rÍ  c                   ól   a € ] tR tRt o RtR t]R 4       tR t]R 4       t	R t
]R 4       tR tR	tV tR
# )Ú	_TestPolliI  c                ó  € V P                  4       w  rV P                  VP                  4       R 4       VP                  R4       V P                  VP                  4       R4       V P                  VP                  4       R4       R# )Fr   TN)r  ru   r*  rg  r¢   s   &  r   Útest_empty_stringÚ_TestPoll.test_empty_stringM  s]   € Ø�y‰y‹{‰ˆØ×Ñ˜Ÿ™› 5Ô)Ø	�‰�SÔØ×Ñ˜Ÿ™› 4Ô(Ø×Ñ˜Ÿ™› 4Ö(r   c                ó†   € V F*  p\         P                  ! R 4       VP                  V4       K,  	  VP                  4        R# ©r   N)r”   r3  rg  r$   )r  r2  Ústringsr   s   &&& r   Ú_child_stringsÚ_TestPoll._child_stringsT  s.   € ãˆAÜ�JŠJ�sŒOØ�O‰O˜AÖñ ð 	�
‰
Žr   c                óT  € RpV P                  4       w  r#V P                  V P                  W13R7      pVP                  4        V FO  p\	        ^È4       F  pVP                  R4      '       g   K   M	  VP                  4       pV P                  WW4       KQ  	  VP                  4        R# )r×  rñ   r½  N)r×  r   ó   aó   br   s   byer   s   lop)	r  ræ   rã  rç   r—  r*  re  ru   rè   )rz   râ  r£   r¤   rë   r   rš  r<  s   &       r   Útest_stringsÚ_TestPoll.test_strings[  s…   € ØGˆØ�y‰y‹{‰ˆØ�L‰L × 3Ñ 3¸1¸,ˆLÓGˆØ	�‰Œ	ãˆAÜ˜3–Z�Ø—6‘6˜$—<”<Ùñ  ð —‘“ˆAØ×Ñ˜QÖ"ñ ð 	
�‰Žr   c                ó(   € VP                  ^4       R# rÅ   )r*  )r  rs  s   &&r   Ú_child_boundariesÚ_TestPoll._child_boundariesj  s   € ð 	
�‰ˆqŽ	r   c                óp  € V P                  R 4      w  rV P                  V P                  V3R7      pVP                  4        \        P
                  ! ^4       RR.pV F  pVP                  V4       K  	  VP                  4        VP                  4        V P                  VP                  4       V4       R# )Frñ   s   firsts   secondN)r  ræ   rë  rç   r”   r3  rg  r$   rè   rw   re  )rz   rs  rZ  rë   rr  r¦  s   &     r   Útest_boundariesÚ_TestPoll.test_boundariesr  s†   € Ø�y‰y˜Ó‰ˆØ�L‰L × 6Ñ 6¸a¸TˆLÓBˆØ	�‰Œ	Ü�
Š
�1ŒØ�yÐ!ˆÛˆCØ�L‰L˜Öñ à	�‰Œ	Ø	�‰ŒØ�‰�a—l‘l“n aÖ(r   c                ól   € VP                  R 4       VP                  R4       VP                  R4       R# )ræ  rç  ó   cdN)rg  )r  r¤   s   &&r   Ú_child_dont_mergeÚ_TestPoll._child_dont_merge~  s&   € à	�‰�TÔØ	�‰�TÔØ	�‰�UÖr   c                ó4  € V P                  4       w  rV P                  VP                  R 4      R4       V P                  VP                  R4      R4       V P                  V P                  V3R7      pVP                  4        V P                  VP                  4       R4       V P                  VP                  R4      R4       V P                  VP                  R4      R4       V P                  VP                  4       R4       V P                  VP                  R4      R4       V P                  VP                  R4      R4       V P                  VP                  R 4      R4       V P                  VP                  4       R4       VP                  4        R	# )
r;   Fr   rñ   ræ  rò  Trç  rñ  N)r  ru   r*  ræ   rò  rç   re  rè   )rz   r£   r¤   rë   s   &   r   Útest_dont_mergeÚ_TestPoll.test_dont_merge„  s%  € Ø�y‰y‹{‰ˆØ×Ñ˜Ÿ™ › eÔ,Ø×Ñ˜Ÿ™ › eÔ,à�L‰L × 6Ñ 6¸a¸TˆLÓBˆØ	�‰Œ	à×Ñ˜Ÿ™›¨Ô.Ø×Ñ˜Ÿ™ › dÔ+Ø×Ñ˜Ÿ™ › dÔ+Ø×Ñ˜Ÿ™›¨Ô.Ø×Ñ˜Ÿ™ › dÔ+Ø×Ñ˜Ÿ™ › dÔ+Ø×Ñ˜Ÿ™ › dÔ+Ø×Ñ˜Ÿ™›¨Ô/à	�‰Žr   rc   Nr(  )r€   r�   r‚   rƒ   rº   rÞ  r+  rã  rè  rë  rî  rò  rõ  rˆ   r‰   rŠ   s   @r   rÜ  rÜ  I  s_   ø‡ € à,€Mò)ð ñó ðòð ñó ðò
)ð ñó ð÷
ð r   rÜ  r•  c                   óp   a € ] tR tRt o R
t]R 4       t]R 4       t]R 4       tR t	]R 4       t
R tRtV tR	# )Ú_TestPicklingConnectionsi›  c                óR   € ^ RI Hp VP                  \        P                  R7       R# )r   )Úresource_sharerr+   N)Úmultiprocessrú  r?  r   r+  )r  rú  s   & r   r  Ú&_TestPicklingConnections.tearDownClass¡  s   € å0Ø×Ñ¤W×%9Ñ%9ÐÖ:r   c                ó8  € V F{  pV P                   P                  VR 7      pVP                  VP                  4       VP	                  4       pVP                  V4       VP                  4        VP                  4        K}  	  \        P                  ! \        P                  ^ 34      pVP                  VP                  4       4       VP	                  4       w  rVVP                  V4       VP                  4        VP                  4        VP                  4        R# rµ  )r  r¹  r#  r)  r¾  r$   ÚsocketÚcreate_serverr   r3  Úgetsocknamer  )r  r2  r¸  rØ  rî  Únew_connr  s   &&&    r   Ú	_listenerÚ"_TestPicklingConnections._listener¦  sÁ   € ãˆCØ—‘×'Ñ'¨sÐ'Ó3ˆAØ�I‰I�a—i‘iÔ Ø—x‘x“zˆHØ�I‰I�hÔØ�N‰NÔØ�G‰GŽIñ ô × Ò ¤-×"4Ñ"4°aÐ!8Ó9ˆØ�	‰	�!—-‘-“/Ô"ØŸ™›‰ˆØ�	‰	�(ÔØ�‰ÔØ	�‰Œ	à�	‰	Žr   c                óÆ  € \        VP                  R 4       FO  w  r#V P                  P                  V4      pVP	                  VP                  4       4       VP                  4        KQ  	  VP                  4       w  r#\        P                  ! 4       pVP                  V4       VP                  VP                  4       4       VP                  4        VP                  4        R # r   )
r6  r  r  r  r#  r7  r$   rþ  r,  Úsendall)r  r2  r)  rh  r  s   &&   r   Ú_remoteÚ _TestPicklingConnections._remote¹  s’   € ä" 4§9¡9¨dÖ3‰NˆWØ—^‘^×*Ñ*¨7Ó3ˆFØ�K‰K˜Ÿ	™	›Ô$Ø�L‰LŽNñ 4ð
 —y‘y“{‰ˆÜ—’“ˆØ�‰�wÔØ�‰�s—y‘y“{Ô#Ø�‰Œà�
‰
Žr   c                ó®  € V P                   P                  pV P                  4       w  r#V P                  V P                  W13R 7      pRVn        VP                  4        VP                  4        V P                  4       w  rVV P                  V P                  V3R 7      pRVn        VP                  4        VP                  4        V F{  pRV,          P                  R4      p	VP                  4       p
VP                  W©34       VP                  4       pV P                  VP                  4       V	P                  4       4       K}  	  VP                  R4       \        R4      p	VP                  4       p
VP                  W©34       VP                  4       p. p VP                  ^d4      pV'       g   MVP                  V4       K.  RP!                  V4      pV P                  WÉP                  4       4       VP                  4        VP                  R4       VP                  4        VP                  4        VP!                  4        VP!                  4        R# )rñ   TzThis connection uses family %sÚasciiNz$This connection uses a normal socketr   )r  r¸  r  ræ   r  rÖ   rç   r$   r  r   r  r#  ru   r7  r   rŸ  rè   )rz   r¸  ÚlconnÚlconn0Úlpr  Úrconn0ÚrprØ  rh  r)  r  Úbufr   s   &             r   Útest_picklingÚ&_TestPicklingConnections.test_picklingÈ  s¬  € Ø—?‘?×+Ñ+ˆàŸ	™	›‰ˆØ�\‰\ §¡°vÐ6Hˆ\ÓIˆØˆŒ	Ø
�‰Œ
Ø�‰ŒàŸ	™	›‰ˆØ�\‰\ §¡°V°Iˆ\Ó>ˆØˆŒ	Ø
�‰Œ
Ø�‰ŒãˆCØ3°cÕ9×AÑAÀ'ÓJˆCØ—j‘j“lˆGØ�J‰J˜�~Ô&Ø—z‘z“|ˆHØ×Ñ˜XŸ]™]›_¨c¯i©i«kÖ:ñ ð 	�
‰
�4ÔäÐ:Ó;ˆØ—*‘*“,ˆØ�
‰
�G�>Ô"Ø—:‘:“<ˆØˆØØ—‘˜cÓ"ˆAßØØ�J‰J�qŽMØ�h‰h�s‹mˆØ×Ñ˜Ÿi™i›kÔ*Ø�‰Ôà�
‰
�4Ôà�‰ŒØ�‰Œà
�‰Œ	Ø
�‰Ž	r   c                óø   € VP                  4       pVP                  R 4       VP                  4        VP                  4       pVP                  4       pVP                  V^,          4       VP                  4        R# )úall is wellN)r  r#  r$   )r  r2  rZ  rs  rh  s   &&   r   Úchild_accessÚ%_TestPicklingConnections.child_accessö  sQ   € à�I‰I‹KˆØ	�‰ˆ}ÔØ	�‰Œ	à�I‰I‹KˆØ�f‰f‹hˆØ�	‰	�#�a•%Ôà�
‰
Žr   c                óŠ  € V P                  4       w  rV P                  V P                  V3R 7      pRVn        VP	                  4        VP                  4        V P                  RR7      w  rEVP                  V4       VP                  4        V P                  VP                  4       R4       VP                  4        V P                  RR7      w  rEVP                  V4       VP                  4        VP                  R4       VP                  4        V P                  VP                  4       R4       VP                  4        R# )rñ   TFr  r  ÚfoobarNÚfoobarfoobar)
r  ræ   r  rÖ   rç   r$   r#  ru   r  rè   )rz   r2  r2  rë   rs  rZ  s   &     r   Útest_accessÚ$_TestPicklingConnections.test_access  sç   € ð  Ÿ9™9›;ÑˆØ�L‰L × 1Ñ 1¸¸ˆLÓFˆØˆŒØ	�‰Œ	Ø×ÑÔà�y‰y ˆyÓ&‰ˆØ�	‰	�!ŒØ	�‰Œ	Ø×Ñ˜Ÿ™› =Ô1Ø	�‰Œ	à�y‰y ˆyÓ&‰ˆØ�	‰	�!ŒØ	�‰Œ	Ø	�‰ˆxÔØ	�‰Œ	Ø×Ñ˜Ÿ™› jÔ1à	�‰Žr   rc   Nrp  )r€   r�   r‚   rƒ   rº   r+  r  r  r  r  r  r  rˆ   r‰   rŠ   s   @r   rø  rø  ›  sj   ø‡ € ð #€Màñ;ó ð;ð ñó ðð$ ñó ðò,ð\ ñ	ó ð	÷ð r   rø  c                   óN   a a€ ] tR tRt oRtV 3R ltV 3R ltR tR tRt	Vt
V ;t# )Ú	_TestHeapi#  c                óì   <€ \         SV `  4        \        P                  P                  P
                  V n        \        P                  P                  4       \        P                  P                  n        R # r   )r  râ  r!   rž  rŸ  Ú_heapÚold_heapÚHeap©rz   r  s   &€r   râ  Ú_TestHeap.setUp'  sH   ø€ Ü‰‰Œä'×,Ñ,×:Ñ:×@Ñ@ˆŒÜ3B×3GÑ3G×3LÑ3LÓ3NŒ×Ñ×*Ñ*Ö0r   c                óv   <€ V P                   \        P                  P                  n        \
        SV `  4        R # r   )r  r!   rž  rŸ  r  r  ræ  r!  s   &€r   ræ  Ú_TestHeap.tearDown-  s&   ø€ Ø37·=±=Œ×Ñ×*Ñ*Ô0Ü‰ÑÖr   c                óŠ  € R p^2p. p\         P                  P                  P                  p^ Vn        \        V4       Fƒ  p\        \        P                  ! ^ ^4      R,          4      p\         P                  P                  V4      pVP                  V4       \        V4      V8”  d   \        P                  ! V4      pW5 ?K…  	  VP                  ;_uu_ 4        . p^ p	^ p
\        VP                  P                  4       4       FR  pV FI  w  rÍpVP                  VP                   P#                  V4      WÞWí,
          R34       WžV,
          ,          p	KK  	  KT  	  VP$                  P'                  4        FS  w  rÏV FH  w  rÞVP                  VP                   P#                  V4      WÞWí,
          R34       W®V,
          ,          p
KJ  	  KU  	  V P)                  Wš,           \+        R VP                    4       4      4       VP-                  4        \        \        V4      ^,
          4       Fˆ  pW…,          R,          w  rÍpW…^,           ,          R,          w  pppVV8w  dA   V P)                  WäP                   V,          P.                  4       V P)                  V^ 4       Kv  V P)                  VV4       KŠ  	  RRR4       \        P0                  ! V4       V'       d   VP3                  4        K  V P)                  VP4                  VP6                  4       V P)                  \        VP8                  4      ^ 4       V P)                  \        VP                   4      ^ 4       V P)                  \        VP$                  4      ^ VP$                  4       V P)                  \        VP                  4      ^ 4       R#   + '       g   i     EL; i)éˆ  r6  ÚfreeÚoccupiedc              3   ó8   "  € T F  qP                   x € K  	  R # 5ir   ©r~  )r·  Úarenas   & r   r¸  Ú&_TestHeap.test_heap.<locals>.<genexpr>W  s   é € Ð F¹°§¦»ùs   ‚:Nrg  NN)r!   rž  rŸ  r  Ú_DISCARD_FREE_SPACE_LARGER_THANr—  r�  ÚrandomÚlognormvariaterŸ  rÙ   Ú	randranger¨  rô   Ú_len_to_seqrF  Ú_arenasr›  Ú_allocated_blocksré  ru   ÚsumÚsortr~  Úshuffler�  Ú_n_freesÚ
_n_mallocsÚ_pending_free_blocks)rz   Ú
iterationsÚ	maxblocksÚblocksrž  rš  r~  r¤   rÐ  r'  r(  rr  r+  rç   r?  Úarena_blocksÚnarenaÚnstartÚnstops   &                  r   Ú	test_heapÚ_TestHeap.test_heap1  sï  € Øˆ
Øˆ	Øˆô ×#Ñ#×1Ñ1×7Ñ7ˆØ/0ˆÔ,ô �zÖ"ˆAÜ”v×,Ò,¨Q°Ó2°TÕ9Ó:ˆDÜ×$Ñ$×2Ñ2°4Ó8ˆAØ�M‰M˜!ÔÜ�6‹{˜YÔ&Ü×$Ò$ YÓ/�Ø�IÚñ #ð �Z�Z‹ZØˆCØˆDØˆHÜ˜$×*Ñ*×1Ñ1Ó3Ö4�ã*+Ñ&�E $Ø—J‘J §¡× 2Ñ 2°5Ó 9¸5Ø $¥
¨Fð 4ô 5à %�ZÕ(’Dó +,ñ 5ð (,×'=Ñ'=×'CÑ'CÖ'EÑ#�ã#/‘K�EØ—J‘J §¡× 2Ñ 2°5Ó 9¸5Ø $¥
¨Jð 8ô 9à e¥Õ,’Hó $0ñ (Fð ×Ñ˜T�_Ü Ñ F¸¿ºÓ FÓFôHð �H‰HŒJäœ3˜s›8 A�:Ö&�Ø'*¥v¨b¥zÑ$�˜tØ*-°­c­(°2­,Ñ'�˜ Ø˜F”?à×$Ñ$ T¯<©<¸Õ+>×+CÑ+CÔDØ×$Ñ$ V¨QÖ/ð ×$Ñ$ T¨6Ö2ñ '÷- ôD 	�Š�vÔßØ�J‰JŽLà×Ñ˜Ÿ™¨¯©Ô8Ø×Ñœ˜T×6Ñ6Ó7¸Ô;Ø×Ñœ˜TŸ\™\Ó*¨AÔ.Ø×Ñœ˜T×3Ñ3Ó4°a¸×9OÑ9OÔPØ×Ñœ˜T×-Ñ-Ó.°Ö2÷U �ZˆZús   ÃGN1Î1O	c                óö  € \         P                  ! 4       '       g5   \         P                  ! 4        V P                  \         P                  4       \         P
                  ! 4       pV P                  ! \         P                  .VO5!   \         P                  ! ^
4       \        R4       FM  p\        P                  P                  ^4      p\        P                  P                  ^4      pWCn        W4n        KO  	  R# )rš  r&  N)r´  rW  rY  r©  rX  Úget_thresholdÚset_thresholdr—  r!   rž  rŸ  Úbuddy)rz   Ú
thresholdsrš  r£   r¤   s   &    r   Útest_free_from_gcÚ_TestHeap.test_free_from_gcq  s¡   € ô �|Š|�~Š~Ü�IŠIŒKØ�O‰OœBŸJ™JÔ'Ü×%Ò%Ó'ˆ
Ø�Šœ×(Ñ(Ð6¨:Ô6Ü
×Ò˜Ôô �t–ˆAÜ×$Ñ$×2Ñ2°1Ó5ˆAÜ×$Ñ$×2Ñ2°1Ó5ˆAàŒGØŽGó r   )r  rp  )r€   r�   r‚   rƒ   rº   râ  ræ  rA  rH  rˆ   r‰   r¦  r§  s   @@r   r  r  #  s%   ù‡ € à"€MõOõò>3÷@ò r   r  c                   ó,   € ] tR tRtR]3R]3R]3.tRtR# )Ú_Fooi‹  r<  r=  Úzrc   N)	r€   r�   r‚   rƒ   rC   rD   rE   Ú_fields_rˆ   rc   r   r   rK  rK  ‹  s   † à	ˆeˆØ	ˆhˆØ	ˆjÐð
„Hr   rK  c                   óP   a € ] tR tRt o R	tR t]R 4       tR
R ltR t	R t
RtV tR# )Ú_TestSharedCTypesi’  c                óD   € \         '       g   V P                  R 4       R# R# r?  r@  rÁ   s   &r   râ  Ú_TestSharedCTypes.setUp–  rB  r   c                ó�  € V;P                   ^,          un         V;P                   ^,          un         V;P                   ^,          un         V;P                  ^,          un        V;P                  ^,          un        V;P                   ^,          un         \        \	        V4      4       F  pWW;;,          ^,          uu&   K  	  R# r4  )r©   r<  r=  r—  rÙ   )r  r<  r=  rL  rß  rz  Ústringrš  s   &&&&&&& r   Ú_doubleÚ_TestSharedCTypes._doubleš  sn   € à	�Š�1��Ø	�Š�1��Ø	�Š�1��Ø�Š��
�Ø�Š��
�Ø�Š˜Õ�Ü”s˜3“x–ˆAØ�F�a�K�Fó !r   c           	     óv  € \        R ^VR7      p\        \        R
VR7      p\        \        RVR7      p\        \        ^^VR7      pV P	                  R\        \        ^
4      4      VR7      pV P	                  R^VR7      p\        R4      Vn        V P                  V P                  W#WEWg3R7      pRVn        VP                  4        VP                  4        V P                  VP                  ^4       V P                  VP                  R4       V P                  VP                  R4       V P                  VP                   ^4       V P                  VP"                  R4       \        ^
4       F"  p	V P                  Wi,          V	^,          4       K$  	  V P                  VP                  \        R4      4       R	# )rš  rU  rg  rÉ   r9  rñ   Tç      @Ú
hellohelloNgUUUUUUÕ?rj  gUUUUUUå?rk  )r   rD   rE   rK  rx  rô   r—  r   r©   ræ   rT  rÖ   rç   rè   ru   r¡   r<  r=  )
rz   rí  r<  r=  rL  rß  rz  rS  rë   rš  s
   &&        r   Útest_sharedctypesÚ#_TestSharedCTypes.test_sharedctypes¥  sN  € Ü�#�q˜tÔ$ˆÜ”(˜G¨$Ô/ˆÜ”*˜g¨DÔ1ˆÜ”D˜!˜Q TÔ*ˆØ�j‰j˜œd¤5¨£9›o°DˆjÓ9ˆØ—‘˜C ¨$�Ó/ˆÜ˜W“~ˆŒà�L‰L §¡°A¸!À#Ð3NˆLÓOˆØˆŒØ	�‰Œ	Ø	�‰Œà×Ñ˜Ÿ™ "Ô%Ø×Ñ˜qŸw™w¨Ô0Ø×Ñ˜Ÿ™ 'Ô*Ø×Ñ˜Ÿ™ Ô"Ø×Ñ˜sŸu™u cÔ*Ü�r–ˆAØ×"Ñ" 3¥6¨1¨Q­3Ö/ñ à×Ñ˜Ÿ™¤u¨\Ó':Ö;r   c                ó*   € V P                  R R7       R# )TrU  N)rY  rÁ   s   &r   Útest_synchronizeÚ"_TestSharedCTypes.test_synchronize¼  s   € Ø×Ñ DÐÖ)r   c                ó  € \        ^RR4      p\        V4      p^ Vn        ^ Vn        ^ Vn        V P                  VP                  ^4       V P                  VP                  R4       V P                  VP                  R4       R# )r±   r7   Nrj  )rK  r   r<  r=  rL  ru   r¡   )rz   rß  r  s   &  r   Ú	test_copyÚ_TestSharedCTypes.test_copy¿  sj   € Ü�1�c˜7Ó#ˆÜ�3‹iˆØˆŒØˆŒØˆŒØ×Ñ˜Ÿ™ Ô"Ø×Ñ˜sŸu™u cÔ*Ø×Ñ˜Ÿ™ Ö(r   rc   Nrp  ri  )r€   r�   r‚   rƒ   rº   râ  r+  rT  rY  r\  r_  rˆ   r‰   rŠ   s   @r   rO  rO  ’  s8   ø‡ € à"€Mò@ð ñó ðô<ò.*÷)ð )r   rO  c                ó   a € V 3R lpV# )z@Run given test using both resource tracker communication formatsc           
      ó^  <€ \         P                  pR Fn  pV P                  VR7      ;_uu_ 4        \        P                  P
                  P                  VRV4      ;_uu_ 4        S! V .VO5/ VB  RRR4       RRR4       Kp  	  R#   + '       g   i     L; i  + '       g   i     K˜  ; i)F)Úuse_simple_formatÚ_use_simple_formatN)FT)r1   Ú_resource_trackerrø   rM   r!  r"  r#  )rz   rX   rY   Útrackerrc  r�   s   &*,  €r   Ú_innerÚ0resource_tracker_format_subtests.<locals>._innerÌ  s�   ø€ Ü"×4Ñ4ˆÛ!,Ðà—‘Ð/@�×AÕAÜ—‘×#Ñ#×*Ñ*ØÐ1Ð3D÷Fõ Fñ �TÐ+˜DÒ+ FÒ+÷F÷ BÑAó "-÷F÷ Fú÷ B×AÐAús#   ±4BÁ%BÁ2BÂBÂBÂB,rc   )r�   rg  s   f r   Ú resource_tracker_format_subtestsri  Ê  s   ø€ õ,ð €Mr   z#requires multiprocess.shared_memoryc                   óB  a € ] tR tRt o Rt]R 4       tR t]P                  ! ]
P                  R8*  R4      R 4       tR t]P                  ! RR	4      R
 4       tR tR tR tR t]P                  ! ]P(                  R8g  R4      R 4       t]P                  ! ]P(                  R8g  R4      ]R 4       4       tR tR tR tR tR t]P                  ! ]P(                  R8g  R4      ]R 4       4       t]P                  ! ]P(                  R8g  R4      ]R 4       4       tRtV t R# )Ú_TestSharedMemoryi×  c                ó²   € \        V \        4      '       d   \        P                  ! V 4      pMT pWP                  R \        V4      % VP                  4        R # r   )r    rx   r   ÚSharedMemoryr  rÙ   r$   )Úshmem_name_or_objÚbinary_dataÚ	local_smss   && r   Ú!_attach_existing_shmem_then_writeÚ3_TestSharedMemory._attach_existing_shmem_then_writeÝ  sD   € äÐ'¬×-Ò-Ü%×2Ò2Ð3DÓE‰Ià)ˆIØ+6�‰Ð'”s˜;Ó'Ð(Ø�‰Ör   c                óL   € V\        \        P                  ! 4       4      ,           # r   )rx   rI   rÛ   )rz   Úprefixs   &&r   Ú_new_shm_nameÚ_TestSharedMemory._new_shm_nameæ  s   € ð œœBŸIšI›KÓ(Õ(Ð(r   i¤ zadded in 3.13.0a5c                ó\  € V P                  R 4      p\        P                  ! VRRR7      pV P                  VP                  4       V P                  \        4      ;_uu_ 4        \        P                  ! VR,           RRR7       RRR4       \        P                  '       dZ   VP                  p VR,           Vn        V P                  \        4      ;_uu_ 4        VP	                  4        RRR4       W2n        R# R#   + '       g   i     L�; i  + '       g   i     L-; i  Y2n        i ; i)Útest01_nullTé   ©Úcreater~  z aFN)	ru  r   rm  r©  rP  rv   rL   Ú
_USE_POSIXÚ_name)rz   Ú	name_tsmbÚsmsÚ	orig_names   &   r   Ú*test_shared_memory_name_with_embedded_nullÚ<_TestSharedMemory.test_shared_memory_name_with_embedded_nullì  sÎ   € à×&Ñ& }Ó5ˆ	Ü×(Ò(¨¸4ÀcÔJˆØ�‰˜Ÿ
™
Ô#Ø×Ñœz×*Õ*Ü×&Ò& y°5Õ'8ÀÈSÕQ÷ +ä×#×#Ð#ØŸ	™	ˆIð&Ø%¨Õ-�”	Ø×&Ñ&¤z×2Õ2Ø—J‘J”L÷ 3ð &–	ñ $÷ +×*ú÷ 3×2ûð &•	ús0   Á#!C=Â/+D# ÃDÃ+D# Ã=D	ÄD 	ÄD# Ä#D+c                ó  € V P                  R 4      p\        P                  ! VRRR7      pV P                  VP                  4       V P                  VP                  V4       V P                  VP                  R4       V P                  \        VP                  4      VP                  4       V P                  VP                  \        V4      4       V P                  \        VP                  4      \        V4      4       ^*VP                  ^ &   V P                  VP                  ^ ,          ^*4       \        P                  ! V4      pV P                  VP                  ^ ,          ^*4       VP                  4        \        P                  ! V^VP                  ,          R7      pV P                  VP                  ^VP                  ,          4       VP                  4        V P                  \         4      ;_uu_ 4        \        P                  ! RRR7       RRR4       V P                  \         4      ;_uu_ 4        \        P                  ! RR7       RRR4       \"        P$                  P'                  R4      ;_uu_ 4       p\        P(                  pV P                  R	4      V P                  R
4      .pV Uu. uF  q†V,           NK  	  ppWun        \        P                  ! R^R7      p	V P                  V	P                  4       V P                  V	P,                  V^ ,          4       Wun        \        P                  ! R^R7      p
V P                  V
P                  4       V P                  V
P,                  V^,          4       RRR4       \        P.                  '       dÅ   V P                  R4      p\        P                  ! VRRR7      pV P                  \0        4      ;_uu_ 4         V P                  VP                  R4       \        P                  ! V4      pVP	                  4        VP                  4        VP                  4        VP	                  4         RRR4       V P                  \2        4      ;_uu_ 4        \        P                  ! VRRR7      pRRR4       \        P.                  '       dX    ! R R\        P                  4      pV! V4      pV P                  VP                  VP                  4       VP                  4        V P                  \0        4      ;_uu_ 4        \        P                  ! R4      pVP	                  4        RRR4       VP                  4        R#   + '       g   i     ELc; i  + '       g   i     EL:; iu upi   + '       g   i     EL"; i  TP	                  4        i ; i  + '       g   i     ELq; i  + '       g   i     ELF; i  + '       g   i     L ; i)Útest01_tsmbTry  rz  r*  NF©r{  ú)multiprocess.shared_memory._make_filenameÚ	test01_fnÚ	test02_fnÚtest01_dblunlinkr&  c                   óP   € ] tR tRt]P
                  ]P                  ,          tRtR# )ÚO_TestSharedMemory.test_shared_memory_basics.<locals>.OptionalAttachSharedMemoryi^  rc   N)	r€   r�   r‚   rƒ   rI   r]  ÚO_RDWRÚ_flagsrˆ   rc   r   r   ÚOptionalAttachSharedMemoryr‹  ^  s   † ØŸ™ b§i¡iÕ/”r   rŽ  Útest01_notthereéþÿÿÿ)ru  r   rm  r©  rP  ru   r4   rŽ  r~  rÙ   r  rw   rx   r$   Ú
assertLessrv   rL   rM   r!  r"  Ú_SHM_NAME_PREFIXÚside_effectr}  r|  ÚFileNotFoundErrorÚFileExistsError)rz   r~  r  Úalso_smsÚsame_smsÚmock_make_filenameÚNAME_PREFIXÚnamesr4   Úshm1Úshm2Úname_dblunlinkÚsms_unoÚsms_duoÚthere_can_only_be_one_smsrŽ  Úok_if_exists_smsÚnonexisting_smss   &                 r   Útest_shared_memory_basicsÚ+_TestSharedMemory.test_shared_memory_basicsü  sI  € Ø×&Ñ& }Ó5ˆ	Ü×(Ò(¨¸4ÀcÔJˆØ�‰˜Ÿ
™
Ô#ð 	×Ñ˜Ÿ™ 9Ô-Ø×Ñ §¡¨#Ô.Ø×Ñ¤ C§G¡G£¨c¯h©hÔ7ð 	�‰�c—h‘h¤ C£Ô)Ø�‰”c˜#Ÿ(™(“m¤S¨£XÔ.ð ˆ�‰�‰
Ø×Ñ˜Ÿ™ � RÔ(ô !×-Ò-¨iÓ8ˆØ×Ñ˜Ÿ™ a�¨"Ô-Ø�‰Ôô !×-Ò-¨i¸bÀÇÁ½kÔJˆØ�‰˜Ÿ™ r¨#¯(©(¥{Ô3Ø�‰Ôð ×Ñœz×*Õ*Ü×&Ò&¨d¸Õ<÷ +ð ×Ñœz×*Õ*Ü×&Ò&¨eÕ4÷ +ô
 �]‰]× Ñ Ø7÷9ô 9Ø<Nä'×8Ñ8ˆKØ×'Ñ'¨Ó4°d×6HÑ6HÈÓ6UÐVˆEñ 5:Ó:±E¨D 4×'Ð'±EˆEÐ:à-2Ô*Ü ×-Ò-°TÀÔBˆDØ�O‰O˜DŸK™KÔ(Ø×Ñ˜TŸZ™Z¨¨q­Ô2à-2Ô*Ü ×-Ò-°TÀÔBˆDØ�O‰O˜DŸK™KÔ(Ø×Ñ˜TŸZ™Z¨¨q­Ô2÷#9ô& ×#×#Ð#ð "×/Ñ/Ð0BÓCˆNÜ#×0Ò0ØØØôˆGð
 ×"Ñ"Ô#4×5Õ5ð	%Ø×+Ñ+¨G¯L©L¸$Ô?ä+×8Ò8¸ÓH�GØ—N‘NÔ$Ø—M‘M”OØ—M‘M”Oð —N‘NÕ$÷ 6ð ×Ñœ×/Õ/ô )6×(BÒ(BØØØô)Ð%÷ 0ô ×#×#Ð#ô0¬]×-GÑ-Gô 0á9¸)ÓDÐØ×ÑÐ-×2Ñ2°C·H±HÔ=Ø×"Ñ"Ô$ð ×ÑÔ0×1Õ1Ü+×8Ò8Ð9JÓKˆOØ×"Ñ"Ô$÷ 2ð 	�	‰	Ž÷c +×*Ð*ú÷ +×*Ð*üò ;÷9÷ 9ð 9ûðT —N‘NÕ$ú÷ 6×5Ð5ú÷ 0×/Ð/ú÷0 2×1úst   Ç>U1È<VÊ7VÊ:VËB:VÏ*WÏ,A"V2ÑWÒWÔ0'W/Õ1V	ÖV	ÖVÖV/	Ö2W×W×W	×W,	×/W?	Tzfails with dill >= 0.3.5c                óš  € \         P                  P                  R 4      ;_uu_ 4       p\        P                  pV P                  R4      V P                  R4      .pV Uu. uF  qBV,           NK  	  ppW1n        \        P                  ! R^R7      pV P                  VP                  4       V P                  VP                  V^ ,          4       W1n        \        P                  ! R^R7      pV P                  VP                  4       V P                  VP                  V^,          4       RRR4       R# u upi   + '       g   i     R# ; i)r†  Ú	test03_fnÚ	test04_fnTrz  N)rM   r!  r"  r   r’  ru  r“  rm  r©  rP  ru   r}  )rz   r˜  r™  rš  r4   r›  rœ  s   &      r   Útest_shared_memory_recreateÚ-_TestSharedMemory.test_shared_memory_recreatel  s  € ô �]‰]× Ñ Ø7÷9ô 9Ø<Nä'×8Ñ8ˆKØ×'Ñ'¨Ó4°d×6HÑ6HÈÓ6UÐVˆEñ 5:Ó:±E¨D 4×'Ð'±EˆEÐ:à-2Ô*Ü ×-Ò-°TÀÔBˆDØ�O‰O˜DŸK™KÔ(Ø×Ñ˜TŸZ™Z¨¨q­Ô2à-2Ô*Ü ×-Ò-°TÀÔBˆDØ�O‰O˜DŸK™KÔ(Ø×Ñ˜TŸZ™Z¨¨q­Ô2÷#9ñ 9ùò ;÷9÷ 9ð 9ús   ¨7D9ÁD4Á0B:D9Ä4D9Ä9E
	c                óì  € V P                  \        4      ;_uu_ 4        \        P                  ! R RR7      pRRR4       V P                  \        4      ;_uu_ 4        \        P                  ! R ^ R7      pRRR4       V P                  \        4      ;_uu_ 4        \        P                  ! R R7      pRRR4       R#   + '       g   i     L�; i  + '       g   i     Lb; i  + '       g   i     R# ; i)Trz  Nr…  rH   )rv   rL   r   rm  )rz   Úsms_invalids   & r   Ú#test_invalid_shared_memory_creationÚ5_TestSharedMemory.test_invalid_shared_memory_creationƒ  s�   € à×Ñœz×*Õ*Ü'×4Ò4¸DÀrÔJˆK÷ +ð ×Ñœz×*Õ*Ü'×4Ò4¸DÀqÔIˆK÷ +ð ×Ñœz×*Õ*Ü'×4Ò4¸DÔAˆK÷ +Ñ*÷ +×*ú÷ +×*ú÷ +×*Ð*ús#   žB<ÁCÂC"Â<C	ÃC	Ã"C3	c           	     ó~  € \        \        P                  ^,           4       EF  pV P                  VR7      ;_uu_ 4        \        P
                  ! RRR7      pV P                  VP                  4       RVP                  R&   \        P                  ! W!R7      p\        P                  ! V4      pV P                  V\        P
                  4       V P                  VP                  VP                  4       V P                  \        VP                  R,          4      R4       V P                  \        VP                  R,          4      R4       RVP                  R&   V P                  \        VP                  R,          4      R4       V P                  \        VP                  R,          4      R4       R	VP                  R&   V P                  \        VP                  R,          4      R	4       V P                  \        VP                  R,          4      R	4       R
R
R
4       EK  	  R
#   + '       g   i     EK  ; i)rŸ   ©ÚprotoTry  rz  ó   pickleºr   r}  N©Úprotocols   newvals   oldvalN)r—  ÚpickleÚHIGHEST_PROTOCOLrø   r   rm  r©  rP  r  ÚdumpsÚloadsr×   ru   r4   rØ   )rz   r°  r  Úpickled_smsÚsms2s   &    r   Ú"test_shared_memory_pickle_unpickleÚ4_TestSharedMemory.test_shared_memory_pickle_unpickle�  s†  € Üœ6×2Ñ2°QÕ6×7ˆEØ—‘ E�×*Õ*Ü#×0Ò0¸À3ÔG�Ø—‘ §
¡
Ô+Ø(�—‘˜‘ô %Ÿlšl¨3Ô?�ô —|’| KÓ0�Ø×%Ñ% d¬M×,FÑ,FÔGØ× Ñ  §¡¨4¯9©9Ô5Ø× Ñ ¤ s§w¡w¨s¥|Ó!4°iÔ@Ø× Ñ ¤ t§x¡x°¥}Ó!5°yÔAð  )�—‘˜‘Ø× Ñ ¤ s§w¡w¨s¥|Ó!4°iÔ@Ø× Ñ ¤ t§x¡x°¥}Ó!5°yÔAà )�—‘˜‘Ø× Ñ ¤ s§w¡w¨s¥|Ó!4°iÔ@Ø× Ñ ¤ t§x¡x°¥}Ó!5°yÔA÷- +Ò*ó 8ß*×*Ñ*ús   ¿GH*È*H<c           
     ó  € \        \        P                  ^,           4       FÀ  pV P                  VR7      ;_uu_ 4        \        P
                  ! RRR7      pRVP                  R&   \        P                  ! W!R7      pVP                  4        VP                  4        V P                  \        4      ;_uu_ 4        \        P                  ! V4       RRR4       RRR4       KÂ  	  R#   + '       g   i     L; i  + '       g   i     Kê  ; i)	rŸ   r¯  Try  rz  r±  r²  r³  N)r—  rµ  r¶  rø   r   rm  r  r·  r$   rP  rv   r”  r¸  )rz   r°  r  r¹  s   &   r   Ú.test_shared_memory_pickle_unpickle_dead_objectÚ@_TestSharedMemory.test_shared_memory_pickle_unpickle_dead_objectª  s®   € Üœ6×2Ñ2°QÕ6Ö7ˆEØ—‘ E�×*Õ*Ü#×0Ò0¸À3ÔG�Ø(�—‘˜‘Ü$Ÿlšl¨3Ô?�ð —	‘	”Ø—
‘
”à×&Ñ&Ô'8×9Õ9Ü—L’L Ô-÷ :÷ +Ñ*ó 8÷ :×9ú÷ +×*Ð*ús$   ¾A<C:Â:C'ÃC:Ã'C7Ã2C:Ã:Dc                óh  € \         P                  ! R RR7      pV P                  VP                  4       V P	                  V P
                  VP                  R3R7      pR Vn        VP                  4        VP                  4        V P                  \        VP                  R,          4      R4       V P	                  V P
                  VR3R7      pR Vn        VP                  4        VP                  4        V P                  \        VP                  R,          4      R4       VP                  4        R# )Try  rz  s   howdyrñ   :NrÆ   Ns   HELLON)r   rm  r©  rP  ræ   rq  r4   rÖ   rç   rè   ru   rØ   r  r$   )rz   r  rë   s   &  r   Ú#test_shared_memory_across_processesÚ5_TestSharedMemory.test_shared_memory_across_processes¹  sî   € ô ×(Ò(°¸3Ô?ˆØ�‰˜Ÿ
™
Ô#ð �L‰LØ×9Ñ9Ø—(‘(˜HÐ%ð ó 
ˆð ˆŒØ	�‰Œ	Ø	�‰ŒØ×Ñœ˜sŸw™w r�{Ó+¨XÔ6ð �L‰LØ×9Ñ9Ø�x�ð ó 
ˆð ˆŒØ	�‰Œ	Ø	�‰ŒØ×Ñœ˜sŸw™w r�{Ó+¨XÔ6à�	‰	Žr   r0   z#not feasible in non-posix platformsc                ó>  € \         P                  P                  4       pVP                  4        VP	                  \        ^
4      4      p\        P                  ! VP                  P                  \        P                  4       VP	                  \        ^
4      4      pV P                  \        4      ;_uu_ 4        \        P                  ! \        P                  ! 4       \        P                  4       RRR4       VP                  4        R#   + '       g   i     L"; ir™  )r!   r]  ÚSharedMemoryManagerrç   ÚShareableListr—  rI   r‡  r  r  r`  ra  rv   rˆ  rÛ   r  )rz   ÚsmmÚslÚsl2s   &   r   Ú4test_shared_memory_SharedMemoryServer_ignores_sigintÚF_TestSharedMemory.test_shared_memory_SharedMemoryServer_ignores_sigintÕ  s®   € ô ×&Ñ&×:Ñ:Ó<ˆØ�	‰	Œð ×Ñœu R›yÓ)ˆô
 	�Š�—‘× Ñ ¤&§-¡-Ô0à×Ñ¤ b£	Ó*ˆð ×ÑÔ0×1Õ1Ü�GŠG”B—I’I“K¤§¡Ô/÷ 2ð 	�‰Ž÷ 2×1ús   Â99DÄD	zresource_tracker is posix onlyc                ó’   € R p\         P                  P                  P                  ! RV3/ \        B w  r#pV P                  V4       R# )zÞif 1:
            from multiprocessing.managers import SharedMemoryManager


            smm = SharedMemoryManager()
            smm.start()
            sl = smm.ShareableList(range(10))
            smm.shutdown()
        rÞ  N)rÅ  r   r   rß  rà  rÕ   rá  s   &    r   Ú>test_shared_memory_SharedMemoryManager_reuses_resource_trackerÚP_TestSharedMemory.test_shared_memory_SharedMemoryManager_reuses_resource_trackerí  sA   € ð
ˆô —|‘|×1Ñ1×BÒBÀ4ÈÑTÔPSÑT‰ˆ�ð 	×Ñ˜Ör   c                óÒ  € \         P                  P                  4       pV P                  \        4      ;_uu_ 4        VP                  ^	R7       RRR4       VP                  4        \        ^^
4       Uu. uF  q!P                  \        V4      4      NK  	  pp\        ^ ^€^4       Uu. uF  qAP                  VR7      NK  	  pp\        P                  ! V^ ,          P                  P                  R7      pV P                  \        V4      ^4       \        P
                  ! V^ ,          P                  R7      pV P                  \        VP                  4      ^ 4       V^ ,          P                  pVP!                  4        \"        P$                  R8w  d>   V P                  \&        4      ;_uu_ 4        \        P
                  ! VR7      p	RRR4       \         P                  P                  4       ;_uu_ 4       p
V
P                  R4      pV
P                  ^€R7      pVP                  P                  pRRR4       \"        P$                  R8w  d@   V P                  \&        4      ;_uu_ 4        \        P                  ! VR7      pRRR4       R# R#   + '       g   i     ELK; iu upi u upi   + '       g   i     Lì; i  + '       g   i     L—; i  + '       g   i     R# ; i)rŽ  r*  Nr•  r9   Úhowdy)r!   r]  rÄ  rv   rL   rm  rç   r—  rÅ  r   Úshmr4   ru   rÙ   rŽ  r  r  r†   r‡   r”  )rz   Úsmm1rš  Úlolr7  ÚlomÚdoppleganger_list0Údoppleganger_shm0Ú	held_nameÚ
absent_shmÚsmm2rÇ  rÐ  Ú	absent_sls   &             r   Ú-test_shared_memory_SharedMemoryManager_basicsÚ?_TestSharedMemory.test_shared_memory_SharedMemoryManager_basics  s  € Ü×'Ñ'×;Ñ;Ó=ˆØ×Ñœz×*Õ*Ø×Ñ 1ÐÔ%÷ +à�
‰
ŒÜ6;¸A¸r´lÓD±l°×"Ñ"¤5¨£8Ö,±lˆÐDÜ38¸¸SÀ"Ô3EÓGÑ3E¨a×!Ñ! qÐ!Ö)Ñ3EˆÐGÜ*×8Ò8¸cÀ!½f¿j¹j¿o¹oÔNÐØ×ÑœÐ/Ó0°!Ô4Ü)×6Ò6¸CÀ½F¿K¹KÔHÐØ×Ñ¤Ð$5×$9Ñ$9Ó :¸BÔ?Ø˜•F—K‘Kˆ	Ø�‰ŒÜ�<‰<˜7Ô"ð ×"Ñ"Ô#4×5Õ5ä*×7Ò7¸YÔG�
÷ 6ô ×%Ñ%×9Ñ9×;Ô;¸tØ×#Ñ# GÓ,ˆBØ×#Ñ#¨Ð#Ó-ˆCØŸ™Ÿ™ˆI÷ <ô �<‰<˜7Ô"Ø×"Ñ"Ô#4×5Õ5ä)×7Ò7¸YÔG�	÷ 6Ñ5ñ #÷- +×*Ð*üò EùÚG÷ 6×5ú÷ <×;ú÷
 6×5Ð5ús;   ¼JÁ5"J%Â(J*Æ3J/Ç9:KÉ-KÊJ"	Ê/J?	ËK	ËK&	c           	     ó   € \         P                  ! . RO4      pV P                  VP                  P                  4       V P                  VP                  P                  \        V4      4       V P                  \        \        V4      4      \        V4      4       V P                  \        4      ;_uu_ 4        V^,           RRR4       V P                  \        4      ;_uu_ 4        ^V^&   RRR4       VP                  ^ 4      pR V^ &   V P                  W!P                  ^ 4      4       V P                  VP                  R4       V P                  \        V4      ^4       \        P                   ! 4       ;_uu_ 4        \        P"                  ! R4       V P                  \$        4      ;_uu_ 4        VP'                  R4       RRR4       V P                  VP'                  ^d4      ^4       RRR4       V P                  V^ ,          R 4       V P                  VR,          R4       V P                  \)        V4      R4       ^*V^&   V P                  V^,          ^*4       RV^&   V P                  V^,          R4       V P                  VP                  R4       V P+                  \$        R	4      ;_uu_ 4        R
V^&   RRR4       V P                  V^,          R4       RV^ &   V P                  V^ ,          R4       V P                  V^,          R4       V P+                  \$        R	4      ;_uu_ 4        RV^ &   RRR4       V P                  V^,          R4       V P+                  \$        R	4      ;_uu_ 4        RV^&   RRR4       V P                  V^,          R4       \        P                   ! 4       ;_uu_ 4        \        P"                  ! R4       V P                  VP-                  ^*4      ^4       V P                  VP-                  R4      ^4       V P                  VP-                  R4      ^ 4       RRR4       V P/                  R4      p\         P                  ! WR7      p V P1                  VP                  P                  VP                  P                  4       V P                  W4P                  P                  4       V P                  \        V4      \        V4      4       V P                  VP                  VP                  4       ^MVR&   V P                  VR,          ^M4       V P1                  VR,          ^M4       VP                  P3                  4        VP                  P	                  4        \         P                  ! VP                  P                  R7      pV P                  VP                  P                  VP                  P                  4       RVR&   V P                  VR,          R4       VP                  P3                  4        VP                  P3                  4        \         P                  ! 4       p V P                  \        V4      ^ 4       V P                  VP                  R4       V P                  VP-                  R4      ^ 4       V P                  \$        4      ;_uu_ 4        VP'                  R4       RRR4       VP                  P3                  4        VP                  P	                  4        R#   + '       g   i     ELV; i  + '       g   i     EL?; i  + '       g   i     EL{; i  + '       g   i     ELf; i  + '       g   i     EL©; i  + '       g   i     ELA; i  + '       g   i     EL; i  + '       g   i     ELl; i  TP                  P	                  4        i ; i  + '       g   i     EL; i  TP                  P	                  4        i ; i)rÏ  ó   HoWdYNTz8s8sdqxxxxxx?xxxxxxxx?qÚignoreÚ100Úsomez8s8sdq8sxxxxxxx?qzexceeds available storagezfar too manyu   encodÃ©su	   encodÃ©ess	   123456789s   adiosÚtest03_duplicater•  ip  ra  Úany)rÏ  rÝ  gX9´ÈvqÀrU  NTr¯  r�  rH   )r   rÅ  r©  rÐ  rP  rw   r4   rx   rô   rv   Ú
IndexErrorÚ_get_packing_formatru   r´   rÙ   ÚwarningsÚcatch_warningsÚsimplefilterrL   r›  rõ   rá  r   ru  rK  r$   )rz   rÇ  Úcurrent_formatÚname_duplicateÚsl_copyÚsl_tetheredÚempty_sls   &      r   Ú'test_shared_memory_ShareableList_basicsÚ9_TestSharedMemory.test_shared_memory_ShareableList_basics!  sé  € Ü×(Ò(Ú>ó
ˆð 	�‰˜Ÿ™Ÿ™Ô&ð 	�‰�b—f‘f—k‘k¤3 r£7Ô+Ø�‰”cœ$˜r›(“m¤S¨£WÔ-ð ×Ñœz×*Õ*ØˆqŽE÷ +ð ×Ñœz×*Õ*ØˆBˆq‰E÷ +ð ×/Ñ/°Ó2ˆØˆˆ1‰Ø×Ñ˜×)?Ñ)?ÀÓ)BÔCð 	×Ñ˜Ÿ™Ð$=Ô>ð 	×Ñœ˜R› !Ô$ô ×$Ò$×&Õ&ä×!Ò! (Ô+Ø×"Ñ"¤:×.Õ.Ø—‘˜”÷ /à×Ñ˜RŸX™X c›]¨AÔ.÷ 'ð 	×Ñ˜˜A� Ô(Ø×Ñ˜˜B� Ô&ð 	×ÑÜ�"‹IØ>ô	
ð ˆˆ1‰Ø×Ñ˜˜A� Ô#Øˆˆ1‰Ø×Ñ˜˜A� Ô'Ø×Ñ˜Ÿ™Ð$7Ô8Ø×#Ñ#¤JØ$?÷Aõ Aà"ˆBˆq‰E÷Að 	×Ñ˜˜A� Ô'Øˆˆ1‰Ø×Ñ˜˜A� 
Ô+Ø×Ñ˜˜A� Ô)Ø×#Ñ#¤JØ$?÷Aõ AàˆBˆq‰E÷Að 	×Ñ˜˜A� Ô)Ø×#Ñ#¤JØ$?÷Aõ Aà ˆBˆq‰E÷Að 	×Ñ˜˜A� Ô)ô ×$Ò$×&Õ&ä×!Ò! (Ô+Ø×Ñ˜RŸX™X b›\¨1Ô-Ø×Ñ˜RŸX™X hÓ/°Ô3Ø×Ñ˜RŸX™X hÓ/°Ô3÷ 'ð ×+Ñ+Ð,>Ó?ˆÜ×-Ò-¨bÔFˆð
	!Ø×Ñ §¡§¡¨W¯[©[×-=Ñ-=Ô>Ø×Ñ˜^¯[©[×-=Ñ-=Ô>Ø×ÑœT "›X¤t¨G£}Ô5Ø×Ñ˜RŸY™Y¨¯©Ô7ØˆG�B‰KØ×Ñ˜W R�[¨"Ô-Ø×Ñ  2¥¨Ô+Ø�K‰K×ÑÔà�K‰K×ÑÔ ô $×1Ò1°r·v±v·{±{ÔCˆØ×Ñ˜Ÿ™Ÿ™ k§o¡o×&:Ñ&:Ô;Øˆ�B‰Ø×Ñ˜˜B� Ô%Ø�‰×ÑÔà
�‰�‰Œô !×.Ò.Ó0ˆð	"Ø×ÑœS ›]¨AÔ.Ø×Ñ˜XŸ_™_¨bÔ1Ø×Ñ˜XŸ^™^¨EÓ2°AÔ6Ø×"Ñ"¤:×.Õ.Ø—‘˜tÔ$÷ /à�L‰L×ÑÔ à�L‰L×ÑÖ!÷I +×*Ð*ú÷ +×*Ð*ú÷$ /×.Ð.ú÷ '×&Ð&ú÷.A÷ Að Aú÷A÷ Að Aú÷A÷ Að Aú÷ '×&Ð&ûð( �K‰K×ÑÕ ú÷" /×.Ð.ûð �L‰L×ÑÕ!úsŸ   Â7
\Ã&\"Å>4]
Æ2\6	Ç)]
Ê8]Ì4]2Í9^Î=A:^Ñ(C:^. Ù	A5_! Ú>_Û"_! Ü\	Ü"\3	Ü6]Ý	]
Ý
]	Ý]/	Ý2^	Þ^	Þ^+	Þ._
ß_	ß	_! ß!_=c           	     óP  € \        \        P                  ^,           4       EFë  pV P                  VR7      ;_uu_ 4        \        P
                  ! \        ^
4      4      pV P                  VP                  P                  4       \        P                  ! W!R7      p\        P                  ! V4      pV P                  V\        P
                  4       V P                  VR,          ^	4       V P                  W$4       RV^&   V P                  V^,          R4       RV^&   V P                  V^,          R4       \        P
                  ! \        R4      4      pV P                  VP                  P                  4       \        P                  ! WQR7      pV P                  \        V4      \        V4      4       VP                  P                  4        VP                  P                  4        VP                  P                  4        RRR4       EKî  	  R#   + '       g   i     EK  ; i)rŸ   r¯  r³  ÚchangedÚnewvaluei�  NrH   )r—  rµ  r¶  rø   r   rÅ  r©  rÐ  rP  r·  r¸  r×   ru   ÚassertIsNotrÙ   r$   )rz   r°  rÇ  Úserialized_slÚdeserialized_slÚ	larger_slÚserialized_larger_sls   &      r   Ú)test_shared_memory_ShareableList_picklingÚ;_TestSharedMemory.test_shared_memory_ShareableList_pickling’  s  € Üœ6×2Ñ2°QÕ6×7ˆEØ—‘ E�×*Õ*Ü"×0Ò0´°r³Ó;�Ø—‘ §¡§¡Ô.ä &§¢¨RÔ @�Ü"(§,¢,¨}Ó"=�Ø×%Ñ%Ø#¤]×%@Ñ%@ôBà× Ñ  °Õ!4°aÔ8Ø× Ñ  Ô5à%.� Ñ"Ø× Ñ   A¥¨	Ô2Ø"��1‘Ø× Ñ  °Õ!3°ZÔ@ä)×7Ò7¼¸c»
ÓC�	Ø—‘ 	§¡× 4Ñ 4Ô5Ü'-§|¢|°IÔ'NÐ$Ø× Ñ ¤ ]Ó!3´SÐ9MÓ5NÔOØ—‘×#Ñ#Ô%à×#Ñ#×)Ñ)Ô+Ø—‘—‘”÷/ +Ò*ó 8ß*×*Ñ*ús   ¿GHÈH%c           
     ó4  € \        \        P                  ^,           4       FÌ  pV P                  VR7      ;_uu_ 4        \        P
                  ! \        ^
4      4      p\        P                  ! W!R7      pVP                  P                  4        VP                  P                  4        V P                  \        4      ;_uu_ 4        \        P                  ! V4       RRR4       RRR4       KÎ  	  R#   + '       g   i     L; i  + '       g   i     Kö  ; i)rŸ   r¯  r³  N)r—  rµ  r¶  rø   r   rÅ  r·  rÐ  r$   rP  rv   r”  r¸  )rz   r°  rÇ  ró  s   &   r   Ú5test_shared_memory_ShareableList_pickling_dead_objectÚG_TestSharedMemory.test_shared_memory_ShareableList_pickling_dead_object­  s«   € Üœ6×2Ñ2°QÕ6Ö7ˆEØ—‘ E�×*Õ*Ü"×0Ò0´°r³Ó;�Ü &§¢¨RÔ @�ð —‘—‘”Ø—‘—‘”à×&Ñ&Ô'8×9Õ9Ü—L’L Ô/÷ :÷ +Ñ*ó 8÷ :×9ú÷ +×*Ð*ús$   ¾BDÃC3ÃDÃ3DÃ>DÄDc                ó  € R p\         P                  ! \        P                  RRV.\         P                  \         P                  R7      ;_uu_ 4       pVP
                  P                  4       P                  4       P                  4       pVP                  4        VP                  4        Rp\        P                  ! \        P                  V4       F  p \        P                  ! VRR7      pK  	  \"        P$                  R8X  dU   \&        P(                  ! RV 2R	4       VP*                  P-                  4       P                  4       pV P/                  R
V4       RRR4       R#   \          d      K‚  i ; i  + '       g   i     R# ; i)aX  if 1:
            import os, time, sys
            from multiprocessing import shared_memory

            # Create a shared_memory segment, and send the segment name
            sm = shared_memory.SharedMemory(create=True, size=10)
            sys.stdout.write(sm.name + '\n')
            sys.stdout.flush()
            time.sleep(100)
        ú-ErÞ  rô  zIA SharedMemory segment was leaked after a process was abruptly terminatedFr…  r0   Ú/r   z[resource_tracker: There appear to be 1 leaked shared_memory objects to clean up at shutdownN)Ú
subprocessÚPopenr†   râ   ÚPIPErõ  ÚreadlineÚstripÚdecoder-  r   r   r’  r+  r   rm  r”  rI   r4   r1   Ú
unregisterrö  rS  rw   )rz   râ  rë   r4   Úerr_msgr•  rÆ  r{   s   &       r   Ú4test_shared_memory_cleaned_after_process_terminationÚF_TestSharedMemory.test_shared_memory_cleaned_after_process_termination»  s6  € ð	ˆô ×ÒœsŸ~™~¨t°T¸3Ð?Ü%/§_¡_Ü%/§_¡_÷6õ 6à9:Ø—8‘8×$Ñ$Ó&×,Ñ,Ó.×5Ñ5Ó7ˆDð �K‰KŒMØ�F‰FŒHð;ˆGä×+Ò+¬G×,@Ñ,@À'ÖJ�ðÜ'×4Ò4°TÀ%ÔH’Cñ Kô �w‰w˜'Ô!ô !×+Ò+¨a°¨v¨J¸ÔHð
 —h‘h—m‘m“o×,Ñ,Ó.�Ø—‘ðDØEHôJ÷=6ñ 6øô )ô Ûðú÷6÷ 6ð 6ús2   ÁBE6ÃE#Ã,A-E6Å#E3	Å.E6Å2E3	Å3E6Å6F	c                ó  € R p\         P                  ! R^
R7      p \        P                  ! RWP                  4      w  r4pV P                  RV4       V P                  V^ 4       \         P                  ! RVP                  R7      pVP                  4         VP                  4        VP                  4        R#   \         d     Li ; i   TP                  4        M  \         d     Mi ; iTP                  4        i ; i)zÌif 1:
            import sys
            from multiprocessing.shared_memory import SharedMemory
            mem = SharedMemory(create=False, name=sys.argv[1], track=False)
            mem.close()
        Trz  rÞ  s   resource_trackerF)r{  r4   N)
r   rm  r   rß  r4   r>  ru   r$   rP  râ  )rz   râ  Úmemr®  rã  r{   Úmem2s   &      r   Útest_shared_memory_untrackingÚ/_TestSharedMemory.test_shared_memory_untrackingè  sÓ   € ðˆô ×(Ò(°¸2Ô>ˆð	Ü(×9Ò9¸$ÀÇXÁXÓN‰LˆB�SØ×ÑÐ0°#Ô6Ø×Ñ˜R Ô#Ü ×-Ò-°UÀÇÁÔJˆDØ�J‰JŒLðØ—
‘
”ð �I‰IŽKøô ô ÙðûðØ—
‘
•øÜô Ùðúà�I‰I�KúsB   œA:C
 ÂB9 Â9CÃCÃ
C?ÃCÃC?ÃC+Ã(C?Ã*C+Ã+C?c                ó$  € R p\         P                  ! R^
R7      p \        P                  ! RWP                  4      w  r4pV P                  V^ 4       V P                  RV4        VP                  4        \        P                  ! VP                  R4       VP                  4        R#   \         d     L@i ; i   TP                  4        M  \         d     Mi ; i\        P                  ! TP                  R4       TP                  4        i ; i)zËif 1:
            import sys
            from multiprocessing.shared_memory import SharedMemory
            mem = SharedMemory(create=False, name=sys.argv[1], track=True)
            mem.close()
        Trz  rÞ  s[   resource_tracker: There appear to be 1 leaked shared_memory objects to clean up at shutdownr   N)r   rm  r   rß  r4   ru   rw   rP  râ  r1   r  r}  r$   )rz   râ  r
  r®  rã  r{   s   &     r   Útest_shared_memory_trackingÚ-_TestSharedMemory.test_shared_memory_tracking  sá   € ðˆô ×(Ò(°¸2Ô>ˆð	Ü(×9Ò9¸$ÀÇXÁXÓN‰LˆB�SØ×Ñ˜R Ô#Ø�M‰MðAØBEôGðØ—
‘
”ô ×'Ò'¨¯	©	°?ÔCØ�I‰IŽKøô ô ÙðûðØ—
‘
•øÜô Ùðúä×'Ò'¨¯	©	°?ÔCØ�I‰I�KúsB   œAB9 Á%B( Â(B6Â5B6Â9DÂ;CÃDÃCÃDÃCÃ5Drc   Nrp  )!r€   r�   r‚   rƒ   rº   r.  rq  ru  rM   r…   r†   r  r�  r£  r¨  r¬  r»  r¾  rÁ  rI   r4   rÉ  ri  rÌ  rÚ  rí  r÷  rú  r  r  r  rˆ   r‰   rŠ   s   @r   rk  rk  ×  sh  ø‡ € ð #€Màñó ðò)ð ‡_‚_�S—^‘^ yÑ0Ð2EÓFñ&ó Gð&ònð` ‡_‚_�TÐ5Ó6ñ3ó 7ð3ò,BòBò4.òð8 ‡_‚_�R—W‘W Ñ'Ð)NÓOñó Pðð. ‡_‚_�R—W‘W Ñ'Ð)IÓJØ%ñó &ó Kðò(Hò<o"òbò60ò+JðZ ‡_‚_�R—W‘W Ñ'Ð)IÓJØ%ñó &ó Kðð4 ‡_‚_�R—W‘W Ñ'Ð)IÓJØ%ñó &ó Kör   rk  c                   óv   a € ] tR tRt o R
tR tR t]R 4       tR t	]
P                  ! R4      R 4       tRtV tR	# )Ú_TestFinalizei#  c                óˆ   € \         P                  P                  4       V n        \         P                  P	                  4        R # r   )r   Ú_finalizer_registryr   Úregistry_backuprÜ  rÁ   s   &r   râ  Ú_TestFinalize.setUp'  s+   € Ü#×7Ñ7×<Ñ<Ó>ˆÔÜ× Ñ ×&Ñ&Ö(r   c                óÀ   € \         P                  ! 4        V P                  \        P                  4       \        P                  P                  V P                  4       R # r   )r´  rµ  rÕ   r   r  rÆ  r  rÁ   s   &r   ræ  Ú_TestFinalize.tearDown+  s9   € Ü
�
Š
ŒØ×Ñœ×1Ñ1Ô2Ü× Ñ ×'Ñ'¨×(<Ñ(<Ö=r   c                óä  €  ! R  R\         4      pV! 4       p\        P                  ! W1P                  RR7       ?\        P
                  ! 4        V! 4       p\        P                  ! WAP                  RR7      pV! 4        V! 4        ?\        P
                  ! 4        V! 4       p\        P                  ! WaP                  RR7       V! 4       p\        P                  ! WqP                  R^R7       V! 4       p\        P                  ! W�P                  R	^ R7       V! 4       p	\        P                  ! W‘P                  R
^ R7       V! 4       p
\        P                  ! W¡P                  R^ R7       \        P                  ! RVP                  RRR7       \        P                  ! RVP                  RRR7       \        P                  ! 4        VP                  4        \        P                  ! ^ 4       R# )c                   ó   € ] tR tRtRtR# )Ú)_TestFinalize._test_finalize.<locals>.Fooi2  rc   Nrþ  rc   r   r   r  r  2  ó   † Ûr   r  re  )rX   ÚexitpriorityN)r£   )r¤   )rÉ   )Úd10)Úd01)Úd02)Úd03)rB  iöÿÿÿ)ÚSTOPiœÿÿÿ)
r#  r   ÚFinalizer#  r´  rµ  Ú_exit_functionr$   rI   Ú_exit)r  r2  r  r£   r¤   Úclose_brÉ   r  r  r   r!  s   &&         r   Ú_test_finalizeÚ_TestFinalize._test_finalize0  s9  € ô	”&ô 	ñ ‹EˆÜ�Š�aŸ™¨Õ0ØÜ
�
Š
Œá‹EˆÜ—-’- §9¡9°6Ô:ˆÙŒ	ÙŒ	ØÜ
�
Š
Œá‹EˆÜ�Š�aŸ™¨Õ0á‹eˆÜ�Š�cŸ9™9¨8À!ÕDá‹eˆÜ�Š�cŸ9™9¨8À!ÕDÙ‹eˆÜ�Š�cŸ9™9¨8À!ÕDÙ‹eˆÜ�Š�cŸ9™9¨8À!ÕDä�Š�d˜DŸI™I¨FÀÕEä�Š�d˜DŸI™I¨IÀDÕIô 	×ÒÔØ�
‰
ŒÜ
�Š�Žr   c                ó.  € V P                  4       w  rV P                  V P                  V3R 7      pRVn        VP	                  4        VP                  4        \        VP                  R4       Uu. uF  qDNK  	  ppV P                  V. RO4       R# u upi )rñ   Tr"  N)r£   r¤   r  r!  r   r  rB  )	r  ræ   r'  rÖ   rç   rè   r6  r  ru   )rz   r2  r2  rë   r¦  r   s   &     r   Útest_finalizeÚ_TestFinalize.test_finalizeX  sz   € ØŸ9™9›;Ñˆà�L‰L × 3Ñ 3¸:¸-ˆLÓHˆØˆŒØ	�‰Œ	Ø	�‰Œä!% d§i¡i°Ô!8Ó9Ñ!8˜#’#Ñ!8ˆÐ9Ø×Ñ˜Ò!LÖMùò :s   Á0
Brî   c                ó$  aaaa	€ R  o ! V3R lR\         4      oRo	RoVV	3R lpVVV	3R lp\        P                  ! 4       p\        P                  ! 4       p \
        P                  ! R4       \        P                  ! ^^^4       \        P                  ! VR7      \        P                  ! VR7      .p\        P                  ! V4      ;_uu_ 4        \        P                  ! R	4       R
o	RRR4       Se   Sh \        P                  ! V4       \        P                  ! V!   \        P                  ! 4        R#   + '       g   i     LX; i  \        P                  ! T4       \        P                  ! T!   \        P                  ! 4        i ; i)c                  ó   € R # r   rc   rc   r   r   ÚcbÚ,_TestFinalize.test_thread_safety.<locals>.cbf  ó   € Ùr   c                   ó.   <a € ] tR tRt o V3R ltRtV tR# )Ú-_TestFinalize.test_thread_safety.<locals>.Fooii  c                óp   <€ W n         \        P                  ! V S\        P                  ! ^^d4      R7       R# )rŸ   )r  N)r³  r   r#  r.  Úrandint)rz   r.  s   &€r   r‘   Ú6_TestFinalize.test_thread_safety.<locals>.Foo.__init__j  s#   ø€ Ø”ä—’˜d B´V·^²^ÀAÀsÓ5K×Lr   )r³  N)r€   r�   r‚   rƒ   r‘   rˆ   r‰   )r‹   r.  s   @€r   r  r2  i  s   ù‡ € ÷Mó Mr   r  FNc                  óÞ   <€ S'       gI   \         P                  ! \        P                  ! 4       R ,          4        \        P                  ! 4        KP  R#   \
         d   p T o Rp ? Ke  Rp ? ii ; irá  )r”   r3  r.  r   Ú_run_finalizersrr   )rB  r‚  Úfinishs    €€r   Úrun_finalizersÚ8_TestFinalize.test_thread_safety.<locals>.run_finalizersr  sL   ø€ çÜ—
’
œ6Ÿ=š=›?¨TÕ1Ô2ðô ×(Ò(Ö*ñ øô !ô Ø–Cûðús   »A ÁA,ÁA'Á'A,c                  óð   <€ / p S'       g;    \        ^
4       Uu0 uF
  pS! 4       kK  	  upV \        P                  ! ^4      &   KB  R# u upi   \         d   pToT P	                  4         Rp?Kl  Rp?ii ; ir™  )r—  r.  Úgetrandbitsrr   rÜ  )rg  rš  rB  r  r‚  r8  s      €€€r   Úmake_finalizersÚ9_TestFinalize.test_thread_safety.<locals>.make_finalizers}  si   ø€ àˆAßðô @EÀR¼yÓ/I¹y¸!±¶¹yÑ/I�A”f×(Ò(¨Ó+Ó,ñ	 ùò 0JøÜ ô Ø�CØ—G‘G—I’Iûðús'   �A šAªA ÁA ÁA5ÁA0Á0A5g�íµ ÷Æ°>r  rW  T)r#  r†   Úgetswitchintervalr´  rD  r   ÚsetswitchintervalrE  rG  rß  r	   Ústart_threadsr”   r3  rµ  )
rz   r9  r=  Úold_intervalÚold_thresholdr¹   r  r.  r‚  r8  s
   &     @@@@r   Útest_thread_safetyÚ _TestFinalize.test_thread_safetyc  s"  û€ ò	÷	M”&ô 	Mð ˆØˆö		÷
	ô ×,Ò,Ó.ˆÜ×(Ò(Ó*ˆð	Ü×%Ò% dÔ+Ü×Ò˜Q  1Ô%Ü ×'Ò'¨~Ô>Ü ×'Ò'¨Ô?ðAˆGä!×/Ò/°×8Õ8Ü—
’
˜3”Ø�÷ 9ð ŠØ�	ð ô ×!Ò! ,Ô/Ü×Ò˜mÒ,Ü�JŠJŽL÷ 9×8ûô ×!Ò! ,Ô/Ü×Ò˜mÒ,Ü�JŠJ�Lús&   ÁA:E ÃD;Ã+E Ä;E	ÅE ÅAF)r  Nrp  )r€   r�   r‚   rƒ   rº   râ  ræ  r+  r'  r*  r   r*  rD  rˆ   r‰   rŠ   s   @r   r  r  #  sN   ø‡ € à"€Mò)ò>ð
 ñ%ó ð%òN	Nð ×Ò˜uÓ%ñ4ó &ö4r   r  c                   ó,   a € ] tR tRt o R tR tRtV tR# )Ú_TestImportStariŸ  c                ó"  € ^ RI p\        P                  P                  \        P
                  4      p\        P                  P                  VP                  V4      R4      pVP                  V4      pV Uu. uFM  p\        P                  P                  \        P                  P                  V4      ^,          4      ^ ,          NKO  	  ppV Uu. uF  pRV,           NK  	  ppVP                  R4       VP                  R4       V# u upi u upi )r   Nz*.pyzmultiprocess.zmultiprocess.__init__rû  )ÚglobrI   rê   Údirnamer!   Ú__file__rè   ÚescapeÚsplitextÚsplitrè  rŸ  )rz   rI  ÚfolderÚpatternÚfilesrU  Úmodulesrò  s   &       r   Úget_module_namesÚ _TestImportStar.get_module_names¡  sÈ   € ÛÜ—‘—‘¤×!9Ñ!9Ó:ˆÜ—'‘'—,‘,˜tŸ{™{¨6Ó2°FÓ;ˆØ—	‘	˜'Ó"ˆÙEJÓKÁUÀ”2—7‘7×#Ñ#¤B§G¡G§M¡M°!Ó$4°QÕ$7Ó8¸×;Ð;ÁUˆÐKÙ07Ó8±¨1�? Q×&Ð&±ˆÐ8Ø�‰Ð.Ô/Ø�‰�~Ô&Øˆùò	 LùÚ8s   Á6ADÃDc                ó
  € V P                  4       p\        P                  R 8X  d5   VP                  R4       VP                  R4       VP                  R4       M.VP                  R4       \        '       g   VP                  R4       \
        f   VP                  R4       V F\  p\        V4       \        P                  V,          pV P                  VRV4       VP                   F  pV P                  W44       K  	  K^  	  R# )r9   zmultiprocess.popen_forkzmultiprocess.popen_forkserverzmultiprocess.popen_spawn_posixzmultiprocess.popen_spawn_win32Nzmultiprocess.sharedctypesÚ__all__)
rS  r†   r‡   rè  r±  rC   rµ  rR  rå  rV  )rz   rR  r4   ÚmodÚattrs   &    r   Útest_importÚ_TestImportStar.test_import¬  sÂ   € Ø×'Ñ'Ó)ˆÜ�<‰<˜7Ô"Ø�N‰NÐ4Ô5Ø�N‰NÐ:Ô;Ø�N‰NÐ;Õ<à�N‰NÐ;Ô<ß “=Ø—‘Ð>Ô?äŠ=à�N‰NÐ6Ô7ãˆDÜ�tÔÜ—+‘+˜dÕ#ˆCØ×Ñ˜s I¨tÔ4ØŸœ�Ø×"Ñ" 3Ö-ó $ó	 r   rc   N)r€   r�   r‚   rƒ   rS  rY  rˆ   r‰   rŠ   s   @r   rG  rG  Ÿ  s   ø‡ € ò	÷.ð .r   rG  c                   óF   a € ] tR tRt o RtR t]R 4       tR tR t	Rt
V tR# )	Ú_TestLoggingiÆ  c                óþ   € \         P                  ! 4       pVP                  \        P                  4       V P                  V4       VP                  R 4       VP                  R4       VP                  \        4       R# )zthis will not be printedznor will thisN)	r!   Ú
get_loggerÚsetLevelr   Ú
SUBWARNINGrÂ  ÚdebugÚinfoÚ	LOG_LEVEL)rz   Úloggers   & r   Útest_enable_loggingÚ _TestLogging.test_enable_loggingÊ  sS   € Ü ×+Ò+Ó-ˆØ�‰œŸ™Ô(Ø×Ñ˜VÔ$Ø�‰Ð/Ô0Ø�‰�OÔ$Ø�‰œ	Ö"r   c                ón   € \         P                  ! 4       pVP                  VP                  4       4       R # r   )r!   r^  r#  ÚgetEffectiveLevel)r  r2  rd  s   && r   Ú_test_levelÚ_TestLogging._test_levelÒ  s%   € ä ×+Ò+Ó-ˆØ�	‰	�&×*Ñ*Ó,Ö-r   c                ó0  € ^ p^%p\         P                  ! 4       p\        P                  ! 4       pVP                  p\         P
                  ! RR7      w  rgVP                  V4       V P                  V P                  V3R7      pVP                  4        V P                  WP                  4       4       VP                  4        VP                  4        VP                  \        P                  4       VP                  V4       V P                  V P                  V3R7      pVP                  4        V P                  W&P                  4       4       VP                  4        VP                  4        VP                  V4       VP                  \        R7       R# )r1  Fr  rñ   )ÚlevelN)r!   r^  ÚloggingÚ	getLoggerrl  r  r_  ræ   ri  rç   ru   r  rè   r$   ÚNOTSETrc  )	rz   ÚLEVEL1ÚLEVEL2rd  Úroot_loggerÚ
root_levelr{  r|  rë   s	   &        r   Ú
test_levelÚ_TestLogging.test_level×  s  € ØˆØˆä ×+Ò+Ó-ˆÜ×'Ò'Ó)ˆØ ×&Ñ&ˆ
ä(×-Ò-°UÔ;‰ˆà�‰˜ÔØ�L‰L × 0Ñ 0¸°yˆLÓAˆØ	�‰Œ	Ø×Ñ˜§¡£Ô/Ø	�‰ŒØ	�‰Œ	à�‰œŸ™Ô'Ø×Ñ˜VÔ$Ø�L‰L × 0Ñ 0¸°yˆLÓAˆØ	�‰Œ	Ø×Ñ˜§¡£Ô/Ø	�‰ŒØ	�‰Œ	à×Ñ˜ZÔ(Ø�‰œiˆÖ(r   c                óz  € \         P                  ! 4       pVP                  p VP                  \        P
                  4       \        P                  ! 4       p\        P                  ! V4      pR pVP                  \        P                  ! V4      4       VP                  V4       VP                  R4       \        P                  ! R4       VP                  R4       \        P                   P#                  \$        4      pVP'                  4       pV P)                  RV R2V4       V P)                  RV R2V4       V P)                  RV R2V4       VP                  V4       VP+                  V4       VP-                  4        R	#   TP                  T4       TP+                  X4       TP-                  4        i ; i)
z*[%(levelname)s] [%(filename)s] %(message)sr+  Ú2Ú3z[INFO] [z] 1z] 2z	[DEBUG] [z] 3N)r!   r^  rl  r_  r   ÚDEBUGrê  rë  rm  ÚStreamHandlerÚsetFormatterÚ	FormatterÚ
addHandlerrb  ra  rI   rê   ÚbasenamerK  r�  rw   ÚremoveHandlerr$   )rz   rd  Úoriginal_levelrð  ro  Úlogging_formatÚfilenameÚ
log_records   &       r   Útest_filenameÚ_TestLogging.test_filenameó  sG  € Ü ×+Ò+Ó-ˆØŸ™ˆð	Ø�O‰OœDŸJ™JÔ'Ü—[’[“]ˆFÜ×+Ò+¨FÓ3ˆGØIˆNØ× Ñ ¤×!2Ò!2°>Ó!BÔCØ×Ñ˜gÔ&Ø�K‰K˜ÔÜ�IŠI�cŒNØ�L‰L˜ÔÜ—w‘w×'Ñ'¬Ó1ˆHØŸ™Ó*ˆJØ�M‰M˜H X J¨cÐ2°JÔ?Ø�M‰M˜H X J¨cÐ2°JÔ?Ø�M‰M˜I h Z¨sÐ3°ZÔ@à�O‰O˜NÔ+Ø× Ñ  Ô)Ø�M‰MŽOøð �O‰O˜NÔ+Ø× Ñ  Ô)Ø�M‰M�Oús   £D/F Æ4F:rc   Nrp  )r€   r�   r‚   rƒ   rº   re  r+  ri  rt  r„  rˆ   r‰   rŠ   s   @r   r\  r\  Æ  s2   ø‡ € à"€Mò#ð ñ.ó ð.ò)÷8ð r   r\  c                   ót   a € ] tR tRt o Rt]R 4       t]P                  ! ]	! ]
R4      R4      R 4       tRtV tR# )	Ú_TestPollEintri"  c                ó|   € \         P                  ! R 4       \        P                  ! V\        P
                  4       R# rá  )r”   r3  rI   r‡  r`  ÚSIGUSR1)r  r  s   &&r   Ú_killerÚ_TestPollEintr._killer&  s   € ä�
Š
�3ŒÜ
�Š�”V—^‘^Ö$r   r‰  úrequires SIGUSR1c                óÀ  a€ R .oV3R lp\         P                  ! 4       p\        P                  ! \        P                  V4      p V P	                  V P
                  V3R7      pVP                  4         V P	                  \        P                  RR7      pVP                  4        VP                  4        VP                  4        V P                  S^ ,          4       V P                  VP                  ^ 4       \        P                  ! \        P                  V4       R#   TP                  4        i ; i  \        P                  ! \        P                  T4       i ; i)Fc                  ó   <€ R S^ &   R# rÖ  rc   )rX   Ú
got_signals   *€r   ÚrecordÚ._TestPollEintr.test_poll_eintr.<locals>.record.  s   ø€ Ø ˆJ�q‹Mr   rñ   N)r±   )rI   rÛ   r`  r‰  ræ   rŠ  rç   r”   r3  rè   rÓ   ru   rÜ   )rz   r�  r  Ú
oldhandlerÚkillerrë   r�  s   &     @r   Útest_poll_eintrÚ_TestPollEintr.test_poll_eintr+  sâ   ø€ à�Wˆ
õ	!ä�iŠi‹kˆÜ—]’]¤6§>¡>°6Ó:ˆ
ð	6Ø—\‘\¨¯©¸S¸F�\ÓCˆFØ�L‰LŒNðØ—L‘L¬¯
©
¸�LÓ>�Ø—‘”	Ø—‘”à—‘”Ø�O‰O˜J q�MÔ*Ø×Ñ˜QŸZ™Z¨Ô+ä�MŠMœ&Ÿ.™.¨*Ö5øð	 —‘•ûô �MŠMœ&Ÿ.™.¨*Õ5ús&   Á.D6 Á5AD! Â6AD6 Ä!D3Ä3D6 Ä6'Erc   Nrp  )r€   r�   r‚   rƒ   rº   r+  rŠ  rM   r,  rq  r`  r”  rˆ   r‰   rŠ   s   @r   r‡  r‡  "  sF   ø‡ € à"€Màñ%ó ð%ð ×Ò™ ¨Ó3Ð5GÓHñ6ó Iö6r   r‡  c                   óR   a € ] tR tRt o ]P
                  ! ]R4      R 4       tRtV t	R# )ÚTestInvalidHandleiD  úskipped on Windowsc                ó$  € \         P                  P                  R 4      p VP                  4        RVn        V P                  \        \
        3\         P                  P                  R4       R#   \        \
        3 d     LQi ; i  RTn        i ; i)iÈM®NrH   )r!   r  Ú
Connectionr*  rL   râ  Ú_handlerv   r¦  s   & r   Útest_invalid_handlesÚ&TestInvalidHandle.test_invalid_handlesF  sy   € ä×)Ñ)×4Ñ4°XÓ>ˆð	 Ø�I‰IŒKð  ˆDŒLØ×Ñœ:¤wÐ/Ü)×4Ñ4×?Ñ?Àö	Eøô œGÐ$ô 	Ùð	ûð
  ˆD�Lús#   ¡A/ Á/BÂ B ÂBÂB Â	Brc   N)
r€   r�   r‚   rƒ   rM   r…   ÚWIN32rœ  rˆ   r‰   rŠ   s   @r   r—  r—  D  s%   ø‡ € à‡_‚_�UÐ0Ó1ñEó 2öEr   r—  c                   ó&   a € ] tR tRt o R tRtV tR# )ÚTestBaseProcessKwargsiZ  c                óˆ  € \         P                  ! R  R7      p\         P                  ! R R7      pV P                  VP                  \        4       V P                  VP                  \        4       V P                  VP                  VP                  4       ^VP                  R&   V P                  RVP                  4       R# )c                  ó   € R # r   rc   rc   r   r   rT  ÚXTestBaseProcessKwargs.test_default_kwargs_not_shared_between_instances.<locals>.<lambda>^  ó   € ±Dr   r  c                  ó   € R # r   rc   rc   r   r   rT  r£  _  r¤  r   r<  N)r!   ræ   r×   Ú_kwargsrº  rò  r>  )rz   Úp1Úp2s   &  r   Ú0test_default_kwargs_not_shared_between_instancesÚFTestBaseProcessKwargs.test_default_kwargs_not_shared_between_instances[  s…   € ô ×$Ò$©LÔ9ˆÜ×$Ò$©LÔ9ˆØ×Ñ˜bŸj™j¬$Ô/Ø×Ñ˜bŸj™j¬$Ô/Ø×Ñ˜Ÿ™ R§Z¡ZÔ0àˆ�
‰
�3‰Ø×Ñ˜˜bŸj™jÖ)r   rc   N)r€   r�   r‚   rƒ   r©  rˆ   r‰   rŠ   s   @r   r   r   Z  s   ø‡ € ÷
*ð 
*r   r   c                   ó,   a € ] tR tRt o R tR tRtV tR# )Ú	OtherTestih  c                ó¢   €  ! R  R\         4      pV P                  \        P                  \        P                  P
                  V! 4       R4       R# )c                   ó,   a € ] tR tRt o R tR tRtV tR# )ÚFOtherTest.test_deliver_challenge_auth_failure.<locals>._FakeConnectionil  c                ó   € R # )ó   something bogusrc   ©rz   r~  s   &&r   re  ÚQOtherTest.test_deliver_challenge_auth_failure.<locals>._FakeConnection.recv_bytesm  s   € Ù)r   c                ó   € R # r   rc   ©rz   r‘  s   &&r   rg  ÚQOtherTest.test_deliver_challenge_auth_failure.<locals>._FakeConnection.send_byteso  ó   € Ùr   rc   N)r€   r�   r‚   rƒ   re  rg  rˆ   r‰   rŠ   s   @r   Ú_FakeConnectionr¯  l  s   ø‡ € ò*÷ð r   r¸  ó   abcN)r#  rv   r!   r$  r  Údeliver_challenge©rz   r¸  s   & r   Ú#test_deliver_challenge_auth_failureÚ-OtherTest.test_deliver_challenge_auth_failurek  s=   € ô	œfô 	ð
 	×Ñœ/×=Ñ=Ü)×4Ñ4×FÑFÙ)Ó+¨Vö	5r   c                ó¢   €  ! R  R\         4      pV P                  \        P                  \        P                  P
                  V! 4       R4       R# )c                   ó2   a € ] tR tRt o R tR tR tRtV tR# )ÚEOtherTest.test_answer_challenge_auth_failure.<locals>._FakeConnectioniv  c                ó   € ^ V n         R# r)  ©r   rÁ   s   &r   r‘   ÚNOtherTest.test_answer_challenge_auth_failure.<locals>._FakeConnection.__init__w  s	   € Ø�–
r   c                ó´   € V ;P                   ^,          un         V P                   ^8X  d   \        P                  P                  # V P                   ^8X  d   R# R# )rŸ   r±  r   )r   r!   r  Ú
_CHALLENGEr²  s   &&r   re  ÚPOtherTest.test_answer_challenge_auth_failure.<locals>._FakeConnection.recv_bytesy  s=   € Ø—
’
˜a••
Ø—:‘: ”?Ü*×5Ñ5×@Ñ@Ð@Ø—Z‘Z 1”_Ù-Ùr   c                ó   € R # r   rc   rµ  s   &&r   rg  ÚPOtherTest.test_answer_challenge_auth_failure.<locals>._FakeConnection.send_bytes€  r·  r   rÂ  N)	r€   r�   r‚   rƒ   r‘   re  rg  rˆ   r‰   rŠ   s   @r   r¸  rÀ  v  s   ø‡ € òò÷ð r   r¸  r¹  N)r#  rv   r!   r$  r  Úanswer_challenger»  s   & r   Ú"test_answer_challenge_auth_failureÚ,OtherTest.test_answer_challenge_auth_failureu  s=   € ô	œfô 	ð 	×Ñœ/×=Ñ=Ü)×4Ñ4×EÑEÙ)Ó+¨Vö	5r   rc   N)r€   r�   r‚   rƒ   r¼  rÊ  rˆ   r‰   rŠ   s   @r   r¬  r¬  h  s   ø‡ € ò5÷5ð 5r   r¬  Úmd5c                   ó6   a € ] tR tRt o RtR tR tR tRtV t	R# )ÚChallengeResponseTesti‡  s   supadupasecretkeyc                óV   € \         P                  P                  V P                  V4      # r   )r!   r  Ú_create_responserÒ   )rz   Úmessages   &&r   Úcreate_responseÚ%ChallengeResponseTest.create_responseŒ  s$   € Ü×)Ñ)×:Ñ:Ø�L‰L˜'ó
ð 	
r   c                óV   € \         P                  P                  V P                  W4      # r   )r!   r  Ú_verify_challengerÒ   )rz   rÑ  Úresponses   &&&r   Úverify_challengeÚ&ChallengeResponseTest.verify_challenge‘  s$   € Ü×)Ñ)×;Ñ;Ø�L‰L˜'ó
ð 	
r   c                óz  € R F   pV P                  RV: 24      ;_uu_ 4        RpV'       d   RVP                  R4      ,          pMRpW2,           pV P                  V4      pVP                  V4      '       g   V P	                  V4       V P                  W$4       R R R 4       K¢  	  R #   + '       g   i     K·  ; i)Nzalgo=s   is-twenty-bytes-longs   {%s}r	  r   )NrÌ  r9  )rø   r   rÒ  Ú
startswithrs   r×  )rz   Úalgorh  rt  rÖ  s   &    r   Útest_challengeresponseÚ,ChallengeResponseTest.test_challengeresponse–  s•   € Û+ˆDØ—‘  ¡˜j×)Õ)Ø-�ßØ$ t§{¡{°7Ó';Õ;‘Fà �FØ•l�Ø×/Ñ/°Ó4�Ø×*Ñ*¨6×2Ò2Ø—I‘I˜hÔ'Ø×%Ñ% cÔ4÷ *Ñ)ó ,ß)×)Ð)ús   £A8B)Â)B:rc   N)
r€   r�   r‚   rƒ   rÒ   rÒ  r×  rÜ  rˆ   r‰   rŠ   s   @r   rÎ  rÎ  ‡  s    ø‡ € ð #€Gò
ò

÷
5ð 5r   rÎ  c                 ó8   € V ;P                   ^,          un         R# rž   )rÅ  )Únss   &r   Úinitializerrà  °  s   € Ø‡G‚Gˆq…L‡Gr   c                   ó8   a € ] tR tRt o R tR tR tR tRtV t	R# )ÚTestInitializersi³  c                óš   € \         P                  ! 4       V n        V P                  P                  4       V n        ^ V P                  n        R# r)  )r!   rý  rP  rã  rß  rÅ  rÁ   s   &r   râ  ÚTestInitializers.setUpµ  s1   € Ü"×*Ò*Ó,ˆŒØ—(‘(×$Ñ$Ó&ˆŒØˆ�‰Žr   c                ón   € V P                   P                  4        V P                   P                  4        R # r   rS  rÁ   s   &r   ræ  ÚTestInitializers.tearDownº  rU  r   c                óR  € \         P                  P                  4       pV P                  \        VP
                  ^4       VP                  \        V P                  34       V P                  V P                  P                  ^4       VP                  4        VP                  4        R# rž   )r!   r]  ÚSyncManagerrv   Ú	TypeErrorrç   rà  rß  ru   rÅ  r  rè   )rz   rò  s   & r   Útest_manager_initializerÚ)TestInitializers.test_manager_initializer¾  sj   € Ü×$Ñ$×0Ñ0Ó2ˆØ×Ñœ) Q§W¡W¨aÔ0Ø	�‰”˜dŸg™g˜ZÔ(Ø×Ñ˜Ÿ™Ÿ™ qÔ)Ø	�
‰
ŒØ	�‰Žr   c                ó,  € V P                  \        \        P                  ^R7       \        P                  ! ^\        V P
                  34      pVP                  4        VP                  4        V P                  V P
                  P                  ^4       R# )rŸ   )rà  N)
rv   ré  r!   r  rà  rß  r$   rè   ru   rÅ  rn  s   & r   Útest_pool_initializerÚ&TestInitializers.test_pool_initializerÆ  sa   € Ø×Ñœ)¤_×%9Ñ%9ÀqÐÔIÜ× Ò  ¤K°$·'±'°Ó<ˆØ	�‰Œ	Ø	�‰ŒØ×Ñ˜Ÿ™Ÿ™ qÖ)r   )rP  rß  N)
r€   r�   r‚   rƒ   râ  ræ  rê  rí  rˆ   r‰   rŠ   s   @r   râ  râ  ³  s   ø‡ € òò
ò÷*ð *r   râ  c                 ód   €  V P                  R R7      pR#   \        P                   d     R# i ; i)F)ÚblockN)rú   r…  r”  )rÈ   Úitems   & r   Ú_this_sub_processrò  Ò  s-   € ðØ�u‰u˜5ˆuÓ!ŠøÜ�=‰=ô Úðús   ‚ –/®/c                  ó¸   € \         P                  ! 4       p \         P                  ! \        V 3R 7      pRVn        VP                  4        VP                  4        R# ©rñ   TN)r!   r#   ræ   rò  rÖ   rç   rè   )r'   ÚsubProcs     r   Ú_test_processrö  Ø  s>   € Ü×!Ò!Ó#€EÜ×%Ò%Ô->ÀeÀXÔN€GØ€G„NØ‡M�M„OØ‡L�L†Nr   c                 ó   € W ,          # r   rc   rñ  s   &r   Ú_afuncrø  ß  rí  r   c                  ó¤   € \         P                  ! ^R7      p V P                  \        . RO4      pV P	                  4        V P                  4        R# )rj   rp  N)rŸ   r±   rg  rj   rÆ   r}  rs  )r!   r  r  rø  r$   rè   )r	  r<  s     r   Úpool_in_processrú  â  s5   € Ü×Ò¨!Ô,€DØ�‰”Ò.Ó/€AØ‡J�J„LØ‡I�I†Kr   c                   óB   a € ] tR tRt o R t]R 4       tR tR tRt	V t
R# )Ú
_file_likeiè  c                ó    € Wn         R V n        R # r   )Ú	_delegateÚ_pid)rz   Údelegates   &&r   r‘   Ú_file_like.__init__é  s   € Ø!ŒØˆŽ	r   c                ó~   € \         P                  ! 4       pWP                  8w  d   Wn        . V n        V P                  # r   )rI   rÛ   rÿ  Ú_cacherÈ  s   & r   ÚcacheÚ_file_like.cacheí  s-   € ä�iŠi‹kˆà—)‘)ÔØŒIØˆDŒKØ�{‰{Ðr   c                ó<   € V P                   P                  V4       R # r   )r	  rŸ  rµ  s   &&r   r²  Ú_file_like.writeö  s   € Ø�
‰
×Ñ˜$Ör   c                ó|   € V P                   P                  R P                  V P                  4      4       . V n        R# )ra  N)rþ  r²  rè   r	  r	  rÁ   s   &r   ÚflushÚ_file_like.flushù  s(   € Ø�‰×Ñ˜RŸW™W T§Z¡ZÓ0Ô1ØˆŽr   )r	  rþ  rÿ  N)r€   r�   r‚   rƒ   r‘   Úpropertyr	  r²  r		  rˆ   r‰   rŠ   s   @r   rü  rü  è  s-   ø‡ € òð ñó ðò ÷ð r   rü  c                   ó2   a € ] tR tRt o R tR tR tRtV tR# )ÚTestStdinBadfiledescriptoriý  c                ó|   € \         P                  ! \        R 7      pVP                  4        VP	                  4        R# r~  )r!   ræ   rö  rç   rè   )rz   rä  s   & r   Útest_queue_in_processÚ0TestStdinBadfiledescriptor.test_queue_in_processÿ  s$   € Ü×&Ò&¬mÔ<ˆØ�
‰
ŒØ�	‰	Žr   c                ó|   € \         P                  ! \        R 7      pVP                  4        VP	                  4        R# r~  )r!   ræ   rú  rç   rè   rn  s   & r   Útest_pool_in_processÚ/TestStdinBadfiledescriptor.test_pool_in_process  s$   € Ü×#Ò#¬?Ô;ˆØ	�‰Œ	Ø	�‰Žr   c                óî   a€ \         P                  ! 4       p\        V4      oSP                  R 4       \        P
                  ! V3R lR7      pSP                  4        VP                  4       R 8X  g   Q hR# )rß  c                  ó$   <€ S P                  4       # r   )r		  )Úflikes   €r   rT  Ú:TestStdinBadfiledescriptor.test_flushing.<locals>.<lambda>  s   ø€ °e·k±k´mr   r  N)rê  rë  rü  r²  r!   ræ   r		  r�  )rz   Úsiorä  r	  s   &  @r   Útest_flushingÚ(TestStdinBadfiledescriptor.test_flushing	  sQ   ø€ Ü�kŠk‹mˆÜ˜3“ˆØ�‰�EÔÜ×&Ò&Ô.CÔDˆØ�‰ŒØ�|‰|‹~ Ô&Ð&Ò&r   rc   N)	r€   r�   r‚   rƒ   r	  r	  r	  rˆ   r‰   rŠ   s   @r   r	  r	  ý  s   ø‡ € òò
÷
'ð 'r   r	  c                   óÖ   a € ] tR tRt o ]R 4       tRR lt]R 4       tRR ltR t	R t
]P                  ! R4      R	 4       t]R
 4       t]P                  ! R4      R 4       tR tRtV tR# )ÚTestWaiti  c                ó  € \        ^
4       Fa  pV'       d1   \        P                  ! \        P                  ! 4       R,          4       VP	                  V\
        P                  ! 4       34       Kc  	  VP                  4        R# )rš  r   N)r—  r”   r3  r.  r#  rI   rÛ   r$   )r  rZ  Úslowrš  s   &&& r   Ú_child_test_waitÚTestWait._child_test_wait  sL   € ä�r–ˆAßÜ—
’
œ6Ÿ=š=›?¨UÕ2Ô3Ø�F‰F�A”r—y’y“{Ð#Ö$ñ ð 	
�‰Ž	r   c                óÞ  a€ ^ RI Hp . p. o. p\        ^4       F£  p\        P                  ! RR7      w  rg\        P
                  ! V P                  Wq3R7      pRVn        VP                  4        VP                  4        VP                  V4       SP                  V4       V P                  VP                  4       K¥  	  V'       d4   V! V4       F%  p VP                  4       p	VP                  V	4       K'  	  K;  VP!                  4        \#        V3R l\        ^
4       4       4      p
V P%                  WJ4       R#   \         d&    TP                  T4       TP                  4         K›  i ; i)r   r   Fr  rñ   Tc              3   óP   <"  € T F  pS F  q!VP                   3x € K  	  K  	  R # 5ir   )r  )r·  rš  rë   rÂ  s   &  €r   r¸  Ú%TestWait.test_wait.<locals>.<genexpr>7  s   øé € ÐG©i¨Ã¸A˜aŸe™e�*Á™*«iùs   ƒ#&N)Úmultiprocess.connectionr   r—  r!   r  ræ   r	  rÖ   rç   r$   rŸ  r©  rè   r  rt  rè  r5  r»  ru   )rz   r	  r   ÚreadersÚmessagesrš  rs  rZ  rë   rh  r¡  rÂ  s   &&         @r   Ú	test_waitÚTestWait.test_wait  s  ø€ Ý0ØˆØˆØˆä�q–ˆAÜ"×'Ò'¨uÔ5‰DˆAÜ×'Ò'¨t×/DÑ/DÈAÈ9ÔUˆAØˆAŒHØ�G‰GŒIØ�G‰GŒIØ�N‰N˜1ÔØ�L‰L˜ŒOØ�O‰O˜AŸF™FÖ#ñ ÷ Ù˜'–]�ð)ØŸ&™&›(�Cð
 —O‘O CÖ(ó #ð 	�‰ŒÜÔG¬e°B¬iÓGÓGˆØ×Ñ˜Ö,øô  ô Ø—N‘N 1Ô%Ø—G‘G—Iðús   ÃD<Ä<,E,Å+E,c                óT  € \         P                   ! 4       pVP                  V4       \        ^
4       Fb  pV'       d1   \        P                  ! \
        P
                  ! 4       R,          4       VP                  RV,          P                  R4      4       Kd  	  VP                  4        R# )rš  r   ú%s
r	  N)	rþ  r,  r—  r”   r3  r.  r  r   r$   )r  r)  r	  r   rš  s   &&&  r   Ú_child_test_wait_socketÚ TestWait._child_test_wait_socket:  sg   € ä�MŠM‹OˆØ	�	‰	�'ÔÜ�r–ˆAßÜ—
’
œ6Ÿ=š=›?¨UÕ2Ô3Ø�I‰I�v •z×)Ñ)¨'Ó2Ö3ñ ð 	
�‰Ž	r   c                ó´  € ^ RI Hp \        P                  ! \        P
                  ^ 34      pVP                  4       p. p. p/ p\        ^4       Fi  p\        P                  ! V P                  WA3R7      p	RV	n        V	P                  4        VP                  V	4       V P                  V	P                  4       Kk  	  \        ^4       F*  pVP!                  4       w  r«VP                  V
4       . Wz&   K,  	  VP#                  4        V'       de   V! V4       FV  p
V
P%                  ^ 4      pV'       g$   VP'                  V
4       V
P#                  4        K?  Wz,          P                  V4       KX  	  Kl  RP                  R \        ^
4       4       4      P)                  R4      pVP+                  4        F$  pV P-                  RP                  V4      V4       K&  	  R# )	r   r   rñ   Tra  c              3   ó4   "  € T F  pR V,          x € K  	  R# 5i)r*	  Nrc   r¶  s   & r   r¸  Ú,TestWait.test_wait_socket.<locals>.<genexpr>c  s   é € Ð9©y¨!˜6 AŸ:š:«yùs   ‚r	  r   N)r$	  r   rþ  rÿ  r   r3  r   r—  r!   ræ   r+	  rÖ   rç   rŸ  r©  rè   r¾  r$   r  rè  r   rF  ru   )rz   r	  r   rî  r  r%	  rÂ  Údicrš  rë   rs  r•  rh  r¡  Úvs   &&             r   Útest_wait_socketÚTestWait.test_wait_socketD  s\  € Ý0Ü× Ò ¤-×"4Ñ"4°aÐ!8Ó9ˆØ�}‰}‹ˆØˆØˆØˆä�q–ˆAÜ×'Ò'¨t×/KÑ/KØ.2¨\ô;ˆAàˆAŒHØ�G‰GŒIØ�L‰L˜ŒOØ�O‰O˜AŸF™FÖ#ñ ô �q–ˆAØ—8‘8“:‰DˆAØ�N‰N˜1ÔØˆC‹Fñ ð 	
�‰Œ	çÙ˜'–]�Ø—f‘f˜R“j�ßØ—N‘N 1Ô%Ø—G‘G–Ià•F—M‘M #Ö&ó #ð —7‘7Ñ9¬u°R¬yÓ9Ó9×@Ñ@ÀÓIˆØ—‘–ˆAØ×Ñ˜SŸX™X a›[¨(Ö3ó r   c                ó(   € V P                  R 4       R# rÖ  )r'	  rÁ   s   &r   Útest_wait_slowÚTestWait.test_wait_slowg  s   € Ø�‰�tÖr   c                ó(   € V P                  R 4       R# rÖ  )r2	  rÁ   s   &r   Útest_wait_socket_slowÚTestWait.test_wait_socket_slowj  s   € Ø×Ñ˜dÖ#r   r¹  c                óp  € ^ RI Hp Rp\        P                  ! 4       w  r4\        P
                  ! 4       pV! W4.V4      p\        P
                  ! 4       V,
          pV P                  V. 4       V P                  Wr\        ,
          4       VP                  R4       V! W4.^4      pV P                  Wc.4       R# )r   r   r7   N)
r$	  r   r!   r  r”   r•   ru   r  r{  r#  )rz   r   r,   r£   r¤   rç   rª   r»  s   &       r   Útest_wait_timeoutÚTestWait.test_wait_timeoutm  s‘   € å0àˆÜ×#Ò#Ó%‰ˆä—’Ó ˆÙ�A�6˜7Ó#ˆÜ—’Ó  5Õ(ˆà×Ñ˜˜bÔ!Ø×Ñ˜5¬IÕ"5Ô6à	�‰ˆtŒÙ�A�6˜2ÓˆØ×Ñ˜˜cÖ"r   c                óR   € VP                  4        \        P                  ! V4       R # r   )rü  r”   r3  )r  r0  Úperiods   &&&r   Úsignal_and_sleepÚTestWait.signal_and_sleep  s   € à�‰ŒÜ�
Š
�6Ör   c                ó  € ^ RI Hp ^pR p\        P                  ! ^ 4      p\        P                  ! 4       w  rV\        P
                  ! V P                  WB3R7      pVP                  4        V P                  VP                  \        4       V P                  VP                  ^R7      4       \        P                  ! 4       pV! WWP                  V.V^,           4      p	\        P                  ! 4       V,
          p
V P                  W—P                  .4       V P!                  W¢^,           4       V P#                  W¢^,
          4       VP%                  R4       \        P                  ! 4       pV! WWP                  V.^4      p	\        P                  ! 4       V,
          p
V P                  V! V	4      V! VP                  V.4      4       V P!                  V
R4       VP%                  R4       \        P                  ! 4       pV! WWP                  V.^4      p	\        P                  ! 4       V,
          p
V P                  V! V	4      V! WWP                  V.4      4       V P!                  V
R4       VP'                  4        VP)                  4        R# )r   r   c                 ó   € \        V R  R7      # )c                 ó   € \        V 4      # r   )r™  rñ  s   &r   rT  Ú>TestWait.test_wait_integer.<locals>.<lambda>.<locals>.<lambda>‰  s   € ´B°q´Er   r©  )r»  )rî  s   &r   rT  Ú,TestWait.test_wait_integer.<locals>.<lambda>‰  s   € œF 1©/Õ:r   rñ   r+   Ngš™™™™™Ù?)r$	  r   r!   r5  r  ræ   r?	  rç   r×   r¨  r�  rÓ   rë  r”   r•   ru   r‘  r  r#  r-  rè   )rz   r   r¡  Úsorted_r0  r£   r¤   rë   rç   rª   r»  s   &          r   Útest_wait_integerÚTestWait.test_wait_integer„  sÙ  € å0àˆÙ:ˆÜ×'Ò'¨Ó*ˆÜ×#Ò#Ó%‰ˆÜ×#Ò#¨4×+@Ñ+@Ø*-¨ô:ˆð 	
�‰Œ	Ø×Ñ˜aŸj™j¬#Ô.Ø�‰˜Ÿ™¨B˜Ó/Ô0ä—’Ó ˆÙ�A—z‘z 1Ð% x°"¥}Ó5ˆÜ—’Ó  5Õ(ˆà×Ñ˜Ÿz™z˜lÔ+Ø�‰˜¨!�|Ô,Ø×Ñ˜5¨Q¥,Ô/à	�‰ˆtŒä—’Ó ˆÙ�A—z‘z 1Ð% rÓ*ˆÜ—’Ó  5Õ(ˆà×Ñ™ ›¡w°·
±
¸A¨Ó'?Ô@Ø�‰˜˜sÔ#à	�‰ˆtŒä—’Ó ˆÙ�A—z‘z 1Ð% rÓ*ˆÜ—’Ó  5Õ(ˆà×Ñ™ ›¡w°·:±:¸qÐ/AÓ'BÔCØ�‰˜˜sÔ#à	�‰ŒØ	�‰Žr   c                ó@  € ^ RI Hp \        P                  ! 4       w  r#\        P
                  ! 4       pV! V.RR7      p\        P
                  ! 4       V,
          pV P                  V. 4       V P                  V^4       VP                  4        VP                  4        R# )r   r   r+   NrH   )	r$	  r   r!   r  r”   r•   ru   r‘  r$   )rz   r   r£   r¤   r—   rª   s   &     r   Útest_neg_timeoutÚTestWait.test_neg_timeout°  sp   € Ý0Ü×#Ò#Ó%‰ˆÜ�NŠNÓˆÙ�A�3 Ô#ˆÜ�NŠNÓ˜qÕ ˆØ×Ñ˜˜bÔ!Ø�‰˜˜1ÔØ	�‰Œ	Ø	�‰Ž	r   rc   Nri  )r€   r�   r‚   rƒ   r+  r	  r'	  r+	  r2	  r5	  r8	  r   r*  r;	  r?	  rG	  rJ	  rˆ   r‰   rŠ   s   @r   r	  r	    s�   ø‡ € àñó ðô-ð< ñó ðô!4òFò$ð ×Ò˜zÓ*ñ#ó +ð#ð" ñó ðð ×Ò˜zÓ*ñ)ó +ð)÷V	ð 	r   r	  c                   ó„   a € ] tR tRt o ]P
                  ! ]R4      R 4       t]P                  ! ]R4      R 4       t	Rt
V tR# )ÚTestInvalidFamilyi¿  r˜  c                ó¸   € V P                  \        4      ;_uu_ 4        \        P                  P	                  R 4       RRR4       R#   + '       g   i     R# ; i)z\\.\testN©rv   rL   r!   r  r¹  rÁ   s   &r   Útest_invalid_familyÚ%TestInvalidFamily.test_invalid_familyÁ  s6   € à×Ñœz×*Õ*Ü×&Ñ&×/Ñ/°Ô<÷ +×*×*Ò*úó   ž AÁA	z skipped on non-Windows platformsc                ó¸   € V P                  \        4      ;_uu_ 4        \        P                  P	                  R 4       RRR4       R#   + '       g   i     R# ; i)z/var/test.pipeNrO	  rÁ   s   &r   Útest_invalid_family_win32Ú+TestInvalidFamily.test_invalid_family_win32Æ  s7   € à×Ñœz×*Õ*Ü×&Ñ&×/Ñ/Ð0@ÔA÷ +×*×*Ò*úrR	  rc   N)r€   r�   r‚   rƒ   rM   r…   rž  rP	  r,  rT	  rˆ   r‰   rŠ   s   @r   rM	  rM	  ¿  sH   ø‡ € à‡_‚_�UÐ0Ó1ñ=ó 2ð=ð ×Ò˜Ð BÓCñBó DöBr   rM	  c                   óF   a € ] tR tRt o ]R 4       t]R 4       tR tRtV t	R# )Ú	TestFlagsiÏ  c                óV   € VP                  \        \        P                  4      4       R # r   )r#  rõ   r†   Úflags©r  r2  s   &&r   Úrun_in_grandchildÚTestFlags.run_in_grandchildÐ  s   € à�	‰	”%œŸ	™	Ó"Ö#r   c                ó&  € ^ RI p\        P                  ! V4      pVP                  RR7      w  rEVP	                  V P
                  V3R7      p\        P                  ! \        R7      ;_uu_ 4        VP                  4        RRR4       VP                  4       pVP                  4        VP                  4        VP                  4        \        \        P                  4      V3p\!        VP#                  V4      4       R#   + '       g   i     L‡; i)r   NFr  rñ   )Úcategory)Újsonr!   rÚ  r  ræ   r[	  rå  ræ  ÚDeprecationWarningrç   r  rè   r$   rõ   r†   rY	  Úprintr·  )	r  rZ   r_	  Úmprs  rZ  rë   Úgrandchild_flagsrY	  s	   &&       r   Úrun_in_childÚTestFlags.run_in_childÔ  s¸   € ãÜ×(Ò(¨Ó6ˆØ�w‰w˜eˆwÓ$‰ˆØ�J‰J˜c×3Ñ3¸1¸$ˆJÓ?ˆÜ×$Ò$Ô.@×AÖAØ�G‰GŒI÷ BàŸ6™6›8ÐØ	�‰ŒØ	�‰Œ	Ø	�‰Œ	Ü”s—y‘yÓ!Ð#3Ð4ˆÜˆd�j‰j˜ÓÖ ÷ B×Aús   Á0D Ä D	c                óü   € ^ RI pR\        P                  ! 4       : R2p\        P                  ! \
        P                  RRRRV.4      pVP                  VP                  R4      4      w  rEV P                  WE4       R# )	r   NzAfrom multiprocess.tests import TestFlags; TestFlags.run_in_child(Ú)rý  z-Sz-OrÞ  r	  )
r_	  r!   rW   rÿ  Úcheck_outputr†   râ   r¸  r  ru   )rz   r_	  Úprogr‘  Úchild_flagsrc	  s   &     r   Ú_test_flagsÚTestFlags._test_flagsã  st   € Ûð&Ü&5×&FÒ&FÓ&HÑ%KÈ1ðNð 	ô ×&Ò&Ü�^‰^˜T 4¨¨t°TÐ:ó<ˆà(,¯
©
°4·;±;¸wÓ3GÓ(HÑ%ˆØ×Ñ˜Ö7r   rc   N)
r€   r�   r‚   rƒ   r+  r[	  rd	  rk	  rˆ   r‰   rŠ   s   @r   rW	  rW	  Ï  s5   ø‡ € Øñ$ó ð$ð ñ!ó ð!÷
8ð 
8r   rW	  c                   ó6   a € ] tR tRt o ]R 4       tR tRtV tR# )ÚTestTimeoutsió  c                óô   € \         P                  ! ^4       VP                  ^{4       VP                  4        \        P
                  P                  V4      pVP                  R4       VP                  4        R# )rŸ   rÛ  N)r”   r3  r#  r$   r!   r  r  )r  Úchildr)  r2  s   &&& r   Ú_test_timeoutÚTestTimeouts._test_timeoutô  sK   € ä�
Š
�1ŒØ�
‰
�3ŒØ�‰ŒÜ×)Ñ)×0Ñ0°Ó9ˆØ�	‰	�#ŒØ�
‰
Žr   c                óâ  € \         P                  ! 4       p \         P                  ! R 4       \        P                  ! RR7      w  r#\        P
                  P                  RR7      p\        P                  ! V P                  W4P                  3R7      pVP                  4        VP                  4        V P                  VP                  4       ^{4       VP                  4        VP                  4       pV P                  VP                  4       R4       VP                  4        VP                  4        \        V4       \         P                  ! V4       R#   \         P                  ! T4       i ; i)r   Tr  ÚAF_INETr¶  rñ   rÛ  N)rþ  ÚgetdefaulttimeoutÚsetdefaulttimeoutr!   r  r  r¹  ræ   rq	  r)  rç   r$   ru   r  r¾  r/   )rz   Úold_timeoutÚparentrp	  rî  rë   r2  s   &      r   r¼  ÚTestTimeouts.test_timeoutý  sù   € Ü×.Ò.Ó0ˆð	2Ü×$Ò$ SÔ)Ü+×0Ò0¸Ô=‰MˆFÜ×*Ñ*×3Ñ3¸9Ð3ÓEˆAÜ×'Ò'¨t×/AÑ/AØ.3·Y±YÐ-?ôAˆAà�G‰GŒIØ�K‰KŒMØ×Ñ˜VŸ[™[›]¨CÔ0Ø�L‰LŒNØ—8‘8“:ˆDØ×Ñ˜TŸY™Y›[¨#Ô.Ø�J‰JŒLØ�G‰GŒIÜ˜ŒOä×$Ò$ [Ö1øŒF×$Ò$ [Õ1ús   —D'E ÅE.rc   N)	r€   r�   r‚   rƒ   r+  rq	  r¼  rˆ   r‰   rŠ   s   @r   rn	  rn	  ó  s!   ø‡ € Øñó ð÷2ð 2r   rn	  c                   ó&   a € ] tR tRt o R tRtV tR# )ÚTestNoForkBombi  c                ó,  € \         P                  ! 4       p\        P                  P	                  \        P                  P                  \        4      R 4      pVR8w  dS   \        P                  P                  P                  W!4      w  r4pV P                  VR4       V P                  RV4       R# \        P                  P                  P                  ! W!3/ \        B w  r4pV P                  VP                  4       R4       V P                  VR4       R# )zmp_fork_bomb.pyrq   r   s   RuntimeErrors   123N)r!   rW   rI   rê   rè   rJ  rK  rÅ  r   r   Úassert_python_failureru   rw   rß  rà  rk  )rz   r¿  r4   r®  rã  r{   s   &     r   Útest_noforkbombÚTestNoForkBomb.test_noforkbomb  s¿   € Ü×-Ò-Ó/ˆÜ�w‰w�|‰|œBŸG™GŸO™O¬HÓ5Ð7HÓIˆØ�Œ<ÜŸ<™<×5Ñ5×KÑKÈDÓU‰LˆB�SØ×Ñ˜S #Ô&Ø�M‰M˜/¨3Ö/äŸ<™<×5Ñ5×FÒFÀtÑWÔSVÑW‰LˆB�SØ×Ñ˜SŸZ™Z›\¨6Ô2Ø×Ñ˜S #Ö&r   rc   N)r€   r�   r‚   rƒ   r~	  rˆ   r‰   rŠ   s   @r   r{	  r{	    s   ø‡ € ÷
'ð 
'r   r{	  c                   ó6   a € ] tR tRt o ]R 4       tR tRtV tR# )ÚTestForkAwareThreadLocki&  c                ó2  € V^8”  dX   \         P                  ! V P                  V^,
          V3R7      pVP                  4        VP	                  4        \        V4       M(VP                  \        \        P                  4      4       VP	                  4        R# )rŸ   rñ   N)
r!   ræ   rp	  rç   r$   r/   r#  rÙ   r   Ú_afterfork_registry)r  r  r2  rë   s   &&& r   rp	  ÚTestForkAwareThreadLock.child+  s`   € àˆqŒ5Ü×'Ò'¨s¯y©yÀÀ!ÅÀT¸{ÔKˆAØ�G‰GŒIØ�J‰JŒLÜ˜�Oà�I‰I”cœ$×2Ñ2Ó3Ô4Ø�
‰
Žr   c                ór  € \         P                  ! R 4      w  r\        P                  ! 4       p\	        \        P
                  4      p\         P                  ! V P                  ^V3R7      pVP                  4        VP                  4        VP                  4       p\        V4       V P                  Wd4       R# )Frñ   N)r!   r  r   ÚForkAwareThreadLockrÙ   rƒ	  ræ   rp	  rç   r$   r  r/   ÚassertLessEqual)rz   rs  rZ  rî  Úold_sizerë   Únew_sizes   &      r   r  Ú!TestForkAwareThreadLock.test_lock6  s~   € Ü×#Ò# EÓ*‰ˆÜ×$Ò$Ó&ˆÜ”t×/Ñ/Ó0ˆÜ×#Ò#¨4¯:©:¸QÀ¸FÔCˆØ	�‰Œ	Ø	�‰Œ	Ø—6‘6“8ˆÜ�QŒØ×Ñ˜XÖ0r   rc   N)	r€   r�   r‚   rƒ   r+  rp	  r  rˆ   r‰   rŠ   s   @r   r�	  r�	  &  s#   ø‡ € ð
 ñó ð÷	1ð 	1r   r�	  c                   óB   a € ] tR tRt o R tR t]R 4       tR tRt	V t
R# )ÚTestCloseFdsiE  c                óL  € \         '       d$   \        P                  ! 4       P                  4       # \        P                  ! 4       P                  4       p. pV^28  d*   VP                  V4       \        P
                  ! V4      pK0  V F  p\        P                  ! V4       K  	  V# )é2   )rž  rþ  ÚdetachrŸ  rI   Údupr$   )rz   r_  Úto_closer<  s   &   r   Úget_high_socket_fdÚTestCloseFds.get_high_socket_fdG  ss   € ß‹5ô —=’=“?×)Ñ)Ó+Ð+ô —’“×'Ñ'Ó)ˆBØˆHØ�r”'Ø—‘ Ô#Ü—V’V˜B“Z’Û�Ü—’˜–ñ àˆIr   c                óÔ   € \         '       dF   \        P                  ! \        P                  \        P                  VR 7      P	                  4        R# \
        P                  ! V4       R# ))rm  N)rž  rþ  rt	  ÚSOCK_STREAMr$   rI   )rz   r_  s   &&r   r$   ÚTestCloseFds.closeY  s5   € ß‹5Ü�MŠMœ&Ÿ.™.¬&×*<Ñ*<ÀRÔH×NÑNÖPä�HŠH�RŽLr   c                ó  €  \         P                  ! V\         P                  \         P                  4      pVP	                  4        VP                  R 4       R #   \         d   pTP                  T4        R p?R # R p?ii ; ir   )rþ  Úfromfdrt	  r•	  r$   r#  rr   )r  r2  r_  r   rB  s   &&&  r   Ú_test_closefdsÚTestCloseFds._test_closefds_  sX   € ð	Ü—’˜b¤&§.¡.´&×2DÑ2DÓEˆAð �G‰GŒIØ�I‰I�dŽOøô	 ô 	Ø�I‰I�a�LŠLûð	ús   ‚4A ÁB Á$A;Á;B c                ó8  € \         '       g   \        P                  ! R 4      h\        P                  ! 4       w  rV P                  4       p \        P                  ! V P                  W#3R7      pVP                  4        VP                  4        VP                  4       p\        V4       V P                  V4       VP                  4        VP                  4        \        P                  ! 4       R8X  d   V P                  VR4       R# RpV P                  V\        4       T P!                  VP"                  \"        P$                  8H  ;'       g    VP&                  V8H  V4       R#   T P                  T4       TP                  4        TP                  4        i ; i)zrequires fd picklingrñ   rq   Ni6'  )r±  rM   rN   r!   r  r’	  ræ   r™	  rç   r$   r  r/   rW   r@  r×   râ  rÓ   rA  r‰  Úwinerror)rz   r{  r|  r_  rë   rB  ÚWSAENOTSOCKs   &      r   Útest_closefdÚTestCloseFds.test_closefdi  s"  € ß‹}Ü×#Ò#Ð$:Ó;Ð;ä(×-Ò-Ó/‰ˆØ×$Ñ$Ó&ˆð
	Ü×'Ò'¨t×/BÑ/BØ.4¨\ô;ˆAà�G‰GŒIØ�L‰LŒNØ—‘“ˆAÜ˜ŒOà�J‰J�rŒNØ�L‰LŒNØ�L‰LŒNä×+Ò+Ó-°Ô7Ø�M‰M˜!˜TÖ"àˆKØ×!Ñ! !¤WÔ-Ø�O‰O˜AŸG™G¤u§{¡{Ñ2÷ 6ð 6ØŸJ™J¨+Ñ5°qö:øð �J‰J�rŒNØ�L‰LŒNØ�L‰L�Nús   ÁAE& Å&3Frc   N)r€   r�   r‚   rƒ   r’	  r$   r+  r™	  rž	  rˆ   r‰   rŠ   s   @r   rŒ	  rŒ	  E  s-   ø‡ € òò$ð ñó ð÷:ð :r   rŒ	  c                   óú   a € ] tR tRt o ]! ]P                  ]P                  4      t]	R 4       t
]P                  ! ]! ]R4      R4      R 4       t]	R 4       t]P                  ! ]! ]R4      R4      R 4       tRtV tR	# )
ÚTestIgnoreEINTRi‡  c                óþ   € R  p\         P                   ! \         P                  V4       VP                  R4       VP                  4       pVP                  V4       VP	                  RV P
                  ,          4       R# )c                 ó   € R # r   rc   ©r	  Úframes   &&r   ro  Ú-TestIgnoreEINTR._test_ignore.<locals>.handlerŽ  r0  r   Úreadyó   xN)r`  r‰  r#  r  rg  ÚCONN_MAX_SIZE)r  r2  ro  r<  s   &&  r   Ú_test_ignoreÚTestIgnoreEINTR._test_ignoreŒ  sR   € ò	ä�Š”f—n‘n gÔ.Ø�	‰	�'ÔØ�I‰I‹KˆØ�	‰	�!ŒØ�‰˜˜s×0Ñ0Õ0Ö1r   r‰  rŒ  c                ó¤  € \         P                  ! 4       w  r \         P                  ! V P                  V3R 7      pRVn        VP                  4        VP                  4        V P                  VP                  4       R4       \        P                  ! R4       \        P                  ! VP                  \        P                  4       \        P                  ! R4       VP!                  R4       V P                  VP                  4       R4       \        P                  ! R4       \        P                  ! VP                  \        P                  4       V P                  VP#                  4       RV P$                  ,          4       \        P                  ! R4       VP'                  4        VP                  4        R#   TP                  4        i ; i)rñ   Tr§	  r   éÒ  r¨	  N)r!   r  ræ   rª	  rÖ   rç   r$   ru   r  r”   r3  rI   r‡  r  r`  r‰  r#  re  r©	  rè   rª  s   &   r   Útest_ignoreÚTestIgnoreEINTR.test_ignore–  s  € ä*×/Ò/Ó1Ñˆð	Ü×'Ò'¨t×/@Ñ/@Ø.8¨]ô<ˆAàˆAŒHØ�G‰GŒIØ×ÑÔØ×Ñ˜TŸY™Y›[¨'Ô2Ü�JŠJ�sŒOÜ�GŠG�A—E‘Eœ6Ÿ>™>Ô*Ü�JŠJ�sŒOØ�I‰I�dŒOØ×Ñ˜TŸY™Y›[¨$Ô/Ü�JŠJ�sŒOÜ�GŠG�A—E‘Eœ6Ÿ>™>Ô*Ø×Ñ˜TŸ_™_Ó.°°t×7IÑ7IÕ0IÔJÜ�JŠJ�sŒOØ�F‰FŒHà�J‰JŽLøˆD�J‰J�Lús   ™FF= Æ=Gc                óT  € R  p\         P                   ! \         P                  V4       \        P                  P	                  4       ;_uu_ 4       pVP                  VP                  4       VP                  4       pVP                  R4       RRR4       R#   + '       g   i     R# ; i)c                 ó   € R # r   rc   r¤	  s   &&r   ro  Ú6TestIgnoreEINTR._test_ignore_listener.<locals>.handler¯  r0  r   ÚwelcomeN)r`  r‰  r!   r  r¹  r#  r)  r¾  )r  r2  ro  rî  r£   s   &&   r   Ú_test_ignore_listenerÚ%TestIgnoreEINTR._test_ignore_listener­  sf   € ò	ä�Š”f—n‘n gÔ.Ü×'Ñ'×0Ñ0×2Ô2°aØ�I‰I�a—i‘iÔ Ø—‘“
ˆAØ�F‰F�9Ô÷ 3×2×2Ò2ús   Á=BÂB'	c                óˆ  € \         P                  ! 4       w  r \         P                  ! V P                  V3R 7      pRVn        VP                  4        VP                  4        VP                  4       p\        P                  ! R4       \        P                  ! VP                  \        P                  4       \        P                  ! R4       \         P                  P!                  V4      pV P#                  VP                  4       R4       VP%                  4        VP                  4        R#   TP                  4        i ; i)rñ   Tr   r³	  N)r!   r  ræ   r´	  rÖ   rç   r$   r  r”   r3  rI   r‡  r  r`  r‰  r  r  ru   rè   )rz   r2  r2  rë   r)  r  s   &     r   Útest_ignore_listenerÚ$TestIgnoreEINTR.test_ignore_listener·  sÐ   € ä*×/Ò/Ó1Ñˆð	Ü×'Ò'¨t×/IÑ/IØ.8¨]ô<ˆAàˆAŒHØ�G‰GŒIØ×ÑÔØ—i‘i“kˆGÜ�JŠJ�sŒOÜ�GŠG�A—E‘Eœ6Ÿ>™>Ô*Ü�JŠJ�sŒOÜ$×/Ñ/×6Ñ6°wÓ?ˆFØ×Ñ˜VŸ[™[›]¨IÔ6Ø�F‰FŒHà�J‰JŽLøˆD�J‰J�Lús   ™DD/ Ä/Erc   N)r€   r�   r‚   rƒ   Úmaxr   ÚPIPE_MAX_SIZEÚSOCK_MAX_SIZEr©	  r+  rª	  rM   r,  rq  r`  r®	  r´	  r·	  rˆ   r‰   rŠ   s   @r   r¡	  r¡	  ‡  s™   ø‡ € ñ ˜×-Ñ-¨w×/DÑ/DÓE€Màñ2ó ð2ð ×Ò™ ¨Ó3Ð5GÓHñó Iðð, ñó ðð ×Ò™ ¨Ó3Ð5GÓHñó Iör   r¡	  c                   óÜ   a € ] tR tRt o ]R 4       tR tR tR tR t	R t
R t]P                  ! ]P                  R	8H  R
4      ]! R4      R 4       4       t]R 4       t]R 4       tR tRtV tR# )ÚTestStartMethodiÊ  c                óN   € VP                  \        P                  ! 4       4       R # r   )r#  r!   rW   rZ	  s   &&r   Ú_check_contextÚTestStartMethod._check_contextË  s   € à�	‰	”/×2Ò2Ó4Ö5r   c                óH  € VP                  R R7      w  r#VP                  V P                  V3R7      pVP                  4        VP	                  4        VP                  4       pVP	                  4        VP                  4        V P                  WQP                  4       4       R# )Fr  rñ   N)	r  ræ   r¿	  rç   r$   r  rè   ru   rW   )rz   r}   rs  rZ  rë   Úchild_methods   &&    r   Úcheck_contextÚTestStartMethod.check_contextÏ  st   € Ø�x‰x˜uˆxÓ%‰ˆØ�K‰K˜t×2Ñ2¸!¸ˆKÓ>ˆØ	�‰Œ	Ø	�‰Œ	Ø—v‘v“xˆØ	�‰Œ	Ø	�‰ŒØ×Ñ˜×';Ñ';Ó'=Ö>r   c                ó�  € R F­  p \         P                  ! V4      pT P                  TP	                  4       T4       T P                  TP                  4       T4       T P                  \        TP                  R4       T P                  \        TP                  R4       T P                  T4       K¯  	  R#   \         d     KÁ  i ; i)rq   rU   N©rq   rU   r  )	r!   rÚ  rL   ru   rW   r@  rv   rt   rÃ	  )rz   Úmethodr}   s   &  r   rt  ÚTestStartMethod.test_contextÙ  s£   € Û5ˆFðÜ%×1Ò1°&Ó9�ð ×Ñ˜S×1Ñ1Ó3°VÔ<Ø�M‰M˜#Ÿ/™/Ó+¨SÔ1Ø×Ñœj¨#×*>Ñ*>ÀÔHØ×Ñœj¨#×*>Ñ*>ÀÔEØ×Ñ˜sÖ#ó 6øô ô Úðús   ‡B6Â6CÃCc                ó  €  \         P                  ! R 4      pT P                  \        R4      ;_uu_ 4        TP                  . RO4       RRR4       R#   \         d    \        P                  ! R4      hi ; i  + '       g   i     R# ; i)r  zforkserver should be availablez&module_names must be a list of stringsNrf  )r!   rÚ  rL   rM   rN   rá  ré  Úset_forkserver_preload)rz   r}   s   & r   Útest_context_check_module_typesÚ/TestStartMethod.test_context_check_module_typeså  st   € ð	FÜ!×-Ò-¨lÓ;ˆCð ×#Ñ#¤IÐ/W×XÕXØ×&Ñ&¢yÔ1÷ YÑXøô ô 	FÜ×#Ò#Ð$DÓEÐEð	FúçX×XÐXús   ‚A ¶A9Á"A6Á9B
	c                ó   € \         P                  ! \        4       ^ p\         P                  ! 4       p R Fû  p \         P                  ! VRR7       T P                  \         P                  ! 4       T4       \         P                  ! 4       pT P                  TP                  4       T4       T P                  \        T4      P                  P                  4       T4       T P                  TP                  P                  P                  4       T4       T P                  \         4       T^,          pKý  	  \         P                  ! VRR7       V P                  V^4       R#   \
         d     EK:  i ; i  \         P                  ! TRR7       i ; i)r   Tro   NrÆ	  )r!   rÊ	  ÚPRELOADrW   rt   rL   ru   rÚ  ÚassertStartsWithrA  r€   Úlowerræ   rÃ	  rŽ  )rz   r   Ú
old_methodrÇ	  r}   s   &    r   Útest_set_getÚTestStartMethod.test_set_getí  s0  € Ü×.Ò.¬wÔ7ØˆÜ$×5Ò5Ó7ˆ
ð	EÛ9�ðÜ#×4Ò4°VÀ4ÕHð × Ñ ¤×!AÒ!AÓ!CÀVÔLÜ%×1Ò1Ó3�Ø× Ñ  ×!5Ñ!5Ó!7¸Ô@Ø×%Ñ%¤d¨3£i×&8Ñ&8×&>Ñ&>Ó&@À&ÔIØ×%Ñ% c§k¡k×&:Ñ&:×&@Ñ&@Ó&BÀFÔKØ×"Ñ"¤?Ô3Ø˜•
’ñ :ô ×,Ò,¨Z¸tÕDØ×Ñ  qÖ)øô "ô Ûðûô ×,Ò,¨Z¸tÖDús/   ³E3 ¹E ÁC#E3 Å E0Å+E3 Å/E0Å0E3 Å3Fc                óL  € \         P                  ! 4       pV P                  R V4       \        P                  R8X  d   V P                  VR .4       R# \        P                  R8X  d@   V P                  V^ ,          R4       V P                  RV4       V P                  R V4       R# V P                  RV4       \        V4      RR 0,
          ;p'       d   V P                  R0V4       V P                  V^ ,          RR 04       V^ ,          R 8X  d   V P                  RV4       R# R# )rU   r9   r¼  rq   r  N)r!   Úget_all_start_methodsrw   r†   r‡   ru   r³   r>  )rz   ÚmethodsÚother_methodss   &  r   Útest_get_all_start_methodsÚ*TestStartMethod.test_get_all_start_methods  sï   € Ü!×7Ò7Ó9ˆØ�‰�g˜wÔ'Ü�<‰<˜7Ô"Ø×Ñ˜W w iÖ0Ü�\‰\˜XÔ%Ø×Ñ˜W Q�Z¨Ô0à�M‰M˜,¨Ô0Ø�M‰M˜' 7Ö+ð �M‰M˜& 'Ô*Ü # G£°¸Ð/@Õ @Ð@ˆ}Ö@à× Ñ  , °Ô?à×Ñ˜W Q�Z¨,¸Ð)@ÔAà�q�z˜WÔ$ð × Ñ  ¨wÖ7ñ %r   c                ó  € \         P                  ! 4       R 8w  d   V P                  R4       \        P                  P                  \        P                  P                  \        4      R4      p\        P                  P                  P                  ! V3/ \        B w  r#pVP                  4       pVP                  4       pVP                  4       R8w  g   VR8w  d*   \        V4       \        V4       V P!                  R4       R# R# )r  z*test only relevant for 'forkserver' methodzmp_preload.pyÚokra  z(failed spawning forkserver or grandchildN)r!   rW   rÐ   rI   rê   rè   rJ  rK  rÅ  r   r   rß  rà  r  rk  ra	  rs   )rz   r4   r®  rã  r{   s   &    r   Útest_preload_resourcesÚ&TestStartMethod.test_preload_resources  s®   € Ü×+Ò+Ó-°Ô=Ø�M‰MÐFÔGÜ�w‰w�|‰|œBŸG™GŸO™O¬HÓ5°ÓGˆÜ—|‘|×1Ñ1×BÒBÀ4ÑOÌ3ÑO‰ˆ�Ø�j‰j‹lˆØ�j‰j‹lˆØ�:‰:‹<˜4Ô 3¨"¤9Ü�#ŒJÜ�#ŒJØ�I‰IÐ@ÖAñ $-r   r9   z*Only Spawn on windows so no risk of mixingúavoids redundant testing.c                ó†  € R FŽ  p\         P                  ! R4      P                  4       p\         P                  ! V4      pVP                  \        V3R7      pRpV P                  \        V4      ;_uu_ 4        VP                  4        RRR4       K�  	  R F‘  p\         P                  ! 4        Fu  p\         P                  ! V4      P                  4       p\         P                  ! V4      pVP                  \        V3R7      pVP                  4        VP                  4        Kw  	  K“  	  R#   + '       g   i     EK=  ; i)rU   rq   rñ   zA SemLock created in a forkN)rU   r  )
r!   rÚ  r#   ræ   r(   rá  rn  rç   rÕ	  rè   )rz   Úprocess_methodr'   Úprocess_ctxrë   r  Úqueue_methods   &      r   Útest_mixed_startmethodÚ&TestStartMethod.test_mixed_startmethod&  sõ   € ó
 6ˆNÜ#×/Ò/°Ó7×=Ñ=Ó?ˆEÜ)×5Ò5°nÓEˆKØ×#Ñ#¬;¸e¸XÐ#ÓFˆAØ3ˆGØ×'Ñ'¬°g×>Õ>Ø—‘”	÷ ?Ñ>ñ 6ó 4ˆLÜ"1×"GÒ"GÖ"I�Ü'×3Ò3°LÓA×GÑGÓI�Ü-×9Ò9¸.ÓI�Ø×'Ñ'¬{À%ÀÐ'ÓJ�Ø—‘”	Ø—‘–ó #Jó 4÷	 ?×>Ñ>ús   Á8D.Ä.E c                ó(   € VP                  ^4       R# rž   r  )r  r'   s   &&r   Ú_put_one_in_queueÚ!TestStartMethod._put_one_in_queue<  s   € à�	‰	�!Žr   c                ó®   € VP                  ^4       \        P                  ! V P                  V3R7      pVP	                  4        VP                  4        R# r–  )rÇ   r!   ræ   ræ	  rç   rè   )r  r'   r.   s   && r   Ú_put_two_and_nest_onceÚ&TestStartMethod._put_two_and_nest_once@  s9   € à�	‰	�!ŒÜ!×)Ò)°×1FÑ1FÈeÈXÔVˆØ�‰ŒØ�‰Žr   c                ót  € \         P                  ! 4       p\         P                  ! V P                  V3R 7      pVP	                  4        VP                  4        . pVP                  4       '       g"   VP                  VP                  4       4       K7  V P                  \        V4      \        ^^.4      4       R# rÇ  )r!   r#   ræ   ré	  rç   rè   rr  rŸ  rú   ÚassertSetEqualr³   )rz   r'   r.   rñ  s   &   r   Útest_nested_startmethodÚ'TestStartMethod.test_nested_startmethodG  s€   € ô  ×%Ò%Ó'ˆä!×)Ò)°×1LÑ1LÐTYÐS[Ô\ˆØ�‰ŒØ�‰ŒàˆØ—+‘+—-’-Ø�N‰N˜5Ÿ9™9›;Ö'ð 	×ÑœC ›L¬#¨q°!¨f«+Ö6r   rc   N)r€   r�   r‚   rƒ   r+  r¿	  rÃ	  rt  rË	  rÒ	  rØ	  rÜ	  rM   r…   r†   r‡   rd   rã	  ræ	  ré	  rí	  rˆ   r‰   rŠ   s   @r   r½	  r½	  Ê  s£   ø‡ € Øñ6ó ð6ò?ò
$ò2ò*ò*8ò0
Bð ‡_‚_�S—\‘\ WÑ,ØAóCá Ð!<Ó=ñó >óCðð& ñó ðð ñó ð÷7ð 7r   r½	  rž  c                   ó  a € ] tR tRt o R tR tR tR t]P                  ! ]
P                  P                  R4      R4      R 4       t]R	 4       tR
 tR tR tR t]P(                  ! ]! ]R4      R4      R 4       tRtV tR# )ÚTestResourceTrackeriY  c                óR  € R p\         P                   EF  pV P                  VR7      ;_uu_ 4        VR9   d    RRR4       K1  \        P                  ! 4       w  r4\
        P                  ! \        P                  RRVP                  WBR7      .V.\
        P                  R7      p\        P                  ! V4       \        VRRR	7      ;_uu_ 4       pVP                  4       P                  4       P                  R
4      pVP                  4       P                  4       P                  R
4      pRRR4       \!        XV4       VP#                  4        VP%                  4        RV R2p	\&        P(                  ! \&        P*                  V	4       F  p
 \!        XV4       K  	  VP6                  P9                  4       P                  R4      pVP6                  P                  4        RP                  V4      pV P;                  WÍ4       V P;                  VRV,          4       RRR4       EK  	  R#   + '       g   i     EL	; i  \,         dG   pT P/                  TP0                  \0        P2                  \0        P4                  34        Rp? Kí  Rp?ii ; i  + '       g   i     EK“  ; i)aæ  if 1:
            import time, os
            import multiprocess as mp
            from multiprocess import resource_tracker
            from multiprocess.shared_memory import SharedMemory

            mp.set_start_method("spawn")


            def create_and_register_resource(rtype):
                if rtype == "semaphore":
                    lock = mp.Lock()
                    return lock, lock._semlock.name
                elif rtype == "shared_memory":
                    sm = SharedMemory(create=True, size=10)
                    return sm, sm._name
                else:
                    raise ValueError(
                        "Resource type {{}} not understood".format(rtype))


            resource1, rname1 = create_and_register_resource("{rtype}")
            resource2, rname2 = create_and_register_resource("{rtype}")

            os.write({w}, rname1.encode("ascii") + b"\n")
            os.write({w}, rname2.encode("ascii") + b"\n")

            time.sleep(10)
        )r5   Nrý  rÞ  )rZ  r5   )Úpass_fdsrö  r™  T)r[  r	  zA z< resource was leaked after a process was abruptly terminatedrK  z8resource_tracker: There appear to be 2 leaked {} objectszresource_tracker: %r: \[Errno)ÚnoopÚdummy)r1   r3   rø   rI   Úpiperÿ  r   r†   râ   r´   r  r$   rR  r  rk  r  r6   r-  r   r   r’  r6  râ  rw   rA  ÚENOENTÚEINVALrö  rS  r—  )rz   râ  r5   rs  rZ  rë   rU  Úname1Úname2r  r•  rB  r{   r¡  s   &             r   Ú_test_resource_trackerÚ*TestResourceTracker._test_resource_tracker]  s	  € ðˆô: &×4Õ4ˆEØ—‘ E�×*Õ*ØÐ-Ô-ð ÷	 +Ñ*ô
 —w’w“y‘�Ü×$Ò$¤c§n¡nØ%)¨4°·±¸a°Ó1Mð&Oà/0¨cÜ,6¯O©Oô=�ô —’˜”Ü˜!˜T¨4×0Õ0°AØŸJ™J›L×/Ñ/Ó1×8Ñ8¸ÓA�EØŸJ™J›L×/Ñ/Ó1×8Ñ8¸ÓA�E÷ 1ô ! ¨Ô.Ø—‘”Ø—‘”à ˜wð '1ð 2�ä ×/Ò/´×0EÑ0EØ29ö;�AðÜ(¨°Ö6ñ;ð —h‘h—m‘m“o×,Ñ,¨WÓ5�Ø—‘—‘Ô ð&ß&,¡fØ!ó'#ð ð × Ñ  Ô/Ø× Ñ  Ð&FÈÕ&NÔO÷I +Ò*ó 5÷ 1×0Ð0ûô #ô ð Ÿ™ a§g¡g´·±¼e¿l¹lÐ/KÔLÞûð	ú÷1 +×*Ñ*úsW   ±	JÁBJÃAH,Ä,A"JÆI ÆBJÈ,H=È7	JÉ JÉ:JÊJÊJÊJÊJ&c                óÈ  € ^ RI Hp VP                  pVeM   \        P                  ! V\
        P                  4       \        P                  ! V\
        P                  ) R7       \        P                  ! 4       ;_uu_ 4        \        P                  ! R4       VP                  4        RRR4       VP                  p\        P                  ! WA4       \        P                  ! R4       \        P                   ! R4      p\        P                  ! RR7      ;_uu_ 4       p\        P                  ! R	4       VP#                  4       pVP%                  4        VP'                  4        \(        P*                  ! V4      p?\,        P.                  ! 4        V P1                  V! 4       4       V'       dk   V P3                  \5        V4      ^4       V^ ,          p	V P7                  V	P8                  \:        4       V P=                  R
\?        V	P@                  4      4       MV P3                  \5        V4      ^ 4       RRR4       R#   + '       g   i     ELž; i  + '       g   i     R# ; i)r   ©re  N)rÜ   rÞ  rò  rU   T)r�  Úalwayszresource_tracker: process died)!Úmultiprocess.resource_trackerre  rÿ  rI   r‡  r`  rˆ  r   Úwait_processrå  ræ  rç  r  r”   r3  r!   rÚ  r5  rë  rü  r²  r³  r´  rµ  r  ru   rÙ   ÚassertIsSubclassr^	  ÚUserWarningrw   rx   rÑ  )
rz   r	  Ú
should_diere  r  r}   Úall_warnr0  r¶  Úthe_warns
   &&&       r   Úcheck_resource_tracker_deathÚ0TestResourceTracker.check_resource_tracker_death¥  s•  € õ 	DØ×$Ñ$ˆØŠ?Ü�GŠG�CœŸ™Ô(Ü× Ò  ´·±¨Õ?Ü×$Ò$×&Õ&Ü×!Ò! (Ô+Ø×,Ñ,Ô.÷ 'ð  ×$Ñ$ˆä
�Š�ÔÜ�
Š
�3Œä×)Ò)¨'Ó2ˆÜ×$Ò$¨D×1Õ1°XÜ×!Ò! (Ô+Ø—-‘-“/ˆCØ�K‰KŒMØ�K‰KŒMÜ—’˜SÓ!ˆBð Ü�JŠJŒLØ×Ñ™b›dÔ#ßØ× Ñ ¤ X£°Ô2Ø# A�;�Ø×%Ñ% h×&7Ñ&7¼ÔEØ—‘Ð>Ü! (×"2Ñ"2Ó3õ5ð × Ñ ¤ X£°Ô2÷% 2Ñ1÷ '×&Ð&ú÷ 2×1Ð1ús   Â 'H<ÄDIÈ<I	ÉI!	c                óF   € V P                  \        P                  R 4       R# rÍ  )r
  r`  ra  rÁ   s   &r   Útest_resource_tracker_sigintÚ0TestResourceTracker.test_resource_tracker_sigintÊ  s   € à×)Ñ)¬&¯-©-¸Ö?r   c                óF   € V P                  \        P                  R 4       R# rÍ  )r
  r`  r‚  rÁ   s   &r   Útest_resource_tracker_sigtermÚ1TestResourceTracker.test_resource_tracker_sigtermÎ  s   € à×)Ñ)¬&¯.©.¸%Ö@r   ÚnetbsdzKgh-125620: Skip on NetBSD due to long wait for SIGKILL process termination.c                óF   € V P                  \        P                  R 4       R# rÖ  )r
  r`  rˆ  rÁ   s   &r   Útest_resource_tracker_sigkillÚ1TestResourceTracker.test_resource_tracker_sigkillÒ  s   € ð 	×)Ñ)¬&¯.©.¸$Ö?r   c                ó¢   € ^ RI Hp VP                  4        VP                  RV39   pW2P	                  4       ,          pV P                  V4       R# )r   rý	  N)rÿ	  re  r  rÿ  Ú_check_aliver#  )r2  r  re  Úreuseds   &&  r   Ú_is_resource_tracker_reusedÚ/TestResourceTracker._is_resource_tracker_reusedØ  sD   € åCØ×(Ñ(Ô*ð #×'Ñ'¨D°#¨;Ñ6ˆØ×0Ñ0Ó2Õ2ˆØ�	‰	�&Ör   c                ó„  € ^ RI Hp VP                  4        VP                  p\        P
                  ! RR7      w  r4\        P                  ! V P                  WB3R7      pVP                  4        VP                  4       pVP                  4        VP                  4        VP                  4        V P                  V4       R# )r   rý	  Fr  rñ   N)rÿ	  re  r  rÿ  r!   r  ræ   r
  rç   r  rè   r$   rÓ   )rz   re  r  rs  rZ  rë   Úis_resource_tracker_reuseds   &      r   Útest_resource_tracker_reusedÚ0TestResourceTracker.test_resource_tracker_reusedâ  sŠ   € ÝCØ×(Ñ(Ô*Ø×$Ñ$ˆä×#Ò#¨5Ô1‰ˆÜ×#Ò#¨4×+KÑ+KØ*+¨ô3ˆà	�‰Œ	Ø%&§V¡V£XÐ"ð 	
�‰ŒØ	�‰Œ	Ø	�‰Œ	à�‰Ð2Ö3r   c                óÜ   € R pRR\        V4      ,
          ,          pV P                  \        4      ;_uu_ 4        \        P                  ! W!4       RRR4       R#   + '       g   i     R# ; i)r   r£   ry  N)rÙ   rv   rL   r1   Úregister)rz   r5   Útoo_long_name_resources   &  r   Útest_too_long_name_resourceÚ/TestResourceTracker.test_too_long_name_resourceô  sL   € ð  ˆØ!$¨¬c°%«jÕ(8Õ!9ÐØ×Ñœz×*Õ*Ü×%Ò%Ð&<ÔD÷ +×*×*Ò*ús   ¹AÁA+	c                óâ  € ^ RI Hp V! 4       pVP                  4        V P                  VP	                  4       4       V P                  VP                  4       VP                  RR4       V'       d   VP                  RR4       ^ pM^pV P                  VP	                  4       4       V P                  VP                  4       VP                  4        V P                  VP                  V4       R# )r   ©ÚResourceTrackerÚsomenamerô	  N)rÿ	  r"
  r  rÓ   r
  r  Ú	_exitcoder
  r  Ú_stopru   )rz   Úcleanupr"
  rf  Úexpected_exit_codes   &&   r   Ú%_test_resource_tracker_leak_resourcesÚ9TestResourceTracker._test_resource_tracker_leak_resourcesü  s½   € õ 	BÙ!Ó#ˆØ×ÑÔ Ø�‰˜×,Ñ,Ó.Ô/à×Ñ˜'×+Ñ+Ô,Ø×Ñ˜ WÔ-ßØ×Ñ˜z¨7Ô3Ø!"Ñà!"Ðà�‰˜×,Ñ,Ó.Ô/Ø×Ñ˜'×+Ñ+Ô,Ø�‰ŒØ×Ñ˜×*Ñ*Ð,>Ö?r   c                óª   € R F8  pV P                  VR7      ;_uu_ 4        V P                  VR7       RRR4       K:  	  R#   + '       g   i     KO  ; i)zt
Test the exit code of the resource tracker.

If no leaked resources were found, exit code should be 0, otherwise 1
)r&
  N©TF)rø   r(
  )rz   r&
  s   & r   Útest_resource_tracker_exit_codeÚ3TestResourceTracker.test_resource_tracker_exit_code  sG   € ó %ˆGØ—‘ g�×.Õ.Ø×:Ñ:Ø#ð ;ô ÷ /Ñ.ó %ß.×.Ð.ús    AÁAÚpthread_sigmaskz pthread_sigmask is not availablec                ó  € ^ RI Hp \        P                  ! \        P                  \        4       4      p\        P                  \        P                  \        P                  0p V FÌ  p\        P                  ! \        P                  V04       V P                  \        P                  ! \        P                  \        4       4      V04       V! 4       pVP                  4        V P                  \        P                  ! \        P                  \        4       4      V04       VP                  4        KÎ  	  \        P                  ! \        P                  V4       R#   \        P                  ! \        P                  T4       i ; i)r   r!
  N)rÿ	  r"
  r`  r.
  Ú	SIG_BLOCKr³   r‚  ra  r‰  ÚSIG_SETMASKru   r  r%
  )rz   r"
  Úorig_sigmaskÚsignalsÚsigrf  s   &     r   Ú%test_resource_tracker_blocked_signalsÚ9TestResourceTracker.test_resource_tracker_blocked_signals  s   € õ
 	BÜ×-Ò-¬f×.>Ñ.>ÄÃÓFˆÜ—>‘>¤6§=¡=´&·.±.ÐAˆð
	EÛ�Ü×&Ò&¤v×'9Ñ'9¸C¸5ÔAØ× Ñ ¤×!7Ò!7¼×8HÑ8HÌ#Ë%Ó!PÐSVÐRWÔXÙ)Ó+�Ø×&Ñ&Ô(Ø× Ñ ¤×!7Ò!7¼×8HÑ8HÌ#Ë%Ó!PÐSVÐRWÔXØ—‘–ñ ô ×"Ò"¤6×#5Ñ#5°|ÖDøŒF×"Ò"¤6×#5Ñ#5°|ÕDús   Á$CE Å'Frc   N)r€   r�   r‚   rƒ   rú	  r
  r	
  r
  rM   r…   r†   r‡   rÚ  r
  r.  r
  r
  r
  r(
  r,
  r,  rq  r`  r5
  rˆ   r‰   rŠ   s   @r   rð	  rð	  Y  s«   ø‡ € òFPòP#3òJ@òAð ‡_‚_�S—\‘\×,Ñ,¨XÓ6Øbódñ@ódð@ð ñó ðò4ò$Eò@ò*
ð ×Ò™ Ð):Ó;Ð=_Ó`ñEó aöEr   rð	  c                   óz   a € ] tR tRt o ]R 4       tR tR tR t]	P                  P                  R 4       tRtV tR# )	ÚTestSimpleQueuei2  c                óî   € VP                  4         VP                  VP                  4       4       VP                  VP                  4       4       VP                  4        R #   TP                  4        i ; ir   )r   rÇ   rr  r³   rŽ  s   &&&&r   Ú_test_emptyÚTestSimpleQueue._test_empty4  sQ   € à×ÑÔð	&Ø�I‰I�e—k‘k“mÔ$Ø�I‰I�e—k‘k“mÔ$à×#Ñ#Ö%øÐ×#Ñ#Õ%ús   ’>A" Á"A4c                óæ   € \         P                  ! 4       pVP                  4        V P                  \        R 4      ;_uu_ 4        VP                  4        RRR4       R#   + '       g   i     R# ; i)rà  N)r!   ÚSimpleQueuer$   rá  râ  rr  r¡  s   & r   Útest_empty_exceptionsÚ%TestSimpleQueue.test_empty_exceptions>  sF   € ô ×'Ò'Ó)ˆØ	�‰Œ	Ø×#Ñ#¤G¨[×9Õ9Ø�G‰GŒI÷ :×9×9Ò9ús   ÁAÁA0	c                ó”  € \         P                  ! 4       p\         P                  ! 4       p\         P                  ! 4       p\         P                  ! V P                  WV3R 7      pRVn        VP                  4        V P                  VP                  4       4       VP                  4        VP                  4        V P                  VP                  4       4       V P                  VP                  4       R4       V P                  VP                  4       R4       V P                  VP                  4       4       VP                  4        R# )rñ   TFN)r!   r=
  r=  ræ   r:
  rÖ   rç   rÓ   rr  r³   r   rÕ   ru   rú   rè   )rz   r'   r~  r  rä  s   &    r   Ú
test_emptyÚTestSimpleQueue.test_emptyG  sæ   € Ü×+Ò+Ó-ˆÜ)×/Ò/Ó1ˆÜ-×3Ò3Ó5Ðä×&Ò&Ø×#Ñ#ØÐ*=Ð>ô
ˆð ˆŒØ�
‰
Œà�‰˜Ÿ™›Ô&à×ÑÔØ× Ñ Ô"à×Ñ˜Ÿ™›Ô'Ø×Ñ˜Ÿ™› dÔ+Ø×Ñ˜Ÿ™› eÔ,Ø�‰˜Ÿ™›Ô&à�	‰	Žr   c                óp   € \         P                  ! 4       pVP                  4        VP                  4        R # r   )r!   r=
  r$   ©rz   r'   s   & r   r·  ÚTestSimpleQueue.test_close_  s"   € Ü×+Ò+Ó-ˆØ�‰Œà�‰Žr   c                óä   € \         P                  ! 4       pVP                  4        V P                  VP                  P
                  4       V P                  VP                  P
                  4       R # r   )r!   r=
  r$   rÓ   Ú_readerr¯  Ú_writerrD
  s   & r   Útest_closedÚTestSimpleQueue.test_closedf  sE   € ä×+Ò+Ó-ˆØ�‰ŒØ�‰˜Ÿ™×,Ñ,Ô-Ø�‰˜Ÿ™×,Ñ,Ö-r   rc   N)r€   r�   r‚   rƒ   r+  r:
  r>
  rA
  r·  rÅ  r   Úcpython_onlyrI
  rˆ   r‰   rŠ   s   @r   r8
  r8
  2  sD   ø‡ € àñ&ó ð&òòò0ð 
‡\�\×Ññ.ó ö.r   r8
  c                   ó&   a € ] tR tRt o R tRtV tR# )ÚTestPoolNotLeakOnFailurein  c           	     ó²  aa€ ^o. o ! VV3R lR4      pV P                  \        R4      ;_uu_ 4        \        P                  P	                  ^\
        P                  P                  VR7      R7      pVP                  4        VP                  4        RRR4       S F#  pV P                  VP                  4       V4       K%  	  R#   + '       g   i     L;; i)rg  c                   óL   <a € ] tR tRt o V3R ltV3R ltR tR tR tRt	V t
R# )	ÚRTestPoolNotLeakOnFailure.test_release_unused_processes.<locals>.FailingForkProcessiv  c                óT   <€ R V n         RV n        RV n        SP                  V 4       R# )zFake ProcessN)r4   rÜ   rm  rŸ  )rz   rY   Úforked_processess   &,€r   r‘   Ú[TestPoolNotLeakOnFailure.test_release_unused_processes.<locals>.FailingForkProcess.__init__w  s&   ø€ Ø*�”	Ø $�”Ø!�”
Ø ×'Ñ'¨Ö-r   c                óL   <€ S^ 8:  d   \        R4      hS^,          oRV n        R# )r   úManually induced OSErrorr¾  N)râ  rm  )rz   Úwill_fail_ins   &€r   rç   ÚXTestPoolNotLeakOnFailure.test_release_unused_processes.<locals>.FailingForkProcess.start}  s(   ø€ à 1Ô$Ü!Ð"<Ó=Ð=Ø Õ!�Ø&�–
r   c                ó   € R V n         R# )ÚstoppingNrl  rÁ   s   &r   r-  Ú\TestPoolNotLeakOnFailure.test_release_unused_processes.<locals>.FailingForkProcess.terminate„  s	   € Ø'�–
r   c                ó:   € V P                   R 8X  d
   RV n         R# R# )rY
  ÚstoppedNrl  rÁ   s   &r   rè   ÚWTestPoolNotLeakOnFailure.test_release_unused_processes.<locals>.FailingForkProcess.join‡  s   € Ø—:‘: Ô+Ø!*�D–Jñ ,r   c                óN   € V P                   R 8H  ;'       g    V P                   R8H  # )r¾  rY
  rl  rÁ   s   &r   rÔ   Ú[TestPoolNotLeakOnFailure.test_release_unused_processes.<locals>.FailingForkProcess.is_alive‹  s"   € Ø—z‘z YÑ.×JÐJ°$·*±*À
Ñ2JÐJr   )rÜ   r4   rm  N)r€   r�   r‚   rƒ   r‘   rç   r-  rè   rÔ   rˆ   r‰   )r‹   rR
  rV
  s   @€€r   ÚFailingForkProcessrP
  v  s%   ù‡ € õ.õ'ò(ò+÷Kð Kr   r`
  rU
  )ræ   )ÚcontextN)rá  râ  r!   r	  r  rM   r!  Ú	MagicMockr$   rè   rÕ   rÔ   )rz   r`
  rë   r.   rR
  rV
  s   &   @@r   Útest_release_unused_processesÚ6TestPoolNotLeakOnFailure.test_release_unused_processesp  s®   ù€ ð ˆØÐ÷	Kõ 	Kð0 ×#Ñ#¤GÐ-G×HÕHÜ×$Ñ$×)Ñ)¨!´X·]±]×5LÑ5LØ*ð 6Mó 6,Ð)ó -ˆAà�G‰GŒIØ�F‰FŒH÷	 Ió
 (ˆGØ×Ñ˜W×-Ñ-Ó/°Ö9ó (÷ I×Hús   ³A CÃC	rc   N)r€   r�   r‚   rƒ   rc
  rˆ   r‰   rŠ   s   @r   rM
  rM
  n  s   ø‡ € ÷$:ð $:r   rM
  c                   óø  a € ] tR tRt o Rt]P                  P                  tR t	R t
]R 4       t]tR tR t]R 4       tR	 t]R
 4       tR,R lt]R 4       tR-R lt]R 4       tR.R ltR t]R 4       tR t]R 4       tR t]R 4       tR t]R 4       tR/R lt R t!]R 4       t"R t#]R 4       t$R t%]R 4       t&R t']R  4       t(R! t)]R" 4       t*R# t+]R$ 4       t,]R% 4       t-]R& 4       t.R' t/R( t0R) t1R*t2V t3R+# )0ÚTestSyncManagerTypesi—  a9  Test all the types which can be shared between a parent and a
child process by using a manager which acts as an intermediary
between them.

In the following unit-tests the base type is created in the parent
process, the @classmethod represents the worker process and the
shared object is readable and editable between the two.

# The child.
@classmethod
def _test_list(cls, obj):
    assert obj[0] == 5
    assert obj.append(6)

# The parent.
def test_list(self):
    o = self.manager.list()
    o.append(5)
    self.run_worker(self._test_list, o)
    assert o[1] == 6
c                ór   € V P                  4       V n        V P                  P                  4        R V n        R # r   )Úmanager_classr¸   rç   rä  rÁ   s   &r   râ  ÚTestSyncManagerTypes.setUp°  s)   € Ø×)Ñ)Ó+ˆŒØ�‰×ÑÔØˆŽ	r   c                ó  € V P                   eU   V P                   P                  4       '       d5   V P                   P                  4        V P                   P                  4        V P                  P                  4        R V n        R V n         R # r   )rä  rÔ   r-  rè   r¸   r  rÁ   s   &r   ræ  ÚTestSyncManagerTypes.tearDownµ  sZ   € Ø�9‰9Ò  T§Y¡Y×%7Ñ%7×%9Ò%9Ø�I‰I×ÑÔ!Ø�I‰I�N‰NÔØ�‰×ÑÔØˆŒØˆŽ	r   c                ó0   € \         P                  ! 4        R # r   )r   Úreap_childrenrW  s   &r   r  ÚTestSyncManagerTypes.setUpClass½  s   € ä×ÒÖr   c                ó   € \        V P                  4       \        p\        P                  ! 4       p\
        P                  ! VR R7       F)  p\        \        P                  ! 4       4      ^8:  g   K(   R# 	  \        P                  ! 4       V,
          pR\
        n
        \
        P                  ! R\        P                  ! 4        RVR R24       R# )F©ÚerrorTúmultiprocess.Manager still has ú active children after ú.1frj  N)r/   rä  ÚWAIT_ACTIVE_CHILDREN_TIMEOUTr”   r•   r   r’  rÙ   r!   r?  Úenvironment_alteredÚprint_warning)rz   r,   Ú
start_timer•  r}  s   &    r   Úwait_proc_exitÚ#TestSyncManagerTypes.wait_proc_exitÃ  s¢   € ô 	�T—Y‘YÔä.ˆÜ—^’^Ó%ˆ
Ü×'Ò'¨°u×=ˆAÜ”?×2Ò2Ó4Ó5¸Ö:Úñ >ô —’Ó! JÕ.ˆBØ*.ŒGÔ'Ü×!Ò!Ð$CÜ%4×%DÒ%DÓ%FÐ$Gð H;Ø;=¸c¸(À(ð#Lö Mr   c                ó  € \         P                  ! W3R 7      V n        RV P                  n        V P                  P	                  4        V P                  4        V P                  V P                  P                  ^ 4       R# rô  )r!   ræ   rä  rÖ   rç   ry
  ru   rÜ   )rz   Úworkerr¦  s   &&&r   Ú
run_workerÚTestSyncManagerTypes.run_workerÕ  sV   € Ü#×+Ò+°6ÀÔHˆŒ	Øˆ�	‰	ÔØ�	‰	�‰ÔØ×ÑÔØ×Ñ˜Ÿ™×+Ñ+¨QÖ/r   c                ó˜   € VP                  4       '       g   Q hVP                  4        VP                  4        VP                  R 4       R# ©r»  N)rã  r   rÜ  ©r  r¦  s   &&r   rŽ  Ú TestSyncManagerTypes._test_eventÜ  s/   € à�z‰z�|Š|Ðˆ|Ø�‰Œ
Ø�	‰	ŒØ�‰�Žr   c                óä   € V P                   P                  4       pVP                  4        V P                  V P                  V4       VP                  4       '       d   Q hVP                  R 4       R# r€
  )r¸   r=  r³   r}
  rŽ  rã  r   ©rz   r–  s   & r   r‘  ÚTestSyncManagerTypes.test_eventã  sL   € Ø�L‰L×ÑÓ ˆØ	�‰ŒØ�‰˜×(Ñ(¨!Ô,Ø—8‘8—:’:Ðˆ~Ø	�‰ˆuŽr   c                ót   € VP                  4        \        P                  R 8”  d   VP                  4        R# R# ©r  N)rë  r†   r  r  r�
  s   &&r   Ú
_test_lockÚTestSyncManagerTypes._test_lockê  s"   € à�‰ŒÜ�>‰>˜IÔ% s§z¡z¦|Ñ%r   c                óÔ   € \        V P                  V4      ! 4       pV P                  V P                  V4       VP	                  4        V P                  \        VP                  4       R # r   )r÷  r¸   r}
  rˆ
  rü  rv   rn  ©rz   Úlnamer–  s   && r   r  ÚTestSyncManagerTypes.test_lockï  sD   € Ü�D—L‘L %Ô(Ó*ˆØ�‰˜Ÿ™¨Ô+Ø	�	‰	ŒØ×Ñœ,¨¯	©	Ö2r   c                ó”   € VP                  4        VP                  4        \        P                  R 8”  d   VP	                  4        R# R# r‡
  )rë  rü  r†   r  r  r�
  s   &&r   Ú_test_rlockÚ TestSyncManagerTypes._test_rlockõ  s+   € à�‰ŒØ�‰ŒÜ�>‰>˜IÔ% s§z¡z¦|Ñ%r   c                ót   € \        V P                  V4      ! 4       pV P                  V P                  V4       R # r   )r÷  r¸   r}
  r�
  r‹
  s   && r   r  ÚTestSyncManagerTypes.test_rlockû  s)   € Ü�D—L‘L %Ô(Ó*ˆØ�‰˜×(Ñ(¨!Ö,r   c                ó&   € VP                  4        R # r   )rë  r�
  s   &&r   r1  Ú$TestSyncManagerTypes._test_semaphoreÿ  s   € à�‰Žr   c                ó”   € \        V P                  V4      ! 4       pV P                  V P                  V4       VP	                  4        R # r   )r÷  r¸   r}
  r1  rü  )rz   Úsnamer–  s   && r   r6  Ú#TestSyncManagerTypes.test_semaphore  s2   € Ü�D—L‘L %Ô(Ó*ˆØ�‰˜×,Ñ,¨aÔ0Ø	�	‰	Žr   c                ó*   € V P                  R R7       R# )r9  )r–
  N)r6  rÁ   s   &r   r:  Ú+TestSyncManagerTypes.test_bounded_semaphore  s   € Ø×ÑÐ"4ÐÖ5r   c                óF   € VP                  4        VP                  4        R # r   )rë  rü  r�
  s   &&r   Ú_test_conditionÚ$TestSyncManagerTypes._test_condition  s   € à�‰ŒØ�‰Žr   c                ór   € V P                   P                  4       pV P                  V P                  V4       R # r   )r¸   rY  r}
  r›
  r„
  s   & r   Útest_conditionÚ#TestSyncManagerTypes.test_condition  s(   € Ø�L‰L×"Ñ"Ó$ˆØ�‰˜×,Ñ,¨aÖ0r   c                óL   € VP                   ^8X  g   Q hVP                  4        R# rÅ   )rî  r  r�
  s   &&r   Ú_test_barrierÚ"TestSyncManagerTypes._test_barrier  s   € à�{‰{˜aÔÐÐØ�	‰	Žr   c                ót   € V P                   P                  ^4      pV P                  V P                  V4       R# rÅ   )r¸   rß  r}
  r¡
  r„
  s   & r   r÷  Ú!TestSyncManagerTypes.test_barrier  s*   € Ø�L‰L× Ñ  Ó#ˆØ�‰˜×*Ñ*¨AÖ.r   c                óV   € V;_uu_ 4         R R R 4       R #   + '       g   i     R # ; ir   rc   r�
  s   &&r   Ú
_test_poolÚTestSyncManagerTypes._test_pool  s   € ÷ ŠSØ÷ �S�SŠSús   ‹—(	c                óv   € V P                   P                  ^R7      pV P                  V P                  V4       R# )rj   rp  N)r¸   r  r}
  r¦
  r„
  s   & r   Ú	test_poolÚTestSyncManagerTypes.test_pool#  s+   € Ø�L‰L×Ñ¨ÐÓ*ˆØ�‰˜Ÿ™¨Ö+r   c                óP  € VP                  4       ^8X  g   Q hVP                  4       '       g   Q hVP                  4       '       d   Q hVP                  4       ^8X  g   Q hVP                  4       '       d   Q hVP                  4       ^8X  g   Q hVP                  4       '       g   Q hR# r4  )rs  rw  rr  rú   r�
  s   &&r   Ú_test_queueÚ TestSyncManagerTypes._test_queue'  sz   € à�y‰y‹{˜aÔÐÐØ�x‰x�zŠzÐˆzØ—9‘9—;’;ÐˆØ�w‰w‹y˜AŒ~Ðˆ~Ø—9‘9—;’;ÐˆØ�w‰w‹y˜AŒ~Ðˆ~Ø�y‰y�{Š{ÐŠ{r   c                ó  € \        V P                  V4      ! ^4      pVP                  ^4       VP                  ^4       V P                  V P                  V4       VP                  4       '       g   Q hVP                  4       '       d   Q hR# r4  )r÷  r¸   rÇ   r}
  r¬
  rr  rw  )rz   Úqnamer–  s   && r   Ú
test_queueÚTestSyncManagerTypes.test_queue1  sc   € Ü�D—L‘L %Ô(¨Ó+ˆØ	�‰ˆaŒØ	�‰ˆaŒØ�‰˜×(Ñ(¨!Ô,Ø�w‰w�yŠyÐˆyØ—6‘6—8’8Ðˆ|‘8r   c                ó(   € V P                  R 4       R# )rª  N)r°
  rÁ   s   &r   Útest_joinable_queueÚ(TestSyncManagerTypes.test_joinable_queue9  s   € Ø�‰˜Ö(r   c                óì  € \         P                  ! 4       pVP                  V^ ,          ^4       VP                  VP                  ^4      ^4       VP                  VP	                  ^4      ^ 4       V^.,          pVP                  V\        P                  P                  4       VP                  \        V4      ^^.4       V^,          pVP                  V\        P                  P                  4       VP                  \        V4      . RO4       V^,          pVP                  V\        4       VP                  \        V4      . RO4       ^V,          pVP                  V\        4       VP                  \        V4      . RO4       VP                  4       pVP                  V\        4       VP                  \        V4      . RO4       VP                  W4,           4       VP                  4        VP                  4        V F  pK  	  VP                  \        V4      ^4       VP                  VP!                  ^ 4      ^4       VP#                  4        VP                  \        V4      ^ 4       R# )r   N)rÆ   rs  rÆ   rs  )rÆ   rs  rÆ   rs  rÆ   rs  rÆ   rs  )rM   ÚTestCaseru   r   r›  r×   r!   r]  Ú	ListProxyÚassertListEqualrô   r   r�  r5  rž  rÙ   r�  rÜ  )r  r¦  ÚcaseÚ
double_objÚ
copied_objr<  s   &&    r   Ú
_test_listÚTestSyncManagerTypes._test_list<  sÑ  € ä× Ò Ó"ˆØ×Ñ˜˜Q� Ô#Ø×Ñ˜Ÿ™ 1› qÔ)Ø×Ñ˜Ÿ™ 1› qÔ)Ø�ˆs�
ˆØ×Ñ˜c¤?×#;Ñ#;×#EÑ#EÔFØ×ÑœT #›Y¨¨A¨Ô/Øˆq�ˆØ×Ñ˜c¤?×#;Ñ#;×#EÑ#EÔFØ×ÑœT #›YªÔ5Ø˜1•Wˆ
Ø×Ñ˜j¬$Ô/Ø×ÑœT *Ó-Ò/GÔHØ˜•Wˆ
Ø×Ñ˜j¬$Ô/Ø×ÑœT *Ó-Ò/GÔHØ—X‘X“Zˆ
Ø×Ñ˜j¬$Ô/Ø×ÑœT *Ó-ª|Ô<Ø�
‰
�:Õ*Ô+Ø�‰Œ
Ø�‰ŒÛˆAÙñ à×Ñœ˜S› 2Ô&Ø×Ñ˜Ÿ™ › QÔ'Ø�	‰	ŒØ×Ñœ˜S› 1Ö%r   c                óì   € V P                   P                  4       pVP                  ^4       V P                  V P                  V4       V P                  V4       V P                  \        V4      ^ 4       R# rÅ   )r¸   rô   rŸ  r}
  r¼
  rÂ  ru   rÙ   r„
  s   & r   r‘  ÚTestSyncManagerTypes.test_list[  sS   € Ø�L‰L×ÑÓˆØ	�‰�ŒØ�‰˜Ÿ™¨Ô+Ø×Ñ˜QÔØ×Ñœ˜Q› Ö#r   c           	     ó6  € \         P                  ! 4       pVP                  \        V4      ^4       VP                  VR,          ^4       VP                  VP	                  R4      ^4       VP                  \        VP                  4       4      R.4       VP                  \        VP                  4       4      R.4       VP                  \        VP                  4       4      ^.4       VP                  VP                  4       R^/4       VR^/,          pVP                  V\        P                  P                  4       VP                  \!        V4      R^R^/4       \#        V4      pVP                  V\%        \'        . 4      4      4       VP                  \        V4      RR.4       R^R^/V,          pVP                  V\         4       VP                  \!        V4      R^R^R^/4       VR^R^/,          pVP                  V\         4       VP                  \!        V4      R^R^R^/4       VP)                  R.^4      pVP                  V\         4       VP                  VR^/4       VP+                  4       pVP                  V\,        4       VP/                  VR4       VP1                  R^ 4       VP3                  R^/4       VP                  VP5                  R4      ^4       VP7                  4        VP                  \        V4      ^ 4       R# )rŸ   rß  r  rõ  N)rß  rÆ   )r  r}  )rM   r¶
  ru   rÙ   rú   r¸
  rô   ré  r¼  rF  ÚassertDictEqualr   r×   r!   r]  Ú	DictProxyrº  ÚreversedrA  r6  ÚfromkeysrÄ  rõ   ÚassertTupleEqualrÅ  rÆ  r�  rÜ  )r  r¦  r¹
  r<  s   &&  r   Ú
_test_dictÚTestSyncManagerTypes._test_dictb  s}  € ä× Ò Ó"ˆØ×Ñœ˜S› 1Ô%Ø×Ñ˜˜U� QÔ'Ø×Ñ˜Ÿ™ ›¨Ô+Ø×ÑœT #§)¡)£+Ó.°°Ô=Ø×ÑœT #§(¡(£*Ó-°¨wÔ7Ø×ÑœT #§*¡*£,Ó/°!°Ô5Ø×Ñ˜SŸX™X›Z¨%°¨Ô4Ø��qˆzÕˆØ×Ñ˜c¤?×#;Ñ#;×#EÑ#EÔFØ×ÑœT #›Y¨°°5¸!Ð(<Ô=Ü�S‹MˆØ×Ñ˜a¤¤d¨2£h£Ô0Ø×ÑœT !›W u¨e nÔ5Ø�A�u˜aÐ  3Õ&ˆØ×Ñ˜a¤Ô&Ø×ÑœT !›W u¨a°¸¸5À!Ð&DÔEØ�5˜!˜U AÐ&Õ&ˆØ×Ñ˜a¤Ô&Ø×ÑœT !›W u¨a°¸¸5À!Ð&DÔEØ�L‰L˜%˜ !Ó$ˆØ×Ñ˜a¤Ô&Ø×Ñ˜Q ¨ 
Ô+Ø�K‰K‹MˆØ×Ñ˜a¤Ô'Ø×Ñ˜a Ô,Ø�‰�u˜aÔ Ø�
‰
�E˜1�:ÔØ×Ñ˜Ÿ™ ›¨Ô+Ø�	‰	ŒØ×Ñœ˜S› 1Ö%r   c                óÔ   € V P                   P                  4       p^VR&   V P                  V P                  V4       V P	                  V4       V P                  \        V4      ^ 4       R# )rÆ   rß  N)r¸   rº  r}
  rÆ
  rÂ  ru   rÙ   r„
  s   & r   r¾  ÚTestSyncManagerTypes.test_dict„  sQ   € Ø�L‰L×ÑÓˆØˆˆ%‰Ø�‰˜Ÿ™¨Ô+Ø×Ñ˜QÔØ×Ñœ˜Q› Ö#r   c                óÊ   € \         P                  ! 4       pVP                  VP                  ^4       VP                  VP	                  4       ^4       VP                  ^4       R# rž   )rM   r¶
  ru   r©   rú   r³   ©r  r¦  r¹
  s   && r   Ú_test_valueÚ TestSyncManagerTypes._test_value‹  sE   € ä× Ò Ó"ˆØ×Ñ˜Ÿ™ AÔ&Ø×Ñ˜Ÿ™› AÔ&Ø�‰�Ž
r   c                óî   € V P                   P                  R ^4      pV P                  V P                  V4       V P	                  VP
                  ^4       V P	                  VP                  4       ^4       R# r�  )r¸   r   r}
  rÌ
  ru   r©   rú   r„
  s   & r   rN  ÚTestSyncManagerTypes.test_value’  sV   € Ø�L‰L×Ñ˜s AÓ&ˆØ�‰˜×(Ñ(¨!Ô,Ø×Ñ˜Ÿ™ !Ô$Ø×Ñ˜Ÿ™› !Ö$r   c                ó  € \         P                  ! 4       pVP                  V^ ,          ^ 4       VP                  V^,          ^4       VP                  \        V4      ^4       VP	                  \        V4      ^ ^.4       R# r)  )rM   r¶
  ru   rÙ   r¸
  rô   rË
  s   && r   Ú_test_arrayÚ TestSyncManagerTypes._test_array˜  sd   € ä× Ò Ó"ˆØ×Ñ˜˜Q� Ô#Ø×Ñ˜˜Q� Ô#Ø×Ñœ˜S› 1Ô%Ø×ÑœT #›Y¨¨A¨Ö/r   c                óz   € V P                   P                  R ^ ^.4      pV P                  V P                  V4       R# r�  )r¸   rx  r}
  rÑ
  r„
  s   & r   r{  ÚTestSyncManagerTypes.test_array   s0   € Ø�L‰L×Ñ˜s Q¨ FÓ+ˆØ�‰˜×(Ñ(¨!Ö,r   c                ó    € \         P                  ! 4       pVP                  VP                  ^ 4       VP                  VP                  ^4       R# r)  )rM   r¶
  ru   r<  r=  rË
  s   && r   Ú_test_namespaceÚ$TestSyncManagerTypes._test_namespace¤  s8   € ä× Ò Ó"ˆØ×Ñ˜Ÿ™ Ô"Ø×Ñ˜Ÿ™ Ö"r   c                óŽ   € V P                   P                  4       p^ Vn        ^Vn        V P	                  V P
                  V4       R# r)  )r¸   rã  r<  r=  r}
  rÖ
  r„
  s   & r   ræ  Ú#TestSyncManagerTypes.test_namespaceª  s6   € Ø�L‰L×"Ñ"Ó$ˆØˆŒØˆŒØ�‰˜×,Ñ,¨aÖ0r   c                óX  € \         P                  ! 4       pVP                  . RO4       VP                  \	        V4      ^4       VP                  R V4       VP                  RV4       VRR0,          pVP                  V0 Rm4       RR0V,          pVP                  V0 Rm4       VRR0,          pVP                  V0 Rm4       VP                  V\        P                  P                  4       VP                  4        VP                  . RO4       0 RmV,
          pVP                  VR04       VR R0,
          pVP                  VR04       VR R0,          pVP                  VR04       VP                  V\        P                  P                  4       VP                  4        VP                  . RO4       0 R	mV,          pVP                  VR R04       V0 R	m,          pVP                  VR R04       V0 R	m,          pVP                  VR R04       VP                  V\        P                  P                  4       VP                  4        VP                  . RO4       V0 R	m,          pVP                  VRR04       0 R	mV,          pVP                  VRR04       V0 R	m,          pVP                  VRR04       VP                  V\        P                  P                  4       VP                  4        VP                  . RO4       VP                  \        V4      0 R
m4       R# )r£   r¤   rÉ   rg  rB  N©r£   r¤   rÉ   ¾   r£   r¤   rÉ   rg  rB  ¾   r£   r¤   rg  ¾   r¤   rÉ   rg  ¾   r£   r¤   rÉ   )rM   r¶
  rÆ  ru   rÙ   rw   r>  rì	  r×   r!   r]  ÚSetProxyrÜ  r³   ©r  r¦  r¹
  r   s   &&  r   Ú_test_set_operator_symbolsÚ/TestSyncManagerTypes._test_set_operator_symbols°  s“  € ä× Ò Ó"ˆØ�
‰
’?Ô#Ø×Ñœ˜S› 1Ô%Ø�‰�c˜3ÔØ×Ñ˜˜cÔ"Ø˜˜S�zÕ!ˆØ×Ñ˜FÒ$=Ô>Ø�s�˜cÕ!ˆØ×Ñ˜FÒ$=Ô>Ø��SˆzÕˆØ×Ñ˜CÒ!:Ô;Ø×Ñ˜c¤?×#;Ñ#;×#DÑ#DÔEà�	‰	ŒØ�
‰
’?Ô#Ú  3Õ&ˆØ×Ñ˜F S EÔ*Ø˜˜S�zÕ!ˆØ×Ñ˜F S EÔ*Ø��SˆzÕˆØ×Ñ˜C # Ô'Ø×Ñ˜c¤?×#;Ñ#;×#DÑ#DÔEà�	‰	ŒØ�
‰
’?Ô#Ú  3Õ&ˆØ×Ñ˜F S¨# JÔ/Ø’Õ&ˆØ×Ñ˜F S¨# JÔ/ØŠÕˆØ×Ñ˜C # s Ô,Ø×Ñ˜c¤?×#;Ñ#;×#DÑ#DÔEà�	‰	ŒØ�
‰
’?Ô#Ø’Õ&ˆØ×Ñ˜F S¨# JÔ/Ú  3Õ&ˆØ×Ñ˜F S¨# JÔ/ØŠÕˆØ×Ñ˜C # s Ô,Ø×Ñ˜c¤?×#;Ñ#;×#DÑ#DÔEà�	‰	ŒØ�
‰
’?Ô#Ø×ÑœC ›H¢oÖ6r   c                ó^  € \         P                  ! 4       pVP                  R 4       VP                  R V4       VP	                  4        VP                  . RO4       VP                  4       pVP                  W14       VP                  R4       VP                  RV4       VP                  \        VP                  R4       VP	                  4        VP                  R.4       VP                  R4       VP                  RV4       VP                  R4       VP                  RV4       VP                  R.4       VP                  4       pVP                  WA4       VP	                  4        VP                  . RO4       VP                  0 Rm4      pVP                  VRR04       VP                  0 Rm4       VP                  VRR04       VP	                  4        VP                  . RO4       VP!                  RR04      pVP                  VR04       VP#                  RR04       VP                  VR04       VP	                  4        VP                  . RO4       VP%                  0 Rm4      pVP                  VRR 04       VP'                  0 Rm4       VP                  VRR 04       R# )rg  r£   r¤   rÉ   NrÛ
  rÞ
  )rM   r¶
  Úaddrw   rÜ  rÆ  r   rì	  rè  r>  rv   r«  Údiscardr�  ÚintersectionÚintersection_updateÚ
differenceÚdifference_updateÚsymmetric_differenceÚsymmetric_difference_update)r  r¦  r¹
  Úcopy_objÚpoppedr   s   &&    r   Ú_test_set_operator_methodsÚ/TestSyncManagerTypes._test_set_operator_methodsá  s  € ä× Ò Ó"ˆØ�‰�ŒØ�‰�c˜3Ôà�	‰	ŒØ�
‰
’?Ô#Ø—8‘8“:ˆØ×Ñ˜HÔ*Ø�
‰
�3ŒØ×Ñ˜˜cÔ"Ø×Ñœ( C§J¡J°Ô4à�	‰	ŒØ�
‰
�C�5ÔØ�‰�CÔØ×Ñ˜˜cÔ"Ø�‰�CÔØ×Ñ˜˜cÔ"Ø�
‰
�C�5ÔØ—‘“ˆØ×Ñ˜Ô%à�	‰	ŒØ�
‰
’?Ô#Ø×!Ñ!¢/Ó2ˆØ×Ñ˜F S¨# JÔ/Ø×Ñ¢Ô0Ø×Ñ˜C # s Ô,à�	‰	ŒØ�
‰
’?Ô#Ø—‘  c 
Ó+ˆØ×Ñ˜F S EÔ*Ø×Ñ˜s C˜jÔ)Ø×Ñ˜C # Ô'à�	‰	ŒØ�
‰
’?Ô#Ø×)Ñ)ª/Ó:ˆØ×Ñ˜F S¨# JÔ/Ø×'Ñ'ªÔ8Ø×Ñ˜C # s Ö,r   c                óÚ  € \         P                  ! 4       pVP                  . RO4       VP                  RR04      pVP	                  V0 Rm4       VP                  VP                  RR04      4       VP                  VP                  R R04      4       VP                  VP                  0 Rm4      4       VP                  VP                  R R04      4       VP                  V0 Rm4       VP                  V0 Rm4       VP                  VP                  R R04      4       VP                  VP                  0 R	m4      4       VP                  VR 04       VP                  VR R04       R# )
r£   r¤   rg  rB  NrÛ
  rÜ
  >   r£   r¤   rÉ   rg  rß
  rÝ
  )rM   r¶
  rÆ  Úunionrì	  rÓ   Ú
isdisjointrÕ   Úissubsetr‘  r‡	  Ú
issupersetr  rŽ  rá
  s   &&  r   Ú_test_set_comparisonsÚ*TestSyncManagerTypes._test_set_comparisons  s  € ä× Ò Ó"ˆØ�
‰
’?Ô#Ø—‘˜C ˜:Ó&ˆØ×Ñ˜FÒ$=Ô>Ø�‰˜Ÿ™¨¨S zÓ2Ô3Ø×Ñ˜Ÿ™¨¨c¨
Ó3Ô4à�‰˜Ÿ™Ò%9Ó:Ô;Ø×Ñ˜Ÿ™ s¨C jÓ1Ô2Ø�‰˜Ò1Ô2Ø×Ñ˜S¢/Ô2à�‰˜Ÿ™¨¨S zÓ2Ô3Ø×Ñ˜Ÿ™ªÓ8Ô9Ø×Ñ˜3  Ô&Ø×Ñ  c¨3 ZÖ0r   c                óJ  € V P                   P                  4       pV P                  V P                  V4       V P                   P                  4       pV P                  V P                  V4       V P                   P                  4       pV P                  V P
                  V4       R # r   )r¸   r³   r}
  râ
  rï
  rö
  r„
  s   & r   Útest_setÚTestSyncManagerTypes.test_set!  st   € Ø�L‰L×ÑÓˆØ�‰˜×7Ñ7¸Ô;Ø�L‰L×ÑÓˆØ�‰˜×7Ñ7¸Ô;Ø�L‰L×ÑÓˆØ�‰˜×2Ñ2°AÖ6r   c                óŠ  € V P                   P                  0 Rm4      pV P                  V0 Rm4       V P                   P                  . RO4      pV P                  V0 Rm4       V P                   P                  R ^R^R^/4      pV P                  V0 Rm4       V P                  \        V P                   P                  R4       R# )r£   r¤   rÉ   r­	  Nrß
  rÛ
  )r¸   r³   rì	  rv   re  r„
  s   & r   Útest_set_initÚ"TestSyncManagerTypes.test_set_init)  s—   € Ø�L‰L×Ñš_Ó-ˆØ×Ñ˜AšÔ/Ø�L‰L×Ñš_Ó-ˆØ×Ñ˜AšÔ/Ø�L‰L×Ñ˜c 1 c¨1¨c°1Ð5Ó6ˆØ×Ñ˜AšÔ/Ø×Ñœ+ t§|¡|×'7Ñ'7¸Ö>r   c                ó  € V P                   P                  4       p0 R kRkRkRkRkRkRkRkRkR	kR
kRkRkRkRkRkRkRkRkRkRkRkRkRkRkRkRkRkRkRkRkRkR kR!kR"kR#kR$kpV P                  V\        \        V4      4      4       R%# )&Ú__and__Ú__class_getitem__r”  Ú__iand__Ú__ior__Ú__isub__rÂ  Ú__ixor__r³  Ú__or__Ú__rand__Ú__ror__Ú__rsub__Ú__rxor__Ú__sub__Ú__xor__Ú__ge__Ú__gt__Ú__le__Ú__lt__rå
  rÜ  r   ré
  rê
  ræ
  rç
  rè
  ró
  rô
  rõ
  r�  rè  rë
  rì
  rò
  rÆ  N)r¸   r³   r‡	  Údir)rz   r–  Úset_methodss   &  r   Útest_set_contain_all_methodÚ0TestSyncManagerTypes.test_set_contain_all_method2  s™  € Ø�L‰L×ÑÓˆð	
Øð	
Ø*ð	
Ø,:ð	
Ø<Fð	
ØHQð	
àð	
à"ð	
à$.ð	
à09ð	
à;Cð	
àEOð	
ð ð	
ð "ð	
ð $.ð	
ð 09ð	
ð ;Dð	
ð ð		
ð ð		
ð !)ð		
ð +3ð		
ð
 ð	
ð
 ð	
ð
 #ð	
ð
 %1ð	
ð
 3Fð	
ð
 HQð	
ð ð	
ð 2ð	
ð 4@ð	
ð BLð	
ð ð	
ð  ð	
ð "*ð	
ð ,Bð	
ð *ð	
ð ,3ð	
ð 5=ð	
ˆð 	×Ñ˜[¬#¬c°!«f«+Ö6r   )r¸   rä  N)rû  )r  )r5  )r#   )4r€   r�   r‚   rƒ   r„   r!   r]  rè  rh
  râ  ræ  r+  r  r  ry
  r}
  rŽ  r‘  rˆ
  r  r�
  r  r1  r6  r:  r›
  rž
  r¡
  r÷  r¦
  r©
  r¬
  r°
  r³
  r¼
  r‘  rÆ
  r¾  rÌ
  rN  rÑ
  r{  rÖ
  ræ  râ
  rï
  rö
  rù
  rü
  r  rˆ   r‰   rŠ   s   @r   rf
  rf
  —  sï  ø‡ € ñð* $×,Ñ,×8Ñ8€Mòò
ð ñ ó ð ð €MòMò$0ð ñó ðòð ñ4ó ð4ô3ð ñ4ó ð4ô
-ð ñó ðôò
6ð ñó ðò1ð ñó ðò/ð ñó ðò
,ð ñó ðôò)ð ñ&ó ð&ò<$ð ñ&ó ð&òB$ð ñó ðò%ð ñ0ó ð0ò-ð ñ#ó ð#ò
1ð ñ.7ó ð.7ð` ñ*-ó ð*-ðX ñ1ó ð1ò$7ò?÷7ð 7r   rf
  c                   óh   a € ] tR tRt o ]P
                  ! RR4      ]! R4      R 4       4       tRtV t	R# )ÚTestNamedResourceiA  TÚModuleNotFoundErrorzspawn specific test.c                óˆ  € \         P                  pV P                  \         P                  V4       \	        VR RR7      ;_uu_ 4       pVP                  \        P                  ! R4      4       RRR4       \        P                  ! V4      w  r4pV P                  WUP                  R4      R7       R#   + '       g   i     LL; i)rZ  rK  rL  aT                  import multiprocess as mp
                ctx = mp.get_context('spawn')
                global_resource = ctx.Semaphore()
                def submain(): pass
                if __name__ == '__main__':
                    p = ctx.Process(target=submain)
                    p.start()
                    p.join()
            N©rh  )r   rO  r©  rP  rR  r²  ÚtextwrapÚdedentr   rß  rÕ   r  ©rz   rT  rU  r®  rã  r{   s   &     r   Ú test_global_named_resource_spawnÚ2TestNamedResource.test_global_named_resource_spawnB  s�   € ô ×!Ñ!ˆØ�‰œ	×(Ñ(¨&Ô1Ü�&˜#¨×0Õ0°AØ�G‰G”H—O’Oð 	%ó 	ô 	÷ 1ô %×5Ò5°fÓ=‰ˆ�ð 	×Ñ˜§*¡*¨WÓ"5ÐÖ6÷ 1×0ús   Á&B1Â1C	rc   N)
r€   r�   r‚   rƒ   rM   r…   rd   r  rˆ   r‰   rŠ   s   @r   r  r  A  s1   ø‡ € Ø‡_‚_�TÐ0Ó1Ù Ð!7Ó8ñ7ó 9ó 2ö7r   r  c                   ó:   a € ] tR tRt o Rt]R 4       tR tRtV t	R# )Ú_TestAtExiti\  c                ó>   a€ ^ RI pV3R lpVP                  V4       R# )r   Nc                  óŒ   <€ \        SR 4      ;_uu_ 4       p V P                  R4       RRR4       R#   + '       g   i     R# ; i)rZ  ÚdeadbeefN)rR  r²  )rU  Úoutput_paths    €r   Úexit_handlerÚ5_TestAtExit._write_file_at_exit.<locals>.exit_handlerc  s-   ø€ Ü�k 3×'Ô'¨1Ø—‘˜
Ô#÷ (×'×'Ò'ús	   –2²A	)Úatexitr
  )rz   r#  r&  r$  s   &f  r   Ú_write_file_at_exitÚ_TestAtExit._write_file_at_exit`  s   ø€ ãõ	$ð 	�‰˜Ö%r   c           	     óÔ  € \         P                  ! 4       ;_uu_ 4       p\        P                  P	                  VR 4      pV P                  V P                  V3R7      pVP                  4        VP	                  4        \        V4      ;_uu_ 4       pV P                  VP                  4       R4       RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)z
output.txtrñ   r"  N)r   Útemp_dirrI   rê   rè   ræ   r'  rç   rR  ru   rS  )rz   r*  r#  rë   rU  s   &    r   Útest_atexitÚ_TestAtExit.test_atexith  s˜   € ä×Ò×!Ô! XÜŸ'™'Ÿ,™, x°Ó>ˆKØ—‘ D×$<Ñ$<ÀKÀ>�ÓRˆAØ�G‰GŒIØ�F‰FŒHÜ�k×"Ô" aØ× Ñ  §¡£¨:Ô6÷ #÷ "Ñ!÷
 #×"ú÷ "×!Ð!ús$   žA2CÂ!C	Â1CÃCÃCÃC'	rc   Nrp  )
r€   r�   r‚   rƒ   rº   r+  r'  r+  rˆ   r‰   rŠ   s   @r   r  r  \  s&   ø‡ € à"€Màñ&ó ð&÷7ð 7r   r  c                   ó¶   a € ] tR tRt o RtR0tRR0tR tR t]	R 4       t
R	 t]	R
 4       tR t]P                  ! ]P"                  R8*  R4      R 4       tRtV tR# )Ú_TestSpawnedSysPathis  z>Test that sys.path is setup in forkserver and spawn processes.r·   r  rU   c                ó$  € \        \        P                  4      V n        \        P
                  ! R R7      V n        RV n        \        P                  P                  V P                  V P                   R24      p\        VRRR7      ;_uu_ 4       pVP                  R4       RRR4       \        P                   Uu. uF  q3'       g   K  VNK  	  up\        P                  R	&   \        P                  P                  ^ V P                  4       \        P                  P                  ^ R
4       V P                  V P                  V P                  4       \         P"                  ! V P                  4      V n        R#   + '       g   i     Lá; iu upi )ztest_sys_path-)rt  Úunique_test_modr°  rZ  rK  rL  z# A simple test module
Nrt  ra  )rô   r†   rê   Ú_orig_sys_pathÚtempfileÚmkdtempÚ	_temp_dirÚ	_mod_namerI   rè   rR  r²  rœ  rw   rZ   r²   r!   rÚ  Ú_ctx)rz   Úmodule_pathrW  rë   s   &   r   râ  Ú_TestSpawnedSysPath.setUpz  sü   € Ü"¤3§8¡8›nˆÔÜ!×)Ò)Ð1AÔBˆŒØ*ˆŒÜ—g‘g—l‘l 4§>¡>°d·n±nÐ5EÀSÐ3IÓJˆÜ�+˜s¨W×5Õ5¸Ø�I‰IÐ0Ô1÷ 6ä"%§(¢(Ó0¡(˜Q«a—q�q¡(Ñ0Œ�‰�‰Ü�‰�‰˜˜4Ÿ>™>Ô*Ü�‰�‰˜˜2ÔØ�‰�d×'Ñ'¨×);Ñ);Ô<Ü#×/Ò/°×0AÑ0AÓBˆŽ	÷ 6×5üâ0s   ÂE:Â;	FÃ	FÅ:F
	c                ó„   € V P                   \        P                  R &   \        P                  ! V P
                  RR7       R# )rt  T)Úignore_errorsN)r1  r†   rê   ÚshutilÚrmtreer4  rÁ   s   &r   ræ  Ú_TestSpawnedSysPath.tearDown‡  s'   € Ø×)Ñ)Œ�‰�‰Ü�Š�d—n‘n°D×9r   c                óV   € V P                  \        \        P                  4      4       R # r   )rÇ   rõ   r†   rR  r&   s   &r   Úenq_imported_module_namesÚ-_TestSpawnedSysPath.enq_imported_module_names‹  s   € à�	‰	”%œŸ™Ó$Ö%r   c                ó”  € V P                   P                  4       R 8w  d   V P                  R4       V P                  V P                  \
        P                  4       \        P                  P                  P                  4        V P                   P                  RV P                  .4       V P                   P                  4       pV P                   P                  V P                  V3R7      pVP                  4        VP!                  4        VP#                  4       pVP%                  4        V P'                  V P                  V4       R# )r  zforkserver specific test.rA   rñ   N)r6  rW   rÐ   r>  r5  r†   rR  r!   r  r  r%
  rÊ	  r#   ræ   r?  rç   rè   rú   r$   rw   )rz   rÈ   rä  Úchild_imported_moduless   &   r   Ú(test_forkserver_preload_imports_sys_pathÚ<_TestSpawnedSysPath.test_forkserver_preload_imports_sys_path�  sä   € Ø�9‰9×%Ñ%Ó'¨<Ô7Ø�M‰MÐ5Ô6Ø×Ñ˜Ÿ™¬¯©Ô5Ü×"Ñ"×.Ñ.×4Ñ4Ô6Ø�	‰	×(Ñ(Ø.°·±Ð?ô	Aà�I‰I�O‰OÓˆØ�y‰y× Ñ Ø×5Ñ5¸Q¸Dð !ó Bˆà�
‰
ŒØ�	‰	ŒØ!"§¡£ÐØ	�‰Œ	Ø�‰�d—n‘nÐ&<Ö=r   c                óè   € V P                  \        P                  4        \        P                  ! V4       V P                  R 4       R #   \
         d   pT P                  T4        R p?R # R p?ii ; ir   )rÇ   r†   rê   Ú	importlibÚimport_moduleÚImportError)r'   Úmod_namer‚  s   && r   Úenq_sys_path_and_importÚ+_TestSpawnedSysPath.enq_sys_path_and_importŸ  sQ   € à�	‰	”#—(‘(Ôð	Ü×#Ò# HÔ-ð �I‰I�dŽOøô ô 	Ø�I‰I�c�NŠNûð	ús   ¡A
 Á
A1ÁA,Á,A1c                ó6  € V P                   P                  4       pV P                   P                  V P                  WP                  3R 7      pVP                  4        VP                  4        VP                  4       pVP                  4       pVP                  4        V P                  RV4       V P                  V P                  V4       V P                  VR,          \        P                  R,          4       V P                  VRV P                   2R7       R# )rñ   ra  r<  zchild could not import r  N)r6  r#   ræ   rJ  r5  rç   rè   rú   r$   r>  rw   r4  ru   r†   rê   r  )rz   rÈ   rä  Úchild_sys_pathÚimport_errors   &    r   Útest_child_sys_pathÚ'_TestSpawnedSysPath.test_child_sys_path©  sÎ   € Ø�I‰I�O‰OÓˆØ�y‰y× Ñ Ø×3Ñ3¸1¿n¹nÐ:Mð !ó Oˆà�
‰
ŒØ�	‰	ŒØŸ™›ˆØ—u‘u“wˆØ	�‰Œ	Ø×Ñ˜˜^Ô,Ø�‰�d—n‘n nÔ5à×Ñ˜¨Õ+¬S¯X©X°b­\Ô:Ø×Ñ˜,Ð.EÀdÇnÁnÐEUÐ,VÐÖWr   éð úadded in 3.14.1c                óî  € \         P                  ! 4       R 8w  d   V P                  R4       \        P                  P                  \        P                  P                  \        4      R4      p\        P                  P                  P                  V4      w  r#pV P                  VP                  4       P                  4       R4       V P                  VP                  4       P                  4       R4       R# )r  úforkserver specific testzmp_preload_flush.pyÚ__main____mp_main__N)r!   rW   rÐ   rI   rê   rè   rJ  rK  rÅ  r   r   rß  ru   r  rk  ©rz   r4   r•  rã  r{   s   &    r   Ú&test_std_streams_flushed_after_preloadÚ:_TestSpawnedSysPath.test_std_streams_flushed_after_preload¸  s¤   € ô ×+Ò+Ó-°Ô=Ø�M‰MÐ4Ô5ä�w‰w�|‰|œBŸG™GŸO™O¬HÓ5Ð7LÓMˆÜ—l‘l×0Ñ0×AÑAÀ$ÓG‰ˆ�ð 	×Ñ˜Ÿ™›×,Ñ,Ó.Ð0EÔFØ×Ñ˜Ÿ™›×,Ñ,Ó.Ð0EÖFr   )r6  r5  r1  r4  N)r€   r�   r‚   rƒ   r„   rº   r²   râ  ræ  r.  r?  rC  rJ  rO  rM   r…   r†   r  rW  rˆ   r‰   rŠ   s   @r   r.  r.  s  sƒ   ø‡ € ÙHà �M€Mà! 7Ð+€MòCò:ð ñ&ó ð&ò>ð  ñó ðòXð ‡_‚_�S—^‘^ yÑ0Ð2CÓDñGó EöGr   r.  c                   ó8  a € ] tR tRt o R t]P                  ! RR4      ]! R4      R 4       4       t]P                  ! RR4      R 4       t	]P                  ! ]
P                  R8*  R	4      R
 4       t]P                  ! ]
P                  R8*  R4      R 4       tRtV tR# )ÚMiscTestCaseiÈ  c                ób   € \         P                  ! V \        \        P                  . ROR7       R# )ÚSUBDEBUG)ÚextraÚnot_exportedN)r\  r`  ÚlicenseÚcitation)r   Úcheck__all__r!   rV  rÁ   s   &r   Útest__all__ÚMiscTestCase.test__all__É  s#   € ä×Ò˜T¤?¼/×:QÑ:Qò+B÷	Cr   Tr  rÞ	  c                ó    € \         P                  ! R R4      w  rpV P                  V^ 4       V P                  W3P	                  R4      R7       R# )rÞ  zúif 1:
            import sys
            sys.executable = None
            assert "multiprocess" not in sys.modules, "already imported!"
            import multiprocess as multiprocessing
            import multiprocess.spawn  # This should not fail
rK  r  N)r   rß  ru   rÕ   r  )rz   r®  rã  r{   s   &   r   Ú,test_spawn_sys_executable_none_allows_importÚ9MiscTestCase.test_spawn_sys_executable_none_allows_importÐ  sM   € ô %×5Ò5ØðCó
‰ˆ�ð 	×Ñ˜˜QÔØ×Ñ˜§*¡*¨WÓ"5ÐÖ6r   c                óæ  € \         P                  pV P                  \         P                  V4       \	        VR RR7      ;_uu_ 4       pVP                  \        P                  ! R4      4       RRR4       \        P                  ! V4      w  r4pV P                  RVP                  R4      P                  4       4       V P                  WUP                  R4      R7       R#   + '       g   i     L{; i)rZ  rK  rL  zð                import multiprocess
                def f(x): return x*x
                if __name__ == '__main__':
                    with multiprocess.Pool(200) as p:
                        print(sum(p.map(f, range(1000))))
            NÚ	332833500r  )r   rO  r©  rP  rR  r²  r  r  r   rß  ru   r  r  rÕ   r  s   &     r   Útest_large_poolÚMiscTestCase.test_large_poolã  s°   € ô
 ×!Ñ!ˆØ�‰œ	×(Ñ(¨&Ô1Ü�&˜#¨×0Õ0°AØ�G‰G”H—O’Oð %ó ô ÷ 1ô %×5Ò5°fÓ=‰ˆ�Ø×Ñ˜ c§j¡j°Ó&9×&?Ñ&?Ó&AÔBØ×Ñ˜§*¡*¨WÓ"5ÐÖ6÷ 1×0ús   Á&C Ã C0	i± zadded in 3.14.0b2c                óè  aa€ \         P                  ! 4       R 8w  d   V P                  R4       \         P                  ! 4       o\        P
                  ! V3R lRR7      oV3R lp\         P                  ! VR7      pVP                  4        VP                  \        P                  4       V P                  VP                  ^ 4       V P                  SP                  4       R4       \        S4       R# )	rq   zfork specific testc                  ó&   <€ S P                  R 4      # )Údoner  rt  s   €r   rT  Ú=MiscTestCase.test_forked_thread_not_started.<locals>.<lambda>ÿ  s   ø€ ¨A¯E©E°&¬Mr   Tr  c                  óH   <€ S P                  4        S P                  4        R # r   )rç   rè   )r—   s   €r   rp	  Ú:MiscTestCase.test_forked_thread_not_started.<locals>.child  s   ø€ Ø�G‰GŒIØ�F‰FŽHr   r  rm  N)r!   rW   rÐ   r#   rG  rß  ræ   rç   rè   r   r6  ru   rÜ   r“  r(   )rz   rp	  rë   rÈ   r—   s   &  @@r   Útest_forked_thread_not_startedÚ+MiscTestCase.test_forked_thread_not_startedö  s§   ù€ ô
 ×+Ò+Ó-°Ô7Ø�M‰MÐ.Ô/ä×!Ò!Ó#ˆÜ×ÒÔ$9À$ÔGˆõ	ô ×#Ò#¨5Ô1ˆØ	�‰Œ	Ø	�‰Œw×$Ñ$Ô%à×Ñ˜Ÿ™ QÔ'Ø×Ñ˜Ÿ™›¨Ô0Ü�AŽr   rQ  rR  c                óÀ  € \         P                  ! 4       R 8w  d   V P                  R4       \        P                  P                  \        P                  P                  \        4      R4      p\        P                  P                  P                  V4      w  r#pV P                  VR4       VP                  4       P                  R4      pV P                  V. RO4       R# )r  rT  zmp_preload_main.pyr   Ú
N)r@   Ú__mp_main__rU  rU  ra  )r!   rW   rÐ   rI   rê   rè   rJ  rK  rÅ  r   r   rß  ru   r  rN  rV  s   &    r   Útest_preload_mainÚMiscTestCase.test_preload_main  s›   € ô ×+Ò+Ó-°Ô=Ø�M‰MÐ4Ô5ä�w‰w�|‰|œBŸG™GŸO™O¬HÓ5Ð7KÓLˆÜ—l‘l×0Ñ0×AÑAÀ$ÓG‰ˆ�Ø×Ñ˜˜cÔ"ð �j‰j‹l× Ñ  Ó&ˆØ×Ñ˜ÒGÖHr   rc   N)r€   r�   r‚   rƒ   rb  rM   r…   rd   re  ri  r†   r  rq  rv  rˆ   r‰   rŠ   s   @r   rZ  rZ  È  s¯   ø‡ € òCð ‡_‚_�TÐ0Ó1Ù Ð!<Ó=ñ7ó >ó 2ð7ð" ‡_‚_�TÐ0Ó1ñ7ó 2ð7ð$ ‡_‚_�S—^‘^ yÑ0Ð2EÓFñó Gðð, ‡_‚_�S—^‘^ yÑ0Ð2CÓDñIó EöIr   rZ  c                   ó@   a € ] tR tRt o ]R 4       t]R 4       tRtV tR# )Ú	BaseMixini  c                óœ   € \         P                  P                  P                  4       \        P                  P                  4       3V n        R # r   )r!   r.   Ú	_danglingr   rG  ÚdanglingrW  s   &r   r  ÚBaseMixin.setUpClass   s5   € ä'×/Ñ/×9Ñ9×>Ñ>Ó@Ü!×+Ñ+×0Ñ0Ó2ð4ˆŽr   c                ó  € \         P                  P                  4        \        \        P
                  P                  4      \        V P                  ^ ,          4      ,
          pV'       d/   R\         P                  n        \        P                  ! RV 24       Rp\        \        P                  4      \        V P                  ^,          4      ,
          pV'       d/   R\         P                  n        \        P                  ! RV 24       RpR# )r   TúDangling processes: NúDangling threads: )rÅ  r   r”  r³   r!   r.   r{  r|  rv
  rw
  rG  )r  r·   r¹   s   &  r   r  ÚBaseMixin.tearDownClass%  s²   € ô 	�‰×ÑÔ!äœ×/Ñ/×9Ñ9Ó:¼SÀÇÁÈaÅÓ=QÕQˆ	ßØ/3ŒD�L‰LÔ,Ü×!Ò!Ð$8¸¸Ð"DÔEØˆ	ä”i×)Ñ)Ó*¬S°·±¸aµÓ-AÕAˆßØ/3ŒD�L‰LÔ,Ü×!Ò!Ð$6°w°iÐ"@ÔAØŠr   rc   N)	r€   r�   r‚   rƒ   r+  r  r  rˆ   r‰   rŠ   s   @r   ry  ry    s+   ø‡ € Øñ4ó ð4ð ñó ör   ry  c                   óö  € ] tR tRtRt]P                  t]P                  t]! ]P                  4      t	]! ]P                  4      t
]! ]P                  4      t]! ]P                  4      t]! ]P                  4      t]! ]P                  4      t]! ]P                  4      t]! ]P                   4      t]! ]P"                  4      t]! ]P$                  4      t]! ]P&                  4      t]! ]P(                  4      t]! ]P*                  4      t]! ]P,                  4      t]! ]P.                  4      t]! ]P0                  4      t]! ]P2                  4      t]! ]P4                  4      t]! ]P6                  4      tRtR# )r‡  i8  r·   rc   N)r€   r�   r‚   rƒ   rÏ   r!   ræ   r  r.  rÑ   r  r?  rå   r  r  r#   rª  rû  r  r5  r9  rY  r=  rß  r   rx  rK  rw  rˆ   rc   r   r   r‡  r‡  8  sN  † Ø€DØ×%Ñ%€GØ ×+Ñ+€JÙ" ?×#BÑ#BÓC€OÙ! /×"@Ñ"@ÓA€NÙ" ?×#BÑ#BÓC€OÙ! /×"@Ñ"@ÓA€NÙ˜×,Ñ,Ó-€DÙ˜×,Ñ,Ó-€DÙ˜×.Ñ.Ó/€EÙ  ×!>Ñ!>Ó?€MÙ˜×,Ñ,Ó-€DÙ˜×.Ñ.Ó/€EÙ˜_×6Ñ6Ó7€IÙ# O×$DÑ$DÓEÐÙ˜_×6Ñ6Ó7€IÙ˜×.Ñ.Ó/€EÙ˜?×2Ñ2Ó3€GÙ˜×.Ñ.Ó/€EÙ˜×.Ñ.Ó/€EÙ˜O×4Ñ4Ó5€HÙ˜O×4Ñ4Ó5„Hr   r‡  c                   ó  a a€ ] tR tRt oRt]P                  t]! ]P                  ! R4      4      t
]! ]P                  ! R4      4      t]! ]P                  ! R4      4      t]! ]P                  ! R4      4      t]! ]P                  ! R4      4      t]! ]P                  ! R4      4      t]! ]P                  ! R	4      4      t]! ]P                  ! R
4      4      t]! ]P                  ! R4      4      t]! ]P                  ! R4      4      t]! ]P                  ! R4      4      t]! ]P                  ! R4      4      t]! ]P                  ! R4      4      t]! ]P                  ! R4      4      t]R 4       t]V 3R l4       t]V 3R l4       tRtVtV ;t# )ÚManagerMixiniQ  r¸   zmanager.Queuezmanager.JoinableQueuezmanager.Lockzmanager.RLockzmanager.Semaphorezmanager.BoundedSemaphorezmanager.Conditionzmanager.Eventzmanager.Barrierzmanager.Valuezmanager.Arrayzmanager.listzmanager.dictzmanager.Namespacec                ó:   € V P                   P                  ! V/ VB # r   )r¸   r  )r  rX   r–   s   &*,r   r  ÚManagerMixin.Poolc  s   € à�{‰{×Ò Ð.¨Ñ.Ð.r   c                óX   <€ \         SV `  4        \        P                  ! 4       V n        R # r   )r  r  r!   rý  r¸   r
  s   &€r   r  ÚManagerMixin.setUpClassg  s   ø€ ä‰ÑÔÜ%×-Ò-Ó/ˆŽr   c                ó"  <€ \         p\        P                  ! 4       p\        P                  ! VR R7       F(  p\        \        P                  ! 4       4      ^8:  g   K(   MZ	  \        P                  ! 4       V,
          pR\        n        \        P                  ! R\        P                  ! 4        RVR R24       \        P                  ! 4        V P                  P                  4       ^ 8w  dZ   R\        P                  n        \        P                  ! R4       \        P                  ! V P                  P                  4       4       V P                  P!                  4        V P                  P#                  4        RV n        \$        SV `M  4        R# )	Frp
  Trr
  rs
  rt
  rj  z5Shared objects which still exist at manager shutdown:N)ru
  r”   r•   r   r’  rÙ   r!   r?  rv
  rw
  r´  rµ  r¸   Ú_number_of_objectsrÅ  Ú_debug_infor  rè   r  r  )r  r,   rx
  r•  r}  r  s   &    €r   r  ÚManagerMixin.tearDownClassl  s%  ø€ ô
 /ˆÜ—^’^Ó%ˆ
Ü×'Ò'¨°u×=ˆAÜ”?×2Ò2Ó4Ó5¸Ö:Ùñ >ô —’Ó! JÕ.ˆBØ*.ŒGÔ'Ü×!Ò!Ð$CÜ%4×%DÒ%DÓ%FÐ$Gð H;Ø;=¸c¸(À(ð#Lô Mô 	�
Š
ŒØ�;‰;×)Ñ)Ó+¨qÔ0ð 04ŒD�L‰LÔ,Ü×!Ò!ð #9ô :ä×!Ò! #§+¡+×"9Ñ"9Ó";Ô<Ø�‰×ÑÔØ�‰×ÑÔØˆŒä‰ÑÖr   rc   )r€   r�   r‚   rƒ   rÏ   r!   ræ   r	  ÚoperatorÚ
attrgetterr#   rª  rû  r  r5  r9  rY  r=  rß  r   rx  rô   rº  rã  r+  r  r  r  rˆ   r‰   r¦  r§  s   @@r   r„  r„  Q  s�  ù‡ € Ø€DØ×%Ñ%€GÙ�X×(Ò(¨Ó9Ó:€EÙ˜X×0Ò0Ð1HÓIÓJ€MÙ�H×'Ò'¨Ó7Ó8€DÙ�X×(Ò(¨Ó9Ó:€EÙ˜×,Ò,Ð-@ÓAÓB€IÙ × 3Ò 3Ð4NÓ OÓPÐÙ˜×,Ò,Ð-@ÓAÓB€IÙ�X×(Ò(¨Ó9Ó:€EÙ�x×*Ò*Ð+<Ó=Ó>€GÙ�X×(Ò(¨Ó9Ó:€EÙ�X×(Ò(¨Ó9Ó:€EÙ�H×'Ò'¨Ó7Ó8€DÙ�H×'Ò'¨Ó7Ó8€DÙ˜×,Ò,Ð-@ÓAÓB€Iàñ/ó ð/ð ô0ó ð0ð ô ó ÷ ð  r   r„  c                   óº  € ] tR tRtRt]P                  P                  t]P                  P                  t]	! ]P                  P                  4      t
]	! ]P                  P                  4      t]	! ]P                  P                  4      t]	! ]P                  P                  4      t]	! ]P                  P                  4      t]	! ]P                  P                  4      t]	! ]P                  P                   4      t]	! ]P                  P"                  4      t]	! ]P                  P$                  4      t]	! ]P                  P&                  4      t]	! ]P                  P(                  4      t]	! ]P                  P*                  4      t]	! ]P                  P,                  4      t]	! ]P                  P.                  4      t]	! ]P                  P0                  4      tRtR# )ÚThreadsMixini�  r¹   rc   N)r€   r�   r‚   rƒ   rÏ   r!   rô	  ræ   r  r.  rÑ   r?  r  r  r#   rª  rû  r  r5  r9  rY  r=  rß  r   rx  rˆ   rc   r   r   r�  r�  �  st  † Ø€DØ×#Ñ#×+Ñ+€GØ ×&Ñ&×1Ñ1€JÙ" ?×#8Ñ#8×#HÑ#HÓI€OÙ" ?×#8Ñ#8×#HÑ#HÓI€OÙ˜×-Ñ-×2Ñ2Ó3€DÙ˜×-Ñ-×2Ñ2Ó3€DÙ˜×.Ñ.×4Ñ4Ó5€EÙ  ×!6Ñ!6×!DÑ!DÓE€MÙ˜×-Ñ-×2Ñ2Ó3€DÙ˜×.Ñ.×4Ñ4Ó5€EÙ˜_×2Ñ2×<Ñ<Ó=€IÙ# O×$9Ñ$9×$JÑ$JÓKÐÙ˜_×2Ñ2×<Ñ<Ó=€IÙ˜×.Ñ.×4Ñ4Ó5€EÙ˜?×0Ñ0×8Ñ8Ó9€GÙ˜×.Ñ.×4Ñ4Ó5€EÙ˜×.Ñ.×4Ñ4Ó5„Er   r�  c           	      ó
  aaa€ V R ,          p\        4       p0 RmpVP                  4        EFµ  w  rx\        V\        4      '       g   K  \	        V\
        4      '       Ed+   V\
        J d   KA  \        VP                  4      V8:  g   Q VP                  4       hVP                  '       d   SVP                  9  d   K‘  VP                   F»  p	V'       d	   W’8w  d   K  V'       d   K  RV	P                  4       ,           VR,          ,           p
WYP                  4       R,           ,          p ! R RW‹\        P                  4      pV	R8X  d   \        P                  ! R4      ! V4      pV
;Vn        Vn        WLn        SVn        WÀV
&   K½  	  EK_  \	        V\        P                  4      '       g   EK‚  V'       d   EK�   ! R RV\$        4      pV;Vn        Vn        WLn        WÀV&   EK¸  	  R	R	.oR	.oVVV3R
 lpVV3R lpWÐR&   WàR&   R	# )r€   r¸   ÚWithr<  ÚMixinc                   ó   € ] tR tRtRtR# )Ú*install_tests_in_module_dict.<locals>.Tempi»  rc   Nrþ  rc   r   r   ÚTempr•  »  s   † Ûr   r–  r9  c                   ó   € ] tR tRtRtR# )r•  iÇ  rc   Nrþ  rc   r   r   r–  r•  Ç  s   † Ûr   Nc                  ó  <€ \         P                  ! \        4       \         P                  P	                  4        \         P                  P
                  P                  4       S^ &   \        P
                  P                  4       S^&   \         P                  ! RR7      S^ &    \         P                  ! SRR7       \        P                  P                  R4      '       d    \         P                   ! 4       p \%        4        \&        P(                  ! 4        \         P*                  ! 4       P-                  \.        4       R#   \         d    \        P                  ! SR,           4      hi ; i  \"         d    \        P                  ! R4      hi ; i)r   Trm   ro   z start method not supportedÚlinuxz1OSError raises on RLock creation, see issue 3111!N)r!   rÊ	  rÎ	  r.   Ú_cleanupr{  r   rG  rW   rt   rL   rM   rN   r†   r‡   rÚ  r  râ  rQ   r   Úget_temp_dirr^  r_  rc  )rí  r|  Úold_start_methodrZ   s    €€€r   ÚsetUpModuleÚ1install_tests_in_module_dict.<locals>.setUpModuleÐ  s5  ø€ Ü×.Ò.¬wÔ7Ü×Ñ×(Ñ(Ô*Ü%×-Ñ-×7Ñ7×<Ñ<Ó>ˆ�‰Ü×)Ñ)×.Ñ.Ó0ˆ�‰Ü-×>Ò>È$ÔOÐ˜Ñð	CÜ×,Ò,¨\ÀÕFô
 �<‰<×"Ñ" 7×+Ò+ð;Ü&×,Ò,Ó.�ô 	 Ô!Ü×ÒÔÜ×"Ò"Ó$×-Ñ-¬iÖ8øô ô 	CÜ×#Ò# LØ$Aõ%Bó Cð Cð	Cûô ô ;Ü×'Ò'ð ):ó ;ð ;ð;ús   Â!D= ÃE) Ä=)E&Å)"Fc                  óº  <€ R p \         P                  P                  4        \        P                  ! S^ ,          RR7       \        \        P                  P                  4      \        S^ ,          4      ,
          pV'       d1   Rp R\         P                  n        \        P                  ! RV 24       Rp\        \        P                  4      \        S^,          4      ,
          pV'       d1   Rp R\         P                  n        \        P                  ! RV 24       RpV '       d   \        P                  ! R4       \        P                  P                  4        R# )FTro   r  Nr€  rÕ  )rÅ  r   r”  r!   rt   r³   r.   r{  rv
  rw
  rG  r”   r3  r   Ú_cleanup_tests)Ú
need_sleepr·   r¹   r|  rœ  s      €€r   ÚtearDownModuleÚ4install_tests_in_module_dict.<locals>.tearDownModuleæ  sò   ø€ Øˆ
ô 	�‰×ÑÔ!ä×(Ò(Ð)9¸!Õ)<ÀDÕIäœ×/Ñ/×9Ñ9Ó:¼SÀÈ!ÅÓ=MÕMˆ	ßØˆJØ/3ŒD�L‰LÔ,Ü×!Ò!Ð$8¸¸Ð"DÔEØˆ	ä”i×)Ñ)Ó*¬S°¸!µÓ-=Õ=ˆßØˆJØ/3ŒD�L‰LÔ,Ü×!Ò!Ð$6°w°iÐ"@ÔAØˆ÷ Ü�JŠJ�sŒOä×Ñ×+Ñ+Ö-r   r�  r¢  >   r¸   r¹   r·   )Úglobalsré  r    rA  Ú
issubclassrœ   r³   rº   r²   Ú
capitalizerM   r¶
  r   Úrequires_hashdigestr€   r‚   r�   rZ   r#  )Úremote_globsrZ   Ú	only_typeÚexclude_typesr�   Úlocal_globsÚ	ALL_TYPESr4   ÚbaseÚtype_Únewnamer“  r–  r�  r¢  r|  rœ  s   &f&&           @@r   Úinstall_tests_in_module_dictr°  ¥  sµ  ú€ à˜jÕ)€JÜ“)€KÚ3€Ià!×'Ñ'×)‰
ˆÜ˜$¤×%Ò%ÙÜ�dœL×)Ó)Ø”|Ó#ÙÜ�t×)Ñ)Ó*¨iÔ7ÐK¸×9KÑ9KÓKÐ7Ø×!×!Ð! l¸$×:LÑ:LÔ&LÙØ×+Ô+�ß Ô!3Ùß ÙØ  5×#3Ñ#3Ó#5Õ5¸¸R½Õ@�Ø#×$4Ñ$4Ó$6¸Õ$@ÕA�ô˜4¬×(9Ñ(9ô à˜IÔ%Ü)×=Ò=¸hÔGÈÓM�DØ4;Ð;�” Ô 1Ø",”Ø$0�Ô!Ø(,˜WÓ%ô ,ô ˜œh×/Ñ/×0Õ0ßÚô�tœVô à04Ð4ˆDŒM˜DÔ-Ø(ŒOØ!%˜ÔñA *ðD �dˆ|€HØ�vÐ÷9ö,.ð: #.�ÑØ%3Ð!Ó"r   ÚSemLockzSemLock not availabler™  z
Linux onlyc                   ó&   a € ] tR tRt o R tRtV tR# )ÚSemLockTestsi  c                óª   €  ! R  R\         P                  4      pR\        P                  ! 4        2pV! ^^ ^
VR4      p\         P	                  V4       R# )c                   ó   € ] tR tRtRtR# )Ú3SemLockTests.test_semlock_subclass.<locals>.SemLocki  rc   Nrþ  rc   r   r   r±  r¶    r  r   r±  ztest_semlock_subclass-FN)r   r±  rI   rÛ   Ú
sem_unlink)rz   r±  r4   r   s   &   r   Útest_semlock_subclassÚ"SemLockTests.test_semlock_subclass  sG   € ô	Ô&×.Ñ.ô 	à'¬¯	ª	« }Ð5ˆÙ�A�q˜"˜d EÓ*ˆÜ×#Ñ# DÖ)r   rc   N)r€   r�   r‚   rƒ   r¸  rˆ   r‰   rŠ   s   @r   r³  r³    s   ø‡ € ÷*ð *r   r³  rQ  rR  c                   ó>   a € ] tR tRt o ]! RR4      R 4       tRtV tR# )ÚTestSharedMemoryNamesi  rc  c                óþ   € \         P                  ! R V,          4      p\        P                  ! RV4      w  r4pV P	                  RV4       V P                  RVP                  4       V4       V P                  RWU4       R# )aÊ  
            import sys
            from multiprocessing import shared_memory
            from multiprocessing import resource_tracker
            import time

            resource_tracker._resource_tracker._use_simple_format = %s

            # Test various patterns of colons in names
            test_names = [
                "a:b",
                "a:b:c",
                "test:name:with:many:colons",
                ":starts:with:colon",
                "ends:with:colon:",
                "::double::colons::",
                "name\nwithnewline",
                "name-with-trailing-newline\n",
                "\nname-starts-with-newline",
                "colons:and\nnewlines:mix",
                "multi\nline\nname",
            ]

            for name in test_names:
                try:
                    shm = shared_memory.SharedMemory(create=True, size=100, name=name)
                    shm.buf[:5] = b'hello'  # Write something to the shared memory
                    shm.close()
                    shm.unlink()

                except Exception as e:
                    print(f"Error with name '{name}': {e}", file=sys.stderr)
                    sys.exit(1)

            print("SUCCESS")
        rÞ  s   SUCCESSs	   tracebacks   resource_tracker.pyN)r  r  r   rß  rw   r>  rÐ	  )rz   rc  Útest_scriptr®  rã  r{   s   &&    r   ÚGtest_that_shared_memory_name_with_colons_has_no_resource_tracker_errorsÚ]TestSharedMemoryNames.test_that_shared_memory_name_with_colons_has_no_resource_tracker_errors  ss   € ô —o’oð #'ðF  õG#' ó #!ˆôJ %×5Ò5°d¸KÓH‰ˆ�Ø�‰�j #Ô&Ø×Ñ˜ s§y¡y£{°CÔ8Ø×ÑÐ/°Ö:r   rc   Nr+
  )r€   r�   r‚   rƒ   r   r¾  rˆ   r‰   rŠ   s   @r   r»  r»    s!   ø‡ € ñ Ð! =Ó1ñ+;ó 2ö+;r   r»  )r;   N)rU  rò  )NF)ÚrM   Úunittest.mockr'   r…  r  r”   rê  rö   r†   rI   r´  rF  rA  r_   r`  ry  Úcollections.abcrŸ  rþ  r.  rm  r;  rÿ  r   r2  r�  rµ  r²  rå  Útest.supportrÅ  Útest.support.script_helperr   r   r   r   r   r   r	   r
   r   rG  r   rG  rû  r!   r$	  Úmultiprocess.dummyÚmultiprocess.heapÚmultiprocess.managersrÁ  Úmultiprocess.queuesr   r   r   ÚHAVE_SEND_HANDLEr±  rH  Úmultiprocess.sharedctypesr   r   r+  r   Ú	HAS_SHMEMr�  ÚHAVE_ASAN_FORK_BUGrN   r{  rº  rà  r¾  rú   r-   r   r(   r/   r4   r1   r6   r`  rc  rž  r    r‡  rˆ  r‰  r6  r
  ru
  r÷  ÚHAVE_GETVALUEr‡   rž  r=   rJ   r   rÎ	  ÚctypesrB   rC   rD   rE   r#  rQ   rd   r¶
  rf   r�   rœ   r¾   rÃ   rÌ   ræ   r0  rB  ru  ry  r{  ré  r-  r?  rŒ  r›  r¶  r¸  rÖ  rÝ  r;  rm  rŒ  rê  rì  rï  rò  rô  rL   rý  r  r  r¬  r±  r³  rÈ  ræ  rç  re  ré  rõ  r÷  r   r
  r  r#   r  r  r   r#  r+  r&  r§  r;  rG  rN  rf  rc  r³  rÍ  rÜ  r,  rø  r  rK  rO  ri  rk  r  rG  r\  r‡  r—  r   r¬  rÎ  rà  râ  rò  rö  rø  rú  rü  r	  r	  rM	  rW	  rn	  r{	  r�	  rŒ	  r¡	  r½	  r…   rð	  r8
  rM
  rf
  r  r  r.  rZ  ry  r‡  r„  r�  r°  rq  r³  r  r»  rc   r   r   Ú<module>rÎ     sÚ	  ðó
 Û Û Û Û Û 	Û Û 
Û 	Û 	Û Û Û Û Û Û Û Û Û Û Û Û Û Û Û Û Û Û Û !Ý Ý 'Ý &Ý "Ý &Ý &Ý )Ý (Ý !ð !×.Ò.Ð/AÓBÐ à × Ò Ð6Ô 7Û ã &Û Û Û Û Û Û Ý (å ðÝ&Ø×.Ñ.€Mðß5ØÐðÝ*Ø€IðÛð
 ××Ðð ×
Ò
Ð]Ó
^Ð^ð
 €	ñ ˜¨EÔ2€ð —:‘:—>‘> *×-Ò-‰4°4€òòò;ð ‡7�7ˆgÔÝ-ò5ð �O‰O€	ð 	€Ø€÷ Ø#'¨¨sÐ €Hˆh™à#&¨¨SÐ €Hˆh˜ð ×(Ñ(Ð à"Ð áÐ,Ø6¸ó?ô ?€ð 
�‰˜Ñ	 €ò#ð
Ø�JŠJ�}Ó%€Eð
 Ð8Ð
9€ð)ß=Ó=òKòô2L˜X×.Ñ.ô Lô@0�Fô 0ô"�6ô ò<
*÷ ñ ôc
�<ô c
ôR �/×)Ñ)ô  ô,Q7˜lô Q7ònò$ôR�ô Rôn
y$�ô y$ôx3@�\ô 3@ôll�\ô lô^	5W�ô 5Wô@&�ô &ò.ô
6ˆFô 6ôr�ô ôx1�<ô x1ô|C/�ô C/ôLM/�ô M/ôfw(�lô w(ôzòò$òô$�Fô $ô %�:Ô $òôw!�ô w!òròô&˜Lô &ôPB ˜lô B ÷P FÑ EôˆVô òô,�Iô ,ô	�ô 	ð 
× Ò �5 6Ð Ô *Ø 	× Ò �5 6°;Ð Ô ?Ø 	× Ò �5 3°-Ð Ô @ô4>�\ô 4>ðv 
�‹‹€òô/�;ô /à × Ò �k¨IÐ Ô 6ôK�Kô Kà × Ò �{Ô #ð €
ô.˜ô .ðb ×#Ó# HÓ-ô22˜,ó 22ó .ð22÷j)ñ )ô%˜H×-Ñ-ô %ñD �‹9€ôG/�lô G/ôR78�Lô 78ôt.˜,ô .ô`L�ô Lðd 
×Ó�]Ð$JÓKØ×#Ó# HÓ-ô@˜|ó @ó .ó Lð@ôLb�ô bôP
ˆ9ô 
ô5)˜ô 5)òpð 
×Ó�YÐ EÓFØ×#Ó# HÓ-ôD	˜ó D	ó .ó GðD	ôTu�Lô uôx!.�h×'Ñ'ô !.ôNB�<ô Bôx6�\ô 6ôDE˜×)Ñ)ô Eô,*˜H×-Ñ-ô *ð ×#Ó# HÓ-ô5�×!Ñ!ó 5ó .ð5ð< ×#Ó# EÓ*Ø×#Ó# HÓ-ô5˜H×-Ñ-ó 5ó .ó +ð5òNð ×#Ó# HÓ-ô*�x×(Ñ(ó *ó .ð*ò<òòòô�ô ô*' ×!2Ñ!2ô 'ô*gˆx× Ñ ô gôZ
B˜×)Ñ)ô 
Bô 8�×!Ñ!ô 8ôH2�8×$Ñ$ô 2ôD'�X×&Ñ&ô 'ô"1˜h×/Ñ/ô 1ô><:�8×$Ñ$ô <:ôDA�h×'Ñ'ô AôFL7�h×'Ñ'ô L7ð^ 
‡ƒ�—‘ Ñ(Ø=ó?ôUE˜(×+Ñ+ó UEó?ðUEôn9.�h×'Ñ'ô 9.ôx&:˜x×0Ñ0ô &:ðR ×#Ó# HÓ-ôf7˜8×,Ñ,ó f7ó .ðf7ôR7˜×)Ñ)ô 7ô67�,ô 7ô.RG˜,ô RGôjQI�8×$Ñ$ô QIôn�ô ô26�Yô 6ô29 �9ô 9 ôx6�9ô 6ô0_4ðD 
‡ƒ‘WÐ-¨yÓ9Ô9Ð;RÓSØ	‡ƒ�—‘ Ñ(¨,Ó7ô*�8×$Ñ$ó *ó 8ó Tð*ð 
‡ƒ�—’ 9Ñ,Ð.?Ó@Ø	×Ó�YÐ EÓFô-;˜H×-Ñ-ó -;ó Gó Aò-;øðk^ ô ØƒMðûð ô ØÓðûð ô ØƒIðûð
 ô ØƒFðûð\ØƒEûð ô )Ø€IØ$(Ð(€EÐ(ˆH“zð)úsf   Ã<c Ä
c Äc+ Ä#c; Ç6d Èd ã	cãcã	c(ã'c(ã+	c8ã7c8ã;	dädädäd(ä'd(