+
    € ’e\  ã                   óž   € R t ^ RIHt ^ RIt^ RIt^ RIt^ RIHtHt ^ RIHtHtH	t	 . ROt
^ t^t^t^ tR tR tR tR t]]3R	 lt]]3R
 ltR# )zPseudo terminal utilities.)ÚselectN)ÚcloseÚwaitpid)ÚsetrawÚ	tcgetattrÚ	tcsetattrc                 óL  €  \         P                  ! 4       #   \        \        3 d     Mi ; i\	        4       w  r\         P
                  ! T\         P                  4      p ^ RIHpH	p M  \         d    Y3u # i ; i T! Y$R4       T! Y$R4       Y3#   \         d     Y3# i ; i)z`openpty() -> (master_fd, slave_fd)
Open a pty master/slave pair, using os.openpty() if possible.)ÚioctlÚI_PUSHÚptemÚldterm)ÚosÚopenptyÚAttributeErrorÚOSErrorÚ_open_terminalÚopenÚO_RDWRÚfcntlr	   r
   ÚImportError)Ú	master_fdÚ
slave_nameÚslave_fdr	   r
   s        ÚQ/home/ubuntu/.hermes/tools/python-3.14.9+20261021-linux-x64/lib/python3.14/pty.pyr   r      s­   € ðÜ�zŠz‹|ÐøÜœGÐ$ô Ùðúä*Ó,Ñ€Iä�wŠw�z¤2§9¡9Ó-€Hð$ß'Ð'øÜô $ØÐ#Ò	#ð$úðÙˆh Ô'Ùˆh Ô)ð ÐÐøô ô ØØÐÐðús0   ‚ —+ª+Á A) Á)A:Á9A:Á>B ÂB#Â"B#c                 óô   € R FV  p R FM  pRV ,           V,           p \         P                  ! V\         P                  4      pTRT ,           T,           3u u # 	  KX  	  \        R4      h  \         d     Kn  i ; i)z1Open pty master and return (master_fd, tty_name).ÚpqrstuvwxyzPQRSTÚ0123456789abcdefz/dev/ptyz/dev/ttyzout of pty devices)r   r   r   r   )ÚxÚyÚpty_nameÚfds       r   r   r   0   su   € ãˆÛ#ˆAØ! A•~¨Õ)ˆHðÜ—W’W˜X¤r§y¡yÓ1�ð ˜
 Q�¨Õ*Ð+Ô+ó $ñ  ô Ð&Ó
'Ð'øô ô Úðús   œ%A(Á(A7Á6A7c                 ó¼  €  \         P                  ! 4       w  rV \        8X  d    \         P                  ! 4        W3# W3#   \         d     Y3# i ; i  \
        \        3 d     Mi ; i\        4       w  r#\         P                  ! 4       p T \        8X  d0   \         P                  ! T4       \         P                  ! T4       Y3# \         P                  ! T4       Y3# )z`fork() -> (pid, master_fd)
Fork and make the child a session leader with a controlling terminal.)
r   ÚforkptyÚCHILDÚsetsidr   r   r   Úforkr   Ú	login_tty)Úpidr    r   r   s       r   r%   r%   =   sÅ   € ðÜ—*’*“,‰ˆð ”%Œ<ðÜ—	’	”ð ˆwˆˆsˆwˆøô ô àØˆwˆðûô œGÐ$ô Ùðúô "›)Ñ€IÜ
�'Š'‹)€CØ
Œe„|Ü
�Š�ÔÜ
�Š�XÔð
 ˆ>Ðô 	�Š�Ôð ˆ>Ðs"   ‚A ¥A  Á AÁAÁA'Á&A'c                ó0   € \         P                  ! V R4      # )zDefault read function.i   )r   Úread)r    s   &r   Ú_readr*   Y   s   € ä�7Š7�2�tÓÐó    c                ó,  € \         P                  ! V 4      '       d?   \         P                  ! V R4        \        WVR7       \         P                  ! V R4       R# RpV \        8g  pV \
        8g  pRpRp . p. p	V'       d&   \        V4      V8  d   VP                  \        4       V'       d"   \        V4      V8  d   VP                  V 4       V'       d&   \        V4      ^ 8”  d   V	P                  \
        4       \        V4      ^ 8”  d   V	P                  V 4       \        W‰. 4      w  r‰p
