Ë
    S>{ijK  ã                   óÎ  — d dl mZ d dlZd dlZd dlZ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mZ d dlmZ d dlmZmZmZ d dlmZ d d	lmZ erUd d
lmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlm Z  d dlm!Z! d dlm"Z" d dlm#Z# d dl$m%Z% d dl$m&Z& d dlm'Z'm(Z( ee)   Z*	 d dl+m,Z,  G d„ de/«      Z0d d„Z1 G d„ de0«      Z2 G d„ de0«      Z3d„ Z4y# e-$ r	 d dl.m,Z, Y Œ6w xY w)!é    )Úprint_functionN)Ú	timedelta)Údefaultdict)ÚDsnÚloggerÚcapture_internal_exceptionsÚ
json_dumps)ÚBackgroundWorker)ÚEnvelopeÚItemÚ
PayloadRef©Údatetime_utcnow)ÚTYPE_CHECKING)Údatetime)ÚAny)ÚCallable)ÚDict)ÚIterable)ÚOptional)ÚTuple)ÚType)ÚUnion)ÚDefaultDict)ÚPoolManager)ÚProxyManager)ÚEventÚEndpointType)Ú
getproxiesc                   óR   — e Zd ZdZdZ	 dd„Zd„ Zd„ Z	 dd„Zd„ Z		 	 dd„Z
d	„ Zd
„ Zy)Ú	TransportzWBaseclass for all transports.

    A transport is used to send an event to sentry.
    Nc                 ó`   — || _         |r|d   �|d   rt        |d   «      | _        y d | _        y )NÚdsn)Úoptionsr   Ú
parsed_dsn)Úselfr$   s     úR/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/sentry_sdk/transport.pyÚ__init__zTransport.__init__4   s4   € ð ˆŒÙ�w˜u‘~Ð1°g¸e²nÜ! '¨%¡.Ó1ˆD�Oà"ˆD�Oó    c                 ó   — t        «       ‚)zm
        This gets invoked with the event dictionary when an event should
        be sent to sentry.
        ©ÚNotImplementedError©r&   Úevents     r'   Úcapture_eventzTransport.capture_event>   s   € ô "Ó#Ð#r)   c                 ó   — t        «       ‚)a$  
        Send an envelope to Sentry.

        Envelopes are a data container format that can hold any type of data
        submitted to Sentry. We use it for transactions and sessions, but
        regular "error" events should go through `capture_event` for backwards
        compat.
        r+   )r&   Úenvelopes     r'   Úcapture_envelopezTransport.capture_envelopeH   s   € ô "Ó#Ð#r)   c                  ó   — y)z=Wait `timeout` seconds for the current events to be sent out.N© ©r&   ÚtimeoutÚcallbacks      r'   ÚflushzTransport.flushV   s   € ð 	r)   c                  ó   — y)zForcefully kills the transport.Nr4   ©r&   s    r'   ÚkillzTransport.kill_   s   € ð 	r)   c                  ó   — y)zVThis increments a counter for event loss by reason and
        data category.
        Nr4   )r&   ÚreasonÚdata_categoryÚitems       r'   Úrecord_lost_eventzTransport.record_lost_eventd   s   € ð r)   c                  ó   — y)NTr4   r:   s    r'   Ú
is_healthyzTransport.is_healthyp   ó   € àr)   c                 óD   — 	 | j                  «        y # t        $ r Y y w xY w©N)r;   Ú	Exceptionr:   s    r'   Ú__del__zTransport.__del__t   s"   € ð	Ø�I‰I�KøÜò 	Ùð	ús   ‚ “	žrE   ©NN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r%   r(   r/   r2   r8   r;   r@   rB   rG   r4   r)   r'   r!   r!   ,   sH   „ ñð
 €Jð ó#ò$ò$ð" óòð Øó	
òór)   r!   c              #   ó<  K  — |€
t        «       }| j                  d«      D ]c  }	 |j                  «       j                  dd«      \  }}}|t        t	        |«      ¬«      z   }|xr |j                  d«      xs dD ]  }||f–— Œ
 Œe y # t
        t        f$ r Y Œxw xY w­w)Nú,ú:é   ©Úsecondsú;rE   )r   ÚsplitÚstripr   ÚintÚLookupErrorÚ
ValueError)ÚheaderÚnowÚlimitÚretry_afterÚ
categoriesÚ_Úcategorys          r'   Ú_parse_rate_limitsr`   |   sª   è ø€ à
€{ÜÓˆà—‘˜cÓ"ò ˆð	Ø).¯©«×)<Ñ)<¸SÀ!Ó)DÑ&ˆK˜ QØ¤	´#°kÓ2BÔ CÑCˆKØ&Ò@¨:×+;Ñ+;¸CÓ+@ÒKÀGò ,�Ø Ð+Ó+ñ,ñ	øô œZÐ(ò 	Ùð	üs)   ‚!B¤A BÂBÂBÂBÂBÂBc                   óœ   — e Zd ZdZd„ Z	 	 dd„Zd„ Z	 	 dd„Zd„ Zdd„Z	dd	„Z
d
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	 dd„Zd„ Zy)ÚHttpTransportzThe default HTTP transport.c                 óh  — ddl m} t        j                  | |«       | j                  €J ‚|| _        t        |d   ¬«      | _        | j                  j                  d|z  «      | _	        i | _
        t        j                  j                  «       | _        t        t         «      | _        t%        j$                  «       | _        | j)                  | j                  |d   |d   |d   |d	   ¬
