+
    yj,              	        a 0 t $ R t^ RIHt ^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIH	t	 ^ RI
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t]P(                  P*                  tR
 R lt ! R R]P0                  4      t]P4                  tR]R&   R R ltR R ltR R ltR8R R llt R R lt!RRRR/R R llt"R R  lt#]$! ^4       U u/ uF  q ]$! ^ ^4      9  g   K  V R!V R" 2bK  	  up t%]%PM                  ]'! R#4      R$]'! R%4      R&]'! R'4      R(/4       R) R* lt(]PR                   ! R+ R,4      4       t*R- t+R. t,R/ t-R0 R1 lt.R2 R3 lt/R4 R5 lt0R6 R7 lt1R# u up i )9z"Python version compatibility code.)annotationsN)	Parameter)	signature)Path)Any)Callable)Final)NoReturnc                    V ^8  d   QhRRRR/# )   pathzstr | os.PathLike[str]returnLEGACY_PATH )formats   "B/var/www/html/2rare/lib/python3.14/site-packages/_pytest/compat.py__annotate__r       s      ,      c                    \        V 4      # )zBInternal wrapper to prepare lazy proxies for legacy_path instances)r   )r   s   &r   legacy_pathr       s    tr   c                      ] tR t^(t^ tRtR# )
NotSetTyper   N)__name__
__module____qualname____firstlineno__token__static_attributes__r   r   r   r   r   (   s    Er   r   r   NOTSETc                    V ^8  d   QhRRRR/# r   funcobjectr   boolr   )r   s   "r   r   r   .   s     5 5v 5$ 5r   c                b    \         P                  ! V 4      pT;'       d    \        V 4      '       * # N)inspectisgeneratorfunctioniscoroutinefunction)r!   genfuncs   & r   is_generatorr*   .   s)    ))$/G44.t444r   c                    V ^8  d   QhRRRR/# r    r   )r   s   "r   r   r   3   s     	V 	Vf 	V 	Vr   c                X    \         P                  ! V 4      ;'       g    \        V RR4      # )ab  Return True if func is a coroutine function (a function defined with async
def syntax, and doesn't contain yield), or a function decorated with
@asyncio.coroutine.

Note: copied and modified from Python 3.5's builtin coroutines.py to avoid
importing asyncio directly, which in turns also initializes the "logging"
module as a side-effect (see issue #8).
_is_coroutineF)r&   r(   getattrr!   s   &r   r(   r(   3   s&     &&t,UUou0UUr   c                    V ^8  d   QhRRRR/# r    r   )r   s   "r   r   r   ?   s     I IF It Ir   c                T    \        V 4      ;'       g    \        P                  ! V 4      # )zVReturn True if the given function seems to be an async function or
an async generator.)r(   r&   isasyncgenfunctionr/   s   &r   is_async_functionr3   ?   s"     t$HH(B(B4(HHr   c                    V ^8  d   QhRRRR/# )r   curdirzstr | os.PathLike[str] | Noner   strr   )r   s   "r   r   r   E   s     & &"? &3 &r   c                   \        V 4      p \        \        P                  ! V 4      4      pV P                  P
                  pVe$    VP                  V4      pRWC^,           3,          # RW#^,           3,          #   \         d     Li ; i)Nz%s:%d)get_real_funcr   r&   getfile__code__co_firstlinenorelative_to
ValueError)functionr5   fnlinenorelfns   &&   r   getlocationrB   E   s    X&H	gooh'	(B--F	1NN6*E eaZ000b1*%%%	  		s   A9 9BBc                   V ^8  d   QhRR/# )r   r   intr   )r   s   "r   r   r   S   s      S r   c                   \        V RR4      pV'       g   ^ # \        \        P                  P                  R4      R\	        4       4      p\        \        P                  P                  R4      R\	        4       4      p\        V Uu. uF;  pVP                  '       d   K  VP                  VJ g   VP                  VJ g   K9  VNK=  	  up4      # u upi )z>Return number of arguments used up by mock arguments (if any).	patchingsNmockDEFAULTzunittest.mock)r.   sysmodulesgetr"   lenattribute_namenew)r>   rF   mock_sentinelut_mock_sentinelps   &    r   num_mock_patch_argsrR   S   s    +t4ICKKOOF3YIMs{{?FHU 	
##  -'1554D+D A	
 	
s   CC Cname clsc               (    V ^8  d   QhRRRRRRRR/# )	r   r>   zCallable[..., object]rS   r6   rU   ztype | Noner   tuple[str, ...]r   )r   s   "r   r   r   f   s8     A A#A A 
	A
 Ar   c                   \        V 4      P                  p\        ;QJ d"    . R XP                  4        4       F  NK  	  5M! R XP                  4        4       4      pV'       g   V P                  pV'       d6   \        \        P                  ! W!RR7      \        4      '       g
   VR	,          p\        V R
4      '       d   V\        V 4      R pV#   \        \        3 d"   p^ RIHp T! RT : RT 2RR7        Rp?LRp?ii ; i)a  Return the names of a function's mandatory arguments.

Should return the names of all function arguments that:
* Aren't bound to an instance or type as in instance or class methods.
* Don't have default values.
* Aren't bound with functools.partial.
* Aren't replaced with mocks.

The cls arguments indicate that the function should be treated as a bound
method even though it's not unless the function is a static method.

The name parameter should be the original name in which the function was collected.
)failz!Could not determine arguments of z: F)pytraceNc              3     "   T Fo  pVP                   \        P                  J g!   VP                   \        P                  J g   KA  VP                  \        P
                  J g   Ka  VP                  x  Kq  	  R # 5ir%   kindr   POSITIONAL_OR_KEYWORDKEYWORD_ONLYdefaultemptyrS   .0rQ   s   & r   	<genexpr>"getfuncargnames.<locals>.<genexpr>   sX      $AFFi555vv///	 	 II( 	$s   >A9A9%A9)r`   :   NN__wrapped__)r   
parametersr=   	TypeError_pytest.outcomesrY   tuplevaluesr   
isinstancer&   getattr_staticstaticmethodhasattrrR   )r>   rS   rU   rh   erY   	arg_namess   &$$    r   getfuncargnamesrs   f   s    8
x(33
  ""$ ""$ I    	""3d;\
 
 bM	x''1(;=>	G 	" 
)/|2aSA	
 	

s   C D#C??Dc                    V ^8  d   QhRRRR/# )r   r>   zCallable[..., Any]r   rW   r   )r   s   "r   r   r      s     	 	$6 	? 	r   c                    \         ;QJ d5    . R  \        V 4      P                  P                  4        4       F  NK  	  5# ! R  \        V 4      P                  P                  4        4       4      # )c              3     "   T Fb  pVP                   \        P                  \        P                  39   g   K4  VP                  \        P
                  Jg   KT  VP                  x  Kd  	  R # 5ir%   r\   rb   s   & r   rd   (get_default_arg_names.<locals>.<genexpr>   sQ      8A66i55y7M7MNN 	 IIY__, 	8s   1A,A,A,)rk   r   rh   rl   )r>   s   &r   get_default_arg_namesrx      s^     5 8$//6685 5 8$//668  r   z\x02x	z\tz\r
z\nc                    V ^8  d   QhRRRR/# )r   valzbytes | strr   r6   r   )r   s   "r   r   r      s     ? ?{ ?s ?r   c                    \        V \        4      '       d   V P                  RR4      pM V P                  R4      P                  R4      pVP	                  \
        4      # )a  If val is pure ASCII, return it as an str, otherwise, escape
bytes objects into a sequence of escaped bytes:

b'\xc3\xb4\xc5\xd6' -> r'\xc3\xb4\xc5\xd6'

and escapes strings into a sequence of escaped unicode ids, e.g.:

r'4\nV\U00043efa\x0eMXWB\x1e\u3028\u15fd\xcd\U0007d944'

Note:
   The obvious "v.decode('unicode-escape')" will return
   valid UTF-8 unicode if it finds them in bytes, but we
   want to return escaped bytes for any byte, even if they match
   a UTF-8 string.
asciibackslashreplaceunicode_escape)rm   bytesdecodeencode	translate$_non_printable_ascii_translate_table)r~   rets   & r   ascii_escapedr      sL      #ujj"45jj)*11':===>>r   c                  &    ] tR t^t$ RtR]R&   RtR# )_PytestWrappera  Dummy wrapper around a function object for internal use only.

