Files
ServerSync/lib/prompt_toolkit/input/__pycache__/win32.cpython-314.pyc

219 lines
41 KiB
Plaintext
Raw Normal View History

2026-02-12 02:28:23 +02:00
+
9<><39>i<EFBFBD>z<00><01>F<00>^RIHt^RIt^RIt^RIHt^RIHt^RIH t ^RI
H t ]PR8XgQh] 'g ^RI t ^RIHt^R IHtHtHt^R
IHtHt^R IHtHtHtHtHt^R IHt^R IHtH t ^RI!H"t"^RI#H$t$^RI%H&t&H't'^RI(H)t)H*t*H+t+H,t,H-t-^RI.H/t/^RI0H1t1^RI2H3t3.R*Ot4^t5^t6^t7^t8Rt9!RR]14t:!RR]:4t;!RR4t<!RR4t=!R R!4t>] R"R#l4t?] R$R%l4t@!R&R4tA!R'R]A4tBR(R)ltCR#)+<2B>)<01> annotationsN)<01>abstractmethod)<01>get_running_loop)<01>contextmanager)<01>SPHINX_AUTODOC_RUNNING<4E>win32)<01>windll)<03>Array<61>byref<65>pointer)<02>DWORD<52>HANDLE)<05>Callable<6C>ContextManager<65>Iterable<6C>Iterator<6F>TextIO<49><01>run_in_executor_with_context)<02>create_win32_event<6E>wait_for_handles)<01>KeyPress)<01>Keys)<02> MouseButton<6F>MouseEventType)<05> INPUT_RECORD<52>KEY_EVENT_RECORD<52>MOUSE_EVENT_RECORD<52>STD_INPUT_HANDLE<4C>
EventTypes)<01>REVERSE_ANSI_SEQUENCES)<01>Input)<01> Vt100Parser<65>
Win32Input<EFBFBD>ConsoleInputReader<65>raw_mode<64> cooked_modeic<01>F<00>]tRt^<tRtRRlt]]RRl44tRt R#)<08>_Win32InputBasez3
Base class for `Win32Input` and `Win32PipeInput`.
c<01><00>V^8<>dQhRR/#<00><03><00>return<72>None<6E>)<01>formats"<22>A/tmp/pip-target-wqrk2shd/lib/python/prompt_toolkit/input/win32.py<70> __annotate__<5F>_Win32InputBase.__annotate__As<00><00>-<2D>-<2D>$<24>-<2D>c <09>$<00>\4VnR#<00>N)<02> _Win32Handles<65> win32_handles<65><01>selfs&r1<00>__init__<5F>_Win32InputBase.__init__As <00><00>*<2A>_<EFBFBD><04>r4c<01><00>V^8<>dQhRR/#<00>r,r-rr/)r0s"r1r2r3Fs<00><00> <0A> <0A><06> r4c <09><00>R#r6r/r9s&r1<00>handle<6C>_Win32InputBase.handleDs<00><00> r4)r8N)
<EFBFBD>__name__<5F>
__module__<EFBFBD> __qualname__<5F>__firstlineno__<5F>__doc__r;<00>propertyrr@<00>__static_attributes__r/r4r1r)r)<s(<00><00><08>-<2D><0E><13> <0A><14><0E> r4r)c<01><>a<00>]tRt^JtRtRRV3RllltRRltRRltRR ltR
R lt ]
R R l4t RRlt RRlt RRltRRltRRlt]
RRl4tRtV;t#)r$z4
`Input` class that reads from the Windows console.
c<01> <00>V^8<>dQhRRRR/#)r,<00>stdinz TextIO | Noner-r.r/)r0s"r1r2<00>Win32Input.__annotate__Os<00><00> =<3D> =<3D>m<EFBFBD> =<3D>t<EFBFBD> =r4c <09><><<01>\SV`4\4VnVVP'd\ 4VnR#\ 4VnR#r6)<07>superr;<00>_is_win_vt100_input_enabled<65>_use_virtual_terminal_input<75>Vt100ConsoleInputReader<65>console_input_readerr%)r:rK<00> __class__s&&<26>r1r;<00>Win32Input.__init__Os><00><><00> <0A><07><18><1A>+F<>+H<><04>(<28> <0C> <0F> +<2B> +<2B> +<2B>(?<3F>(A<>D<EFBFBD> %<25>(:<3A>(<<3C>D<EFBFBD> %r4c<01> <00>V^8<>dQhRRRR/#)r,<00>input_ready_callback<63>Callable[[], None]r-<00>ContextManager[None]r/)r0s"r1r2rLZs<00><00>><3E>><3E>+=<3D>><3E>BV<42>>r4c <0A><00>\W4#)zR
Return a context manager that makes this input active in the current
event loop.
)<01>attach_win32_input)r:rVs&&r1<00>attach<63>Win32Input.attachZs<00><00>
"<22>$<24>=<3D>=r4c<01><00>V^8<>dQhRR/#<00>r,r-rXr/)r0s"r1r2rLas<00><00>(<28>(<28>,<2C>(r4c <0A><00>\V4#)zc
Return a context manager that makes sure that this input is not active
in the current event loop.
)<01>detach_win32_inputr9s&r1<00>detach<63>Win32Input.detachas<00><00>
"<22>$<24>'<27>'r4c<01><00>V^8<>dQhRR/#<00>r,r-<00>list[KeyPress]r/)r0s"r1r2rLhs<00><00>6<>6<>><3E>6r4c <09>H<00>\VPP44#r6)<03>listrR<00>readr9s&r1<00> read_keys<79>Win32Input.read_keyshs<00><00><13>D<EFBFBD>-<2D>-<2D>2<>2<>4<>5<>5r4c<01><00>V^8<>dQhRR/#rdr/)r0s"r1r2rLks<00><00>6<>6<>N<EFBFBD>6r4c <09>6<00>VPP4#r6)rR<00>
flush_keysr9s&r1rm<00>Win32Input.flush_keysks<00><00><13>(<28>(<28>3<>3<>5<>5r4c<01><00>V^8<>dQhRR/#<00>r,r-<00>boolr/)r0s"r1r2rLos<00><00><15><15><04>r4c <09><00>R#)Fr/r9s&r1<00>closed<65>Win32Input.closedns<00><00>r4c<01><00>V^8<>dQhRR/#r^r/)r0s"r1r2rLrs<00><00>
<EFBFBD>
<EFBFBD>.<2E>
r4c <09>.<00>\VPR7#))<01> use_win10_virtual_terminal_input)r&rPr9s&r1r&<00>Win32Input.raw_moders<00><00><17>-1<>-M<>-M<>
<EFBFBD>
r4c<01><00>V^8<>dQhRR/#r^r/)r0s"r1r2rLws<00><00><1D><1D>1<>r4c <09><00>\4#r6)r'r9s&r1r'<00>Win32Input.cooked_modews
<00><00><1A>}<7D>r4c<01><00>V^8<>dQhRR/#)r,r-<00>intr/)r0s"r1r2rLzs<00><00>"<22>"<22><03>"r4c <09>><00>\PP4#r6)<03>sysrK<00>filenor9s&r1r<><00>Win32Input.filenozs<00><00>
<13>y<EFBFBD>y<EFBFBD><1F><1F>!<21>!r4c<01><00>V^8<>dQhRR/#)r,r-<00>strr/)r0s"r1r2rL<00>s<00><00><1D><1D><03>r4c <09><00>R#)z win32-inputr/r9s&r1<00>typeahead_hash<73>Win32Input.typeahead_hash<73>s<00><00>r4c<01><00>V^8<>dQhRR/#r+r/)r0s"r1r2rL<00>s<00><00>*<2A>*<2A>t<EFBFBD>*r4c <09>:<00>VPP4R#r6)rR<00>closer9s&r1r<><00>Win32Input.close<73>s<00><00> <0C>!<21>!<21>'<27>'<27>)r4c<01><00>V^8<>dQhRR/#r>r/)r0s"r1r2rL<00>s<00><00>0<>0<><06>0r4c <09>.<00>VPP#r6)rRr@r9s&r1r@<00>Win32Input.handle<6C>s<00><00><13>(<28>(<28>/<2F>/<2F>/r4)rPrRr6)rBrCrDrErFr;r[rarirmrGrsr&r'r<>r<>r<>r@rH<00> __classcell__)rSs@r1r$r$Jsg<00><><00><08> =<3D> =<3D>><3E>(<28>6<>6<><0E><15><0E><15>
<EFBFBD>
<1D>"<22><1D>*<2A><0E>0<><0E>0r4c <01>Z<00>]tRt^<5E>tRt/R]P bR]PbR]PbR]PbR]PbR]PbR]PbR ]PbR
]PbR ]PbR ]P bR ]P"bR]P$bR]P&bR]P(bR]P*bR]P,b/R]P.bR]P0bR]P2bR]P4bR]P6bR]P8bR]P:bR]P<bR]P>bR]P@bR]PBbR]PDbR]PFbR ]PHbR!]PJbR"]PLbCt'/^!]PPb^"]PRb^#]PTb^$]PVb^%]PXb^&]PZb^']P\b^(]P^b^-]P`b^.]Pbb^p]Pdb^q]Pfb^r]Phb^s]Pjb^t]Plb^u]Pnb^v]Ppb^w]Pr^x]Pt^y]Pv^z]Px^{]Pz/Ct>^t?^t@^tA^tB^tCR9R#R$lltDR%R&ltER'R(ltFR)R*ltGR+R,ltHR-R.ltI]JR/R0l4tK]JR1R2l4tLR3R4ltMR5R6ltNR7tOR8#):r%zp
:param recognize_paste: When True, try to discover paste actions and turn
the event into a BracketedPaste.
<EFBFBD><1B><00><01><02><03><04><05><06><07><08> <09>
<EFBFBD> <0B> <0C> <0A><0E><0F><10><11><12><13><14><15><16><17><18><19><1A><1C><1D><1E><1F>c<01> <00>V^8<>dQhRRRR/#)r,<00>recognize_pasterqr-r.r/)r0s"r1r2<00>ConsoleInputReader.__annotate__<5F>s<00><00> D<01> D<01><04> D<01><04> Dr4c <09><><00>RVnWnV\PP 4'd4\ \ PP\44Vn
R#\P!R\P\P,4Vn\ \P !VP44Vn
R#)N<>CONIN$)<11>_fdconr<6E>rrK<00>isattyrr <00>kernel32<33> GetStdHandlerr@<00>os<6F>open<65>O_RDWR<57>O_BINARY<52>msvcrt<72> get_osfhandle)r:r<>s&&r1r;<00>ConsoleInputReader.__init__<5F>s}<00><00><1A><04> <0B>.<2E><1C> <0A> <0E>9<EFBFBD>9<EFBFBD> <1B> <1B> <1D> <1D> <20><16><1F><1F>!=<3D>!=<3D>>N<>!O<>P<>D<EFBFBD>K<EFBFBD><1C>'<27>'<27>(<28>B<EFBFBD>I<EFBFBD>I<EFBFBD><02> <0B> <0B>,C<>D<>D<EFBFBD>K<EFBFBD> <20><16>!5<>!5<>d<EFBFBD>k<EFBFBD>k<EFBFBD>!B<>C<>D<EFBFBD>Kr4c<01><00>V^8<>dQhRR/#r+r/)r0s"r1r2r<><00><00><00><00>"<22>"<22>t<EFBFBD>"r4c <0A>f<00>VPe#\P!VP4R#R#<00>z Close fdcon.N<>r<>r<>r<>r9s&r1r<><00>ConsoleInputReader.close<73><00>!<00><00> <0F>;<3B>;<3B> "<22> <0E>H<EFBFBD>H<EFBFBD>T<EFBFBD>[<5B>[<5B> !<21> #r4c<01><00>V^8<>dQhRR/#<00>r,r-zIterable[KeyPress]r/)r0s"r1r2r<><00>s<00><00>< <20>< <20>(<28>< r4c# <0A><>"<00>Rp\^4p\V,pV!4p\VP.^R7'gR#\P
P VP\V4V\V44\VPW$44pVUu.uFq`PV4NK pp\VPV44pVP'd<>VPV4'd<>\V4pVF<>p.p V'dy\VP \"4'd0VP \"P$\"P&09d*V P)VP*4\-V4pK<>V 'd,\1\"P2RP5V 44x<00>VfK<>Vx<00>K<> R#TRjx<01>L
R#uupi \.dRpK<>i;iL5i)<05><>
Return a list of `KeyPress` instances. It won't return anything when
there was nothing to read. (This function doesn't block.)
http://msdn.microsoft.com/en-us/library/windows/desktop/ms684961(v=vs.85).aspx
<EFBFBD><00><01>timeoutN<74>)r rrr@r r<><00>ReadConsoleInputWr rg<00> _get_keys<79>_insert_key_data<74>_merge_paired_surrogatesr<73><00> _is_paste<74>iter<65>
isinstance<EFBFBD>keyr<00>ControlJ<6C>ControlM<6C>append<6E>data<74>next<78> StopIterationr<00>BracketedPaste<74>join)
r:<00> max_countrh<00>arrtype<70> input_records<64>all_keysr<73><00>gen<65>kr<6B>s
& r1rh<00>ConsoleInputReader.read<61>s<><00><00><00><19> <09><14>Q<EFBFBD>x<EFBFBD><04><1E><19>*<2A><07><1F> <09> <0A> <20><14><1B><1B> <0A>q<EFBFBD>9<>9<> <12> <0F><0F><0F>)<29>)<29> <10>K<EFBFBD>K<EFBFBD><17><1D>/<2F><19>G<EFBFBD>D<EFBFBD>M<EFBFBD>
<EFBFBD> <18><04><0E><0E>t<EFBFBD>;<3B><<3C><08>;C<01>C<>(<28>3<EFBFBD>)<29>)<29>#<23>.<2E>(<28><08>C<><18><04>5<>5<>h<EFBFBD>?<3F>@<40><08> <0F> <1F> <1F> <1F>D<EFBFBD>N<EFBFBD>N<EFBFBD>8<EFBFBD>$<<3C>$<<3C><16>x<EFBFBD>.<2E>C<EFBFBD><19><01><1A><04><17>"<22>1<EFBFBD>5<EFBFBD>5<EFBFBD>$<24>/<2F>/<2F><18>u<EFBFBD>u<EFBFBD><14><1D><1D><04> <0A> <0A> ><3E>><3E><18>K<EFBFBD>K<EFBFBD><01><06><06>'<27>!<21> <20><13>I<EFBFBD><01><18>"<22>4<EFBFBD>#6<>#6<><02><07><07><04> <0A>F<>F<><14>=<3D><1B>G<EFBFBD>#<19>& <20> <1F> <1F><>9D<01><>()<29>!<21> <20><01>!<21><> <20>s\<00>BG:<01> G<04>9AG:<01>>G:<01>A*G:<01> G$<02> G:<01>,G:<01> G:<01>G8<04> G:<01>$ G5<05>1G:<01>4G5<05>5G:c<01><00>V^8<>dQhRR/#rdr/)r0s"r1r2r<>*s<00><00><12><12>N<EFBFBD>r4c <09><00>.#r6r/r9s&r1rm<00>ConsoleInputReader.flush_keys*s<00><00><11> r4c<01> <00>V^8<>dQhRRRR/#)r,<00> key_pressrr-r/)r0s"r1r2r<>.s<00><00> -<2D> -<2D>(<28> -<2D>x<EFBFBD> -r4c <0A><><00>VP'dV#\VP\4'd#\P
!VPR4pMRp\ VPV4#)z0
Insert KeyPress data, for vt100 compatibility.
r<EFBFBD>)r<>r<>r<>rr!<00>getr)r:r<>r<>s&& r1r<><00>#ConsoleInputReader._insert_key_data.sP<00><00> <15>><3E>><3E>><3E><1C> <1C> <15>i<EFBFBD>m<EFBFBD>m<EFBFBD>T<EFBFBD> *<2A> *<2A>)<29>-<2D>-<2D>i<EFBFBD>m<EFBFBD>m<EFBFBD>R<EFBFBD>@<40>D<EFBFBD><15>D<EFBFBD><17> <09> <0A> <0A>t<EFBFBD>,<2C>,r4c<01>$<00>V^8<>dQhRRRRRR/#)r,rhr r<><00>Array[INPUT_RECORD]r-<00>Iterator[KeyPress]r/)r0s"r1r2r<><s$<00><00>6<>6<><19>6<>*=<3D>6<> <1B>6r4c# <0A><>"<00>\VP4F<>pW#,pVP\9gK"\ VP
\VP,4p\ V\4'd.VP'dVPV4Rjx<01>L
K<>\ V\4'gK<>VPV4Rjx<01>L
K<> R#L=L 5i)<02>B
Generator that yields `KeyPress` objects from the input records.
N) <0C>range<67>value<75> EventTyper <00>getattr<74>Eventr<74>r<00>KeyDown<77>_event_to_key_pressesr<00> _handle_mouse)r:rhr<><00>i<>ir<69>evs&&& r1r<><00>ConsoleInputReader._get_keys<s<><00><00><00> <17>t<EFBFBD>z<EFBFBD>z<EFBFBD>"<22>A<EFBFBD><1E>!<21>B<EFBFBD> <12>|<7C>|<7C>z<EFBFBD>)<29><1C>R<EFBFBD>X<EFBFBD>X<EFBFBD>z<EFBFBD>"<22>,<2C>,<2C>'?<3F>@<40><02><1E>b<EFBFBD>"2<>3<>3<><02>
<EFBFBD>
<EFBFBD>
<EFBFBD>#<23>9<>9<>"<22>=<3D>=<3D>=<3D><1F><02>$6<>7<>7<>#<23>1<>1<>"<22>5<>5<>5<>!#<23>><3E>6<>s5<00>3C#<01>AC#<01> C#<01>!C<06>"C#<01>C#<01>C!<06> C#<01>!C#c<01> <00>V^8<>dQhRRRR/#)r,<00> key_pressesrer-r<>r/)r0s"r1r2r<>Us<00><00>*<2A>*<2A>n<EFBFBD>*<2A>AS<41>*r4c# <0A>"<00>RpVF<>p\VP\4'*pT;'d!RVPu;8*;'dR8*MupT;'d!RVPu;8*;'dR8*MupV'dWV'dIVPVP,PRR4P R4p\ Wf4pMVx<00>RpV'dTpK<>Vx<00>K<> V'dVx<00>R#R#5i)zU
Combines consecutive KeyPresses with high and low surrogates into
single characters
Nu<00><><EFBFBD>u<00><><EFBFBD>u<00><><EFBFBD>u<00><><EFBFBD>z utf-16-le<6C> surrogatepass)r<>r<>r<00>encode<64>decoder)r<00>buffered_high_surrogater<65><00>is_text<78>is_high_surrogate<74>is_low_surrogate<74>fullchars& r1r<><00>+ConsoleInputReader._merge_paired_surrogatesTs<><00><00><00> #'<27><1F><1E>C<EFBFBD>$<24>S<EFBFBD>W<EFBFBD>W<EFBFBD>d<EFBFBD>3<>3<>G<EFBFBD> '<27> K<> K<>H<EFBFBD><03><07><07>,K<>,K<>8<EFBFBD>,K<> <1D>&<26>J<>J<>8<EFBFBD>s<EFBFBD>w<EFBFBD>w<EFBFBD>+J<>+J<>(<28>+J<> <1C>&<26>#<23>1<>4<>4<>s<EFBFBD>w<EFBFBD>w<EFBFBD>><3E><1F><16> <0B>_<EFBFBD>=<3D><1F><16> <0B>,<2C><1D>
#<23>8<EFBFBD>6<>C<EFBFBD>1<>1<>*.<2E>'<27> <20>*-<2D>'<27><19> <09>+<1F>. #<23>)<29> )<29> #<23>s5<00>/C?<01>C?<01> C?<01>C?<01>5C?<01>C?<01> AC?<01>#C?<01>7C?c<01> <00>V^8<>dQhRRRR/#)r,<00>keysrer-rqr/)r0s"r1r2r<>vs<00><00>6<>6<><0E>6<>4<EFBFBD>6r4c <0A><><00>^p^pVFVp\VP\4'g
V^, pVP\P8XgKMV^, pKX V^8<>;'dV^8<>#)a 
Return `True` when we should consider this list of keys as a paste
event. Pasted text on windows will be turned into a
`Keys.BracketedPaste` event. (It's not 100% correct, but it is probably
the best possible way to detect pasting of text and handle that
correctly.)
)r<>r<>rr<>)r <00>
text_count<EFBFBD> newline_countr<74>s& r1r<><00>ConsoleInputReader._is_pasteuse<00><00><17>
<EFBFBD><19> <0A><15>A<EFBFBD><1D>a<EFBFBD>e<EFBFBD>e<EFBFBD>T<EFBFBD>*<2A>*<2A><1A>a<EFBFBD><0F>
<EFBFBD><10>u<EFBFBD>u<EFBFBD><04> <0A> <0A>%<25><1D><11>"<22> <0A> <16> <1D><01>!<21>5<>5<>j<EFBFBD>A<EFBFBD>o<EFBFBD>5r4c<01> <00>V^8<>dQhRRRR/#)r,r<>rr-rer/)r0s"r1r2r<><00>s<00><00>B<16>B<16>(8<>B<16>^<5E>Br4c <0A><> <00>\V\4'dVP'gQhRpVPpVPP
pVP RR4pVR8XdDVPVP9d(\VPVP,R4pMaWPP9dGVPV,\P8XdRp\VPV,V4pM \WD4pW0P,'gW0P,'Ed^W0P,'EdEV'Ed<\P \P"\P$\P&\P(\P*\P,\P.\P0\P2\P4\P6\P8\P:\P<\P>\P@\PB/ pVPEVPFVPF4Vn#W0P,'gW0P,'EdcV'EdZ\P \PH\P$\PJ\P(\PL\P,\PN\P0\PP\P4\PR\P8\PT\PV\PX\P<\PZ\P@\P\/
pVPEVPFVPF4Vn#W0P,'Ed<>V'Edx\P^\P`\P \Pb\P$\Pd\P(\Pf\P,\Ph\P0\Pj\P4\Pl\P8\Pn\PV\Pp\P<\Pr\P@\Pt/ pVPEVPFVPF4Vn#W0P,'gW0P,'d4V'd,VPvR8Xd\\PxR4pW0P,'gW0P,'dDV'd<VPF\P8Xd\\PzR4V.#V'd:W0P|,pV'd\\PzR4V.#V.#.#)zE
For this `KEY_EVENT_RECORD`, return a list of `KeyPress` instances.
Nzutf-8r<00>r<><00>
<EFBFBD> )?r<>rr<><00>ControlKeyState<74>uChar<61> UnicodeCharr<00>VirtualKeyCode<64>keycodesr<00>mappingsrr<><00>LEFT_CTRL_PRESSED<45>RIGHT_CTRL_PRESSED<45> SHIFT_PRESSED<45>Left<66>ControlShiftLeft<66>Right<68>ControlShiftRight<68>Up<55>ControlShiftUp<55>Down<77>ControlShiftDown<77>Home<6D>ControlShiftHome<6D>End<6E>ControlShiftEnd<6E>Insert<72>ControlShiftInsert<72>PageUp<55>ControlShiftPageUp<55>PageDown<77>ControlShiftPageDownr<6E>r<><00> ControlLeft<66> ControlRight<68> ControlUp<55> ControlDown<77> ControlHome<6D>
ControlEnd<EFBFBD> ControlInsert<72>Delete<74> ControlDelete<74> ControlPageUp<55>ControlPageDown<77>Tab<61>BackTab<61> ShiftLeft<66>
ShiftRight<EFBFBD>ShiftUp<55> ShiftDown<77> ShiftHome<6D>ShiftEnd<6E> ShiftInsert<72> ShiftDelete<74> ShiftPageUp<55> ShiftPageDownr<6E><00> ControlSpace<63>Escape<70>LEFT_ALT_PRESSED)r:r<><00>result<6C>control_key_state<74>u_char<61>
ascii_char<EFBFBD>mapping<6E> meta_presseds&& r1r<><00>(ConsoleInputReader._event_to_key_presses<65>s<00><00><1A>"<22>.<2E>/<2F>/<2F>B<EFBFBD>J<EFBFBD>J<EFBFBD>J<EFBFBD>><3E>><3E>"&<26><06><1E>.<2E>.<2E><19><13><18><18>%<25>%<25><06><1B>]<5D>]<5D>7<EFBFBD>O<EFBFBD><<3C>
<EFBFBD> <12>V<EFBFBD> <1B><11> <20> <20>D<EFBFBD>M<EFBFBD>M<EFBFBD>1<>!<21>$<24>-<2D>-<2D><02>0A<30>0A<30>"B<>B<EFBFBD>G<><06><><19>]<5D>]<5D>*<2A><17>=<3D>=<3D><1A>,<2C><04> <0A> <0A>=<3D><1C><1B>"<22>$<24>-<2D>-<2D>
<EFBFBD>";<3B>V<EFBFBD>D<><06>!<21>&<26>1<><06>
"<22>$:<3A>$:<3A>:<3A>:<3A>$<24>'><3E>'><3E>><3E>><3E>!<21>$6<>$6<>6<>6<><16><06><15> <09> <09>4<EFBFBD>0<>0<><14>
<EFBFBD>
<EFBFBD>D<EFBFBD>2<>2<><14><07><07><14>,<2C>,<2C><14> <09> <09>4<EFBFBD>0<>0<><14> <09> <09>4<EFBFBD>0<>0<><14><08><08>$<24>.<2E>.<2E><14> <0B> <0B>T<EFBFBD>4<>4<><14> <0B> <0B>T<EFBFBD>4<>4<><14> <0A> <0A>t<EFBFBD>8<>8<>
'<0E>G<EFBFBD>!<21><1B><1B>V<EFBFBD>Z<EFBFBD>Z<EFBFBD><16><1A><1A><<3C>F<EFBFBD>J<EFBFBD> <1E> 6<> 6<> 6<> 6<> <20>#:<3A>#:<3A>:<3A>:<3A><14>f<EFBFBD><14> <09> <09>4<EFBFBD>+<2B>+<2B><14>
<EFBFBD>
<EFBFBD>D<EFBFBD>-<2D>-<2D><14><07><07><14><1E><1E><14> <09> <09>4<EFBFBD>+<2B>+<2B><14> <09> <09>4<EFBFBD>+<2B>+<2B><14><08><08>$<24>/<2F>/<2F><14> <0B> <0B>T<EFBFBD>/<2F>/<2F><14> <0B> <0B>T<EFBFBD>/<2F>/<2F><14> <0B> <0B>T<EFBFBD>/<2F>/<2F><14> <0A> <0A>t<EFBFBD>3<>3<> <0E>G<EFBFBD>!<21><1B><1B>V<EFBFBD>Z<EFBFBD>Z<EFBFBD><16><1A><1A><<3C>F<EFBFBD>J<EFBFBD> <1D>1<>1<> 1<> 1<>f<EFBFBD>f<EFBFBD><14><08><08>$<24>,<2C>,<2C><14> <09> <09>4<EFBFBD>><3E>><3E><14>
<EFBFBD>
<EFBFBD>D<EFBFBD>O<EFBFBD>O<EFBFBD><14><07><07><14><1C><1C><14> <09> <09>4<EFBFBD>><3E>><3E><14> <09> <09>4<EFBFBD>><3E>><3E><14><08><08>$<24>-<2D>-<2D><14> <0B> <0B>T<EFBFBD>-<2D>-<2D><14> <0B> <0B>T<EFBFBD>-<2D>-<2D><14> <0B> <0B>T<EFBFBD>-<2D>-<2D><14> <0A> <0A>t<EFBFBD>1<>1<> <0E>G<EFBFBD>!<21><1B><1B>V<EFBFBD>Z<EFBFBD>Z<EFBFBD><16><1A><1A><<3C>F<EFBFBD>J<EFBFBD>
"<22>$:<3A>$:<3A>:<3A>:<3A>$<24>'><3E>'><3E>><3E>><3E><16><16> <0B> <0B>s<EFBFBD>"<22><1D>d<EFBFBD>/<2F>/<2F><13>5<>F<EFBFBD> "<22>$:<3A>$:<3A>:<3A>:<3A>$<24>'><3E>'><3E>><3E>><3E><16><16>
<EFBFBD>
<EFBFBD>d<EFBFBD>m<EFBFBD>m<EFBFBD>+<2B><1C>T<EFBFBD>[<5B>[<5B>"<22>-<2D>v<EFBFBD>6<> 6<> <12>,<2C>/D<>/D<>D<>L<EFBFBD><1B> <20><14><1B><1B>b<EFBFBD>1<>6<EFBFBD>:<3A>:<3A><1E>x<EFBFBD><0F><16>Ir4c<01> <00>V^8<>dQhRRRR/#)r,r<>rr-rer/)r0s"r1r2r<>s<00><00>-8<>-8<> 2<>-8<>~<7E>-8r4c <0A><><00>VPpVPpRp\PpV\,'d*V^8<>d\
P pMH\
PpM7V\8Xd\PpMV\8Xd\PpV\,'d\
PpVf)V^8<>d\
PpM\
PpRP!VP"VP"\%VP&P(4\%VP&P*4.4p\-\.P0V4.#)z;
Handle mouse events. Return a list of KeyPress instances.
N<EFBFBD>;)<19>
EventFlags<EFBFBD> ButtonStater<00>NONE<4E> MOUSE_WHEELEDr<00> SCROLL_UP<55> SCROLL_DOWN<57>FROM_LEFT_1ST_BUTTON_PRESSED<45>LEFT<46>RIGHTMOST_BUTTON_PRESSED<45>RIGHT<48> MOUSE_MOVED<45>
MOUSE_MOVE<EFBFBD>
MOUSE_DOWN<EFBFBD>MOUSE_UPr<50>r<>r<><00> MousePosition<6F>X<>Yrr<00>WindowsMouseEvent)r:r<><00> event_flags<67> button_state<74>
event_type<EFBFBD>buttonr<6E>s&& r1r<><00> ConsoleInputReader._handle_mouses<00><00><19>m<EFBFBD>m<EFBFBD> <0B><19>~<7E>~<7E> <0C>,0<>
<EFBFBD>)<29>.<2E>.<2E><06> <17><1D> &<26> &<26><1B>a<EFBFBD><1F>+<2B>5<>5<>
<EFBFBD>+<2B>7<>7<>
<EFBFBD><1C>;<3B>;<3B>$<24>)<29>)<29><06><1D>!9<>9<>$<24>*<2A>*<2A><06> <17><1B> $<24> $<24>'<27>2<>2<>J<EFBFBD> <16> <1D><1B>a<EFBFBD><1F>+<2B>6<>6<>
<EFBFBD>,<2C>4<>4<>
<EFBFBD><12>x<EFBFBD>x<EFBFBD><16> <0C> <0C><1A> <20> <20><13>B<EFBFBD>$<24>$<24>&<26>&<26>'<27><13>B<EFBFBD>$<24>$<24>&<26>&<26>'<27>  <0E>
<EFBFBD><04><19><14>/<2F>/<2F><14>6<>7<>7r4)r<>r@r<>N)T)PrBrCrDrErFrrJrI<00>ControlA<6C>ControlB<6C>ControlC<6C>ControlD<6C>ControlE<6C>ControlF<6C>ControlG<6C>ControlH<6C>ControlIr<49><00>ControlK<6C>ControlLr<4C><00>ControlN<6C>ControlO<6C>ControlP<6C>ControlQ<6C>ControlR<6C>ControlS<6C>ControlT<6C>ControlU<6C>ControlV<6C>ControlW<6C>ControlX<6C>ControlY<6C>ControlZ<6C>ControlBackslash<73>ControlSquareClose<73>ControlCircumflex<65>ControlUnderscore<72> Backspacerr.r0r*r(r r$r"r&r,r9<00>F1<46>F2<46>F3<46>F4<46>F5<46>F6<46>F7<46>F8<46>F9<46>F10<31>F11<31>F12rrK<00>RIGHT_ALT_PRESSEDrrrr;r<>rhrmr<>r<><00> staticmethodr<64>r<>r<>r<>rHr/r4r1r%r%<00>s<><00><00><08> "<06><0F><14><1B><1B>"<06><0F><14>"<22>"<22>"<06> <10><14><1D><1D>"<06> <10><14><1D><1D> "<06>
<10><14><1D><1D> "<06> <10><14><1D><1D> "<06> <10><14><1D><1D>"<06> <10><14><1D><1D>"<06> <10><14><1D><1D>"<06> <10><14><1D><1D>"<06> <10><14><1D><1D>"<06> <10><14><1D><1D>"<06> <10><14><1D><1D>"<06> <10><14><1D><1D>"<06> <10><14><1D><1D>"<06> <10><14><1D><1D>!"<06>" <10><14><1D><1D>#"<06>$ <10><14><1D><1D>%"<06>& <10><14><1D><1D>'"<06>( <10><14><1D><1D>)"<06>* <10><14><1D><1D>+"<06>, <10><14><1D><1D>-"<06>. <10><14><1D><1D>/"<06>0 <10><14><1D><1D>1"<06>2 <10><14><1D><1D>3"<06>4 <10><14><1D><1D>5"<06>6 <10><14><1D><1D>7"<06>8 <10><14><1D><1D>9"<06>: <10><14>&<26>&<26>;"<06>< <10><14>(<28>(<28>="<06>> <10><14>'<27>'<27>?"<06>@ <10><14>'<27>'<27>A"<06>B <10><14><1E><1E>C"<06>H<EFBFBD>J<06>
<EFBFBD>D<EFBFBD>K<EFBFBD>K<EFBFBD><06> <0B>D<EFBFBD>M<EFBFBD>M<EFBFBD><06> <0B>D<EFBFBD>H<EFBFBD>H<EFBFBD> <06>
<0B>D<EFBFBD>I<EFBFBD>I<EFBFBD> <06> <0B>D<EFBFBD>I<EFBFBD>I<EFBFBD><06> <0B>D<EFBFBD>G<EFBFBD>G<EFBFBD><06> <0B>D<EFBFBD>J<EFBFBD>J<EFBFBD><06> <0B>D<EFBFBD>I<EFBFBD>I<EFBFBD><06> <0B>D<EFBFBD>K<EFBFBD>K<EFBFBD><06> <0B>D<EFBFBD>K<EFBFBD>K<EFBFBD><06> <0C>T<EFBFBD>W<EFBFBD>W<EFBFBD><06> <0C>T<EFBFBD>W<EFBFBD>W<EFBFBD><06> <0C>T<EFBFBD>W<EFBFBD>W<EFBFBD>!<06>" <0C>T<EFBFBD>W<EFBFBD>W<EFBFBD>#<06>$ <0C>T<EFBFBD>W<EFBFBD>W<EFBFBD>%<06>& <0C>T<EFBFBD>W<EFBFBD>W<EFBFBD>'<06>( <0C>T<EFBFBD>W<EFBFBD>W<EFBFBD>)<06>* <0C>T<EFBFBD>W<EFBFBD>W<EFBFBD> <0B>T<EFBFBD>W<EFBFBD>W<EFBFBD> <0B>T<EFBFBD>X<EFBFBD>X<EFBFBD> <0B>T<EFBFBD>X<EFBFBD>X<EFBFBD> <0B>T<EFBFBD>X<EFBFBD>X<EFBFBD>3<06>H<EFBFBD>8<1E><14><1E><15><1A>M<EFBFBD><1E><15><1F><16> D<01>"<22>
< <20>|<12> -<2D>6<>0<12>*<2A><12>*<2A>@<12>6<><12>6<>*B<16>H-8<>-8r4c<01>V<00>]tRtRtRtRRltRRltRRltR R
ltR R lt R t
R#)rQi?a<>
Similar to `ConsoleInputReader`, but for usage when
`ENABLE_VIRTUAL_TERMINAL_INPUT` is enabled. This assumes that Windows sends
us the right vt100 escape sequences and we parse those with our vt100
parser.
(Using this instead of `ConsoleInputReader` results in the "data" attribute
from the `KeyPress` instances to be more correct in edge cases, because
this responds to for instance the terminal being in application cursor keys
mode.)
c<01><00>V^8<>dQhRR/#r+r/)r0s"r1r2<00>$Vt100ConsoleInputReader.__annotate__Ls<00><00>D<01>D<01>$<24>Dr4c <09><>a<00>RSn.Sn\V3Rl4SnS\P
P 4'd4\\PP\44Sn R#\P!R\P\P ,4Sn\\"P$!SP44Sn R#)Nc<01>:<<01>SPPV4#r6)<02>_bufferr<72>)r<>r:s&<26>r1<00><lambda><3E>2Vt100ConsoleInputReader.__init__.<locals>.<lambda>Qs<00><><00>d<EFBFBD>l<EFBFBD>l<EFBFBD>1<>1<>)<29><r4r<>)r<>r<>r#<00> _vt100_parserrrKr<>rr r<>r<>rr@r<>r<>r<>r<>r<>r<>r9sfr1r;<00> Vt100ConsoleInputReader.__init__Ls<><00><><00><1A><04> <0B>')<29><04> <0C>(<28> <<3C>
<EFBFBD><04><1A> <0A> <0E>9<EFBFBD>9<EFBFBD> <1B> <1B> <1D> <1D> <20><16><1F><1F>!=<3D>!=<3D>>N<>!O<>P<>D<EFBFBD>K<EFBFBD><1C>'<27>'<27>(<28>B<EFBFBD>I<EFBFBD>I<EFBFBD><02> <0B> <0B>,C<>D<>D<EFBFBD>K<EFBFBD> <20><16>!5<>!5<>d<EFBFBD>k<EFBFBD>k<EFBFBD>!B<>C<>D<EFBFBD>Kr4c<01><00>V^8<>dQhRR/#r+r/)r0s"r1r2r<>]r<>r4c <0A>f<00>VPe#\P!VP4R#R#r<>r<>r9s&r1r<><00>Vt100ConsoleInputReader.close]r<>r4c<01><00>V^8<>dQhRR/#r<>r/)r0s"r1r2r<>bs<00><00>#<16>#<16>(<28>#r4c <0A><><00>Rp\^4p\V,pV!4p\VP.^R7'g.#\P
P VP\V4V\V44VPW$4FpVPPV4K VPp.Vn V#)r<>r<>r<>) r rrr@r r<>r<>r r<>r<><00>feedr<64>)r:r<>rhr<>r<><00>key_datarLs& r1rh<00>Vt100ConsoleInputReader.readbs<><00><00><19> <09><14>Q<EFBFBD>x<EFBFBD><04><1E><19>*<2A><07><1F> <09> <0A> <20><14><1B><1B> <0A>q<EFBFBD>9<>9<><15>I<EFBFBD> <0F><0F><0F>)<29>)<29> <10>K<EFBFBD>K<EFBFBD><17><1D>/<2F><19>G<EFBFBD>D<EFBFBD>M<EFBFBD>
<EFBFBD> <1D><0E><0E>t<EFBFBD>;<3B>H<EFBFBD> <10> <1E> <1E> #<23> #<23>H<EFBFBD> -<2D><<3C><16><1C><1C><06><19><04> <0C><15> r4c<01><00>V^8<>dQhRR/#rdr/)r0s"r1r2r<><00>s<00><00> <16> <16>N<EFBFBD> r4c <0A>`<00>VPP4VPp.VnV#)zK
Flush pending keys and return them.
(Used for flushing the 'escape' key.)
)r<><00>flushr<68>)r:rLs& r1rm<00>"Vt100ConsoleInputReader.flush_keys<79>s-<00><00> <0A><1A><1A> <20> <20>"<22><16><1C><1C><06><19><04> <0C><15> r4c<01>$<00>V^8<>dQhRRRRRR/#)r,rhr r<>r<>r-z Iterator[str]r/)r0s"r1r2r<><00>s$<00><00>%<25>%<25><19>%<25>*=<3D>%<25> <16>%r4c# <0A>x"<00>\VP4F<>pW#,pVP\9gK"\ VP
\VP,4p\ V\4'gKeVP'gKyVPPpVR8wgK<>Vx<00>K<> R#5i)r<>rN) r<>r<>r<>r r<>r<>r<>rr<>rr)r:rhr<>r<>r<>r<>rNs&&& r1r<><00>!Vt100ConsoleInputReader._get_keys<79>s}<00><00><00> <17>t<EFBFBD>z<EFBFBD>z<EFBFBD>"<22>A<EFBFBD><1E>!<21>B<EFBFBD> <12>|<7C>|<7C>z<EFBFBD>)<29><1C>R<EFBFBD>X<EFBFBD>X<EFBFBD>z<EFBFBD>"<22>,<2C>,<2C>'?<3F>@<40><02><1E>b<EFBFBD>"2<>3<>3<><02>
<EFBFBD>
<EFBFBD>
<EFBFBD><1F>X<EFBFBD>X<EFBFBD>1<>1<>F<EFBFBD><1D><16>'<27>$<24> <0C>#<23>s<00>3B:<01>>B:<01>=B:<01>B:<01>0
B:)r<>r<>r<>r@N) rBrCrDrErFr;r<>rhrmr<>rHr/r4r1rQrQ?s'<00><00>
<08>D<01>""<22>
#<16>J <16>%<25>%r4rQc<01>><00>]tRtRtRtRRltRRltRRltR tR
#) r7i<>a<>
Utility to keep track of which handles are connectod to which callbacks.
`add_win32_handle` starts a tiny event loop in another thread which waits
for the Win32 handle to become ready. When this happens, the callback will
be called in the current asyncio event loop using `call_soon_threadsafe`.
`remove_win32_handle` will stop this tiny event loop.
NOTE: We use this technique, so that we don't have to use the
`ProactorEventLoop` on Windows and we can wait for things like stdin
in a `SelectorEventLoop`. This is important, because our inputhook
mechanism (used by IPython), only works with the `SelectorEventLoop`.
c<01><00>V^8<>dQhRR/#r+r/)r0s"r1r2<00>_Win32Handles.__annotate__<5F>s<00><00>4<>4<>$<24>4r4c <09>"<00>/Vn/VnR#r6<00><02>_handle_callbacks<6B>_remove_eventsr9s&r1r;<00>_Win32Handles.__init__<5F>s<00><00>@B<><04><1E>24<32><04>r4c<01>$<00>V^8<>dQhRRRRRR/#)r,r@r<00>callbackrWr-r.r/)r0s"r1r2r<><00>s#<00><00>)6<>)6<>v<EFBFBD>)6<>9K<39>)6<>PT<50>)6r4c <0A>aaaaaa<07>SPpVf \R4hVPS4\4oSVPV&\ 4oSVP V&RVVV3RlloRVVVV3Rllo\SSR7R#)z'
Add a Win32 handle to the event loop.
N<EFBFBD>Invalid handle.c<01><00>V^8<>dQhRR/#r+r/)r0s"r1r2<00>4_Win32Handles.add_win32_handle.<locals>.__annotate__<5F>s<00><00> ><3E> ><3E>t<EFBFBD> >r4c<01>V<<03>S!4\SSR7R# \SSR7i;i)<02><01>loopNr)r<>r<><00>waits<00><><EFBFBD>r1<00>ready<64>-_Win32Handles.add_win32_handle.<locals>.ready<64>s#<00><><00> ><3E><18>
<EFBFBD>,<2C>T<EFBFBD><04>=<3D><>,<2C>T<EFBFBD><04>=<3D>s<00><00>(c<01><00>V^8<>dQhRR/#r+r/)r0s"r1r2r<><00>s<00><00> 1<> 1<>d<EFBFBD> 1r4c<01><><<04>\SS.4pVSJd"\PPS4R#SP S4R#r6)rr r<><00> CloseHandle<6C>call_soon_threadsafe)rLr@r<>r<><00> remove_events <20><><EFBFBD><EFBFBD>r1r<><00>,_Win32Handles.add_win32_handle.<locals>.wait<69>s?<00><><00>&<26>|<7C>V<EFBFBD>&<<3C>=<3D>F<EFBFBD><15><1C>%<25><16><0F><0F>+<2B>+<2B>L<EFBFBD>9<><16><14>)<29>)<29>%<25>0r4r<>)r<><00>
ValueError<EFBFBD>remove_win32_handlerr<>rr<>r)r:r@r<><00> handle_valuer<65>r<>r<>r<>s&ff @@@@r1<00>add_win32_handle<6C>_Win32Handles.add_win32_handle<6C>s<><00><><00><1E>|<7C>|<7C> <0C> <17> <1F><1C>.<2E>/<2F> /<2F> <0A> <20> <20><16>(<28><1F>!<21><04>/7<><04><1E><1E>|<7C>,<2C>*<2A>+<2B> <0C>,8<><04><1B><1B>L<EFBFBD>)<29> ><3E> ><3E> 1<> 1<> %<25>T<EFBFBD><04>5r4c<01> <00>V^8<>dQhRRRR/#)r,r@rr-zCallable[[], None] | Noner/)r0s"r1r2r<><00>s<00><00><18><18>&<26><18>5N<35>r4c <0A>><00>VPfR#VPPVP4p\PP V4VPPVP4# \ dL3i;i \ dR#i;i)z\
Remove a Win32 handle from the event loop.
Return either the registered handler or `None`.
N)r<>r<><00>popr r<><00>SetEvent<6E>KeyErrorr<72>)r:r@<00>events&& r1r<><00>!_Win32Handles.remove_win32_handle<6C>s<><00><00>
<12><<3C><<3C> <1F><17> ,<2C><18>'<27>'<27>+<2B>+<2B>F<EFBFBD>L<EFBFBD>L<EFBFBD>9<>E<EFBFBD> <13>O<EFBFBD>O<EFBFBD> $<24> $<24>U<EFBFBD> +<2B> <18><17>)<29>)<29>-<2D>-<2D>f<EFBFBD>l<EFBFBD>l<EFBFBD>;<3B> ;<3B><> <18> <11> <10> <11><><18> <18><17> <18>s#<00>%A<<00>$B <00>< B
<03> B
<03> B<03>Br<>N) rBrCrDrErFr;r<>r<>rHr/r4r1r7r7<00>s<00><00> <08>4<>)6<>V<18>r4r7c<01>$<00>V^8<>dQhRRRRRR/#)r,<00>inputr)r<>rWr-<00>Iterator[None]r/)r0s"r1r2r2s)<00><00>F<01>F<01> <1A>F<01>&8<>F<01><13>Fr4c#<05>v"<00>VPpVPpVPf \R4hVP V4pVP W14Rx<00>VP V4V'dVP W44R#R# TP T4T'dTP Y44ii;i5i)z<>
Context manager that makes this input active in the current event loop.
:param input: :class:`~prompt_toolkit.input.Input` object.
:param input_ready_callback: Called when the input is ready to read.
Nr<EFBFBD><00>r8r@r<>r<>r<>r<>)r<>r<>r8r@<00>previous_callbacks&& r1rZrZs<><00><00><00><1A>'<27>'<27>M<EFBFBD> <12>\<5C>\<5C>F<EFBFBD> <0A>|<7C>|<7C><1B><18>*<2A>+<2B>+<2B>&<26>9<>9<>&<26>A<><15><11>"<22>"<22>6<EFBFBD>4<>F<01> <0A><15>)<29>)<29>&<26>1<> <1C> <19> *<2A> *<2A>6<EFBFBD> E<> <1D><> <16>)<29>)<29>&<26>1<> <1C> <19> *<2A> *<2A>6<EFBFBD> E<> <1D>s<00>AB9<01>B <00>.B9<01> -B6<03>6B9c<01> <00>V^8<>dQhRRRR/#)r,r<>r)r-r<>r/)r0s"r1r2r2#s<00><00> F<01> F<01>o<EFBFBD> F<01>.<2E> Fr4c#<01>"<00>VPpVPpVPf \R4hVP V4pRx<00>V'dVP W#4R#R# T'dTP Y#4ii;i5i)Nr<4E>r<>)r<>r8r@r<>s& r1r`r`"sv<00><00><00><19>'<27>'<27>M<EFBFBD> <12>\<5C>\<5C>F<EFBFBD> <0A>|<7C>|<7C><1B><18>*<2A>+<2B>+<2B>%<25>9<>9<>&<26>A<><15>F<01> <0A> <1C> <19> *<2A> *<2A>6<EFBFBD> E<> <1D><> <1C> <19> *<2A> *<2A>6<EFBFBD> E<> <1D>s<00>AB<01>A'<00>
B<01>'B<03>Bc<01>N<00>]tRtRtRtR RRlltRRltRR ltR
R ltR t R#)r&i3z<>
::
with raw_mode(stdin):
''' the windows terminal is now in 'raw' mode. '''
The ``fileno`` attribute is ignored. This is to be compatible with the
`raw_input` method of `.vt100_input`.
Nc<01>$<00>V^8<>dQhRRRRRR/#)r,r<>z
int | Nonerwrqr-r.r/)r0s"r1r2<00>raw_mode.__annotate__>s)<00><00>Q<01>Q<01> <20>Q<01>KO<4B>Q<01> <0A>Qr4c <09>t<00>\\PP\44VnW nR#r6)rr r<>r<>rr@rw)r:r<>rws&&&r1r;<00>raw_mode.__init__>s&<00><00><1D>V<EFBFBD>_<EFBFBD>_<EFBFBD>9<>9<>:J<>K<>L<><04> <0B>0P<30>-r4c<01><00>V^8<>dQhRR/#r+r/)r0s"r1r2r<>Ds<00><00><16><16>4<EFBFBD>r4c <09><><00>\4p\PPVP\ V44WnVP4R#r6)r r r<><00>GetConsoleModer@r <00> original_mode<64>_patch)r:r<>s& r1<00> __enter__<5F>raw_mode.__enter__Ds5<00><00><1D><07> <0A><0E><0F><0F>&<26>&<26>t<EFBFBD>{<7B>{<7B>G<EFBFBD>M<EFBFBD>4J<34>K<>*<2A><1A> <0C> <0B> <0B> r4c<01><00>V^8<>dQhRR/#r+r/)r0s"r1r2r<>Ls<00><00> ><3E> ><3E><04> >r4c <09><><00>^p^p^pVPPW,V,(,pVP'dV\,p\P
P VPV4R#<00><02>N)r<>r<>rw<00>ENABLE_VIRTUAL_TERMINAL_INPUTr r<><00>SetConsoleModer@)r:<00>ENABLE_ECHO_INPUT<55>ENABLE_LINE_INPUT<55>ENABLE_PROCESSED_INPUT<55>new_modes& r1r<><00>raw_mode._patchLsl<00><00>"<22><19>"<22><19>!'<27><1E><17>%<25>%<25>+<2B>+<2B> <1D> 1<>4J<34> J<>/
<EFBFBD>
<EFBFBD><08> <10> 0<> 0<> 0<> <14>5<> 5<>H<EFBFBD><0E><0F><0F>&<26>&<26>t<EFBFBD>{<7B>{<7B>H<EFBFBD>=r4c<01> <00>V^8<>dQhRRRR/#)r,<00>a<>objectr-r.r/)r0s"r1r2r<>[s<00><00>H<01>H<01>6<EFBFBD>H<01>d<EFBFBD>Hr4c <09>n<00>\PPVPVP4R#r6)r r<>r<>r@r<>)r:r<>s&*r1<00>__exit__<5F>raw_mode.__exit__[s <00><00><0E><0F><0F>&<26>&<26>t<EFBFBD>{<7B>{<7B>D<EFBFBD>4F<34>4F<34>Gr4)r@r<>rw)NF)
rBrCrDrErFr;r<>r<>r<>rHr/r4r1r&r&3s#<00><00><08>Q<01> <16> ><3E>H<01>Hr4c<01>&<00>]tRtRtRtRRltRtR#)r'i`zh
::
with cooked_mode(stdin):
''' The pseudo-terminal stdin is now used in cooked mode. '''
c<01><00>V^8<>dQhRR/#r+r/)r0s"r1r2<00>cooked_mode.__annotate__hs<00><00>

<EFBFBD>

<EFBFBD><04>

r4c <09><><00>^p^p^p\PPVPVPP
W,V,,4R#r<>)r r<>r<>r@r<>r<>)r:r<>r<>r<>s& r1r<><00>cooked_mode._patchhsN<00><00>"<22><19>"<22><19>!'<27><1E><0E><0F><0F>&<26>&<26> <10>K<EFBFBD>K<EFBFBD> <10> <1E> <1E> $<24> $<24> <20>4<>7M<37>M<> O<01>
r4r/N)rBrCrDrErFr<>rHr/r4r1r'r'`s<00><00><08>

<EFBFBD>

r4c<01><00>V^8<>dQhRR/#rpr/)r0s"r1r2r2us<00><00>@<01>@<01>T<EFBFBD>@r4c<05><><00>\\PP\44p\ ^4p\PP V\V44\PPV\ \44pV^8H\PPW4# \PPY4i;i)zS
Returns True when we're running Windows and VT100 escape sequences are
supported.
)
rr r<>r<>rr r<>r r<>r<>)<03>hconsoler<65>rLs r1rOrOus<><00><00>
<16>f<EFBFBD>o<EFBFBD>o<EFBFBD>2<>2<>3C<33>D<>E<>H<EFBFBD><1A>!<21>H<EFBFBD>M<EFBFBD>
<EFBFBD>O<EFBFBD>O<EFBFBD>"<22>"<22>8<EFBFBD>U<EFBFBD>=<3D>-A<>B<>@<01><1C>o<EFBFBD>o<EFBFBD>4<>4<> <14>e<EFBFBD>9<>:<3A>
<EFBFBD><06><16><11>{<7B><0E><0F><0F>&<26>&<26>x<EFBFBD>?<3F><><06><0F><0F>&<26>&<26>x<EFBFBD>?<3F>s <00>"1B3<00>3!C)r$r%r&r'rZr`)D<>
__future__rr<>r<00>abcr<00>asyncior<00>
contextlibr<00>utilsr<00>platformr<6D><00>ctypesr r
r r <00>ctypes.wintypesr r<00>typingrrrrr<00>prompt_toolkit.eventloopr<00>prompt_toolkit.eventloop.win32rr<00>(prompt_toolkit.key_binding.key_processorr<00>prompt_toolkit.keysr<00>prompt_toolkit.mouse_eventsrr<00>prompt_toolkit.win32_typesrrrrr <00>ansi_escape_sequencesr!<00>baser"<00> vt100_parserr#<00>__all__r\r^r`rYr<>r)r$r%rQr7rZr`r&r'rOr/r4r1<00><module>rs<00><01>"<22> <09>
<EFBFBD><1E>$<24>%<25>*<2A>
<EFBFBD>|<7C>|<7C>w<EFBFBD><1E><1E><1E><1E><11><1D>(<28>(<28>)<29>G<>G<>A<>O<>=<3D>$<24>C<><02><02>:<3A><17>%<25> <02><07> #<23><1C><1E><18><14> <0B><16> <0A>!'<27><1D>  <0A>e<EFBFBD>  <0A>?0<><1F>?0<>Dp8<>p8<>f k%<25>k%<25>\U<18>U<18>p<10>F<01><10>F<01>8<10> F<01><10> F<01> *H<01>*H<01>Z
<EFBFBD>(<28>
<EFBFBD>*@r4