+
    ~j"                      a  0 t $ ^ RIHt ^ RIt^ RIHt ^ RIHt . ROt ! R R	4      t	 ! R
 R]	4      t
 ! R R]	4      t]	P                  .tR]R&   R R ltR R ltR R ltR R ltR]R&   R]R&   R]R&   ]P&                  P)                  R4      '       d	   ]
t]t]tR# ]P&                  R9   d	   ]t]t]tR# ]! R]P&                   R24      h)    )annotationsN)Callable)ClassVarreadcharreadkeykeyc                     ] tR t^
t$ RtR]R&   RtR]R&   RtR]R&   RtR]R	&   R
t	R]R&   Rt
R]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   ]	tR]R&   ]tR]R&   RtR]R&   R tR]R!&   ]tR]R"&   R#tR]R$&   R%tR]R&&   R'tR]R(&   R)tR]R*&   R+tR]R,&   R-tR]R.&   R/tR]R0&   R1tR]R2&   R3tR]R4&   R5t R]R6&   R7t!R]R8&   R9t"R]R:&   R;t#R]R<&   R=t$R># )?_BaseKey
ClassVar[str]LFCR SPACEESC	TABCTRL_ACTRL_BCTRL_CCTRL_DCTRL_ECTRL_FCTRL_GCTRL_HCTRL_ICTRL_JCTRL_KCTRL_LCTRL_MCTRL_NCTRL_OCTRL_PCTRL_QCTRL_RCTRL_SCTRL_TCTRL_UCTRL_VCTRL_WCTRL_XCTRL_YCTRL_Z N)%__name__
__module____qualname____firstlineno__r   __annotations__r   r   r   r   r   r   r   r   r   r!   r#   r%   r&   r'   r)   r+   r,   r.   r0   r2   r4   r6   r8   r:   r<   r>   r@   rB   rD   rF   __static_attributes__rG       p/Users/mitch_tango/dev/rabbit-r1-livekit/agent/.venv/lib/python3.14/site-packages/livekit/agents/cli/readchar.pyr
   r
   
   s:   BB!E=!CC #FM""FM""FM""FM""FM""FM""FM""FM"FMFM"FM""FM"FM"FM""FM""FM""FM""FM""FM""FM""FM""FM""FM""FM""FM""FM"rN   r
   c                     ] tR t^/t$ RtRtR]R&   RtR]R&   RtR]R&   R	t	R]R
&   Rt
R]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R &   R!tR]R"&   R#tR]R$&   R%tR]R&&   R'tR]R(&   R)tR]R*&   R+tR]R,&   R-tR]R.&   R/tR]R0&   R1tR]R2&   R3tR]R4&   R5tR]R6&   R7t R]R8&   ]!PD                  t#R]R9&   ]t$R]R:&   R;t%R<# )=	_PosixKeyzNamespace of key codes specific to POSIX platforms (Linux, macOS, BSD).

