+
    Biu             
          ] R 8w  d	   ]! R4      h^ 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NRNRNRNRNRNR	NR
NRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNR NR!NR"NR#NR$NR%NR&NR'NR(NR)NR*NR+NR,NR-NR.NR/NR0NR1NR2NR3NR4NR5NR6NR7NR8NR9NR:NR;NR<NR=NR>NR?NR@NRANRBNRCNRDNRENRFNRGNRHNRINRJNRKNRLNRMNRNNRONRPNRQNRRNRSNRTNRUNRVNRWNRXNRYNRZNR[NR\NR]NR^NR_NR`NRaNRbNtRctRdtRetERWt]P.                  P1                  ]P.                  P3                  ]4      4      t]P.                  P1                  ]4      t]P.                  P1                  ]4      t]P.                  P1                  ]4      t ! Rf R]4      t  ! Rg R	] 4      t! ! Rh Ri]!4      t" ! Rj R
] 4      t# ! Rk R]PH                  4      t%Rl t&Rm t'Rn t(^t)Rt*^ s+^ s,Rt-Rot.Rs/Rp t0Rq t1Rr t2Rs t3Rt t4ERXRu lt5ERYRv lt6Rw t7Rx t8Ry t9Rz t:R{ t;ERXR| lt<R}RoR~RoRRoRRoRR/R lt=ERXR}RoR~RoRRoRRo/R llt>]=! RR7      t?R t@R tAER[tBER]tC]P                  ! ]EP                  R4      P                  R4      R4      tHER^R ltIER_R ltJER`R ltKERaR ltLERbR ltMR tNERcR ltO]P                  R8H  tQ]P                  P                  R4      tR]P                  R8H  tSR tT]P                  ERd9  d   ]S'       d   RMRtUMRtU]P                  R8H  tV]P                  R8H  tW]V;'       g    ]WtXR tYR tZ]P                  ERe9   t[][;'       g    ]P                  R8H  t\]]! ]R4      ;'       d&    ]V;'       g    ]W;'       g    ][;'       g    ]S'       * t^R t_]V;'       g    ]W;'       g    ][;'       g    ]S'       * t`R ta]V;'       g    ]W'       * tbRRo/R ltcRotd]P                  R8w  d    ]P                  ! R4      R8g  tdRtgRothRoti]P.                  P                  ]R4      tkR tlERXR ltmR tnERXR R lltoERfRRRR/R lltpR tq]P                  R 4       tsR ttR tuR tvR tw]P                  R 4       tx]P                  R 4       tyR tzR t{R t|]}! ]P                  ! R4      4      tERgR ltR t]'       d   RtMRtRt]R,           tR tR t^t^tERhtERitRtERZtERjtER\tERktERltR tRRo/R lt]P                  R 4       tR tR tERmtR],          t^],          t^],          t]EP4                  tR R ltR R lt ! R R4      tERnR ltR tR tR tR tERXR ltR tR tR tR tR tR t]P                  ! R4      ;'       g    RR8H  tR tR tR R ltR t]! 4       ;'       d/    ]P                  R8g  ;'       d    ]P                  ! R4      '       * t]EPb                  RJt];'       d    ]'       * t]P                  ! ]R4      tR tR t]EPn                  ]n        RosR t]P                  R 4       t]P                  R 4       tR tR t ! R RF]4      tRsR t ! R R4      tR tRERo/R ltERpR ltERqR lt ! R RH4      tR t]P                  R 4       tR tRR/R ltR tERrR lt. 3R ltRsR tR t]P                  R 4       t ! R ER 4      tER tER t ! ER ER4      t]! 4       t ! ER ER4      t]! 4       t]EP                   ! ER ER4      4       t]! 4       t]EP                   ! ER	 ER
4      4       t]! 4       tER t]EP                  EP                  tER t ! ER ER4      tERR/ER ltER tER tER tER t]P                  ER 4       tERXER ltER ER ltER ER ltER t]EP                  ER 4       t]P                  ER 4       t]]! ]ER4      tER tERXER R/ER! lltERXER"ER#ER$ER%ER R/ER& llt ! ER' ER(4      t]P                  ER) 4       tER* t]]! ]ER+4      ;'       d"    ]EP                  ! 4       EP                  ER,8H  t]EP                  ! ]ER-4      t]]! ]ER.4      t]EP                   EP                  4       Et]P                  ! E]ER/4      Et]EP                  ! E]ER04      EtE]! ER1ER204      EtER3 EtER4R/ER5 lEtER6 Et	ER7 Et
]EP                  3ER8 lEtER9 EtER: Et]P                  ER; ER< l4       EtER= EtER> EtER? EtER@ EtERA ERB lEtERCERDEREERFERGERH/EtERI Et ! ERJ R]4      EtERK ERL lEtERM Et]EP4                  ERN 4       EtERO EtERP EtERQ EtERR EtERS Et  ! ERT ERU4      Et!REs"ERV Et#R#   ]f d     ELi ; i(s  ztest.supportz.support must be imported from the test packageNPIPE_MAX_SIZEverbose
max_memuseuse_resourcesfailfastError
TestFailedTestDidNotRunResourceDeniedrecord_original_stdoutget_original_stdoutcaptured_stdoutcaptured_stdincaptured_stderrcaptured_outputis_resource_enabledrequiresrequires_freebsd_versionrequires_gil_enabledrequires_linux_versionrequires_mac_vercheck_syntax_errorrequires_gziprequires_bz2requires_lzmarequires_zstd
bigmemtestbigaddrspacetestcpython_onlyget_attributerequires_IEEE_754requires_zlibhas_fork_supportrequires_forkhas_subprocess_supportrequires_subprocesshas_socket_supportrequires_working_socketanticipate_failureload_package_testsdetect_api_mismatchcheck__all__skip_if_buggy_ucrt_strfptimecheck_disallow_instantiationcheck_sanitizerskip_if_sanitizerrequires_limited_apirequires_specializationthread_unsafe
MS_WINDOWS	is_jython
is_androidis_emscriptenis_wasiis_apple_mobilecheck_impl_detail
unix_shellsetswitchintervalsupport_remote_exec_onlyget_pagesizeopen_urlresourcereap_childrenrun_with_locale	swap_itemfindfileinfinite_recursion	swap_attrMatcherset_memlimitSuppressCrashReportsortdictrun_with_tzPGOmissing_compiler_executable	ALWAYS_EQNEVER_EQLARGESTSMALLESTLOOPBACK_TIMEOUTINTERNET_TIMEOUTSHORT_TIMEOUTLONG_TIMEOUTPy_DEBUGexceeds_recursion_limitskip_on_s390xrequires_jit_enabledrequires_jit_disabledforce_not_colorizedforce_not_colorized_test_classmake_clean_env
BrokenIter!in_systemd_nspawn_sync_suppressedrun_no_yield_async_fnrun_yielding_async_fnasync_yield
reset_codeg      $@g      N@g      >@c                       ] tR t^vtRtR# )r    N__name__
__module____qualname____firstlineno____static_attributes__rc       ,/usr/lib/python3.14/test/support/__init__.pyr   r   v       rj   c                   @   a a ] tR t^yt oRR/V 3R lltR tRtVtV ;t# )r   statsNc               D   < Wn         W n        \        SV `  ! V.VO5!   R # N)msgrn   super__init__)selfrq   rn   args	__class__s   &&$*rk   rs   TestFailed.__init__{   s    
$t$rj   c                    V P                   # rp   rq   rt   s   &rk   __str__TestFailed.__str__   s    xxrj   )rq   rn   )	re   rf   rg   rh   rs   r{   ri   __classdictcell____classcell__rv   __classdict__s   @@rk   r   r   y   s     % %
 rj   c                   2   a a ] tR t^t oV 3R ltRtVtV ;t# )TestFailedWithDetailsc                B   < W n         W0n        \        SV `  WW4R 7       R# ))rn   N)errorsfailuresrr   rs   )rt   rq   r   r   rn   rv   s   &&&&&rk   rs   TestFailedWithDetails.__init__   s     h<rj   )r   r   )re   rf   rg   rh   rs   ri   r}   r~   r   s   @@rk   r   r      s     = =rj   r   c                       ] tR t^tRtR# )r	   rc   Nrd   rc   rj   rk   r	   r	      rl   rj   c                       ] tR t^tRtR# )r
   rc   Nrd   rc   rj   rk   r
   r
      rl   rj   c                 8    V '       d   \         P                  # R  # )c                     V # rp   rc   fs   &rk   <lambda>$anticipate_failure.<locals>.<lambda>   s    Qrj   )unittestexpectedFailure)	conditions   &rk   r(   r(      s     '''rj   c                 h    Vf   Rp\         pVP                  V VVR7      pVP                  V4       V# )Nztest*)	start_dirtop_level_dirpattern)
STDLIB_DIRdiscoveraddTests)pkg_dirloaderstandard_testsr   top_dirpackage_testss   &&&&  rk   r)   r)      sD     GOOg29,3 $ 5M M*rj   c                 x     \        W4      pV#   \         d     \        P                  ! R T : RT: 24      hi ; i)zobject z has no attribute )getattrAttributeErrorr   SkipTest)objname	attributes   && rk   r   r      sB    C&	   O3 MNNOs    *9Fc                 
    V s R # rp   )_original_stdoutstdouts   &rk   r   r      s    rj   c                  >    \         ;'       g    \        P                  # rp   )r   sysr   rc   rj   rk   r   r      s    ))szz)rj   c                     V! V!  #   \          d8   p\        ^8  d'   \        TP                  P                  : RT: 24       h Rp?i\
         d   p\        ^8  dC   \        TP                  P                  : RT: 24       \        RTP                  : T: 24       \        P                  ! T \        P                  4       T! T!  u Rp?# Rp?ii ; i)   : Nzre-run )
