§
     @g’  ã                   ó"  — d dl Z d dlZd dlmZ d dlmZ d dlmZmZm	Z	 d dl
mZmZmZmZmZ e j        ege j        e         f         Ze j        eege j        e         f         Z e j        d¦  «        Z G d„ d¦  «        Z G d	„ d
e	¦  «        ZdS )é    N)ÚBackgroundTask)ÚRequest)ÚContentStreamÚResponseÚStreamingResponse)ÚASGIAppÚMessageÚReceiveÚScopeÚSendÚTc                   óh   — e Zd Z	 ddedej        e         ddfd„Zdede	de
ddfd	„Zd
ededefd„ZdS )ÚBaseHTTPMiddlewareNÚappÚdispatchÚreturnc                 ó4   — || _         |€| j        n|| _        d S ©N)r   r   Údispatch_func)Úselfr   r   s      úM/var/www/piapp/venv/lib/python3.11/site-packages/starlette/middleware/base.pyÚ__init__zBaseHTTPMiddleware.__init__   s$   € ð ˆŒØ.6Ð.>˜Tœ]˜]ÀHˆÔÐÐó    ÚscopeÚreceiveÚsendc              ƒ   óà  ‡ ‡‡‡K  — ‰d         dk    r‰                       ‰||¦  «        ƒ d {V —† d S t          j        ¦   «         Šdt          dt          fˆˆˆ ˆfd„}t          j        ¦   «         4 ƒd {V —†Št          ‰|¬¦  «        }‰                      ||¦  «        ƒ d {V —†} |‰||¦  «        ƒ d {V —† ‰                     ¦   «          d d d ¦  «        ƒd {V —† d S # 1 ƒd {V —†swxY w Y   d S )NÚtypeÚhttpÚrequestr   c              “   ó°  •‡ ‡‡‡	‡
‡K  — d Št          j        ¦   «         \  ŠŠ	dt          fˆ ˆfd„Šdˆ	ˆfd„}dt          dd fˆfd„Š
dˆˆˆˆˆ
ˆfd„}‰                     |¦  «         ‰                     |¦  «         	 ‰	                     ¦   «         ƒ d {V —†}|                     dd ¦  «        }|d         d	k    r|�‰	                     ¦   «         ƒ d {V —†}n&# t           j        $ r ‰�‰‚t          d
¦  «        ‚w xY w|d         dk    sJ ‚dt          j	        t          d f         fˆˆ	fd„}t          |d          |¦   «         |¬¦  «        }|d         |_        |S )Nr   c               “   ó¶  •‡K  — ‰                      ¦   «         rddiS t          j        ¦   «         4 ƒd {V —†Šdt          j        g t          j        t                   f         dt          fˆfd„} ‰                     | ‰j        ¦  «          | ‰j	        ¦  «        ƒ d {V —†}d d d ¦  «        ƒd {V —† n# 1 ƒd {V —†swxY w Y   ‰                      ¦   «         rddiS |S )Nr   zhttp.disconnectÚfuncr   c              “   ó^   •K  —  | ¦   «         ƒ d {V —†}‰j                              ¦   «          |S r   )Úcancel_scopeÚcancel)r#   ÚresultÚ
task_groups     €r   Úwrapz[BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.receive_or_disconnect.<locals>.wrap)   s8   øè è € Ø'+ t¡v¤v      ˜Ø"Ô/×6Ò6Ñ8Ô8Ð8Ø%˜r   )
Úis_setÚanyioÚcreate_task_groupÚtypingÚCallableÚ	Awaitabler   Ú
start_soonÚwaitr   )r)   Úmessager(   r    Úresponse_sents     @€€r   Úreceive_or_disconnectzMBaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.receive_or_disconnect#   s‰  øøè è € Ø ×'Ò'Ñ)Ô)ð 7Ø"Ð$5Ð6Ð6å Ô2Ñ4Ô4ð :ð :ð :ð :ð :ð :ð :¸
ð&­¬¸½VÔ=MÍaÔ=PÐ9PÔ)Qð &ÕVWð &ð &ð &ð &ð &ð &ð
 ×)Ò)¨$°Ô0BÑCÔCÐCØ$( D¨¬Ñ$9Ô$9Ð9Ð9Ð9Ð9Ð9Ð9�Gð:ð :ð :ñ :ô :ð :ð :ð :ð :ð :ð :ð :ð :ð :ð :ð :ð :ð :ð :ð :ð :ð :ð :øøøð :ð :ð :ð :ð !×'Ò'Ñ)Ô)ð 7Ø"Ð$5Ð6Ð6à�s   ¶A(B0Â0
