+
     BiFY                    l  a  0 t $ ^ RIHt ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIH	t	H
t
HtHtHtHtHtHtHt ^ RIHtHtHt ^RIHtHt ^RIHt ^RIHt ^RIHt  ^ R	IHtHtHtH t H!t! R]%R&    ^ RI&t&Rt(]('       d   ^ RI)H*t* / ^#Rb^$Rb^%Rb^&Rb^'Rb^(Rb^.Rb^pRb^qRb^rRb^sRb^tR b^uR!b^vR"b^wR#b^xR$b^yR%b^zR&^{R'^|R(^}R)^~R*^R+^R,^R-^R.^R//
Ct+R0]%R1&   R2t,R3t-R4t.R5t/R6t0R7t1^t2^t3R8t4R9t5R9t6 ! R: R;]74      t8R< t9 ! R= R>]4      t: ! R? R@]4      t; ! RA RB]4      t< ! RC RD]4      t= ! RE RF]4      t> ! RG RH]P$                  4      t? ! RI RJ]P$                  4      t@ ! RK RL]P(                  4      tA ! RM RN]4      tB^tC^tD^tE^tF^tG^tH^tI^tJ^tK^ tLROtM^tN^tO^tPRUtQRVtR]P                  RP8X  Ed>   ]! RQRRRS7      tT] P                  P                  tV].]VnW        ]]VnX        ]TP                  tY]]P&                  ! ];4      .]YnW        ]]YnX        ]TP                  t[]]! ]4      ]! ]4      ]	]! ]=4      .][nW        ]][nX        ]TP                  t\]]! ]4      .]\nW        ]]\nX        ]TP                  t]]].]]nW        ]]]nX        ]TP                  t_]]! ]B4      ]]! ]4      .]_nW        ]]_nX        ]TP                  t`].]`nW        ]]`nX        ]TP                  ta]].]anW        ]]anX        ]V! ]R4      tb]V! ]Q4      tcR# RT td]dtV]dtY]dt[]dt\]dt]]dt_]dt`]dta^ tb^ tcR#    ^ R
IH"tH#t  R R ltR R lt ! R R]$4      t! EL; i  ]' d    Rt& ELi ; i)W    )annotationsN)	_COORDWORD
SMALL_RECTBOOLHANDLECHARDWORDWCHARSHORT)	StructurePOINTERUnion)EventConsole)trace)wlen)
EventQueue)get_last_errorGetLastErrorWinDLLwindllWinError)CDLLcdllc                   V ^8  d   QhRR/#    returnint )formats   "./usr/lib/python3.14/_pyrepl/windows_console.py__annotate__r$   3   s      #     c                     ^*# *   r!   r!   r%   r#   r   r   3       r%   c                   V ^8  d   QhRR/# r   r!   )r"   s   "r#   r$   r$   6   s      C r%   c                     ^*# r'   r!   r!   r%   r#   r   r   6   r)   r%   c                  &    ] tR t^9tRR R lltRtR# )r   Nc               $    V ^8  d   QhRRRRRR/# )r   err
int | Nonedescrz
str | Noner   Noner!   )r"   s   "r#   r$   WinError.__annotate__:   s!     	 	
 	: 	 	r%   c                	    Wn         W n        R # N)r.   r0   )selfr.   r0   s   &&&r#   __init__WinError.__init__:   s    HJr%   )r0   r.   r4   )__name__
__module____qualname____firstlineno__r6   __static_attributes__r!   r%   r#   r   r   9   s    	 	r%   r   ztypes.ModuleType | NonentF)IOendhomeleftuprightdowndeletef1f2f3f4f5f6f7f8f9f10f11f12f13f14f15f16f17f18f19f20zdict[int, str]VK_MAPz[Kz[{}Dz[{}Cz[{}Az[{}Bz[H[Ji  l    c                      ] tR t^~tRtR# )_errorr!   N)r8   r9   r:   r;   r<   r!   r%   r#   r\   r\   ~   s    r%   r\   c                 R     \         P                  ! 4       #   \         d     R # i ; i)F)r=   _supports_virtual_terminalAttributeErrorr!   r%   r#   _supports_vtr`      s(    ,,.. s    &&c                    a  ] tR t^tR?R V 3R llltR R lt]R 4       tR R ltR@R R	 llt	R
 t