FileNotFoundErrorr   printrv   re   OSErroroschmodstatS_IRWXU)pathfuncru   errs   &&* rk   
_force_runr      s    T{ a<cmm44c:; a<cmm44c:;4==$78
t||$T{s-    C2ACCA7C
CCc            	        a \        \        R 4      '       d   \        P                  # ^ RIp Rp\        P                  P                  R4      '       d   V P                  4       '       d   RpEM\        P                  P                  R4      '       Ed   ^ RIo^ RIo^p^p ! V3R lRSP                  4      pSP                  P                  pVP                  4       pV'       g   SP                  4       hV! 4       pSP                  P                  4       pVP!                  VVSP#                  V4      SP%                  V4      SP#                  V4      4      p	V	'       g   SP                  4       h\'        VP(                  V,          4      '       g   RpMg\        P                  R8X  dS   ^ RIp
 V
P-                  RR	.R
R
R7      pVP.                  P1                  R4      P3                  4       pVR8w  d   RV: R2pV'       g?    ^ RIHp V! 4       pVP;                  4        VP=                  4        VP?                  4        V\        n&        V'       * \        n        \        P                  #   T
P4                   d    Rp Li ; i  \@         d[   p\C        T4      p\E        T4      ^28  d   TR,          R,           pRPG                  \I        T4      PJ                  T4      p Rp?LRp?ii ; i)resultNwinz(gui is not available on Windows IoT Corec                      < ] tR t^tR Z P                  P
                  3R Z P                  P
                  3R Z P                  P                  3.tRtR# )*_is_gui_available.<locals>.USEROBJECTFLAGSfInherit	fReserveddwFlagsrc   N)	re   rf   rg   rh   wintypesBOOLDWORD_fields_ri   )ctypess   rk   USEROBJECTFLAGSr      s@    #V__%9%9:$foo&:&:;"FOO$9$9:<Hrj   r   z,gui not available (WSF_VISIBLE flag not set)darwin	launchctlmanagernameT)capture_outputcheckzutf-8Aquazmanagername=z' -- can only run in a macOS GUI sessionz*unable to detect macOS launchd job manager)Tk:N2   Nz [...]zTk unavailable due to {}: {})'hasattr_is_gui_availabler   platformr   
startswithwin32_is_iotr   ctypes.wintypes	Structurewindlluser32GetProcessWindowStationWinErrorr   r   GetUserObjectInformationWbyrefsizeofboolr   
subprocessrunr   decodestripCalledProcessErrortkinterr   withdrawupdatedestroy	Exceptionstrlenformattypere   reason)r   r   	UOI_FLAGSWSF_VISIBLEr   dllhuofneededresr   rcr   r   roote
err_stringr   s                    @rk   r   r      sg    (++ '''F
||u%%(*?*?*A*A;		 	 	'	' 			<f.. 	< mm""'')//##&&(++ALLMM#LL 	"
 //##CKK+-..CF		! 		Rm </34   AB))**7399;K f$(K>)PQ 	G"4DMMOKKMLLN  &#)z###1 ,, 	BAF	B  	GQJ:#'_x7
3::47;K;K;EGF		Gs+   /?I- =J -JJK+AK&&K+c                 4    \         R J ;'       g
    V \         9   # rp   )r   resources   &rk   r   r   &  s     D ==H$==rj   c                     \        V 4      '       g   Vf
   RV ,          p\        V4      hV R9   d   \        '       g   \        R4      hV R8X  d,   \        4       '       g   \        \        P                  4      hR # R # )Nz"Use of the %r resource not enabledzNo socket supportgui>   networkurlfetch)r   r
   r&   r   r   )r   rq   s   &&rk   r   r   .  sm    x((;6ACS!!**3E3E0115!2!4!4.5566 "5rj   c                     ^ RI pVP                  4       V 8w  d   R# VP                  4       P                  R^4      ^ ,          p \	        \        \        VP                  R4      4      4      #   \         d     R# i ; i)    N-.)r   systemreleasesplittuplemapint
ValueError)sysnamer   version_txts   &  rk   _get_kernel_versionr  9  sk    G#""$**3215KSk//4566 s   'A, ,A;:A;c                    ^ RI pRP                  \        \        V4      4      pVP	                  4       P                  R^4      ^ ,          pVP                  4       V 8X  d/    \        \        \        VP                  R4      4      4      pWQ8  pMRp\        P                  ! VV  RV RV 24      #   \         d    Rp L.i ; i)r   Nr  r  Fz	 version  or higher required, not )r   joinr  r   r  r  r  r  r  r	  r   skipIf)r
  min_versionr   min_version_txtr  versionskips   &&     rk   _requires_unix_versionr  C  s     hhs345O""$**3215KG#	)C[%6%6s%;<=G (D??)9_--F-	   	D	s   !(B/ /B?>B?c                      \        R V 4      # )FreeBSDr  r  s   *rk   r   r   ^  s     ")[99rj   c                      \        R V 4      # Linuxr  r  s   *rk   r   r   g  s     "';77rj   c                     a  V 3R  lpV# )c                 X   <a  \         P                  ! S 4      V V3R  l4       pSVn        V# )c                  r  < \         P                  R 8X  d   ^ RIpVP                  4       ^ ,          p \        \	        \
        VP                  R4      4      4      pVS8  d>   RP                  \	        \        S4      4      p\        P                  ! RV: RV: 24      h S! V / VB #   \         d     Li ; i)r   Nr  z	Mac OS X r  )r   r   mac_verr  r  r  r  r  r   r   r   r	  )ru   kwr   r  r  r  r   r  s   *,    rk   wrapper4requires_mac_ver.<locals>.decorator.<locals>.wrapperx  s    ||x'&..03	>#C[->->s-C$DEG ,*-((3sK3H*I&//.=> > -
 $$$ " s   (B( (B65B6)	functoolswrapsr  )r   r"  r  s   f rk   	decorator#requires_mac_ver.<locals>.decoratorw  s-    			% 
	% *rj   rc   )r  r&  s   j rk   r   r   p  s    & rj   c                 l   a  V 3R  lp\        S \        P                  4      '       d   S pRo V! V4      # V# )c                 $   < R V n         SV n        V # T)__unittest_thread_unsafe____unittest_thread_unsafe__why__)	test_itemr   s   &rk   r&   thread_unsafe.<locals>.decorator  s    /3	,4:	1rj    )
isinstancetypesFunctionType)r   r&  r-  s   f  rk   r2   r2     s8    
 &%,,--	##rj   c                 $   ^ RI pV '       g   Rp  VP                  4       P                  4       R8H  p\        P                  ! W 4      #   \        \        3 d8   p\
        P                  ! \        4      P                  RY3R7       Rp Rp?LYRp?ii ; i)r   Nznot suitable for buildbotsbuildbotzgetpass.getuser() failed %s.exc_infoF)getpassgetuserlowerKeyErrorr   logging	getLoggerre   warningr   r  )r   r7  
isbuildbotr   s   &   rk   skip_if_buildbotr?    sx    -__&,,.*<
 ??:.. g (#++,JC+^
s   !A B-B

BaddressmemoryubthreadfunctionTc                 *   V '       g$   V'       g   V'       g   V'       g   \        R 4      h\        P                  ! R4      ;'       g    Rp\        P                  ! R4      ;'       g    RpRV9   ;'       g    RV9   pRV9   ;'       g    RV9   pRV9   ;'       g    R	V9   p	R
V9   ;'       g    RV9   p
RV9   pT;'       d    T;'       gI    T ;'       d    T;'       g5    T;'       d    T	;'       g!    T;'       d    T
;'       g    T;'       d    T# )z:At least one of address, memory, ub or thread must be TrueCFLAGSr/  CONFIG_ARGSz-fsanitize=memoryz--with-memory-sanitizerz-fsanitize=addressz--with-address-sanitizerz-fsanitize=undefinedz#--with-undefined-behavior-sanitizerz-fsanitize=threadz--with-thread-sanitizerz-fsanitize=function)r	  	sysconfigget_config_var)r@  rA  rB  rC  rD  cflagsconfig_argsmemory_sanitizeraddress_sanitizerub_sanitizerthread_sanitizerfunction_sanitizers   $$$$$       rk   r.   r.     sJ    vvUVV %%h/552F**=9??RKv% 	1 	1![0 
 	& 	2 	2"k1 
 	&( 	= 	=-< 
 	v% 	1 	1![0 
 	'  
	$	$$ 	* 	*		&	&&	* 	*				* 	* 
	$	$$	* 	* 
	(	((rj   c                \    V '       g   R p \        WW4R7      p\        P                  ! WP4      # )z"not working with sanitizers active)r@  rA  rB  rC  )r.   r   r  )r   r@  rA  rB  rC  r  s   &$$$$ rk   r/   r/     s%    57bPD??4((rj   )r@  c                 ^    R F&  pW 9   d   W;;,          RV 2,          uu&   K"  WV&   K(  	  R# )ASAN_OPTIONS:N)rS  MSAN_OPTIONSUBSAN_OPTIONSTSAN_OPTIONSrc   )envoptionr   s   && rk   set_sanitizer_env_varrZ    s+    Q;I1VH%II	 Rrj   c                 F   a  \         P                  ! S 4      V 3R  l4       pV# )c                     <  S! V / VB  R#   \          d-   pR \        T4      9   d   \        P                  ! R4      hh Rp?ii ; i)CERTIFICATE_VERIFY_FAILEDz.system does not contain necessary certificatesN)r   r   r   r   )ru   kwargsr   r   s   *, rk   dec&system_must_validate_cert.<locals>.dec  sO    	tv 	*c!f4'' )A B B		s    A'?Ar$  r%  )r   r_  s   f rk   system_must_validate_certrb    s%    __Q  Jrj      doubleIEEEztest requires IEEE 754 doublesc                 ^     ^ RI p\        P                  ! W4      #   \         d    Rp L%i ; ir   N)zlibImportErrorr   
skipUnless)r   rh  s   & rk   r!   r!     3     t,,      ,,c                 ^     ^ RI p\        P                  ! W4      #   \         d    Rp L%i ; irg  )gzipri  r   rj  )r   rn  s   & rk   r   r     rk  rl  c                 ^     ^ RI p\        P                  ! W4      #   \         d    Rp L%i ; irg  )bz2ri  r   rj  )r   rp  s   & rk   r   r     s3     s++  rl  c                 ^     ^ RI p\        P                  ! W4      #   \         d    Rp L%i ; irg  )lzmari  r   rj  )r   rr  s   & rk   r   r     rk  rl  c                 b     ^ RI Hp \        P                  ! W4      #   \         d    Rp L%i ; i)r   )zstdN)compressionrt  ri  r   rj  )r   rt  s   & rk   r   r     s3    $ t,,  s    ..c                       ^ RI p T P	                  R4      '       * #   \         d    \        P                  ! R4      hi ; i)r   N_testinternalcapi requiredcode_debug_ranges)	_testcapiri  r   r   
config_getry  s    rk   has_no_debug_rangesr|  $  sD    > ##$7888  > <==>s    ">c                      \        4       p\        P                  ! W4      #   \        P                   d4   pR pTP                  '       d   TP                  ^ ,          MT p  Rp?LYRp?ii ; iTN)r|  r   r   ru   r  )r   r  r   s   &  rk   requires_debug_rangesr  +  sT    1"$ ??4((  1fff&1s   
" A*)A%%A*win32javaandroidc                 Z    \         P                  ! \        P                  R 8H  RV  R24      # )r  zAndroid blocks z with SELinux)r   r  r   r   )r   s   &rk   skip_android_selinuxr  ;  s*    ??	!_TF-#H rj   z/system/bin/shz/bin/sh
emscriptenwasic                  8    \         P                  ! \        R 4      # )zExhausts stack on Emscripten)r   r  r6   rc   rj   rk   skip_emscripten_stack_overflowr  M  s    ??=*HIIrj   c                  8    \         P                  ! \        R 4      # )zExhausts stack on WASI)r   r  r7   rc   rj   rk   skip_wasi_stack_overflowr  P  s    ??7$<==rj   r   forkc                  8    \         P                  ! \        R 4      # )zrequires working os.fork())r   rj  r"   rc   rj   rk   r#   r#   a  s    /1MNNrj   c                  8    \         P                  ! \        R 4      # )zrequires subprocess support)r   rj  r$   rc   rj   rk   r%   r%   p  s    57TUUrj   modulec                     R pV '       d%   \         '       g   \        P                  ! V4      hR# \        P                  ! \         V4      # )zrequires socket supportN)r&   r   r   rj  )r  rq   s   $ rk   r'   r'   z  s>    
 $C!!##C(( " ""#5s;;rj   z%4Yzhttp://www.pythontest.netdatac                     \         P                  R 8w  d   R# ^ RIpRpV  R2pVP                  4       w  rE\	        VP                  VR4      4       \	        V4       \	        RV,          4       R# )r   Nz NOTICE z may generate "malloc can't allocate region"
warnings on macOS systems. This behavior is known. Do not
report a bug unless tests are also failing.
See https://github.com/python/cpython/issues/85100r  )r   r   shutilget_terminal_sizer   center)	test_namer  rq   detailpadding_s   &     rk   darwin_malloc_err_warningr    sf     ||x
C C CF
 ))+JG	#**Wc
"#	&M	#-rj   c                 t   \         P                  P                  V 4      '       d   V # Ve    \         P                  P                  W4      p \        .\
        P                  ,           pV FK  p\         P                  P                  W04      p\         P                  P                  V4      '       g   KI  Vu # 	  V # rp   )r   r   isabsr  TEST_HOME_DIRr   exists)filenamesubdirr   dnfns   &&   rk   rB   rB     s~     
ww}}X77<<1?SXX%DWW\\"'77>>"by  Orj   c                     \        V P                  4       4      pV Uu. uF  pR V,          NK  	  ppRP                  V4      pRV,          # u upi )z%r: %rz, z{%s})sorteditemsr  )dictr  pair	reprpairs
withcommass   &    rk   rH   rH     sJ    4::< E-23UTDUI39%JJ 4s   Ac                    V ^8  d   QhR\         R\        \         \        3,          R,          R\        \         \        3,          /# )r   codeextra_namesNreturn)r   r  object)r   s   "rk   __annotate__r    s9      3 T#v+%6%= cSYkIZ rj   c                 |    / pV'       d   VP                  V4       \        \        P                  ! V 4      V4       V# rp   )r   exectextwrapdedent)r  r  nss   && rk   run_coder    s.    	B
		+	#Irj   linenooffsetc                   V P                  \        V4      ;_uu_ 4       p\        VR R4       RRR4       XP                  pV P	                  VP
                  4       Ve   V P                  VP
                  V4       V P	                  VP                  4       Ve   V P                  VP                  V4       R# R#   + '       g   i     L; i)z<test string>r  N)assertRaisesRegexSyntaxErrorcompile	exceptionassertIsNotNoner  assertEqualr  )testcase	statementerrtextr  r  cmr   s   &&&$$  rk   r   r     s    		#	#K	9	9R	?F3 
:
,,CSZZ(SZZ0SZZ(SZZ0  
:	9s   B;;C	c                   aaa ^ RI p^ RIp^RIHp  ^ RIpSP                  RR4      oVP                  P                  V 4      ^,          P                  R4      R,          p\        P                  P                  \        V4      pVVV3R lp\        P                  P                  V4      '       d   V! V4      p	V	e   V	# V! V4       \        R4       \         '       d   \#        RV ,          \%        4       R7       VP&                  P)                  4       p
V'       d   V
P*                  P-                  R4       V
P/                  V \0        R
7      p	V'       d3   V	P2                  P5                  R4      R	8X  d   VP7                  V	R7      p	 \/        VR4      ;_uu_ 4       pV	P9                  4       pV'       d$   VP;                  V4       V	P9                  4       pK+   RRR4       V	P=                  4        V! V4      p	V	e   V	# \?        RV,          4      h  \
         d    Rp ELi ; i  + '       g   i     LT; i  T	P=                  4        i ; i)r   N)unlinkr   /c                    < \        V .SO5/ SB pSf   V# S! V4      '       d   VP                  ^ 4       V# VP                  4        R # rp   )openseekclose)r  r   ru   r   r!  s   & rk   check_valid_file*open_urlresource.<locals>.check_valid_file  sC    !d!b!=H1XXFF1IH		rj   r   z	fetching %s ...filern  )timeoutzContent-Encoding)fileobjwbzinvalid resource %r)zAccept-Encodingrn  ) urllib.requesturllib.parse	os_helperr  rn  ri  popparseurlparser  r   r   r  TEST_DATA_DIRr  r   r   r   r   requestbuild_opener
addheadersappendr  rQ   headersgetGzipFilereadwriter  r   )urlru   r!  urllibr  rn  r  r  r  r   openeroutsr   s   &jl          @rk   r>   r>     s   '! FF7D!E||$$S)!,2237;H	mX	.B 
ww~~bR =Hr
 Zw!C'.A.CD^^((*F  !<=C!12A		01V;MM!M$"d^^sA		!FFH   	
	A}
*R/
00_  H ^ 	
	s;   H 
H: H'7#H'H: H$#H$'H7	2H: :Ic              #      "   ^ RI p\        \        V 4      p\        \        WP	                  4       4        \        \        V 4      x  \        \        W4       R#   \        \        Y4       i ; i5irg  )ior   r   setattrStringIO)stream_namer  orig_stdouts   &  rk   r   r     sL      #{+KCkkm,/c;''[.[.s   3A/A A/A,,A/c                      \        R 4      # r   r   rc   rj   rk   r   r   %       8$$rj   c                      \        R 4      # )stderrr  rc   rj   rk   r   r   .  r  rj   c                      \        R 4      # )stdinr  rc   rj   rk   r   r   7  s     7##rj   c                  n    ^ RI p V P                  4        V P                  4        V P                  4        R# rg  )gccollect)r  s    rk   
gc_collectr  D  s"     JJLJJLJJLrj   c               #      "   ^ RI p V P                  4       pV P                  4         Rx  V'       d   V P                  4        R# R#   T'       d   T P                  4        i i ; i5irg  )r  	isenableddisableenable)r  have_gcs     rk   
disable_gcr  S  sF     llnGJJLIIK 7IIK s   %A&A A&A##A&c               '      "   ^ RI pVP                  4       pVP                  ! V !    Rx  VP                  ! V!   R#   TP                  ! T!   i ; i5irg  )r  get_thresholdset_threshold)ru   r  old_thresholds   *  rk   gc_thresholdr  ^  sH     $$&Md)
-(-(s   %A> AAAc                      \         P                  ! R 4      ;'       g    Rp RpV P                  4        F  pVP                  R4      '       g   K  TpK   	  \         P                  ! R4      R8X  d   RpW9  # RpW9  # )	PY_CFLAGSr/  z-OCCgcc)r/  -O0z-Og)r/  r  )rH  rI  r  r   )rJ  	final_optoptnon_optss       rk   python_is_optimizedr
  h  sx    %%k288bFI||~>>$I  %.% $$ $$rj   c                    a \         P                  ! R 4      ;'       g    Ro. ROp \         P                  ! R4      pV'       d   V P                  V4       \        ;QJ d    V3R lV  4       F  '       g   K   R# 	  R# ! V3R lV  4       4      # )PY_CFLAGS_NODISTr/  PGO_PROF_USE_FLAGc              3   ,   <"   T F	  qS9   x  K  	  R # 5irp   rc   ).0rY  cflags_nodists   & rk   	<genexpr>#check_cflags_pgo.<locals>.<genexpr>  s     A[6&[s   TF)z-fprofile-usez-fprofile-instr-usez	-prof-use)rH  rI  r  any)pgo_optionsr  r  s     @rk   check_cflags_pgor  v  st     ,,-?@FFBMK "001DE,-3A[A33A3A3A[AAArj   c                  h    \         '       d   R # \        P                  ! R4      ;'       g    Rp RV 9   # )FrG  r/  z--enable-bolt)r7   rH  rI  )rK  s    rk   check_bolt_optimizedr    s/     w**=9??RKk))rj   Py_GIL_DISABLEDc                 8    \         P                  ! \        V 4      # rp   )r   r  r  ry   s   &rk   r   r     s    ???C00rj   c                  @    \         '       d   \        P                  # R  # )c                     V # rp   rc   )	test_cases   &rk   r   2expected_failure_if_gil_disabled.<locals>.<lambda>  s    Yrj   )r  r   r   rc   rj   rk    expected_failure_if_gil_disabledr    s    '''&&rj   PHBBInPnP0nnc                 X    ^ RI pVP                  \        V ,           \        ,           4      # rg  )structcalcsize_header_alignfmtr$  s   & rk   calcobjsizer*    s    ??7S=6122rj   c                 X    ^ RI pVP                  \        V ,           \        ,           4      # rg  )r$  r%  _vheaderr'  r(  s   & rk   calcvobjsizer-    s    ??8c>F233rj   c                     ^ RI p\        P
                  ! T4      p\        T4      \        8X  d   TP                  \        ,          '       g;   \        T4      \        8w  d9   \        T4      P                  \        ,          '       d   Y#P                  ,          pR\        T4      YB3,          pT P                  YBT4       R#   \         d    \        P                  ! R4      hi ; i)r   Nrw  z&wrong size for %s: got %d, expected %d)_testinternalcapiri  r   r   r   	getsizeofr   	__flags___TPFLAGS_HEAPTYPE_TPFLAGS_HAVE_GCSIZEOF_PYGC_HEADr  )testosizer/  r   rq   s   &&&   rk   check_sizeofr8    s    >  ]]1F	aDq{{->>>
q'T/Q 1 14D D D222
2Aw%&CV3'  > <==>s   C "C#_do_cleanupsc                  a aaa R o\        S \        4      '       d3   S P                  RR4      P                  4       o \	        S 4      ^8X  d   Ro\        S4      oVV VV3R lpV# )F, Tc                    <a  \        S \        4      '       d   \        R 4      h\        P                  ! S 4      VVVV V3R l4       pV# )z1subTests() can only decorate methods, not classesc                  < S Fn  pS	'       d   V3p\        \        SV4      4      pV P                  ! R/ VB ;_uu_ 4        S! V .VO5/ VBVB  R R R 4       S'       g   K^  V P                  4        Kp  	  R #   + '       g   i     L0; i)Nrc   )r  zipsubTest
doCleanups)
rt   ru   r^  valuessubtest_kwargsr9  	arg_names
arg_valuesr   single_params
   "*,  rk   r"  ,subTests.<locals>.decorator.<locals>.wrapper  sn    $$YF!%c)V&<!=\\3N33AAA.A 4<OO% % 43s   A88B)r0  r   	TypeErrorr$  r%  )r   r"  r9  rD  rE  rF  s   f rk   r&  subTests.<locals>.decorator  sC    dD!!OPP			& 	& 
	& rj   )r0  r   replacer  r   r  )rD  rE  r9  r&  rF  s   bbd @rk   subTestsrK    s_     L)S!!%%c#.446	y>QLz"J  rj   c              '     "    ^ RI p\        W 4      pVP                  V4      pV F  p VP                  W54        M#	  RV9  d   \        P
                  ! RV 24      h  Rx  V'       d   V'       d   VP                  XV4       R# R# R#   TP                   d     K{  i ; i  \         d    h \         d$    R;r$RT9  d   \        P
                  ! R4      h L}i ; i  T'       d   T'       d   TP                  XT4       i i i ; i5i)r   Nr/  zno locales z
