
    /hh'r                         S SK JrJr  S SKrS SKrS SKrS SK Jr  S SKrS SKJ	r	  \R                  rSS jrSS jrS rS r " S S	\R                   5      r\S
:X  a  \R&                  " 5         gg)    )verbose
TestFailedN)import_modulec                    [         (       a;  U(       a  [        SR                  XU5      SS9  O[        SR                  X5      SS9   X-  nU(       a8  Uc5  XR:w  a0  [         (       a  [        S5        [        U < SU< SU< SU< 35      eU(       a|  Uby  [	        U5      [	        U5      :w  d  US U US U :w  aU  [         (       a  [        S5        [        [        U 5      < S[        U5      < S[        U5      < S[        U5      < 35        g [         (       a  [        S	5        g g ! [         a#    U(       d  e [         (       a  [        S
5         g  g f = f)Nz{!a} % {!a} =? {!a} ... )endz{!a} % {!a} works? ...noz % z == z != yeszoverflow (this is fine))r   printformatAssertionErrorlenreprOverflowError)	formatstrargsoutputlimit
overflowokresults         9/opt/python-3.13.8/usr/lib/python3.13/test/test_format.py
testformatr      s    w+229FK *11)BL! em(8wd !*D&&"B C C )FS[(F6ENF6EN,Jwd	?DJVd6lL M we /  -7+, -s   D& &(EEc                 z   [        U [        5      (       a  [        XX#U5        U R                  S5      nOU n[	        U5      n/ n[        U[
        5      (       d  U4n[        U5      nUc  S =pO4[        U[        5      (       a  UR                  S5      nOUn[	        U5      n	[        XWXU5        [        XgXU5        g Nascii)
isinstancestrr   encode	bytearraytuple)
r   r   r   r   r   b_format	ba_formatb_argsb_output	ba_outputs
             r   
testcommonr&   3   s     )S!!9F:>##G,(#IFdE""x4[F~##9fc""}}W-HHh'	x*=y)J?    c                 j    [        X5        [        SU-  5      e! U ao  n[        U5      U:X  a   [        (       a  [	        S5         S nAg  S nAg [        (       a  [	        S5        [	        SUS[        [        U5      5      5         S nAg S nAf  [        (       a  [	        S5        [	        S5        e = f)Nz"did not get expected exception: %sr
   r	   zUnexpected :zUnexpected exception)r   r   r   r   r   r   )r   r   	exceptionexcmsgexcs        r   test_excr-   K   s    H9# =FGG  As8vwe  wd-Cc#h@@7E$K$%s    B2%B6B'B2c                 T    [        XX#5        [        U R                  S5      XU5        g r   )r-   r   )r   r   r*   r+   s       r   test_exc_commonr/   \   s#    Yi0Yg&@r'   c                       \ rS rSrS rS rS rS rS rS r	\
R                  S 5       rS	 r\
R                  S
 5       rS rS rS rS rS rS rS rS rS rSrg)
FormatTesta   c                    [        SSS5        [        SSS5        [        S[        R                  S4S	S
9  [        SSSS	S
9  [        SSSS	S
9  [        SSSS	S
9  [        SSS5        [        SS5        [        SS5        [        SS5        [        SS5        [        SS5        [        SS5        [        SS5        [        SS5        [        SSS5        [        SS S!5        [        S"SS#5        [        S"S S$5        [        S%SS&5        [        S%S S'5        S(n[        S%US)5        [        S%U* S*5        [        S+U* S*5        [        S,U* S*5        [        S-U* S.5        [        S/U* S05        [        S1U* S25        [        S3U* S05        [        S4U* S55        [        S4US65        [        S7US85        [        S9US:5        [        S;US<5        [        S=US)5        [        S>US)5        [        S?US@5        [        SAUSB5        [        S%[        U5      SCSD5        SEn[        SUSF5        [        SU* SG5        [        SHU* SG5        [        SIU* SG5        [        SJU* SK5        [        SLU* SM5        [        SNU* SO5        [        SPU* SM5        [        SQU* SR5        [        SQUSS5        [        STUSU5        [        SVUSW5        [        SXUSY5        [        SZUSF5        [        S[USF5        [        S\US]5        [        S^US_5        [        S`USa5        [        SbUSc5        [        SdUSe5        [        SfUSg5        [        SfU* Sh5        [        SiUSj5        [        SkUSl5        [        SmUSn5        [        SoUSp5        [        SoU* Sq5        [        SrUSs5        [        StUSu5        [        SvUSn5        [        SwUSx5        [        SyUSz5        [        S{US|5        [        S}US~5        [        SUS5        [        SUS5        [        SUS5        [        SUS5        Sn[        S"US5        [        S"U* S5        [        SU* S5        [        SU* S5        [        SU* S5        [        SU* S5        [        SU* S5        [        SU* S5        [        SU* S5        [        SUS5        [        SUS5        [        SUS5        [        SUS5        [        SUS5        [        SUS5        [        SUS5        [        SUS5        [        SUS5        [        S"US5        [        SUS5        [        SU* S5        [        SUS5        [        SUS5        [        SUS5        [        SUS5        [        SU* S5        [        SUS5        [        SUS5        [        SUS5        [        SUS5        [        SUS5        [        SUS5        [        SUS5        [        SUS5        [        SUS5        [        SUS5        [        SUS5        [        SUS5        [        SUS5        [        SUS5        [        SUS5        [        S%SS5        [        S%SS5        [        S%SS5        [        SfSS5        [        SdSS5        [        SSS5        [        SSS5        [        S"SS5        [        S%SS5        [        SfSS5        [        SdSS5        [        SSS5        [        SSS5        [        S"SS5        [        S"SS5        [        SSS5        [        SSS5        [        (       a  [        S5        [        SS[        S5        [        SS[        S5        [        S%S[        S5        [        S%S[        S5        [        SS[        S5        [        SS[        S5        g )Nz%% %z%.1d)   1z%.*dr6   T)r   z%.100dd0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001z%#.117xw0x000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001z%#.118xx0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001z%f      ?z1.000000z%#.*g)m   ц>)n   r>   )r?   gQ2<bz%12.*f)i@ r<   z%#.*Gz%#.*fz%#.*Fz%x
   al    h] 
174876e800z%o121351035564000z%d10100000000000l   
~l!]c 123456789012345678901234567890z-123456789012345678901234567890z%5dz%31dz%32dz  -123456789012345678901234567890z%-32dz -123456789012345678901234567890 z%032dz -0123456789012345678901234567890z%-032dz%034dz"-000123456789012345678901234567890"0000123456789012345678901234567890z%0+34dz"+000123456789012345678901234567890z%+34dz"   +123456789012345678901234567890z%34dz"    123456789012345678901234567890z%.2dz%.30dz%.31d0123456789012345678901234567890z%32.31dz  0123456789012345678901234567890123456________________________   l   E#=*H<V4$ 1234567890abcdef12345z-1234567890abcdef12345z%5xz%22xz%23xz -1234567890abcdef12345z%-23xz-1234567890abcdef12345 z%023xz-01234567890abcdef12345z%-023xz%025xz-0001234567890abcdef1234500001234567890abcdef12345z%0+25xz+0001234567890abcdef12345z%+25xz   +1234567890abcdef12345z%25xz    1234567890abcdef12345z%.2xz%.21xz%.22x01234567890abcdef12345z%23.22xz 01234567890abcdef12345z%-23.22xz01234567890abcdef12345 z%X1234567890ABCDEF12345z%#X0X1234567890ABCDEF12345z%#x0x1234567890abcdef12345z-0x1234567890abcdef12345z%#27xz    0x1234567890abcdef12345z%#-27xz0x1234567890abcdef12345    z%#027x0x00001234567890abcdef12345z%#.23x0x001234567890abcdef12345z-0x001234567890abcdef12345z%#27.23xz  0x001234567890abcdef12345z	%#-27.23xz0x001234567890abcdef12345  z	%#027.23xz%#+.23xz+0x001234567890abcdef12345z%# .23xz 0x001234567890abcdef12345z%#+.23Xz+0X001234567890ABCDEF12345z
%#+027.23Xz+0X0001234567890ABCDEF12345z
%# 027.23Xz 0X0001234567890ABCDEF12345z	%#+27.23Xz +0X001234567890ABCDEF12345z
%#-+27.23xz+0x001234567890abcdef12345 z
%#- 27.23xz 0x001234567890abcdef12345 l   KSp.']w9
  12345670123456701234567012345670z!-12345670123456701234567012345670z%5oz%33oz%34oz" -12345670123456701234567012345670z%-34oz"-12345670123456701234567012345670 z%034oz"-012345670123456701234567012345670z%-034oz%036oz$-00012345670123456701234567012345670$000012345670123456701234567012345670z%0+36oz$+00012345670123456701234567012345670z%+36oz$   +12345670123456701234567012345670z%36oz$    12345670123456701234567012345670z%.2oz%.32oz%.33o!012345670123456701234567012345670z%34.33oz" 012345670123456701234567012345670z%-34.33oz"012345670123456701234567012345670 z%#o"0o12345670123456701234567012345670z#-0o12345670123456701234567012345670z%#38oz&    0o12345670123456701234567012345670z%#-38oz&0o12345670123456701234567012345670    z%#038o&0o000012345670123456701234567012345670z%#.34o$0o0012345670123456701234567012345670z%-0o0012345670123456701234567012345670z%#38.34oz&  0o0012345670123456701234567012345670z	%#-38.34oz&0o0012345670123456701234567012345670  z	%#038.34oz%#+.34oz%+0o0012345670123456701234567012345670z%# .34oz% 0o0012345670123456701234567012345670z	%#+38.34oz& +0o0012345670123456701234567012345670z
%#-+38.34oz&+0o0012345670123456701234567012345670 z
%#- 38.34oz& 0o0012345670123456701234567012345670 z
%#+038.34oz&+0o00012345670123456701234567012345670z
%# 038.34oz& 0o00012345670123456701234567012345670z%#.33o#0o012345670123456701234567012345670z%#.32oz%035.33o#00012345670123456701234567012345670z	%0#35.33o*   42iz-42g      E@0x10X10o1r   0o000x00X0B   i"   i%gg?z1.1z%#gz1.10000Testing exceptionszincomplete formatz% %sz2unsupported format character '%' (0x25) at index 2z-%d format: a real number is required, not str   1z/%d format: a real number is required, not bytesz*%x format: an integer is required, not strQ	@z,%x format: an integer is required, not float)	r&   sysmaxsizefloatr   r   r/   
ValueError	TypeError)selfbigs     r   test_common_formatFormatTest.test_common_formatc   s    	4S!64%6CKK?t<8T $(,	. 	9d %0 !	" 	9d %1 !	"
 	4, 	7-.7-.7./8]+
 	7./7./7./7./4S!4|44T"474T"4~6,4>?4#@A53$ AB6C4!BC6C4!CD7SD"DE7SD"DE8cT#EF7SD"FG7C!EF8S"FG7C!EF63 DE63 @A7C!AB7C!BC9c#EF4s%EqI%4564#7853$ 896C4!9:6C4!:;7SD";<7SD";<8cT#<=7SD"=>7C!<=8S"=>7C!<=63 ;<63 787C!897C!9:9c#<=:s$=>4565#895#8953$ :;7C!>?8S"?@8S"?@8S"=>8cT#?@:s$AB;%BC;%BC9c#?@9c#?@9c#?@ 	<&CD<&CD;%BC<&CD<&CD04@A4#BC53$ CD6C4!DE6C4!EF7SD"FG7SD"FG8cT#GH7SD"HI7C!GH8S"HI7C!GH63 FG63 BC7C!CD7C!DE9c#GH:s$HI4@A5#CD53$ EF7C!IJ8S"JK8S"JK8S"HI8cT#JK:s$LM;%MN;%MN9c#JK9c#JK;%MN<&NO<&NO<&NO<&NO7C!DE8S"GH8S"FG:s$IJ;%JK 	4T"4e$4t$5!U#5!U#5!U#5!U#4C 4C 5!U#5!U#4t$4&4t$4&4e$5#y)7&'R-@A:L	Nc9G	IdII	Kc9D	FdIF	Hr'   c                 <   [        SSS5        [        SSS5        [        SSS5        [        SSS5        [        (       a  [        S5        [        S	S
[        S5        [        SS[
        S5        [        SS[
        S5        [        SS[        S5        [        S[        R                  S
-   [        S5        [        SS[
        S5        [        SS[
        S5        [        SS[
        S5        [        S:X  a   S[        S4-    [        S5      eg ! [         a     g f = f)Nz%ru   ͸z'\u0378'z%au   ʹu   'ʹ'z'\u0374'rh   zabc %br6   z2unsupported format character 'b' (0x62) at index 5rg   r7   zmust be real number, not strz	no formatz4not all arguments converted during string formattingz%cz%c arg not in range(0x110000)rj   z%c requires int or charab   x%*d!"%*d"%(maxsize, -127) should fail)r   r   r   r-   rn   ro   r   rk   
maxunicoderl   r   MemoryErrorrp   s    r   test_str_formatFormatTest.test_str_format  s   4;/4;/4:.4;/ 7&'1jE	G 	sI'EFc9G	Ir=*IJs~~a'0	2 	tY(ABtY(ABtY(ABgFwo% !!DEE   s   7D 
DDc                 &   [        SSS5        [        SSS5        [        S[        S5      S5        [        SSS5        [        SSS	5         " S
 S[        5      nU" 5       n[        SSS5        [        S[        S5      S5        [        SUS5        [        S[        S5      S5        [        SSS5        [        S[        S5      S5        [        SUS5        [        S[        S5      S5        [        SSS5        [        SSS5        [        SSS5        [        SSS5        [        SSS5        [        SSS5        [        SSS5        [        SSS5        [        (       a  [        S5        [        SS[        S5        [        SS[        S 5        [        S!S[        S"5        [        S!S[        S"5        [        S![        S5      [        S"5        [        SS#[        S$5        [        SS%[        S$5        [        SS&S'-  [        S$5        [        SS([        S)5        [        SS*[        S)5        [        SS+[        S)5        [        SS,[        S-5        [        SS.[        S-5        [        S/:X  a   S0[        S14-    [        S25      eg ! [         a     g f = f)3Ns   %c         Zs   %5cA   s       As   %-5cs   A    c                       \ rS rSrS rSrg)=FormatTest.test_bytes_and_bytearray_format.<locals>.FakeBytesiJ  c                     g)N   123r4   r~   s    r   	__bytes__GFormatTest.test_bytes_and_bytearray_format.<locals>.FakeBytes.__bytes__K  s    r'   r4   N)__name__
__module____qualname____firstlineno__r   __static_attributes__r4   r'   r   	FakeBytesr   J  s    r'   r   s   %bs   abcs   defr   s   %ss   %ag      
@s   3.25s   ghis   b'ghi'jkls   'jkl'u   Մs   '\u0544's   %rrh   s   %gr7   z float argument required, not strri   z"float argument required, not bytess	   no formatz3not all arguments converted during bytes formattingru   z%c arg not in range(256)         s   Zaz5%c requires an integer in range(256) or a single byteYrj   XczR%b requires a bytes-like object, or an object that implements __bytes__, not 'str'Wdrx   ry   rz   r{   )r&   r   object
memoryviewr   r   r-   ro   r   rl   r   r}   )rp   r   fbs      r   test_bytes_and_bytearray_format*FormatTest.test_bytes_and_bytearray_format@  ss    	5!W%5$%5)D/4062x(7B)	 	 [5&&)5)F+V45"f%5*V,f55&&)5)F+V45"f%5*V,f5 	5$(5&),5%*5(L15$(5&),5%*5(L1 7&'Y(JKi)MNq)F	HtYF	Hy	F	HM*	,]*	,3*	,yG	IYG	IiG	IiE	F 	iE	F gFwo% !!DEE   s   ,J 
JJc                 l    [        SSS5        [        SSS5        [        SSS5        [        SS	S
5        g )Nza br4   za%cb)r   za%sb)zc dzac dbs   a%sb)s   c ds   ac db)r&   r   r~   s    r   test_nulFormatTest.test_nul  s2    62v&64(69h/7J	2r'   c                 f   [        SSS5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        S	S
5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        S	S5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        S	S5      S5        U R                  [        SS 5      S!5        U R                  [        SS"5      S#5        g )$Nu   €=%fr;   u   €=1.000000abcu    <5u	   abc  {   u	   123  g      )@u    <6u
   12.5                  u    <4u   0j  y      ?       @u    <8u   (1+2j)  u    >5u	     abcu	     123u    >6u
     12.5u    >8u     (1+2j)u    >4u     0ju    ^5u	    abc u	    123 u    ^6u
    12.5 u    ^8u    (1+2j) u    ^4u    0j )r   assertEqualr   r~   s    r   test_non_asciiFormatTest.test_non_ascii  sw   ;(9:z24EFZ02CDj13EFJ/1ABj13GHz24EFZ02CDj13EFj13GHJ/1ABz24EFZ02CDj13EFj13GHJ/1ABr'   c                 J    [         R                  " [         R                  5      n[         R                  " [         R                  S5         [         R                  " 5       nUS   nUS   nUS   n[        SS5      nU(       a  U R                  XG5        U R                  UR                  US5      S5        [        S	S5      nU(       a  U R                  XG5        U R                  XW5        U R                  UR                  US5      S
U-   S-   5        [         R                  " [         R                  W5        g ! [         R                   a+  nU R	                  SR                  U5      5         S nAGN(S nAff = f! [         R                  " [         R                  W5        f = f)N zCannot set locale: {}thousands_sepdecimal_pointgroupingi[n	123456789g     J@12345)
locale	setlocaleLC_ALLErrorskipTestr   
localeconvassertInr   replace)rp   oldlocerrr   seppointr   texts           r   test_localeFormatTest.test_locale  s=   	?%%fmm4FV]]B/	4**,J_-C/E!*-H)S)Dc(T\\#r2K@&#&Dc(MM%&T\\#r2FUNS4HIV]]F3' || 	?MM188=>>	?& V]]F3s%   A	D9 CE; 9E8 E33E8;'F"c                    SnU R                  SU-  U5        U R                  SU-  U5        U R                  SU-  U5        U R                  SU-  U5        U R                  SU-  U5        U R                  SR                  U5      U5        U R                  SR                  U5      U5        U R                  S	R                  U5      U5        U R                  S
R                  U5      U5        U R                  SR                  U5      U5        U R                  SR                  U5      U5        U R                  US-  U5        U R                  UR                  5       U5        g )Nabcdez%sz%.5sz%.10sz%1sz%5sz{0}z{0:s}z{0:.5s}z{0:.10s}z{0:1s}z{0:5s}r4   )assertIsr   )rp   r   s     r   test_optimisationsFormatTest.test_optimisations  s   dTk4(ftmT*gnd+edlD)edlD)ell4($/gnnT*D1i&&t,d3j''-t4hood+T2hood+T2dRi&dkkmT*r'   c                 :   SnU R                  [        US5      S5        U R                  [        US5      S5        U R                  [        5       n[        US[        R
                  S-   -  5        S S S 5        [        U5      nU R                  [        US5      S5        U R                  [        US5      S	5        U R                  [        5       n[        US[        R
                  S-   -  5        S S S 5        g ! , (       d  f       N= f! , (       d  f       g = f)
N333333?z.0fr7   z.3fz1.200.%sfr6   z1+0jz1.200+0.000j)r   r   assertRaisesrn   rk   rl   complex)rp   fcmcs       r   test_precisionFormatTest.test_precision  s    5)3/5)73z*b1fa01 + AJ5)625)>:z*b1fa01 +* +* +*s   !C;!D;
D	
Dc                 P   [        S5      nUR                  nSnU R                  [        5       n[	        USUS-   -  5        S S S 5        [        U5      nU R                  [        5       n[	        USUS-   -  5        S S S 5        g ! , (       d  f       NJ= f! , (       d  f       g = f)N	_testcapir   r   r6   )r   INT_MAXr   rn   r   r   )rp   r   r   r   r   r   s         r   test_precision_c_limits"FormatTest.test_precision_c_limits  s    !+.	##z*b1f!,- + AJz*b1f!,- +*	 +* +*s   B*B
B
B%c                 8   U R                  SS-  S5        U R                  SS-  S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS	5      S
5        U R                  [        SS5      S5        g )Nz%.3gg     @z1.5e+03z%#.3gz1.50e+03z.3gz#.3gg   @ugAz.6gz1.23e+07z#.6gz1.23000e+07)r   r   r~   s    r   #test_g_format_has_no_trailing_zeros.FormatTest.test_g_format_has_no_trailing_zeros  s    &)46):6.	:/<
E2J?
F3]Cr'   c                     [         R                  " S5      nU R                  [        U5         SR	                  S5        S S S 5        g ! , (       d  f       g = f)NzCannot specify ',' with ','.z{:,,}r6   reescapeassertRaisesRegexrn   r   rp   	error_msgs     r   (test_with_two_commas_in_format_specifier3FormatTest.test_with_two_commas_in_format_specifier  9    II<=	##J	:NN1 ;::   A
Ac                     [         R                  " S5      nU R                  [        U5         SR	                  S5        S S S 5        g ! , (       d  f       g = f)NzCannot specify '_' with '_'.z{:__}r6   r   r   s     r   ,test_with_two_underscore_in_format_specifier7FormatTest.test_with_two_underscore_in_format_specifier  r   r   c                     [         R                  " S5      nU R                  [        U5         SR	                  S5        S S S 5        g ! , (       d  f       g = f)N Cannot specify both ',' and '_'.z{:,_}r6   r   r   s     r   8test_with_a_commas_and_an_underscore_in_format_specifierCFormatTest.test_with_a_commas_and_an_underscore_in_format_specifier  9    II@A	##J	:NN1 ;::r   c                     [         R                  " S5      nU R                  [        U5         SR	                  S5        S S S 5        g ! , (       d  f       g = f)Nr   z{:_,}r6   r   r   s     r   7test_with_an_underscore_and_a_comma_in_format_specifierBFormatTest.test_with_an_underscore_and_a_comma_in_format_specifier  r   r   c           
      B   S H  nU R                  US9   Sn[        R                  " SU S[        U5      R                   S35      nU R                  [        U5         SU S3R                  US9  S S S 5        U R                  [        U5         [        X5        S S S 5        U R                  [        U5         [        S	5        S S S 5        S S S 5        M     g ! , (       d  f       No= f! , (       d  f       NV= f! , (       d  f       N== f! , (       d  f       GM  = f)
N)y              (@   g      (@rC   )valuez%MzInvalid format specifier 'z' for object of type ''z	xx{value:z}yyz f'xx{value:{bad_format_spec}}yy')	subTestr   r   typer   r   rn   r   eval)rp   r   bad_format_specr   s       r    test_better_error_message_format+FormatTest.test_better_error_message_format  s    *EE* #'ii !$$3#4 5$$(K$8$8#9!< = ++J<  16==E=J = ++J<52 = ++J<;< = +* + =< =< =< +*sT   A	DC2DC,D:C=D
C)%D,
C:6D=
DD
D	c                     [         R                  " S5      nU R                  [        U5         SR	                  SS9  S S S 5        g ! , (       d  f       g = f)Nu=   Invalid format specifier '%ЫйЯЧ' for object of type 'str'u   {a:%ЫйЯЧ}rA   )rA   r   )rp   str_errs     r   test_unicode_in_error_message(FormatTest.test_unicode_in_error_message!  sA    ))KM##J8""S") 988s   A
Ac                    U R                  SS S5        U R                  SS S5        U R                  SS S5        U R                  SS S5        U R                  SS	 S
5        U R                  SS	 S5        U R                  SS S5        U R                  SS S5        U R                  SS S5        U R                  SS S5        U R                  SS S5        U R                  SS S5        U R                  SS S5        U R                  SS S5        U R                  SS S5        U R                  SS S5        U R                  SS S5        U R                  SS S5        U R                  SS S5        U R                  SS S5        U R                  SS S5        U R                  SS S5        U R                  SS S5        U R                  SS S5        U R                  SS S5        U R                  SS S5        U R                  SS S5        U R                  SS S5        U R                  SS S 5        U R                  SS! S"5        U R                  SS# S$5        U R                  SS% S&5        U R                  SS! S'5        U R                  SS# S'5        U R                  SS% S'5        U R                  S(S S)5        U R                  S*S S)5        U R                  S+S S)5        U R                  S,S S)5        U R                  SS- S.5        U R                  SS/ S05        U R                  SS1 S25        U R                  SS3 S45        g )5Ng       z.1fz-0.0g{Gzr   z0.0g        zz.1fzz6.1fz   0.0g      z  -1.0g{Gz?zz.2fz0.00gMbP?gMbPzz.1ez0.0e+00zz.1Ez0.0E+00zz.2ez	-1.00e-03zz.2gz-0.001zz.2%z-0.10%gưg
ףp=
?z0.1g
ףp=
z-0.1z z.0fz 0z+z.0fz+0z-z.0frb   z-1r   z0.0+0.0jy              y        {Gz?y       {Gzzz>6.1fzzz-0.0zz>z6.1fzzzz0.0zx>z6.1fzxxx0.0u
   🖤>z6.1fu   🖤🖤🖤0.0)r   r~   s    r   test_negative_zeroFormatTest.test_negative_zero'  sf   C9v.D:/Bs8e, 	Bt9u-Bu:1C;2C:.C:.Bt9u-D;/Bt9v.C:/D;0E$<&1Bt9y1C:	2Bt9y1C:	2F4=;7F4=84F4=84M$/%8GD>E2L.7M$/&9GD>F3L.8C:.D;0C;.C;.C;-C;.C;.C;.C:
3D;4D;4E$<*5C<(3C=84C=84C
+.?@r'   c                    [         R                  " S5      nU R                  [        U5         SS   S S S 5        U R                  [        U5         SS   S S S 5        [         R                  " S5      nU R                  [        U5         SS   S S S 5        U R                  [        U5         SS   S S S 5        [         R                  " S	5      nU R                  [        U5         S
S-    S S S 5        U R                  [        U5         SS-    S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       Nw= f! , (       d  f       g = f)Nz Invalid format specifier '.*z.*'r   zz+ffzz&Negative zero coercion (z) not allowedzdxzsz unsupported format character 'z'z%z.1fs   %z.1f)r   compiler   rn   r   r   s     r   test_specifier_z_error!FormatTest.test_specifier_z_error`  s   JJAB	##J	:g ;##J	:f ; IIFG	##J	:f ;##J	:2h ; II@A	##J	:aK ;##J	:qL ;: ;::: ;::: ;:::sG   DD)	D:,E%E	E-
D&)
D7:
E
E
E*-
E;r4   N)r   r   r   r   rr   r   r   r   r   r   supportcpython_onlyr   r   r   r   r   r   r   r   r   r   r   r  r   r4   r'   r   r1   r1   a   s    zHxFBHFT3C*42 + +&2 
. 
.	D



=**7Arr'   r1   __main__)NNF)test.supportr   r   r   rk   r   r  unittesttest.support.import_helperr   MAX_Py_ssize_trl   r   r&   r-   r/   TestCaser1   r   mainr4   r'   r   <module>r     sj    ,  
 	   4

 
 !F@0H"A
P"" Pf zMMO r'   