R tR tR tR R ltR R ltR R lt]R R l4       tR R ltR R ltR R ltR R ltR R ltR  R! ltR" R# ltR$ R% ltR& R' ltR( R) ltRAR* R+ lltR, R- ltR. R/ ltR0 R1 ltR2 R3 lt R4 R5 lt!R6 R7 lt"R8 R9 lt#R: R; lt$R< R= lt%R>t&V ;t'# )BWindowsConsolec               (    V ^8  d   QhRRRRRRRR/# )r   f_inzIO[bytes] | intf_outtermstrencodingr!   )r"   s   "r#   r$   WindowsConsole.__annotate__   s2     $ $$ $ 	$
 $r%   c                	4  < \         SV `  WW44       \        4       V n        V P                  '       d   \	        R 4       \        4       p\        \        V4       \	        RVP                  R 24       VP                  V n	        \        \        \        \        ,          \        ,          4       . V n        ^PV n        ^V n        ^ V n        \'        V4      V n         \*        P,                  ! V P.                  R4      V n        R#   \2         d    RT n         R# i ; i)z!console supports virtual terminalzsaved original input mode 0xxwN)superr6   r`   _WindowsConsole__vt_supportr   r
   GetConsoleModeInHandlevalue$_WindowsConsole__original_input_modeSetConsoleMode	OutHandleENABLE_WRAP_AT_EOL_OUTPUTENABLE_PROCESSED_OUTPUT"ENABLE_VIRTUAL_TERMINAL_PROCESSINGscreenwidthheight_WindowsConsole__offsetr   event_queueio_WindowsConsoleIO	output_fdout
ValueError)r5   rd   re   rf   rh   original_input_mode	__class__s   &&&&& r#   r6   WindowsConsole.__init__   s     	d5(N56 $gx!45,-@-F-Fq,IJK%8%>%>"%%&01	
 "$
%h/	++DNNC@DH 	DH	s   &D DDc               $    V ^8  d   QhRRRRRR/# )r   rx   z	list[str]c_xytuple[int, int]r   r1   r!   )r"   s   "r#   r$   ri      s&     B! B!i B! B!4 B!r%   c                   Vw  r4\        V P                  4      \        \        V4      V P                  4      8  d   V P	                  4        V P                  ^ \        V P                  4      ^,
          4       V P                  R4       ^ \        V P                  4      3V n        V P                  P                  R4       K  V P                  w  rVV P                  ;rxV P                  p	WH8  d   TpEMWHV	,           8  d   WI,
          ^,           pW,
          p
V P                  WP                  4       4       V P                  ^ ,          V P                  ^,          V
,           3V n        V ;P                  V
,          un	        \        V
4       F  pV P                  P                  R4       K   	  MJV^ 8  dD   \        V4      W,           8  d.   \        \        V4      V	,
          ^ 4      pVP                  R4       V P                  WwV	,            pWW,            pWn	        V P	                  4        \        \        WV	,           4      W4       F#  w  pppVV8w  g   K  V P                  WVV4       K%  	  \        V4      pV\        V4      8  d7   V P                  ^ V4       ^ V3V n        V P!                  4        V^,          pKF  V P#                  4        Wn        V P%                  W44       R# )z
Refresh the console screen.

