+
    -jO                       ^ RI Ht ^ RIt^ RIHt ^ RIHt ^ RIHt ^ RI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t^ RIHt Rt ! R R4      t]! 4       t] ! R R4      4       tR R lt ! R R]4      t ! R R4      t ! R R4      t ! R R]P:                  4      t ! R R]P>                  4      t  ! R R]PB                  4      t"R# )    )annotationsN)Callable)Mapping)Sequence)Any)final)Literal)NoReturn)
UsageError)check_ispytestfile_or_dirc                  "    ] tR t^tR R ltRtR# )NotSetc                   V ^8  d   QhRR/#    returnstr )formats   "n/Users/mitch_tango/dev/rabbit-r1-livekit/agent/.venv/lib/python3.14/site-packages/_pytest/config/argparsing.py__annotate__NotSet.__annotate__   s      #     c                	    R # )z<notset>r   selfs   &r   __repr__NotSet.__repr__   s    r   r   N)__name__
__module____qualname____firstlineno__r   __static_attributes__r   r   r   r   r      s     r   r   c                      ] tR t^tRtRRR/R R lllt]R R l4       t]P                  R	 R
 l4       tR R lt	RR R llt
R R ltRR R lltRR R lltRR R lltR]3RR/R R llltRtR# )ParserzParser for command line arguments and config-file values.

:ivar extra_info: Dict of generic param -> value to display in case
    there's an error processing the command line arguments.
N	_ispytestFc               (    V ^8  d   QhRRRRRRRR/# )	r   usage
str | None
processoptz!Callable[[Argument], None] | Noner'   boolr   Noner   )r   s   "r   r   Parser.__annotate__'   s2     / // 6/
 / 
/r   c               	d   \        V4       ^ RIHp W n        / V n        \        WV P                  4      V n        V P                  P                  R4      p\        VRV RR7      V n	        V P                  .V n
        V P                  P                  \        RR7      pWFn        / V n        / V n        R# )	r   )filescompleterzCustom options
_anonymousTr'   *)nargsN)r   _pytest._argcompleter0   _processopt
extra_infoPytestArgumentParser	optparseradd_argument_groupOptionGroupr1   _groupsadd_argumentFILE_OR_DIR	completer_inidict_ini_aliases)r   r)   r+   r'   r0   anonymous_arggroupfile_or_dir_args   &&&$   r   __init__Parser.__init__'   s     	y!7%*,-d4??K!^^>>?OP%dd
 (..55k5M$2!9;,.r   c                   V ^8  d   QhRR/# r   r   )r   s   "r   r   r.   B   s     # #c #r   c                	.    V P                   P                  # Nr9   progr   s   &r   rJ   Parser.progA   s    ~~"""r   c                    V ^8  d   QhRRRR/# )r   valuer   r   r-   r   )r   s   "r   r   r.   F   s     $ $# $$ $r   c                	&    WP                   n        R # rH   rI   )r   rM   s   &&r   rJ   rK   E   s    #r   c                    V ^8  d   QhRRRR/# )r   optionArgumentr   r-   r   )r   s   "r   r   r.   I   s     ) )H ) )r   c                	x    V P                   '       d(   VP                  '       d   V P                  V4       R # R # R # rH   )r6   dest)r   rP   s   &&r   processoptionParser.processoptionI   s/    {{{  (  r   c               (    V ^8  d   QhRRRRRRRR/# )r   namer   descriptionafterr*   r   r;   r   )r   s   "r   r   r.   N   s,      &)7A	r   c                   V P                    F  pVP                  V8X  g   K  Vu # 	  V P                  P                  T;'       g    T4      p\	        WQV RR7      p^ p\        V P                   4       F  w  rgVP                  V8X  g   K   M	  V P                   P                  V^,           V4       V P                  P                  P                  V^,           V P                  P                  P                  4       4       V# )a  Get (or create) a named option Group.

:param name: Name of the option group.
:param description: Long description for --help output.
:param after: Name of another group, used for ordering --help output.
:returns: The option group.

The returned group object has an ``addoption`` method with the same
signature as :func:`parser.addoption <pytest.Parser.addoption>` but
will be shown in the respective group in the output of
``pytest --help``.
Tr2   )	r<   rW   r9   r:   r;   	enumerateinsert_action_groupspop)r   rW   rX   rY   grouparggroupigrps   &&&&    r   getgroupParser.getgroupN   s     \\EzzT! " >>44[5H5HDIHDDA-FAxx5  . 	AE5) 	%%,,QUDNN4Q4Q4U4U4WXr   c               $    V ^8  d   QhRRRRRR/# r   optsr   attrsr   r   r-   r   )r   s   "r   r   r.   m   s!     2 2s 2S 2T 2r   c                >    V P                   P                  ! V/ VB  R# )a  Register a command line option.

