+
    Bi<                         ^ RI t ^ RIt^ RIt^ RIt^ RIt^ RItRtR t ! R R]P                  4      t	]
R8X  d   ]P                  ! 4        R# R# )    Na  # coding: %s
a = 'x'
assert ord(a) == 120
b = '\x01'
assert ord(b) == 1
c = r'\x01'
assert list(map(ord, c)) == [92, 120, 48, 49]
d = '\x81'
assert ord(d) == 0x81
e = r'\x81'
assert list(map(ord, e)) == [92, 120, 56, 49]
f = '\u1881'
assert ord(f) == 0x1881
g = r'\u1881'
assert list(map(ord, g)) == [92, 117, 49, 56, 56, 49]
h = '\U0001d120'
assert ord(h) == 0x1d120
i = r'\U0001d120'
assert list(map(ord, i)) == [92, 85, 48, 48, 48, 49, 100, 49, 50, 48]
c                     \        V .4      # N)bytes)is   &0/usr/lib/python3.14/test/test_string_literals.pybyter   <   s    !:    c                      a  ] tR t^@t o R tR tR tR tR tR t	R t
R tR	 tR
 tR tR tR tR tR tR tRR ltR tR tR tR tR tR tRtV tR# )TestLiteralsc                    \         P                  R ,          V n        \        P                  ! 4       V n        \         P                  P                  ^ V P
                  4       R# )NNNN)syspath	save_pathtempfilemkdtemptmpdirinsertselfs   &r   setUpTestLiterals.setUpB   s7    !&&(4;;'r	   c                    V P                   \        P                  R &   \        P                  ! V P
                  RR7       R# )r   T)ignore_errorsN)r   r   r   shutilrmtreer   r   s   &r   tearDownTestLiterals.tearDownG   s%    nndkk6r	   c                     \          F  pK  	  R # r   )TEMPLATE)r   cs   & r   test_templateTestLiterals.test_templateK   s     Ar	   c                |   V P                  \        R 4      R4       V P                  \        R4      \        ^4      4       V P                  \        R4      \        ^4      4       V P                  \        R4      \        ^4      4       V P                  \        R4      \        ^4      4       V P                  \        R4      \        R4      4       V P                  \        R4      \        R4      4       V P                  \        R	4      \        R
4      4       V P                  \        R4      \        R
4      4       R# )z 'x' xz '\x01' z '' z '\x81' u    '' z
 '\u1881'   u    'ᢁ' z '\U0001d120'   u    '𝄠' NassertEqualevalchrr   s   &r   test_eval_str_normal!TestLiterals.test_eval_str_normalQ   s    k*C0o.A7n-s1v6o.D	:n-s4y9/0#f+>./V=34c'lC23S\Br	   c                   V P                  \        \        R 4       V P                  \        \        R4       V P                  \        \        R4       V P                  \        \        R4       V P                  \        \        R4       V P                  \        \        R4       V P                  \        \        R4       V P                  \        \        R4       V P                  \        \        R4       V P                  \        \        R	4       V P                  \        \        R
4       V P                  \        \        R4       V P                  \        \        R4       V P                  \        \        R4       R# )z '\x' z '\x0' z '\u' z '\u0' z '\u00' z	 '\u000' z '\U' z '\U0' z '\U00' z	 '\U000' z
 '\U0000' z '\U00000' z '\U000000' z '\U0000000' NassertRaisesSyntaxErrorr*   r   s   &r   test_eval_str_incomplete%TestLiterals.test_eval_str_incomplete\   s   +t];+t^<+t];+t^<+t_=+t-=>+t];+t^<+t_=+t-=>+t->?+t-?@+t-@A+t-ABr	   c           
        \        ^^4       Fd  pVR9   d   K  V P                  \        4      ;_uu_ 4        V P                  \	        RV,          4      R\        V4      ,           4       RRR4       Kf  	  \        P                  ! RR7      ;_uu_ 4       p\        P                  ! R\        R7       \	        R	4       RRR4       V P                  \        X4      ^4       V P                  \        V^ ,          P                  4      R