Parameters:
- screen (list): List of strings representing the screen contents.
- c_xy (tuple): Cursor position (x, y) on the screen.

 N)lenrx   minrz   _hide_cursor_move_relative_WindowsConsole__writeposxyappendr{   _scroll_getscrollbacksizerangemaxzip#_WindowsConsole__write_changed_line_erase_to_end_show_cursormove_cursor)r5   rx   r   cxcypxpy
old_offsetoffsetrz   scroll_linesioldscrnewscryoldlinenewlines   &&&              r#   refreshWindowsConsole.refresh   sE    $++S[$++!>>3t{{#3a#78LLC,,DJKKr""mm+
 ;FF?"[1_F!.L
 LL'>'>'@AA

1(DDDJMM\)M<(""2& )aZCK&/9Vv-q1FMM"Zv*=>1
 v/@	
'!))!grB A K#f+o1%ADJ FA r%   c                	p    \         e.   \         P                  ! 4       '       d   \         P                  # R # R # r4   )r=   _is_inputhook_installed
_inputhookr5   s   &r#   
input_hookWindowsConsole.input_hook   s(     >b88::==  ;>r%   c          
     ,    V ^8  d   QhRRRRRRRRRR/# )	r   r   r    r   rg   r   px_coordr   r1   r!   )r"   s   "r#   r$   ri      s4     /' /'/'"/'-0/'<?/'	/'r%   c                	   \        \        V4      \        V4      4      p^ p^ p^ p^ p	V F&  p
W8  d    MV	\        V
4      ,          p	V^,          pK(  	  Wu8  dD   W&,          W6,          8X  d1   W6,          R8w  d$   V\        W6,          4      ,          pV^,          pKI  V P                  4        V P                  Wq4       \        V4      \        V4      8  d   V P	                  4        V P                  W6R 4       \        V4      V P                  8X  d,   V P                  ^ V^,           4       ^ V^,           3V n        R# \        V4      V3V n        RV9   g   WP                  ^,          8w  g   RV9   d   V P                  ^ V4       R# R# )r   N)	r   r   r   r   r   r   ry   r   r   )r5   r   r   r   r   minlenx_posx_coordpx_posjcs   &&&&&      r#   __write_changed_line#WindowsConsole.__write_changed_line   sI    T']DM2A}aLAaKF	  '.0&(tGN++GQJEG'=4=( WV_%=DJJ&1q5)AEDJg)DJ AA$6&G:K   A&	 ;Lr%   c          
     ,    V ^8  d   QhRRRRRRRRRR/# )	r   topr    bottomrA   r/   rC   r   r1   r!   )r"   s   "r#   r$   ri   *  s4     + ++ #++5+EO+	+r%   c                	v   \        4       p\        V4      Vn        \        V4      Vn        \        Vf   ^ MT4      Vn        \        Vf   V P                  4       ^,          ^,
          MT4      Vn        \        4       p\        4       pRVn	        \        \        VR Wg4      '       g   \        \        4       4      hR # )N )r   r   TopBottomLeftgetheightwidthRightr   	CHAR_INFOUnicodeCharScrollConsoleScreenBufferrt   r   r   )r5   r   r   rA   rC   scroll_rectdestination_origin	fill_infos   &&&&&   r#   r   WindowsConsole._scroll*  s     !l*"6] dl=!,1MD!!$q(u
 $XK	 #	({D*<
 
 <>**
r%   c                	(    V P                  R 4       R# )z[?25lNr   r   s   &r#   r   WindowsConsole._hide_cursor=      [!r%   c                	(    V P                  R 4       R# )z[?25hNr   r   s   &r#   r   WindowsConsole._show_cursor@  r   r%   c                	(    V P                  R 4       R# )z[?12hNr   r   s   &r#   _enable_blinkingWindowsConsole._enable_blinkingC  r   r%   c                	(    V P                  R 4       R# )z[?12lNr   r   s   &r#   _disable_blinking WindowsConsole._disable_blinkingF  r   r%   c                   V ^8  d   QhRR/# r   r   r1   r!   )r"   s   "r#   r$   ri   I  s     $ $ $r%   c                	(    V P                  R 4       R# )z[?2004hNr   r   s   &r#   _enable_bracketed_paste&WindowsConsole._enable_bracketed_pasteI      ]#r%   c                   V ^8  d   QhRR/# r   r!   )r"   s   "r#   r$   ri   L  s     $ $$ $r%   c                	(    V P                  R 4       R# )z[?2004lNr   r   s   &r#   _disable_bracketed_paste'WindowsConsole._disable_bracketed_pasteL  r   r%   c                    V ^8  d   QhRRRR/# )r   textrg   r   r1   r!   )r"   s   "r#   r$   ri   O  s     L LC LD Lr%   c                	   R V9   d*   RP                  V Uu. uF  q"R 8X  d   RMTNK  	  up4      pV P                  eR   V P                  P                  VP                  V P                  R4      4       V P                  P                  4        R# \        P                  ! V P                  VP                  V P                  R4      4       R# u upi )r   r   z^ZNreplace)joinr   writeencoderh   flushosr   )r5   r   rk   s   && r#   __writeWindowsConsole.__writeO  s    T>77E1KDQ6EFD88HHNN4;;t}}i@AHHNNHHT^^T[[	%JK Fs   Cc                   V ^8  d   QhRR/# r   r   r   r!   )r"   s   "r#   r$   ri   Z  s     @ @? @r%   c                	    \        4       p\        \        V4      '       g   \        \	        4       4      hVP
                  P                  VP
                  P                  3# r4   )CONSOLE_SCREEN_BUFFER_INFOGetConsoleScreenBufferInfort   r   r   dwCursorPositionXYr5   infos   & r#   	screen_xyWindowsConsole.screen_xyY  sG    )+))T::<>**$$&&(=(=(?(???r%   c                   V ^8  d   QhRR/# r   r!   )r"   s   "r#   r$   ri   `  s     $ $t $r%   c                	0    V P                  \        4       R # r4   )r   ERASE_IN_LINEr   s   &r#   r   WindowsConsole._erase_to_end`  s    ]#r%   c                   V ^8  d   QhRR/# r   r!   )r"   s   "r#   r$   ri   c  s     + + +r%   c                	    \        R 4       . V n        V P                  4       w  V n        V n        RV n        ^ V n        ^ V n        V P                  '       d8   \        \        V P                  \        ,          4       V P                  4        R# R# )prepareNr   r   )r   rx   r   rz   ry   r   _WindowsConsole__gone_tallr{   rn   rs   rp   rr   ENABLE_VIRTUAL_TERMINAL_INPUTr   r   s   &r#   r  WindowsConsole.preparec  sq    i"&"5"5"7TZ
8T%?%?B_%_`((* r%   c                   V ^8  d   QhRR/# r   r!   )r"   s   "r#   r$   ri   p  s     A A Ar%   c                	    V P                   '       d-   V P                  4        \        \        V P                  4       R # R # r4   )rn   r   rs   rp   rr   r   s   &r#   restoreWindowsConsole.restorep  s/    ))+8T%?%?@ r%   c               $    V ^8  d   QhRRRRRR/# r   rk   r    r   r   r1   r!   )r"   s   "r#   r$   ri   v  s!     / / / / /r%   c                   WP                   ^ ,          ,
          pW P                   ^,          ,
          pV^ 8  d'   V P                  \        P                  V) 4      4       M+V^ 8  d%   V P                  \        P                  V4      4       V^ 8  d(   V P                  \
        P                  V) 4      4       R# V^ 8  d'   V P                  \        P                  V4      4       R# R# )z#Moves relative to the current posxyN)r   r   	MOVE_LEFTr"   
MOVE_RIGHTMOVE_UP	MOVE_DOWN)r5   rk   r   dxdys   &&&  r#   r   WindowsConsole._move_relativev  s    AA6LL))2#./!VLL**2./6LL,-!VLL))"-. r%   c               $    V ^8  d   QhRRRRRR/# r  r!   )r"   s   "r#   r$   ri     s!      S S T r%   c                	&   V^ 8  g   V^ 8  d   \        RV RV 24      hW P                  8  g"   W P                  V P                  ,           8  d(   V P                  P	                  \        RR4      4       R# V P                  W4       W3V n        R# )r   zBad cursor position z, scrollr   N)r   r{   rz   r|   insertr   r   r   )r5   rk   r   s   &&&r#   r   WindowsConsole.move_cursor  sv    q5AE3A3b<==}}]]T[[%@ @##E(B$78%DJr%   c                    V ^8  d   QhRRRR/# )r   visibleboolr   r1   r!   )r"   s   "r#   r$   ri     s        d  t  r%   c                	Z    V'       d   V P                  4        R # V P                  4        R # r4   )r   r   )r5   r  s   &&r#   set_cursor_visWindowsConsole.set_cursor_vis  s    r%   c                   V ^8  d   QhRR/# r   r!   )r"   s   "r#   r$   ri     s     	
 	
 	
r%   c                H   \        4       p\        \        V4      '       g   \        \	        4       4      hVP
                  P                  VP
                  P                  ,
          ^,           VP
                  P                  VP
                  P                  ,
          ^,           3# )zlReturn (height, width) where height and width are the height
and width of the terminal window in characters.)
r   r   rt   r   r   srWindowr   r   r   r   r   s   & r#   r   WindowsConsole.getheightwidth  sr     *+))T::<>**MM  4==#4#44q8MM$--"4"44q8
 	
r%   c                   V ^8  d   QhRR/# r   r!   )r"   s   "r#   r$   ri     s     $ $C $r%   c                	    \        4       p\        \        V4      '       g   \        \	        4       4      hVP
                  P                  # r4   )r   r   rt   r   r   r!  r   r   s   & r#   r   !WindowsConsole._getscrollbacksize  s4    )+))T::<>**}}###r%   c                   V ^8  d   QhRR/# )r   r   zINPUT_RECORD | Noner!   )r"   s   "r#   r$   ri     s      0 r%   c                	    \        4       p\        4       p\        \        V^V4      '       g   \	        \        4       4      hV# )   )INPUT_RECORDr
   ReadConsoleInputrp   r   r   )r5   recreads   &  r#   _read_inputWindowsConsole._read_input  s3    nw#q$77<>**
r%   c                    V ^8  d   QhRRRR/# )r   nr    r   z&tuple[ctypes.Array[INPUT_RECORD], int]r!   )r"   s   "r#   r$   ri     s      	/r%   c                	    V\         ,          ! 4       p\        4       p\        \        W!V4      '       g   \	        \        4       4      hW#P                  3# r4   )r)  r
   r*  rp   r   r   rq   )r5   r0  r+  r,  s   &&  r#   _read_input_bulkWindowsConsole._read_input_bulk  s@     <"w#$77<>**JJr%   c                    V ^8  d   QhRRRR/# )r   blockr  r   zEvent | Noner!   )r"   s   "r#   r$   ri     s     >& >&t >&| >&r%   c                   V'       g   V P                  ^ R7      '       g   R# V P                  P                  4       '       Edg   V P                  4       pVf   R# VP                  \
        8X  d   \        RR4      # VP                  \        8w  g'   VP                  P                  P                  '       g   V'       d   K  R# VP                  P                  pVP                  P                  ;rEVR8X  d   \        RRR7      # VP                  ^8X  d   R	pEMVR
8X  d   \        P                  VP                  4      pV'       d   VP                  \         ,          '       d   RV 2pMPVP                  \"        ,          '       d4   V P                  P%                  \        RVR7      4       \        RRR7      # \        RVR7      # V'       d   EK  R# V P&                  '       dL   VP)                  V P                  P*                  R4       F  pV P                  P-                  V4       K   	  EK  VP                  \"        ,          '       dQ   VP                  \         ,          '       g4   V P                  P%                  \        RVR7      4       \        RRR7      # \        RVR7      # V P                  P                  4       # )zReturn an Event instance.  Returns None if |block| is false
and there is no event pending, otherwise waits for the
completion of an event.)timeoutNresizer   keyr   )evtdata	backspace zctrl r   r   )waitr|   emptyr-  	EventTypeWINDOW_BUFFER_SIZE_EVENTr   	KEY_EVENTKeyEventbKeyDownuCharr   wVirtualKeyCoderZ   getdwControlKeyStateCTRL_ACTIVE
ALT_ACTIVEr  rn   r   rh   push)r5   r5  r+  	key_eventraw_keyr:  chars   &&     r#   	get_eventWindowsConsole.get_event  s   
 TYYqY11$$&&""$C{}} 88Xr**}}	)1C1C1L1L1L		**I%OO777Gd{T22**a/!jj!:!:; 22[@@ %cUm"44zAA((//%c0JK$V<< U55"""#NN4+;+;+D+DiPD$$))$/ Q**Z77 !22[@@$$++Ee#,FG U88U--##%%r%   c                    V ^8  d   QhRRRR/# )r   rO  zint | bytesr   r1   r!   )r"   s   "r#   r$   ri     s     H Hk Hd Hr%   c                    \        R4      h)z.
Push a character to the console event queue.
z"push_char not supported on WindowsNotImplementedError)r5   rO  s   &&r#   	push_charWindowsConsole.push_char  s     ""FGGr%   c                   V ^8  d   QhRR/# r   r!   )r"   s   "r#   r$   ri     s      d r%   c                	(    V P                  R 4       R# )Nr   r   s   &r#   beepWindowsConsole.beep  s    Vr%   c                   V ^8  d   QhRR/# r   r!   )r"   s   "r#   r$   ri     s      t r%   c                N    V P                  \        4       RV n        R.V n        R# )zWipe the screenr   Nr  )r   CLEARr   rx   r   s   &r#   clearWindowsConsole.clear  s    U
dr%   c                   V ^8  d   QhRR/# r   r!   )r"   s   "r#   r$   ri     s       r%   c                0   \        V P                  4      ^,
          pV^ 8  d%   V P                  V,          '       g   V^,          pK+  V P                  ^ \        WP                  V P
                  ,           ^,
          4      4       V P                  R4       R# )zsMove the cursor to the end of the display and otherwise get
ready for end.  XXX could be merged with restore?  Hmm.z
N)r   rx   r   r   rz   r{   r   )r5   r   s   & r#   finishWindowsConsole.finish  sf     q 1fT[[^^FAAs1kkDMM&AA&EFGVr%   c                   V ^8  d   QhRR/# r   r!   )r"   s   "r#   r$   ri     s      T r%   c                    R# )zFlush all output to the screen (assuming there's some
buffering going on somewhere).

All output on Windows is unbuffered so this is a nopNr!   r   s   &r#   flushoutputWindowsConsole.flushoutput  s    
 	r%   c                   V ^8  d   QhRR/# r   r!   )r"   s   "r#   r$   ri     s     + +T +r%   c                V    \        \        4      '       g   \        \        4       4      hR# )z0Forget all pending, but not yet processed input.N)FlushConsoleInputBufferrp   r   r   r   s   &r#   forgetinputWindowsConsole.forgetinput  s    &x00<>** 1r%   c                   V ^8  d   QhRR/# )r   r   r   r!   )r"   s   "r#   r$   ri     s      E r%   c                r   \        RRR4      pV P                  P                  4       '       gJ   V P                  P                  4       pV'       g   KD  V;P                  VP                  ,          un        Ki  V P                  R4      w  r4\        V4       F  pW5,          pV'       g   K  VP                  \        8X  g   K,  VP                   P                  pVP                  '       g   KV  VP                  P                  pVR8X  d   Ku  VR8X  d
   VR,          pV;P                  V,          un        K  	  V# )zAReturn the characters that have been typed but not yet
processed.r:  r   r%   i   r>  r9  r   )r   r|   r@  rH  r<  r2  r   rA  rC  rD  rE  rF  r   )	r5   ee2recs	rec_countr   r+  rM  chs	   &        r#   
getpendingWindowsConsole.getpending  s     %S!""((**!!%%'Br"''!//5y!A'C ss}}	1II..	 )))__00<:$JB" "  r%   c                    V ^8  d   QhRRRR/# )r   r7  zfloat | Noner   r  r!   )r"   s   "r#   r$   ri   9  s      L T r%   c                    Vf   \         pM\        V4      p\        \        V4      pV\        8X  d   \        \        4       4      hV\        8X  d   R# R# )zWait for an event.FT)INFINITEr    WaitForSingleObjectrp   WAIT_FAILEDr   r   WAIT_TIMEOUT)r5   r7  rets   && r#   r?  WindowsConsole.wait9  sE    ?G'lG!(G4+>+,,L r%   c                   V ^8  d   QhRR/# r   r!   )r"   s   "r#   r$   ri   F  s     8 8 8r%   c                	    \        R 4      h)zNo repaint supportrT  r   s   &r#   repaintWindowsConsole.repaintF  s    !"677r%   )
__gone_tall__offset__original_input_mode__vt_supportr|   rz   r   r   rx   ry   )r   r(  r   r   )NN)T)(r8   r9   r:   r;   r6   r   propertyr   r   r   r   r   r   r   r   r   r   r   r   r  r  r   r   r  r   r   r-  r2  rP  rV  r[  r`  rd  rh  rm  rv  r?  r  r<   __classcell__)r   s   @r#   rb   rb      s    $ $LB!H ! !/'b+&""""$$L @ @$+A/ 	
$>&@H+
:8 8r%   rb   c                  8    ] tR tRtR]3R]3R]3R]3R]3.tRtR# )	r   iK  dwSizer   wAttributesr!  dwMaximumWindowSizer!   N)	r8   r9   r:   r;   r   r   r   _fields_r<   r!   r%   r#   r   r   K  s1    	6	V$		Z 	'Hr%   r   c                  &    ] tR tRtR]3R]3.tRtR# )CONSOLE_CURSOR_INFOiU  r  bVisibler!   N)r8   r9   r:   r;   r
   r   r  r<   r!   r%   r#   r  r  U  s    	5	THr%   r  c                  &    ] tR tRtR]3R]3.tRtR# )r   i\  r   