«      | _        |j-                  di «      j-                  d«      }|€dn
t!        |«      | _        ddlm} || _        y )Nr   )ÚVERSIONÚtransport_queue_size)Ú
queue_sizezsentry.python/%sÚ
http_proxyÚhttps_proxyÚca_certsÚproxy_headers)rg   rh   ri   rj   Ú_experimentsÚ transport_zlib_compression_levelé	   )ÚHub)Úsentry_sdk.constsrd   r!   r(   r%   r$   r
   Ú_workerÚto_authÚ_authÚ_disabled_untilÚurllib3ÚutilÚRetryÚ_retryr   rV   Ú_discarded_eventsÚtimeÚ_last_client_report_sentÚ
_make_poolÚ_poolÚgetÚ_compresslevelÚ
sentry_sdkrn   Úhub_cls)r&   r$   rd   Úcompresslevelrn   s        r'   r(   zHttpTransport.__init__Ž   s  € õ 	.ä×Ñ˜4 Ô)Ø�‰Ð*Ð*Ð*ØˆŒÜ'°7Ð;QÑ3RÔSˆŒØ—_‘_×,Ñ,Ð-?À'Ñ-IÓJˆŒ
Ø!ˆÔÜ—l‘l×(Ñ(Ó*ˆŒÜ!,Üó"
ˆÔô )-¯	©	«ˆÔ%à—_‘_Ø�O‰OØ˜|Ñ,Ø Ñ.Ø˜ZÑ(Ø! /Ñ2ð %ó 
ˆŒ
ð  Ÿ™ N°BÓ7×;Ñ;Ø.ó
ˆð $1Ð#8™a¼cÀ-Ó>PˆÔå"àˆ�r)   Nc                 óÖ   — | j                   d   sy d}|�/|j                  }|dk(  r+t        |j                  «       «      xs d}n|€t	        d«      ‚| j
                  ||fxx   |z  cc<   y )NÚsend_client_reportsé   Ú
attachmentzdata category not provided)r$   r>   ÚlenÚ	get_bytesÚ	TypeErrorrx   )r&   r=   r>   r?   Úquantitys        r'   r@   zHttpTransport.record_lost_event±   sw   € ð �|‰|Ð1Ò2ØàˆØÐØ ×.Ñ.ˆMØ Ò,ô ˜tŸ~™~Ó/Ó0Ò5°A‘ØÐ"ÜÐ8Ó9Ð9à×Ñ˜}¨fÐ4Ó5¸ÑAÔ5r)   c                 ó~  — |j                   j                  d«      }|r:t        j                  d«       | j                  j                  t        |«      «       y |j                  dk(  rWt        j                  d«       t        «       t        | j                  j                  |«      xs d¬«      z   | j                  d <   y y )Nzx-sentry-rate-limitsz%Rate-limited via x-sentry-rate-limitsé­  zRate-limited via 429é<   rQ   )Úheadersr}   r   Úwarningrs   Úupdater`   Ústatusr   r   rw   Úget_retry_after)r&   ÚresponserY   s      r'   Ú_update_rate_limitsz!HttpTransport._update_rate_limitsÇ   s›   € ð
 ×!Ñ!×%Ñ%Ð&<Ó=ˆÙÜ�N‰NÐBÔCØ× Ñ ×'Ñ'Ô(:¸6Ó(BÕCð
 �_‰_ Ò#Ü�N‰NÐ1Ô2Ü)8Ó):¼YØŸ™×3Ñ3°HÓ=ÒCÀô>ñ *ˆD× Ñ  Ò&ð $r)   c                 ó0  ‡ ‡— ˆˆ fd„}|j                  t        ‰ j                  j                  «      t        ‰ j                  j	                  «       «      dœ«       	 ‰ j
                  j                  dt        ‰ j                  j                  |«      «      ||¬«      }	 ‰ j                  |«       |j                  dk(  r‰ j                  d«       n{|j                  d	k\  s|j                  d
k  r]t        j                  d|j                  |j                  «       ‰ j                  dj                  |j                  «      «        |d«       |j!                  «        y # t        $ r ‰ j                  d«        |d«       ‚ w xY w# |j!                  «        w xY w)Nc                 óz   •— ‰€‰j                  | d¬«       y ‰j                  D ]  }‰j                  | |¬«       Œ y )NÚerror©r>   ©r?   )r@   Úitems)r=   r?   r1   r&   s     €€r'   Úrecord_lossz0HttpTransport._send_request.<locals>.record_lossã   sB   ø€ àÐØ×&Ñ& v¸WÐ&ÕEà$ŸN™Nò >�DØ×*Ñ*¨6¸Ð*Õ=ñ>r)   )z
User-AgentzX-Sentry-AuthÚPOST)Úbodyr�   ÚnetworkÚnetwork_errorr‹   Ú
status_429i,  éÈ   z%Unexpected status code: %s (body: %s)z	status_{})r�   Ústrrr   ÚclientÚ	to_headerr|   ÚrequestÚget_api_urlrF   Úon_dropped_eventr“   r�   r   r–   ÚdataÚformatÚclose)r&   rœ   r�   Úendpoint_typer1   rš   r’   s   `   `  r'   Ú_send_requestzHttpTransport._send_requestÚ   sN  ù€ õ	>ð 	�‰ä! $§*¡*×"3Ñ"3Ó4Ü!$ T§Z¡Z×%9Ñ%9Ó%;Ó!<ñô	
ð
	Ø—z‘z×)Ñ)ØÜ�D—J‘J×*Ñ*¨=Ó9Ó:ØØð	 *ó ˆHð	Ø×$Ñ$ XÔ.à�‰ #Ò%ð
 ×%Ñ% lÔ3Øà—‘ CÒ'¨8¯?©?¸SÒ+@Ü—‘Ø;Ø—O‘OØ—M‘Môð
 ×%Ñ% k×&8Ñ&8¸¿¹Ó&IÔJÙ˜OÔ,à�N‰NÕøô3 ò 	Ø×!Ñ! )Ô,Ù˜Ô(Øð	ûð2 �N‰NÕús   ÁAE ÂB-F Å$F ÆFc                  ó   — y rE   r4   )r&   r=   s     r'   r¦   zHttpTransport.on_dropped_event  rC   r)   c                 ó¢  — | j                   d   sy |s%| j                  t        j                  «       |z
  k  sy | j                  }t	        t
        «      | _        t        j                  «       | _        |sy t        t        t        j                  «       |j                  «       D ���cg c]  \  \  }}}|||dœ‘Œ c}}}dœ¬«      d¬«      S c c}}}w )Nrƒ   )r=   r_   r‰   )Ú	timestampÚdiscarded_events)ÚjsonÚclient_report)Útype)	r$   rz   ry   rx   r   rV   r   r   r™   )r&   ÚforceÚintervalr¯   r_   r=   r‰   s          r'   Ú_fetch_pending_client_reportz*HttpTransport._fetch_pending_client_report  sÃ   € à�|‰|Ð1Ò2Øá˜×6Ñ6¼¿¹»ÀxÑ9OÒOØà×1Ñ1ÐÜ!,¬SÓ!1ˆÔÜ(,¯	©	«ˆÔ%áØäÜä!%§¡£ð .×3Ñ3Ó5÷)ð )ñÙ.˜X vØ$ð $*°xÈXÓVô)ñ	ôð !ô