These values mirror those defined in the upstream ``_posix_key.py``
module.  All attributes from :class:`_BaseKey` are inherited.
r   	BACKSPACEz[AUPz[BDOWNz[DLEFTz[CRIGHTz[2~INSERTz[3~SUPRz[HHOMEz[FENDz[5~PAGE_UPz[6~	PAGE_DOWNzOPF1zOQF2zORF3zOSF4z[15~F5z[17~F6z[18~F7z[19~F8z[20~F9z[21~F10z[23~F11z[24~F12z[Z	SHIFT_TABz[3^CTRL_ALT_SUPRzaALT_Az
CTRL_ALT_AENTERDELETErG   N)&rH   rI   rJ   rK   __doc__rS   rL   rT   rU   rV   rW   rX   rY   rZ   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   re   rf   rg   rh   ri   rj   rk   rl   rm   r
   r   rn   ro   rM   rG   rN   rO   rQ   rQ   /   s=     &I}% 'B&(D-((D-()E=) /FM.,D-,(D-('C'/G]/1I}1 'B&&B&&B&&B&.B..B..B..B..B./C//C//C/  .I}-#5M=5 &E=% !+J* $;;E=& FM rN   rQ   c                     ] tR t^dt$ RtRtR]R&   RtR]R&   RtR]R&   R	t	R]R
&   Rt
R]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R &   R!tR]R"&   R#tR]R$&   R%tR]R&&   R'tR]R(&   R)tR]R*&   R+tR]R,&   R-tR]R.&   R/tR]R0&   R1tR]R2&   R3tR]R4&   ]P@                  t!R]R5&   ]t"R]R6&   R7t#R8# )9_WinKeyzNamespace of key codes specific to Windows platforms.

These values mirror those defined in the upstream ``_win_key.py``
module.  All attributes from :class:`_BaseKey` are inherited.
r$   r   rS   z HrT   z PrU   z KrV   z MrW   z RrX   z SrY   z GrZ   z Or[   z Ir\   z Qr]   z ;r^   z <r_   z =r`   z >ra   z ?rb   z @rc   z Ard   z Bre   z Crf   z Drg   u    rh   u    ri   z ESC_2z ENTER_2rn   ro   rG   N)$rH   rI   rJ   rK   rp   rS   rL   rT   rU   rV   rW   rX   rY   rZ   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   re   rf   rg   rh   ri   rs   rt   r
   r   rn   ro   rM   rG   rN   rO   rr   rr   d   s%     &I}% #B"$D-$$D-$%E=% 'FM&$D-$$D-$#C#'G]')I}) #B""B""B""B""B""B""B""B""B"#C##C##C# &E=%'G]' $;;E=& FM rN   rr   z	list[str]INTERRUPT_KEYSc                   V ^8  d   QhRR/#    returnstrrG   )formats   "rO   __annotate__r|      s          rN   c                    ^ RI p ^ RIp\        P                  P	                  4       pV P                  V4      pV P                  V4      p V^;;,          V P                  V P                  ,          ( ,          uu&   V^;;,          V P                  ,          uu&   V P                  W P                  V4       \        P                  P                  ^4      p V P                  W P                  V4       V#   \         d     TP                  T4       T P                  T4      pT^;;,          T P                  T P                  ,          T P                  ,          ,          uu&   T P                  Y P                  T4        T#   \         d      T# i ; ii ; i   T P                  Y P                  T4       i   \         d     TP                  T4       T P                  T4      pT^;;,          T P                  T P                  ,          T P                  ,          ,          uu&   T P                  Y P                  T4        i   \         d      i i ; ii ; i; i)a]  Read a single character from standard input on POSIX systems.

This function blocks until a character is available.  It uses
``termios`` to disable canonical input processing and echo so
characters are returned immediately and without being echoed to
the terminal.  The implementation closely follows the upstream
``_posix_read.readchar`` function.
N)termiosttysysstdinfileno	tcgetattrICANONECHOISIG	tcsetattr	TCSAFLUSHread	TCSADRAIN	Exception	setcbreak)r~   r   fdold_settingstermchcurs          rO   _posix_readcharr      s    				B$$R(LR DQW^^gll233Q7<<"//6YY^^A		b"3"3\B I  	b!''+A'..7<<7',,FF!!"&7&7= I  I			b"3"3\B 	b!''+A'..7<<7',,FF!!"&7&7= 	s{   
BF C4 4F A?FFFFFIF87I8IA?III	III	IIc                   V ^8  d   QhRR/# rw   rG   )r{   s   "rO   r|   r|      s     "" "" ""rN   c                 X   \        4       p V \        9   d   \        hV R8w  d   V # \        4       pVR9  d	   W,           # \        4       pVR9  d   W,           V,           # \        4       pVR9  d   W,           V,           V,           # \        4       pW,           V,           V,           V,           # )u  Read the next keypress on POSIX systems.

If a multi‑byte escape sequence is encountered (for example, an arrow
key or function key), the entire sequence is read and returned.
``KeyboardInterrupt`` is raised when a key listed in
:data:`config.INTERRUPT_KEYS` is pressed.
r   zO[1235601345789)r   ru   KeyboardInterrupt)c1c2c3c4c5s        rO   _posix_readkeyr      s     
	B	^ 
V|	 
	B	w 
	B	''w| 
	B	33w|b   
	B7R<"r!!rN   c                   V ^8  d   QhRR/# rw   rG   )r{   s   "rO   r|   r|      s     
 
s 
rN   c                 *    ^ RI p V P                  4       # )uG  Read a single UTF‑16 code unit from standard input on Windows systems.

This function blocks until a character is available.  It wraps
``msvcrt.getwch()`` from the standard library, which returns a
single wide character (as a Python string).  The implementation is
equivalent to the upstream ``_win_read.readchar`` function.
N)msvcrtgetwch)r   s    rO   _win_readcharr      s     ==?rN   c                   V ^8  d   QhRR/# rw   rG   )r{   s   "rO   r|   r|      s      c rN   c                     \        4       p V \        9   d   \        hV R9   d   R\        4       ,           p RT u;8:  d   R8:  d8   M V # V \        4       ,          p V P                  RRR7      P	                  R4      p V # )a(  Read the next keypress on Windows systems.

This function interprets Windows scan codes and surrogate pairs to
return a key sequence that is compatible with the constants defined
in :class:`_WinKey`.  ``KeyboardInterrupt`` is raised when a key
listed in :data:`config.INTERRUPT_KEYS` is pressed.
u    à u   u   zutf-16surrogatepass)errors)r   ru   r   encodedecode)r   s    rO   _win_readkeyr      ss     
B	^	Zmo% 2!!
 I	 	moYYxY8??IIrN   ztype[_PosixKey | _WinKey]zCallable[[], str]zThe platform z is not supported yet)r   r   r   )linuxdarwinfreebsdopenbsd)win32cygwin)__conditional_annotations__
__future__r   r   collections.abcr   typingr   __all__r
   rQ   rr   r   ru   rL   r   r   r   r   platform
startswithr   r   r   NotImplementedError)r   s   @rO   <module>r      s    " " 
 $ 
("# "#J2! 2!j-!h -!h &__-	 - F""J
4  
 	 <<DEE
CHG\\((
CHG
cll^;PQ
RRrN   