+
    Di                     ~    ^ RI t ^ RIt^ RIHtHtHt R.t] P                  ! R] P                  4      t	 ! R R4      t
R# )    N)ListOptionalUnionReceiveBuffers   
?
c                      a  ] tR t^/t o V 3R lR ltV 3R lR ltV 3R lR ltV 3R lR ltV 3R	 lR
 ltV 3R lR lt	V 3R lR lt
V 3R lR ltV 3R lR ltV 3R lR ltRtV tR# )r   c                   < V ^8  d   QhRR/# )   returnN )format__classdict__s   "p/Users/tonyclaw/.openclaw/workspace/services/omi-webhook/venv/lib/python3.14/site-packages/h11/_receivebuffer.py__annotate__ReceiveBuffer.__annotate__0   s     ( ($ (    c                @    \        4       V n        ^ V n        ^ V n        R# )r   N)	bytearray_data_next_line_search_multiple_lines_searchselfs   &r   __init__ReceiveBuffer.__init__0   s    [
!"&'#r   c                :   < V ^8  d   QhRS[ S[S[3,          RR/# )r	   	bytesliker
   r   )r   bytesr   )r   r   s   "r   r   r   5   s%      %y(8"9 o r   c                8    V ;P                   V,          un         V # N)r   )r   r   s   &&r   __iadd__ReceiveBuffer.__iadd__5   s    

i
r   c                    < V ^8  d   QhRS[ /# r	   r
   bool)r   r   s   "r   r   r   9   s      $ r   c                *    \        \        V 4      4      # r   )r%   lenr   s   &r   __bool__ReceiveBuffer.__bool__9   s    CIr   c                    < V ^8  d   QhRS[ /# r#   )int)r   r   s   "r   r   r   <   s       r   c                ,    \        V P                  4      # r   )r'   r   r   s   &r   __len__ReceiveBuffer.__len__<   s    4::r   c                    < V ^8  d   QhRS[ /# r#   )r   )r   r   s   "r   r   r   @   s     ! !5 !r   c                ,    \        V P                  4      # r   )r   r   r   s   &r   	__bytes__ReceiveBuffer.__bytes__@   s    TZZ  r   c                &   < V ^8  d   QhRS[ RS[/# r	   countr
   )r+   r   )r   r   s   "r   r   r   C   s      c i r   c                ^    V P                   R V pV P                   R V1 ^ V n        ^ V n        V# r   )r   r   r   r   r5   outs   && r   _extractReceiveBuffer._extractC   s7    jj% JJvv!"&'#
r   c                6   < V ^8  d   QhRS[ RS[S[,          /# r4   )r+   r   r   )r   r   s   "r   r   r   M   s      $ $3 $8I3F $r   c                V    V P                   RV pV'       g   R# V P                  V4      # )z2
Extract a fixed number of bytes from the buffer.
N)r   r9   r7   s   && r   maybe_extract_at_most#ReceiveBuffer.maybe_extract_at_mostM   s)     jj% }}U##r   c                0   < V ^8  d   QhRS[ S[,          /# r#   )r   r   )r   r   s   "r   r   r   W   s     " "))< "r   c                    \        ^ V P                  ^,
          4      pV P                  P                  RV4      pVR8X  d   \	        V P                  4      V n        R# V^,           pV P                  V4      # )z;
Extract the first line, if it is completed in the buffer.
   
N)maxr   r   findr'   r9   )r   search_start_indexpartial_idxidxs   &   r   maybe_extract_next_line%ReceiveBuffer.maybe_extract_next_lineW   sf    
 !D$:$:Q$>?jjoog/AB"%(_D" Ao}}S!!r   c                @   < V ^8  d   QhRS[ S[S[,          ,          /# r#   )r   r   r   )r   r   s   "r   r   r   h   s        Xd9o%>  r   c                t   V P                   R,          R8X  d   V P                  ^4       . # V P                   R,          R8X  d   V P                  ^4       . # \        P                  V P                   V P                  4      pVf.   \        ^ \        V P                   4      ^,
          4      V n        R# VP                  ^ 4      R,          pV P                  V4      pVP                  R4      pV F  pVP                  R4      '       g   K  VR K!  	  VR	,          VR,          u;8X  d	   R8X  g   Q h Q hVR	R1 V# )
zL
Extract everything up to the first blank line, and return a list of lines.
:N   N   
:Nr	   NrA   N   r   rB   )
r   r9   blank_line_regexsearchr   rC   r'   spansplitendswith)r   matchrG   r8   lineslines   &     r   maybe_extract_lines!ReceiveBuffer.maybe_extract_linesh   s	   
 ::b>U"MM!I::b>W$MM!I !''

D4O4OP=*-aTZZ11D*ED' jjmBmmC 		% D}}U##H  RyE"I,,,,,,"#Jr   c                    < V ^8  d   QhRS[ /# r#   r$   )r   r   s   "r   r   r      s      T r   c                T     V P                   ^ ,          ^!8  #   \         d     R# i ; i)r   F)r   
IndexErrorr   s   &r   +is_next_line_obviously_invalid_request_line9ReceiveBuffer.is_next_line_obviously_invalid_request_line   s.    	 ::a=4'' 		s    '')r   r   r   N)__name__
__module____qualname____firstlineno__r   r    r(   r-   r1   r9   r=   rH   rX   r]   __static_attributes____classdictcell__)r   s   @r   r   r   /   sj     ( (
   ! ! $ $" ""   V r   )resystypingr   r   r   __all__compile	MULTILINErP   r   r   r   r   <module>rk      s=    	 
 ( (
N ::j",,7 j jr   