Attributesr!   N)r8   r9   r:   r;   r   r   r  r<   r!   r%   r#   r   r   \  s    		tHr%   r   c                  &    ] tR tRtR]3R ]3.tRtR# )Charic  r   r!   N)r8   r9   r:   r;   r   r	   r  r<   r!   r%   r#   r  r  c  s    		Hr%   r  c                  >    ] tR tRtR]3R]3R]3R]3R]3R]3.tRt	R	# )
rD  ij  rE  wRepeatCountrG  wVirtualScanCoderF  rI  r!   N)
r8   r9   r:   r;   r   r   r  r
   r  r<   r!   r%   r#   rD  rD  j  s8    	T		D!	T"	$	e$Hr%   rD  c                       ] tR tRtR]3.tRtR# )WindowsBufferSizeEventiu  r  r!   N)r8   r9   r:   r;   r   r  r<   r!   r%   r#   r  r  u  s    6"#Hr%   r  c                  &    ] tR tRtR]3R]3.tRtR# )ConsoleEventiy  rD  r  r!   N)r8   r9   r:   r;   rD  r  r  r<   r!   r%   r#   r  r  y  s    	X	!#9:Hr%   r  c                  &    ] tR tRtR]3R]3.tRtR# )r)  i  rA  r   r!   N)r8   r9   r:   r;   r   r  r  r<   r!   r%   r#   r)  r)    s    d#g|%<=Hr%   r)  i   win32kernel32T)use_last_errorc                     \        R 4      h)zWindows onlyrT  )argskwargss   *,r#   	_win_onlyr    s    !.11r%   ii)e__conditional_annotations__