Used to correctly unwrap the underlying function object when we are
creating fixtures, because we wrap the function object ourselves with a
decorator to issue warnings when the fixture function is called directly.
r   objr   N)r   r   r   r   __doc____annotations__r   r   r   r   r   r      s     
Hr   r   c                X   T p\        ^d4       FI  p\        V RR4      p\        V\        4      '       d   VP                  p  M<\        V RR4      pVf    M)Tp KK  	  ^ RIHp \        RV! V4       RV! V 4       24      h\        V \        P                  4      '       d   V P                  p V # )zfGet the real function object of the (possibly) wrapped object by
functools.wraps or functools.partial.__pytest_wrapped__Nrg   )safereprz could not find real function of z
stopped at )ranger.   rm   r   r   _pytest._io.safereprr   r=   	functoolspartialr!   )r   	start_objinew_objr   s   &    r   r8   r8      s     I3Z #3T:g~..++C#}d3?  	2.x	/B.C=QYZ]Q^P_`
 	
 #y(())hhJr   c                     \        V R4      p\        V 4      p T'       d?   \        T R4      '       d-   \        T P                  4      '       d   T P	                  T4      p T #   \         d    T u # i ; i)zAttempt to obtain the real function object that might be wrapping
``obj``, while at the same time returning a bound method to ``holder`` if
the original object was a bound method.__func____get__)rp   r8   	Exceptioncallabler   )r   holder	is_methods   && r   get_real_methodr      se    C,	C  WS),,#++1F1Fkk&!J	  
s   A! !A10A1c                B     V P                   #   \         d    T u # i ; ir%   )r   AttributeErrorr/   s   &r   	getimfuncr   
  s%    }} s    c               (    V ^8  d   QhRRRRRRRR/# )r   r"   r   rS   r6   r`   r   r   )r   s   "r   r   r     s(       C # # r   c                F    ^ RI Hp  \        WV4      #   T d    Tu # i ; i)a:  Like getattr but return default upon any Exception or any OutcomeException.

Attribute access can potentially fail for 'evil' Python objects.
See issue #214.
It catches OutcomeException because of #2490 (issue #580), new outcomes
are derived from BaseException instead of Exception (for more details
check #2707).
)TEST_OUTCOME)rj   r   r.   )r"   rS   r`   r   s   &&& r   safe_getattrr     s-     .vW-- s    	  c                    V ^8  d   QhRRRR/# )r   r   r"   r   r#   r   )r   s   "r   r   r   "  s      f  r   c                T     \         P                  ! V 4      #   \         d     R# i ; i)z0Ignore any exception via isinstance on Python 3.F)r&   isclassr   )r   s   &r   safe_isclassr   "  s(    s## s    ''c                   V ^8  d   QhRR/# )r   r   z
int | Noner   )r   s   "r   r   r   *  s     - -Z -r   c                     \         P                  R8X  g   \         P                  R8X  d   R# Rp \        P                  ! 4       pW8w  d   V# R# )zReturn the current process's real user id or None if it could not be
determined.

:return: The user id or None if it could not be determined.
win32
emscriptenN)rI   platformosgetuid)ERRORuids     r   get_user_idr   *  sA     ||w#,,,">  iikls,,r   c                    V ^8  d   QhRRRR/# )r   valuer	   r   r   )r   s   "r   r   r   ^  s     G G GX Gr   c                D    Q RV  R\        V 4      P                   R24       h)FzUnhandled value: z ())typer   )r   s   &r   assert_neverr   ^  s'    F%eWBtE{/C/C.DAFF5r   r%   )2__conditional_annotations__r   
__future__r   dataclassesenumr   r&   r   r   r   pathlibr   rI   typingr   r   r   r	   pyr   localr   r   Enumr   r   r   r   r*   r(   r3   rB   rR   rs   rx   r   r   updateordr   	dataclassr   r8   r   r   r   r   r   r   )r   r   s   0@r   <module>r      s]   ( "       	  
     	 ggnn     5
	VI&&A A 	AH	 $Cj((U2s^,CAQsG}j( $ % + +Ys4y%TE:
?.   6"-hGQ(s   E%E