+
    öÙ†j“Y  ã                  ó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LÀi ; 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RAR V 3R llltR R lt]R 4       tR R ltRBR 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RCR* 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> R? lt&R@t'V ;t(# )DÚ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Ñ-FÀqÐ,IÐJÔKØ%8×%>Ñ%>ˆÔ"äÜÜ%Ü%õ&ä0õ1ô	
ð "$ˆŒØˆŒ
ØˆŒØˆŒÜ% hÓ/ˆÔð	Ü×+Ò+¨D¯N©N¸CÓ@ˆDŽHøÜô 	àˆD�Hð	ú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&   € ÷ C!ñ C!˜ið C!¨ð C!À4ñ C!r%   c                óú  € Vw  r4\        V P                  4      \        \        V4      V P                  4      8  d™   V P	                  4        V P                  '       d>   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                  W P                  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W€n	        V P	                  4        \        \        WˆV	,           4      WÍ4       F#  w  pppVV8w  g   K  V P                  WïV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®   sN  € ð ‰ˆä�$—+‘+Ó¤¤S¨£[°$·+±+Ó!>Ô>Ø×ÑÔØ�{�{ˆ{Ø×#Ñ# A¤s¨4¯;©;Ó'7¸!Õ';Ô<Ø—‘˜TÔ"ØœC §¡Ó,Ð,ˆDŒJØ�K‰K×Ñ˜rÖ"à—‘‰ˆØ"Ÿm™mÐ+ˆ
Ø—‘ˆð Œ;ØŠFØ˜F•?Ô"Ø•[ 1•_ˆFØ!Õ.ˆLð
 �L‰L˜×'>Ñ'>Ó'@ÔAØŸ™ A�¨¯
©
°1­¸Õ(DÐDˆDŒJØ�MŠM˜\Õ)�Mä˜<Ö(�Ø—‘×"Ñ" 2Ö&ò )à�aŒZœC ›K¨&­/Ô9Üœ˜V› vÕ-¨qÓ1ˆFØ�M‰M˜"Ôà—‘˜Z°vÕ*=Ð>ˆØ ¥Ð1ˆàŒà×ÑÔô
 ”�v¨�Ó/°Ö@ñ	
