D,biah%SSKJr SSKrSSKrSSKrSSKrSSKrSSKrSSKrSSK r SSK r SSK J r SSK Jr SSKJrJr SSKJrJrJr SSKJr SS KJr SS KJr S r\(aSS KJrJrJrJ r J!r! OS r Sr!"SS\"5r#\RH\RH\#4r%\&"\RN\RP\RR/5r*Sr+\,"\SS5r-\,"\SS5r.SSjr//SQr00r1S\2S'\0H r3\/"\1\35 M C3C/\Rh"S5r5\Rlr6S\2S'"SS\5r9g!\7a "SS5r8\8r6N f=f) ) annotationsN)ioctl)curses)ConsoleEvent) tcgetattr tcsetattr TermState)trace) EventQueue)wlenF) AbstractSetIOLiteraloverloadcastcgN)funcs ;/opt/alt/python313/lib64/python3.13/_pyrepl/unix_console.pyr1sDcU$rr)typvals rrr2sCrc,^\rSrSrSU4SjjrSrU=r$)InvalidTerminal5cB>[TU][RU5 gr)super__init__errnoEIO)selfmessage __class__s rr#InvalidTerminal.__init__6s G,rr)r'strreturnNone)__name__ __module__ __qualname____firstlineno__r#__static_attributes__ __classcell__r(s@rrr5s --rrrepaintFIONREAD TIOCGWINSZdict[int, int]c^SU-n[[U5(aX[[U5'gg)NzB%d)hasattrtermiosgetattr) dictionaryrate baudrate_names radd_baudrate_if_supportedr?Gs,DLMw &&6:77M23'r)rniiiiKii` i,iii2iiXKi%ratedicts\$<([0-9]+)((?:/|\*){0,2})>ztype[select.poll]pollc.\rSrSrSrSrSSSjjrSrg) MinimalPollvcgrrr&s rr#MinimalPoll.__init__ws rcXlgrfd)r&rPflags rregisterMinimalPoll.registerzsGrNcUc([R"UR///5up#nU$[R"UR///US- 5up#nU$)N)selectrP)r&timeoutrwes rrGMinimalPoll.poll~sS -- 2r:aH!-- 2r7T>JaHrrOr)rW float | Noner+z list[int])r-r.r/r0r#rRrGr1rrrrIrIvs    rrIc^\rSrSrS.S/U4SjjjrSrS0SjrS1SjrS2SjrSr Sr S r S r S3S jr S4S5S jjrS6S7S jjrSr\(aSrOSrSrSrSrSr\(aSrOSrSr\S5rS8SjrS8SjrSrSrSr Sr!Sr"S r#S!r$S9S"jr%S9S#jr&S9S$jr'S%r(S&r)S'r*S(r+S)r,S*r-\.4S+jr/\04S:S,jjr1S-r2U=r3$); UnixConsolec>[TU]XX45 [5UlURR UR [ R5 SUlSUl [R"U=(d SUR5 X0l [R"5S:H=(a [ R""S5S:HUlUR'[)UR 5[+5S9 [2S(S)S jj5n[2S*S j5nS(S*S jjnU"S5UlU"SSS9UlU"S5UlU"SSS9UlU"SSS9UlU"SSS9UlU"SSS9Ul U"SSS9Ul!U"SSS9Ul"U"SSS9Ul#U"S5Ul$U"SSS9Ul%U"SSS9Ul&U"SSS9Ul'U"SSS9Ul(U"S5Ul)U"S SS9Ul*U"S!SS9Ul+U"S"SS9Ul,U"S#SS9Ul-U"S$SS9Ul.U"S%SS9Ul/U"S&SS9Ul0U"S'SS9Ul1URe5 [gUR URh5Ul5S Ul6[nRn"[nRpURr5 g![,a!n[/SUR0S S 35eSnAff=f)+a Initialize the UnixConsole. Parameters: - f_in (int or file-like object): Input file descriptor or object. - f_out (int or file-like object): Output file descriptor or object. - term (str): Terminal name. - encoding (str): Encoding to use for I/O operations. rrNDarwin TERM_PROGRAMApple_Terminal)ignoreztermios failure (r)cgrrcapoptionals r _my_getstr(UnixConsole.__init__.._my_getstrsrcgrrrgs rrjrksBErcd[R"U5nU(dUc[SUS35eU$)Nz#terminal doesn't have the required z capability)rtigetstrr)rhrirXs rrjrks7$A %9#kJHrbelcivisT)riclearcnormcubcub1cudcud1cufcuf1cupcuucuu1dch1dchelhpaichich1indpadrirmkxsmkx)F)rhr*rizLiteral[False]r+bytes)rhr*riboolr+z bytes | None):r"r#rGpollobrRinput_fdrVPOLLIN input_bufferinput_buffer_posr setupterm output_fdtermplatformsystemosgetenvis_apple_terminal_UnixConsole__input_fd_setr frozenset_error RuntimeErrorargsr_bel_civis_clear_cnorm_cub_cub1_cud_cud1_cuf_cuf1_cup_cuu_cuu1_dch1_dch_el_hpa_ich_ich1_ind_pad_ri_rmkx_smkx_UnixConsole__setup_movementr encoding event_queuecursor_visiblesignalSIGCONT_sigcont_handler)r&f_inf_outrrrZrjr(s rr#UnixConsole.__init__s d5f  T]]FMM: !t~~6 OO  ) > .)-==   A    $-- 8  M 16   .      E E u%  48  )  48 ut4 6 ut4 6 ut4 6 u% ut4 6 6 ut4 d#ut4 ut4 6 ut4 ut4 dT26 6  %dmmT]]C fnnd&;&;>  rcfUR5(d&[R"URS5UlURUR UR U-nU=R [ U5- slUR [ UR5:aSUlSUlU$)N'rr)rrreadrrrr)r&nrets r__readUnixConsole.__reads""$$ " u =D  5 58M8MPQ8QR S)  C(9(9$: : #D $%D ! rcXlg)zb Change the encoding used for I/O operations. Parameters: - encoding (str): New encoding to use. N)r)r&rs rchange_encodingUnixConsole.change_encodings ! rc Uup4UR(d[UR5[[U5UR5:aUR 5 UR S[UR5S- 5 URS5 S[UR54UlURRS5 [UR5[[U5UR5:aMOa[UR5[U5:a?URRS5 [UR5[U5:aM?[U5UR:aSUlURUlURupVUR=pxURn XH:aUnOPXHU -:aXI- S-nO@US:a:[U5X-:a)[[U5U - S5nURS5 URXwU -n XX-n Xx:aUR(aUR 5 URURSS5 SU4Ul[!Xx- 5HAn URUR5 U R#S5 U R%SS5 MC OXx:aUR&(aUR 5 URURURS- S5 SXpR-S- 4Ul[!X- 5H@n URUR&5 U R#S5 U RS5 MB Xl [)[!XU -5X5H un nnX:wdMUR+XX5 M" [U 5n U [U 5:a\UR 5 UR SU 5 SU 4UlURUR,5 U S- n U [U 5:aM\UR/5 UR15UlUR3X45 UR55 g)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. rr N)_UnixConsole__gone_tallrscreenminheight_UnixConsole__hide_cursor_UnixConsole__move_UnixConsole__writeposxyappend_UnixConsole__move_tall_UnixConsole__offsetmaxr_UnixConsole__write_coderrangepopinsertrzip _UnixConsole__write_changed_liner_UnixConsole__show_cursorcopy move_cursor flushoutput)r&rc_xycxcypxpy old_offsetoffsetroldscrnewscriyoldlinenewlines rrefreshUnixConsole.refreshsdkk"SVdkk%BB""$ As4;;/!34 T"DKK 00  ""2& dkk"SVdkk%BBdkk"S[0 ""2&dkk"S[0 v; $ D **DK"mm+  ;F F? "[1_F aZCK&/9Vv-q1F MM" Zv*=>1  488      diiA .JDJ:./!!$((+ 2 a$0 TYY      diiq! <J4q88DJ6./!!$)), 1  b!0  v/ @   !))!gBA K#f+o    KK1 ADJ   dhh ' FA #f+o kkm    rcX R:dX RUR-:a&URR[ SS55 gUR X5 X4UlUR5 g)zy Move the cursor to the specified position on the screen. Parameters: - x (int): X coordinate. - y (int): Y coordinate. scrollN)rrrrrrrrr&xrs rrUnixConsole.move_cursorLs\ }} ]]T[[%@ @    # #E(D$9 : KK DJ    rc/Ul[UR5UlURR 5nU=R [ R[ R-[ R-)-slU=R[ R)-sl U=R[ R[ R-)-sl U=R[ R-sl U=R [ R -slU=R"[ R$[ R&-[ R(-)-slU=R"[ R*-slSUR,[ R.'SUR,[ R0'UR3U5 UR4(a![6R8"UR:S5 /UlUR?5uUl Ul!SUl"SUl#URHUl%SUl&UROURP5 [RRR"[RRTURV5Ul,UR]5 g![Za Nf=f)z2 Prepare the console for input/output operations. rrs[?7lrrN)/_UnixConsole__bufferr r_UnixConsole__svtermstateriflagr:INPCKISTRIPIXONoflagOPOSTcflagCSIZEPARENBCS8BRKINTlflagICANONECHOIEXTENISIGccVMINVTIMErrrwriterrgetheightwidthrwidthrr_UnixConsole__move_shortrr_UnixConsole__maybe_write_coderrSIGWINCH_UnixConsole__sigwinch old_sigwinch ValueError$_UnixConsole__enable_bracketed_paste)r&raws rrUnixConsole.prepare[s &t}}5  %%' w}}w~~5 DEE  w}}%%  w}}w~~566  W[[  W^^#  w~~ 4w~~EFF  W\\!  w|| !w}} C   ! ! HHT^^[ 1 "&"5"5"7 TZ ''    +  & foot OD  %%'   s-4J22 J?>J?cUR5 URUR5 UR5 UR UR 5 UR (a![R"URS5 [US5(a3[R"[RUR5 U? gg![a1nSSKnUR!5UR#5LaUeSnAN:SnAff=f)z* Restore the console to the default state s[?7hrrN)%_UnixConsole__disable_bracketed_pasterrrrrrrrrr9rrrr threadingcurrent_thread main_thread)r&rZr%s rrUnixConsole.restores &&(  +  D../  ! ! HHT^^[ 1 4 ( (  foot/@/@A ! )  ++-1F1F1HHGI s/C D 'DD cN[SUS9 URRU5 g)z. Push a character to the console event queue. zpush char {char!r})charN)r rpush)r&r*s r push_charUnixConsole.push_chars# ". d#rcU(dURSS9(dgURR5(aDURUR S55 URR5(aMDURR5$![ anUR [ R:XaDURR5(dURR5sSnA$SnAMUR [ R:Xa[[ R5eeSnAff=f)z Get an event from the console event queue. Parameters: - block (bool): Whether to block until an event is available. Returns: - Event: Event object from the event queue. r)rWNr) waitremptyr,_UnixConsole__readOSErrorr$EINTRgetr% SystemExit)r&blockerrs r get_eventUnixConsole.get_eventsTYYqY1$$&& NN4;;q>2$$&& ##%% yyEKK/#//5577#'#3#3#7#7#99$eii/(33 s$ B E$AD>:E8D>>EcURR5(+=(d; UR5=(d$ [URR U55$)z! Wait for events on the console. )rr0rrrrG)r&rWs rr/UnixConsole.waitsK   &&( ( /""$ /DKK$$W-. rcTU(aUR5 gUR5 g)zS Set the visibility of the cursor. Parameters: - visible (bool): Visibility flag. N)rr)r&visibles rset_cursor_visUnixConsole.set_cursor_viss        rcV[[RS5[[RS54$![[[ 4aY [ UR[S5nO![a gf=f[R"SU5SSup#U(dgX#4s$f=f)^ Get the height and width of the console. Returns: - tuple: Height and width of the console. LINESCOLUMNSsPhhhhr) intrenvironKeyError TypeErrorrrrr6r2structunpack)r&sizerrs rrUnixConsole.getheightwidths %2::g./RZZ 5J1KKKi4 %"  KHD"!" & fd ;Aa @ !}$ %s97:B(A,+B(, A:6B(9A::&B("B('B(c[[RS5[[RS54$![[[ 4a gf=f)rArBrCrD)rIrrJrKrLrrLs rrrPsG 2::g./RZZ 5J1KKKi4  s7:AAcb[R"UR[R5 g)z+ Discard any pending input on the console. N)r:tcflushrTCIFLUSHrLs r forgetinputUnixConsole.forgetinputs  w'7'78rcURHZupU(aURU5 M[R"URUR UR S55 M\ URSS2 g)z Flush the output buffer. replaceN)r_UnixConsole__tputsrrrencoder)r&textiscodes rrUnixConsole.flushoutputsR!MMLD T"T]]I)NO * MM! rcV[UR5S- nUS:a5URU(d!US-nUS:aURU(dM!URS[XRUR -S- 55 UR S5 UR5 g)z8 Finish console operations and flush the output buffer. rrz N)rrrrrrrr)r&rs rfinishUnixConsole.finishs  q 1fT[[^ FA1fT[[^^ As1kkDMM9A=>? V rcZURUR5 UR5 g)z Emit a beep sound. N)rrrrLs rbeepUnixConsole.beeps"  * rcX[SSS5nURR5(dyURR5nU=RUR- slU=R UR - slURR5(dMy[ R"S[UR[S55SnURU5n[X@RS5nU=RU- slU=R U- slU$)i Get pending events from the console event queue. Returns: - Event: Pending event from the event queue. keyrrrsrrX)rrr0r4datar!rMrNrrr5r1r*rr&rZe2amountr!rgs r getpendingUnixConsole.getpendingseR%A&&,,..%%))+"''!&&,,.. ]]3dmmX{(STUVWF++f%CsMM95D FFdNF EESLEHrc[SSS5nURR5(dyURR5nU=RUR- slU=R UR - slURR5(dMySnUR U5n[X@RS5nU=RU- slU=R U- slU$)rerfrrrrX) rrr0r4rgr!r1r*rrhs rrkrl3seR%A&&,,..%%))+"''!&&,,.. F++f%CsMM95D FFdNF EESLEHrcURUR5 SUlURUlSUl/Ulg)z Clear the console screen. rrN)rrrrrrrrLs rrqUnixConsole.clearHs9 $++&&&   rcpSSKnUR5(a UR$g![a gf=fNr)posix ImportError_is_inputhook_installed _inputhook)r&rrs r input_hookUnixConsole.input_hookRs@    ( ( * *## # +  s ( 55cF[R"URS5 g)Ns[?2004hrrrrLs r__enable_bracketed_paste$UnixConsole.__enable_bracketed_paste[ 0rcF[R"URS5 g)Ns[?2004lryrLs r__disable_bracketed_paste%UnixConsole.__disable_bracketed_paste^r|rc|UR(a#UR(aUR UlO?UR (a#UR(aURUlO [S5eUR(a#UR(aURUl O?UR(a#UR(aUR Ul O [S5eUR"(aUR"UlO?UR&(a'[(R*"UR&S5UlOSUlUR,(aUR,UlO?UR0(a'[(R*"UR0S5UlOSUlUR2Ulg)zC Set up the movement functions based on the terminal capabilities. z"insufficient terminal (horizontal)z insufficient terminal (vertical)rN)r_UnixConsole__move_x_hpa_UnixConsole__move_xrr_UnixConsole__move_x_cub_cufrr_UnixConsole__move_x_cub1_cuf1rrr_UnixConsole__move_y_cuu_cud_UnixConsole__move_yrr_UnixConsole__move_y_cuu1_cud1rr|rrtparmrrrrrrLs r__setup_movementUnixConsole.__setup_movementas YY499 11DM ZZDJJ 33DMCD D 99 11DM ZZDJJ 33DMAB B :: DI YY TYY2DIDI :: DI YY TYY2DIDI'' rc[[U5[U55nSnSnSnSn UHn X:a OU [U 5- n US- nM Xu:a@X&X6:Xa6X6S:wa.U[X65- nUS- nXu:aX&X6:Xa X6S:waM.X&SX6S-S:XaUR(aXRS:Xa&XpRS:aX(UX8S-US-:XaUnUn[X65n UR Xq5 UR UR5 UR X65 X{-U4UlGOXu:ajX&S-SX6S-S:XaZ[X&5[X65:Xa>[X65n UR Xq5 UR X65 X{-U4UlGOUR(GaUR(a[U5UR:XaU[U5S- :aX6S-SX&S:XaUR5 UR URS- U5 URS- U4UlUR UR5 [X65n UR Xq5 UR UR5 UR X65 U S-U4UlOyUR5 UR Xq5 [U5[U5:aUR UR5 UR X6S5 [U5U4UlSU;aURSU5 gg)NrrrHr) rrrrrrrr|rrrr) r&rrrpx_coordminlenx_posx_coordpx_posjccharacter_widths r__write_changed_line UnixConsole.__write_changed_lines T']DM2 A} aLA aKF   '.0&( tGN+ +G QJE  '.0&( 6?gaik2 2tyyZZ]"jjm+5)WaZ%!)-LL""7>2O KK #   dii ( LL ( 2A5DJ   $ (<<W^$W^(<<"7>2O KK # LL ( 2A5DJ III W +$w-!++ B'7+<<    KK Q *a*DJ   dii ("7>2O KK #   dii ( LL ((1,a/DJ    KK #G}tG},!!$((+ LL )g)DJ W    Q " rc>URRUS45 grq)rr)r&r[s r__writeUnixConsole.__writes dAY'rchURR[R"U/UQ76S45 gNr)rrrrr&fmtrs r __write_codeUnixConsole.__write_codes' fll366:;rc:U(aUR"U/UQ76 ggr)rrs r__maybe_write_codeUnixConsole.__maybe_write_codes    c )D ) rcURceURceXRS- nUS:aURX R-5 gUS:a URU*UR-5 ggNrr)rrrrr&rdys r__move_y_cuu1_cud1UnixConsole.__move_y_cuu1_cud1srzz%%%zz%%% A  6   b::o . !V   sdjj0 1rcXRS- nUS:aURURU5 gUS:aURURU*5 ggr)rrrrrs r__move_y_cuu_cudUnixConsole.__move_y_cuu_cudO A  6   dii , !V   dii" -rcbXRS:waURURU5 ggrq)rrr)r&rs r __move_x_hpaUnixConsole.__move_x_hpas) 1    dii + rcURceURceXRS- nUS:aURURU-5 gUS:a URURU*-5 ggrq)rrrrr&rdxs r__move_x_cub1_cuf1UnixConsole.__move_x_cub1_cuf1stzz%%%zz%%% A  6   djj2o . !V   djjRC0 1rcXRS- nUS:aURURU5 gUS:aURURU*5 ggrq)rrrrrs r__move_x_cub_cufUnixConsole.__move_x_cub_cufrrcHURU5 URU5 gr)rrrs r __move_shortUnixConsole.__move_short s a arcSX R- s=::aUR:dO X R- 5eURURX R- U5 grq)rrrrrs r __move_tallUnixConsole.__move_tallsIA %3 3FQ5FF3 $))Q%6:rcUR5uUlUlURR [ SS55 g)Nresize)rrrrrrrs r __sigwinchUnixConsole.__sigwinchs4"&"5"5"7 TZ h 56rclUR(a#URUR5 SUlggrq)rrrrLs r __hide_cursorUnixConsole.__hide_cursors*     # #DKK 0"#D  rclUR(d#URUR5 SUlggr)rrrrLs r __show_cursorUnixConsole.__show_cursors*""  # #DKK 0"#D #rcrUR(dTSURS4UlURS5 [UR5SUR -/-nXlgSUR 4UlURSUR 5 URSUR -/-nXlg)Nrr ) rrrrrrrrr)r&nss rr4UnixConsole.repaint sDJJqM)DJ LL T[[!Vdjj%8$99BKDMM)DJ KK4== ) 344BKrc[RURR5nUR U5nU(d"[ R "URU5 gUR5upV[ R "URUSU5 XSn[URS55nSURS5;aXpR-nUR(a9Ub6X7-S- n[ R "URURU-5 O"[R"[U5S- 5 GM )zA Python implementation of the curses tputs function; the curses one can't really be wrapped in a sane manner. I have the strong suspicion that this is complexity that will never do anyone any good.rN*rHrUg@@)rFr4rospeedsearchrrrspanrIgrouprrtimesleepfloat) r&rprogbpsmrrdelayncharss r__tputsUnixConsole.__tputs,sll4--445 C A-668DA HHT^^S!W -b'C OEqwwqz!$yyS_+-V);< 5<&01rc[UR[RU5 g![RanUR SU;aeSnAgSnAff=f)NTrF)r rr: TCSADRAINerrorr)r&staterdtes r__input_fd_setUnixConsole.__input_fd_setGsN   dmmW%6%6 >  }} wwqz' s%(AAA).__buffer __gone_tall__move__move_x__move_y__offset __svtermstaterrrrrrrrrrrrrrrrrrrrrrrrrr|rrrrrrrrrrrrr)rrrr)rIO[bytes] | intrrrr*rr*)r+r)rrIr+r)rr*r+r,)r*z int | bytesr+r,)T)r6rr+z Event | Noner)rWr\r+r)r+r,)rrIr+r,)rr rdzAbstractSet[int]r+r)4r-r.r/r0r#rrr1rrrrrr,r8r/r>r6rrUrr_rbr5rkrqpropertyrvr r$rrrrrrrrrrrrrrrr4 delayprogrY_error_codes_to_ignorerr1r2r3s@rr^r^sd!"!" P=P=P= P=  P=P=d !Qf &(P"*$&>  ! %* 9   . *$$11"(HU#n(<*2.,2.;7$ $ !*2<$:  !    rr^)r<r7r=rIr+r,): __future__rr$rrerVrrMr:rrfcntlrrrconsolerr fancy_termiosr r r r unix_eventqueuer utilsr TYPE_CHECKINGtypingrrrrrrrrrrr%ENXIOEPERMrSIGWINCH_EVENTr;r5r6r?potential_baudratesrF__annotations__r=compilerrGAttributeErrorrIr^rrrrsD,#  #::' ?? H D-l- -- 7"EIIu{{EKK#HI 7J - WlD 1 ;.. Dh-  # JJ7 8 $kkD ),K 'K +   D%sD11EE