\
        V	9   d!    \         P                  ! \
        V4      pW{R pW9   d    V! V 4      pV'       g   R# W|,          pW	9   d   \         P                  ! W4      pWkR pV'       g   EK/  \        V9   g   EK=  V! \        4      pV'       g   RpEKV  Wl,          pEKa    \         P                  ! T R4       i ; i  \         d    Rp L©i ; i  \         d    Rp L­i ; i)zƒParent copy loop.
Copies
        pty master -> standard output   (master_read)
        standard input -> pty master    (stdin_read)F)Úmaster_readÚ
stdin_readTNi   r+   )r   Úget_blockingÚset_blockingÚ_copyÚSTDIN_FILENOÚSTDOUT_FILENOÚlenÚappendr   Úwriter   )r   r-   r.   Úhigh_waterlevelÚstdin_availÚstdout_availÚi_bufÚo_bufÚrfdsÚwfdsÚ_xfdsÚnÚdatas   &&&          r   r1   r1   ]   sµ  € ô
 
‡‚�y×!Ò!ô 	�Š˜	 5Ô)ð	-Ü�)ÀÕLô �OŠO˜I tÔ,ÙØ€OØœ|Ñ+€KØ¤Ñ-€LØ€EØ€EØ
ØˆØˆßœ3˜u›:¨Ô7Ø�K‰KœÔ%ßœC ›J¨Ô8Ø�K‰K˜	Ô"ßœC ›J¨œNØ�K‰KœÔ&Üˆu‹:˜Œ>Ø�K‰K˜	Ô"ä" 4¨rÓ2Ñˆ�Eä˜DÔ ð%Ü—H’Hœ]¨EÓ2�Ø˜b˜	�ð ÔðÙ" 9Ó-�÷ Ùà�MˆEàÔÜ—’˜Ó*ˆAØ˜"�IˆEçŠ;œ<¨4×/ÙœlÓ+ˆDßØ#“à•“øôc �OŠO˜I tÕ,ûô2 ô %Ø$’ð%ûô ô Ø’ðús/   µG Ä7G0 ÅH ÇG-Ç0H Ç?H ÈHÈHc                óH  € \        V \        4      '       d   V 3p \        P                  ! RV 4       \	        4       w  r4V\
        8X  d    \        P                  ! V ^ ,          .V O5!    \        \        4      p\        \        4       Rp \        WAV4       V'       d    \        \        \        P                  X4       \!        T4       \#        T^ 4      ^,          #   \        P                   d    Rp Lki ; i  T'       d!   \        \        \        P                  X4       i i ; i)zCreate a spawned process.z	pty.spawnTF)Ú
isinstanceÚstrÚsysÚauditr%   r#   r   Úexeclpr   r2   r   ÚttyÚerrorr1   r   Ú	TCSAFLUSHr   r   )Úargvr-   r.   r'   r   ÚmodeÚrestores   &&&    r   ÚspawnrM   ž   sÕ   € ä�$œ×ÒØˆwˆÜ‡I‚Iˆk˜4Ô ä“V�N€CØ
Œe„|Ü
�	Š	�$�q•'Ð!˜DÔ!ðÜœÓ&ˆÜŒ|ÔØˆð9Üˆi jÔ1çÜ”l¤C§M¡M°4Ô8ä	ˆ)ÔÜ�3˜‹?˜1ÕÐøô �9‰9ô ØŠðû÷ Ü”l¤C§M¡M°4Õ8ð ús   Á( C Â	C7 ÃC4Ã3C4Ã7*D!)r   r%   rM   )Ú__doc__r   r   rD   rG   r   r   r   r   r   Ú__all__r2   r3   ÚSTDERR_FILENOr#   r   r   r%   r*   r1   rM   © r+   r   Ú<module>rR      sg   ðÙ  õ Û 	Û 
Û 
÷ ß ,Ñ ,â
&€à€Ø€Ø€à	€òò,
(òò8ð "'°5ô ?ðB "¨eö r+   