:param opts:
    Option names, can be short or long options.
:param attrs:
    Same attributes as the argparse library's :meth:`add_argument()
    <argparse.ArgumentParser.add_argument>` function accepts.

After command line parsing, options are available on the pytest config
object via ``config.option.NAME`` where ``NAME`` is usually set
by passing a ``dest`` attribute, for example
``addoption("--long", dest="NAME", ...)``.
N)r1   	addoption)r   rg   rh   s   &*,r   rj   Parser.addoptionm   s     	!!4151r   c               $    V ^8  d   QhRRRRRR/# r   args Sequence[str | os.PathLike[str]]	namespaceargparse.Namespace | Noner   argparse.Namespacer   )r   s   "r   r   r.   }   s(     , ,., -, 
	,r   c                   ^ RI Hp V! V P                  4       V Uu. uF  p\        P                  ! V4      NK  	  ppVf   \
        P                  ! 4       p RVn        V P                  P                  WRR7      V=# u upi   T=i ; i)zParse the arguments.

Unlike ``parse_known_args`` and ``parse_known_and_unknown_args``,
raises PrintHelp on `--help` and UsageError on unknown flags

:meta private:
)try_argcompleteTrp   )	r5   rt   r9   osfspathargparse	Namespace_raise_print_helpparse_intermixed_args)r   rn   rp   rt   xstrargss   &&&   r   parseParser.parse}   sz     	9')-.A299Q<. **,I	,*.I'>>777U+ / +s   A="B Bc               $    V ^8  d   QhRRRRRR/# rm   r   )r   s   "r   r   r.      s-     	O 	O.	O -	O 
		Or   c                4    V P                  WR7      ^ ,          # )zRParse the known arguments at this point.

:returns: An argparse namespace object.
ru   )parse_known_and_unknown_args)r   rn   rp   s   &&&r   parse_known_argsParser.parse_known_args   s     000KANNr   c               $    V ^8  d   QhRRRRRR/# )r   rn   ro   rp   rq   r   z$tuple[argparse.Namespace, list[str]]r   )r   s   "r   r   r.      s-     R R.R -R 
.	Rr   c                   V Uu. uF  p\         P                  ! V4      NK  	  pp\        P                  R8  g!   R\        P                  u;8:  d   R8  do   M MkV P                  P                  WB4      w  r%Vf   Q h\        V\        4      p. pV F-  pVP                  R4      '       d   TMTP                  V4       K/  	  W'3# V P                  P                  WB4      # u upi )zParse the known arguments at this point, and also return the
remaining unknown flag arguments.

:returns:
    A tuple containing an argparse namespace object for the known
    arguments, and a list of unknown flag arguments.
-)         )r      )r   r      )rv   rw   sysversion_infor9   r   getattrr>   
startswithappendparse_known_intermixed_args)	r   rn   rp   r|   r}   unknownr   unknown_flagsargs	   &&&      r   r   #Parser.parse_known_and_unknown_args   s     *..A299Q<.j(Gs7G7G,T*,T!%!@!@!TI(((!)[9K')M"%.."5"5;NNsS ++>>==gQQ /s   C!aliasesc               0    V ^8  d   QhRRRRRRRRRR	R
R/# )r   rW   r   helptypezYLiteral['string', 'paths', 'pathlist', 'args', 'linelist', 'bool', 'int', 'float'] | Nonedefaultr   r   Sequence[str]r   r-   r   )r   s   "r   r   r.      sN     P, P,P, P,	P, P, P, 
P,r   c               @   VR9   g   Q hVf   RpV\         J d   \        V4      pW#V3V P                  V&   V Fb  pW`P                  9   d   \        RV: R24      hV P                  P                  V4      ;pe   \        V: RV: 24      hWP                  V&   Kd  	  R# )a  Register a configuration file option.

:param name:
    Name of the configuration.
