Ë
    +Œ:j’  ã                   ó(  — 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y)é    N)ÚBackgroundTask)ÚRequest)ÚContentStreamÚResponseÚStreamingResponse)ÚASGIAppÚMessageÚReceiveÚScopeÚSendÚTc                   ój   — 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y)ÚBaseHTTPMiddlewareNÚappÚdispatchÚreturnc                 óH   — || _         |€| j                  | _        y || _        y ©N)r   r   Údispatch_func)Úselfr   r   s      ú[/var/www/html/tokenscope/api/venv/lib/python3.12/site-packages/starlette/middleware/base.pyÚ__init__zBaseHTTPMiddleware.__init__   s#   € ð ˆŒØ.6Ð.>˜TŸ]™]ˆÕÀHˆÕó    ÚscopeÚreceiveÚsendc              ƒ   óØ  ‡ ‡‡‡K  — ‰d   dk7  r‰ j                  ‰||«      ƒ d {  –—†  y t        j                  «       Šdt        dt        fˆˆˆ ˆfd„}t        j
                  «       4 ƒd {  –—† Št        ‰|¬«      }‰ j                  ||«      ƒ d {  –—† } |‰||«      ƒ d {  –—†  ‰j                  «        d d d «      ƒd {  –—†  y 7 Œ¥7 Œ`7 Œ;7 Œ+7 Œ# 1 ƒd {  –—†7  sw Y   y xY w­w)NÚtypeÚhttpÚrequestr   c              “   ón  •‡ ‡‡‡	‡
‡K  — d Št        j                  «       \  ŠŠ	dt        fˆ ˆfd„Šdˆ	ˆfd„}dt        dd fˆfd„Š
dˆˆˆˆˆ
ˆfd„}‰j                  |«       ‰j                  |«       	 ‰	j	                  «       ƒ d {  –—† }|j                  dd «      }|d   d	k(  r|�‰	j	                  «       ƒ d {  –—† }|d   dk(  sJ ‚dt        j                  t        d f   fˆˆ	fd„}t        |d    |«       |¬«      }|d   |_        |S 7 Œ„7 ŒR# t         j                  $ r ‰�‰‚t        d
«      ‚w xY w­w)Nr   c               “   óÊ  •‡K  — ‰j                  «       rddiS t        j                  «       4 ƒd {  –—† Šdt        j                  g t        j
                  t           f   dt        fˆfd„} ‰j                  | ‰j                  «        | ‰j                  «      ƒ d {  –—† }d d d «      ƒd {  –—†  ‰j                  «       rddiS S 7 Œ–7 Œ,7 Œ# 1 ƒd {  –—†7  sw Y   Œ.xY w­w)Nr   zhttp.disconnectÚfuncr   c              “   óf   •K  —  | «       ƒ d {  –—† }‰j                   j                  «        |S 7 Œ ­wr   )Úcancel_scopeÚcancel)r#   ÚresultÚ
task_groups     €r   Úwrapz[BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.receive_or_disconnect.<locals>.wrap)   s,   øè ø€ Ù'+£v§˜Ø"×/Ñ/×6Ñ6Ô8Ø%˜ð ".ús   ƒ1Ž/�!1)
Ú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×   ùè ø€ Ø ×'Ñ'Ô)Ø"Ð$5Ð6Ð6ä ×2Ñ2Ó4÷ :ð :¸
ð&¬¯©¸¼V×=MÑ=MÌaÑ=PÐ9PÑ)Qð &ÔVWõ &ð
 ×)Ñ)¨$°×0BÑ0BÔCÙ$(¨¯©Ó$9×9�G÷:÷ :ð !×'Ñ'Ô)Ø"Ð$5Ð6Ð6à�ð:øð :øð:ø÷ :÷ :ñ :üsW   „-C#±C²C#µA(CÂC
ÂCÂ"C#Â-CÂ.C#Ã
CÃC#ÃC ÃCÃC ÃC#c               “   ób   •K  — ‰j                  «       ƒ d {  –—†  ‰ j                  «        y 7 Œ­wr   )r1   Úclose)Úrecv_streamr3   s   €€r   Ú"close_recv_stream_on_response_sentzZBaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.close_recv_stream_on_response_sent6   s*   øè ø€ Ø#×(Ñ(Ó*×*Ð*Ø×!Ñ!Õ#ð +ús   ƒ/—-˜/r2   c              “   óx   •K  — 	 ‰j                  | «      ƒ d {  –—†  y 7 Œ# t        j                  $ r Y y w xY w­wr   )r   r+   ÚBrokenResourceError)r2   Úsend_streams    €r   Úsend_no_errorzEBaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.send_no_error:   s7   øè ø€ ðØ%×*Ñ*¨7Ó3×3Ò3ùÜ×0Ñ0ò áðüs(   ƒ:…! ™š! ž:Ÿ! ¡7´:¶7·:c               “   óâ   •K  — ‰4 ƒd {  –—†  	 ‰j                  ‰‰‰«      ƒ d {  –—†  d d d «      ƒd {  –—†  y 7 Œ17 Œ# t        $ r} | ŠY d } ~ Œ%d } ~ ww xY w7 Œ!# 1 ƒd {  –—†7  sw Y   y xY w­wr   )r   Ú	Exception)ÚexcÚapp_excr4   r   r   r<   r;   s    €€€€€€r   Úcoroz<BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.coroA   so   øè ø€ ð '÷ &ñ &ð&Ø"Ÿh™h uÐ.CÀ]ÓS×SÐS÷&÷ &ñ &øàSùÜ$ò &Ø"%�ûð&úð&ø÷ &÷ &ñ &üsq   ƒA/Š<‹A/ŽA�A ¦>§A «A/¶A·A/¾A Á 	AÁ	AÁAÁAÁAÁA/ÁA,Á A#Á!A,Á(A/Úinfor   úhttp.response.debugzNo response returned.zhttp.response.startc                 óä   •K  — ‰4 ƒd {  –—†  ‰2 3 d {  –—† } | d   dk(  sJ ‚| j                  dd«      }|sŒ(|­–— Œ.7 Œ47 Œ+6 d d d «      ƒd {  –—†7   n# 1 ƒd {  –—†7  sw Y   nxY w‰�‰‚y ­w)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Ø&Ÿ{™{¨6°3Ó7˜ÚØ"&œJð'øð'ø¨÷'÷ '÷ '÷ 'ó 'úð Ð&Ø!�Mð 'ùsg   ƒA0Š?‹A0ŽA‘A•A–A™A¹A¿A0ÁAÁAÁA0ÁAÁA0ÁA(ÁAÁA(Á$A0Ú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   sI  þè ø€ Ø26ˆGÜ',×'HÑ'HÓ'JÑ$ˆK˜ð´ö ö&$ð¬Wð ¸õ ÷&ò &ð ×!Ñ!Ð"DÔEØ×!Ñ! $Ô'ð<Ø +× 3Ñ 3Ó 5×5�Ø—{‘{ 6¨4Ó0�Ø˜6‘?Ð&;Ò;ÀÐ@PØ$/×$7Ñ$7Ó$9×9�Gð ˜6‘?Ð&;Ò;Ð;Ð;ð	"¤v×'<Ñ'<¼UÀD¸[Ñ'Iö 	"ô *Ø# HÑ-±{³}È4ôˆHð $+¨9Ñ#5ˆHÔ ØˆOð5 6øð :ùÜ×$Ñ$ò <ØÐ&Ø!�MÜ"Ð#:Ó;Ð;ð<üsC   ‰A)D5Á3D ÂDÂ3D Â:DÂ;D Â?AD5ÄD ÄD Ä#D2Ä2D5)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ØäŸ™›ˆðI	¤Wð I	´÷ I	ð I	ôV ×*Ñ*Ó,÷ 	 ð 	 °
Ü˜e¨WÔ5ˆGØ!×/Ñ/°¸ÓC×CˆHÙ˜5 '¨4Ó0×0Ð0Ø×ÑÔ÷		 ÷ 	 ð 	 ða 1øð`	 øàCøØ0øð	 ø÷ 	 ÷ 	 ñ 	 üs|   †C*¥C¦AC*Á,CÁ-C*Á0#CÂCÂCÂ%CÂ&CÂ:C*ÃCÃC*ÃC*ÃCÃCÃC*ÃC'ÃCÃC'Ã#C*r    rT   c              ƒ   ó   K  — t        «       ‚­wr   )ÚNotImplementedError)r   r    rT   s      r   r   zBaseHTTPMiddleware.dispatchp   s   è ø€ ô "Ó#Ð#ùs   ‚r   )Ú__name__Ú
__module__Ú__qualname__r   r-   ÚOptionalÚDispatchFunctionr   r   r
   r   rW   r   ÚRequestResponseEndpointr   r   © r   r   r   r      st   „ àJNñMØðMØ&,§o¡oÐ6FÑ&GðMà	óMðV  Eð V °Gð V À4ð V ÈDó 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        ‰| �	  |||||«       y r   )Ú_infoÚsuperr   )r   rJ   rI   rK   rb   rc   rB   Ú	__class__s          €r   r   z_StreamingResponse.__init__w   s!   ø€ ð ˆŒ
Ü‰Ñ˜ +¨w¸
ÀJÕOr   r   c              ƒ   ó”   •K  — | j                   r |d| j                   dœ«      ƒ d {  –—†  t        ‰| �	  |«      ƒ d {  –—† S 7 Œ7 Œ­w)NrC   )r   rB   )re   rf   Ústream_response)r   r   rg   s     €r   ri   z"_StreamingResponse.stream_responseƒ   sC   øè ø€ Ø�:Š:ÙÐ 5¸t¿z¹zÑJÓK×KÐKÜ‘WÑ,¨TÓ2×2Ð2ð LøØ2ús    ƒ%A¨A©A¿AÁ AÁA)éÈ   NNNN)rZ   r[   r\   r   Úintr-   r]   ÚMappingÚstrr   ÚAnyr   r   ri   Ú__classcell__)rg   s   @r   rQ   rQ   v   s¿   ø„ ð Ø=AØ+/Ø6:ØAEñ
Pàð
Pð ð
Pð —‘ §¡°°S°Ñ!9Ñ:ð	
Pð
 —O‘O CÑ(ð
Pð —O‘O NÑ3ð
Pð �o‰o˜fŸn™n¨S°&·*±*¨_Ñ=Ñ>ð
Pð 
õ
Pð3¨$ð 3°4÷ 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ß BÕ Bà Ÿ/™/¨7¨)°V×5EÑ5EÀhÑ5OÐ*OÑPÐ Ø—?‘?ØÐ%Ð&¨×(8Ñ(8¸Ñ(BÐBñÐ ð €F‡N�N�3Ó€÷b$ñ b$ôJ3Ð*õ 3r   