no locales)localer   	setlocaler   r   r   r   r   )catstrlocalesrM  categoryorig_localelocs   &*    rk   r@   r@     s    A6*&&x0 C  /   ''+gY(?@@ !4kX{3 "6 <<    2##W##L11 2& kX{3 "6ss   D
 B% D
B%D
!C! %D
5D
B"D
!B""D
%C:!CD
CD
!D2DD
c                    a a V V3R  lpV# )c                 L   <a  \         P                  ! S 4      VV V3R  l4       pV# )c                  < R S
9   p ^ RI p\        VS4      pVP                  V4      p S
 FF  pV P                  VR7      ;_uu_ 4         VP                  WW4       RpS	! V .VO5/ VB  RRR4       KH  	  VP                  WV4       T'       d2   T P                  RR7      ;_uu_ 4        S	! T .TO5/ TB  RRR4       R# R#   TP                   d    T P                  RT: 24        Li ; i  + '       g   i     K  ; i  TP                  YV4       i ; i  \         d    h \         d     Li ; i  + '       g   i     R# ; i)r/  N)rM  Fz
no locale )rM  r   rN  r@  r   skipTestr   r   )rt   ru   r^  dry_runrM  rQ  rR  rS  rO  r   rP  s   "*,     rk   r"  /run_with_locales.<locals>.deco.<locals>.wrapper  s:   GmG<"662$..x8<&!\\\55< & 0 0 ? +0 $T ;D ;F ; 65  ' $$X; \\\../// /.  $*<< D $
3'.B CD 655 $$X;% "  & /..sj   !D D 	C.CC.*D )D4&C+	(C.*C+	+C..C?9	D DD1-D10D14E	ra  )r   r"  rO  rP  s   f rk   decorun_with_locales.<locals>.deco  s%    			0 
	0< rj   rc   )rO  rP  rZ  s   fj rk   run_with_localesr\    s     B Krj   c                    a  V 3R  lpV# )c                 \   <a  V V3R  lpS P                   Vn         S P                  Vn        V# )c                    <  \         P                  pR\
        P                  9   d   \
        P                  R,          pMRpS\
        P                  R&   T! 4         S! T / TB Tf   \
        P                  R MT\
        P                  R&   \         P                  ! 4        #   \         d    \        P                  ! R 4      hi ; i  Tf   \
        P                  R MT\
        P                  R&   \         P                  ! 4        i ; i)ztzset requiredTZN)timetzsetr   r   r   r   environ)ru   kwdsrb  orig_tzr   tzs   *,  rk   inner-run_with_tz.<locals>.decorator.<locals>.inner0  s    :

 rzz!**T*!BJJtGT*T*?