:param type:
    Type of the configuration. Can be:

        * ``string``: a string
        * ``bool``: a boolean
        * ``args``: a list of strings, separated as in a shell
        * ``linelist``: a list of strings, separated by line breaks
        * ``paths``: a list of :class:`pathlib.Path`, separated as in a shell
        * ``pathlist``: a list of ``py.path``, separated as in a shell
        * ``int``: an integer
        * ``float``: a floating-point number

        .. versionadded:: 8.4

            The ``float`` and ``int`` types.

    For ``paths`` and ``pathlist`` types, they are considered relative to the config-file.
    In case the execution is happening without a config-file defined,
    they will be considered relative to the current working directory (for example with ``--override-ini``).

    .. versionadded:: 7.0
        The ``paths`` variable type.

    .. versionadded:: 8.1
        Use the current working directory to resolve ``paths`` and ``pathlist`` in the absence of a config-file.

    Defaults to ``string`` if ``None`` or not passed.
:param default:
    Default value if no config-file option exists but is queried.
:param aliases:
    Additional names by which this option can be referenced.
    Aliases resolve to the canonical name.

    .. versionadded:: 9.0
        The ``aliases`` parameter.

The value of configuration keys can be retrieved via a call to
:py:func:`config.getini(name) <pytest.Config.getini>`.
Nstringzalias z- conflicts with existing configuration optionz is already an alias of )	Nr   pathspathlistrn   linelistr,   intfloat)NOT_SETget_ini_default_for_typer@   
ValueErrorrA   get)r   rW   r   r   r   r   aliasalreadys   &&&&&$  r   addiniParser.addini   s    n  

 

 
	
 

 <Dg.t4G#73dE% UI%RS   ,,0077D E9,DWK!PQQ'+e$ r   )r1   r<   rA   r@   r6   r7   r9   )NN) NrH   r   )r    r!   r"   r#   __doc__rD   propertyrJ   setterrT   rc   rj   r~   r   r   r   r   r$   r   r   r   r&   r&      s    /
  / /4 # # 
[[$ $)
>2 ,0	OR@ P, "$P, P,r   r&   c                    V ^8  d   QhRRRR/# )r   r   zRLiteral['string', 'paths', 'pathlist', 'args', 'linelist', 'bool', 'int', 'float']r   r   r   )r   s   "r   r   r     s        		r   c                N    V R9   d   . # V R8X  d   R# V R8X  d   ^ # V R8X  d   R# R# )zg
Used by addini to get the default value for a given config option type, when
default is not supplied.
r,   Fr   r   g        r   )r   r   rn   r   r   )r   s   &r   r   r     s3     88				r   c                  2    ] tR tRtRtR R ltR R ltRtR# )	ArgumentErrori!  zQRaised if an Argument instance is created with invalid or
inconsistent arguments.c               $    V ^8  d   QhRRRRRR/# )r   msgr   rP   zArgument | strr   r-   r   )r   s   "r   r   ArgumentError.__annotate__%  s!     % %C % %D %r   c                	2    Wn         \        V4      V n        R # rH   )r   r   	option_id)r   r   rP   s   &&&r   rD   ArgumentError.__init__%  s    Vr   c                   V ^8  d   QhRR/# r   r   )r   s   "r   r   r   )  s       r   c                	v    V P                   '       d   R V P                    RV P                   2# V P                  # )zoption : )r   r   r   s   &r   __str__ArgumentError.__str__)  s0    >>>T^^,Btxxj9988Or   )r   r   N)r    r!   r"   r#   r   rD   r   r$   r   r   r   r   r   !  s    % r   r   c                  V    ] tR tRtRtR R ltR R ltR R ltR	 R
 ltR R lt	Rt
R# )rQ   i0  zClass that mimics the necessary behaviour of optparse.Option.

It's currently a least effort implementation and ignoring choices
and integer prefixes.

https://docs.python.org/3/library/optparse.html#optparse-standard-option-types
c               $    V ^8  d   QhRRRRRR/# )r   namesr   rh   r   r   r-   r   )r   s   "r   r   Argument.__annotate__9  s&     P Ps PS PT Pr   c                &   W n         . V n        . V n         VR,          V n         VR,          V n        V P                  V4       VP                  R4      pV'       d	   W0n        R
# V P                  '       d2   V P                  ^ ,          R,          P                  RR4      V n        R
#  V P                  ^ ,          R,          V n        R
#   \         d     Li ; i  \         d     Li ; i  \         d   pRT n        \        R	T 4      ThR
p?ii ; i)z5Store params in private vars for use in add_argument.r   r   rS   r   NNr   _:r   NNz???zneed a long or short optionN)_attrs_short_opts
_long_optsr   KeyErrorr   _set_opt_stringsr   rS   replace
IndexErrorr   )r   r   rh   rS   es   &*,  r   rD   Argument.__init__9  s    &(%'	fDI	 +DL 	e$ 99V,I___*2.66sC@DIP ,,Q/3	  		
  		  P!	#$A4HaOPs:   C
 C )C, 
