+
    i  c                   s    ^ RI t ^ RIt^ RIHt ^ RIHtHt Rt]^,          tR t ! R R] P                  4      t
 ! R R	] P                  4      tRtRt^t ! R
 R4      tR# )    N)RLock)sleeptimei  c                 s    \         P                  '       d   R # \        V 4      s\	        VR\         P
                  4      \         n        \	        VR\         P                  4      \         n        R # )Nzpython.stdoutzpython.stderr)sysZ
executableLogcatlogcatTextLogStreamZstdoutZstderr)android_log_writeZstdout_prioZstderr_prios   &&&)/usr/lib64/python3.14/_android_support.pyinit_streamsr
      sC    
~~~ %&F{OSZZHCJ{OSZZHCJ    c                   s^   a a ] tR t^$t oRV 3R lltR tR tR tR t]	R 4       t
RtVtV ;t# )	r   c                s.  < V'       d.   VP                  R VP                  4       VP                  4       pMRpVP                  RR4       VP                  RR4       \        SV `  ! \        WV4      3/ VB  \        4       V n        . V n        ^ V n	        R# )write_throughNencodingzUTF-8errorsZbackslashreplace)
Z
setdefaultr   filenoZsuper__init__BinaryLogStreamr   _lock_pending_bytes_pending_bytes_count)selfpriotagZoriginalZkwargsr   	__class__s   &&&&, r	   r   ZTextLogStream.__init__%   s    ox/E/EF__&FF
 	*g.($67F;FvFW
 $%!r   c                s8    R V P                   P                  : R2# )z<TextLogStream >)bufferr   r      &r	   __repr__ZTextLogStream.__repr__8   s      3155r   c                s   \        V\        4      '       g"   \        R \        V4      P                   24      h\        P                  V4      pV P                  ;_uu_ 4        VP                  RR7       F0  pV'       g   K  VR\         pV\        R pV P                  V4       K/  	  RRR4       \        V4      #   + '       g   i     L; i)z"write() argument must be str, not T)ZkeependsN)Z
isinstanceZstr	TypeErrortype__name__Z__str__r   Z
splitlinesMAX_CHARS_PER_WRITE_write_chunklen)r   sZlineZchunks   &&  r	   writeZTextLogStream.write;   s    !S!!4T!W5E5E4FGI I
 KKN
 ZZZd3d !5"56E 3 45D%%e,	 4  1v Zs   !B;'B;;C	c                s   VP                  V P                  V P                  4      pV P                  \	        V4      ,           \
        8  d   V P                  4        V P                  P                  V4       V ;P                  \	        V4      ,          un        V P                  '       g-   VP                  R 4      '       g   V P                  \
        8  d   V P                  4        R# R# )   
N)Zencoder   r   r   r#   MAX_BYTES_PER_WRITEflushr   Zappendr   Zendswith)r   r$   bs   && r	   r"   ZTextLogStream._write_chunkR   s    HHT]]DKK0$$s1v-0CCJJL""1%!!SV+!zz%  ((+>>JJL ?r   c                s   V P                   ;_uu_ 4        V P                  P                  R P                  V P                  4      4       V P                  P                  4        ^ V n        RRR4       R#   + '       g   i     R# ; i)r   N)r   r   r%   Zjoinr   Zclearr   r   r   r	   r(   ZTextLogStream.flush`   sR    ZZZKKchht':':;<%%'()D% ZZZs   AA55B	c                    R # T r   r   r	   line_bufferingZTextLogStream.line_bufferingh   s    r   )r   r   r   N)r    
__module____qualname____firstlineno__r   r   r%   r"   r(   Zpropertyr-   __static_attributes____classdictcell__Z__classcell__)r   __classdict__s   @@r	   r   r   $   s7     &&6.*   r   r   c                   sB   a  ] tR t^mt o RR ltR tR tR tR tRt	V t
R# )	r   Nc                s*    Wn         W n        W0n        R # r.   )r   r   _fileno)r   r   r   r   s   &&&&r	   r   ZBinaryLogStream.__init__n   s    	r   c                s$    R V P                   : R2# )z<BinaryLogStream r   )r   r   r   r	   r   ZBinaryLogStream.__repr__s   s    "488,a00r   c                r*   r+   r,   r   r   r	   writableZBinaryLogStream.writablev   s    r   c                s0   \        V4      \        Jd    \        \        V4      4      pV'       d,   \
        P                  V P                  V P                  V4       \        V4      #   \         d$    \        R \        T4      P                   24      Rhi ; i)z)write() argument must be bytes-like, not N)
r   ZbytesZ
memoryviewr   r    r   r%   r   r   r#   )r   r)      &&r	   r%   ZBinaryLogStream.writey   s}    7%*Q-( LLDHHa01v  ?Q@P@P?QRs   A' '.Bc                sb    V P                   f   \        P                  ! R4      hV P                   # )Nr   )r5   ioZUnsupportedOperationr   r   r	   r   ZBinaryLogStream.fileno   s'    <<))(33||r   )r5   r   r   r.   )r    r/   r0   r1   r   r   r6   r%   r   r2   r3   r4      @r	   r   r   m   s#     
1 r   r   c                   s,   a  ] tR t^t o R tR tRtV tR# )r   c                s\    Wn         \        4       V n        ^ V n        \	        4       V n        R# )r    N)r   r   r   _bucket_levelr   _prev_write_time)r   r   r7   r	   r   ZLogcat.__init__   s#    !2W
 $r   c           	     s   VP                  R R4      pVP                  R4      '       d
   RV,           pV P                  ;_uu_ 4        \        4       pV ;P                  W@P
                  ,
          \        ,          ,          un        \        ^ \        V P                  \        4      4      V n        W@n        V ;P                  \        \        V4      ,           \        V4      ,           ,          un        V P                  ^ 8  d"   \        V P                  ) \        ,          4       V P                  WV4       RRR4       R#   + '       g   i     R# ; i)s    s   r&   s    N)ZreplaceZ
startswithr   r   r;   r<   MAX_BYTES_PER_SECONDZmaxZminBUCKET_SIZEPER_MESSAGE_OVERHEADr#   r   r   )r   r   r   ZmessageZnows   &&&& r	   r%   ZLogcat.write   s     //';7 e$$WnGZZZ&C,,,0DDF
 "%QD,>,>(L!MD$'!"6S"ACL"PP!!A%t))),@@A""4g6 ZZZs   C/E  E	)r;   r   r<   r   N)r    r/   r0   r1   r   r%   r2   r3   r9   r:   r	   r   r      s     '7 7r   r   i   i   )r8   r   Z	threadingr   r   r   r'   r!   r
   ZTextIOWrapperr   Z	RawIOBaser   r=   r>   r?   r   r,   r   r	   <module>r@      ss    	 
     *Q. IFB$$ FRbll L #    !7 !7r   