
    .hhq                     l    S SK r / SQr " S S5      rS rS rSS jrS rS	 r1 S
kR                  r	S r
g)    N)FileWrapperguess_schemeapplication_urirequest_urishift_path_infosetup_testing_defaultsis_hop_by_hopc                   *    \ rS rSrSS jrS rS rSrg)r      c                 b    Xl         X l        [        US5      (       a  UR                  U l        g g )Nclose)filelikeblksizehasattrr   )selfr   r   s      5/opt/python-3.13.8/usr/lib/python3.13/wsgiref/util.py__init__FileWrapper.__init__   s)     8G$$!DJ %    c                     U $ N )r   s    r   __iter__FileWrapper.__iter__   s    r   c                 j    U R                   R                  U R                  5      nU(       a  U$ [        er   )r   readr   StopIteration)r   datas     r   __next__FileWrapper.__next__   s(    }}!!$,,/Kr   )r   r   r   N)i    )__name__
__module____qualname____firstlineno__r   r   r   __static_attributes__r   r   r   r   r      s    (r   r   c                 0    U R                  S5      S;   a  gg)NHTTPS)yeson1httpshttp)get)environs    r   r   r      s     {{7//r   c                    U S   S-   nSSK Jn  U R                  S5      (       a  XS   -  nO9XS   -  nU S   S:X  a  U S   S	:w  a  US
U S   -   -  nOU S   S:w  a  US
U S   -   -  nX" U R                  S5      =(       d    SSS9-  nU$ )Nwsgi.url_schemez://r   quote	HTTP_HOSTSERVER_NAMEr+   SERVER_PORT443:80SCRIPT_NAME/latin1)encoding)urllib.parser2   r-   )r.   urlr2   s      r   r   r   %   s    
#
$U
*C"{{;{##}%%$%0}%.sW]333}%-sW]3335]+2sXFFCJr   c                     [        U 5      nSSKJn  U" U R                  SS5      SSS9nU R                  S5      (       d  X$S	S  -  nOX$-  nU(       a!  U R                  S
5      (       a  USU S
   -   -  nU$ )Nr   r1   	PATH_INFO z/;=,r;   )safer<   r9      QUERY_STRING?)r   r=   r2   r-   )r.   include_queryr>   r2   	path_infos        r   r   r   9   sw    
'
"C"gkk+b1RI;;}%%}^44sW^,,,Jr   c                    U R                  SS5      nU(       d  g UR                  S5      nUSS  Vs/ s H  o3(       d  M  US:w  d  M  UPM     snUSS& US   nUS	 U R                  SS5      n[        R                  " US-   U-   5      nUR	                  S5      (       a  US S nU(       d  UR	                  S5      (       d  US-  nXPS'   SR                  U5      U S'   US:X  a  S nU$ s  snf )Nr@   rA   r:   rC   .r9   )r-   split	posixpathnormpathendswithjoin)r.   rG   
path_partspnamescript_names         r   r   r   F   s     K+I%J#-a#3F#3aqQ#X#3FJqa=D1++mB/K$$[_T%9:KC  !#2&,,S11s(M XXj1GK SyK+ Gs   
C*C*	C*c                    U R                  SS5        U R                  SS5        U R                  SU S   5        U R                  SS5        SU ;  a*  S	U ;  a$  U R                  SS
5        U R                  S	S5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        SSKJnJn  U R                  SU" 5       5        U R                  SU" 5       5        U R                  S[	        U 5      5        U S   S:X  a  U R                  SS5        g U S   S:X  a  U R                  SS5        g g )Nr4   z	127.0.0.1SERVER_PROTOCOLzHTTP/1.0r3   REQUEST_METHODGETr9   r@   rA   r:   zwsgi.version)rC   r   zwsgi.run_oncer   zwsgi.multithreadzwsgi.multiprocess)StringIOBytesIOz
wsgi.inputzwsgi.errorsr0   r,   r5   r8   r+   r6   )
setdefaultiorX   rY   r   )r.   rX   rY   s      r   r   r   o   s:    }[1(4{7=#9:'.G#7(B=,;s+~u-*)1-*A.$|WY/}hj1(g)>? !6)=$/	"	#W	,=%0 
-r   >   teupgradetrailers
connection
keep-alivetransfer-encodingproxy-authenticateproxy-authorizationc                 4    [        U R                  5       5      $ r   )_hoppishlower)header_names    r   r	   r	      s    K%%'((r   )T)rL   __all__r   r   r   r   r   r   __contains__re   r	   r   r   r   <module>rj      sL     $('R$1P ,	 	)r   