+
    Spj                       R t ^ RIHt ^ RIHt ^ RIt^ RIHt ^ RIH	t	 ^ RIH
t
 ^ RIHt ^ RIHt ^ R	IHt ^ R
IHt ^ RIt]]],          ,          ! 4       tR R lt]P.                  ! RR7      R R l4       tR R ltR R ltR R ltR# )zASubmit failure or test session information to a pastebin service.)annotations)StringION)IO)Config)create_terminal_writer)Parser)PASTEBIN)StashKey)TerminalReporterc                    V ^8  d   QhRRRR/# )   parserr   returnNone )formats   "7/tmp/pip-target-d46v3snk/lib/python/_pytest/pastebin.py__annotate__r      s     
 
V 
 
    c           
     \    V P                  R 4      pVP                  RRRRRRR.RR	7       R# )
zterminal reportingz
--pastebinmodestorepastebinNfailedallz3Send failed|all info to bpaste.net pastebin service)metavaractiondestdefaultchoiceshelp)getgroup	addoption)r   groups   & r   pytest_addoptionr$      s<    OO01E	OO5!B  r   T)trylastc                    V ^8  d   QhRRRR/# r   configr   r   r   r   )r   s   "r   r   r   $   s     % %V % %r   c                  a a S P                   P                  '       d   S P                  \        ^4       S P                   P                  R8X  dx   S P                  P                  R4      pVeW   \        P                  ! R4      S P                  \        &   VP                  P                  oV V3R lpW!P                  n        R# R# R# )r   r   terminalreporterNzw+bc                   < S! V 3/ VB  \        V \        4      '       d   V P                  R 4      p SP                  \        ,          P                  V 4       R# )utf-8N)
isinstancestrencodestashpastebinfile_keywrite)skwargsr(   oldwrites   &,r   	tee_write#pytest_configure.<locals>.tee_write2   sC    %f%a%%)A-.44Q7r   )optionr   issue_config_time_warningr   pluginmanager	getplugintempfileTemporaryFiler0   r1   _twr2   )r(   trr6   r5   s   f  @r   pytest_configurer@   #   s    }}((15}}&!!++,>? >-5-C-CE-JFLL)*vv||H8 %FFL  'r   c                    V ^8  d   QhRRRR/# r'   r   )r   s   "r   r   r   ;   s     @ @v @$ @r   c                   \         V P                  9   d   V P                  \         ,          pVP                  ^ 4       VP                  4       pVP	                  4        V P                  \          V P
                  P                  R4      pVP                  P                  R VP                  RR4       \        V4      pVP                  RV R24       R# R# )    r*   r2   =$Sending information to Paste Servicezpastebin session-log: 
N)r1   r0   seekreadcloser:   r;   r>   __dict__	write_sepcreate_new_paste
write_line)r(   pastebinfile
sessionlogr?   pastebinurls   &    r   pytest_unconfigurerQ   ;   s    6<<'||$45!!&&(
LL)*!!++,>?FFOOG$
S@A&z2
.{m2>? (r   c                    V ^8  d   QhRRRR/# )r   contentszstr | bytesr   r.   r   )r   s   "r   r   r   L   s     C C{ Cs Cr   c                   ^ RI p^ RIHp ^ RIHp ^ RIHp RV RRRR	/pR
p V! Wc! V4      P                  R4      R7      P                  4       P                  R4      pTP                  RX4      p	T	'       d   T RT	P                  ^4       2# RT,           R,           #   T d<   pT;_uu_ 4        RT 2uuRRR4       u Rp?#   + '       g   i      Rp?Lz; iRp?i\         d   pRT 2u Rp?# Rp?ii ; i)zCreate a new paste using the bpaste.net service.

:contents: Paste contents string.
:returns: URL to the pasted contents, or an error message.
N)	HTTPError)	urlencode)urlopencodelexertextexpiry1weekzhttps://bpa.stascii)datar,   zbad response: zhref="/raw/(\w+)"z/show/zbad response: invalid format ('z'))reurllib.errorrU   urllib.parserV   urllib.requestrW   r/   rH   decodeOSErrorsearchr#   )
rS   r_   rU   rV   rW   paramsurlresponseems
   &         r   rL   rL   L   s     &&&h7CF
C$Ci/66w?@EEGNNwW 	 			&1AfQWWQZL))08;dBB  (Q#A3' QQQQ $s##$sS   ;B C7$
C.C3
C=C7CCCC7'C7(C2,C72C7c                    V ^8  d   QhRRRR/# )r   r*   r
   r   r   r   )r   s   "r   r   r   i   s     D D.> D4 Dr   c                d   V P                   P                  P                  R 8w  d   R# R V P                  9   d   V P	                  RR4       V P                  R ,           F  p VP
                  P                  P                  R,          P                  p\        4       p\        V P                   V4      pVP                  V4       VP                  4       p\        V4      '       g   Q h\!        V4      pV P#                  V RV 24       K  	  R# R#   \         d    T P                  T4      p Li ; i)r   NrD   rE   z --> )r(   r8   r   statsrK   longreprreprtracebackreprentriesreprfilelocAttributeError_getfailureheadliner   r   
toterminalgetvaluelenrL   rM   )r*   repmsgfiletwr3   rP   s   &      r   pytest_terminal_summaryr|   i   s   %%..(:#)))""3(NO#))(33C@ll00<<R@LL :D'(8(?(?FBNN2Aq66M6*1-K''3%u[M(BC 4 *
 " @&::3?@s   "1DD/.D/)__doc__
__future__r   ior   r<   typingr   _pytest.configr   r   _pytest.config.argparsingr   _pytest.deprecatedr   _pytest.stashr	   _pytest.terminalr
   pytestbytesr1   r$   hookimplr@   rQ   rL   r|   r   r   r   <module>r      sq    G "    ! 1 , ' " -  BuI&( 
 % %.@"C:Dr   