CCC)(C),D7DDc                   V ^8  d   QhRR/# )r   r   z	list[str]r   )r   s   "r   r   r   T  s     2 2y 2r   c                	<    V P                   V P                  ,           # rH   )r   r   r   s   &r   r   Argument.namesT  s    $//11r   c                   V ^8  d   QhRR/# )r   r   zMapping[str, Any]r   )r   s   "r   r   r   W  s      ( r   c                	    R RRV P                   3 F  p \        W4      V P                  V&   K  	  V P                  #   \         d     K:  i ; i)r   rS   r   )rS   r   r   AttributeError)r   attrs   & r   rh   Argument.attrsW  sQ    		:D$+D$7D! ;
 {{ " s   =AAc                    V ^8  d   QhRRRR/# )r   rg   r   r   r-   r   )r   s   "r   r   r   `  s     , ,] ,t ,r   c                   V F  p\        V4      ^8  d   \        RV: R2V 4      h\        V4      ^8X  dK   V^ ,          R8X  d   V^,          R8w  g   \        RV: R2V 4      hV P                  P                  V4       K~  VR,          R8X  d   V^,          R8w  g   \        RV: R	2V 4      hV P                  P                  V4       K  	  R
# )zXDirectly from optparse.

Might not be necessary as this is passed to argparse later on.
zinvalid option string z&: must be at least two characters longr   zinvalid short option string z/: must be of the form -x, (x any non-dash char):r   r   N--zinvalid long option string z*: must start with --, followed by non-dashN)lenr   r   r   r   )r   rg   opts   && r   r   Argument._set_opt_strings`  s    
 C3x!|#,SG 4; ; 
 SQA##a&C-'6sg >H H 
   '',CD(SVs]'5cW =C C 
 &&s+- r   c                   V ^8  d   QhRR/# r   r   )r   s   "r   r   r   }  s     6 6# 6r   c                	>   . pV P                   '       d%   VR \        V P                   4      ,           .,          pV P                  '       d%   VR\        V P                  4      ,           .,          pVR\        V P                  4      ,           .,          p\	        V R4      '       d%   VR\        V P
                  4      ,           .,          p\	        V R4      '       d%   VR\        V P                  4      ,           .,          pRP                  RP                  V4      4      # )	z_short_opts: z_long_opts: zdest: r   ztype: r   z	default: zArgument({}), )	r   reprr   rS   hasattrr   r   r   join)r   rn   s   & r   r   Argument.__repr__}  s    _tD,<,<'==>>D???^d4??&;;<<DDO+,,4  XTYY/00D4##[4#5566D$$TYYt_55r   )r   r   r   r   rS   r   N)r    r!   r"   r#   r   rD   r   rh   r   r   r$   r   r   r   rQ   rQ   0  s&    P62,:6 6r   rQ   c                  R    ] tR tRtRtRR R lltR R ltR R ltRR	 R
 lltRt	R# )r;   i  z,A group of options shown in its own section.c          
     ,    V ^8  d   QhRRRRRRRRR	R
/# )r   r`   zargparse._ArgumentGrouprW   r   parserzParser | Noner'   r,   r   r-   r   )r   s   "r   r   OptionGroup.__annotate__  s<      )  	
  
r   c                	N    \        V4       Wn        W n        . V n        W0n        R # rH   )r   	_arggrouprW   optionsr   )r   r`   rW   r   r'   s   &&&&&r   rD   OptionGroup.__init__  s"     	y!!	')r   c               $    V ^8  d   QhRRRRRR/# rf   r   )r   s   "r   r   r     s!     ; ;s ;S ;T ;r   c                    \        V4      P                  R V P                   4       4      pV'       d   \        RV R24      h\	        V/ VB pV P                  VRR7       R# )a  Add an option to this group.

If a shortened version of a long option is specified, it will
be suppressed in the help. ``addoption('--twowords', '--two-words')``
results in help showing ``--two-words`` only, but ``--twowords`` gets
accepted **and** the automatic destination is in ``args.twowords``.

:param opts:
    Option names, can be short or long options.
:param attrs:
    Same attributes as the argparse library's :meth:`add_argument()
    <argparse.ArgumentParser.add_argument>` function accepts.
c              3  P   "   T F  qP                  4        F  q"x  K  	  K  	  R # 5irH   )r   ).0r   rW   s   &  r   	<genexpr>(OptionGroup.addoption.<locals>.<genexpr>  s      *
(SYY[TD[DLs   $&zoption names z already addedF
shortupperN)setintersectionr   r   rQ   _addoption_instance)r   rg   rh   conflictrP   s   &*,  r   rj   OptionGroup.addoption  sd     t9)) *
 LL*
 
 }XJnEFF4)5)  E :r   c               $    V ^8  d   QhRRRRRR/# rf   r   )r   s   "r   r   r     s!     : : :c :d :r   c                	B    \        V/ VB pV P                  VR R7       R# )Tr   N)rQ   r   )r   rg   rh   rP   s   &*, r   
_addoptionOptionGroup._addoption  s$    4)5)  D 9r   c               $    V ^8  d   QhRRRRRR/# )r   rP   rQ   r   r,   r   r-   r   )r   s   "r   r   r     s"     
$ 
$( 
$ 
$QU 
$r   c                	   V'       gL   VP                    F;  pV^ ,          R8X  g   K  V^,          P                  4       '       g   K2  \        R4      h	  V P                  '       d   V P                  P	                  V4       V P
                  P                  ! VP                  4       / VP                  4       B  V P                  P                  V4       R# )r   r   zlowercase shortoptions reservedN)r   islowerr   r   rT   r   r=   r   rh   r   r   )r   rP   r   r   s   &&& r   r   OptionGroup._addoption_instance  s    ))q6S=SV^^%5%5$%FGG * ;;;KK%%f-##V\\^Fv||~FF#r   )r   rW   r   r   N)F)
r    r!   r"   r#   r   rD   rj   r   r   r$   r   r   r   r;   r;     s    6;,:
$ 
$r   r;   c                  :   a  ] tR tRtR V 3R lltR R ltRtV ;t# )r8   i  c               (    V ^8  d   QhRRRRRRRR/# )	r   r   r&   r)   r*   r7   zdict[str, str]r   r-   r   )r   s   "r   r   !PytestArgumentParser.__annotate__  s2     % %% % #	%
 
%r   c                	P   < Wn         \        SV `	  VR \        R RR7       W0n        R# )F@)r)   add_helpformatter_classallow_abbrevfromfile_prefix_charsN)_parsersuperrD   DropShorterLongHelpFormatterr7   )r   r   r)   r7   	__class__s   &&&&r   rD   PytestArgumentParser.__init__  s2     8"% 	 	
 %r   c                    V ^8  d   QhRRRR/# )r   messager   r   r
   r   )r   s   "r   r   r    s     4 4S 4X 4r   c           	        V P                    RV 2pV P                  '       dH   VRRP                  R \        V P                  P	                  4       4       4       4      ,           ,          p\        V P                  4       V,           4      h)z1Transform argparse error message into UsageError.z	: error: 
c              3  6   "   T F  w  rR V RV 2x  K  	  R# 5i)z  r   Nr   )r   kvs   &  r   r   -PytestArgumentParser.error.<locals>.<genexpr>  s"      $*I$!"QCr!*Is   )rJ   r7   r   sorteditemsr   format_usage)r   r  r   s   && r   errorPytestArgumentParser.error  su    9WI.???4$)) $*01F1F1H*I$   C **,s233r   )r
  r7   )r    r!   r"   r#   rD   r  r$   __classcell__r  s   @r   r8   r8     s    % %$4 4r   r8   c                  J   a  ] tR tRtRtR V 3R lltR V 3R lltR tRtV ;t	# )	r  i  a  Shorten help for long options that differ only in extra hyphens.