B:Â=B:c               “   óh   •K  — ‰                      ¦   «         ƒ d {V —† ‰                      ¦   «          d S r   )r1   Úclose)Úrecv_streamr3   s   €€r   Ú"close_recv_stream_on_response_sentzZBaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.close_recv_stream_on_response_sent6   sC   øè è € Ø#×(Ò(Ñ*Ô*Ð*Ð*Ð*Ð*Ð*Ð*Ð*Ø×!Ò!Ñ#Ô#Ð#Ð#Ð#r   r2   c              “   óp   •K  — 	 ‰                      | ¦  «        ƒ d {V —† d S # t          j        $ r Y d S w xY wr   )r   r+   ÚBrokenResourceError)r2   Úsend_streams    €r   Úsend_no_errorzEBaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.send_no_error:   s]   øè è € ðØ%×*Ò*¨7Ñ3Ô3Ð3Ð3Ð3Ð3Ð3Ð3Ð3Ð3Ð3øÝÔ0ð ð ð à�F�Fðøøøs   …" ¢5´5c               “   óÖ   •K  — ‰4 ƒd {V —† 	 ‰                      ‰‰‰¦  «        ƒ d {V —† n# t          $ r} | ŠY d } ~ nd } ~ ww xY wd d d ¦  «        ƒd {V —† d S # 1 ƒd {V —†swxY w Y   d S r   )r   Ú	Exception)ÚexcÚapp_excr4   r   r   r<   r;   s    €€€€€€r   Úcoroz<BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.coroA   s,  øè è € ð 'ð &ð &ð &ð &ð &ð &ð &ð &ð&Ø"Ÿhšh uÐ.CÀ]ÑSÔSÐSÐSÐSÐSÐSÐSÐSÐSøÝ$ð &ð &ð &Ø"%˜˜˜˜˜˜øøøøð&øøøð&ð &ð &ñ &ô &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &øøøð &ð &ð &ð &ð &ð &s3   ŒAŽ,«A¬
A¶=¸A½AÁAÁ
A"Á%A"Úinfor   úhttp.response.debugzNo response returned.zhttp.response.startc                 óÚ   •K  — ‰4 ƒd {V —† ‰2 3 d {V —†} | d         dk    sJ ‚|                       dd¦  «        }|r|W V — Œ36 	 d d d ¦  «        ƒd {V —† n# 1 ƒd {V —†swxY w Y   ‰�‰‚d S )Nr   zhttp.response.bodyÚbodyr   )Úget)r2   rE   r@   r7   s     €€r   Úbody_streamzCBaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.body_streamY   s=  øè è € Ø&ð 'ð 'ð 'ð 'ð 'ð 'ð 'ð 'Ø)4ð 'ð 'ð 'ð 'ð 'ð 'ð '˜gØ& vœÐ2FÒFÐFÐFÐFØ&Ÿ{š{¨6°3Ñ7Ô7˜Øð 'Ø"&˜J˜J˜J˜Jøð	 *5¨ð'ð 'ð 'ñ 'ô 'ð 'ð 'ð 'ð 'ð 'ð 'ð 'ð 'ð 'ð 'ð 'ð 'ð 'ð 'ð 'ð 'ð 'ð 'øøøð 'ð 'ð 'ð 'ð Ð&Ø!�Mð 'Ð&s   ŒA�A•.AÁ
A Á#A Ústatus)Ústatus_codeÚcontentrB   Úheaders)r   N)r+   Úcreate_memory_object_streamr	   r0   r   rF   ÚEndOfStreamÚRuntimeErrorr-   ÚAsyncGeneratorÚbytesÚ_StreamingResponseÚraw_headers)r    r8   rA   r2   rB   rG   Úresponser@   r4   r7   r<   r;   r3   r   r   r(   s   `      @@@@@€€€€r   Ú	call_nextz.BaseHTTPMiddleware.__call__.<locals>.call_next   s6  øøøøøøøè è € Ø26ˆGÝ',Ô'HÑ'JÔ'JÑ$ˆK˜ðµð ð ð ð ð ð ð ð&$ð $ð $ð $ð $ð $ð $ð­Wð ¸ð ð ð ð ð ð ð&ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð ×!Ò!Ð"DÑEÔEÐEØ×!Ò! $Ñ'Ô'Ð'ð<Ø +× 3Ò 3Ñ 5Ô 5Ð5Ð5Ð5Ð5Ð5Ð5�Ø—{’{ 6¨4Ñ0Ô0�Ø˜6”?Ð&;Ò;Ð;ÀÐ@PØ$/×$7Ò$7Ñ$9Ô$9Ð9Ð9Ð9Ð9Ð9Ð9�GøøÝÔ$ð <ð <ð <ØÐ&Ø!�MÝ"Ð#:Ñ;Ô;Ð;ð<øøøð
 ˜6”?Ð&;Ò;Ð;Ð;Ð;ð	"¥vÔ'<½UÀD¸[Ô'Ið 	"ð 	"ð 	"ð 	"ð 	"ð 	"ð 	"õ *Ø# HÔ-°{°{±}´}È4ðñ ô ˆHð $+¨9Ô#5ˆHÔ ØˆOs   Á<AC Ã#C8)r   )r   r+   ÚEventr   r   r,   r   Úset)	r   r   r   r   rT   r    rS   r3   r(   s	   ``     @@r   Ú__call__zBaseHTTPMiddleware.__call__   sÕ  øøøøè è € Ø�Œ=˜FÒ"Ð"Ø—(’(˜5 '¨4Ñ0Ô0Ð0Ð0Ð0Ð0Ð0Ð0Ð0ØˆFåœ™œˆðI	¥Wð I	µð I	ð I	ð I	ð I	ð I	ð I	ð I	ð I	ð I	õV Ô*Ñ,Ô,ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 °
Ý˜e¨WÐ5Ñ5Ô5ˆGØ!×/Ò/°¸ÑCÔCÐCÐCÐCÐCÐCÐCˆHØ�(˜5 '¨4Ñ0Ô0Ð0Ð0Ð0Ð0Ð0Ð0Ð0Ø×ÒÑÔÐð		 ð 	 ð 	 ñ 	 ô 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 øøøð 	 ð 	 ð 	 ð 	 ð 	 ð 	 s   Á5ACÃ
C'Ã*C'r    rT   c              ƒ   ó"   K  — t          ¦   «         ‚r   )ÚNotImplementedError)r   r    rT   s      r   r   zBaseHTTPMiddleware.dispatchp   s   è è € õ "Ñ#Ô#Ð#r   r   )Ú__name__Ú
__module__Ú__qualname__r   r-   ÚOptionalÚDispatchFunctionr   r   r
   r   rW   r   ÚRequestResponseEndpointr   r   © r   r   r   r      s½   € € € € € àJNðMð MØðMØ&,¤oÐ6FÔ&GðMà	ðMð Mð Mð MðV  Eð V °Gð V À4ð V ÈDð V ð V ð V ð V ðp$Øð$Ø+Bð$à	ð$ð $ð $ð $ð $ð $r   r   c                   óò   ‡ — e Zd Z	 	 	 	 	 ddededej        ej        eef                  dej        e         dej        e	         dej        ej        eej
        f                  d	dfˆ fd
„Zded	dfˆ fd„Zˆ xZS )rQ   éÈ   NrJ   rI   rK   Ú
media_typeÚ
backgroundrB   r   c                 ó`   •— || _         t          ¦   «                              |||||¦  «         d S r   )Ú_infoÚsuperr   )r   rJ   rI   rK   rc   rd   rB   Ú	__class__s          €r   r   z_StreamingResponse.__init__w   s2   ø€ ð ˆŒ
Ý‰Œ×Ò˜ +¨w¸
ÀJÑOÔOÐOÐOÐOr   r   c              ƒ   ó–   •K  — | j         r |d| j         dœ¦  «        ƒ d {V —† t          ¦   «                              |¦  «        ƒ d {V —†S )NrC   )r   rB   )rf   rg   Ústream_response)r   r   rh   s     €r   rj   z"_StreamingResponse.stream_responseƒ   si   øè è € ØŒ:ð 	LØ�$Ð 5¸t¼zÐJÐJÑKÔKÐKÐKÐKÐKÐKÐKÐKÝ‘W”W×,Ò,¨TÑ2Ô2Ð2Ð2Ð2Ð2Ð2Ð2Ð2r   )rb   NNNN)rZ   r[   r\   r   Úintr-   r]   ÚMappingÚstrr   ÚAnyr   r   rj   Ú__classcell__)rh   s   @r   rQ   rQ   v   s  ø€ € € € € ð Ø=AØ+/Ø6:ØAEð
Pð 
Pàð
Pð ð
Pð ” ¤°°S°Ô!9Ô:ð	
Pð
 ”O CÔ(ð
Pð ”O NÔ3ð
Pð Œo˜fœn¨S°&´*¨_Ô=Ô>ð
Pð 
ð
Pð 
Pð 
Pð 
Pð 
Pð 
Pð3¨$ð 3°4ð 3ð 3ð 3ð 3ð 3ð 3ð 3ð 3ð 3ð 3r   rQ   )r-   r+   Ústarlette.backgroundr   Ústarlette.requestsr   Ústarlette.responsesr   r   r   Ústarlette.typesr   r	   r
   r   r   r.   r/   r_   r^   ÚTypeVarr   r   rQ   r`   r   r   ú<module>ru      s;  ðØ €€€à €€€à /Ð /Ð /Ð /Ð /Ð /Ø &Ð &Ð &Ð &Ð &Ð &Ø JÐ JÐ JÐ JÐ JÐ JÐ JÐ JÐ JÐ JØ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ Bà œ/¨7¨)°VÔ5EÀhÔ5OÐ*OÔPÐ Ø”?ØÐ%Ð&¨Ô(8¸Ô(BÐBôÐ ð €F„N�3ÑÔ€ðb$ð b$ð b$ð b$ð b$ñ b$ô b$ð b$ðJ3ð 3ð 3ð 3ð 3Ð*ñ 3ô 3ð 3ð 3ð 3r   