__future__r   r}   r   sysctypestypesctypes.wintypesr   r   r   r   r   r	   r
   r   r   r   r   r   consoler   r   r   utilsr   windows_eventqueuer   r   r   r   r   r   r   r   OSError__annotations__r=   ImportErrorTYPE_CHECKINGtypingr>   rZ   r   r  r  r  r  r_  rK  rJ  r}  r|  rz  	Exceptionr\   r`   rb   r   r  r   r  rD  r  r  r)  rC  FOCUS_EVENT
MENU_EVENTMOUSE_EVENTrB  ENABLE_PROCESSED_INPUTENABLE_LINE_INPUTENABLE_ECHO_INPUTENABLE_MOUSE_INPUTENABLE_INSERT_MODEr  rv   ru   rw   STD_INPUT_HANDLESTD_OUTPUT_HANDLEplatform	_KERNEL32r  GetStdHandleargtypesrestyper   ScrollConsoleScreenBufferWr   ro   rs   ReadConsoleInputWr*  rl  r{  rt   rp   r  )r  s   @r#   <module>r     s  ( # " 	 	 
  
 
 
 - , #   *MM"   %& 	& 	$	
 	' 	& 	( 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$  	$!" 	%#$ 	%%%%%%%%%%7 B 	

	 
 	Y 	@8W @8H ) 	 5 v $V-- $6<< >9 > 	
       &    %) "  <<7z$7I??//L"GL!L!*!E!E12+' *.& ) D D

	*& )-%--N%wu~6N!N--N%uoN!N 22!')>wu~ V# (??(.x$&*##77$*E? "'./I,-H2 L!* )NN '#IHM57   	Bs   K? .L& ?!L#&	L32L3