4('.BJJt$

# " :''(899: ?

4('.BJJt$

s   B# C #"CA D)re   __doc__)r   rg  rf  s   f rk   r&  run_with_tz.<locals>.decorator/  s%    	, rj   rc   )rf  r&  s   f rk   rI   rI   .  s    4 rj   c                0    V ^8  d   QhR\         R\        /# )r   limitr  )r   r  )r   s   "rk   r  r  X  s     > >3 >3 >rj   c           	      r   R RR\         R\        RR\        ,          /p\        P                  ! RV \        P                  \        P
                  ,          4      pVf   \        RV : 24      h\        \        VP                  ^4      4      WP                  ^4      P                  4       ,          ,          4      # )krc  mgtz(\d+(?:\.\d+)?) (K|M|G|T)b?$zInvalid memory limit: )_1M_1Grematch
IGNORECASEVERBOSEr	  r  floatgroupr9  )rl  sizesro  s   &  rk   _parse_memlimitr{  X  s    TSST#X	E 	0%+	-Ay1%;<<uQWWQZ 5)9)9);#<<==rj   c                (    V ^8  d   QhR\         RR/# )r   rl  r  N)r   )r   s   "rk   r  r  e  s     	 	 	 	rj   c                     \        V 4      pV\        ^,
          8  d   \        RV : R24      hVs\	        V\
        4      pVsR# )   zMemory limit z too low to be usefulN)r{  _2Gr	  real_max_memuseminMAX_Py_ssize_tr   )rl  memlimits   & rk   rF   rF   e  sE     u%H#'=	1FGHHO8^,HJrj   c                   2   a  ] tR tRt o R tR tR tRtV tR# )_MemoryWatchdogiq  c                h    R P                  \        P                  ! 4       R7      V n        RV n        R# )z/proc/{pid}/statm)pidFN)r   r   getpidprocfilestartedrz   s   &rk   rs   _MemoryWatchdog.__init__v  s$    +22ryy{2Crj   c                   ^ RI p \        V P                  R4      p^ RIpT;_uu_ 4        \        R4      pTP                  \        P                  T.TTP                  R7      T n        RRR4       RT n        R#   \         dU   p\        P
                  ! \        4      P                  RY3R7       \        P                  P                  4         Rp?R# Rp?ii ; i  + '       g   i     L{; i)r   Nrz!/proc not available for stats: %sr5  zmemory_watchdog.py)r  r  T)warningsr  r  r   r;  r<  re   r=  r   r  flushr   rB   Popen
executableDEVNULLmem_watchdogr  )rt   r  r   r   r   watchdog_scripts   &     rk   start_MemoryWatchdog.startz  s    	T]]C(A 	Q&';<O * 0 0#../1R788B8J8J !1 !LD 
   	h'//0SUV/cJJ	 Qs#   A: ?C:CA	CCC,	c                    V P                   '       d7   V P                  P                  4        V P                  P                  4        R # R # rp   )r  r  	terminatewaitrz   s   &rk   stop_MemoryWatchdog.stop  s4    <<<'')""$ rj   )r  r  r  N)	re   rf   rg   rh   rs   r  r  ri   r}   r   s   @rk   r  r  q  s     
"% %rj   r  c                    a aa VVV 3R  lpV# )c                 8   <a a VV V3R  loSSn         SSn        S# )c                 B  < SP                   pSP                  p\        '       g   R pMTp\        '       g	   S'       g<   \        W2,          8  d+   \        P                  ! RW,          R,          ,          4      h\        '       dZ   \
        '       dN   \        4        \        RP                  W,          R,          R7      4       \        4       pVP                  4        MRp S! W4      V'       d   VP                  4        # #   T'       d   TP                  4        i i ; i)i  'not enough memory: %.1fG minimum neededz* ... expected peak memory use: {peak:.1f}G)peakN   @)r7  memuser  r   r   r   r   r   r  r  r  )rt   r7  r  maxsizewatchdogrX  r   r"  s   &    rk   r"  .bigmemtest.<locals>.decorator.<locals>.wrapper  s    <<D^^F"? #g&66''=}	245 5 77Bv4=I#>v?A*, $'MMO 8MMO s   "D D)r7  r  )r   r"  rX  r  r7  s   f@rk   r&  bigmemtest.<locals>.decorator  s    	$: rj   rc   )r7  r  rX  r&  s   fff rk   r   r     s     B rj   c                    a  V 3R  lpV# )c                    < \         \        8  dU   \        R8  d"   \         R8  d   \        P                  ! R4      h\        P                  ! R\        R,          ,          4      hS! V 4      # )r   z-not enough memory: try a 32-bit build insteadr  l            r  )r   r  r   r   )rt   r   s   &rk   r"  !bigaddrspacetest.<locals>.wrapper  sb    &*zU/B''CE E ''=%356 6 T7Nrj   rc   )r   r"  s   f rk   r   r     s    
 Nrj   c                     V # rp   rc   )r   s   &rk   _idr    s    Jrj   c                     V R 8X  d5   \        4       '       g%   \        P                  ! \         P                  4      # \	        V 4      '       d   \
        # \        P                  ! RP                  V 4      4      # )r   zresource {0!r} is not enabled)r   r   r  r   r   r  r   r   s   &rk   requires_resourcer    sT    5!2!4!4}}.55668$$
}}<CCHMNNrj   c                 &    \        R R7      ! V 4      # )T)cpython)impl_detailr5  s   &rk   r   r     s     t$T**rj   c                 
   \        R/ VB '       d   \        # V fT   \        V4      w  r#V'       d   Rp MRp \        VP	                  4       4      pV P                  RP                  V4      4      p \        P                  ! V 4      # )Nz*implementation detail not available on {0}z%implementation detail specific to {0}z or rc   )	r9   r  _parse_guardsr  keysr   r  r   r  )rq   guards
guardnamesdefaults   &,  rk   r  r    sk    "6""