ØØØà˜'Ö!Ø×)Ñ)¨!°g¸rÖBñ Aô �‹KˆØ”#�f“+ŒoØ×Ñ  1Ô%Ø˜A˜ˆDŒJØ×ÑÔ Ø��FŠAà×ÑÔàŒØ×Ñ˜Ö 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
W”8¼  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                  ^,
          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ú   s%  € ô ”T˜'“]¤D¨£MÓ2ˆØˆØˆàˆØˆÛˆAØŒ}ÙØ”�a“�LˆAØ�a�KŠFñ	 ð ÔØ• '¥.Ô0Ø• &Ô(à”t˜G�NÓ+Õ+ˆGØ�Q�JŠEà×ÑÔØ×Ñ˜GÔ'Ü�‹=œ4 ›=Ô(Ø×ÑÔ à�‰�W˜V�_Ô%Üœ˜g›¨¯
©
°Q­Ó7¸Ð:ˆŒ
à�WÔ §Z¡Z°¥]Ô 2°fÀÔ6Gð ×Ñ˜Q Ö"ñ	 7H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›]ˆÔÜ  d¢l¡¸Ó=ˆÔÜ!Ø,1ªMˆD×ÑÓ! !Õ$ qÖ(¸uó
ˆÔô $›XÐÜ“Kˆ	Ø #ˆ	Ôä(Ü�{ DÐ*<÷
ò 
ô œ<›>Ó*Ð*ñ
r%   c                	ó(   € V P                  R 4       R# )z[?25lN©r�   r­   s   &r#   r�   ÚWindowsConsole._hide_cursor9  ó   € Ø�‰�[Ö!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_blinking?  rÑ   r%   c                	ó(   € V P                  R 4       R# )z[?12lNrÏ   r­   s   &r#   Ú_disable_blinkingÚ WindowsConsole._disable_blinkingB  rÑ   r%   c               ó   € V ^8„  d   QhRR/# ©r   r   r1   r!   )r"   s   "r#   r$   ri   E  s   € ÷ $ñ $¨ñ $r%   c                	ó(   € V P                  R 4       R# )z[?2004hNrÏ   r­   s   &r#   Ú_enable_bracketed_pasteÚ&WindowsConsole._enable_bracketed_pasteE  ó   € Ø�‰�]Ö#r%   c               ó   € V ^8„  d   QhRR/# rÛ   r!   )r"   s   "r#   r$   ri   H  s   € ÷ $ñ $¨$ñ $r%   c                	ó(   € V P                  R 4       R# )z[?2004lNrÏ   r­   s   &r#   Ú_disable_bracketed_pasteÚ'WindowsConsole._disable_bracketed_pasteH  rß   r%   c               ó    € V ^8„  d   QhRRRR/# )r   Útextrg   r   r1   r!   )r"   s   "r#   r$   ri   K  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.__writeK  s�   € Ø�TŒ>Ø—7‘7ÁÓEÁ¸1¨¤K™D°QÒ6ÁÑEÓFˆDà�8‰8ÒØ�H‰H�N‰N˜4Ÿ;™; t§}¡}°iÓ@ÔAØ�H‰H�N‰NÖä�HŠH�T—^‘^ T§[¡[°·±À	Ó%JÖKùò Fs   —Cc               ó   € V ^8„  d   QhRR/# ©r   r   r‡   r!   )r"   s   "r#   r$   ri   V  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_xyU  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   _  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.prepare_  sq   € ÜˆiÔØˆŒØ"&×"5Ñ"5Ó"7ÑˆŒ�T”ZàˆŒ
ØˆÔØˆŒà××ÐÜœ8 T×%?Ñ%?ÔB_Õ%_Ô`Ø×(Ñ(Ö*ñ r%   c               ó   € V ^8„  d   QhRR/# rÛ   r!   )r"   s   "r#   r$   ri   l  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.restorel  s/   € Ø××Ðà×)Ñ)Ô+Üœ8 T×%?Ñ%?Ö@ñ 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   r  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_relativer  s¡   € à—‘˜A•ÕˆØ—‘˜A•ÕˆØ�Œ6Ø�L‰Lœ×)Ñ)¨2¨#Ó.Õ/Ø�!ŒVØ�L‰Lœ×*Ñ*¨2Ó.Ô/à�Œ6Ø�L‰LœŸ™¨¨Ó,Ö-Ø�!ŒVØ�L‰Lœ×)Ñ)¨"Ó-Ö.ñ 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   € ØˆqŒ5�A˜”EÜÐ3°A°3°b¸¸Ð<Ó=Ð=à�}‰}Ô §]¡]°T·[±[Õ%@Ô @Ø×Ñ×#Ñ#¤E¨(°BÓ$7Ö8à×Ñ Ô%Ø˜ˆDŽJr%   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×:Ò:Üœ<›>Ó*Ð*à�M‰M× Ñ  4§=¡=×#4Ñ#4Õ4°qÕ8Ø�M‰M×Ñ $§-¡-×"4Ñ"4Õ4°qÕ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Üœ<›>Ó*Ð*à—J‘JˆÐ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       # )zŠReturn 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  € ÷
 ˜TŸY™Y¨q˜Y×1Ò1Ùà×Ñ×$Ñ$×&Ó&Ø×"Ñ"Ó$ˆCØŠ{Ùà�}‰}Ô 8Ô8Ü˜X rÓ*Ð*à�}‰}¤	Ô)°·±×1CÑ1C×1L×1LÐ1LçÙÙàŸ	™	×*Ñ*ˆIØ%ŸO™O×7Ñ7Ð7ˆGà�dŒ{ä ¨TÔ2Ð2Ø×*Ñ*¨aÔ/à!’Ø˜”ä—j‘j ×!:Ñ!:Ó;�ßØ ×2Ñ2´[×@Ô@Ø % c U˜m™Ø"×4Ñ4´z×AÔAà×(Ñ(×/Ñ/´¸%ÀcÔ0JÔKÜ$¨°VÔ<Ð<Ü  U°Ô5Ð5ßÚáØ×"×"Ð"à#ŸN™N¨4×+;Ñ+;×+DÑ+DÀiÖP�DØ×$Ñ$×)Ñ)¨$Ö/ñ Qâà×*Ñ*¬Z×7Ô7ð !×2Ñ2´[×@Ô@à×$Ñ$×+Ñ+¬E°eÀ#Ô,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                óL   € V P                  \        4       RV n        . V n        R# )zWipe the screenNr  )r�   ÚCLEARr�   rx   r­   s   &r#   ÚclearÚWindowsConsole.clearý  s   € à�‰”UÔØˆŒ
ØˆŽ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Õ ˆØ�1Œf˜TŸ[™[¨Ÿ^œ^Ø��FŠAØ×Ñ˜Aœs 1§k¡k°D·M±MÕ&AÀAÕ&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# )zŠFlush 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÷ ‰s�s—}‘}¬	Ö1ØŸI™I×.Ñ.�	Ø ×)×)Ð)ÙØ—_‘_×0Ñ0�Ø˜”<áØ˜”:Ø˜$•J�BØ—’˜"•—ñ "ð  ˆr%   c               ó    € V ^8„  d   QhRRRR/# ©r   r7  zfloat | Noner   r  r!   )r"   s   "r#   r$   ri   5  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#   Úwait_for_eventÚWindowsConsole.wait_for_event5  sE   € àŠ?Ü‰Gä˜'“lˆGÜ!¤(¨GÓ4ˆØ”+ÔÜœ>Ó+Ó,Ð,Ø”LÔ ÙÙr%   c               ó    € V ^8„  d   QhRRRR/# ry  r!   )r"   s   "r#   r$   ri   B  s   € ÷ 
ñ 
˜Lð 
¨Tñ 
r%   c                ór   € V P                   P                  4       '       * ;'       g    V P                  V4      # )z!
Wait for events on the console.
)r|   r@  r€  )r5   r7  s   &&r#   r?  ÚWindowsConsole.waitB  s6   € ð
 × Ñ ×&Ñ&Ó(Ô(÷ ,ð ,Ø×"Ñ" 7Ó+ð	
r%   c               ó   € V ^8„  d   QhRR/# rÛ   r!   )r"   s   "r#   r$   ri   K  s   € ÷ 8ñ 8˜ñ 8r%   c                	ó   € \        R 4      h)zNo repaint supportrT  r­   s   &r#   ÚrepaintÚWindowsConsole.repaintK  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‡  r<   Ú__classcell__)rƒ   s   @r#   rb   rb   ‡   sß   ø† ÷$ò $õLC!ðJ ñ!ó ð!õ*#÷X+ò&"ò"ò"ò"õ$õ$õ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ò   iP  ÚdwSizerô   ÚwAttributesr!  ÚdwMaximumWindowSizer!   N)	r8   r9   r:   r;   r   r   r   Ú_fields_r<   r!   r%   r#   rò   rò   P  s1   † à	�6ÐØ	˜VÐ$Ø	˜ÐØ	�ZÐ Ø	 Ð'ð„Hr%   rò   c                  ó&   € ] tR tRtR]3R]3.tRtR# )ÚCONSOLE_CURSOR_INFOiZ  r�  ÚbVisibler!   N)r8   r9   r:   r;   r
   r   r“  r<   r!   r%   r#   r•  r•  Z  s   † à	�5ÐØ	�TÐð„Hr%   r•  c                  ó&   € ] tR tRtR]3R]3.tRtR# )rÇ   ia  rÈ   Ú
Attributesr!   N)r8   r9   r:   r;   r   r   r“  r<   r!   r%   r#   rÇ   rÇ   a  s   † à	˜ÐØ	�tÐð„Hr%   rÇ   c                  ó&   € ] tR tRtR]3R ]3.tRtR# )ÚCharih  rÈ   r!   N)r8   r9   r:   r;   r   r	   r“  r<   r!   r%   r#   rš  rš  h  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  io  rE  ÚwRepeatCountrG  ÚwVirtualScanCoderF  rI  r!   N)
r8   r9   r:   r;   r   r   rš  r
   r“  r<   r!   r%   r#   rD  rD  o  s8   † à	�TÐØ	˜ÐØ	˜DÐ!Ø	˜TÐ"Ø	�$ˆØ	˜eÐ$ð„Hr%   rD  c                  ó    € ] tR tRtR]3.tRtR# )ÚWindowsBufferSizeEventiz  r�  r!   N)r8   r9   r:   r;   r   r“  r<   r!   r%   r#   rŸ  rŸ  z  s   † Ø˜6Ð"Ð#„Hr%   rŸ  c                  ó&   € ] tR tRtR]3R]3.tRtR# )ÚConsoleEventi~  rD  rŸ  r!   N)r8   r9   r:   r;   rD  rŸ  r“  r<   r!   r%   r#   r¡  r¡  ~  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%   iöÿÿÿiõÿÿÿ)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}  r{  Ú	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ô 	òôE8�Wô E8ôR ô ô˜)ô ô�	ô ôˆ5ô ôˆv×Ñô ô$˜V×-Ñ-ô $ô�6—<‘<ô ô>�9ô >ð €	Ø€Ø€
Ø€ØÐ àÐ ØÐ ØÐ ØÐ ØÐ Ø &Ð àÐ Ø Ð Ø%)Ð "àÐ ØÐ à‡<�<�7ÕÙ�z°$Ô7€Ià—?‘?×/Ñ/€LØ"˜G€LÔØ!€LÔà!*×!EÑ!EÐàØ�ŠÐ1Ó2ð+ÐÔ'ð *.ÐÔ&à )× DÑ DÐàÙ�
ÓÙ�
ÓØÙ�	Óð*ÐÔ&ð )-ÐÔ%à×-Ñ-€NØ%¡w¨u£~Ð6€NÔØ!€NÔà×-Ñ-€NØ% u˜o€NÔØ!€NÔà ×2Ñ2ÐØ!'©°Ó)>ÀÁwÈuÃ~Ð VÐÔØ#ÐÔð (×?Ñ?ÐØ(. xÐÔ$Ø&*ÐÔ#à#×7Ñ7ÐØ$*¨E ?ÐÔ Ø"'ÐÔáÐ.Ó/€IÙÐ,Ó-‚Hò2ð €LØ!*ÐØ )ÐØ€NØ€NØ ÐØ'ÐØ#ÐØ€IØ‚HøðWç5õõô�7÷ ûð ô Ø	ƒBðús   ÁK? Á.L& Ë?!L#Ì&	L3Ì2L3