shell bypass 403

GrazzMean-Shell Shell

Uname: Linux business55.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64
Software: LiteSpeed
PHP version: 8.1.31 [ PHP INFO ] PHP os: Linux
Server Ip: 162.213.251.212
Your Ip: 3.145.63.136
User: allssztx (535) | Group: allssztx (533)
Safe Mode: OFF
Disable Function:
NONE

name : argparse.cpython-313.pyc
�

1}g�����SrSr/SQrSSKrSSKrSSKrSSK	J	r
Jr SrSr
SrS	rS
rSrSr"S
S\5rSr"SS\5r"SS\5r"SS\5r"SS\5r"SS\5rSr"SS\5r"SS\5r"SS \5r\"5r "S!S"\5r!"S#S$\5r""S%S&\5r#"S'S(\#5r$"S)S*\#5r%"S+S,\5r&"S-S.\5r'"S/S0\5r("S1S2\5r)"S3S4\5r*"S5S6\5r+"S7S8\&5r,"S9S:\5r-"S;S<\5r."S=S>\5r/"S?S@\/5r0"SASB\05r1"SCSD\\/5r2g)Ea�
Command-line parsing library

This module is an optparse-inspired command-line parsing library that:

    - handles both optional and positional arguments
    - produces highly informative usage messages
    - supports parsers that dispatch to sub-parsers

The following is a simple usage example that sums integers from the
command-line and writes the result to a file::

    parser = argparse.ArgumentParser(
        description='sum the integers at the command line')
    parser.add_argument(
        'integers', metavar='int', nargs='+', type=int,
        help='an integer to be summed')
    parser.add_argument(
        '--log', default=sys.stdout, type=argparse.FileType('w'),
        help='the file where the sum should be written')
    args = parser.parse_args()
    args.log.write('%s' % sum(args.integers))
    args.log.close()

The module contains the following public classes:

    - ArgumentParser -- The main entry point for command-line parsing. As the
        example above shows, the add_argument() method is used to populate
        the parser with actions for optional and positional arguments. Then
        the parse_args() method is invoked to convert the args at the
        command-line into an object with attributes.

    - ArgumentError -- The exception raised by ArgumentParser objects when
        there are errors with the parser's actions. Errors raised while
        parsing the command-line are caught by ArgumentParser and emitted
        as command-line messages.

    - FileType -- A factory for defining types of files to be created. As the
        example above shows, instances of FileType are typically passed as
        the type= argument of add_argument() calls.

    - Action -- The base class for parser actions. Typically actions are
        selected by passing strings like 'store_true' or 'append_const' to
        the action= argument of add_argument(). However, for greater
        customization of ArgumentParser actions, subclasses of Action may
        be defined and passed as the action= argument.

    - HelpFormatter, RawDescriptionHelpFormatter, RawTextHelpFormatter,
        ArgumentDefaultsHelpFormatter -- Formatter classes which
        may be passed as the formatter_class= argument to the
        ArgumentParser constructor. HelpFormatter is the default,
        RawDescriptionHelpFormatter and RawTextHelpFormatter tell the parser
        not to change the formatting for help text, and
        ArgumentDefaultsHelpFormatter adds information about argument defaults
        to the help.

All other classes in this module are considered implementation details.
(Also note that HelpFormatter and RawDescriptionHelpFormatter are only
considered public as object names -- the API of the formatter objects is
still considered an implementation detail.)
z1.1)�ArgumentParser�
ArgumentError�ArgumentTypeError�BooleanOptionalAction�FileType�
HelpFormatter�ArgumentDefaultsHelpFormatter�RawDescriptionHelpFormatter�RawTextHelpFormatter�MetavarTypeHelpFormatter�	Namespace�Action�ONE_OR_MORE�OPTIONAL�PARSER�	REMAINDER�SUPPRESS�ZERO_OR_MORE�N)�gettext�ngettextz==SUPPRESS==�?�*�+zA...�...�_unrecognized_argsc�*�\rSrSrSrSrSrSrSrg)�_AttributeHolder�kaAbstract base class that provides __repr__.

The __repr__ method returns a string in the format::
    ClassName(attr=name, attr=name, ...)