4       V P                  V^ ,          P                  R4       V P                  V^ ,          P                  ^4       \        P                  ! RR7      ;_uu_ 4       p\        P                  ! R\        R7       V P                  \        4      ;_uu_ 4       p\	        R	4       RRR4       XP                   pRRR4       V P                  V. 4       V P                  XP"                  R4       V P                  VP                  R4       V P                  VP                  ^4       V P                  VP$                  ^4       \        P                  ! RR7      ;_uu_ 4       p\        P                  ! R\        R7       V P                  \        4      ;_uu_ 4       p\	        R4       RRR4       XP                   pRRR4       V P                  \        V4      ^4       V P                  V^ ,          P&                  \        4       V P)                  \        V^ ,          P                  4      R4       V P                  V^ ,          P                  R4       R#   + '       g   i     EKm  ; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL	; i  + '       g   i     EL	; i)   s   
"'01234567NU\abfnrtuvxz'\%c'\NTrecordalwayscategoryz	'''
\z'''"\z" is an invalid escape sequence. Such sequences will not work in the future. Did you mean "\\z"? A raw string is also an option.<string>errorW"\z" is an invalid escape sequence. Did you mean "\\z"? A raw string is also an option.z'\e' $zinvalid escape sequence)rangeassertWarnsSyntaxWarningr)   r*   r+   warningscatch_warningssimplefilterlenstrmessagefilenamelinenor0   r1   	exceptionmsgoffsetr;   assertRegexr   bwcmexcs   &    r   test_eval_str_invalid_escape)TestLiterals.test_eval_str_invalid_escapel   s   q#A66!!-00  hl!3TCF]C 10  $$D11Q!!(]C 2 	Q#QqT\\* -P 	Q 	1
31a($$D11Q!!'MB"";//2]# 0,,C	 2
 	B #P 	Qz2Q'Q' $$D11Q!!(]C"";//2Y 0,,C	 2
 	Q#16QqT\\*,EF1
3G 100 211 0// 211  0// 211s_   3M((M=0:N%*N	6N%3:O-N9	9O(M:=N	N"	N%%N6	9O
	OO	c           	     *   \        R R4       FT  pV P                  \        4      ;_uu_ 4        V P                  \	        RV,          4      \        V4      4       RRR4       KV  	  \        P                  ! RR7      ;_uu_ 4       p\        P                  ! R\        R7       \	        R4       RRR4       V P                  \        X4      ^4       V P                  \        V^ ,          P                  4      R	4       V P                  V^ ,          P                  R
4       V P                  V^ ,          P                  ^4       \        P                  ! RR7      ;_uu_ 4       p\        P                  ! R\        R7       V P                  \        4      ;_uu_ 4       p\	        R4       RRR4       XP                   pRRR4       V P                  V. 4       V P                  XP"                  R4       V P                  VP                  R
4       V P                  VP                  ^4       V P                  VP$                  ^4       R#   + '       g   i     EKK  ; i  + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     L; i)      z'\%o'NTr7   r9   r:   z'''
\407'''"\407" is an invalid octal escape sequence. Such sequences will not work in the future. Did you mean "\\407"? A raw string is also an option.r=   r>   a"\407" is an invalid octal escape sequence. Did you mean "\\407"? A raw string is also an option.)r@   rA   rB   r)   r*   r+   rC   rD   rE   rF   rG   rH   rI   rJ   r0   r1   rK   rL   rM   r   r   rQ   rR   rS   s   &    r   "test_eval_str_invalid_octal_escape/TestLiterals.test_eval_str_invalid_octal_escape   s   uf%A!!-00  hl!3SV< 10 & $$D11Q!!(]C! 2 	Q#QqT\\*R	S 	1
31a($$D11Q!!'MB"";//2_% 0,,C	 2
 	B #Z 	[z2Q'Q'1 100 211 0/ 21s;   ,I(I :JI/	&JII,	/I?:JJ	c                   \         P                  ! R R7      ;_uu_ 4       p\         P                  ! R\        R7       \	        R4       RRR4       V P                  \        X4      ^4       V P                  \        V^ ,          P                  4      R4       V P                  V^ ,          P                  R4       V P                  V^ ,          P                  ^4       \         P                  ! R R7      ;_uu_ 4       p\         P                  ! R\        R7       \	        R4       RRR4       V P                  \        V4      ^4       V P                  \        V^ ,          P                  4      R4       V P                  V^ ,          P                  R4       V P                  V^ ,          P                  ^4       R#   + '       g   i     EL|; i  + '       g   i     L; i)	Tr7   r9   r:   z&"'''''''''''''''''''''invalid\ Escape"Nz"\ " is an invalid escape sequence. Such sequences will not work in the future. Did you mean "\\ "? A raw string is also an option.r=   z"''Incorrect \ logic?")rC   rD   rE   rB   r*   r)   rF   rG   rH   rI   rJ   )r   rQ   s   & r   )test_invalid_escape_locations_with_offset6TestLiterals.test_invalid_escape_locations_with_offset   sN   $$D11Q!!(]C<= 2 	Q#QqT\\*<	= 	1