{+F3
>C9CJOO-.
jjZ01==rj   c                 n    V '       g   R R/R3# \        V P                  4       4      ^ ,          pW'       * 3# )r  TF)listrB  )r  is_trues   & rk   r  r    s5    D!5))6==?#A&GK  rj   c                  p    \        V 4      w  rV P                  \        P                  P                  V4      # rp   )r  r  r   implementationr   )r  r  s   , rk   r9   r9     s-     $F+OF::c((--w77rj   c                   a aa S o\        \        R 4      '       d    \        P                  ! S 4      V 3R l4       oSpR\        P                  9   d;   \        P
                  P                  o\        P                  ! S 4      VV3R l4       pV# )gettracec                     < \         P                  ! 4       p \         P                  ! R 4       S! V / VB \         P                  ! V4       #   \         P                  ! T4       i ; irp   )r   r  settrace)ru   r^  original_tracer   s   *, rk   trace_wrapper!no_tracing.<locals>.trace_wrapper
  sE     \\^N-T"T,V,^,^,s   A A$ztest.covc                    < \         P                  P                  S4      p \         P                  P                  S^ 4       S! V / VB \         P                  P                  SV4       #   \         P                  P                  ST4       i ; i)r   )r   
monitoring
get_events
set_events)ru   r^  original_eventscovr  s   *, rk   coverage_wrapper$no_tracing.<locals>.coverage_wrapper  sg    !nn77<O@))#q1$d5f5))#?))#?s   'A* *"B)r   r   r$  r%  modulesr  COVERAGE_ID)r   r  r  r  s   f @@rk   
no_tracingr    sx    MsJ			- 
	- %S[[ nn((			@ 
	@ rj   c                    a  V 3R  lpV# )c                     <a a R oVV V3R lpV# )Fc                 N   < S'       d   V P                  S4       S! V 4       R oR# r~  )rW  )rt   _has_runr   r   s   &rk   r"  'no_rerun.<locals>.deco.<locals>.wrapper,  s    f%JHrj   rc   )r   r"  r  r   s   f @rk   rZ  no_rerun.<locals>.deco)  s    	 rj   rc   )r   rZ  s   f rk   no_rerunr  "  s    	 Krj   c                 *    \        \        V 4      4      # rp   )r  r   r  s   &rk   refcount_testr  6  s     l4())rj   c                 r     ^ RI p^ RIpV #   \         d     \        P                  ! R4      ! T 4      u # i ; i)r   Nz,needs _testcapi and _testlimitedcapi modules)ry  _testlimitedcapiri  r   r  )r5  ry  r  s   &  rk   r0   r0   A  s=    S K  S}}KLTRRSs    '66TEST_MODULESyesc                 X    \         P                  ! \        P                  R 4      ! V 4      # zrequires specialization)r   rj  _opcodeENABLE_SPECIALIZATIONr  s   &rk   r1   r1   N  s,    %%'@BBFH Hrj   c                 X    \         P                  ! \        P                  R 4      ! V 4      # r  )r   rj  r  ENABLE_SPECIALIZATION_FTr  s   &rk   requires_specialization_ftr  S  s,    ((*CEEIK Krj   c                X    V ^8  d   QhR\         P                  R\         P                  /# )r   r   r  )r1  r2  )r   s   "rk   r  r  X  s&      %$$ );); rj   c                 D    V P                   P                  4       V n         V # rp   )__code__rJ  r   s   &rk   ra   ra   X  s    ##%AJHrj   c                      R # rp   rc   rc   rj   rk   _check_docstringsr  d  s    rj   WITH_DOC_STRINGSztest requires docstringsc                      \         P                  e   \         P                  P                  4        \         P                  e!   \         P                  P                  4        R # R # rp   )r   r   r  r  rc   rj   rk   flush_std_streamsr  u  s;    
zz


zz

 rj   c                     \        4        \        P                  pV P                  4        F  p\	        R V 2VR7       K  	  VP                  4        R# )zWarning -- r  N)r  print_warningorig_stderr
splitlinesr   r  )rq   streamlines   &  rk   r  r  |  s>    &&F D6"0 !
LLNrj   c                  &   \        \        R 4      '       d   \        \        R4      '       g   R# \        '       g   R#   \        P                  ! R\        P                  4      w  rT ^ 8X  d   R# \        RT  24       RsKD    \
         d     R# i ; i)waitpidWNOHANGNTz%reap_children() reaped child process r  )r   r   r$   r  r  r   r  environment_altered)r  statuss     rk   r?   r?     s     B	""wr9'='=## 	**R4KC !8=cUCD"  		s   'B BBc              #   H  "   \        W4      '       d+   \        W4      p\        WV4        Vx  \        WV4       R # \        WV4        R x  \        W4      '       d   \        W4       R # R #   \        YT4       i ; i  \        Y4      '       d   \        Y4       i i ; i5irp   )r   r   r  delattr)r   attrnew_valreal_vals   &&& rk   rD   rD     s       s3%7#	)NCx(7#	#s!!" " Cx( s!!" "s3   )B"A/ B"B   B"/A==B" BB"c              #      "   W9   d   W,          pW V&    Vx  W0V&   R # W V&    R x  W9   d   W R # R #   Y0T&   i ; i  Y9   d   Y i i ; i5irp   rc   )r   itemr  r  s   &&& rk   rA   rA     se       {9D		!N ID		{I  !I {I s+   A5 
A> A;AA		Ac                  *    ^ RI p V P                  4       # rg  )r   _args_from_interpreter_flagsr   s    rk   args_from_interpreter_flagsr    s     2244rj   c                  *    ^ RI p V P                  4       # rg  )r   "_optim_args_from_interpreter_flagsr  s    rk   !optim_args_from_interpreter_flagsr    s     88::rj   c                   0   a  ] tR tRt o RtR tR tRtV tR# )rE   i  c                    R pV F9  pW$,          pVP                  V4      pV P                  WFV4      '       d   K6  Rp V# 	  V# )TF)r  match_value)rt   dr^  r   rn  vdvs   &&,    rk   matchesMatcher.matches  sN     A	AqB##A1--  rj   c                    \        V4      \        V4      8w  d   R pV# \        V4      \        Jg   WP                  9  d   W28H  pV# VP                  V4      ^ 8  pV# F)r   r   _partial_matchesfind)rt   rn  r  r
  r   s   &&&& rk   r  Matcher.match_value  s_     7d2hF
 	 "XS A-B-B$BgF  WWQZ1_Frj   rc   N)rq   message)	re   rf   rg   rh   r  r  r  ri   r}   r  s   @rk   rE   rE     s     )"
 
rj   c                    ^ RI p\        fT   \        P                  R8X  d=   VP	                  4       R8X  d(   \
        P                  ! 4       P                  R8X  d   RsMRs\        '       d   \        P                  ! R4      ! V 4      # T # )r   Nr  cp65001r/  TFz!buggy MSVC UCRT strptime/strftime)
rM  _buggy_ucrtr   r   getencodingra  	localtimetm_zoner   r  )r5  rM  s   & rk   r,   r,     sh     <<7"""$	1 ((B.KKGR{8==<=dC\X\\rj   c                      a  ] tR tRt o RR lt]P                  R8X  d   R tMR tR tR t	R	 t
R
^ /R ltR
^ /R ltRtV tR# )PythonSymlinki2  Nc                   ^RI Hp T;'       g     \        P                  P	                  V4      V n        . V n        \        P                  P                  \        P                  4      V n
        . V n        RV n        V P                  4        R# )r~  )TESTFNN)r  r  r   r   abspathlink_linkedrealpathr   r  real
_also_link_env_platform_specific)rt   r  r  s   && rk   rs   PythonSymlink.__init__4  s\    %33BGGOOF3	GG$$S^^4		!rj   r  c           
        ^ RI p^ RIp\        P                  P	                  V P
                  4      '       dF   \        P                  P                  V P
                  4      '       g   VP                  ^ 4      V n        VP                  \        P                  4      p\        P                  P                  V4      p\        P                  P                  V P                  4      pV P                  P                  V\        P                  P                  V\        P                  P                  V4      4      34       VP                  \        P                  P                  VP!                  V4      R4      4       F[  pV P                  P                  V\        P                  P                  V\        P                  P                  V4      4      34       K]  	  \        P"                   Uu/ uF'  qwP%                  4       \        P&                  ! V4      bK)  	  upV n        \        P                  P                  V P
                  4      V P(                  R&   \*        P,                  ! 4       '       d   \.        V P(                  R&   R# R# u upi )r   Nzvcruntime*.dll
PYTHONHOME
PYTHONPATH)glob_winapir   r   lexistsr"  r  GetModuleFileNamer   	dllhandledirnamer  r#  r  r  basenameescaperc  uppergetenvr$  rH  is_python_buildr   )rt   r*  r+  r   src_dirdest_dirruntimern  s   &       rk   r%   PythonSymlink._platform_specificA  s   wwtyy))"''..2K2K $55a8	++CMM:Cggooc*Gwwtyy1HOO""Xrww'7'7'<=$   99RWW\\$++g2FHX%YZ&&GGLL277+;+;G+DE(  [ ;=**E*QBIIaL0*EDI&(ggoodii&@DIIl#((***4		,' + Fs   +-Jc                    R # rp   rc   rz   s   &rk   r%  r8  \      rj   c                2   \         P                  ! V P                  V P                  4       V P                  P                  V P                  4       V P                   F6  w  r\         P                  ! W4       V P                  P                  V4       K8  	  V # rp   )r   symlinkr"  r  r   r  r#  )rt   r"  r  s   &  rk   	__enter__PythonSymlink.__enter___  sc    


499dii(DII&//JDJJt"LL% * rj   c                    V P                    F  p \        P                  ! V4       K  	  R#   \         d8   p\        '       d!   \        R P                  YE4      4        Rp?KW   Rp?K]  Rp?ii ; i)zfailed to clean up {}: {}N)r   r   removeIOErrorr   r   r   )rt   exc_type	exc_valueexc_tbr  exs   &&&&  rk   __exit__PythonSymlink.__exit__g  sV    LLDH		$ !  H75<<TFGG Hs   -A/&A**A/c                   ^ RI pV.VOpVP                  WeP                  VP                  VR7      pVP                  4       pVP                  V8w  dw   \
        '       dG   \        \        V^ ,          4      4       \        \        V^,          4      \        P                  R7       \        RP                  VP                  4      4      hV# )r   N)r   r  rX  r  z'unexpected return code: {0} (0x{0:08X}))r   r  PIPEcommunicate
returncoder   r   reprr   r  RuntimeErrorr   )	rt   pythonru   rX  rK  r   cmdpr  s	   &&&&&    rk   _callPythonSymlink._callo  s    ooS$.OO  >MMO<<:%wd1Q4j!d1Q4jszz29@@NP Prj   rK  c               >    V P                  V P                  VR V4      # rp   )rQ  r"  rt   rK  ru   s   &$*rk   	call_realPythonSymlink.call_real}  s    zz$))T4<<rj   c               P    V P                  V P                  W P                  V4      # rp   )rQ  r  r$  rT  s   &$*rk   	call_linkPythonSymlink.call_link  s    zz$))T99jAArj   )r#  r$  r   r  r"  rp   )re   rf   rg   rh   rs   r   r   r%  r=  rF  rQ  rU  rX  ri   r}   r  s   @rk   r  r  2  sR     
" ||w	56	H=! =B! B Brj   r  c                     \         '       * ;'       g    \        pR pV'       d   V # \        P                  ! V4      ! V 4      # )z#Not run for (non-extended) PGO task)rJ   PGO_EXTENDEDr   r  )r5  okrq   s   &  rk   skip_if_pgo_taskr]    s1    	 	 LB
/C438==-d33rj   ignorec                    \        \        V 4      4      \        \        V4      4      ,
          pV'       d   V\        V4      ,          p\        R  V 4       4      pV# )c              3      "   T F7  pVP                  R 4      '       d   VP                  R4      '       g   K3  Vx  K9  	  R# 5i)r  __N)r   endswith)r  ro  s   & rk   r  &detect_api_mismatch.<locals>.<genexpr>  s2      F=a ||C00AJJt4D =s   AA
A)setdir)ref_api	other_apir^  missing_itemss   &&$ rk   r*   r*     sP     G%C	N(;;MV$ F= F FMrj   c                    Vf   VP                   3pM\        V\        4      '       d   V3p\        V4      p\	        V4       F  pVP                  R4      '       g   Wd9   d   K"  \        W4      p\        VRR 4      V9   g7   \        VR4      '       d   KS  \        V\        P                  4      '       d   Ku  VP                  V4       K  	  V P                  VP                  V4       R # )Nr  rf   )re   r0  r   rd  re  r   r   r   r1  
ModuleTypeaddassertCountEqual__all__)r  r  name_of_moduleextranot_exportedexpectedr   r   s   &&&&&   rk   r+   r+     s    R  //,	NC	(	((+5zHF??34#7f#Ct,>S,//U%5%566LL  v~~x8rj   c                     ^ RI pTP                  TP                  TP                  ,          TP
                  ,          TP                  ,          4       \        TR4      '       d   TP                  TP                  TP                  3 FU  pT '       d9   TP                  Y!P                  4       TP                  Y!P                  4       KC  TP                  T^ 4       KW  	  R# R#   \         d     R# i ; i)r   NCrtSetReportMode)msvcrtri  SetErrorModeSEM_FAILCRITICALERRORSSEM_NOALIGNMENTFAULTEXCEPTSEM_NOGPFAULTERRORBOXSEM_NOOPENFILEERRORBOXr   CRT_WARN	CRT_ERROR
CRT_ASSERTrs  CRTDBG_MODE_FILECrtSetReportFileCRTDBG_FILE_STDERR)r   rt  ro  s   &  rk   suppress_msvcrt_assertsr    s     55 ;;< 667 !778 9 v)**//6#3#3V5F5FGA''+B+BC''+D+DE''1- H +  s   C& &C54C5c                   4   a  ] tR tRt o RtRtR tR tRtV t	R# )rG   i  Nc                   \         P                  P                  R 4      '       d    ^ RIpTP                  4       T n        TP                  T P                  TP                  ,          4       \        TR4      '       dz   / T n
        TP                  TP                  TP                  3 FK  pTP                  TTP                  4      pTP!                  TTP"                  4      pY43T P                  T&   KM  	  T #  ^ RIpWPn        V P$                  ey    V P$                  P'                  V P$                  P(                  4      V n        V P$                  P+                  V P$                  P(                  ^ V P                  ^,          34       \         P                  R8X  d~   ^ RIp. R
OpVP3                  VVP4                  VP4                  R7      pV;_uu_ 4        VP7                  4       ^ ,          p	RRR4       X	P9                  4       R8X  d   \;        RRRR	7       V #   \         d     R# i ; i  \         d    RT n         ELAi ; i  \,        \.        3 d     Li ; i  + '       g   i     Lw; i)r   Nrs  r   )r   r  s	   developerz:this test triggers the Crash Reporter, that is intentionalr/  T)endr  )z/usr/bin/defaultsr  zcom.apple.CrashReporter
DialogType)r   r   r   rt  ri  GetErrorMode	old_valueru  rx  r   	old_modesrz  r{  r|  rs  r}  r~  r  r   	getrlimitRLIMIT_CORE	setrlimitr	  r   r   r  rI  rJ  r   r   )
rt   rt  report_typeold_modeold_filer   r   rO  procr   s
   &         rk   r=  SuppressCrashReport.__enter__  s    <<""5)) $002DN1M1M MN v122!#$*OO$*$4$4$*$5$5$7K  &66{"33 5H%66{"55 7H2:2DDNN;/$7T A% ( }}(%)]]%<%<T]]=V=V%WDNMM++DMM,E,E-.q0A,BD
 ||x'!@!''/9/9 ( @ T!--/2F <<>\1 057tE k  0  % $% #G,   TsB   H :
H0 A7I	 I H-,H-0II	II I0	c                0   V P                   f   R # \        P                  P                  R4      '       d~   ^ R IpVP                  V P                   4       V P                  '       dK   V P                  P                  4        F*  w  pw  rEVP                  W44       VP                  W54       K,  	  R # R # V P                  e>    V P                  P                  V P                  P                  V P                   4       R # R #   \        \        3 d     R # i ; i)Nr   )r  r   r   r   rt  ru  r  r  rs  r~  r   r  r  r	  r   )rt   
ignore_excrt  r  r  r  s   &*    rk   rF  SuppressCrashReport.__exit__5  s    >>!<<""5))/~~~9=9M9M9O5K!5(++KB++KB :P 
 }}(MM++DMM,E,Et~~V ) #G, s   :D   DD)r  r  r   )
re   rf   rg   rh   r  r  r=  rF  ri   r}   r  s   @rk   rG   rG     s"      II@D rj   c                    aaaa \        SS4       R o SP                  S,          oRoVVVV3R lpV P	                  V4       \        SSV4       R#   \        \        3 d    \        SSR4      o LIi ; i)FTNc                  N   < S '       d   \        SSS4       R # \        SS4       R # rp   )r  r  )attr_is_local	attr_nameobject_to_patchr  s   rk   cleanuppatch.<locals>.cleanup`  s    OY	:OY/rj   )r   __dict__r   r:  
addCleanupr  )test_instancer  r  	new_valuer  r  r  s   &ff& @@rk   patchr  J  s~     OY' M#,,Y7	 0 0 W% OY	2 H% >OY=	>s   A A32A3c              #   F   "    V R ,          pRx  WR &   R#   XT R &   i ; i5i)NNNNrc   )origsaveds   & rk   
patch_listr  l  s&     QQ%Qs   ! !!c                     \        4         ^ RIpTP                  T 4      #   \         d    \        P                  ! R4      hi ; ir   Nzrequires _testcapi)_check_tracemallocry  ri  r   r   run_in_subinterp)r  ry  s   & rk   r  r  v  sH    
 6 %%d++  6 4556s	   ! "Aown_gilc                   \        4         ^ RIpTe   T'       d   RMRTR&   MQTR,          pT^ 8X  d   RTR&   M;T^8X  d   RTR&   M.T^8X  d   RTR&   M!\        T\        4      '       g   \        T4      h\        P                  ! R/ TB pTP                  Y4      #   \         d    \        P                  ! R4      hi ; i)r   Nzrequires _testinternalcapiownsharedgilr  rc   )r  r/  ri  r   r   r0  r   NotImplementedErrorr1  SimpleNamespacerun_in_subinterp_with_config)r  r  configr/  r  s   &$,  rk   r  r    s    
 >  !(huUm!8%F5MAX$F5MAX!F5MC%%%c**"",V,F99$GG!  > <==>s   B "B>c                       ^ RI p V P                  4       '       d   \        P                  ! R4      hR#   \         d     R# i ; i)r   NzUrun_in_subinterp() cannot be used if tracemalloc module is tracing memory allocations)tracemalloc
is_tracingr   r   ri  )r  s    rk   r  r    sL    ; !!#### %: ; ; $  s   4 AAc                 l   a aaaa R oVVVVV 3R lpV! 4        \        4        S P                  S4       R# )Fc                  v   <a  ! VV3R  lRS4      p S! V ! S!  4      oSP                  \        \        S4       R# )c                   0   <a  ] tR tRt o VV3R ltRtV tR# )6check_free_after_iterating.<locals>.wrapper.<locals>.Ai  c                H   < R o \        S4       R#   \         d     R# i ; ir~  )nextStopIteration)rt   doneits   &rk   __del__>check_free_after_iterating.<locals>.wrapper.<locals>.A.__del__  s&    H$ s    !!rc   N)re   rf   rg   rh   r  ri   r}   )r   r  r  s   @rk   Ar    s      rj   r  N)assertRaisesr  r  )r  r  ru   clsr  iterr5  s    @rk   r"  +check_free_after_iterating.<locals>.wrapper  s5    	 	 	 !T(^-r2rj   N)r  
assertTrue)r5  r  r  ru   r"  r  s   ffff @rk   check_free_after_iteratingr    s*    D3 3 ILOODrj   c                    ^ RI HpHp ^ RIHp ^ RIpVP                  4       pVP                  ! V4       VP                  R8X  d    VP                  4        VP                   FV  pV '       d	   W`9  d   K  \        WV4      pV '       d   M
V'       g   K1  VP                  V^ ,          4      e   KM  V^ ,          u # 	  R#   TP                   d     R# i ; i)r   )	ccompilerrH  )r   Nmsvc)setuptools._distutilsr  rH  
setuptoolsr   r  new_compilercustomize_compilercompiler_type
initializePlatformErrorexecutablesr   which)	cmd_namesr  rH  r   r  compilerr   rO  s   &       rk   rK   rK     s     ;!%%'H  *'	! $$.h%9 <<A'q6M % ## 		s   B? ?CCc                     R p\         '       dT   W8  dN   \        f8   ^ RIpVP                  4       pVP                  ;'       d    VP
                  ^8  s\        '       d   Tp \        P                  ! V 4      # )g-C6?N)r5   _old_android_emulatorr   android_veris_emulator	api_levelr   r;   )intervalminimum_intervalr   avs   &   rk   r;   r;     sb     zh1 (%%'B$&NN$H$Hr||b7H!  'H  **rj   c                       \         P                  ! R 4      p V #   \        \        3 d7     \         P                  ! R4      p  T #   \        \        3 d    Rp   T # i ; ii ; i)SC_PAGESIZESC_PAGE_SIZE   )r   sysconfr	  r   )	page_sizes    rk   r=   r=     so    JJ}-	  ' 	

>2I  N+ 	I	s&    A!AAA!AA!c               #     "   ^ RI p \        P                  P                  4       pV P	                  4       p V P                  4        Rx  V'       d   V P                  VRR7       R# R#   T'       d   T P                  TRR7       i i ; i5i)r   NT)r  all_threads)faulthandlerr   
__stderr__fileno
is_enabledr  r  )r  fdr  s      rk   disable_faulthandlerr     st     
 
			 B((*J;RT: :RT: s   3B
A) 
B
)BB
c                   2   a  ] tR tRt o R tR tR tRtV tR# )SaveSignalsi  c                    ^ RI pWn         VP                  4       V n        R F*  p \        W4      pT P                  P                  T4       K,  	  / V n        R#   \         d     KE  i ; i)r   N)SIGKILLSIGSTOP)signalvalid_signalssignalsr   r   r@  handlers)rt   r  signamesignums   &   rk   rs   SaveSignals.__init__  sd    ++--G 1 LL' .  " s   AA('A(c                    V P                    F2  pV P                  P                  V4      pVf   K$  W P                  V&   K4  	  R # rp   )r  r  	getsignalr  rt   r  handlers   &  rk   saveSaveSignals.save(  s:    llFkk++F3G $+MM&! #rj   c                    V P                   P                  4        F   w  rV P                  P                  W4       K"  	  R # rp   )r  r  r  r  s   &  rk   restoreSaveSignals.restore4  s-    #}}224OFKKv/  5rj   )r  r  r  N)	re   rf   rg   rh   rs   r  r  ri   r}   r  s   @rk   r  r    s     
,0 0rj   r  c                       ^ RI p T P                  ;'       d    \
        '       * #   \         d    \        P                  ! R4      hi ; ir  )ry  ri  r   r   WITH_PYMALLOCr  r{  s    rk   with_pymallocr  9  sF    6 ""::?'::  6 4556s	   % "Ac                  n     ^ RI p V P                  #   \         d    \        P                  ! R4      hi ; ir  )ry  ri  r   r   WITH_MIMALLOCr{  s    rk   with_mimallocr  A  s;    6 """  6 4556s    "4c                   ,   a  ] tR tRt o R tR tRtV tR# )
_ALWAYS_EQiI  c                    R # r*  rc   rt   others   &&rk   __eq___ALWAYS_EQ.__eq__M      rj   c                    R # r  rc   r  s   &&rk   __ne___ALWAYS_EQ.__ne__O      rj   rc   N)re   rf   rg   rh   r
  r  ri   r}   r  s   @rk   r  r  I  s      rj   r  c                   2   a  ] tR tRt o R tR tR tRtV tR# )	_NEVER_EQiT  c                    R # r  rc   r  s   &&rk   r
  _NEVER_EQ.__eq__X  r  rj   c                    R # r*  rc   r  s   &&rk   r  _NEVER_EQ.__ne__Z  r  rj   c                    ^# r~  rc   rz   s   &rk   __hash___NEVER_EQ.__hash__\  s    rj   rc   N)	re   rf   rg   rh   r
  r  r  ri   r}   r  s   @rk   r  r  T  s      rj   r  c                   ,   a  ] tR tRt o R tR tRtV tR# )_LARGESTia  c                "    \        V\        4      # rp   )r0  r  r  s   &&rk   r
  _LARGEST.__eq__f  s    %**rj   c                    R # r  rc   r  s   &&rk   __lt___LARGEST.__lt__h  r  rj   rc   N)re   rf   rg   rh   r
  r   ri   r}   r  s   @rk   r  r  a  s     