The attributes are determined either by a class-level attribute,
'_kwarg_names', or by inspecting the instance __dict__.
c��[U5Rn/n0nUR5HnUR[	U55 M UR5H8upVUR
5(aURU<SU<35 M4XcU'M: U(aURS[	U5-5 U<SSRU5<S3$)N�=z**%s�(�, �))�type�__name__�	_get_args�append�repr�_get_kwargs�isidentifier�join)�self�	type_name�arg_strings�	star_args�arg�name�values       �//opt/alt/python313/lib64/python3.13/argparse.py�__repr__�_AttributeHolder.__repr__ts�����J�'�'�	����	��>�>�#�C����t�C�y�)�$��+�+�-�K�D�� � �"�"��"�"�d�E�#:�;�"'�$��	.�
����v��Y��7�8�$�d�i�i��&<�=�=�c�H�[URR55$�N)�list�__dict__�items�r,s r3r)�_AttributeHolder._get_kwargs�s���D�M�M�'�'�)�*�*r6c��/$r8�r<s r3r&�_AttributeHolder._get_args�s���	r6r?N)	r%�
__module__�__qualname__�__firstlineno__�__doc__r4r)r&�__static_attributes__r?r6r3rrks���
>�+�r6rc�d�Uc/$[U5[LaUSS$SSKnURU5$�Nr)r$r9�copy)r;rHs  r3�_copy_itemsrI�s5���}��	��E�{�d���Q�x����9�9�U��r6c���\rSrSrSrS"SjrSrSr"SS\5r	S	r
S
rSrSr
S#S
jrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSr S r!S!r"g)$r�z�Formatter for generating usage messages and argument help strings.

Only the name of this class is considered a public API. All the methods
provided by the class are considered an implementation detail.
Nc��Uc#SSKnUR5RnUS-nXlX l[U[
US-
US-55UlX@lSUl	SUl
SUlURUS5Ul
URUl[R "S[R"5Ul[R "S5Ulg)Nr��z\s+z\n\n\n+)�shutil�get_terminal_size�columns�_prog�_indent_increment�min�max�_max_help_position�_width�_current_indent�_level�_action_max_length�_Section�
_root_section�_current_section�_re�compile�ASCII�_whitespace_matcher�_long_break_matcher)r,�prog�indent_increment�max_help_position�widthrOs      r3�__init__�HelpFormatter.__init__�s����=���,�,�.�6�6�E��Q�J�E��
�!1��"%�&7�&)�%�"�*�6F��6J�&K�#M����� ������"#���!�]�]�4��6��� $� 2� 2���#&�;�;�v�s�y�y�#A�� �#&�;�;�z�#:�� r6c�l�U=RUR-
slU=RS-
slg�N��rXrSrYr<s r3�_indent�HelpFormatter._indent�s'������ 6� 6�6�����q��r6c��U=RUR-slURS:�dS5eU=RS-slg)NrzIndent decreased below 0.rkrlr<s r3�_dedent�HelpFormatter._dedent�sA������ 6� 6�6���#�#�q�(�E�*E�E�(����q��r6c�$�\rSrSrSSjrSrSrg)�HelpFormatter._Section��Nc�6�XlX lX0l/Ulgr8)�	formatter�parent�headingr;)r,rvrwrxs    r3rg�HelpFormatter._Section.__init__�s��&�N� �K�"�L��D�Jr6c	��URbURR5 URRnU"URVVs/sH
up#U"U6PM snn5nURbURR5 U(dgUR[LaKURb>URRn[S5[URS9-nSUSU4-nOSnU"SXtS/5$s snnf)N�z%(heading)s:)rx�%*s%s
�
)rwrvrm�_join_partsr;rprxrrX�_�dict)r,r+�func�args�	item_help�current_indent�heading_textrxs        r3�format_help�"HelpFormatter._Section.format_help�s����{�{�&����&�&�(��>�>�-�-�D��D�J�J�G�J�j�d�d�D�k�J�G�H�I��{�{�&����&�&�(����|�|�8�+����0H�!%���!?�!?�� ��0�4����3M�M��#�~�r�<�&H�H������w�4�8�9�9��#Hs�D
)rvrxr;rwr8)r%rArBrCrgr�rEr?r6r3r[rs�s��	�	:r6r[c�P�URRRX45 gr8)r]r;r')r,r�r�s   r3�	_add_item�HelpFormatter._add_item�s�����#�#�*�*�D�<�8r6c��UR5 URXRU5nURUR/5 X lgr8)rmr[r]r�r�)r,rx�sections   r3�
start_section�HelpFormatter.start_section�s;�������-�-��&;�&;�W�E�����w�*�*�B�/� '�r6c�Z�URRUlUR5 gr8)r]rwrpr<s r3�end_section�HelpFormatter.end_section�s�� $� 5� 5� <� <������r6c�Z�U[La"UbURURU/5 gggr8)rr��_format_text)r,�texts  r3�add_text�HelpFormatter.add_text�s-���x��D�$4��N�N�4�,�,�t�f�5�%5�r6c�X�U[La!XX44nURURU5 ggr8)rr��
_format_usage)r,�usage�actions�groups�prefixr�s      r3�	add_usage�HelpFormatter.add_usage�s-���� ��6�1�D��N�N�4�-�-�t�4�!r6c��UR[La�URn[U"U55UR-/nURU5H0nUR
[U"U55UR-5 M2 [U5n[URU5UlURURU/5 ggr8)�helpr�_format_action_invocation�lenrX�_iter_indented_subactionsr'rUrZr��_format_action)r,�action�get_invocation�invocation_lengths�	subaction�
action_lengths      r3�add_argument�HelpFormatter.add_arguments����;�;�h�&�"�;�;�N�"%�n�V�&<�"=��@T�@T�"T�!U��!�;�;�F�C�	�"�)�)�#�n�Y�.G�*H�4�K_�K_�*_�`�D� � 2�3�M�&)�$�*A�*A�*7�'9�D�#�
�N�N�4�.�.���9�'r6c�8�UHnURU5 M gr8)r�)r,r�r�s   r3�
add_arguments�HelpFormatter.add_argumentss���F����f�%�r6c��URR5nU(a0URRSU5nUR	S5S-nU$)N�

r})r\r�rb�sub�strip)r,r�s  r3r��HelpFormatter.format_helpsI���!�!�-�-�/����+�+�/�/���=�D��:�:�d�#�d�*�D��r6c�x�SRUVs/sHnU(dMU[LdMUPM sn5$s snf)Nr{)r+r)r,�part_strings�parts   r3r~�HelpFormatter._join_parts"sC���w�w�$0�:�$0�D���$(��$8��$0�:�;�	;��:s�7�7�7c�^�Uc[S5nUbU[URS9-nGOUcU(dS[URS9-nGO�UGc�S[URS9-n/n/nUH8nUR(aUR	U5 M'UR	U5 M: UR
n	U	"Xg-U5n
SR
XZ4Vs/sH
o�(dMUPM sn5nURUR-
m[U5[U5-T:�GaURXc5nURXs5n
S
U4Sjjn[U5[U5-ST-::abS[U5[U5-S--nU(a%U"U/U-X�5nURU"X�55 OyU
(aU"U/U
-X�5nOdU/nO`S[U5-nX�-nU"UU5n[U5S:�a0/nURU"X�55 URU"X�55 U/U-nSR
U5nU<U<S	3$s snf)Nzusage: �rcz%(prog)s� c�>�/n/n[U5nUb[U5S-
nOUS-
nUHknUS-[U5-T:�a1U(a*URUSRU5-5 /nUS-
nURU5 U[U5S--
nMm U(a#URUSRU5-5 UbUSUSUS'U$)Nrkr�r)r�r'r+)	�parts�indentr��lines�line�
indent_length�line_lenr��
text_widths	        �r3�	get_lines�.HelpFormatter._format_usage.<locals>.get_linesNs�����E��D�$'��K�M��)�#&�v�;��?��#0�1�#4�� %��#�a�<�#�d�)�3�j�@�T�!�L�L��#�(�(�4�.�)@�A�#%�D�'4�q�'8�H����D�)� �C��I��M�1��
!&�����V�c�h�h�t�n�%<�=��)�#(��8�M�N�#;��a�� �Lr6g�?rkr}r�r8)rr�rR�option_stringsr'�_format_actions_usager+rWrXr��_get_actions_usage_parts�extend)r,r�r�r�r�rc�	optionals�positionalsr��format�action_usage�s�	opt_parts�	pos_partsr�r�r�r�r�s                  @r3r��HelpFormatter._format_usage's0����>��y�\�F����D�d�j�j�1�1�E��]�7���4�:�:�!6�6�E��]���$�*�*� 5�5�D��I��K�!���(�(��$�$�V�,��&�&�v�.�	"��/�/�F�!�)�"9�6�B�L��H�H�$�)=�C�)=�A��a�)=�C�D�E����t�';�';�;�J��6�{�S��Z�'�*�4�!�9�9�)�L�	� �9�9�+�N�	�!�,�v�;��T��*�d�Z�.?�?� �C��K�#�d�)�$;�a�$?�@�F� � )�4�&�9�*<�f� M�����Y�y�%A�B�"� )�4�&�9�*<�f� M��!%���!�3�v�;�.�F�%�1�E�%�e�V�4�E��5�z�A�~� "�����Y�y�%A�B����Y�y�%A�B�!�F�U�N�E��	�	�%�(��$�U�+�+��uDs�
I�Ic�B�SRURX55$)Nr�)r+r�)r,r�r�s   r3r��#HelpFormatter._format_actions_usages���x�x��5�5�g�F�G�Gr6c��[5n0nUH�nUR(d[SU35e[SUR55(aMEUR	URS5nU[UR5-nXUUR:Xa"UR
UR5 XTXg4'M�M� /nUH�n	U	R[LaSn
O�U	R(d?URU	5nURX�5n
X�;aU
SS:XaU
SS:XaU
SSn
OvU	RSnU	RS:XaU	R5n
O+URU	5nURX�5n
U<SU
<3n
U	R(d
X�;aS	U
-n
UR!U
5 M� [5n[#US
S9H�upgXFU4nX�UVs/sH	o�cMUPM nn[U5nUR(aUS:�aSOS
unnOSunnUUS-US'USU-US'[%USSUS9H'unn
UU;dMU
S-UU'UR'U5 M) USX�U-S-
'[)UU-U5HnSUU'M
 M� UVs/sH	o�cMUPM sn$![a GM�f=fs snfs snf)Nzempty group c3�D# �UHoR[Lv� M g7fr8)r�r)�.0r�s  r3�	<genexpr>�9HelpFormatter._get_actions_usage_parts.<locals>.<genexpr>�s���N�9M�v�;�;�(�*�9M�s� r�[����]rkr��[%s]T)�reverse�())r{r{z[])�startz |)�set�_group_actions�
ValueError�all�indexr��updater�rr��#_get_default_metavar_for_positional�_format_args�nargs�format_usage�!_get_default_metavar_for_optional�requiredr'�sorted�	enumerate�add�range)r,r�r��
group_actions�inserts�groupr��endr�r�r��default�
option_string�args_string�inserted_separators_indices�item�group_parts�
group_size�open�close�is                     r3r��&HelpFormatter._get_actions_usage_parts�s�����
����E��'�'� �<��w�!7�8�8��N��9M�9M�N�N�N��
0��
�
�e�&:�&:�1�&=�>���c�%�"6�"6�7�7����%��)=�)=�=�!�(�(��)=�)=�>�*/�E�J�'�>��$���F��{�{�h�&����*�*��B�B�6�J���(�(��9���*��A�w�#�~�$�r�(�c�/�#�A�b�z���!'� 5� 5�a� 8�
��<�<�1�$�!�.�.�0�D�
#�D�D�V�L�G�"&�"3�"3�F�"D�K�&3�[�A�D����6�+F�!�D�=�D�
�L�L���K�P'*�e�#� ��$�7�J�E��3�J�'�E�,1��,<�Q�,<�D�4�,<�K�Q��[�)�J��~�~�&0�1�n�d�(���e�"���e�!�K��N�2�K��N�)�"�o��5�K��O�$�[��"�%5�U�C���4��7�7�#�d�{�E�!�H�/�3�3�A�6�	D�
-8��O�E�*�$�q�(�)��5�:�-�s�3����a��4�!8�("'�;�����;�;��O�
��
��jR��$<s*�J2� K�*K�K	�)K	�2
K�Kc���SU;aU[URS9-n[URUR-
S5nSUR-nURXU5S-$)Nz%(prog)r��r�r�)r�rRrUrWrX�
_fill_text)r,r�r�r�s    r3r��HelpFormatter._format_text�s^������$�D�J�J�/�/�D�����t�';�';�;�R�@�
��t�+�+�+�����t��8�6�A�Ar6c��[URS-UR5n[URU-
S5nX R
-
S-
nUR
U5nUR(dUR
SU4nSU-nO<[U5U::aUR
SXE4nSU-nSnOUR
SU4nSU-nUnU/nUR(a�URR5(agURU5n	U	(aNURX�5n
URSWSU
S4-5 U
SSHnURSUSU4-5 M O'URS5(dURS5 URU5H#nURURU55 M% UR!U5$)	NrMr�r{r|z	%*s%-*s  rrkr})rTrZrVrUrWrXr�r�r�r��_expand_help�_split_linesr'�endswithr�r�r~)
r,r��
help_position�
help_width�action_width�
action_header�tup�indent_firstr��	help_text�
help_linesr�r�s
             r3r��HelpFormatter._format_action�s����D�3�3�a�7� �3�3�5�
�����}�4�b�9�
�$�';�';�;�a�?���6�6�v�>�
��{�{��&�&��M�9�C�%��O�M���
�<�
/��&�&��L�G�C�'�#�-�M��L��&�&��M�9�C�%��O�M�(�L�����;�;�6�;�;�,�,�.�.��)�)�&�1�I��!�.�.�y�E�
����Y�,��J�q�M�)J�J�K�&�q�r�N�D��L�L��m�R��-F�!F�G�+���'�'��-�-��L�L����7�7��?�I��L�L��,�,�Y�7�8�@�����&�&r6c�n�UR(d7URU5nSRURX5"S55$URS:XaSRUR5$URU5nUR
X5nSRUR5S-U-$)Nr�rkrr")r�r�r+�_metavar_formatterr�r�r�)r,r�r�r�s    r3r��'HelpFormatter._format_action_invocations����$�$��>�>�v�F�G��8�8�D�3�3�F�D�Q�G�H�H��|�|�q� ��y�y��!6�!6�7�7�
�@�@��H��"�/�/��@���y�y��!6�!6�7�#�=��K�Kr6c�^�URb
URmO<URb-SSR[[UR55-mOUmU4SjnU$)N�{%s}�,c�>>�[T[5(aT$T4U-$r8)�
isinstance�tuple)�
tuple_size�results �r3r��0HelpFormatter._metavar_formatter.<locals>.format*s"����&�%�(�(��
��z�J�.�.r6)�metavar�choicesr+�map�str)r,r��default_metavarr�rs    @r3r� HelpFormatter._metavar_formatter"sO����>�>�%��^�^�F�
�^�^�
'��c�h�h�s�3����'?�@�@�F�$�F�	/�
�
r6c���URX5nURc
SU"S5-nU$UR[:Xa
SU"S5-nU$UR[:Xa&U"S5n[	U5S:XaSU-nU$SU-nU$UR[
:Xa
SU"S5-nU$UR[:XaSnU$UR[:Xa
S	U"S5-nU$UR[:XaS
nU$[UR5Vs/sHnSPM nnSRU5U"UR5-nU$s snf![a
 [S5Sef=f)
Nz%srkr�rMz
[%s [%s ...]]z[%s ...]z%s [%s ...]rz%s ...r{zinvalid nargs valuer�)
rr�rrr�rrrrr��	TypeErrorr�r+)r,r�r�get_metavarrrr�formatss        r3r��HelpFormatter._format_args1s����-�-�f�F���<�<���K��N�*�F�.�
�-�\�\�X�
%��k�!�n�,�F�*�
�)�\�\�\�
)�!�!�n�G��7�|�q� �(�7�2��"�
�$�g�-���
��\�\�[�
(�"�[��^�3�F��
��\�\�Y�
&��F��
��\�\�V�
#���A��.�F��
��\�\�X�
%��F��
�
B�).�v�|�|�)<�=�)<�A�4�)<��=��X�X�g�&��V�\�\�)B�B�F��
��	>���
B� �!6�7�T�A�
B�s�:E
�E�E
�E
�
E!c��[[U5URS9n[U5HnX#[LdMX#	M [U5H(n[X#S5(dMX#RX#'M* URS5b%SR[[US55US'URU5U-$)Nr�r%rr")r��varsrRr9r�hasattrr%�getr+rr�_get_help_string)r,r��paramsr1s    r3r�HelpFormatter._expand_helpMs����d�6�l����4����L�D��|�x�'��L�!���L�D��v�|�Z�0�0�%�|�4�4���!��:�:�i� �,� $�	�	�#�c�6�)�3D�*E� F�F�9���$�$�V�,�v�5�5r6c#�# �URnUR5 U"5Shv�N UR5 gN![a gf=f7fr8)�_get_subactionsrmrp�AttributeError)r,r��get_subactionss   r3r��'HelpFormatter._iter_indented_subactionsYsM���	�#�3�3�N�
�L�L�N�%�'�'�'��L�L�N�
(��	�	��	�s1�A�A�A�A�A�
A�A�A�Ac��URRSU5R5nSSKnUR	X5$)Nr�r)rar�r��textwrap�wrap)r,r�rfr3s    r3r�HelpFormatter._split_linescs7���'�'�+�+�C��6�<�<�>��	��}�}�T�)�)r6c��URRSU5R5nSSKnUR	XUUS9$)Nr�r)�initial_indent�subsequent_indent)rar�r�r3�fill)r,r�rfr�r3s     r3r�HelpFormatter._fill_textjsD���'�'�+�+�C��6�<�<�>����}�}�T�,2�/5��7�	7r6c��UR$r8)r��r,r�s  r3r*�HelpFormatter._get_help_stringq����{�{�r6c�6�URR5$r8)�dest�upperr<s  r3r��/HelpFormatter._get_default_metavar_for_optionalts���{�{� � �"�"r6c��UR$r8)r@r<s  r3r��1HelpFormatter._get_default_metavar_for_positionalwr>r6)rZrXr]rSrYrbrVrRr\rarW)rM�Nr8)#r%rArBrCrDrgrmrp�objectr[r�r�r�r�r�r�r�r�r~r�r�r�r�r�r�rr�rr�rrr*r�r�rEr?r6r3rr�s����#$�#%��	;�>��
:�6�:�@9�(��6�5�
:�"&��;�
V,�pH�T<�lB�.'�`L�&
��8
6��*�7��#�r6rc��\rSrSrSrSrSrg)r	i{z�Help message formatter which retains any formatting in descriptions.

Only the name of this class is considered a public API. All the methods
provided by the class are considered an implementation detail.
c�T^�SRU4SjURSS955$)Nr{c3�.># �UH
nTU-v� M g7fr8r?)r�r�r�s  �r3r��9RawDescriptionHelpFormatter._fill_text.<locals>.<genexpr>�s����P�1O��v��}�1O�s�T)�keepends)r+�
splitlines)r,r�rfr�s   `r3r�&RawDescriptionHelpFormatter._fill_text�s#����w�w�P����$��1O�P�P�Pr6r?N)r%rArBrCrDrrEr?r6r3r	r	{s
���Qr6r	c��\rSrSrSrSrSrg)r
i�z�Help message formatter which retains formatting of all help text.

Only the name of this class is considered a public API. All the methods
provided by the class are considered an implementation detail.
c�"�UR5$r8)rL)r,r�rfs   r3r�!RawTextHelpFormatter._split_lines�s����� � r6r?N)r%rArBrCrDrrEr?r6r3r
r
�s���!r6r
c��\rSrSrSrSrSrg)ri�z�Help message formatter which adds default values to argument help.

Only the name of this class is considered a public API. All the methods
provided by the class are considered an implementation detail.
c���URnUcSnSU;aNUR[La;[[/nUR
(dURU;aU[S5-
nU$)Nr{z
%(default)z (default: %(default)s))r�r�rrrr�r�r)r,r�r��defaulting_nargss    r3r*�.ArgumentDefaultsHelpFormatter._get_help_string�s^���{�{���<��D��t�#��~�~�X�-�$,�l�#;� ��(�(�F�L�L�<L�,L��A�7�8�8�D��r6r?N)r%rArBrCrDr*rEr?r6r3rr�s���
r6rc�$�\rSrSrSrSrSrSrg)ri�z�Help message formatter which uses the argument 'type' as the default
metavar value (instead of the argument 'dest')

Only the name of this class is considered a public API. All the methods
provided by the class are considered an implementation detail.
c�.�URR$r8�r$r%r<s  r3r��:MetavarTypeHelpFormatter._get_default_metavar_for_optional�����{�{�#�#�#r6c�.�URR$r8rWr<s  r3r��<MetavarTypeHelpFormatter._get_default_metavar_for_positional�rYr6r?N)r%rArBrCrDr�r�rEr?r6r3rr�s���$�$r6rc�8�UcgUR(aSRUR5$URS[4;auURn[	U[
5(dU$UR[:Xa[U5S:XaSU-$UR[:XaSU-$SRU5$URS[4;aUR$UR(a,SSR[[UR55-$g)N�/rMz%s[, %s]r"rr)r�r+rrrrr�rr�rr@rrr)�argumentrs  r3�_get_action_namer_�s������	�	 �	 ��x�x��/�/�0�0�	�	�	�$��!1�	1��"�"���'�5�)�)��N��>�>�\�)�c�'�l�a�.?���'�'�
�^�^�{�
*���'�'��9�9�W�%�%�	���t�X�.�	.��}�}��	�	�	������S�(�*:�*:�!;�<�<�<�r6c�$�\rSrSrSrSrSrSrg)ri�z�An error from creating or using an argument (optional or positional).

The string value of this exception is the message, augmented with
information about the argument that caused it.
c�0�[U5UlX lgr8)r_�
argument_name�message)r,r^rcs   r3rg�ArgumentError.__init__�s��-�h�7����r6c�z�URcSnO[S5nU[URURS9-$)Nz%(message)sz'argument %(argument_name)s: %(message)s)rcrb)rbrr�rc)r,r�s  r3�__str__�ArgumentError.__str__�sA�����%�"�F��@�A�F���T�\�\�+/�+=�+=�?�?�	?r6)rbrcN)r%rArBrCrDrgrfrEr?r6r3rr�s����?r6rc��\rSrSrSrSrg)ri�z@An error from trying to convert a command line string to a type.r?N)r%rArBrCrDrEr?r6r3rr�s��J�r6rc�J�\rSrSrSrS	SjrSrSrS
SjrSr	g)r
i�a�Information about how to convert command line strings to Python objects.

Action objects are used by an ArgumentParser to represent the information
needed to parse a single argument from one or more strings from the
command line. The keyword arguments to the Action constructor are also
all attributes of Action instances.

Keyword Arguments:

    - option_strings -- A list of command-line option strings which
        should be associated with this action.

    - dest -- The name of the attribute to hold the created object(s)

    - nargs -- The number of command-line arguments that should be
        consumed. By default, one argument will be consumed and a single
        value will be produced.  Other values include:
            - N (an integer) consumes N arguments (and produces a list)
            - '?' consumes zero or one arguments
            - '*' consumes zero or more arguments (and produces a list)
            - '+' consumes one or more arguments (and produces a list)
        Note that the difference between the default and nargs=1 is that
        with the default, a single value will be produced, while with
        nargs=1, a list containing a single value will be produced.

    - const -- The value to be produced if the option is specified and the
        option uses an action that takes no values.

    - default -- The value to be produced if the option is not specified.

    - type -- A callable that accepts a single string argument, and
        returns the converted value.  The standard Python types str, int,
        float, and complex are useful examples of such callables.  If None,
        str is used.

    - choices -- A container of values that should be allowed. If not None,
        after a command-line argument has been converted to the appropriate
        type, an exception will be raised if it is not a member of this
        collection.

    - required -- True if the action must always be specified at the
        command line. This is only meaningful for optional command-line
        arguments.

    - help -- The help string describing the argument.

    - metavar -- The name to be used for the option's argument with the
        help string. If None, the 'dest' value will be used as the name.
Nc��XlX lX0lX@lXPlX`lXplX�lX�lX�l	X�l
gr8�r�r@r��constr�r$rr�r�r�
deprecated)r,r�r@r�rlr�r$rr�r�rrms            r3rg�Action.__init__ s<��-���	��
��
����	��� �
��	���$�r6c�N�/SQnUVs/sHo"[X54PM sn$s snf)Nrk��getattr�r,�namesr1s   r3r)�Action._get_kwargs8s+��
��9>�>���w�t�*�+��>�>��>��"c� �URS$rG)r�r<s r3r��Action.format_usageHs���"�"�1�%�%r6c�*�[[S55e)Nz.__call__() not defined)�NotImplementedErrorr�r,�parser�	namespace�valuesr�s     r3�__call__�Action.__call__Ks��!�!�$=�">�?�?r6)rrlr�rmr@r�rr�r�r�r$�	NNNNNFNNFr8)
r%rArBrCrDrgr)r�r~rEr?r6r3r
r
�s:��0�j��������!�%�0?� &�@r6r
c�J^�\rSrSrS\\SS\S4U4SjjrSSjrSrSrU=r	$)	riRNFc