31a($$D11Q!!(]C,- 2 	Q#QqT\\*?	@ 	1
31a() 211 21s   (F;<(G;G	G	c                4   V P                  \        R 4      R4       V P                  \        R4      R4       V P                  \        R4      \        ^4      4       V P                  \        R4      R4       V P                  \        R4      \        ^4      4       V P                  \        R4      R4       V P                  \        R4      \        R4      4       V P                  \        R	4      R4       V P                  \        R
4      \        R4      4       R# )z r'x' r%   z	 r'\x01' z r'' z	 r'\x81' u    r'' z r'\u1881' u    r'ᢁ' r&   z r'\U0001d120' u	    r'𝄠' r'   N\x01z\x81z\u1881z
\U0001d120r(   r   s   &r   test_eval_str_rawTestLiterals.test_eval_str_raw   s    l+S1./>o.A7./>o.D	:01>B/0#f+>457IJ34c'lCr	   c                "   V P                  \        R 4      R4       V P                  \        R4      \        ^4      4       V P                  \        R4      \        ^4      4       V P                  \        R4      \        ^4      4       V P                  \        \        R4       V P                  \        R4      R4       V P                  \        \        R4       V P                  \        R4      R4       V P                  \        \        R	4       R
# )z b'x'    xz	 b'\x01' z b'' z	 b'\x81' u    b''  br'\u1881' u    b'ᢁ'  br'\U0001d120' u	    b'𝄠' N   \u1881
   \U0001d120r)   r*   r   r0   r1   r   s   &r   test_eval_bytes_normal#TestLiterals.test_eval_bytes_normal   s    l+T2./a9o.Q8./d<+t_=124DE+t->?568LM+t-BCr	   c                r    V P                  \        \        R 4       V P                  \        \        R4       R# )z b'\x' z b'\x0' Nr/   r   s   &r   test_eval_bytes_incomplete'TestLiterals.test_eval_bytes_incomplete   s&    +t^<+t_=r	   c           
        \        ^^4       Fe  pVR9   d   K  V P                  \        4      ;_uu_ 4        V P                  \	        RV,          4      R\        V.4      ,           4       RRR4       Kg  	  \        P                  ! RR7      ;_uu_ 4       p\        P                  ! R\        R7       \	        R	4       RRR4       V P                  \        X4      ^4       V P                  \        V^ ,          P                  4      R
4       V P                  V^ ,          P                  R4       V P                  V^ ,          P                  ^4       \        P                  ! RR7      ;_uu_ 4       p\        P                  ! R\        R7       V P                  \        4      ;_uu_ 4       p\	        R	4       RRR4       XP                   pRRR4       V P                  V. 4       V P                  XP"                  R4       V P                  VP                  R4       V P                  VP                  ^4       R#   + '       g   i     EK@  ; i  + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     L; i)r5   s   
"'01234567\abfnrtvxzb'\%c'   \NTr7   r9   r:   z
b'''
\z'''r<   r=   r>   r?   r@   rA   rB   r)   r*   r   rC   rD   rE   rF   rG   rH   rI   rJ   r0   r1   rK   rL   rO   s   &    r   test_eval_bytes_invalid_escape+TestLiterals.test_eval_bytes_invalid_escape   s   q#A33!!-00  i!m!4eeQCj6HI 10  $$D11Q!!(]C  2 	Q#QqT\\* -P 	Q 	1
31a($$D11Q!!'MB"";//2^$ 0,,C	 2
 	B #P 	Qz2Q'- 100 211 0/ 21s;   4H;(I1:I7+I$	7I7;II!	$I4/I77J	c           
        \        R R4       F\  pV P                  \        4      ;_uu_ 4        V P                  \	        RV,          4      \        V^,          .4      4       RRR4       K^  	  \        P                  ! RR7      ;_uu_ 4       p\        P                  ! R\        R7       \	        R4       RRR4       V P                  \        X4      ^4       V P                  \        V^ ,          P                  4      R	4       V P                  V^ ,          P                  R
4       V P                  V^ ,          P                  ^4       \        P                  ! RR7      ;_uu_ 4       p\        P                  ! R\        R7       V P                  \        4      ;_uu_ 4       p\	        R4       RRR4       XP                   pRRR4       V P                  V. 4       V P                  XP"                  R4       V P                  VP                  R
4       V P                  VP                  ^4       R#   + '       g   i     EK7  ; i  + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     L; i)rW   rX   zb'\%o'NTr7   r9   r:   zb'''
\407'''rY   r=   r>   rZ   rs   r[   s   &    r   $test_eval_bytes_invalid_octal_escape1TestLiterals.test_eval_bytes_invalid_octal_escape   s   uf%A!!-00  i!m!4eQYK6HI 10 & $$D11Q!!(]C!" 2 	Q#QqT\\* -R 	S 	1
31a($$D11Q!!'MB"";//2%& 0,,C	 2
 	B #R 	Sz2Q'- 100 211 0/ 21s;   4H2(I(:I."I	.I.2II	I+&I..I>	c                :   V P                  \        R 4      R4       V P                  \        R4      R4       V P                  \        R4      R4       V P                  \        R4      R4       V P                  \        R4      \        ^4      4       V P                  \        R4      \        ^4      4       V P                  \        R4      R4       V P                  \        R4      R4       V P                  \        \        R	4       V P                  \        \        R
4       V P                  \        R4      R4       V P                  \        R4      R4       V P                  \        \        R4       V P                  \        \        R4       V P                  \        R4      R4       V P                  \        R4      R4       V P                  \        \        R4       V P                  \        \        R4       V P                  \        \        R4       V P                  \        \        R4       V P                  \        \        R4       V P                  \        \        R4       V P                  \        \        R4       V P                  \        \        R4       R# )z br'x' rf   z rb'x' z
 br'\x01' z
 rb'\x01' z br'' z rb'' z
 br'\x81' z
 rb'\x81' u    br'' u    rb'' rg   z rb'\u1881' u	    br'ᢁ' u	    rb'ᢁ' rh   z rb'\U0001d120' u
    br'𝄠' u
    rb'𝄠' z bb'' z rr'' z brr'' z bbr'' z rrb'' z rbb'' N   \x01s   \x81ri   rj   rk   r   s   &r   test_eval_bytes_raw TestLiterals.test_eval_bytes_raw  s   m,d3m,d3/0.A/0.A./a9./a9/0.A/0.A+t-=>+t-=>124DE124DE+t-?@+t-?@568LM568LM+t-CD+t-CD+t\:+t\:+t];+t];+t];+t];r	   c                   V P                  \        R 4      R4       V P                  \        R4      R4       V P                  \        R4      R4       V P                  \        \        R4       V P                  \        \        R4       V P                  \        \        R4       V P                  \        \        R4       R	# )
z u'x' r%   u    U'ä'    äu    u'ä' z ur'' z ru'' z bu'' z ub'' N)r)   r*   r0   r1   r   s   &r   test_eval_str_uTestLiterals.test_eval_str_u2  s    l+S1/0$7PQSWX+t\:+t\:+t\:+t\:r	   c                   V P                  \        R 4      R4       V P                  \        R4      R4       V P                  \        R4      R4       V P                  \        R4      ^ 4       V P                  \        R4      R4       R	# )
z B'x' rf   z	 R'\x01' rb   z
 BR'\x01' rz   z
 F'{1+1}' z U'\U0001d120' u   𝄠N)r)   r*   r   s   &r   test_uppercase_prefixes$TestLiterals.test_uppercase_prefixes;  sq    l+T2./9/0(;./C5:45}Er	   c                   R VP                  RR4      ,           p\        P                  P                  V P                  VR,           4      p\        VRVR7      p VP                  \        V,          4       VP                  V4       VP                  4        \        V4       \        P                  V R#   TP                  4        i ; i)xx_-_z.pyrQ   )encodingN)replaceosr   joinr   openwriter    close
__import__r   modules)r   r   extramodnamefnfs   &&&   r   check_encodingTestLiterals.check_encodingB  s    (**344WW\\$++w7S8,	GGHx'(GGENGGI7KK  GGIs   -B5 5Cc                .    R pV P                  RV4       R# )u#   z = 'ሴ'; assert ord(z) == 0x1234
utf-8Nr   r   r   s   & r   test_file_utf_8TestLiterals.test_file_utf_8N  s    9GU+r	   c                N    R pV P                  \        V P                  RV4       R# )u   b''
r   N)r0   r1   r   r   s   & r   test_file_utf_8_error"TestLiterals.test_file_utf_8_errorR  s!    +t':':GUKr	   c                (    V P                  R 4       R# )r   Nr   r   s   &r   test_file_utf8TestLiterals.test_file_utf8V  s    G$r	   c                (    V P                  R 4       R# )z
iso-8859-1Nr   r   s   &r   test_file_iso_8859_1!TestLiterals.test_file_iso_8859_1Y  s    L)r	   c                (    V P                  R 4       R# )zlatin-1Nr   r   s   &r   test_file_latin_1TestLiterals.test_file_latin_1\  s    I&r	   c                (    V P                  R 4       R# )latin9Nr   r   s   &r   test_file_latin9TestLiterals.test_file_latin9_  s    H%r	   )r   r   N) )__name__
__module____qualname____firstlineno__r   r   r"   r,   r2   rT   r\   r_   rc   rl   ro   rt   rw   r{   r   r   r   r   r   r   r   r   r   __static_attributes____classdictcell__)__classdict__s   @r   r   r   @   s     (
79	CC '4R(8).	D	D>(8(4<4;F
!,L%*'& &r	   r   __main__)r   r   r   r   unittestrC   r    r   TestCaser   r   main r	   r   <module>r      sR   < 
 
    ,`&8$$ `&F	 zMMO r	   