+ rj   r  c                   ,   a  ] tR tRt o R tR tRtV tR# )	_SMALLESTim  c                "    \        V\        4      # rp   )r0  r#  r  s   &&rk   r
  _SMALLEST.__eq__r  s    %++rj   c                    R # r  rc   r  s   &&rk   __gt___SMALLEST.__gt__t  r  rj   rc   N)re   rf   rg   rh   r
  r'  ri   r}   r  s   @rk   r#  r#  m  s     
, rj   r#  c                  6    ^ RI p V P                  P                  # rg  )asyncio.eventsevents_event_loop_policy)asyncios    rk   maybe_get_event_loop_policyr.  y  s    >>,,,rj   c                    Yr2^ RI pVP                  4       ;_uu_ 4       pVP                  4       ^,          p\        V^4      Vn        VP                  V4      pV^,
          V,          V,          pW(,          p	W),
          p
W:,
          pWw^,
          ,          V^,
          V,          V,          ,          V	^V	,
          ,          ,           p\        V4      \        VP                  4       4      3uuRRR4       #   + '       g   i     R# ; irg  )decimallocalcontext
bit_lengthmaxprecDecimalrx  sqrt)nbinsnballsr"  rn  r0  ctxbitsr  p1empty	meanemptyoccupied
collisionsvars   &&           rk   collision_statsr@    s    q$ 					3||~! tR=__QFb=Q&K	=\
Q$i"Q$Q&a)m)DDZ %
"33 
 			s   CC66D	c                   8   a  ] tR tRt o R tR tR tR tRtV t	R# )catch_unraisable_exceptioni  c                "    R V n         R V n        R # rp   )
unraisable	_old_hookrz   s   &rk   rs   #catch_unraisable_exception.__init__  s    rj   c                    Wn         R # rp   )rD  )rt   rD  s   &&rk   _hook catch_unraisable_exception._hook  s	     %rj   c                Z    \         P                  V n        V P                  \         n        V # rp   )r   unraisablehookrE  rH  rz   s   &rk   r=  $catch_unraisable_exception.__enter__  s     ++!ZZrj   c                4    V P                   \        n        V =R # rp   )rE  r   rK  rD  )rt   r6  s   &*rk   rF  #catch_unraisable_exception.__exit__  s    !^^Orj   )rE  rD  N)
re   rf   rg   rh   rs   rH  r=  rF  ri   r}   r  s   @rk   rB  rB    s     2%

 rj   rB  r  c          	         \         P                  R 8w  d   ^ RIpVf   \        p\        P
                  ! 4       p\        VRR7       F3  p\         P                  ! V \         P                  4      w  rgV^ 8w  g   K3   M	   \         P                  ! WP                  4       \         P                  ! V ^ 4       \        P
                  ! 4       V,
          p\        RV  RVR R24      h\         P                  ! V ^ 4      w  rg\         P                  ! V4      p	W8w  d   \        RV  RV	 R	V R
