+
    öÙ†jõ  ã                   óÒ  € ^ RI t ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIHtH	t	 ^ RI
Ht ^RIHtHtHtHtHtHtHt  ! R R4      t]P*                  ! RRR7       ! R	 R
4      4       t]P*                  ! RRR7       ! R R4      4       t]P*                  ! RRR7       ! R R4      4       t]P*                  ! RRR7       ! R R]4      4       t ! R R]P4                  4      tR R ltR# )é    N)ÚAnyÚIterator)Úsupport)ÚStrPathÚStrJSONÚ	TestTupleÚTestNameÚ
TestFilterÚFilterTupleÚ
FilterDictc                   ó"   € ] tR t^tRtRtRtRtR# )ÚJsonFileTypeÚUNIX_FDÚWINDOWS_HANDLEÚSTDOUT© N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r   r   Ú__static_attributes__r   ó    Ú0/usr/lib/python3.14/test/libregrtest/runtests.pyr   r      s   † Ø€GØ%€NØ„Fr   r   T)ÚslotsÚfrozenc                   óx   a € ] tR t^t o V 3R lR lt]P                  V 3R lR l4       tR	R ltV 3R lt	Rt
V tR# )
ÚJsonFilec                ó:   <€ V ^8„  d   QhRS[ S[S[3,          RR/# )é   Úpopen_kwargsÚreturnN)ÚdictÚstrr   )ÚformatÚ__classdict__s   "€r   Ú__annotate__ÚJsonFile.__annotate__   s#   ø€ ÷ 
:ñ 
:±±c¹3°hµð 
:ÀDñ 
:r   c                óò   € V P                   ;\        P                  8X  d    V P                  .VR &   R# \        P                  8X  d0   \
        P                  ! 4       pRV P                  ./Vn        W!R&   R# R# )Úpass_fdsÚhandle_listÚstartupinfoN)Ú	file_typer   r   Úfiler   Ú
subprocessÚSTARTUPINFOÚlpAttributeList)Úselfr    r+   s   && r   Úconfigure_subprocessÚJsonFile.configure_subprocess   s]   € Ø�n‰nØ%”×%Ö%á,0¯I©I¨;�˜ZÓ(Ü×,Ö,ô )×4Ò4Ó6�Ø/<¸t¿y¹y¸kÐ.J�Ô+Ø.9˜]Ó+ñ -r   c                ó.   <€ V ^8„  d   QhRS[ R,          /# ©r   r!   N)r   )r$   r%   s   "€r   r&   r'   ,   s   ø€ ÷ ñ ¡H¨T¥Nñ r   c              #  ó\  "  € \         P                  R 8X  di   V P                  \        P                  8X  dJ   \
        P                  ! V P                  R4        Rx € \
        P                  ! V P                  R4       R# Rx € R#   \
        P                  ! T P                  R4       i ; i5i)Úwin32TNF)ÚsysÚplatformr,   r   r   ÚosÚset_handle_inheritabler-   ©r1   s   &r   Úinherit_subprocessÚJsonFile.inherit_subprocess+   sl   é € ä�<‰<˜7Ô" t§~¡~¼×9TÑ9TÔ'TÜ×%Ò% d§i¡i°Ô6ð<Ûä×)Ò)¨$¯)©)°UÖ;åøô ×)Ò)¨$¯)©)°UÕ;üs   ‚AB,ÁB Á)B,Â#B)Â)B,c               ó  € V P                   \        P                  8X  d   \        R 4      hV P                  pV P                   \        P
                  8X  d%   ^ RIpVP                  V\        P                  4      p\        W1VR7      # )z)for STDOUT file type, just use sys.stdoutN)Úencoding)r,   r   r   Ú