- Collapse **long** options that are the same except for extra hyphens.
- Shortcut if there are only two options and one of them is a short one.
- Cache result on the action object as this is called at least 2 times.
c               $    V ^8  d   QhRRRRRR/# )r   rn   r   kwargsr   r-   r   )r   s   "r   r   )DropShorterLongHelpFormatter.__annotate__  s!     * *c *S *T *r   c                	x   < R V9  d"   \         P                  P                  4       VR &   \        SV `  ! V/ VB  R# )widthN)_pytest_ioget_terminal_widthr  rD   )r   rn   r   r  s   &*,r   rD   %DropShorterLongHelpFormatter.__init__  s3    & %kk<<>F7O$)&)r   c                    V ^8  d   QhRRRR/# )r   actionzargparse.Actionr   r   r   )r   s   "r   r   r!    s     $+ $+ $+C $+r   c                	  < \         SV `  V4      pV'       d   V^ ,          R8w  d   V# \        VRR4      pV'       d   V# VP                  R4      p\	        V4      ^8X  d7   \	        V^ ,          4      ^8X  g   \	        V^,          4      ^8X  d	   W!n        V# . p/ pV F  p\	        V4      ^8X  g   V^,          R8X  d   K#  VP                  R4      '       g   \        RV R2V4      hVR	,          pVP                  RR
4      p	W9  g"   \	        Wi,          4      \	        V4      8  g   K  WV	&   K  	  V F  p\	        V4      ^8X  g   V^,          R8X  d   VP                  V4       VR	,          VP                  VP                  RR
4      4      8X  g   Ka  VP                  VP                  RR^4      4       K  	  RP                  V4      p
Wn        V
# )r   r   _formatted_action_invocationNr    r   z&long optional argument without "--": []r   r   =)r  _format_action_invocationr   splitr   r+  r   r   r   r   r   r   )r   r)  orgstrresr   return_list
short_longrP   xxoption	shortenedformatted_action_invocationr  s   &&         r   r/  6DropShorterLongHelpFormatter._format_action_invocation  s   26:fQi3&M!&*H$OJ,,t$w<1#gaj/Q"6#gaj/Q:N28/M%'
F6{a6!9#3$$T**#<VHAF  bzH ((b1I*c*2G.H3L / )19%  F6{a6!9#3""6*bzZ^^FNN3,CDD""6>>#sA#>?	 
 '+ii&<#.I+**r   c                    ^ RI p. pVP                  4        F2  pVP                  VP                  VP	                  4       V4      4       K4  	  V# )zmWrap lines after splitting on original newlines.

This allows to have explicit line breaks in the help text.
N)textwrap
splitlinesextendwrapstrip)r   textr#  r:  lineslines   &&&   r   _split_lines)DropShorterLongHelpFormatter._split_lines  s?    
 	OO%DLLtzz|U;< &r   r   )
