+
    Bix                        ^ RI Ht ^ RIHt ^ RIHt ^ RIHt ^ RIH	t	H
t
 ^ RIHtHt ^ RIHt ^ RIHtHt  ! R	 R
4      tRR R lltRR R lltR R ltR R ltR R ltR R lt]]3R lt]! ]]! ]^
R7      R7      t ! R R]	4      tR# )    )InteractiveConsole)partial)Iterable)	MagicMock)ConsoleEvent)ReadlineAlikeReaderReadlineConfig)_strip_final_indent)	unbracketANSI_ESCAPE_SEQUENCEc                   6   a  ] tR t^t o RV 3R lR lltRtV tR# )ScreenEqualMixinc                ,   < V ^8  d   QhRS[ RS[RS[/# )   readerexpectedclean)r	   strbool)format__classdict__s   "//usr/lib/python3.14/test/test_pyrepl/support.py__annotate__ScreenEqualMixin.__annotate__   s%     / /)/58/AE/    c                    V'       d   \        V4      MVP                  pVP                  R 4      pV P                  WB4       R# )
N)clean_screenscreensplitassertListEqual)selfr   r   r   actuals   &&&& r   assert_screen_equal$ScreenEqualMixin.assert_screen_equal   s2     */f%FMM>>$'V.r    N)F)__name__
__module____qualname____firstlineno__r%   __static_attributes____classdictcell__r   s   @r   r   r      s     / / /r   r   Nc                >    V ^8  d   QhR\         R\        R,          /# )r   r   	namespaceN)r	   dict)r   s   "r   r   r      s     	" 	"/ 	"D4K 	"r   c                     V P                   p \        \         VR 7      V n         R;V n        V n        R;V n        V n        V P                  4       W n         RV n        #   Y n         RT n        i ; i)r0   z>>> z... F)
more_linesr   ps1ps2ps3ps4readline
paste_mode)r   r0   saveds   && r   multiline_inputr<      sg    E"#J)D"((
VZ"((
VZ !! "!s   AA A,c                >    V ^8  d   QhR\         R\        R,          /# )r   textr0   N)r   r1   )r   s   "r   r   r   !   s     
 
S 
TD[ 
r   c                     Vf   / p\        V 4      p\        VRR7      p VP                  VRR4      pVR J #   \        \        \
        3 d     R# i ; i)Nz<stdin>)filenamesingleF)r   r   compileOverflowErrorSyntaxError
ValueError)r>   r0   srcconsolecodes   &&   r   r4   r4   !   sa    	
d
#C Y?GsIx8 t| ;
3 s   7 AAc                $    V ^8  d   QhR\         /# )r   rH   r   )r   s   "r   r   r   .   s     I I Ir   c           
   #   p   "   V  F+  p\        R V\        VP                  R4      4      R7      x  K-  	  R# 5i)keyutf-8)evtdatarawN)r   	bytearrayencode)rH   cs   & r   code_to_eventsrT   .   s,     A9QXXg5F+GHH s   46c                F    V ^8  d   QhR\         R\        \        ,          /# )r   r   return)r	   listr   )r   s   "r   r   r   3   s      , c r   c                 R   . pV P                    F  p\        VR R7      p\        P                  ! RV4      pV P                  V P
                  V P                  V P                  3 F*  pVP                  V4      '       g   K  V\        V4      R p M	  VP                  V4       K  	  V# )T)including_content N)r    r   r   subr5   r6   r7   r8   
startswithlenappend)r   outputlineprefixs   &   r   r   r   3   s     F6#''D1zz6::vzz6::FFv&&CKL) G 	d  Mr   c                $    V ^8  d   QhR\         /# )r   rG   )r   )r   s   "r   r   r   E   s      G r   c                     \        VP                  R R4      R7      p\        WR7      p\        \        RR7      Vn        RVn        R R lpWCn        VP                  4        F  w  rV\        W5V4       K  	  V# )readline_completerN)rd   )rG   configr3   Tc                $    V ^8  d   QhR\         /# r   rV   rJ   )r   s   "r   r   $prepare_reader.<locals>.__annotate__K   s      c r   c                     R # )rZ   r'   )linenocursor_on_lines   &&r   
get_prompt"prepare_reader.<locals>.get_promptK   s    r   )	r
   popr	   r   r4   r:   rl   itemssetattr)rG   kwargsre   r   rl   rL   vals   &,     r   prepare_readerrs   E   sj    vzz:NPT/UVF @F