24      hW`8w  d   \        RV RV  24      hR#   \         d     Li ; i)ntNFerrorzprocess z is still running after .1fz secondsz exited with code z, but exit code z is expectedzpid z != pid )r   r   r  rS   ra  	monotonicsleeping_retryr  r  killr  r   AssertionErrorwaitstatus_to_exitcode)
r  exitcoder  r  
start_timer  pid2r  dt	exitcode2s
   &$$       rk   wait_processr^    sF    
ww$?"G^^%
u5A::c2::6LDqy 6^^,

3"
 !J.B 8C5 1**,S"; < < zz#q)))&1Ixu,>yk J..6Z|E F 	F {tD6#788 #  s   >7E EEc                     ^RI Hp  V ! R4       V ! R4      p\        P                  R8X  d)    ^ RIpVP                  VP                  R4      R7       R# R#   \         d    p\        P                  ! RT: 24      hRp?ii ; i)	r~  )import_module_multiprocessingzmultiprocessing.synchronizelinuxNr  )r9  z broken multiprocessing SemLock: )
import_helperr`  r   r   multiprocessingLockget_contextr   r   r   )r`  synchronizerd  excs       rk   *skip_if_broken_multiprocessing_synchronizeri  	  s     - $%   =>K
||w	P #!<!<V!DE   	P##&Fsg$NOO	Ps   %A B !A;;B c                    VP                   pVP                  pVR 8w  d	   V RV 2pMT pR\        P                  ! V4       R2pV P                  ! \
        Wq.VO5/ VB  V P                  ! \
        WqP                  V.VO5/ VB  R# )builtinsr  zcannot create 'z' instancesN)rf   re   rt  r1  r  rH  __new__)r  tpru   rd  modr   qualnamerq   s   &&*,    rk   r-   r-   $	  s     --C;;D
jU!D6?VBIIh/0
<Cy#ADADAy#zz2MMMrj   c                      ^ RI p V P                  4       p\        T^,
          ^4      #   \        \        3 dH   p ^ p\        P
                  ! 4       pTe   T^,          pTP                  pK   Rp Rp?L_  Rpi ; iRp?ii ; irg  )r/  get_recursion_depthri  RecursionErrorr   	_getframef_backr3  )r/  depthrh  frames       rk   rq  rq  4	  s    
 !557 uqy! ( 
	EMMOE#
 $
 EDE
s&   ) B2A5.A<5A99A<<Bc                  P    \         P                  ! 4       p \        4       pW,
          # rp   )r   getrecursionlimitrq  )rl  ru  s     rk   get_recursion_availablery  K	  s"     !!#E!E=rj   c              #      "   \         P                  ! 4       p \         P                  ! V 4       R x  \         P                  ! V4       R #   \         P                  ! T4       i ; i5irp   )r   rx  setrecursionlimit)rl  original_limits   & rk   set_recursion_limitr}  U	  sG      **,N.e$n-n-   A&A A&A##A&c                     V f   Rp MV ^8  d   \        RV  24      h\        4       p\        V^,
          ^4      pW,           p\        V4      # )Ni N  z"max_depth must be at least 3, got )r	  rq  r3  r}  )	max_depthru  rl  s   &  rk   rC   rC   _	  sT     		Q=i[IJJ!E	1EEu%%rj   c                <    V ^8  d   QhR\         R\         R\        /# )r   r  liker  )r   r  )r   s   "rk   r  r  l	  s!      S 3 6 rj   c          
      ~    \        4       p\        P                  ! R \        V VR\	        V4       R2,           R7       V# )r^  
(?#support))rQ  r  r  )r  r  filterwarningsDeprecationWarningid)r  r  tokens   &$ rk   ignore_deprecations_fromr  l	  s<    HE#*RYKq11	 Lrj   c                (    V ^8  d   QhR\         RR/# )r   tokensr  N)r  )r   s   "rk   r  r  v	  s     $ $ $4 $rj   c                     V '       g   \        R 4      h. p\        P                  ! 4       p\        ;QJ d    . R V  4       F  NK  	  5M! R V  4       4      pV F~  w  rErgpVR8X  d]   V\        J dS   \        V\        P                  4      '       d   VP                  p	MT;'       g    Rp	V	P                  V4      '       d   Kj  VP                  WEWgV34       K  	  W!8w  d   WR&   \        P                  ! 4        R# R# )z<Provide token or tokens returned by ignore_deprecations_fromc              3   @   "   T F  pR \        V4       R2x  K  	  R# 5i)r  r  N)r  )r  r  s   & rk   r  -clear_ignored_deprecations.<locals>.<genexpr>|	  s     DVE
2e9+Q/Vs   r^  r/  r  N)r	  r  _get_filtersr  r  r0  rt  Patternr   rb  r  _filters_mutated)
r  new_filtersold_filtersrb  actionr  rQ  r  r  rq   s
   *         rk   clear_ignored_deprecationsr  v	  s    WXXK'')KuDVDuuDVDDH5@16X(.@"@'2::..oomm||H%%FXvFG 6A !$A!!# "rj   c                       ^ RI p  ^ RIp\        P
                  ! TR4      #   \         d    \        P                  ! RR4      u # i ; i  \         d    Rp LNi ; i)r   NTzvenv: ensurepip requires zlibzvenv: pip requires ctypes)rh  ri  r   r  r   rj  )rh  r   s     rk   requires_venv_with_pipr  	  sc    F v'BCC  Ft%DEEF  s    " A
 "AA
AAc                    \         P                  ! R 4      ;'       g%    \        P                  P	                  \
        R4      p\        P                  ! V4      p\        VRR7      pV F]  pVP                  R4      '       g   K  V R,           pVP                  V4      '       g   K>  \        P                  P	                  W4      u # 	  \        RV  RV 24      h)WHEEL_PKG_DIR	wheeldataT)reversez.whlr  zNo wheel for z
 found in )rH  rI  r   r   r  r  listdirr  rb  r   r   )pkgname	wheel_dir	filenamesr  prefixs   &    rk   
_findwheelr  	  s     ((9  RWW\\{>I 

9%Iy$/I  ((3v&&77<<	44  mG9JykJ
KKrj   c              #   H  a"   ^ RI o^RIHp V3R lpV! 4       ;_uu_ 4       p\        P                  RRRRV .pV! V4       \
        P                  P                  W04      p\
        P                  P                  \        P                  4      p\        P                  R8X  d#   \
        P                  P                  VR	V4      pM!\
        P                  P                  VR
V4      pVRRRRR\        R4      3pV! V4       Vx  RRR4       R#   + '       g   i     R# ; i5i)r   N)temp_cwdc           	        < \         '       dS   ^ RIp\        4        \        RRP                  \	        VP
                  V 4      4      4       SP                  V RR7       R# SP                  V SP                  SP                  RR7       R# )r   NzRun:r<  T)r   )r   r  r   )	r   shlexr   r  r  quoter   rI  STDOUT)rO  r  r   s   & rk   run_command3setup_venv_with_pip_setuptools.<locals>.run_command	  sd    7G&#((3u{{C#89:NN3dN+NN3",//","3"3!%  'rj   z-Xdevz-mvenvr  Scriptsbinpipinstallr  )r   r  r  r   r  r   r   r  r0  r   r  )	venv_dirr  r  temp_dirrO  r  
python_exerN  r   s	   &       @rk   setup_venv_with_pip_setuptoolsr  	  s     #
' 
x~~tUD&(CCww||H/ WW%%cnn5
<<7"WW\\$	:>FWW\\$z:FtUUI,' 	C) 
s    D"C!D
D"D		D"gettotalrefcountc                     V .pVP                  V4       ^ RIpR pWn        VP                  V4       \	        \
        R4      '       d#   R pWn        \
        P                  ! VR7       R# R# )r   Nc                     R # rp   rc   )encodings   &rk   search_func"late_deletion.<locals>.search_func	  r  rj   register_at_forkc                      R # rp   rc   rc   rj   rk   atfork_func"late_deletion.<locals>.atfork_func 
  r:  rj   )before)r  codecs	referenceregisterr   r   r  )r   	ref_cycler  r  r  s   &    rk   late_deletionr  	  sa    & IY %
OOK r%&&	 )
;/ 'rj   rR  c            #   :  "   V ^ 8:  d   \        R4      h\        P                  ! 4       pW0,           p Rx  \        P                  ! 4       V8  g   K!   T'       d>   \        P                  ! 4       T,
          pRTR R2pT'       d   T RT 2p\        T4      hR# 5i)r   z!timeout must be greater than zeroNz	timeout (rS  z	 seconds)r   )r	  ra  rT  rW  )r  err_msgrR  rZ  deadliner\  rq   s   ""$    rk   
busy_retryr  
  s     , !|<==!J#H
>>x'^^
*"S+EG9%CS!! s   ABB*BB
init_delayg{Gz?	max_delayg      ?c            #      "   Tp\        WVR 7       F0  pRx  \        P                  ! V4       \        V^,          V4      pK2  	  R# 5i)rQ  N)r  ra  sleepr  )r  r  r  r  rR  delayr  s   ""$$$  rk   rU  rU  0
  s<     4 E6

5EAIy)	 7s   AAc                   ,   a  ] tR tRt o R tR tRtV tR# )	StopwatchiR
  c                    \         P                  p\         P                  ! R 4      p\        4       V n        V P                  P                  4        Wn        W n        V! 4       V n        V # )perf_counter)	ra  r  get_clock_infor  contextr=  get_time
clock_inforZ  )rt   r  r  s   &  rk   r=  Stopwatch.__enter__g
  sN    $$((8
!|  $"*rj   c                     V P                  4       pV P                  P                  ! V!  pW P                  ,
          V n        V#   T P                  P                  ! T!  pi ; irp   )r  r  rF  rZ  seconds)rt   rh  end_timer   s   &*  rk   rF  Stopwatch.__exit__q
  sQ    	1}}H\\**C0F//1 \\**C0Fs   A A!)r  r  r  r  rZ  N)re   rf   rg   rh   r=  rF  ri   r}   r  s   @rk   r  r  R
  s     * rj   r  c              #      "   \         P                  ! 4       p \         P                  ! V 4       R x  \         P                  ! V4       R #   \         P                  ! T4       i ; i5irp   )r   get_int_max_str_digitsset_int_max_str_digits)
max_digitscurrents   & rk   adjust_int_max_str_digitsr  z
  sG      ((*G,"":.""7+""7+r~  c                      R # )iI rc   rc   rj   rk   rU   rU   
  s    rj   unames390xzskipped on s390x
getobjectszrequires JIT enabledzrequires JIT disabledz.git__pycache__c                     \         p\        P                  P                  V 4      R 8X  d   VRR0,          pV# RV9   d   VR0,          pV# )Docbuildr  Modules) _BASE_COPY_SRC_DIR_IGNORED_NAMESr   r   r0  )r   namesignoreds   && rk   copy_python_src_ignorer  
  s]    .G	ww&	
 	
 N 
e	
 	
 Nrj   topdownc             #     "   V .pV'       d   VP                  4       p \        V \        4      '       d   V x  K4  \        V 4      P	                  V 4      pV'       d+   W3x  \        V4       F  pVP                  V4       K  	  K  VP                  W34       \        V4       F  pVP                  V4       K  	  K  R # 5irp   )r  r0  r  r   __subclasses__reversedr  )topr  stacksubssubs   &$   rk   walk_class_hierarchyr  
  s      EE
iikc5!!ICy'',)O~S! & LL#%~S! &# s   B?B1B?c               #   x  "    ^ RI p V e   V P                  4        Rj  xL
  R# \        \        R4      '       dj   ^ RIp\        4       p\        \        4       FF  w  r4W29   d   K  VP                  V4       VP                  \        ,          '       g   . VR&   KB  Vx  KH  	  R# \        4       p\        P                  4        FZ  p\        V\        4      '       g   K  TpVP                  R8w  d   K0  V\         8X  d   K=  W29   d   KE  VP                  V4       Vx  K\  	  R#   \         d    Rp  EL+i ; i EL5i)r   Nr1  r  rk  )r/  ri  get_static_builtin_typesr   r  datetimerd  r  rk  r1  _TPFLAGS_STATIC_BUILTIN__builtins__rB  r0  r   rf   ExceptionGroup)r/  r  seenr  r  r   s         rk   iter_builtin_typesr  
  s    !  $$==??? v{##u-f5IC{HHSMMM$;;;QI 6 u&&(Cc4((C~~+n${HHSMI )/  ! ! 	@s9   D:D# D:D7A3D:BD:#D40D:3D44D:c              #      "   \         P                  ! V 4       F'  p\         P                  ! V4      p W1,          pYB3x  K)  	  R #   \         d     K;  i ; i5irp   )inspect_static_getmro_get_dunder_dict_of_classr:  )r  r   baser  r   s   &&   rk   iter_name_in_mror  
  sT      &&s+..t4	(C i ,
  		s'   0AAAAAAAc                 p    \        W4       F  pVu # 	  V\        P                  Jd   VR 3# \        V4      hrp   )r  r   	_sentinelr   )r  r   r  r   s   &&& rk   find_name_in_mror    s;    *
 + g'''}

rj   c                       ^ RI p V e+   V P                  4        Uu/ uF  qRbK  	  pp\        V4      # \        h  \         d    Rp  LCi ; iu upi rg  )r/  ri  identify_type_slot_wrappersr  r  )r/  r"  r  s      rk   r	  r	    s_    !  $"3"O"O"QR"QQD"QRE{!!  ! ! Ss   : AA
	A
c              #     a "   V 3R  lp \        4       pVeA   \        V4       F/  p\        S VR4      w  rEVf   K  V! W44      '       g   K(  W5S J 3x  K1  	  R# \	        S 4      p\        V4      p\        S 4       F  pW9   d   VP                  V4        \        S V4      p	TP                  R4      '       d   TP                  R4      '       g   T! Y4      '       g   Y9   d   Kk  Km  Y9   d	   TR3x  K{  TR3x  K  	  V F"  pWh,          p	V! S W4      '       g   K  VR3x  K$  	  R#   \         d    Rp EL$i ; i  \         d1    Y9   d'   T! YT,          4      '       d   TP                  T4        K  i ; i5i)c                 L   < \        V\        P                  4      '       g   R # R# )FT)r0  r1  WrapperDescriptorType)r   valuer  s   &&rk   is_slot_wrapper+iter_slot_wrappers.<locals>.is_slot_wrapper#  s    %!<!<== rj   Nra  TF)r	  r  r  r  varsrd  re  r@  r   r   rk  r   rb  )
r  r  attrsr  r   r  r  unusedr   r  s
   f         rk   iter_slot_wrappersr  "  sc    +- 5MD(dD9IC?4#=#=CK'' " 	 
cBWFC:MM$	C&E t$$DMM$,?,?t++zz zDj Ek!/ 2 3,,* M  &  	 zodtH==

4 	sj   E;
D) "E;E;AE;D=!E;8E;A	E;E;)D:6E;9D::E;=7E84E;7E88E;c                $    V ^8  d   QhR\         /# )r   colorr   )r   s   "rk   r  r  [  s     
 
t 
rj   c           	   #   T  a "   ^ RI p^RIHp \        VRRR/V 3R ll4      ;_uu_ 4        V! 4       ;_uu_ 4       pVP	                  RRR4       TP                  S '       d   RMRR	4       Rx  RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i5i)
r   N)EnvironmentVarGuardcan_colorizer  c                    < S# rp   rc   )r  r  s   $rk   r   force_color.<locals>.<lambda>`  s    %rj   FORCE_COLORNO_COLORPYTHON_COLORS1)	_colorizer  r  rD   unsetrd  )r  r   r  rX  s   f   rk   force_colorr"  Z  st     . 	)^-GD-GHH		-_=J<	 	 	IH 	IHHs3   (B(B4B	/B7
B(BBB%		B(c                 F   a  \         P                  ! S 4      V 3R  l4       pV# )c                  x   < \        R 4      ;_uu_ 4        S! V / VB uuRRR4       #   + '       g   i     R# ; ir~  r"  ru   r^  r   s   *,rk   r"   force_colorized.<locals>.wrapperj  s*    ((    (9	ra  r   r"  s   f rk   force_colorizedr*  h  %    __T) ) Nrj   c                 F   a  \         P                  ! S 4      V 3R  l4       pV# )c                  x   < \        R 4      ;_uu_ 4        S! V / VB uuRRR4       #   + '       g   i     R# ; iFNr%  r&  s   *,rk   r"  $force_not_colorized.<locals>.wrappers  s*    ((  r(  ra  r)  s   f rk   rY   rY   q  r+  rj   c                    a V P                   o\        \        P                  ! V P                   4      V3R  l4       4       pWn         V # )c                 J   < V P                  \        R 4      4       S! 4        R# r~  enterClassContextr"  r  original_setUpClasss   &rk   new_setUpClass2force_colorized_test_class.<locals>.new_setUpClass~  s     	k$/0rj   
setUpClassclassmethodr$  r%  r  r6  r5  s   & @rk   force_colorized_test_classr<  z  @    ..__S^^$ %  $NJrj   c                    a V P                   o\        \        P                  ! V P                   4      V3R  l4       4       pWn         V # )c                 J   < V P                  \        R 4      4       S! 4        R# r.  r2  r4  s   &rk   r6  6force_not_colorized_test_class.<locals>.new_setUpClass  s     	k%01rj   r8  r;  s   & @rk   rZ   rZ     r=  rj   c                F    V ^8  d   QhR\         \        \        3,          /# r   r  )r  r   )r   s   "rk   r  r    s      S#X rj   c                     \         P                  P                  4       p V P                  4        F-  pVP                  R 4      '       g   K  V P	                  V4       K/  	  V P	                  RR4       V P	                  RR4       V # )PYTHONr  Nr  )r   rc  copyr   r  )	clean_envrn  s     rk   r[   r[     sb    

!I^^<<!!MM!  MM-&MM*d#rj   l       STATUS_ACCESS_VIOLATIONl       STATUS_STACK_OVERFLOWl   :   STATUS_CONTROL_C_EXITc                 H   ^ RI pV ^ 8  d    V ) p VP                  V4      P                  # ^T u;8  d   R8  d)   M M%V ^,
          p VP                  V4      P                  #  \        V ,          #   \         d     LRi ; i  \         d     L,i ; i  \
         d     R# i ; i)r   N   )r  Signalsr   r	  WINDOWS_STATUSr:  )rY  r  r  s   &  rk   get_signal_namerN    s    !|	>>&)...
 XC	>>&)...h''  		  		
  s5   A0 B #B 0A>=A>BBB! B!c                   6   a  ] tR tRt o RR ltR tR tRtV tR# )r\   i  c                @    V'       d
   ^^ ,           W n         W0n        R# r~  N)next_raisesiter_raises)rt   init_raisesrR  rS  s   &&&&rk   rs   BrokenIter.__init__  s    aC&&rj   c                @    V P                   '       d   ^^ ,           R# R# rQ  )rR  rz   s   &rk   __next__BrokenIter.__next__  s    aCC rj   c                <    V P                   '       d
   ^^ ,           V # r  )rS  rz   s   &rk   __iter__BrokenIter.__iter__  s    aCrj   )rS  rR  N)FFF)	re   rf   rg   rh   rs   rW  rZ  ri   r}   r  s   @rk   r\   r\     s     ' rj   c                $    V ^8  d   QhR\         /# rB  r  )r   s   "rk   r  r    s      4 rj   c                  @   \        \        R 4      '       g   R#  \        RR4      ;_uu_ 4       p V P                  4       P	                  4       R8w  d    RRR4       R#  RRR4       ^ RIp \        P                  ! \        \        P                  \        P                  ,          4      p\        P                  ! T4       R#   + '       g   i     Lk; i  \
         d     R# i ; i  \         d-   pTP                  TP                  8X  d    Rp?R#  Rp?R# Rp?ii ; i)O_SYNCFz/run/systemd/containerrbs   systemd-nspawnNT)r   r   r  r  rstripr   errno__file__O_RDONLYr^  r  r   EINVAL)fpra  r  r   s       rk   r]   r]     s     2x  *D11Rwwy!%66 216 2 WWXr{{RYY67
 	# 21    99$ %
 sL   C %CC C +>C& C	C C C#"C#&D1DDc                    V ! V/ VB p VP                  R 4       \        R4      h  \         d'   pTP                  u R p?TP	                  4        # R p?ii ; i  TP	                  4        i ; i)Nzcoroutine did not complete)sendrW  r  r  r  async_fnru   r^  coror   s   "*,  rk   r^   r^     sa    T$V$D		$ 9::  ww 	


 	

s/   & A AAAA AA A,c              #      "   V x # 5irp   rc   )r
  s   &rk   r`   r`     s     Gs   c                    V ! V/ VB p   VP                  R4       K    \         d'   pTP                  u Rp?TP                  4        # Rp?ii ; i  TP                  4        i ; ir~  )rg  r  r  r  rh  s   "*,  rk   r_   r_     sW    T$V$D		$  ww

 	

s4   A  A AAAA AA A%c                  H     ^ RI Hp  T ! 4       ^ 8g  #   \         d     R# i ; i)r   get_fips_modeF)_hashlibro  ri  rn  s    rk   is_libssl_fips_moderq    s-    * ?a  s    !!c                  <    R p  ^ RI Hp  V #   \         d     T # i ; i)FPROCESS_VM_READV_SUPPORTED)_remote_debuggingrt  ri  rs  s    rk   _supports_remote_attachingrv    s2    !&@ &%  %%s    c                  <   \         P                  ! 4       '       g   \        P                  ! R 4      # \         P                  R9  d   \        P                  ! R4      # \         P                  R8X  d'   \        4       '       g   \        P                  ! R4      # \        # )zRemote debugging is not enabledrb  z*Test only runs on Linux, Windows and macOSz5Test only runs on Linux with process_vm_readv support)r   rb  r  )r   is_remote_debug_enabledr   r  r   rv  r  rc   rj   rk   _support_remote_exec_only_implry    sh    &&((}}>??
||77}}IJJ
||w'A'C'C}}TUUJrj   c                 "    \        4       ! V 4      # rp   )ry  r  s   &rk   r<   r<   '  s    )+D11rj   c                   B   a  ] tR tRt o RRRRRR/R ltR tR	 tR
tV tR# )EqualToForwardRefi*  r  Nowneris_classFc               6    Wn         W@n        W n        W0n        R # rp   __forward_arg____forward_is_class____forward_module__	__owner__)rt   argr  r}  r~  s   &&$$$rk   rs   EqualToForwardRef.__init__1  s      #$,!"(rj   c                R   \        V\        \        P                  34      '       g   \        # V P
                  VP
                  8H  ;'       d\    V P                  VP                  8H  ;'       d;    V P                  VP                  8H  ;'       d    V P                  VP                  8H  # rp   )	r0  r|  annotationlib