ð 	
ùô)s   Â%C
c                 óh   — | j                  |d¬«      }|�| j                  t        |g¬«      «       y y )NrŒ   )r³   r´   )r™   )rµ   r2   r   )r&   r³   r±   s      r'   Ú_flush_client_reportsz#HttpTransport._flush_client_reports6  s8   € à×9Ñ9ÀÐPRÐ9ÓSˆØÐ$Ø×!Ñ!¤(°-°Ô"AÕBð %r)   c                 ó2   ‡ — ˆ fd„} ||«      xs  |d «      S )Nc                 ó`   •— ‰j                   j                  | «      }|d uxr |t        «       kD  S rE   )rs   r}   r   )ÚbucketÚtsr&   s     €r'   Ú	_disabledz0HttpTransport._check_disabled.<locals>._disabled>  s0   ø€ à×%Ñ%×)Ñ)¨&Ó1ˆBØ˜T�>Ò< b¬?Ó+<Ñ&<Ð<r)   r4   )r&   r_   r¼   s   `  r'   Ú_check_disabledzHttpTransport._check_disabled<  s   ø€ ô	=ñ
 ˜Ó"Ò5¡i°£oÐ5r)   c                 óV   — t        d„ | j                  j                  «       D «       «      S )Nc              3   ó6   K  — | ]  }|t        «       kD  –— Œ y ­wrE   r   )Ú.0r»   s     r'   ú	<genexpr>z1HttpTransport._is_rate_limited.<locals>.<genexpr>G  s   è ø€ ÒR¨b�2œÓ)Õ)ÑRùs   ‚)Úanyrs   Úvaluesr:   s    r'   Ú_is_rate_limitedzHttpTransport._is_rate_limitedE  s"   € äÑR°D×4HÑ4H×4OÑ4OÓ4QÔRÓRÐRr)   c                 ó6   — | j                   j                  «       S rE   )rp   Úfullr:   s    r'   Ú_is_worker_fullzHttpTransport._is_worker_fullI  s   € à�|‰|× Ñ Ó"Ð"r)   c                 óH   — | j                  «       xs | j                  «        S rE   )rÇ   rÄ   r:   s    r'   rB   zHttpTransport.is_healthyM  s"   € à×(Ñ(Ó*ÒE¨d×.CÑ.CÓ.EÐFÐFr)   c                 ó&  — | j                  d«      r%| j                  d«       | j                  dd¬«       y t        j                  «       }| j
                  dk(  r|j                  t        |«      «       nEt        j                  |d| j
                  ¬«      5 }|j                  t        |«      «       d d d «       | j                  €J ‚t        j                  d|j                  d	«      xs d
›d|j                  d«      xs d
›d|j                  d«      xs d
›d| j                  j                  ›d| j                  j                  ›�
«       ddi}| j
                  dkD  rd|d<   | j!                  |j#                  «       |¬«       y # 1 sw Y   ŒÖxY w)Nr–   Úself_rate_limitsÚratelimit_backoffr—   r   Úw©ÚfileobjÚmoder�   zSending event, type:r²   Únullz level:Úlevelz
 event_id:Úevent_idz	 project:z host:úContent-Typezapplication/jsonÚgzipúContent-Encoding)r�   )r½   r¦   r@   ÚioÚBytesIOr~   Úwriter	   rÔ   ÚGzipFiler%   r   Údebugr}   Ú
project_idÚhostr«   Úgetvalue)r&   r.   rœ   Úfr�   s        r'   Ú_send_eventzHttpTransport._send_eventQ  se  € ð
 ×Ñ Ô(Ø×!Ñ!Ð"4Ô5Ø×"Ñ"Ð#6ÀgÐ"ÔNØä�z‰z‹|ˆØ×Ñ !Ò#Ø�J‰J”z %Ó(Õ)ä—‘Ø 3°d×6IÑ6Iôð +àØ—‘œ
 5Ó)Ô*÷+ð
 �‰Ð*Ð*Ð*Ü�Šð —	‘	˜&Ó!Ò+ VÑ+Ø—	‘	˜'Ó"Ò, fÑ,Ø—	‘	˜*Ó%Ò/¨Ñ/Ø—‘×*Ó*Ø—‘×$Ò$ðô		
ð Ð.ð
ˆð ×Ñ Ò"Ø*0ˆGÐ&Ñ'à×Ñ˜4Ÿ=™=›?°GÐÔ<Ø÷1+ð +ús   ÂFÆFc                 ó®  — g }|j                   D ]a  }| j                  |j                  «      r3|j                  dv r| j                  d«       | j	                  d|¬«       ŒQ|j                  |«       Œc t        |j                  |¬«      }|j                   sy | j                  d¬«      }|�|j                   j                  |«       t        j                  «       }| j                  dk(  r|j                  |«       n<t        j                  |d	| j                  ¬
«      5 }|j                  |«       d d d «       | j                  €J ‚t!        j"                  d|j$                  | j                  j&                  | j                  j(                  «       ddi}| j                  dkD  rd|d<   | j+                  |j-                  «       |d|¬«       y # 1 sw Y   Œ�xY w)N)Útransactionr–   ÚdefaultrÊ   rË   r˜   )r�   r™   é   )r´   r   rÌ   rÍ   z(Sending envelope [%s] project:%s host:%srÓ   zapplication/x-sentry-enveloperÔ   rÕ   r1   )r�   rª   r1   )r™   r½   r>   r¦   r@   Úappendr   r�   rµ   rÖ   r×   r~   Úserialize_intorÔ   rÙ   r%   r   rÚ   ÚdescriptionrÛ   rÜ   r«   rÝ   )r&   r1   Ú	new_itemsr?   Úclient_report_itemrœ   rÞ   r�   s           r'   Ú_send_envelopezHttpTransport._send_envelopey  s»  € ð ˆ	Ø—N‘Nò 	'ˆDØ×#Ñ# D×$6Ñ$6Ô7Ø×%Ñ%Ð)LÑLØ×)Ñ)Ð*<Ô=Ø×&Ñ&Ð':ÀÐ&ÕFà× Ñ  Õ&ð	'ô  H×$4Ñ$4¸IÔFˆà�~Š~Øð "×>Ñ>ÈÐ>ÓKÐØÐ)Ø�N‰N×!Ñ!Ð"4Ô5ä�z‰z‹|ˆØ×Ñ !Ò#Ø×#Ñ# DÕ)ä—‘Ø 3°d×6IÑ6Iôð +àØ×'Ñ'¨Ô*÷+ð
 �‰Ð*Ð*Ð*Ü�‰Ø6Ø× Ñ Ø�O‰O×&Ñ&Ø�O‰O× Ñ ô		
ð Ð;ð
ˆð ×Ñ Ò"Ø*0ˆGÐ&Ñ'à×ÑØ�M‰M‹OØØ$Øð	 	ô 	
ð ÷3+ð +ús   ÄGÇGc                 ó:   — dd|xs t        j                  «       dœS )NrP   ÚCERT_REQUIRED)Ú	num_poolsÚ	cert_reqsri   )ÚcertifiÚwhere)r&   ri   s     r'   Ú_get_pool_optionszHttpTransport._get_pool_options·  s"   € ð Ø(Ø Ò3¤G§M¡M£Oñ
ð 	
r)   c                 óø   — t        «       j                  d«      }|sy|j                  d«      D ]J  }|j                  «       }|j                  j                  |«      s|j                  j                  |«      sŒJ y y)NÚnoFrN   T)r   r}   rT   rU   rÜ   ÚendswithÚnetloc)r&   r%   Úno_proxyrÜ   s       r'   Ú_in_no_proxyzHttpTransport._in_no_proxy¿  sj   € ä“<×#Ñ# DÓ)ˆÙØØ—N‘N 3Ó'ò 	ˆDØ—:‘:“<ˆDØ�‰×'Ñ'¨Ô-°×1BÑ1B×1KÑ1KÈDÕ1QÙð	ð r)   c                 ó2  — d }| j                  |«      }|j                  dk(  r'|dk7  r"|xs | xr t        «       j                  d«      }|s'|dk7  r"|xs | xr t        «       j                  d«      }| j	                  |«      }|rW|r||d<   |j                  d«      r)d}		 ddlm}
 |	r	 
|fi |¤ŽS t        j                  di |¤ŽS t        j                  |fi |¤ŽS t        j                  di |¤ŽS # t        $ r d	}	t        j                  d
|«       Y Œnw xY w)NÚhttpsÚ Úhttprj   ÚsocksTr   )ÚSOCKSProxyManagerFzÂYou have configured a SOCKS proxy (%s) but support for SOCKS proxies is not installed. Disabling proxy support. Please add `PySocks` (or `urllib3` with the `[socks]` extra) to your dependencies.r4   )rö   Úschemer   r}   rð   Ú
startswithÚurllib3.contrib.socksrü   ÚImportErrorr   rŽ   rt   r   r   )r&   r%   rg   rh   ri   rj   Úproxyrõ   ÚoptsÚuse_socks_proxyrü   s              r'   r{   zHttpTransport._make_poolÊ  s1  € ð ˆØ×$Ñ$ ZÓ0ˆð ×Ñ Ò'¨[¸BÒ->ØÒO¨ LÒ$N´Z³\×5EÑ5EÀgÓ5NˆEñ ˜*¨Ò*ØÒM x <Ò#L´J³L×4DÑ4DÀVÓ4LˆEà×%Ñ% hÓ/ˆáÙØ(5��_Ñ%à×Ñ Ô(Ø"&�ðåGñ #Ù,¨UÑ;°dÑ;Ð;ä"×.Ñ.Ñ6°Ñ6Ð6ä×+Ñ+¨EÑ:°TÑ:Ð:ä×&Ñ&Ñ.¨Ñ.Ð.øô #ò Ø&+�OÜ—N‘Nð ]Øöðús   Â!C2 Ã2!DÄDc                 óÄ   ‡ ‡‡— ‰ j                   j                  Šˆˆˆ fd„}‰ j                  j                  |«      s%‰ j	                  d«       ‰ j                  dd¬«       y y )Nc                  ó´   •— ‰5  t        «       5  ‰j                  ‰ «       ‰j                  «        d d d «       d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   y xY wrE   )r   rß   r·   )r.   Úhubr&   s   €€€r'   Úsend_event_wrapperz7HttpTransport.capture_event.<locals>.send_event_wrapperÿ  sU   ø€ àñ 1Ü0Ó2ñ 1Ø×$Ñ$ UÔ+Ø×.Ñ.Ô0÷1÷1ð 1÷1ð 1ú÷1ð 1úó!   „A�"A±AÁA	ÁAÁAÚ
full_queueÚqueue_overflowr–   r—   )r€   Úcurrentrp   Úsubmitr¦   r@   )r&   r.   r  r  s   `` @r'   r/   zHttpTransport.capture_eventù  sU   ú€ ð �l‰l×"Ñ"ˆö	1ð �|‰|×"Ñ"Ð#5Ô6Ø×!Ñ! ,Ô/Ø×"Ñ"Ð#3À7Ð"ÕKð 7r)   c                 óæ   ‡ ‡‡— ‰ j                   j                  Šˆˆˆ fd„}‰ j                  j                  |«      s6‰ j	                  d«       ‰j
                  D ]  }‰ j                  d|¬«       Œ y y )Nc                  ó´   •— ‰5  t        «       5  ‰j                  ‰ «       ‰j                  «        d d d «       d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   y xY wrE   )r   ré   r·   )r1   r  r&   s   €€€r'   Úsend_envelope_wrapperz=HttpTransport.capture_envelope.<locals>.send_envelope_wrapper  sU   ø€ àñ 1Ü0Ó2ñ 1Ø×'Ñ'¨Ô1Ø×.Ñ.Ô0÷1÷1ð 1÷1ð 1ú÷1ð 1úr  r	  r
  r˜   )r€   r  rp   r  r¦   r™   r@   )r&   r1   r  r?   r  s   ``  @r'   r2   zHttpTransport.capture_envelope
  sj   ú€ ð �l‰l×"Ñ"ˆö	1ð �|‰|×"Ñ"Ð#8Ô9Ø×!Ñ! ,Ô/Ø Ÿ™ò D�Ø×&Ñ&Ð'7¸dÐ&ÕCñDð :r)   c                 ó°   ‡ — t        j                  d«       |dkD  r;‰ j                  j                  ˆ fd„«       ‰ j                  j	                  ||«       y y )NzFlushing HTTP transportr   c                  ó(   •— ‰ j                  d¬«      S )NT)r³   )r·   r:   s   €r'   ú<lambda>z%HttpTransport.flush.<locals>.<lambda>%  s   ø€ ¨×(BÑ(BÈÐ(BÓ(N€ r)   )r   rÚ   rp   r  r8   r5   s   `  r'   r8   zHttpTransport.flush  sE   ø€ ô 	�‰Ð.Ô/à�QŠ;Ø�L‰L×ÑÓ NÔOØ�L‰L×Ñ˜w¨Õ1ð r)   c                 ób   — t        j                  d«       | j                  j                  «        y )NzKilling HTTP transport)r   rÚ   rp   r;   r:   s    r'   r;   zHttpTransport.kill(  s   € ä�‰Ð-Ô.Ø�‰×ÑÕr)   rH   )ÚstoreN)FrŒ   )FrE   )rI   rJ   rK   rL   r(   r@   r“   r«   r¦   rµ   r·   r½   rÄ   rÇ   rB   rß   ré   rð   rö   r{   r/   r2   r8   r;   r4   r)   r'   rb   rb   ‹   s‰   „ Ù%ò!ðL Øó	Bò,ð. Øó7òró
ó>Cò6òSò#òGò&òP<ò|
ò	ò-/ò^Lò"Dð* ó
2ór)   rb   c                   ó   — e Zd Zd„ Zd„ Zy)Ú_FunctionTransportc                 ó<   — t         j                  | «       || _        y rE   )r!   r(   Ú_func)r&   Úfuncs     r'   r(   z_FunctionTransport.__init__/  s   € ô 	×Ñ˜4Ô Øˆ�
r)   c                 ó&   — | j                  |«       y rE   )r  r-   s     r'   r/   z _FunctionTransport.capture_event6  s   € ð 	�
‰
�5ÔØr)   N)rI   rJ   rK   r(   r/   r4   r)   r'   r  r  .  s   „ òór)   r  c                 óÐ   — | d   }|€t         }nKt        |t        «      r|S t        |t        «      rt	        |t        «      r|}nt        |«      rt        |«      S | d   r | «      S y )NÚ	transportr#   )rb   Ú
isinstancer!   r²   Ú
issubclassÚcallabler  )r$   Úref_transportÚtransport_clss      r'   Úmake_transportr"  >  sk   € à˜KÑ(€Mð ÐÜ%‰Ü	�M¤9Ô	-ØÐÜ	�M¤4Ô	(¬Z¸ÄyÔ-QØ%‰Ü	�-Ô	 Ü! -Ó0Ð0ð ˆu‚~Ù˜WÓ%Ð%àr)   rE   )5Ú
__future__r   rÖ   rt   rî   rÔ   ry   r   r   Úcollectionsr   Úsentry_sdk.utilsr   r   r   r	   Úsentry_sdk.workerr
   Úsentry_sdk.enveloper   r   r   Úsentry_sdk._compatr   Úsentry_sdk._typesr   Útypingr   r   r   r   r   r   r   r   r   Úurllib3.poolmanagerr   r   r   r   r¡   ÚDataCategoryÚurllib.requestr   r   ÚurllibÚobjectr!   r`   rb   r  r"  r4   r)   r'   ú<module>r0     s¶   ðÝ %ã 	Û Û Û Û å Ý #ç QÓ QÝ .ß :Ñ :å .Ý +áÝ!ÝÝÝÝÝÝÝÝÝ"å/Ý0ç5à˜C‘=€Lð"Ý)ô
M�ô Mó`ô`�Iô `ôF˜ô ó øðm ò "ß!ð"ús   Â'C ÃC$Ã#C$