
    @OOf                     :    d  Z d Zd Zd Zd Zd Zd Zd Zd Zy	)
c                    | j                   j                  t        d      t        |       }dj	                  t        | j                   j                  | j                   j                  g| j                   j                              }||z   S Nz)Cannot assemble flow with missing content    )datacontent
ValueErrorassemble_request_headjoinassemble_bodyheaderstrailers)requestheadbodys      b/var/www/premiumrankchecker/venv/lib/python3.12/site-packages/mitmproxy/net/http/http1/assemble.pyassemble_requestr      sr    ||#DEE )D88LL  7<<#7#7"8',,:O:O	
D
 $;r   c                 d    t        | j                        }t        | j                        }d||fz  S Ns   %s
%s
)_assemble_request_liner   _assemble_request_headers)r   
first_liner   s      r   r   r      s.    '5J'5Gj'222r   c                    | j                   j                  t        d      t        |       }dj	                  t        | j                   j                  | j                   j                  g| j                   j                              }||z   S r   )r   r   r   assemble_response_headr	   r
   r   r   )responser   r   s      r   assemble_responser      sr    }}$DEE!(+D88MM!!HMM$9$9#:HMM<R<R	
D
 $;r   c                 d    t        | j                        }t        | j                        }d||fz  S r   )_assemble_response_liner   _assemble_response_headers)r   r   r   s      r   r   r      s.    (7J(7Gj'222r   c              #      K   d| j                  dd      j                         v r+|D ]  }|sdt        |      |fz    |rd|z   y d y |rt        d      |D ]  }|  y w)Nchunkedztransfer-encoding s   %x
%s
s   0
%s
s   0

zDSending HTTP/1.1 trailer headers requires transfer-encoding: chunked)getlowerlenr   )r   body_chunksr   chunks       r   r
   r
   %   s     GKK 3R8>>@@  	<E%UU(;;;	<  8++V  ! 	EK	s
   *A)<A)c                 d   | j                   j                         dk(  r&d| j                   | j                  | j                  fz  S | j                  r<d| j                   | j                  | j                  | j
                  | j                  fz  S d| j                   | j
                  | j                  fz  S )M
    Args:
        request_data (mitmproxy.net.http.request.RequestData)
    s   CONNECTs   %s %s %ss   %s %s://%s%s %s)methodupper	authorityhttp_versionschemepathrequest_datas    r   r   r   7   s    
   "j0""%%
 
 	

 
		!""%%%
 
 	
 %%
 
 	
r   c                 ,    t        | j                        S )r'   bytesr   r.   s    r   r   r   R   s    
 %%&&r   c                 N    d| j                   | j                  | j                  fz  S )Ns   %s %d %s)r+   status_codereason)response_datas    r   r   r   Z   s/    ""!!  r   c                 ,    t        | j                        S )Nr1   )r   s    r   r   r   b   s    !!""r   N)	r   r   r   r   r
   r   r   r   r    r   r   <module>r9      s2   	3	3$
6'#r   