ForwardRefNotImplementedr  r  r  r  r  s   &&rk   r
  EqualToForwardRef.__eq__>  s    %"3]5M5M!NOO!!  E$9$99 2 2''5+C+CC2 2))U-G-GG2 2 %//1		
rj   c                D   . pV P                   e    VP                  RV P                   : 24       V P                  '       d   VP                  R4       V P                  e    VP                  RV P                  : 24       RV P                  : RP                  V4       R2# )Nz	, module=z, is_class=Truez, owner=zEqualToForwardRef(r/  r  )r  r  r  r  r  r  )rt   ro  s   & rk   __repr__EqualToForwardRef.__repr__H  s    "".LL9T%<%<$?@A$$$LL*+>>%LL8DNN#567#D$8$8#;BGGEN;K1MMrj   r  )	re   rf   rg   rh   rs   r
  r  ri   r}   r  s   @rk   r|  r|  *  s9      	
  
N Nrj   r|  c                  &   \         e   \         # \        '       d	   Rs \         # \        P                  R8w  d	   Rs \         # ^ R Ip V P	                  4       w  rVR8w  d	   Rs \         # \        \        \        VP                  R4      4      4      s \         # )Nrb  Fmuslr  )r   r   r   )	_linked_to_musl	is_wasm32r   r   libc_verr  r  r  r  )r   libr  s      rk   linked_to_muslr  T  s     " y# ||w $$&LC
f}CW]]3%789Orj   g     r@rp   r  r  i @ i @  i  )zrequires zlib)zrequires gzip)zrequires bz2)zrequires lzma)zrequires zstd)z$requires co_positions / debug_ranges>   iostvosr  vxworkswatchos>   r  r  r  )r/  )zneeds the GIL enabledrK  i   i    r  r  i   r*  rc   )Nrc   rc   r  )rc   ($  re   ri  r  
contextlibr$  r   r;  r  r   rt  r   r   rH  r  ra  r1  r   r  rm  rP   rQ   rR   rS   r   r/  r  rb  TEST_SUPPORT_DIRr  r   	REPO_ROOTr   r   r   r   r	   r   r
   r(   r)   r   r   r   r   r  junit_xml_listr   r   r   r   r   r   r   r   r  r  r   r   r   r2   r?  r.   r/   HAVE_ASAN_FORK_BUGrZ  rb  r   SOCK_MAX_SIZErj  rx  __getformat__r   r    r!   r   r   r   r   r|  r  r   r3   r4   r5   r  r:   r6   r7   r  r  r  r8   is_appler   r"   r#   r$   r%   r&   r'   has_strftime_extensionsstrftimer	  TEST_HTTP_URLrJ   r[  r  r  r  rB   rH   r  r   r>   contextmanagerr   r   r   r   r  r  r  r
  r  r  r   rI  r  r   r  r&  r'  r,  r*  r-  r  _TPFLAGS_DISALLOW_INSTANTIATION_TPFLAGS_IMMUTABLETYPEr2  _TPFLAGS_BASETYPE_TPFLAGS_READY_TPFLAGS_READYINGr3  _TPFLAGS_BASE_EXC_SUBCLASS_TPFLAGS_TYPE_SUBCLASSr8  rK  r@   r\  rI   rr  rs  r  _4Gr  r  r{  rF   r  r   r   r  r  r   r  r  r9   r  r  r  r0   TEST_MODULES_ENABLEDr1   r  ra   r  MISSING_C_DOCSTRINGSri  HAVE_PY_DOCSTRINGSHAVE_DOCSTRINGSrequires_docstringsr  r  r  r  r  r?   rD   rA   r  r  r  rE   r  r,   r  r]  r*   r+   r  rG   r  r  r  r  r  r  rK   r  r;   r=   r  r  r  r  r  rL   r  rM   total_orderingr  rN   r#  rO   r.  	hash_infowidth	NHASHBITSr@  rB  r^  ri  r-   rq  ry  r}  rC   r  r  r  cacher  r  rT   r  r  rU  r  r  rU   r  machineis_s390xr  rV   Py_TRACE_REFS_jitr  _JIT_ENABLEDrW   rX   	frozensetr  r  r  r  r  r  r  r	  r  r"  r*  rY   r<  rZ   r[   rM  rN  r\   r]   r^   	coroutiner`   r_   rq  rv  ry  r<   r|  r  r  rc   rj   rk   <module>r     s   ~
F
GG       	 	  
      000 ,0.=0?I0 	0 	0 +	0 -=	0 0 40 6G0 0 (0 *;0 0 &0 (B0 0 50 7I0 0 0 $0 &50 7F0 0 %0 '50 7F0 0 )0 0 (0  !0  4!0" #0" 4#0$ %0$ /%0$ 1F%0& '0& 3'0( #)0( %6)0( 8K)0* +0* 6+0* 8G+0. /0. /0.  ,/0. .=/0. ?H/00 100 +100 -9100 ;N102 306 70: ;0> ?0B C0B #C0B %/C0B 1EC0D E0D E0D +E0D -BE0D DNE0F G0F G0F 8G0H I0H I0H 'I0H )3I0J K0J +K0J -<K0J >LK0L M0L *M0L ,;M0N O0P Q0R S0T %U0V W0X Y0Z ([0\ ]0\ 5]0\ 7D]0^ _0x       77??277??8#<=  01WW__]+
GGOOJ'	5I 5 =J =)E )X&& $ 

  *"E$N>	76:8:
/"u "U "u "U "!"J)e )E )e )TY ) %T2 $ $ % ''	!,,V4$& --,--9) llg%
 LL##F+	\\Y&

 <<EE%/!YJJ ,
,,&
  $$W	J> ,,"<<66cllh62v& 	 	     	, O
      
 V    

<e 
<   <<7"&--"6%"? ,   ]F3&& 	1$ 	1t 	141n 	/ 	/%%
$   ) )%B$* y//0ABC1' GG	S=34
  "&      "  (u : 4 4D"PF 
Sj#g#g>	% %@.`$O+!88(* "00@IIEeS H
K
7 *+ I I/I I%445GHH  '..d: %BB.B*B))/*DF   JJ   #< # #<  <5;f D ]*OB OBd4b 89v.*] ]@3D  
,H$ H6;, +- D  +	 ; ;"$0 $0N;#  L		 	 ;
   *
   ;- MM	4D) )X-94 -9^PBN . . .&$,D  L L. $ $R 3*+"0J'"$ '"T*#(*47*?C*D% %P , , 2wAABHHJ$6$6'$A*<=\*xx""$**<9OP  6MN  $-
	. $  (" "2(X, )0(9(9 	"5p 
 
  )''2 " @	  	 &2&N &NR QN  s   7g g)(g)