�v>�/n
UHEnU
RU5 URS5(dM,SUSS-nU
RU5 MG SH.n[5U[LdMSSKn
U
RUSSS9 M0 U[LaSnU[LaSnU[LaSn[TU]U
USUUUUUUU	S	9
 g)
N�--�--no-rM)r$rrrzP{name!r} is deprecated as of Python 3.12 and will be removed in Python {remove}.)��)�remove)
r�r@r�r�r$rr�r�rrm)r'�
startswith�locals�_deprecated_default�warnings�_deprecated�superrg)r,r�r@r�r$rr�r�rrm�_option_stringsr��
field_namer��	__class__s              �r3rg�BooleanOptionalAction.__init__Ss������+�M��"�"�=�1��'�'��-�-� '�-���*;� ;�
��&�&�}�5�,�9�J��x�
�#�+>�>���$�$��2�"�	%�$�9��&�&��D��)�)��G��)�)��G�
���*���������!�	�
	#r6c�x�X@R;a+[X RURS5(+5 gg)Nr�)r��setattrr@r�rzs     r3r~�BooleanOptionalAction.__call__�s/���/�/�/��I�y�y�m�.F�.F�w�.O�*O�P�0r6c�8�SRUR5$)Nz | )r+r�r<s r3r��"BooleanOptionalAction.format_usage�s���z�z�$�-�-�.�.r6r?r8)
r%rArBrCr�rgr~r�rE�
__classcell__�r�s@r3rrRs0����)�,���,�!�0#�fQ�/�/r6rc�H^�\rSrSrSU4SjjrSSjrSrU=r$)�_StoreActioni�c�>�US:Xa[S5eUbU[:wa[S[-5e[[U]UUUUUUUUU	U
US9 g)Nrz�nargs for store actions must be != 0; if you have nothing to store, actions such as store true or store const may be more appropriate� nargs must be %r to supply constrk)r�rr�r�rg�
r,r�r@r�rlr�r$rr�r�rrmr�s
            �r3rg�_StoreAction.__init__�sv����A�:��K�L�
L����(�!2��?�(�J�K�K�
�l�D�*�)����������!�	+�	#r6c�0�[X RU5 gr8)r�r@rzs     r3r~�_StoreAction.__call__�s���	�9�9�f�-r6r?r�r8�r%rArBrCrgr~rEr�r�s@r3r�r��s/���
��������!�#�>.�.r6r�c�B^�\rSrSrSU4SjjrSSjrSrU=r$)�_StoreConstActioni�c	�6>�[[U]UUSUUUUUS9 g)Nr)r�r@r�rlr�r�r�rm)r�r�rg�
r,r�r@rlr�r�r�rrmr�s
         �r3rg�_StoreConstAction.__init__�s2���	���/�)�������!�	0�	#r6c�D�[X RUR5 gr8)r�r@rlrzs     r3r~�_StoreConstAction.__call__�s���	�9�9�d�j�j�1r6r?�NNFNNFr8r�r�s@r3r�r��s&���
�����!�#�&2�2r6r�c�4^�\rSrSrSU4SjjrSrU=r$)�_StoreTrueActioni�c
�4>�[[U]UUSUUUUS9 g)NT)r�r@rlrmr�r�r�)r�r�rg�r,r�r@r�r�r�rmr�s       �r3rg�_StoreTrueAction.__init__�s/���	���.�)���!����	/�	r6r?)FFNF�r%rArBrCrgrEr�r�s@r3r�r��s���
���!�
�r6r�c�4^�\rSrSrSU4SjjrSrU=r$)�_StoreFalseActioni�c
�4>�[[U]UUSUUUUS9 g)NF)r�r@rlr�r�r�rm)r�r�rgr�s       �r3rg�_StoreFalseAction.__init__�s/���	���/�)������!�	0�	#r6r?)TFNFr�r�s@r3r�r��s���
���!�
#�#r6r�c�H^�\rSrSrSU4SjjrSSjrSrU=r$)�
_AppendActioni�c�>�US:Xa[S5eUbU[:wa[S[-5e[[U]UUUUUUUUU	U
US9 g)Nrz�nargs for append actions must be != 0; if arg strings are not supplying the value to append, the append const action may be more appropriater�rk)r�rr�r�rgr�s
            �r3rg�_AppendAction.__init__�sv����A�:��O�P�
P����(�!2��?�(�J�K�K�
�m�T�+�)����������!�	,�	#r6c��[X RS5n[U5nURU5 [	X RU5 gr8)rqr@rIr'r��r,r{r|r}r�r;s      r3r~�_AppendAction.__call__�6���	�9�9�d�3���E�"��
���V���	�9�9�e�,r6r?r�r8r�r�s@r3r�r��s/���
��������!�#�>-�-r6r�c�B^�\rSrSrSU4SjjrSSjrSrU=r$)�_AppendConstActionic	�8>�[[U]UUSUUUUUUS9	 g)Nr)	r�r@r�rlr�r�r�rrm)r�r�rgr�s
         �r3rg�_AppendConstAction.__init__s5���	� �$�0�)��������!�	1�		#r6c��[X RS5n[U5nURUR5 [X RU5 gr8)rqr@rIr'rlr�r�s      r3r~�_AppendConstAction.__call__0s:���	�9�9�d�3���E�"��
���T�Z�Z� ��	�9�9�e�,r6r?r�r8r�r�s@r3r�r�s&���
�����!�#�(-�-r6r�c�>^�\rSrSrSU4SjjrSSjrSrU=r$)�_CountActioni7c
�4>�[[U]UUSUUUUS9 g)Nr)r�r@r�r�r�r�rm)r�r�rgr�s       �r3rg�_CountAction.__init__9s.���	�l�D�*�)������!�	+�	#r6c�l�[X RS5nUcSn[X RUS-5 g)Nrrk)rqr@r�)r,r{r|r}r��counts      r3r~�_CountAction.__call__Is.���	�9�9�d�3���=��E��	�9�9�e�a�i�0r6r?)NFNFr8r�r�s@r3r�r�7s ���
���!�
#� 1�1r6r�c�>^�\rSrSr\\SS4U4SjjrSSjrSrU=r$)�_HelpActioniPNFc	�2>�[[U]UUUSUUS9 g)Nr)r�r@r�r�r�rm)r�r�rg)r,r�r@r�r�rmr�s      �r3rg�_HelpAction.__init__Rs+���	�k�4�)�)�����!�
	*�	#r6c�D�UR5 UR5 gr8)�
print_help�exitrzs     r3r~�_HelpAction.__call__`s���������
r6r?r8�	r%rArBrCrrgr~rEr�r�s@r3r�r�Ps ����!��!�#��r6r�c�@^�\rSrSrS\\SS4U4SjjrSSjrSrU=r$)�_VersionActionieNFc�X>�Uc[S5n[[U]UUUSUS9 X lg)Nz&show program's version number and exitr)r�r@r�r�r�)rr�r�rg�version)r,r�r�r@r�r�rmr�s       �r3rg�_VersionAction.__init__gs?����<��=�>�D�
�n�d�,�)�����	-�	��r6c��URnUcURnUR5nURU5 URUR	5[
R5 UR5 gr8)r��_get_formatterr��_print_messager��_sys�stdoutr�)r,r{r|r}r�r�rvs       r3r~�_VersionAction.__call__xs[���,�,���?��n�n�G��)�)�+�	����7�#����i�3�3�5�t�{�{�C����
r6)r�r8r�r�s@r3r�r�es#�����!��!�
�"�r6r�c�h^�\rSrSr"SS\5r\SSS4U4SjjrSS.SjrS	r	SS
jr
SrU=r$)
�_SubParsersActioni�c�(^�\rSrSrU4SjrSrU=r$)�&_SubParsersAction._ChoicesPseudoActioni�c�>�U=pEU(aUSSRU5--
n[[RU5nUR	/XSUS9 g)Nz (%s)r")r�r@r�r)r+r�r��_ChoicesPseudoActionrg)r,r1�aliasesr�rr@�supr�s       �r3rg�/_SubParsersAction._ChoicesPseudoAction.__init__�sQ���!�!�G���7�T�Y�Y�w�%7�7�7���)�>�>��E�C��L�L���!(�
�
*r6r?r�r�s@r3r�r��s
���	*�	*r6r�FNc
�>�X lX0l0Ul/Ul[	5Ul[[U]#UU[URUUUS9 g)N)r�r@r�rr�r�r)
�_prog_prefix�
_parser_class�_name_parser_map�_choices_actionsr�r�r�r�rgr)	r,r�rc�parser_classr@r�r�rr�s	        �r3rg�_SubParsersAction.__init__�s[���!��)�� "��� "����5���
���/�)����)�)����	0�	r6)rmc��URS5cUR<SU<3US'URSS5nXR;a[	U[S5U-5eUH*nXPR;dM[	U[S5U-5e SU;a>URS5nUR
XU5nURRU5 UR"S0UD6nX�RU'UHnX�RU'M U(a6URRU5 URRU5 U$)Nrcr�r�r?zconflicting subparser: %szconflicting subparser alias: %sr�)
r)r��popr�rrr�r�r'r�r�r�r�)	r,r1rm�kwargsr��aliasr��
choice_actionr{s	         r3�
add_parser�_SubParsersAction.add_parser�s;���:�:�f��%�(,�(9�(9�4�@�F�6�N��*�*�Y��+���(�(�(���a�(C�&D�t�&K�L�L��E��-�-�-�#��!�=�>��F�H�H���V���:�:�f�%�D� �5�5�d�T�J�M��!�!�(�(��7��#�#�-�f�-��&,���d�#��E�+1�!�!�%�(������ � ��&����#�#�G�,��
r6c��UR$r8)r�r<s r3r.�!_SubParsersAction._get_subactions�s���$�$�$r6c��USnUSSnUR[La[X RU5 URUnXPR;aUR[
S5SU0-5 URUS5up�[U
5R5Hup�[X+U5 M U(aF[U[5(d[U[/5 [U[5R!U5 gg![a8 USRUR5S.n[
S5U-n	[X	5ef=f)Nrrkr")�parser_namerz5unknown parser %(parser_name)r (choices: %(choices)s)z'command '%(parser_name)s' is deprecatedr�)r@rr�r��KeyErrorr+rrr��_warning�parse_known_argsr'r;r(�_UNRECOGNIZED_ARGS_ATTRrqr�)
r,r{r|r}r�r�r.�	subparserr��msg�subnamespace�keyr2s
             r3r~�_SubParsersAction.__call__�s5���Q�i���Q�R�j���9�9�H�$��I�y�y�+�6�	+��-�-�k�:�I��*�*�*��O�O�A�G�H�*�K�8�9�
:�%.�$>�$>�{�D�$Q�!���|�,�2�2�4�J�C��I�E�*�5���9�&=�>�>��	�#:�B�?��I�6�7�>�>�{�K���+�	+�#.�#�y�y��)>�)>�?�A�D��K�L�t�S�C���*�*�		+�s�D�AE)r�r�r�r�r�r8)
r%rArBrCr
r�rrgr�r.r~rEr�r�s@r3r�r��s>���*�v�*������0.3� �D%�#L�#Lr6r�c��\rSrSrSSjrSrg)�
_ExtendActioni�Nc��[X RS5n[U5nURU5 [	X RU5 gr8)rqr@rIr�r�r�s      r3r~�_ExtendAction.__call__�r�r6r?r8)r%rArBrCr~rEr?r6r3rr�s��-r6rc�.�\rSrSrSrSSjrSrSrSrg)	ri�a�Factory for creating file object types

Instances of FileType are typically passed as type= arguments to the
ArgumentParser add_argument() method.

Keyword Arguments:
    - mode -- A string indicating how the file is to be opened. Accepts the
        same values as the builtin open() function.
    - bufsize -- The file's desired buffer size. Accepts the same values as
        the builtin open() function.
    - encoding -- The file's encoding. Accepts the same values as the
        builtin open() function.
    - errors -- A string indicating how encoding and decoding errors are to
        be handled. Accepts the same value as the builtin open() function.
Nc�4�XlX lX0lX@lgr8)�_mode�_bufsize�	_encoding�_errors)r,�mode�bufsize�encoding�errorss     r3rg�FileType.__init__s���
��
�!���r6c�^^�US:Xa�STR;a:STR;a[RR$[R$[	U4SjS55(a:STR;a[R
R$[R
$[
S5TR-n[U5e[UTRTRTRTR5$![a!nXS.n[
S5n[XT-5eSnAff=f)	N�-�r�bc3�@># �UHoTR;v� M g7fr8)r)r��cr,s  �r3r��$FileType.__call__.<locals>.<genexpr>s����4�e��$�*�*�_�e�s��waxzargument "-" with mode %r)�filename�errorz$can't open '%(filename)s': %(error)s)rr��stdin�buffer�anyr�rr�r�rr	r
�OSErrorr)r,�stringr��er�rcs`     r3r~�FileType.__call__s�����S�=��d�j�j� �,/�4�:�:�,=�t�z�z�(�(�M�4�:�:�M��4�e�4�4�4�-0�D�J�J�->�t�{�{�)�)�O�D�K�K�O��3�4�t�z�z�A�� ��o�%�	4����
�
�D�M�M�4�>�>����&�
&���	4� &�3�D��>�?�G�#�G�N�3�3��	4�s�
6D�
D,�D'�'D,c
�f�URUR4nSUR4SUR4/nSR	UVs/sHo3S:wdM
[U5PM snUVVs/sHupCUcM
U<SU<3PM snn-5n[
U5R<SU<S3$s snfs snnf)Nr
rr"r�r r!r#)rrr	r
r+r(r$r%)r,r�r�r0�kw�args_strs      r3r4�FileType.__repr__&s����z�z�4�=�=�(���t�~�~�.��4�<�<�0H�I���9�9�4�E�4�C�"�9�i�d�3�i�4�E�AG�2��g�b�!$�2��S�1��2�2�3�� ��:�.�.��9�9��F��2s�	B(�B(�'	B-�4
B-)rr	r
r)rr�NN)	r%rArBrCrDrgr~r4rEr?r6r3rr�s��� �4�(:r6rc�*�\rSrSrSrSrSrSrSrg)ri2z�Simple object for storing attributes.

Implements equality by attribute names and values, and provides a simple
string representation.
c�2�UHn[XX5 M gr8)r�)r,r�r1s   r3rg�Namespace.__init__9s���D��D���-�r6c�f�[U[5(d[$[U5[U5:H$r8)rr�NotImplementedr')r,�others  r3�__eq__�Namespace.__eq__=s(���%��+�+�!�!��D�z�T�%�[�(�(r6c��XR;$r8)r:)r,r�s  r3�__contains__�Namespace.__contains__Bs���m�m�#�#r6r?N)	r%rArBrCrDrgr+r.rEr?r6r3rr2s���.�)�
$r6rc�^�\rSrSrU4SjrSrSSjrSrSrSr	Sr
S	rS
rSr
SrS
rSrSSjrSrSrSrSrSrU=r$)�_ActionsContaineriFc�:>�[[U]5 XlX0lX lX@l0UlURSS[5 URSS[5 URSS[5 URSS[5 URSS[5 URSS[5 URSS[5 URSS[5 URSS	[ 5 URSS
["5 URSS[$5 URSS[&5 UR)5 /Ul0Ul/Ul/Ul0Ul[4R6"S
5Ul/Ulg)Nr��store�store_const�
store_true�store_falser'�append_constr�r�r��parsersr�z^-\d+$|^-\d*\.\d+$)r�r1rg�description�argument_default�prefix_chars�conflict_handler�_registries�registerr�r�r�r�r�r�r�r�r�r�r�_get_handler�_actions�_option_string_actions�_action_groups�_mutually_exclusive_groups�	_defaultsr^r_�_negative_number_matcher�_has_negative_number_optionals)r,r9r;r:r<r�s     �r3rg�_ActionsContainer.__init__HsT���
	���/�1�&�� 0��(�� 0�����	
�
�
�h��l�3��
�
�h���6��
�
�h�
�/@�A��
�
�h��.>�?��
�
�h�
�/@�A��
�
�h��-�8��
�
�h��0B�C��
�
�h���6��
�
�h���4��
�
�h�	�>�:��
�
�h�	�+<�=��
�
�h��-�8�	
������
�&(��#�!���*,��'����),���4I�(J��%�/1��+r6c�D�URRU05nX4U'gr8)r=�
setdefault)r,�
registry_namer2rF�registrys     r3r>�_ActionsContainer.register}s!���#�#�.�.�}�b�A�� ��r6c�>�URURX#5$r8)r=r))r,rJr2r�s    r3�
_registry_get�_ActionsContainer._registry_get�s�����
�.�2�2�5�B�Br6c��URRU5 URH(nURU;dMXRUlM* gr8)rDr�r@r@r�)r,r�r�s   r3�set_defaults�_ActionsContainer.set_defaults�s>�������f�%��m�m�F��{�{�f�$�!'���!4���$r6c��URH0nURU:XdMURcM$URs $ URR	US5$r8)r@r@r�rDr))r,r@r�s   r3�get_default�_ActionsContainer.get_default�sH���m�m�F��{�{�d�"�v�~�~�'A��~�~�%�$��~�~�!�!�$��-�-r6c�P�URnU(a[U5S:Xa7USSU;a+U(aSU;a[S5eUR"U0UD6nOUR"U0UD6nSU;aCUSnX@R
;aUR
UUS'OURbURUS'URU5n[U5(d[SU<S35eU"S0UD6nURS	URUR5n[U5(d[U<S
35eU[La[U<S35e[US5(a!UR5RUS5 UR!U5$![a [S
5ef=f)zk
add_argument(dest, ..., name=value, ...)
add_argument(option_string, option_string, ..., name=value, ...)
rkrr@z+dest supplied twice for positional argumentr�Nzunknown action "�"r$z is not callablez: is a FileType class object, instance of it must be passedr�z,length of metavar tuple does not match nargsr?)r;r�r��_get_positional_kwargs�_get_optional_kwargsrDr:�_pop_action_class�callablerNr$rr(r�r�r"�_add_action)r,r�r��charsr@�action_classr��	type_funcs        r3r��_ActionsContainer.add_argument�s����!�!���s�4�y�A�~�$�q�'�!�*�E�*A���&�(� �!N�O�O��0�0�$�A�&�A�F��.�.��?��?�F��F�"��&�>�D��~�~�%�$(�N�N�4�$8��y�!��&�&�2�$(�$9�$9��y�!��-�-�f�5����%�%��l�D�E�E��'��'���&�&�v�v�{�{�F�K�K�H�	��	�"�"��Y�@�A�A��� ��2;�>�?�
?��4�)�*�*�
Q��#�#�%�2�2�6�4�@�����'�'���
Q� �!O�P�P�
Q�s� F�F%c�Z�[U/UQ70UD6nURRU5 U$r8)�_ArgumentGrouprBr')r,r�r�r�s    r3�add_argument_group�$_ActionsContainer.add_argument_group�s/���t�5�d�5�f�5�����"�"�5�)��r6c�T�[U40UD6nURRU5 U$r8)�_MutuallyExclusiveGrouprCr')r,r�r�s   r3�add_mutually_exclusive_group�._ActionsContainer.add_mutually_exclusive_group�s*��'��7��7���'�'�.�.�u�5��r6c�r�URU5 URRU5 XlURHnXR
U'M URHSnURRU5(dM%UR(aM8URRS5 MU U$)NT)	�_check_conflictr@r'�	containerr�rArE�matchrF)r,r�r�s   r3r\�_ActionsContainer._add_action�s������V�$�	
�
�
���V�$���$�2�2�M�9?�'�'�
�6�3�$�2�2�M��,�,�2�2�=�A�A��:�:�:��7�7�>�>�t�D�3��
r6c�:�URRU5 gr8)r@r�r<s  r3�_remove_action� _ActionsContainer._remove_action�s���
�
���V�$r6c���0nURHCnURU;a"[S5n[XCR-5eX2UR'ME 0nURHqnURU;a;UR	URUR
URS9X#R'URHnX#RXV'M Ms URH]nURULaUnOX#RRnURURS9nURHnX�U'M	 M_ URH#nURX`5RU5 M% g)Nz.cannot merge actions - two groups are named %r)�titler9r<)r�)rBrrrr�rcr9r<r�rC�
_containerrgr�r@r)r\)	r,rk�title_group_mapr�r��	group_mapr��cont�mutex_groups	         r3�_add_container_actions�(_ActionsContainer._add_container_actions�sb�����(�(�E��{�{�o�-��H�I�� ����!4�5�5�+0�E�K�K�(�
)��	��-�-�E��{�{�/�1�/3�/F�/F��+�+� %� 1� 1�%*�%;�%;�0G�0=����,� �.�.��$3�K�K�$@�	�!�/�.�"�9�9�E����9�,���&�'7�'7�'=�'=�>���;�;����<�)�K� �.�.��$/�&�!�/�:� �(�(�F��M�M�&�'�3�3�F�;�)r6c��SU;a[S5n[U5eURS5nU[[[
[S4;aSUS'[X!/S9$)Nr�z1'required' is an invalid argument for positionalsr�rT�r@r�)rr"r)rrrrr�)r,r@r�r�r�s     r3rX�(_ActionsContainer._get_positional_kwargss[������G�H�C��C�.� ��
�
�7�#����<��H�a�H�H�!%�F�:���F�b�9�9r6c��/n/nUH�nUSUR;a'UURS.n[S5n[Xa-5eURU5 [	U5S:�dM_USUR;dMtURU5 M� URSS5nUc_U(aUSnOUSnUR
UR5nU(d[S5n[UW-5eURSS5n[X'US	9$)
Nr)�optionr;zNinvalid option string %(option)r: must start with a character %(prefix_chars)rrkr@z%dest= is required for options like %rrrr{)	r;rr�r'r�r��lstrip�replacer�)	r,r�r�r��long_option_stringsr�r�r@�dest_option_strings	         r3rY�&_ActionsContainer._get_optional_kwargs,s���� ��!�M� ��#�t�'8�'8�8�"/�(,�(9�(9�;���G�H�� ���,�,�
�!�!�-�0��=�!�A�%�-��*:�d�>O�>O�*O�#�*�*�=�9�"��z�z�&�$�'���<�"�%8��%;�"�%3�A�%6�"�%�,�,�T�->�->�?�D���?�@�� ��}�!4�5�5��<�<��S�)�D��F�n�E�Er6c�J�URSU5nURSX35$)Nr�)r�rN)r,r�r�r�s    r3rZ�#_ActionsContainer._pop_action_classNs%�����H�g�.���!�!�(�F�;�;r6c��SUR-n[X5$![a# [S5n[	X R-5ef=f)Nz_handle_conflict_%sz%invalid conflict_resolution value: %r)r<rqr/rr�)r,�handler_func_namer�s   r3r?�_ActionsContainer._get_handlerRsQ��1�D�4I�4I�I��	:��4�3�3���	:��;�<�C��S�#8�#8�8�9�9�	:�s	�
�-A	c���/nURH5nX0R;dMURUnURX445 M7 U(aUR5nU"X5 ggr8)r�rAr'r?)r,r��confl_optionalsr��confl_optionalr<s      r3rj�!_ActionsContainer._check_conflict[sg����#�2�2�M�� ;� ;�;�!%�!<�!<�]�!K���&�&�
�'F�G�3��#�0�0�2���V�5�r6c��[SS[U55nSRUVVs/sHupAUPM	 snn5n[WX5-5es snnf)Nzconflicting option string: %szconflicting option strings: %sr")rr�r+r)r,r��conflicting_actionsrcr��conflict_strings      r3�_handle_conflict_error�(_ActionsContainer._handle_conflict_errorisb���:�;��2�3�5���)�)�(;�%=�(;�*?��&3�(;�%=�>���F�G�$=�>�>��%=s�A
c���UHjup1URRU5 URRUS5 UR(aMOURRU5 Ml gr8)r�r�rAr�rkro)r,r�r�r�s    r3�_handle_conflict_resolve�*_ActionsContainer._handle_conflict_resolvers_��&9�!�M�
�!�!�(�(��7��'�'�+�+�M�4�@��(�(�(�� � �/�/��7�&9r6)rBr@rDrFrCrErAr=r:r<r9r;r8)r%rArBrCrgr>rNrQrTr�rcrgr\rorxrXrYrZr?rjr�r�rEr�r�s@r3r1r1Fsh���01�j!�C�5�.�1(�f�
�
�*%�,<�\
:� F�D<�:�6�?�8�8r6r1c�P^�\rSrSrSU4SjjrU4SjrU4SjrU4SjrSrU=r	$)rbi�c�>�URnU"SUR5 U"SUR5 U"SUR5 [[
U]nU"SSU0UD6 X l/UlURUl	URUl
URUlURUlURUl
URUlg)Nr<r;r:r9r?)rIr<r;r:r�rbrgrrr�r=r@rArDrFrC)r,rkrrr9r�r��
super_initr�s       �r3rg�_ArgumentGroup.__init__�s�����"�"���!�9�#=�#=�>��~�y�5�5�6��!�9�#=�#=�>��>�4�9�
��5�{�5�f�5��
� ���%�0�0���!�*�*��
�&/�&F�&F��#�"�,�,����4�4�	
�+�*3�*N�*N��'r6c�d>�[[U]U5nURR	U5 U$r8)r�rbr\r�r'�r,r�r�s  �r3r\�_ArgumentGroup._add_action�s-����~�t�8��@�����"�"�6�*��
r6c�b>�[[U]U5 URR	U5 gr8)r�rbror�r�r�s  �r3ro�_ArgumentGroup._remove_action�s&���
�n�d�2�6�:����"�"�6�*r6c�V>�SSKnURS[SS9 [TU]"U0UD6$)Nrz&Nesting argument groups is deprecated.rM��category�
stacklevel)r��warn�DeprecationWarningr�rc�r,r�r�r�r�s    �r3rc�!_ArgumentGroup.add_argument_group�s7�����
�
�4�'��	�	
�
�w�)�4�:�6�:�:r6)r@rDr�rFrCrAr=rr�NN)
r%rArBrCrgr\rorcrEr�r�s@r3rbrb�s���O�,�
+�;�;r6rbc�D^�\rSrSrSU4SjjrSrSrU4SjrSrU=r	$)rfi�c�D>�[[U]U5 X lXlgr8)r�rfrgr�rs)r,rkr�r�s   �r3rg� _MutuallyExclusiveGroup.__init__�s���
�%�t�5�i�@� �
�#�r6c��UR(a[S5n[U5eURR	U5nUR
R
U5 U$)Nz-mutually exclusive arguments must be optional)r�rr�rsr\r�r')r,r�r�s   r3r\�#_MutuallyExclusiveGroup._add_action�sK���?�?��C�D�C��S�/�!����,�,�V�4�����"�"�6�*��
r6c�p�URRU5 URRU5 gr8)rsror�r�r<s  r3ro�&_MutuallyExclusiveGroup._remove_action�s(�����&�&�v�.����"�"�6�*r6c�V>�SSKnURS[SS9 [TU]"U0UD6$)Nrz0Nesting mutually exclusive groups is deprecated.rMr�)r�r�r�r�rgr�s    �r3rg�4_MutuallyExclusiveGroup.add_mutually_exclusive_group�s7�����
�
�>�'��	�	
�
�w�3�T�D�V�D�Dr6)rsr�)F)
r%rArBrCrgr\rorgrEr�r�s@r3rfrf�s���$�
�+�E�Er6rfc
�^�\rSrSrSrSSSS/\SSSSSSS4
U4SjjrSrS	rS
r	Sr
SrS'S
jrS'Sjr
SrSrSrSrSrSrSrSrSrS'SjrS'SjrSrSrSrSrSrSrS(S jrS(S!jr S(S"jr!S)S#jr"S$r#S%r$S&r%U=r&$)*ri�aObject for parsing command line strings into Python objects.

Keyword Arguments:
    - prog -- The name of the program (default:
        ``os.path.basename(sys.argv[0])``)
    - usage -- A usage message (default: auto-generated from arguments)
    - description -- A description of what the program does
    - epilog -- Text following the argument descriptions
    - parents -- Parsers whose arguments should be copied into this one
    - formatter_class -- HelpFormatter class for printing help messages
    - prefix_chars -- Characters that prefix optional arguments
    - fromfile_prefix_chars -- Characters that prefix files containing
        additional arguments
    - argument_default -- The default value for all arguments
    - conflict_handler -- String indicating how to handle conflicts
    - add_help -- Add a -h/-help option
    - allow_abbrev -- Allow long options to be abbreviated unambiguously
    - exit_on_error -- Determines whether or not ArgumentParser exits with
        error info when an error occurs
NrrTc	��>�[[U]
nU"UUU	U
S9 Uc0[RR[RS5nXlX l	X@l
X`lX�lX�l
X�lX�lUR nU"[#S55UlU"[#S55UlSUlSnUR+SSU5 SU;aSOUSnUR(a)UR-US-US	-S
-S
[.[#S5S9 UH[n[1U[5(d[3S
5eUR5U5 UR6nUR6R9U5 M] g)N)r9r;r:r<rzpositional arguments�optionsc��U$r8r?)rs r3�identity�)ArgumentParser.__init__.<locals>.identitys���Mr6r$r�hrMr�zshow this help message and exit)r�r�r�z(parents must be a list of ArgumentParser)r�rrg�_os�path�basenamer��argvrcr��epilog�formatter_class�fromfile_prefix_chars�add_help�allow_abbrev�
exit_on_errorrcr�_positionals�
_optionals�_subparsersr>r�rrr"rxrDr�)r,rcr�r9r��parentsr�r;r�r:r<r�r�r��	superinit�	add_groupr��default_prefixrw�defaultsr�s                    �r3rg�ArgumentParser.__init__�s^����.�$�8�	��k�+�#3�#3�	5��<��8�8�$�$�T�Y�Y�q�\�2�D��	��
���.��%:�"� �
�(��*���+�+�	�%�a�(>�&?�@���#�A�i�L�1������	��
�
�f�d�H�-�!$�|� 3���a����=�=�����s�"�N�1�$4�V�$;��x��8�9�
�
;��F��f�n�5�5�� J�K�K��'�'��/��'�'�H��N�N�!�!�(�+�r6c�N�/SQnUVs/sHo"[X54PM sn$s snf)N)rcr�r9r�r<r�rprrs   r3r)�ArgumentParser._get_kwargss+��
��9>�>���w�t�*�+��>�>��>ruc��URb[S[S55eURS[	U55 SU;dSU;aDURS[S55nURSS5nUR
X#5UlOURUlURS5cjUR5nUR5nURnURURXVS5 UR5R5US'UR!US5nU"S
S	/0UD6nURR#U5 U$)Nz(cannot have multiple subparser argumentsr�rrr9�subcommandsrcr{r8r�r?)r�rrrIr$r�rcr�r)r��_get_positional_actionsrCr�r�r�r�rZr\)	r,r�rrr9rvr�r��
parsers_classr�s	         r3�add_subparsers�ArgumentParser.add_subparsers-s6�����'���a�(R�&S�T�T�	���.�$�t�*�5��f��
�� 7��J�J�w��-�(8�9�E� �*�*�]�D�9�K�#�6�6�u�J�D��#�0�0�D���:�:�f��%��+�+�-�I��6�6�8�K��4�4�F�����
�
�K��D�&�2�2�4�:�:�<�F�6�N��.�.�v�y�A�
��;�b�;�F�;�����$�$�V�,��
r6c��UR(aURRU5 U$URRU5 U$r8)r�r�r\r�r<s  r3r\�ArgumentParser._add_actionLs?��� � ��O�O�'�'��/��
�
���)�)�&�1��
r6c�l�URVs/sHnUR(dMUPM sn$s snfr8�r@r�r<s  r3�_get_optional_actions�$ArgumentParser._get_optional_actionsSs4��"�m�m�*�+�F��(�(��+�*�	*��*��1�1c�l�URVs/sHnUR(aMUPM sn$s snfr8r�r<s  r3r��&ArgumentParser._get_positional_actionsXs4��"�m�m�.�+�F��,�,��+�.�	.��.r�c���URX5upU(aM[S5SRU5-nUR(aUR	U5 U$[SU5eU$�Nzunrecognized arguments: %sr�)r�rr+r�rr�r,r�r|r�r�s     r3�
parse_args�ArgumentParser.parse_args`s^���*�*�4�;�
����0�1�C�H�H�T�N�B�C��!�!��
�
�3����$�D�#�.�.��r6c�"�URXSS9$)NF��
intermixed)�_parse_known_args2)r,r�r|s   r3r��ArgumentParser.parse_known_argsjs���&�&�t�5�&�I�Ir6c�4�Uc[RSSnO[U5nUc
[5nURHinUR
[LdM[X$R
5(aM4UR[LdMI[X$R
UR5 Mk URH.n[X%5(aM[X%URU5 M0 UR(aURXU5up!OURXU5up![U[ 5(a/UR#[%U[ 55 ['U[ 5 X!4$![a$nUR[U55 SnANpSnAff=frj)r�r�r9rr@r@rr(r�r�rDr��_parse_known_argsrrrr�r�rq�delattr)r,r�r|r�r�r@�errs       r3r��!ArgumentParser._parse_known_args2ms=���<��9�9�Q�R�=�D���:�D���!��I��m�m�F��{�{�(�*��y�+�+�6�6��~�~�X�5��	�;�;����G�	$��N�N�D��9�+�+��	�����)=�>�#�
���
%�"&�"8�"8��*�"U��	�4�#�4�4�T�j�Q�O�I��9�5�6�6��K�K��	�+B�C�D��I�6�7�����!�
%��
�
�3�s�8�$�$��
%�s�9E)�)
F�3F�Fc	�
^^^^^^^ ^!^"^#^$^%^&�TRbTRT5m0mTRHinURn[	UR5HAupgTRU/5nUR
USU5 UR
XVS-S5 MC Mk 0m!/n	[T5n
[	U
5HgupkUS:Xa-U	RS5 U
HnU	RS5 M M8TRU5nUcSn
OUT!U'Sn
U	RU
5 Mi SRU	5m[5m#[5m$[5m&SUUU#U$U4Sjjm%UUUU U!UU%U&4SjnTR5m"UUU"UU%U&4S	jn/m/m S
nT!(a[T!5nOSnUU::aUnUU::aUT!;aO
US-
nUU::aMU(dUU:waU"U5nUU:�aUnMAUnUT!;a,TUUnTR
U5 T R
TUU5 UnU"U5nUU::aMU(dU"U5nTR
TUS5 O�TR
TUS5 T R
TUS5 SRT 5m [T 5[T5:Xde[TT 5VVs/sHunnUS:wdMUPM snnmT R!SS5mU"S
5n[	T 5H!unnU(d OUS:wdMUS-nSTU'M# TVs/sH
nUcMUPM snm/nTR"H�nUT#;dMUR$(aUR['U55 M8UR(cMG[+UR([,5(dMh[/TUR05(dM�UR([3TUR05LdM�[5TUR0TR7UUR(55 M� U(a'[9S[;S5S
RU5-5eTRH�nUR$(dMURHnUT$;dM M0 URVs/sH#nUR<[>LdM['U5PM% nn[;S5n[9SUSRU5-5e TT4$s snnfs snfs snf)Nrkr�r�A�Or{c�J>�T	RU5 TRX5nUR(dU(aTT
RU5 TRU/5H-nUT
;dM[	S5n[U5n[
XU-5e U[LaU"TTX25 gg)Nznot allowed with argument %s)r��_get_valuesr�r)rr_rr)r��argument_stringsr��argument_values�conflict_actionr��action_name�action_conflictsr|�seen_actions�seen_non_default_actionsr,s       �����r3�take_action�5ArgumentParser._parse_known_args.<locals>.take_action�s�������V�$�"�.�.�v�H�O��$�$�(8�(�,�,�V�4�'7�';�';�F�B�'G�O�&�*B�B�� >�?��&6��&G��+�F�+�4E�F�F�	(H��h�.��t�Y��G�/r6c�>�TUn[U5S:�aLSRUVVVVs/sHup#pEUPM
 snnnn5nTUUS.n[S5n[SX�-5eUSup#pETRn	/n
Uc*TRTU5 TRS5 US-$UGbU	"US5nTRnUS:Xa�USU;a�US:wa�U(d	USU;a[S	5n[X(U-5eU
RU/U45 USn
X�S-nTRnX>;a(X�nUSSnU(dS=pEO�USS
:XaS
nUSSnO�SnO�TRX�-5 TRS5 US-nOoUS:XaUS-nU/nU
RX'U45 OM[S	5n[X(U-5eUS-nTUSnU	"UU5nUU-nTUUnU
RX'U45 OGMvU
(deU
HVup'nUR(a6UT;a0TR[S5SU0-5 TRU5 T"X'U5 MX U$s snnnnf)
Nrkr")r~�matchesz4ambiguous option: %(option)s could match %(matches)srr�r�r{zignored explicit argument %rr z!option '%(option)s' is deprecatedr~)r�r+rr�_match_argumentr'r;rArmr�r�)�start_index�
option_tuplesr�r��sep�explicit_argr�r�r��match_argument�
action_tuples�	arg_countr]�char�
optionals_map�stopr��selected_patternsr.�arg_strings_pattern�extras�extras_pattern�option_string_indicesr,r��warneds                  ��������r3�consume_optional�:ArgumentParser._parse_known_args.<locals>.consume_optional�s����2�+�>�M��=�!�A�%��)�)�DQ�%S�DQ�@��s�&3�DQ�%S�T��"-�k�":�w�O���N�O��#�D�#�*�5�5�7D�Q�7G�4�F�3�"�1�1�N��M���>��M�M�+�k�":�;�"�)�)�#�.�&��?�*� �+� .�v�s� ;�I�
!�-�-�E�!�Q��)�!�,�E�9�(�B�.��,�q�/�U�":�"#�$B�"C�C�"/��l�8J�"K�K�%�,�,�f�b�-�-H�I�,�Q�/��(,�A��(>�
�(,�(C�(C�
�(�9�%2�%A�F�+7���+;�L�#/�59� 9��l�!-�a��C�!7�&)��/;�A�B�/?��&(��"�M�M�$�*=�>�*�1�1�#�6�#.��?�D�!�#�a��*�Q��� ,�~��%�,�,�f�M�-J�K��
 � >�?��+�F�,�4F�G�G�(�!�O�E�(;�E�F�(C�%� .�v�7H� I�I� �9�,�D�&�u�T�2�D�!�(�(�&�
�)F�G��I�P!� �=�/<�+��m��$�$��f�)D��M�M�!�$G�"H�#+�]�";�#<�=��J�J�}�-��F�-�8�0=��K��w%Ss�Ic�v>�T
RnTUSnU"T	U5n[T	U5H�upETXU-nUR[:Xa&TUS:XaUSS:XdeUR	S5 O>UR[
:wa*TR
SUX-5S:�aUR	S5 X-
nU(aeUR(aTURT;aDT
R[S5SUR0-5 TRUR5 T"XF5 M� T	[U5ST	SS&U$)Nrrr�z*argument '%(argument_name)s' is deprecatedrb)
�_match_arguments_partial�zipr�rr�r�findrmr@r�rr�r�)
r��
match_partial�selected_pattern�
arg_countsr�rr�r.rr�r,r�r
s
       ������r3�consume_positionals�=ArgumentParser._parse_known_args.<locals>.consume_positionals?s8��� �9�9�M�2�;�<�@��&�{�4D�E�J�&)��j�%A�!��"�;�i�0G�H���<�<�6�)�*�;�7�3�>�#�A�w�$��.�����D�)���\�\�Y�.�+�0�0��k�1<�1H�J�MN�O����D�)��(���F�-�-�&�+�+�V�2K��M�M�!�$P�"Q�#2�F�K�K�"@�#A�B��J�J�v�{�{�+��F�)�!&B�()��Z��)9�:�K��N��r6rr�z(the following arguments are required: %sr"z#one of the arguments %s is requiredr�r8) r��_read_args_from_filesrCr�r�rIr��iterr'�_parse_optionalr+r�r�rUr�rr�r@r�r_r�rrr(r@rqr��
_get_valuerrr�r)'r,r.r|r�rwr�r��mutex_action�	conflicts�arg_string_pattern_parts�arg_strings_iter�
arg_stringr��patternrrr��max_option_string_index�next_option_string_index�positionals_end_index�strings�
stop_indexr�r�required_actionsr�r�rsr�r�rrrr	r�r�r�r�r
s'```                          @@@@@@@@@@r3r�� ArgumentParser._parse_known_args�s������%�%�1��4�4�[�A�K����:�:�K�'�6�6�M�#,�[�-G�-G�#H���,�7�7��b�I�	�� � ��r��!2�3�� � ��1�u�v�!6�7�$I�;�!#��#%� ���,��&�'7�8�M�A��T�!�(�/�/��4�"2�J�,�3�3�C�8�#3�!%� 4� 4�Z� @�
� �(�!�G�/<�)�!�,�!�G�(�/�/��8�#9�(!�g�g�&>�?���u��#&�5� ����	H�	H�(a	�a	�J�2�2�4��	�	�B������ �&)�*?�&@�#�&(�#��4�4�(3�$�*�.E�E�+�/D�D��(�A�-�(�+�.E�E��+�1I�"I�(;�K�(H�%�)�;�6�"7�K��"7�K��"7�7�%�k�2J�K���
�
�g�&��%�%�&9�+�F^�&_�`�6��+�;�7�K�9�4�4�<�,�[�9�J�
�M�M�+�j�k�2�3��M�M�+�k�l�3�4��!�!�"5�k�l�"C�D��W�W�^�4�N��~�&�#�f�+�5�5�5�),�V�^�)D�Q�)D���A��S��1�)D�Q�K�"0�"8�"8��b�"A��,�Q�/�J�!�.�1���1�!����8��!�O�J� $�F�1�I�2�"(�9��A�1�a��9�F����m�m�F��\�)��?�?�$�+�+�,<�V�,D�E����2�"�6�>�>�3�7�7��	�6�;�;�7�7����'�)�V�[�[�*I�I��	�6�;�;� $������� G�I�$� ���a�(R�&S��y�y�!1�2�'3�4�
4��4�4�E��~�~�~�#�2�2�F��!9�9��3�,1�+?�+?�=�+?�� &���8� ;�6�-�f�5�+?��=��A�B�C�'��c�C�H�H�U�O�.C�D�D�5��&� � ��gR��:��D=s$�5
S4�S4�S:�)S:�S?�4S?c�H�/nUH�nU(aUSUR;aURU5 M0[USS[R"5[R
"5S9n/nUR
5R5H,nURU5HnURU5 M M. URU5nURU5 SSS5 M� U$!,(df   M�=f![an[S[U55eSnAff=f)Nrrk)r
r)r�r'r�r��getfilesystemencoding�getfilesystemencodeerrors�readrL�convert_arg_line_to_argsrr�rrr)r,r.�new_arg_stringsr�	args_file�arg_liner0r�s        r3r�$ArgumentParser._read_args_from_files�s
����%�J���A��d�6P�6P�!P��&�&�z�2�8��j���n�'+�'A�'A�'C�%)�%C�%C�%E�G�JS�&(��(1���(8�(C�(C�(E�H�'+�'D�'D�X�'N�� +� 2� 2�3� 7�(O�)F�'+�&@�&@��&M��'�.�.�{�;�G�G�&�,��G�G���8�'��c�#�h�7�7��8�s6�4C=�*A3C+�C=�+
C:	�5C=�:C=�=
D!�D�D!c��U/$r8r?)r,r.s  r3r+�'ArgumentParser.convert_arg_line_to_args�s
���z�r6c�z�URU5n[R"X25nUcxS[S5[[S5[
[S50nUR
UR5nUc$[SSUR5UR-n[X5e[URS55$)Nzexpected one argumentzexpected at most one argumentzexpected at least one argumentzexpected %s argumentzexpected %s argumentsrk)�_get_nargs_patternr^rlrrrr)r�rrr�r�)r,r�r�
nargs_patternrl�nargs_errorsr�s       r3r��ArgumentParser._match_argument�s����/�/��7�
��	�	�-�=���=��a�/�0��!�;�<��Q�?�@��L�
�"�"�6�<�<�0�C��{��5�6�%�|�|�-�/5�|�|�<�� ��,�,��5�;�;�q�>�"�"r6c	��[[U5SS5H�nUSUnSRUVs/sHnURU5PM sn5n[R
"Xb5nUcMTUR
5Vs/sHn[U5PM n	nUR5[U5:a=X'R5S:Xa'U	(a U	S(dU	S	U	(aU	S(dMU	s $ /$s snfs snf)Nrr�r{r�)r�r�r+r3r^rlr�r�)
r,r�rr��
actions_slicer�rrlrrs
          r3r�'ArgumentParser._match_arguments_partial�s����s�7�|�Q��+�A�#�B�Q�K�M��g�g�-:�<�-:�6� $�6�6�v�>�-:�<�=�G��I�I�g�;�E�� �49�L�L�N�C�N�&�#�f�+�N��C��I�I�K�#�&9�":�:�+�I�I�K�8�C�?� ����"�2�J�!������
�,��	��<��Ds�C6
�=C;c���U(dgUSUR;agXR;aURUnX!SS4/$[U5S:XagURS5up4nU(a#X0R;aURUnX#XE4/$UR	U5nU(aU$UR
R
U5(aUR(dgSU;agSUSS4/$)Nrrkr r�)r;rAr��	partition�_get_option_tuplesrErlrF)r,rr�r�r�r�r�s       r3r�ArgumentParser._parse_optional	s�����!�}�� 1� 1�1���4�4�4��0�0��<�F���t�4�5�5��z�?�a���,6�+?�+?��+D�(�
�L��=�$?�$?�?��0�0��?�F��C�>�?�?��/�/�
�;�
�� � �
�(�(�.�.�z�:�:��6�6���*����z�4��.�/�/r6c��/nURnUSU;a�USU;a�UR(amURS5upEnU(dS=pVURH?nUR	U5(dMURUnXqXV4nURU5 MA U$USU;a�USU;a�URS5upEnU(dS=pVUSSn	USSn
URH~nX:Xa'URUnXqSU
4nURU5 M/UR(dMBUR	U5(dMZURUnXqXV4nURU5 M� U$[
S[S5U-5e)Nrrkr rMr{zunexpected option string: %s)r;r�r;rAr�r'rr)r,r�rr]�
option_prefixr�r�r�r
�short_option_prefix�short_explicit_args           r3r<�!ArgumentParser._get_option_tuples9	s������!�!�����u�$��q�)9�U�)B�� � �3@�3J�3J�3�3O�0�
�L��)-�-�C�%)�%@�%@�M�$�/�/�
�>�>�!%�!<�!<�]�!K��$�S�F���
�
�c�*�	&A�>�
�-�1�
��
&�=��+;�5�+H�/<�/F�/F�s�/K�,�M���%)�)��"/���"3��!.�q�r�!2��!%�!<�!<�
� �7�!�8�8��G�F� ��5G�G�C��M�M�#�&��&�&�&�=�+C�+C�M�+R�+R�!�8�8��G�F� ��B�C��M�M�#�&�"=��
� ��a�(F�&G�-�&W�X�Xr6c��URnURnUcU(aSnU$SnU$U[:XaU(aSnU$SnU$U[:XaU(aSnU$SnU$U[:XaU(aSnU$SnU$U[
:XaU(aS	nU$S
nU$U[:XaU(aSnU$SnU$U[:XaU(aS
nU$SnU$U(aSU-OSU-nU$)Nz([A])z(-*A-*)z(A?)z(-*A?-*)z(A*)z	(-*[A-]*)z(A+)z
(-*A[A-]*)z([AO]*)z(.*)z(A[AO]*)z(-*A[-AO]*)r�z(-*)z
([AO]{%d})z((?:-*A){%d}-*))r�r�rrrrrr)r,r�r�r~r4s     r3r3�!ArgumentParser._get_nargs_patterne	sL�������&�&���=�'-�G�M�>��?4=�M�>��9�h�
�&,�F�M�6��73=�M�6��1�l�
"�&,�F�M�.��/3>�M�.��)�k�
!�&,�F�M�&��'3?�M�&��!�i�
�)/�I�M���6<�M����f�_�*0�J�M���7D�M����h�
�$*�D�M���17�M���5;�L�5�0�@Q�TY�@Y�M��r6c���URX5upU(aM[S5SRU5-nUR(aUR	U5 U$[SU5eU$r�)�parse_known_intermixed_argsrr+r�rrr�s     r3�parse_intermixed_args�$ArgumentParser.parse_intermixed_args�	s^���5�5�d�F�
����0�1�C�H�H�T�N�B�C��!�!��
�
�3����$�D�#�.�.��r6c���UR5nUVs/sH!nUR[[4;dMUPM# nnU(a[	SUSR-5eURXSS9$s snf)Nz3parse_intermixed_args: positional arg with nargs=%srTr�)r�r�rrr"r�)r,r�r|r�r��as      r3rF�*ArgumentParser.parse_known_intermixed_args�	s����2�2�4��"-�
5�+������� 3�3��+��
5���-�-.�q�T�Z�Z�8�9�
9��&�&�t�4�&�H�H��

5s
�A1�A1c�2�U(d�UR[:XalUR(a
URnOURn[U[5(a+U[La"URX5nURX5 U$U(dVUR[:XaBUR(d1URbURnURX5 U$UnU$[U5S:Xa>URS[4;a(UunURX5nURX5 U$UR[:Xa"UVs/sHoPRX5PM nnU$UR[:Xa6UVs/sHoPRX5PM nnURXS5 U$UR[:Xa[nU$UVs/sHoPRX5PM nnUHnURX5 M U$s snfs snfs snf)Nrkr)r�rr�rlr�rrrr�_check_valuerr�rr)r,r�r.r2r�vs      r3r��ArgumentParser._get_values�	s����v�|�|�x�7��$�$����������%��%�%�%�x�*?�����6���!�!�&�0�P��I�&�,�,�,�">��'�'��~�~�)������!�!�&�0�@��9$��8��3��
��
"�v�|�|��h�7G�'G�%�K�J��O�O�F�7�E����f�,�,��'�\�\�Y�
&�9D�E��A�_�_�V�/��E�E�$���\�\�V�
#�9D�E��A�_�_�V�/��E�E����f�A�h�/����\�\�X�
%��E���:E�E��A�_�_�V�/��E�E����!�!�&�,�����%F��F��Fs�
H
�H�Hc��URSURUR5n[U5(d[S5n[	XU-5eU"U5nU$![
an[
U5n[	X5eSnAf[[4aH [URS[UR55nXrS.n[S5n[	XU-5ef=f)Nr$z%r is not callabler%)r$r2z!invalid %(type)s value: %(value)r)rNr$r[rrrrr"r�rqr()	r,r�rr_r�rr�r1r�s	         r3r�ArgumentParser._get_value�	s����&�&�v�v�{�{�F�K�K�H�	��	�"�"��(�)�C���i��8�8�
	4��z�*�F��
��!�	-��c�(�C���,�,���:�&�	4��6�;�;�
�D����4E�F�D� �6�D��7�8�C���d�
�3�3�		4�s�A�
C�&A<�<ACc�
�URnUbt[U[5(a[U5nX#;aN[U5SR	[[UR55S.n[
S5n[XU-5egg)Nr")r2rz3invalid choice: %(value)r (choose from %(choices)s))rrrrr+rrr)r,r�r2rr�r�s      r3rM�ArgumentParser._check_value�	sw���.�.�����'�3�'�'��w�-���#�!$�U��#'�9�9�S��f�n�n�-E�#F�H���M�N��#�F�$�J�7�7�	$�r6c��UR5nURURURUR5 UR5$r8)r�r�r�r@rCr�)r,rvs  r3r��ArgumentParser.format_usage
sB���'�'�)�	����D�J�J��
�
� �;�;�	=��$�$�&�&r6c��UR5nURURURUR5 URUR5 URHdnURUR5 URUR5 URUR5 UR5 Mf URUR5 UR5$r8)r�r�r�r@rCr�r9rBr�rrr�r�r�r�r�)r,rv�action_groups   r3r��ArgumentParser.format_help
s����'�'�)�	�	���D�J�J��
�
� �;�;�	=�	���4�+�+�,�!�/�/�L��#�#�L�$6�$6�7����|�7�7�8��#�#�L�$?�$?�@��!�!�#�	0�	���4�;�;�'��$�$�&�&r6c�4�URURS9$)Nr�)r�rcr<s r3r��ArgumentParser._get_formatter*
s���#�#����#�3�3r6c�j�Uc[RnURUR5U5 gr8)r�r�r�r��r,�files  r3�print_usage�ArgumentParser.print_usage0
s)���<��;�;�D����D�-�-�/��6r6c�j�Uc[RnURUR5U5 gr8)r�r�r�r�r\s  r3r��ArgumentParser.print_help5
s)���<��;�;�D����D�,�,�.��5r6c��U(a,U=(d [RnURU5 gg![[4a gf=fr8)r��stderr�writer/r)r,rcr]s   r3r��ArgumentParser._print_message:
sB����&�4�;�;�D�
��
�
�7�#���#�G�,�
��
�s�5�A�Ac�~�U(a URU[R5 [R"U5 gr8)r�r�rcr�)r,�statusrcs   r3r��ArgumentParser.exitE
s%����������5��	�	�&�r6c��UR[R5 URUS.nUR	S[S5U-5 g)z�error(message: string)

Prints a usage message incorporating the message to stderr and
exits.

If you override this in a subclass, it should not return -- it
should either exit or raise an exception.
�rcrcrMz%(prog)s: error: %(message)s
N)r^r�rcrcr�r�r,rcr�s   r3r�ArgumentParser.errorJ
s=��	
������%��	�	�g�6���	�	�!�Q�7�8�4�?�@r6c�z�URUS.nUR[S5U-[R5 g)Nrjz%(prog)s: warning: %(message)s
)rcr�rr�rcrks   r3r��ArgumentParser._warningW
s/���	�	�g�6�����A�@�A�D�H�$�+�+�Vr6)r�r�r�r�r�r�r�r�r�rcr�r�r8)rN)'r%rArBrCrDrrgr)r�r\r�r�r�r�r�r�rr+r�rrr<r3rGrFr�rrMr�r�r�r^r�r�r�rr�rEr�r�s@r3rr�s�����,��!���!.�!�'+�"&�")��"�#�;,�@	?��>�*�
.��J�$�Lq!�f	�6�#�,�",0�\*�X(�\�I�*1�f�2
8�'�'�.4�7�
6�
��
A�W�Wr6r)3rD�__version__�__all__�osr��rer^�sysr�rrrrrrrrrr�rFrrIrr	r
rrr_�	Exceptionrrr
r�rr�r�r�r�r�r�r�r�r�r�rrrr1rbrfrr?r6r3�<module>rus���;�z����,���*���������	���	�.���v��>	�"]�F�]�@Q�-�Q�!�6�!��M��*$�}�$�&�.?�I�?�(	�	�	�_@�
�_@�F�h��9/�F�9/�x".�6�".�J2��2�2�(��&#�)�#�&%-�F�%-�P-��-�:1�6�1�2�&��*�V��:lL��lL�\-�M�-�1:�v�1:�n$� �$�(x8��x8�v	(;�&�(;�VE�n�E�:PW�%�'8�PWr6
© 2025 GrazzMean-Shell