d;FF #LLNS! # Mr   c                \    V ^8  d   QhR\         \        ,          R\        \        ,          /# )r   eventsrV   )r   r   r   r   )r   s   "r   r   r   V   s#      HUO )g:M r   c                     \        4       pWP                  n        ^dVn        ^PVn        VP                  4        F  w  r4\        W#V4       K  	  V# )d   )r   	get_eventside_effectheightwidthro   rp   )ru   rq   rG   rL   rr   s   &,   r   prepare_consoler|   V   sD    kG$*!GNGMLLNc" #Nr   c                     V! V 4      pV! V4      p  VP                  4        K    \         d     YC3# \         d     YC3# i ; iT)handle1StopIterationKeyboardInterrupt)ru   r|   rs   rG   r   s   &&&  r   handle_all_eventsr   `   s[     f%GG$FNN  ?  ?s   % AAAA)r{   )r|   c                   ^  a  ] tR t^ut o R%V 3R lR lltR&V 3R lR l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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R'V 3R  lR! lltV 3R" lR# ltR$tV tR# )(FakeConsolec                   < V ^8  d   QhRR/# r   rV   Nr'   )r   r   s   "r   r   FakeConsole.__annotate__v   s      D r   c                \    \        V4      V n        W n        . V n        ^dV n        ^PV n        R# )rw   N)iterru   encodingr    rz   r{   )r#   ru   r   s   &&&r   __init__FakeConsole.__init__v   s'    6l 
r   c                4   < V ^8  d   QhRS[ RS[R,          /# )r   blockrV   N)r   r   )r   r   s   "r   r   r   }   s     ! !t !ut| !r   c                ,    \        V P                  4      # N)nextru   )r#   r   s   &&r   rx   FakeConsole.get_event}   s    DKK  r   c                    < V ^8  d   QhRS[ /# rg   )r   )r   r   s   "r   r   r      s     + +E +r   c                &    V P                  R R7      # )F)r   )rx   r#   s   &r   
getpendingFakeConsole.getpending   s    ~~E~**r   c                6   < V ^8  d   QhRS[ S[S[3,          /# rg   )tupleint)r   r   s   "r   r   r      s     ' 'c3h 'r   c                2    V P                   V P                  3# r   )rz   r{   r   s   &r   getheightwidthFakeConsole.getheightwidth   s    {{DJJ&&r   c                P   < V ^8  d   QhRS[ S[,          RS[S[S[3,          RR/# )r   r    xyrV   N)rW   r   r   r   )r   r   s   "r   r   r      s.      d3i U38_  r   c                    R # r   r'   )r#   r    r   s   &&&r   refreshFakeConsole.refresh       r   c                   < V ^8  d   QhRR/# r   r'   )r   r   s   "r   r   r             r   c                    R # r   r'   r   s   &r   prepareFakeConsole.prepare   r   r   c                   < V ^8  d   QhRR/# r   r'   )r   r   s   "r   r   r      r   r   c                    R # r   r'   r   s   &r   restoreFakeConsole.restore   r   r   c                *   < V ^8  d   QhRS[ RS[ RR/# )r   xyrV   N)r   )r   r   s   "r   r   r      s"      S S T r   c                    R # r   r'   )r#   r   r   s   &&&r   move_cursorFakeConsole.move_cursor   r   r   c                $   < V ^8  d   QhRS[ RR/# )r   visiblerV   N)r   )r   r   s   "r   r   r      s      d t r   c                    R # r   r'   )r#   r   s   &&r   set_cursor_visFakeConsole.set_cursor_vis   r   r   c                4   < V ^8  d   QhRS[ S[,          RR/# )r   charrV   N)r   bytes)r   r   s   "r   r   r      s      cEk d r   c                    R # r   r'   )r#   r   s   &&r   	push_charFakeConsole.push_char   r   r   c                   < V ^8  d   QhRR/# r   r'   )r   r   s   "r   r   r      s      d r   c                    R # r   r'   r   s   &r   beepFakeConsole.beep   r   r   c                   < V ^8  d   QhRR/# r   r'   )r   r   s   "r   r   r      s      t r   c                    R # r   r'   r   s   &r   clearFakeConsole.clear   r   r   c                   < V ^8  d   QhRR/# r   r'   )r   r   s   "r   r   r      s       r   c                    R # r   r'   r   s   &r   finishFakeConsole.finish   r   r   c                   < V ^8  d   QhRR/# r   r'   )r   r   s   "r   r   r            T r   c                    R # r   r'   r   s   &r   flushoutputFakeConsole.flushoutput   r   r   c                   < V ^8  d   QhRR/# r   r'   )r   r   s   "r   r   r      r   r   c                    R # r   r'   r   s   &r   forgetinputFakeConsole.forgetinput   r   r   Nc                4   < V ^8  d   QhRS[ R,          RS[/# )r   timeoutNrV   )floatr   )r   r   s   "r   r   r      s      EDL D r   c                    R # r~   r'   )r#   r   s   &&r   waitFakeConsole.wait   s    r   c                   < V ^8  d   QhRR/# r   r'   )r   r   s   "r   r   r      r   r   c                    R # r   r'   r   s   &r   repaintFakeConsole.repaint   r   r   )r   ru   rz   r    r{   )rM   r~   r   )r(   r)   r*   r+   r   rx   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r,   r-   r.   s   @r   r   r   u   s      ! !+ +' '             r   r   r   )rH   r   	functoolsr   typingr   unittest.mockr   _pyrepl.consoler   r   _pyrepl.readliner	   r
   _pyrepl.simple_interactr   _pyrepl.utilsr   r   r   r<   r4   rT   r   rs   r|   r   handle_events_narrow_consoler   r'   r   r   <module>r      sx    #   # * @ 7 9/ /	"
I
$" ,N  'O26  6' 6r   