ValueErrorr-   r   ÚmsvcrtÚopen_osfhandler:   ÚO_WRONLYÚopen)r1   Úmoder@   r-   rB   s   &&$  r   rE   ÚJsonFile.open6   sa   € Ø�>‰>œ\×0Ñ0Ô0ÜÐHÓIÐIà�y‰yˆØ�>‰>œ\×8Ñ8Ô8Ûà×(Ñ(¨¬r¯{©{Ó;ˆDÜ�D¨Ô2Ð2r   c                ó@   <€ V ^8„  d   Qh/ S[ R,          ;R&   S[;R&   # )r   Nr-   r,   )Úintr#   )r$   r%   s   "€r   r&   r'      s"   ø‡ ‚ ñ ��*Ññ ñ �Nò r   r   N)Úr)r   r   r   r   r2   Ú
contextlibÚcontextmanagerr=   rE   Ú__annotate_func__r   Ú__classdictcell__©r%   s   @r   r   r      s6   ø‡ € ÷
:ð 
:ð ×Ñ÷ó ðô	3÷A ƒ r   r   c                   ó>   a € ] tR t^Bt o V 3R lR ltV 3R ltRtV tR# )ÚHuntRefleakc                ó0   <€ V ^8„  d   QhRS[ S[,          /# ©r   r!   ©Úlistr#   )r$   r%   s   "€r   r&   ÚHuntRefleak.__annotate__H   s   ø€ ÷ 6ñ 6¡¡c¥ñ 6r   c                ó>   € R V P                    RV P                   R2.# )z-RÚ:)ÚwarmupsÚrunsr<   s   &r   Úbisect_cmd_argsÚHuntRefleak.bisect_cmd_argsH   s$   € ð ˜Ÿ™˜ a¨¯	©	 {°!Ð4Ð5Ð5r   c                ó>   <€ V ^8„  d   Qh/ S[ ;R&   S[ ;R&   S[;R&   # )r   rY   rZ   Úfilename)rI   r   )r$   r%   s   "€r   r&   rV   B   s(   ø‡ ‚ á�Lñ ñ �Iñ ñ Ñò	 r   r   N)r   r   r   r   r[   rM   r   rN   rO   s   @r   rQ   rQ   B   s   ø‡ € ÷6ð 6÷ ƒ r   rQ   c                   ó¼   a € ] tR t^Nt o V 3R lR ltV 3R lR ltV 3R lR ltV 3R lR ltV 3R	 lR
 ltV 3R lR lt	V 3R lR lt
V 3R lR ltV 3R ltRtV tR# )ÚRunTestsc                ó   <€ V ^8„  d   QhRR/# )r   r!   r`   r   )r$   r%   s   "€r   r&   ÚRunTests.__annotate__i   s   ø€ ÷ !ñ ! *ñ !r   c                óf   € \         P                  ! V 4      pVP                  V4       \        R/ VB # ©Nr   )ÚdataclassesÚasdictÚupdater`   ©r1   ÚoverrideÚstates   &, r   ÚcopyÚRunTests.copyi   s,   € Ü×"Ò" 4Ó(ˆØ�‰�XÔÜÑ ˜%Ñ Ð r   c                ó    <€ V ^8„  d   QhRS[ /# rS   )ÚWorkerRunTests)r$   r%   s   "€r   r&   rb   n   s   ø€ ÷ 'ñ '±Nñ 'r   c                óf   € \         P                  ! V 4      pVP                  V4       \        R/ VB # rd   )re   rf   rg   rn   rh   s   &, r   Úcreate_worker_runtestsÚRunTests.create_worker_runtestsn   s,   € Ü×"Ò" 4Ó(ˆØ�‰�XÔÜÑ& Ñ&Ð&r   c                ó4   <€ V ^8„  d   QhRS[ RS[R,          /# )r   Ú	test_namer!   N)r	   r   )r$   r%   s   "€r   r&   rb   s   s    ø€ ÷ ñ ©ð ±kÀDÕ6Hñ r   c                óZ   € V P                   e   V P                   P                  VR 4      # R # ©N)Úmatch_tests_dictÚget)r1   rs   s   &&r   Úget_match_testsÚRunTests.get_match_testss   s*   € Ø× Ñ Ò,Ø×(Ñ(×,Ñ,¨Y¸Ó=Ð=ár   c                ó.   <€ V ^8„  d   QhRS[ R,          /# r5   )rI   )r$   r%   s   "€r   r&   rb   y   s   ø€ ÷ ñ ™# �*ñ r   c                óT   € V P                   '       d   R # \        V P                  4      # ru   )ÚforeverÚlenÚtestsr<   s   &r   Úget_jobsÚRunTests.get_jobsy   s   € ð �<�<ˆ<ÙÜ�4—:‘:‹Ðr   c                ó0   <€ V ^8„  d   QhRS[ S[,          /# rS   )r   r	   )r$   r%   s   "€r   r&   rb   €   s   ø€ ÷ "ñ "™H¡XÕ.ñ "r   c              #  ó�   "  € V P                   '       d    V P                   Rj  x€L
  K  V P                   Rj  x€L
  R#  L L5i)TN)r|   r~   r<   s   &r   Ú
iter_testsÚRunTests.iter_tests€   s3   é € Ø�<�<ˆ<ØØŸ:™:×%Ò%à—z‘z×!Ò!ñ &á!ùs   ‚#A¥A¦A»A¼AÁAc                ó    <€ V ^8„  d   QhRS[ /# rS   )Úbool)r$   r%   s   "€r   r&   rb   ‡   s   ø€ ÷ 
ñ 
¡dñ 
r   c                óŒ   € \        V P                  4      ;'       g)    \        P                  ;'       g    \        P                  # ru   )r†   Ú
python_cmdr   Úis_emscriptenÚis_wasir<   s   &r   Újson_file_use_stdoutÚRunTests.json_file_use_stdout‡   s9   € ô �—‘Ó!÷ ð Ü×$Ñ$÷ð ä�‰ð	
r   c                ó0   <€ V ^8„  d   QhRS[ S[,          /# rS   rT   )r$   r%   s   "€r   r&   rb   ”   s   ø€ ÷ ñ ¡4©¥9ñ r   c                óF  € \         P                  ! 4       pV P                  e'   V P                  pV Uu. uF  q3R8w  g   K  VNK  	  ppM\        P                  3p. VOVOpRV9  d   VP                  R4       V P                  '       d   VP                  R4       V# u upi )Nz-Eú-uz-Xpresite=test.cov)r   Úargs_from_interpreter_flagsrˆ   r8   Ú
executableÚappendÚcoverage)r1   Úpython_optsr‘   ÚoptÚcmds   &    r   Úcreate_python_cmdÚRunTests.create_python_cmd”   s‘   € Ü×9Ò9Ó;ˆØ�?‰?Ò&ØŸ™ˆJñ +6ÓE©+ 3À¹Ÿ3˜3©+ˆKÐEˆKäŸ.™.Ð*ˆJØ)�
Ð)˜[Ð)ˆØ�{Ô"Ø�J‰J�tÔØ�=�=ˆ=Ø�J‰JÐ+Ô,Øˆ
ùò Fs   ´BÁBc                ó0   <€ V ^8„  d   QhRS[ S[,          /# rS   rT   )r$   r%   s   "€r   r&   rb   ¥   s   ø€ ÷ !ñ !¡¡c¥ñ !r   c                ó(  € . pV P                   '       d   VP                  R 4       V P                  '       d   VP                  R4       V P                  '       d   VP                  RV P                   24       V P                  e*   VP                  V P                  P                  4       4       V P                  '       d   VP                  RV P                  34       V P                  '       d   VP                  RV P                  34       V P                  '       d   VP                  RV P                   24       V P                  '       d�   RP                  R V P                  P                  4        4       4      pV'       d   VP                  RV34       V P                  P                  4        F#  w  r4Vf   K  VP                  RV R	V 234       K%  	  V P                  '       d4   \        P                  ! V P                  4      pVP                  R
V34       V P                  '       d   VP                  R4       V P                   '       d   VP                  RV P                    24       VP                  RV P"                   24       V# )z
--failfastz--fail-env-changedz
--timeout=z	--testdirz
--memlimitz--threshold=Ú,c              3   ó6   "  € T F  w  rVe   K  Vx € K  	  R # 5iru   r   )Ú.0ÚresourceÚvalues   &  r   Ú	<genexpr>Ú+RunTests.bisect_cmd_args.<locals>.<genexpr>¶   s   é € ð 0Ù5O¡/ (Ø!&÷ 'šhÛ5Oùs   ‚�
r�   Ú=z--pythonz--randomizez--parallel-threads=z--randseed=)Ú	fail_fastr’   Úfail_env_changedÚtimeoutÚhunt_refleakÚextendr[   Útest_dirÚmemory_limitÚgc_thresholdÚuse_resourcesÚjoinÚitemsrˆ   ÚshlexÚ	randomizeÚparallel_threadsÚrandom_seed)r1   ÚargsÚsimplerž   rŸ   r–   s   &     r   r[   ÚRunTests.bisect_cmd_args¥   sô  € ØˆØ�>�>ˆ>Ø�K‰K˜Ô%Ø× × Ð Ø�K‰KÐ,Ô-Ø�<�<ˆ<Ø�K‰K˜* T§\¡\ NÐ3Ô4Ø×ÑÒ(Ø�K‰K˜×)Ñ)×9Ñ9Ó;Ô<Ø�=�=ˆ=Ø�K‰K˜ d§m¡mÐ4Ô5Ø××ÐØ�K‰K˜ t×'8Ñ'8Ð9Ô:Ø××ÐØ�K‰K˜, t×'8Ñ'8Ð&9Ð:Ô;Ø××ÐØ—X‘Xñ 0Ø59×5GÑ5G×5MÑ5MÔ5Oó0ó 0ˆF÷ Ø—‘˜T 6˜NÔ+Ø#'×#5Ñ#5×#;Ñ#;Ö#=‘�ØÔ$Ø—K‘K ¨(¨°1°U°GÐ'<Ð =Ö>ñ $>ð �?�?ˆ?Ü—*’*˜TŸ_™_Ó-ˆCØ�K‰K˜ SÐ)Ô*Ø�>�>ˆ>Ø�K‰K˜+Ô'Ø× × Ð Ø�K‰KÐ-¨d×.CÑ.CÐ-DÐEÔFØ�‰�k $×"2Ñ"2Ð!3Ð4Ô5Øˆr   c                óò  <€ V ^8„  d   Qh/ S[ ;R&   S[;R&   S[;R&   S[;R&   S[R,          ;R&   S[;R&   S[;R&   S[;R	&   S[;R
&   S[;R&   S[R,          ;R&   S[;R&   S[;R&   S[R,          ;R&   S[R,          ;R&   S[;R&   S[;R&   S[R,          ;R&   S[R,          ;R&   S[	S[S[R,          3,          ;R&   S[
S[R3,          R,          ;R&   S[;R&   S[S[,          ;R&   S[R,          ;R&   # )r   r~   r£   r¤   Úmatch_testsNrv   Úrerunr|   ÚpgoÚpgo_extendedÚoutput_on_failurer¥   ÚverboseÚquietr¦   r¨   Ú	use_junitr“   r©   rª   r«   .rˆ   r¯   r±   r°   )r   r†   r
   r   ÚfloatrI   rQ   r   r#   r"   Útuple)r$   r%   s   "€r   r&   rb   N   sn  ø‡ ‚ áÑñ ñ �Oñ ñ Ññ	 ñ
 Ññ ñ ! 4Õ'Ñ'ñ ñ �Kñ ñ �Mñ ñ 
�Iñ ñ Ññ ñ Ññ ñ �T�\Ññ ñ �Lñ ñ �Kñ ñ  Õ$Ñ$ñ ñ  ˜�nÑñ! ñ" �Oñ# ñ$ �Nñ% ñ& ˜•*Ññ' ñ( ˜•*Ññ) ñ* ™™S 4�Z˜Õ(Ñ(ñ+ ñ, ‘c˜3�h• $Õ&Ñ&ñ- ñ. �Oñ/ ñ0 ‘s•Ññ1 ñ2 ˜D•jÑ ò3 r   r   N)r   r   r   r   rk   rp   rx   r   rƒ   r‹   r—   r[   rM   r   rN   rO   s   @r   r`   r`   N   s]   ø‡ € ÷6!ð !÷
'ð '÷
ð ÷ð ÷"ð "÷
ð 
÷ð ÷"!ð !÷o ƒ r   r`   c                   óZ   a € ] tR t^Ét o V 3R lR lt]V 3R lR l4       tV 3R ltRtV t	R# )rn   c                ó    <€ V ^8„  d   QhRS[ /# rS   ©r   )r$   r%   s   "€r   r&   ÚWorkerRunTests.__annotate__Í   s   ø€ ÷ 5ñ 5™ñ 5r   c                ó:   € \         P                  ! V \        R 7      # ))Úcls)ÚjsonÚdumpsÚ_EncodeRunTestsr<   s   &r   Úas_jsonÚWorkerRunTests.as_jsonÍ   s   € Ü�zŠz˜$¤OÔ4Ð4r   c                ó$   <€ V ^8„  d   QhRS[ RR/# )r   Úworker_jsonr!   rn   rÂ   )r$   r%   s   "€r   r&   rÃ   Ñ   s    ø€ ÷ Eñ E™wð EÐ+;ñ Er   c                ó:   € \         P                  ! V \        R 7      # ))Úobject_hook)rÆ   ÚloadsÚ_decode_runtests)rÌ   s   &r   Ú	from_jsonÚWorkerRunTests.from_jsonÐ   s   € ä�zŠz˜+Ô3CÔDÐDr   c                ó&   <€ V ^8„  d   Qh/ S[ ;R&   # )r   Ú	json_file)r   )r$   r%   s   "€r   r&   rÃ   É   s   ø‡ ‚ áÑò r   r   N)
r   r   r   r   rÉ   ÚstaticmethodrÑ   rM   r   rN   rO   s   @r   rn   rn   É   s,   ø‡ € ÷5ð 5ð ÷Eó ðE÷ ƒ r   rn   c                   ó>   a a€ ] tR t^Õt oV3R lV 3R lltRtVtV ;t# )rÈ   c                ó<   <€ V ^8„  d   QhRS[ RS[S[S[ 3,          /# )r   Úor!   )r   r"   r#   )r$   r%   s   "€r   r&   Ú_EncodeRunTests.__annotate__Ö   s#   ø€ ÷ &ñ &™ð &¡¡c©3 h¥ñ &r   c                óˆ   <€ \        V\        4      '       d   \        P                  ! V4      pR VR&   V# \        SV `  V4      # )TÚ__runtests__)Ú
isinstancern   re   rf   ÚsuperÚdefault)r1   rØ   ÚresultÚ	__class__s   && €r   rÞ   Ú_EncodeRunTests.defaultÖ   s>   ø€ Ü�aœ×(Ò(Ü ×'Ò'¨Ó*ˆFØ%)ˆF�>Ñ"ØˆMä‘7‘? 1Ó%Ð%r   r   )r   r   r   r   rÞ   r   rN   Ú__classcell__)rà   r%   s   @@r   rÈ   rÈ   Õ   s   ù‡ € ÷&÷ &ó &r   rÈ   c                óŠ   € V ^8„  d   QhR\         \        \        3,          R\        \         \        \        3,          ,          /# )r   Údatar!   )r"   r#   r   r`   )r$   s   "r   r&   r&   ß   s/   € ÷ 	ñ 	œ4¤¤S �>ð 	¬h¼¼cÄ3¸h½Õ.Gñ 	r   c                 óÜ   € R V 9   de   V P                  R 4       V R,          '       d   \        R/ V R,          B V R&   V R,          '       d   \        R/ V R,          B V R&   \        R/ V B # V # )rÛ   r¦   rÔ   r   )ÚpoprQ   r   rn   )rä   s   &r   rÐ   rÐ   ß   sm   € Ø˜ÔØ�‰�Ô Ø�×ÔÜ#.Ñ#F°°nÕ1EÑ#FˆD�Ñ Ø�×ÔÜ (Ñ =¨4°Õ+<Ñ =ˆD�ÑÜÑ% Ñ%Ð%àˆr   )rK   re   rÆ   r:   r®   r.   r8   Útypingr   r   Útestr   Úutilsr   r   r   r	   r
   r   r   r   Ú	dataclassr   rQ   r`   rn   ÚJSONEncoderrÈ   rÐ   r   r   r   Ú<module>rì      sõ   ðÛ Û Û Û 	Û Û Û 
ß  å ÷P÷ Pñ P÷ñ ð ×Ò˜T¨$Ô/÷(3ð (3ó 0ð(3ðV ×Ò˜T¨$Ô/÷6ð 6ó 0ð6ð ×Ò˜T¨$Ô/÷wð wó 0ðwðt ×Ò˜T¨$Ô/ôE�Xó Eó 0ðEô&�d×&Ñ&ô &÷	r   