r    r!   r"   r#   r   rD   r/  rB  r$   r  r  s   @r   r  r    s'    * *$+ $+L
 
r   r  c                  B   a  ] tR tRtRtRR V 3R llltR R ltRtV ;t# )	OverrideIniActioni   zCustom argparse action that makes a CLI flag equivalent to overriding an
option, in addition to behaving like `store_true`.

This can simplify things since code only needs to inspect the config option
and not consider the CLI flag.
c               0    V ^8  d   QhRRRRRRRRRRR	R
/# )r   option_stringsr   rS   r   r4   zint | str | None
ini_option	ini_valuer   r-   r   )r   s   "r   r   OverrideIniAction.__annotate__(  sF     # #%# #  	# # # 
#r   c               	J   < \         SV `  ! W^ .VO5/ VB  W@n        WPn        R# )r   N)r  rD   rH  rI  )	r   rG  rS   r4   rH  rI  rn   r   r  s	   &&&&$$*,r   rD   OverrideIniAction.__init__(  s(     	qB4B6B$"r   c               $    V ^8  d   QhRRRRRR/# )r   r   zargparse.ArgumentParserrp   rr   r   r-   r   )r   s   "r   r   rJ  6  s(     > >'> &> 
>r   c                	    \        W P                  R 4       \        VRR4      pVf   . pVP                  V P                   RV P
                   24       \        VRV4       R# )Toverride_iniNr.  )setattrrS   r   r   rH  rI  )r   r   rp   rn   r   current_overridess   &&&*, r   __call__OverrideIniAction.__call__6  s]     		99d+#I~tD$ "  DOO#4Adnn5E!FG	>+<=r   )rH  rI  rH   )	r    r!   r"   r#   r   rD   rR  r$   r  r  s   @r   rE  rE     s    # #> >r   rE  )#
__future__r   rx   collections.abcr   r   r   rv   r   typingr   r   r	   r
   
exceptionsr   _pytest._ior$  _pytest.deprecatedr   r>   r   r   r&   r   	Exceptionr   rQ   r;   ArgumentParserr8   HelpFormatterr  ActionrE  r   r   r   <module>r^     s    "  $ # $ 	 
     "  -  
 ( i, i, i,X*I X6 X6v4$ 4$n4822 4:>8#9#9 >B"> ">r   