� !A?h����b� dZgd�ZddlZddlZddlZddlZddl m Z m Z dZ dZ dZdZd Zd Zd ZGd �d e��Zd�ZGd�de��ZGd�de��ZGd�de��ZGd�de��ZGd�de��Zd�ZGd�de��ZGd�de��ZGd�de��ZGd �d!e��Z Gd"�d#e��Z!Gd$�d%e��Z"Gd&�d'e"��Z#Gd(�d)e"��Z$Gd*�d+e��Z%Gd,�d-e��Z&Gd.�d/e��Z'Gd0�d1e��Z(Gd2�d3e��Z)Gd4�d5e��Z*Gd6�d7e%��Z+Gd8�d9e��Z,Gd:�d;e��Z-Gd<�d=e��Z.Gd>�d?e.��Z/Gd@�dAe/��Z0GdB�dCee.��Z1dS)Dz1.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�"�eZdZ d�Zd�Zd�ZdS)�_AttributeHolderc���t|��j}g}i}|���D]$}|�t |�����%|���D]9\}}|���r|�|�d|�����4|||<�:|r%|�dt |��z��|�dd�|���d�S)N�=z**%s�(�, �))�type�__name__� _get_args�append�repr� _get_kwargs� isidentifier�join)�self� type_name� arg_strings� star_args�arg�name�values �5/opt/alt/python-internal/lib64/python3.11/argparse.py�__repr__z_AttributeHolder.__repr__vs�����J�J�'� �� �� ��>�>�#�#� *� *�C� � � �t�C�y�y� )� )� )� )��+�+�-�-� (� (�K�D�%�� � �"�"� (��"�"�d�d�d�E�E�#:�;�;�;�;�"'� �$��� � 9� � � �v��Y���7� 8� 8� 8�$�9�9�d�i�i� �&<�&<�&<�&<�=�=�c�N�t|j�����S�N)�list�__dict__�items�r+s r2r(z_AttributeHolder._get_kwargs�s���D�M�'�'�)�)�*�*�*r4c��gSr6�r:s r2r%z_AttributeHolder._get_args�s��� r4N)r$� __module__� __qualname__r3r(r%r<r4r2rrmsF������� >� >� >�+�+�+�����r4rc�|�|�gSt|��tur |dd�Sddl}|�|��S�Nr)r#r7�copy)r9rAs r2� _copy_itemsrB�sG�� �}�� � �E�{�{�d����Q�Q�Q�x���K�K�K� �9�9�U� � �r4c���eZdZ d d�Zd�Zd�ZGd�de��Zd �Zd �Z d �Z d �Z d!d �Z d�Z d�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�ZdS)"r��Nc��|�"ddl}|���j}|dz}||_||_t |t |dz |dz����|_||_d|_ d|_ d|_ |� |d��|_ |j |_tjdtj��|_tjd��|_dS)NrrD�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�widthrHs r2�__init__zHelpFormatter.__init__�s��� �=� �M�M�M��,�,�.�.�6�E� �Q�J�E��� �!1���"%�&7�&)�%�"�*�6F��6J�&K�&K�#M�#M����� � ����� �"#���!�]�]�4��6�6��� $� 2���#&�;�v�s�y�#A�#A�� �#&�;�z�#:�#:�� � � r4c�P�|xj|jz c_|xjdz c_dS�N��rQrLrRr:s r2�_indentzHelpFormatter._indent�s-�� ���� 6�6��� � � �q�� � � � r4c�P�|xj|jzc_|xjdzc_dSrbrdr:s r2�_dedentzHelpFormatter._dedent�s-�� ���� 6�6��� � � �q�� � � � r4c��eZdZdd�Zd�ZdS)�HelpFormatter._SectionNc�>�||_||_||_g|_dSr6)� formatter�parent�headingr9)r+rkrlrms r2r`zHelpFormatter._Section.__init__�s"��&�D�N� �D�K�"�D�L��D�J�J�Jr4c��|j�|j���|jj}|d�|jD����}|j�|j���|sdS|jturA|j�:|jj}td��t|j���z}d|d|fz}nd}|d||dg��S)Nc��g|] \}}||��� Sr<r<)�.0�func�argss r2� z6HelpFormatter._Section.format_help..�s"��G�G�G�j�d�D�d�d�D�k�G�G�Gr4�z %(heading)s:)rm�%*s%s � ) rlrkre� _join_partsr9rgrmrrQ�_�dict)r+r*� item_help�current_indent� heading_textrms r2� format_helpz"HelpFormatter._Section.format_help�s����{�&���&�&�(�(�(��>�-�D���G�G�D�J�G�G�G�H�H�I��{�&���&�&�(�(�(�� ��r��|�8�+�+�� �0H�!%��!?�� ��0�0�4�� �3M�3M�3M�M� �#�~�r�<�&H�H������4��w� �4�8�9�9� 9r4r6)r$r=r>r`r}r<r4r2rTri�s7������ � � � �  :� :� :� :� :r4rTc�H�|jj�||f��dSr6)rVr9r&)r+rqrrs r2� _add_itemzHelpFormatter._add_item�s&�� ��#�*�*�D�$�<�8�8�8�8�8r4c��|���|�||j|��}|�|jg��||_dSr6)rerTrVrr})r+rm�sections r2� start_sectionzHelpFormatter.start_section�sL�� � � �����-�-��d�&;�W�E�E�� ���w�*�B�/�/�/� '����r4c�P�|jj|_|���dSr6)rVrlrgr:s r2� end_sectionzHelpFormatter.end_section�s!�� $� 5� <��� � � �����r4c�\�|tur |� |�|j|g��dSdSdSr6)rr� _format_text)r+�texts r2�add_textzHelpFormatter.add_text�s?�� �x� � �D�$4� �N�N�4�,�t�f� 5� 5� 5� 5� 5� � �$4�$4r4c�^�|tur#||||f}|�|j|��dSdSr6)rr� _format_usage)r+�usage�actions�groups�prefixrrs r2� add_usagezHelpFormatter.add_usages@�� �� � ��'�6�6�1�D� �N�N�4�-�t� 4� 4� 4� 4� 4� !� r4c�|�|jtur�|j}||��g}|�|��D] }|�||�����!t t t|����}||jz}t |j |��|_ |� |j |g��dSdSr6) �helpr�_format_action_invocation�_iter_indented_subactionsr&rN�map�lenrQrSr�_format_action)r+�action�get_invocation� invocations� subaction�invocation_length� action_lengths r2� add_argumentzHelpFormatter.add_arguments��� �;�h� &� &�"�;�N�)�>�&�1�1�2�K�!�;�;�F�C�C� >� >� ��"�"�>�>�)�#<�#<�=�=�=�=�!$�C��[�$9�$9� :� :� �-��0D�D�M�&)�$�*A�*7�'9�'9�D� #� �N�N�4�.��� 9� 9� 9� 9� 9� '� &r4c�:�|D]}|�|���dSr6)r�)r+r�r�s r2� add_argumentszHelpFormatter.add_argumentss2��� &� &�F� � � �f� %� %� %� %� &� &r4c��|j���}|r3|j�d|��}|�d��dz}|S)N� rv)rUr}r[�sub�strip)r+r�s r2r}zHelpFormatter.format_helpsQ���!�-�-�/�/�� � +��+�/�/���=�=�D��:�:�d�#�#�d�*�D�� r4c�@�d�d�|D����S)Nrtc�(�g|]}|r |tu� |��Sr<)r)rp�parts r2rsz-HelpFormatter._join_parts..&s5��:�:�:� ��:�$(��$8�$8��$8�$8�$8r4)r*)r+� part_stringss r2rwzHelpFormatter._join_parts%s4���w�w�:�:�$0�:�:�:�;�;� ;r4c� ��|�td��}|�|t|j���z}�nO|�|sdt|j���z}�n1|��.dt|j���z}g}g}|D]4}|jr|�|���|�|���5|j} | ||z|��} d�d�|| fD����}|j|jz �t|��t|��z�k�rqd} | ||��} | ||��} tj | | ��}tj | | ��}d �fd� }t|��t|��zd�zkrpdt|��t|��zd zz}|r1||g|z||��}|� |||����n�|r||g|z||��}n�|g}n|dt|��z}||z}|||��}t|��d kr@g}|� |||����|� |||����|g|z}d �|��}|�|�d �S) Nzusage: �r\z%(prog)s� c��g|]}|�|��Sr<r<)rp�ss r2rsz/HelpFormatter._format_usage..Fs��C�C�C�A��C�a�C�C�Cr4z%\(.*?\)+(?=\s|$)|\[.*?\]+(?=\s|$)|\S+c���g}g}|�t|��dz }nt|��dz }|D]�}|dzt|��z�krA|r?|�|d�|��z��g}t|��dz }|�|��|t|��dzz }��|r+|�|d�|��z��|� |dt|��d�|d<|S)Nrcr�r)r�r&r*)�parts�indentr��lines�line�line_lenr�� text_widths �r2� get_linesz.HelpFormatter._format_usage..get_linesZs����E��D��)�#&�v�;�;��?���#&�v�;�;��?�� %�2�2��#�a�<�#�d�)�)�3�j�@�@�T�@�!�L�L��#�(�(�4�.�.�)@�A�A�A�#%�D�'*�6�{�{�Q��H�� � �D�)�)�)� �C��I�I��M�1����>�� � �V�c�h�h�t�n�n�%<�=�=�=��)�#(��8�C��K�K�L�L�#9��a�� �Lr4g�?rcrvr�r6) rxryrK�option_stringsr&�_format_actions_usager*rPrQr�rW�findall�extend)r+r�r�r�r�r\� optionals� positionalsr��format� action_usage� part_regexp� opt_usage� pos_usage� opt_parts� pos_partsr�r�r�r�r�s @r2r�zHelpFormatter._format_usage*s ��� �>��y�\�\�F� � ��D�d�j�1�1�1�1�E�E��]�7�]���4�:�!6�!6�!6�6�E�E��]���$�*� 5� 5� 5�5�D��I��K�!� /� /���(�/��$�$�V�,�,�,�,��&�&�v�.�.�.�.��/�F�!�6�)�k�"9�6�B�B�L��H�H�C�C�$� �)=�C�C�C�D�D�E���t�';�;�J��6�{�{�S��Z�Z�'�*�4�4��� #�F�9�f�5�5� �"�F�;��7�7� ��K� �Y�?�?� ��K� �Y�?�?� � !�!�!�!�!�!�*�v�;�;��T���*�d�Z�.?�?�?� �C��K�K�#�d�)�)�$;�a�$?�@�F� �'� )� �4�&�9�*<�f�f� M� M��� � �Y�Y�y�&�%A�%A�B�B�B�B�"�'� )� �4�&�9�*<�f�f� M� M���!%����!�3�v�;�;�.�F�%� �1�E�%�I�e�V�4�4�E��5�z�z�A�~�~� "��� � �Y�Y�y�&�%A�%A�B�B�B�� � �Y�Y�y�&�%A�%A�B�B�B�!�F�U�N�E�� � �%�(�(��$�V�U�U�U�+�+r4c�,�t��}i}|D�]G}|jstd|����� |�|jd��}t |j��}||z}|||�|jkr�d} |jD]*} |�| ��| jtur| dz } �+|| z } | s��|js5||vr||xxdz cc<nd||<||vr||xxdz cc<n@d||<n:| dkr4||vr||xxdz cc<nd||<||vr||xxd z cc<nd ||<t|dz|��D]} d || <���8#t$rY��EwxYwg} t|��D�]\} } | jtury| � d��|� | ��d kr|� | ���X|� | dz��d kr|� | dz����| jsg|�| ��}|�| |��}| |vr"|ddkr|d dkr |dd �}| � |����| jd}| jdkr| ���}n2|�| ��}|�| |��}|�d |��}| js | |vrd |z}| � |�����t)|d���D]} || g| | | �<�d �d�| D����}d}d}t-jd|zd|��}t-jd|zd|��}t-j|�d|��d|��}|���}|S)Nz empty group rrcz [�[�]z (r r"�|�����r��[%s]T)�reversec��g|]}|�|��Sr6r<)rp�items r2rsz7HelpFormatter._format_actions_usage..�s��D�D�D�$�4�3C��3C�3C�3Cr4z[\[(]z[\])]z(%s) z\1� (%s)z *rt)�set�_group_actions� ValueError�indexr��addr�r�required�range� enumerater&�get�popr��#_get_default_metavar_for_positional� _format_args�nargs� format_usage�!_get_default_metavar_for_optional�sortedr*rWr�r�)r+r�r�� group_actions�inserts�group�start�group_action_count�end�suppressed_actions_countr��exposed_actions_count�ir��defaultr�� option_string� args_stringr��open�closes r2r�z#HelpFormatter._format_actions_usage�s}����� ����* )�* )�E��'� 9� �!7��!7�!7�8�8�8�& )�� � �e�&:�1�&=�>�>��&)��)=�%>�%>�"��0�0���5��9�%��)=�=�=�/0�,�"'�"6�:�:��%�)�)�&�1�1�1�!�;�(�2�2�4��9�4��,>�AY�,Y�)�0�!� � �>�/� �G�+�+�#�E�N�N�N�d�2�N�N�N�N�-0�G�E�N��'�>�>�#�C�L�L�L�C�/�L�L�L�L�+.�G�C�L�L�.��2�2� �G�+�+�#�E�N�N�N�d�2�N�N�N�N�-0�G�E�N��'�>�>�#�C�L�L�L�C�/�L�L�L�L�+.�G�C�L�"�5�1�9�c�2�2�)�)��%(��� � ���I� � � ��� ����N��"�7�+�+�- #�- #�I�A�v��{�h�&�&�� � �T�"�"�"��;�;�q�>�>�S�(�(��K�K��N�N�N�N��[�[��Q��'�'�3�.�.��K�K��A��&�&�&���*�! #��B�B�6�J�J���(�(���9�9���]�*�*��A�w�#�~�~�$�r�(�c�/�/�#�A�b�D�z��� � �T�"�"�"�"�!'� 5�a� 8� ��<�1�$�$�!�.�.�0�0�D�D� #�D�D�V�L�L�G�"&�"3�"3�F�G�"D�"D�K�&3�m�m�[�[�A�D���)�6��+F�+F�!�D�=�D�� � �T�"�"�"�"����.�.�.� &� &�A�!�!�*��E�!�A�#�J�J��x�x�D�D�%�D�D�D�E�E�������w�x�$���t�4�4���w�x�%�'���5�5���w�D�D�D�%�%�0�#�t�<�<���z�z�|�|��� s� E � E�Ec��d|vr|t|j���z}t|j|jz d��}d|jz}|�|||��dzS)Nz%(prog)r�� r�r�)ryrKrNrPrQ� _fill_text)r+r�r�r�s r2r�zHelpFormatter._format_text�se�� �� � ��$�D�J�/�/�/�/�D����t�';�;�R�@�@� ��t�+�+�����t�Z��8�8�6�A�Ar4c�~�t|jdz|j��}t|j|z d��}||jz dz }|�|��}|js|jd|f}d|z}n7t|��|kr|jd||f}d|z}d}n|jd|f}d|z}|}|g}|jr�|j� ��rw|� |��} | r_|� | |��} |� d|d| dfz��| dd�D]} |� d|d| fz���n*|� d��s|� d��|�|��D]*} |� |�| �����+|�|��S) NrDr�rtruz %*s%-*s rrcrv)rMrSrOrNrPrQr�r�r�r�� _expand_help� _split_linesr&�endswithr�r�rw) r+r�� help_position� help_width� action_width� action_header�tup� indent_firstr�� help_text� help_linesr�r�s r2r�zHelpFormatter._format_actions���D�3�a�7� �3�5�5� ����}�4�b�9�9� �$�t�';�;�a�?� ��6�6�v�>�>� ��{� )��&��M�9�C�%��O�M�M��� � �<� /� /��&��L�-�G�C�'�#�-�M��L�L��&��M�9�C�%��O�M�(�L���� �;� �6�;�,�,�.�.� ��)�)�&�1�1�I�� H�!�.�.�y�*�E�E� �� � �Y�,��J�q�M�)J�J�K�K�K�&�q�r�r�N�H�H�D��L�L��m�R��-F�!F�G�G�G�G���'�'��-�-� � �L�L�� � � ��7�7��?�?� 9� 9�I� �L�L��,�,�Y�7�7� 8� 8� 8� 8�����&�&�&r4c��|js8|�|��}|�||��d��\}|Sg}|jdkr|�|j��nO|�|��}|�||��}|jD]}|�|�d|�����d�|��S)Nrcrr�r!) r�r��_metavar_formatterr�r�r�r�r&r*)r+r�r��metavarr�r�r�s r2r�z'HelpFormatter._format_action_invocation4s����$� $��>�>�v�F�F�G�?�t�.�.�v�w�?�?��B�B�H�G��N��E��|�q� � �� � �V�2�3�3�3�3� �@�@��H�H��"�/�/���@�@� �%+�%:�I�I�M��L�L�M�M�M�;�;�!G�H�H�H�H��9�9�U�#�#� #r4c���|j�|j�n3|j�*d�|jD��}dd�|��z�n|��fd�}|S)Nc�,�g|]}t|����Sr<��str)rp�choices r2rsz4HelpFormatter._metavar_formatter..Ps��D�D�D�6�3�v�;�;�D�D�Dr4z{%s}�,c�>��t�t��r�S�f|zSr6)� isinstance�tuple)� tuple_size�results �r2r�z0HelpFormatter._metavar_formatter..formatUs'����&�%�(�(� /�� ��z�J�.�.r4)r��choicesr*)r+r��default_metavar� choice_strsr�rs @r2r�z HelpFormatter._metavar_formatterLsn��� �>� %��^�F�F� �^� '�D�D�V�^�D�D�D�K��c�h�h�{�3�3�3�F�F�$�F� /� /� /� /� /� � r4c��|�||��}|j�d|d��z}�n"|jtkrd|d��z}�n|jtkr*|d��}t |��dkrd|z}n�d|z}n�|jt krd|d��z}n�|jt krd}n�|jtkrd |d��z}nw|jtkrd }nd d �t|j��D��}n#t$rtd ��d�wxYwd � |��||j��z}|S)N�%srcr�rDz [%s [%s ...]]z[%s ...]z %s [%s ...]rz%s ...rtc��g|]}d��S)r r<)rprxs r2rsz.HelpFormatter._format_args..rs��=�=�=�A�4�=�=�=r4zinvalid nargs valuer�) r�r�rrr�rrrrr�� TypeErrorr�r*)r+r�r� get_metavarrr��formatss r2r�zHelpFormatter._format_args\s}���-�-�f�o�F�F� � �<� ��K�K��N�N�*�F�F� �\�X� %� %��k�k�!�n�n�,�F�F� �\�\� )� )�!�k�!�n�n�G��7�|�|�q� � �(�7�2���#�g�-��� �\�[� (� (�"�[�[��^�^�3�F�F� �\�Y� &� &��F�F� �\�V� #� #�� � �A���.�F�F� �\�X� %� %��F�F� B�=�=��v�|�)<�)<�=�=�=����� B� B� B� �!6�7�7�T�A� B�����X�X�g�&�&���V�\�)B�)B�B�F�� s �-D � D'c��tt|��|j���}t|��D]}||tur||=�t|��D](}t ||d��r||j||<�)|�d���*d�d�|dD����}||d<|� |��|zS)Nr�r$rr!c�,�g|]}t|����Sr<r�)rp�cs r2rsz.HelpFormatter._expand_help..�s��$G�$G�$G��S��V�V�$G�$G�$Gr4) ry�varsrKr7r�hasattrr$r�r*�_get_help_string)r+r��paramsr0� choices_strs r2r�zHelpFormatter._expand_helpxs����d�6�l�l���4�4�4����L�L� !� !�D��d�|�x�'�'��4�L����L�L� 5� 5�D��v�d�|�Z�0�0� 5�%�d�|�4��t� �� �:�:�i� � � ,��)�)�$G�$G�V�I�5F�$G�$G�$G�H�H�K� +�F�9� ��$�$�V�,�,�v�5�5r4c#�K� |j}|���|��Ed{V��|���dS#t$rYdSwxYwr6)�_get_subactionsrerg�AttributeError)r+r��get_subactionss r2r�z'HelpFormatter._iter_indented_subactions�sw���� �#�3�N� �L�L�N�N�N�%�~�'�'� '� '� '� '� '� '� '� �L�L�N�N�N�N�N�� � � � � �D�D� ���s�A� A�Ac��|j�d|�����}ddl}|�||��S)Nr�r)rZr�r��textwrap�wrap)r+r�r_rs r2r�zHelpFormatter._split_lines�sE���'�+�+�C��6�6�<�<�>�>�� �����}�}�T�5�)�)�)r4c��|j�d|�����}ddl}|�||||���S)Nr�r)�initial_indent�subsequent_indent)rZr�r�r�fill)r+r�r_r�rs r2r�zHelpFormatter._fill_text�sT���'�+�+�C��6�6�<�<�>�>�������}�}�T�5�,2�/5��7�7� 7r4c��|jSr6)r��r+r�s r2rzHelpFormatter._get_help_string�� ���{�r4c�4�|j���Sr6)�dest�upperr$s r2r�z/HelpFormatter._get_default_metavar_for_optional�s���{� � �"�"�"r4c��|jSr6)r'r$s r2r�z1HelpFormatter._get_default_metavar_for_positional�r%r4)rDrENr6)r$r=r>r`rerg�objectrTrr�r�r�r�r�r�r}rwr�r�r�r�r�r�r�r�r�r�r�rr�r�r<r4r2rr�s��������#$�#%�� ;�;�;�;�>������ :�:�:�:�:�6�:�:�:�@9�9�9� (�(�(� ���6�6�6�5�5�5�5� :�:�:�$&�&�&����;�;�;� ^,�^,�^,�@q�q�q�fB�B�B�.'�.'�.'�`$�$�$�0��� ���8 6� 6� 6����*�*�*�7�7�7����#�#�#�����r4rc��eZdZ d�ZdS)r c�n��d��fd�|�d���D����S)Nrtc3�"�K�|] }�|zV�� dSr6r<)rpr�r�s �r2� z9RawDescriptionHelpFormatter._fill_text..�s'�����P�P��v��}�P�P�P�P�P�Pr4T)�keepends)r*� splitlines)r+r�r_r�s `r2r�z&RawDescriptionHelpFormatter._fill_text�s8����w�w�P�P�P�P����$��1O�1O�P�P�P�P�P�Pr4N)r$r=r>r�r<r4r2r r �s-������� Q�Q�Q�Q�Qr4r c��eZdZ d�ZdS)r c�*�|���Sr6)r0)r+r�r_s r2r�z!RawTextHelpFormatter._split_lines�s����� � � r4N)r$r=r>r�r<r4r2r r �s(������� !�!�!�!�!r4r c��eZdZ d�ZdS)rc�� |j}|�d}d|vr>|jtur0ttg}|js |j|vr|td��z }|S)Nrtz %(default)z (default: %(default)s))r�r�rrrr�r�rx)r+r�r��defaulting_nargss r2rz.ArgumentDefaultsHelpFormatter._get_help_string�sm�� ��{�� �<��D� �t� #� #��~�X�-�-�$,�l�#;� ��(�9�F�L�rr<r4r2rr�s(������� ����r4rc��eZdZ d�Zd�ZdS)r c��|jjSr6�r#r$r$s r2r�z:MetavarTypeHelpFormatter._get_default_metavar_for_optional�� ���{�#�#r4c��|jjSr6r8r$s r2r�zr�r�r<r4r2r r �s7�������$�$�$�$�$�$�$�$r4r c���|�dS|jrd�|j��S|jdtfvr|jS|jdtfvr|jS|jr dd�|j��zdzSdS)N�/�{r�})r�r*r�rr'r)�arguments r2�_get_action_namer@�s������t� � � ��x�x��/�0�0�0� � �$��!1� 1� 1���� ��t�X�.� .� .��}�� � ���S�X�X�h�.�/�/�/�#�5�5��tr4c��eZdZ d�Zd�ZdS)rc�<�t|��|_||_dSr6)r@� argument_name�message)r+r?rDs r2r`zArgumentError.__init__s��-�h�7�7����� � � r4c�p�|j�d}ntd��}|t|j|j���zS)Nz %(message)sz'argument %(argument_name)s: %(message)s)rDrC)rCrxryrD)r+r�s r2�__str__zArgumentError.__str__sH�� � � %�"�F�F��@�A�A�F���T�\�+/�+=�?�?�?�?� ?r4N)r$r=r>r`rFr<r4r2rr�s7������� ���?�?�?�?�?r4rc��eZdZ dS)rN)r$r=r>r<r4r2rrs������J��Dr4rc�<�eZdZ dd�Zd�Zd�Zdd�ZdS) r NFc ��||_||_||_||_||_||_||_||_| |_| |_ dSr6� r�r'r��constr�r#rr�r�r�) r+r�r'r�rKr�r#rr�r�r�s r2r`zAction.__init__LsO��-����� ��� ��� ��� ��� ��� � �� ��� ��� � � r4c�(��gd�}�fd�|D��S)NrJc�4��g|]}|t�|��f��Sr<��getattr�rpr0r+s �r2rsz&Action._get_kwargs..o�(���>�>�>���w�t�T�*�*�+�>�>�>r4r<�r+�namess` r2r(zAction._get_kwargsbs0���  �  �  ��?�>�>�>��>�>�>�>r4c��|jdSr@�r�r:s r2r�zAction.format_usageqs���"�1�%�%r4c�:�ttd�����)Nz.__call__() not defined)�NotImplementedErrorrx�r+�parser� namespace�valuesr�s r2�__call__zAction.__call__ts��!�!�$=�">�">�?�?�?r4�NNNNNFNNr6)r$r=r>r`r(r�r\r<r4r2r r s�������0�j������������, ?� ?� ?�&�&�&�@�@�@�@�@�@r4r c�:��eZdZ d�fd� Zdd�Zd�Z�xZS)rNFc ���g} |D]N} | �| ��| �d��r"d| dd�z} | �| ���Ot���| |d||||||�� � dS)N�--�--no-rDr) r�r'r�r�r#rr�r�r�)r&� startswith�superr`) r+r�r'r�r#rr�r�r��_option_stringsr�� __class__s �r2r`zBooleanOptionalAction.__init__ys������+� 6� 6�M� � "� "�=� 1� 1� 1��'�'��-�-� 6� '�-����*;� ;� ��&�&�}�5�5�5�� �����*��������� � � � � � r4c�p�||jvr,t||j|�d�� ��dSdS)Nra)r��setattrr'rbrXs r2r\zBooleanOptionalAction.__call__�sC�� �D�/� /� /� �I�t�y�m�.F�.F�w�.O�.O�*O� P� P� P� P� P� 0� /r4c�6�d�|j��S)Nz | )r*r�r:s r2r�z"BooleanOptionalAction.format_usage�s���z�z�$�-�.�.�.r4)NNNFNNr6)r$r=r>r`r\r�� __classcell__�res@r2rrxsx�������������������<Q�Q�Q�Q�/�/�/�/�/�/�/r4rc�8��eZdZ d�fd� Zdd�Z�xZS)� _StoreActionNFc ����|dkrtd���|�"|tkrtdtz���tt|���||||||||| | �� � dS)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 constrJ)r�rrcrlr`� r+r�r'r�rKr�r#rr�r�r�res �r2r`z_StoreAction.__init__�s���� �A�:�:��K�L�L� L� � ��(�!2�!2��?�(�J�K�K� K� �l�D�!�!�*�*�)���������� +� � � � � r4c�2�t||j|��dSr6)rgr'rXs r2r\z_StoreAction.__call__�s��� �4�9�f�-�-�-�-�-r4r]r6�r$r=r>r`r\rirjs@r2rlrl�sk������� ��������������:.�.�.�.�.�.�.�.r4rlc�2��eZdZ d�fd� Zdd�Z�xZS)�_StoreConstActionNFc �f��tt|���||d||||���dS)Nr)r�r'r�rKr�r�r�)rcrsr`� r+r�r'rKr�r�r�r�res �r2r`z_StoreConstAction.__init__�sL��� ���&�&�/�/�)������� 0� � � � � r4c�<�t||j|j��dSr6)rgr'rKrXs r2r\z_StoreConstAction.__call__�s��� �4�9�d�j�1�1�1�1�1r4�NNFNNr6rqrjs@r2rsrs�sb������� �����������"2�2�2�2�2�2�2�2r4rsc�&��eZdZ d�fd� Z�xZS)�_StoreTrueActionFNc�d��tt|���||d|||���dS)NT�r�r'rKr�r�r�)rcryr`�r+r�r'r�r�r�res �r2r`z_StoreTrueAction.__init__�sI��� ���%�%�.�.�)������ /� � � � � r4)FFN�r$r=r>r`rirjs@r2ryry�sH������� ��� � � � � � � � � � r4ryc�&��eZdZ d�fd� Z�xZS)�_StoreFalseActionTFNc�d��tt|���||d|||���dS)NFr{)rcrr`r|s �r2r`z_StoreFalseAction.__init__�sI��� ���&�&�/�/�)������ 0� � � � � r4)TFNr}rjs@r2rr�sH������� ��� � � � � � � � � � r4rc�8��eZdZ d�fd� Zdd�Z�xZS)� _AppendActionNFc ����|dkrtd���|�"|tkrtdtz���tt|���||||||||| | �� � dS)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 appropriaternrJ)r�rrcr�r`ros �r2r`z_AppendAction.__init__�s���� �A�:�:��O�P�P� P� � ��(�!2�!2��?�(�J�K�K� K� �m�T�"�"�+�+�)���������� ,� � � � � r4c��t||jd��}t|��}|�|��t ||j|��dSr6)rOr'rBr&rg�r+rYrZr[r�r9s r2r\z_AppendAction.__call__�N��� �4�9�d�3�3���E�"�"�� � � �V����� �4�9�e�,�,�,�,�,r4r]r6rqrjs@r2r�r��sk������� ��������������:-�-�-�-�-�-�-�-r4r�c�2��eZdZ d�fd� Zdd�Z�xZS)�_AppendConstActionNFc �h��tt|���||d|||||���dS)Nr)r�r'r�rKr�r�r�r�)rcr�r`rus �r2r`z_AppendConstAction.__init__#sO��� � �$�'�'�0�0�)�������� 1� � � � � r4c��t||jd��}t|��}|�|j��t ||j|��dSr6)rOr'rBr&rKrgr�s r2r\z_AppendConstAction.__call__5sP��� �4�9�d�3�3���E�"�"�� � � �T�Z� � � �� �4�9�e�,�,�,�,�,r4rwr6rqrjs@r2r�r�!sb������� �����������$-�-�-�-�-�-�-�-r4r�c�.��eZdZ d�fd� Zdd�Z�xZS)� _CountActionNFc�d��tt|���||d|||���dS)Nr)r�r'r�r�r�r�)rcr�r`r|s �r2r`z_CountAction.__init__>sH��� �l�D�!�!�*�*�)������ +� � � � � r4c�l�t||jd��}|�d}t||j|dz��dS�Nrrc)rOr'rg)r+rYrZr[r��counts r2r\z_CountAction.__call__Ls=��� �4�9�d�3�3�� �=��E�� �4�9�e�a�i�0�0�0�0�0r4)NFNr6rqrjs@r2r�r�<s\������� ��� � � � � � �1�1�1�1�1�1�1�1r4r�c�.��eZdZeedf�fd� Zdd�Z�xZS)� _HelpActionNc�b��tt|���|||d|���dS)Nr�r�r'r�r�r�)rcr�r`)r+r�r'r�r�res �r2r`z_HelpAction.__init__UsE��� �k�4� � �)�)�)����� *� � � � � r4c�V�|���|���dSr6)� print_help�exitrXs r2r\z_HelpAction.__call__as%��������� � � � � � � r4r6�r$r=r>rr`r\rirjs@r2r�r�Ss\��������!�� � � � � � ��������r4r�c�0��eZdZdeedf�fd� Zdd�Z�xZS)�_VersionActionNc���|�td��}tt|���|||d|���||_dS)Nz&show program's version number and exitrr�)rxrcr�r`�version)r+r�r�r'r�r�res �r2r`z_VersionAction.__init__hs[��� �<��=�>�>�D� �n�d�#�#�,�,�)����� -� � � � �� � � r4c��|j}|�|j}|���}|�|��|�|���t j��|���dSr6)r��_get_formatterr��_print_messager}�_sys�stdoutr�)r+rYrZr[r�r�rks r2r\z_VersionAction.__call__xso���,�� �?��n�G��)�)�+�+� ����7�#�#�#����i�3�3�5�5�t�{�C�C�C�� � � � � � � r4r6r�rjs@r2r�r�fs_���������!�� ������ �������r4r�c�X��eZdZGd�de��Zedddf�fd� Zd�Zd�Zd d�Z �xZ S) �_SubParsersActionc���eZdZ�fd�Z�xZS)�&_SubParsersAction._ChoicesPseudoActionc���|x}}|r|dd�|��zz }ttj|��}|�g|||���dS)Nr�r!)r�r'r�r�)r*rcr��_ChoicesPseudoActionr`)r+r0�aliasesr�r�r'�supres �r2r`z/_SubParsersAction._ChoicesPseudoAction.__init__�sq���!� !�G�d�� 8��7�T�Y�Y�w�%7�%7�7�7���)�>��E�E�C� �L�L���D�!(� � *� *� *� *� *r4r}rjs@r2r�r��s8������� *� *� *� *� *� *� *� *� *r4r�FNc ���||_||_i|_g|_t t |���||t|j|||���dS)N)r�r'r�rr�r�r�)� _prog_prefix� _parser_class�_name_parser_map�_choices_actionsrcr�r`r) r+r�r\� parser_classr'r�r�r�res �r2r`z_SubParsersAction.__init__�so���!���)��� "��� "��� ���&�&�/�/�)����)���� 0� � � � � r4c ��|�d���|j�d|��|d<|�dd��}||jvr t |t d��|z���|D]+}||jvr t |t d��|z����,d|vrF|�d��}|�|||��}|j�|��|j di|��}||j|<|D] }||j|<� |S)Nr\r�r�r<zconflicting subparser: %szconflicting subparser alias: %sr�) r�r�r�r�rrxr�r�r&r�)r+r0�kwargsr��aliasr�� choice_actionrYs r2� add_parserz_SubParsersAction.add_parser�sQ�� �:�:�f� � � %�(,�(9�(9�(9�4�4�@�F�6�N��*�*�Y��+�+�� �4�(� (� (���a�(C�&D�&D�t�&K�L�L� L�� H� H�E���-�-�-�#��!�=�>�>��F�H�H�H�.� �V� � ��:�:�f�%�%�D� �5�5�d�G�T�J�J�M� � !� (� (�� 7� 7� 7�$��#�-�-�f�-�-��&,���d�#�� 2� 2�E�+1�D� !�%� (� (�� r4c��|jSr6)r�r:s r2rz!_SubParsersAction._get_subactions�s ���$�$r4c�t�|d}|dd�}|jturt||j|�� |j|}nM#t$r@|d�|j��d�}t d��|z}t||���wxYw|�|d��\} }t| ��� ��D]\} } t|| | ���|rRt|��� tg��t|t���|��dSdS)Nrrcr!)� parser_namerz5unknown parser %(parser_name)r (choices: %(choices)s))r'rrgr��KeyErrorr*rxr�parse_known_argsrr9� setdefault�_UNRECOGNIZED_ARGS_ATTRrOr�) r+rYrZr[r�r�r-rr�msg� subnamespace�keyr1s r2r\z_SubParsersAction.__call__�s_���Q�i� ��Q�R�R�j� � �9�H� $� $� �I�t�y�+� 6� 6� 6� +��*�;�7�F�F��� +� +� +�#.�#�y�y��)>�?�?�A�A�D��K�L�L�t�S�C���c�*�*� *�  +����%+�$;�$;�K��$N�$N�!� �k��|�,�,�2�2�4�4� +� +�J�C�� �I�s�E� *� *� *� *� � L� ��O�O� &� &�'>�� C� C� C� �I�6� 7� 7� >� >�{� K� K� K� K� K� L� Ls � A�A Br6) r$r=r>r r�rr`r�rr\rirjs@r2r�r��s��������*�*�*�*�*�v�*�*�*�����������.���<%�%�%�L�L�L�L�L�L�L�Lr4r�c��eZdZdd�ZdS)� _ExtendActionNc��t||jd��}t|��}|�|��t ||j|��dSr6)rOr'rBr�rgr�s r2r\z_ExtendAction.__call__�r�r4r6)r$r=r>r\r<r4r2r�r��s(������-�-�-�-�-�-r4r�c�$�eZdZ dd�Zd�Zd�ZdS)r�rr�Nc�>�||_||_||_||_dSr6)�_mode�_bufsize� _encoding�_errors)r+�mode�bufsize�encoding�errorss r2r`zFileType.__init__s"���� ��� �!����� � � r4c����|dkr�d�jvr&d�jvrtjjn tjSt �fd�dD����r&d�jvrtjjn tjSt d���jz}t|��� t|�j�j �j �j ��S#t$r+}||d�}t d��}t||z���d}~wwxYw) N�-r��bc3�*�K�|] }|�jvV��dSr6)r�)rprr+s �r2r.z$FileType.__call__.. s)�����4�4��Q�$�*�_�4�4�4�4�4�4r4�waxzargument "-" with mode %r)�filename�errorz$can't open '%(filename)s': %(error)s)r�r��stdin�buffer�anyr�rxr�r�r�r�r��OSErrorr)r+�stringr��errrDs` r2r\zFileType.__call__s��� �S�=�=��d�j� � �,/�4�:�,=�,=�t�z�(�(�4�:�M��4�4�4�4�e�4�4�4�4�4� &�-0�D�J�->�->�t�{�)�)�D�K�O��3�4�4�t�z�A�� ��o�o�%� 4���� �D�M�4�>�� �&�&� &��� 4� 4� 4� &��3�3�D��>�?�?�G�#�G�d�N�3�3� 3����� 4���s�&C� C;�&C6�6C;c���|j|jf}d|jfd|jfg}d�d�|D��d�|D��z��}t |��j�d|�d�S)Nr�r�r!c�8�g|]}|dk�t|����S)r�)r')rpr/s r2rsz%FileType.__repr__..s#��E�E�E�C�3�"�9�9�d�3�i�i�9�9�9r4c�&�g|]\}}|�|�d|����S)Nrr<)rp�kwr/s r2rsz%FileType.__repr__.. s3��2�2�2�g�b�#�!$��*,���S�S�1�!0��r4r r")r�r�r�r�r*r#r$)r+rrr��args_strs r2r3zFileType.__repr__s����z�4�=�(���t�~�.��4�<�0H�I���9�9�E�E�4�E�E�E�2�2��2�2�2�2�3�3�� ��:�:�.�.�.����9�9r4)r�r�NN)r$r=r>r`r\r3r<r4r2rr�sK������� ���� 4�4�4�(:�:�:�:�:r4rc�"�eZdZ d�Zd�Zd�ZdS)r c �>�|D]}t||||���dSr6)rg)r+r�r0s r2r`zNamespace.__init__/s4��� .� .�D� �D�$��t� � -� -� -� -� .� .r4c�z�t|t��stSt|��t|��kSr6)rr �NotImplementedr)r+�others r2�__eq__zNamespace.__eq__3s1���%��+�+� "�!� !��D�z�z�T�%�[�[�(�(r4c��||jvSr6)r8)r+r�s r2� __contains__zNamespace.__contains__8s���d�m�#�#r4N)r$r=r>r`r�r�r<r4r2r r (sF������� .�.�.�)�)�)� $�$�$�$�$r4r c���eZdZ�fd�Zd�Zdd�Zd�Zd�Zd�Zd�Z d �Z d �Z d �Z d �Z d �Zd�Zdd�Zd�Zd�Zd�Zd�Z�xZS)�_ActionsContainerc����tt|�����||_||_||_||_i|_|�ddt��|�ddt��|�ddt��|�ddt��|�ddt��|�ddt��|�ddt��|�ddt��|�dd t ��|�dd t"��|�dd t$��|�dd t&��|���g|_i|_g|_g|_i|_t5jd ��|_g|_dS)Nr��store� store_const� store_true� store_falser&� append_constr�r�r��parsersr�z^-\d+$|^-\d*\.\d+$)rcr�r`� description�argument_default� prefix_chars�conflict_handler� _registries�registerrlrsryrr�r�r�r�r�r�r�� _get_handler�_actions�_option_string_actions�_action_groups�_mutually_exclusive_groups� _defaultsrWrX�_negative_number_matcher�_has_negative_number_optionals)r+r�r�r�r�res �r2r`z_ActionsContainer.__init__>s���� ���&�&�/�/�1�1�1�&��� 0���(��� 0������ � � �h��l�3�3�3� � � �h���6�6�6� � � �h� �/@�A�A�A� � � �h� �.>�?�?�?� � � �h� �/@�A�A�A� � � �h��-�8�8�8� � � �h��0B�C�C�C� � � �h���6�6�6� � � �h�� �4�4�4� � � �h� �>�:�:�:� � � �h� �+<�=�=�=� � � �h��-�8�8�8� �������� �&(��#�!���*,��'����),� �4I�(J�(J��%�/1��+�+�+r4c�F�|j�|i��}|||<dSr6)r�r�)r+� registry_namer1r*�registrys r2r�z_ActionsContainer.registerss'���#�.�.�}�b�A�A�� �����r4Nc�D�|j|�||��Sr6)r�r�)r+r�r1r�s r2� _registry_getz_ActionsContainer._registry_getws ���� �.�2�2�5�'�B�B�Br4c ��|j�|��|jD]}|j|vr||j|_�dSr6)r��updater�r'r�)r+r�r�s r2� set_defaultsz_ActionsContainer.set_defaults}sQ�� ����f�%�%�%��m� 5� 5�F��{�f�$�$�!'�� �!4���� 5� 5r4c��|jD]}|j|kr|j� |jcS�|j�|d��Sr6)r�r'r�r�r�)r+r'r�s r2� get_defaultz_ActionsContainer.get_default�sN���m� &� &�F��{�d�"�"�v�~�'A��~�%�%�%���~�!�!�$��-�-�-r4c�:� |j}|r#t|��dkr3|dd|vr#|rd|vrtd���|j|i|��}n |j|i|��}d|vr3|d}||jvr|j||d<n|j� |j|d<|�|��}t|��std|�d����|d i|��}|� d|j |j ��}t|��st|�d ����|turt|�d ����t|d ��rG |� ���|d��n#t$rtd ���wxYw|�|��S)Nrcrr'z+dest supplied twice for positional argumentr�zunknown 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_kwargsr�r��_pop_action_class�callablerr#rrr�r�r � _add_action)r+rrr��charsr'� action_classr�� type_funcs r2r�z_ActionsContainer.add_argument�s�� ��!��� @�s�4�y�y�A�~�~�$�q�'�!�*�E�*A�*A�� P��&�(�(� �!N�O�O�O�0�T�0�$�A�&�A�A�F�F�/�T�.��?��?�?�F� �F� "� "��&�>�D��t�~�%�%�$(�N�4�$8��y�!�!��&�2�$(�$9��y�!��-�-�f�5�5� �� �%�%� F��*�l�l�l�D�E�E� E���'�'��'�'���&�&�v�v�{�F�K�H�H� �� �"�"� B��Y�Y�Y�@�A�A� A� �� � ��2;�)�)�>�?�?� ?� �4�)� *� *� Q� Q��#�#�%�%�2�2�6�4�@�@�@�@��� Q� Q� Q� �!O�P�P�P� Q��������'�'�'s �(E+�+Fc�Z�t|g|�Ri|��}|j�|��|Sr6)�_ArgumentGroupr�r&)r+rrr�r�s r2�add_argument_groupz$_ActionsContainer.add_argument_group�s;���t�5�d�5�5�5�f�5�5�� ��"�"�5�)�)�)�� r4c �T�t|fi|��}|j�|��|Sr6)�_MutuallyExclusiveGroupr�r&)r+r�r�s r2�add_mutually_exclusive_groupz._ActionsContainer.add_mutually_exclusive_group�s3��'��7�7��7�7�� �'�.�.�u�5�5�5�� r4c�$�|�|��|j�|��||_|jD] }||j|<� |jD]=}|j�|��r!|js|j�d���>|S)NT) �_check_conflictr�r&� containerr�r�r��matchr�)r+r�r�s r2rz_ActionsContainer._add_action�s��� ���V�$�$�$� � ���V�$�$�$����$�2� @� @�M�9?�D� '� � 6� 6�$�2� E� E�M��,�2�2�=�A�A� E��:�E��7�>�>�t�D�D�D��� r4c�:�|j�|��dSr6)r��remover$s r2�_remove_actionz _ActionsContainer._remove_action�s�� � ���V�$�$�$�$�$r4c��i}|jD];}|j|vr&td��}t||jz���|||j<�� >� >�!%�F�:� � �:�:�g� � �,� .� .�9�F�3J�3J�!%�F�:� ��F��b�9�9�9�9r4c�@�g}g}|D]�}|d|jvr+||jd�}td��}t||z���|�|��t |��dkr$|d|jvr|�|����|�dd��}|�f|r |d}n|d}|�|j��}|s!td��}t||z���|�dd��}t|||� ��S) Nr)�optionr�zNinvalid option string %(option)r: must start with a character %(prefix_chars)rrcr'z%dest= is required for options like %rr�rxr&) r�rxr�r&r�r��lstrip�replacery) r+rrr�r��long_option_stringsr�r�r'�dest_option_strings r2r z&_ActionsContainer._get_optional_kwargssa���� ��!� :� :�M� ��#�t�'8�8�8�"/�(,�(9�;�;���G�H�H�� ��t��,�,�,� � !� !�-� 0� 0� 0��=�!�!�A�%�%�-��*:�d�>O�*O�*O�#�*�*�=�9�9�9���z�z�&�$�'�'�� �<�"� 7�%8��%;�"�"�%3�A�%6�"�%�,�,�T�->�?�?�D�� 6��?�@�@�� ��}�!4�5�5�5��<�<��S�)�)�D��F��n�E�E�E�Er4c�\�|�d|��}|�d||��S)Nr�)r�r)r+r�r�r�s r2r z#_ActionsContainer._pop_action_class?s-�����H�g�.�.���!�!�(�F�F�;�;�;r4c��d|jz} t||��S#t$r'td��}t ||jz���wxYw)Nz_handle_conflict_%sz%invalid conflict_resolution value: %r)r�rOrrxr�)r+�handler_func_namer�s r2r�z_ActionsContainer._get_handlerCse��1�D�4I�I�� :��4�!2�3�3� 3��� :� :� :��;�<�<�C��S�4�#8�8�9�9� 9� :���s ��1A c���g}|jD]/}||jvr$|j|}|�||f���0|r"|���}|||��dSdSr6)r�r�r&r�)r+r��confl_optionalsr��confl_optionalr�s r2rz!_ActionsContainer._check_conflictLs�����#�2� H� H�M��� ;�;�;�!%�!<�]�!K���&�&� �~�'F�G�G�G�� � 6�#�0�0�2�2� � � �V�_� 5� 5� 5� 5� 5� 6� 6r4c��tddt|����}d�d�|D����}t|||z���)Nzconflicting option string: %szconflicting option strings: %sr!c��g|]\}}|��Sr<r<)rpr�r�s r2rsz<_ActionsContainer._handle_conflict_error..^s,��%=�%=�%=�)>���&3�%=�%=�%=r4)rr�r*r)r+r��conflicting_actionsrD�conflict_strings r2�_handle_conflict_errorz(_ActionsContainer._handle_conflict_errorZsk���:�;��2�3�3�5�5���)�)�%=�%=�(;�%=�%=�%=�>�>���F�G�o�$=�>�>�>r4c���|D][\}}|j�|��|j�|d��|js|j�|���\dSr6)r�rr�r�rr)r+r�r5r�s r2�_handle_conflict_resolvez*_ActionsContainer._handle_conflict_resolvecsy��&9� 8� 8� !�M�6� � !� (� (�� 7� 7� 7� � '� +� +�M�4� @� @� @��(� 8�� �/�/��7�7�7�� 8� 8r4r6)r$r=r>r`r�rrrr�rrrrr$r r r r�rr7r9rirjs@r2r�r�<sL�������01�01�01�01�01�j!�!�!�C�C�C�C� 5�5�5�.�.�.�1(�1(�1(�f��� ��� ���*%�%�%�&<�&<�&<�P:�:�:� F� F� F�D<�<�<�<�:�:�:� 6� 6� 6�?�?�?� 8� 8� 8� 8� 8� 8� 8r4r�c�>��eZdZd�fd� Z�fd�Z�fd�Z�fd�Z�xZS)rNc �p��|j}|d|j��|d|j��|d|j��t t |��j}|dd|i|��||_g|_|j |_ |j |_ |j |_ |j |_ |j |_ |j|_dS)Nr�r�r�r�r<)r�r�r�r�rcrr`r r�r�r�r�r�r�r�)r+rr r�r�r� super_initres �r2r`z_ArgumentGroup.__init__ts�����"����!�9�#=�>�>�>���~�y�5�6�6�6���!�9�#=�>�>�>��>�4�0�0�9� �� �5�5�{�5�f�5�5�5��� � ���%�0���!�*�� �&/�&F��#�"�,��� � 4� �+�*3�*N��'�'�'r4c���tt|���|��}|j�|��|Sr6)rcrrr�r&�r+r�res �r2rz_ArgumentGroup._add_action�s<����~�t�,�,�8�8��@�@�� ��"�"�6�*�*�*�� r4c���tt|���|��|j�|��dSr6)rcrrr�rr>s �r2rz_ArgumentGroup._remove_action�s>��� �n�d�#�#�2�2�6�:�:�:� ��"�"�6�*�*�*�*�*r4c�n��tjdtd���t��j|i|��S)Nz&Nesting argument groups is deprecated.rD��category� stacklevel)�warnings�warn�DeprecationWarningrcr�r+rrr�res �r2rz!_ArgumentGroup.add_argument_group�sC���� � 4�'�� � � � � *�u�w�w�)�4�:�6�:�:�:r4�NN)r$r=r>r`rrrrirjs@r2rrrs��������O�O�O�O�O�O�,����� +�+�+�+�+�;�;�;�;�;�;�;�;�;r4rc�6��eZdZd�fd� Zd�Zd�Z�fd�Z�xZS)rFc�t��tt|���|��||_||_dSr6)rcrr`r�� _container)r+rr�res �r2r`z _MutuallyExclusiveGroup.__init__�s4��� �%�t�,�,�5�5�i�@�@�@� �� �#����r4c��|jrtd��}t|���|j�|��}|j�|��|S)Nz-mutually exclusive arguments must be optional)r�rxr�rKrr�r&)r+r�r�s r2rz#_MutuallyExclusiveGroup._add_action�sW�� �?� "��C�D�D�C��S�/�/� !���,�,�V�4�4�� ��"�"�6�*�*�*�� r4c�n�|j�|��|j�|��dSr6)rKrr�rr$s r2rz&_MutuallyExclusiveGroup._remove_action�s5�� ��&�&�v�.�.�.� ��"�"�6�*�*�*�*�*r4c�n��tjdtd���t��j|i|��S)Nz0Nesting mutually exclusive groups is deprecated.rDrA)rDrErFrcrrGs �r2rz4_MutuallyExclusiveGroup.add_mutually_exclusive_group�sC���� � >�'�� � � � � 4�u�w�w�3�T�D�V�D�D�Dr4)F)r$r=r>r`rrrrirjs@r2rr�s}�������$�$�$�$�$�$� ���+�+�+�E�E�E�E�E�E�E�E�Er4rc ����eZdZ ddddgedddddddf �fd� Zd�Zd�Zd�Zd �Zd �Z d#d �Z d#d �Z d �Z d�Z d�Zd�Zd�Zd�Zd�Zd�Zd#d�Zd#d�Zd�Zd�Zd�Zd�Zd�Zd�Zd$d�Zd$d�Zd$d�Zd%d!�Zd"�Z �xZ!S)&rNr�r�Tc ���tt|��j}|||| | ���|�/tj�t jd��}||_||_ ||_ ||_ ||_ | |_ | |_| |_|j}|t#d����|_|t#d����|_d|_d�}|�dd|��d|vrdn|d}|j r5|�|dz|d zd zd t.t#d ��� ��|D]I}|�|�� |j}|j�|���:#t6$rY�FwxYwdS) N)r�r�r�r�rzpositional arguments�optionsc��|Sr6r<)r�s r2�identityz)ArgumentParser.__init__..identity�s���Mr4r#r��hrDr�zshow this help message and exit)r�r�r�)rcrr`�_os�path�basenamer��argvr\r��epilog�formatter_class�fromfile_prefix_chars�add_help� allow_abbrev� exit_on_errorrrx� _positionals� _optionals� _subparsersr�r�rr$r�rr)r+r\r�r�rY�parentsrZr�r[r�r�r\r]r^� superinit� add_grouprS�default_prefixrl�defaultsres �r2r`zArgumentParser.__init__�s�����.�$�/�/�8� �� �k�+�#3�#3� 5� 5� 5� 5� �<��8�$�$�T�Y�q�\�2�2�D��� ��� ��� �.���%:��"� �� �(���*����+� �%�I�a�(>�&?�&?�@�@���#�)�A�i�L�L�1�1������ � � � � � �f�d�H�-�-�-�!$�|� 3� 3����a��� �=� ;� � � ��s�"�N�1�$4�V�$;��x��8�9�9� � ;� ;� ;� � 0� 0�F� � '� '�� /� /� /� 0�!�+����%�%�h�/�/�/�/��"� � � ��� ����  0� 0s�E<�< F �F c�(��gd�}�fd�|D��S)N)r\r�r�rZr�r\c�4��g|]}|t�|��f��Sr<rNrPs �r2rsz.ArgumentParser._get_kwargs..rQr4r<rRs` r2r(zArgumentParser._get_kwargss0��� � � ��?�>�>�>��>�>�>�>r4c ��|j�"|�td����|�dt |����d|vsd|vrbt|�dd����}t|�dd����}|�||��|_n |j|_|�d���u|� ��}|� ��}|j }|� |j ||d��|������|d<|�|d��}|d d gi|��}|j�|��|S) Nz(cannot have multiple subparser argumentsr�r r�� subcommandsr\rtr�r�r<)rar�rxr�r#r�rr_r�r��_get_positional_actionsr�r�r�r}r�r r) r+r�r r�rkr�r�� parsers_classr�s r2�add_subparserszArgumentParser.add_subparserss�� � � '� �J�J�q�C�D�D� E� E� E� ���.�$�t�*�*�5�5�5� �f� � � �� 7� 7��f�j�j��-�8�8�9�9�E��F�J�J�}�d�;�;�<�<�K�#�6�6�u�k�J�J�D� � �#�0�D� � �:�:�f� � � %��+�+�-�-�I��6�6�8�8�K��4�F� � � �� �K��� D� D� D�&�2�2�4�4�:�:�<�<�F�6�N��.�.�v�y�A�A� ���;�;�b�;�F�;�;�� ��$�$�V�,�,�,�� r4c�~�|jr|j�|��n|j�|��|Sr6)r�r`rr_r$s r2rzArgumentParser._add_action=sB�� � � 2� �O� '� '�� /� /� /� /� � � )� )�&� 1� 1� 1�� r4c�$�d�|jD��S)Nc� �g|] }|j� |�� Sr<rU�rpr�s r2rsz8ArgumentParser._get_optional_actions..Es0��*�*�*���(�*��*�*�*r4�r�r:s r2�_get_optional_actionsz$ArgumentParser._get_optional_actionsDs%��*�*�"�m�*�*�*� *r4c�$�d�|jD��S)Nc� �g|] }|j� |�� Sr<rUrqs r2rsz:ArgumentParser._get_positional_actions..Js0��.�.�.���,�.��.�.�.r4rrr:s r2rkz&ArgumentParser._get_positional_actionsIs%��.�.�"�m�.�.�.� .r4c��|�||��\}}|r:td��}|�|d�|��z��|S�Nzunrecognized arguments: %sr�)r�rxr�r*�r+rrrZrXr�s r2� parse_argszArgumentParser.parse_argsQsW���*�*�4��;�;� ��d� � -��0�1�1�C� �J�J�s�S�X�X�d�^�^�+� ,� ,� ,�� r4c��|�tjdd�}nt|��}|�t��}|jD]N}|jt ur>t||j��s)|jt urt||j|j���O|j D].}t||��st|||j |���/|j rT |� ||��\}}nR#t$r,}|�t|����Yd}~n!d}~wwxYw|� ||��\}}t|t ��r=|�t%|t ����t'|t ��||fSrb)r�rXr7r r�r'rrr�rgr�r^�_parse_known_argsrr�r�r�r�rO�delattr)r+rrrZr�r'�errs r2r�zArgumentParser.parse_known_argsXs��� �<��9�Q�R�R�=�D�D���:�:�D� � �!� � �I��m� H� H�F��{�(�*�*��y�&�+�6�6�H��~�X�5�5�� �6�;���G�G�G���N� ?� ?�D��9�d�+�+� ?�� �4����)=�>�>�>�� � � F� %�"&�"8�"8��y�"I�"I�� �4�4�� � %� %� %�� � �3�s�8�8�$�$�$�$�$�$�$�$����� %����#�4�4�T�9�E�E�O�I�t� �9�5� 6� 6� 8� �K�K�� �+B�C�C� D� D� D� �I�6� 7� 7� 7��$��s� C%�% D�/"D�Dc �n����������� �!��j�������i��jD]v}|j}t |j��D]X\}}��|g��}|�|d|���|�||dzd����Y�wi�g}t���} t | ��D]q\}} | dkr0|�d��| D]} |�d����;�� | ��} | �d} n| �|<d} |�| ���rd� |���t���t���d�����fd� �!������!fd�} �� ��������!fd �}g�d � �rt���}nd }� |krmt� fd ��D����}� |kr|� ��}|� kr|� �;|� � �vr!�� |�}��|��|� | � ��� � |k�m|� ��}���|d���g}�jD]�}|�vr�|jr#|�t#|�����0|j�zt'|jt(��r`t+�|j��rK|jt/�|j��ur/t1�|j��||j������|r8��t7d ��d� |��z���jD]d}|jr[|jD]}|�vrnL� d�|jD��}t7d��}��|d� |��z���e��fS)Nrcr`r��A�Ortc�h��� �|��� �||��}||jurc� �|����|g��D]7}|� vr1t d��}t |��}t |||z����8|tur|� �||��dSdS)Nznot allowed with argument %s)r�� _get_valuesr�r�rxr@rr) r��argument_stringsr��argument_values�conflict_actionr�� action_name�action_conflictsrZ� seen_actions�seen_non_default_actionsr+s �����r2� take_actionz5ArgumentParser._parse_known_args..take_action�s���� � � �V� $� $� $�"�.�.�v�7G�H�H�O� �f�n�4�4�(�,�,�V�4�4�4�'7�';�';�F�B�'G�'G�G�G�O�&�*B�B�B�� >�?�?��&6��&G�&G� �+�F�C�+�4E�F�F�F�C��h�.�.���t�Y���G�G�G�G�G�/�.r4c����|}|\}}}}�j}g} |� ���|��|dzS|��)||d��}�j} |dkr�|d| vr�|dkr�|s |d| vr"td��} t || |z���|�|g|f��|d} | |dz}�j} || vr5| |}|dd�}|sdx}}n�|ddkr d}|dd�}n�d}n���| |z��|dz} n�|dkr!|dz} |g}|�|||f��ngtd��} t || |z���|dz}�|d�}|||��}||z} �|| �}|�|||f��n���|D]\}}}�|||���| S)NTrcrrrtzignored explicit argument %rr)�_match_argumentr&r�rxrr�)� start_index� option_tupler�r��sep� explicit_arg�match_argument� action_tuples� arg_countrr��char� optionals_map�stoprrr��selected_patternsr-�arg_strings_pattern�extras�option_string_indicesr+r�s ������r2�consume_optionalz:ArgumentParser._parse_known_args..consume_optional�s����1��=�L�7C� 4�F�M�3� �"�1�N��M�B ��>��M�M�+�k�":�;�;�;�&��?�*� �+� .��v�s� ;� ;�I� !�-�E�!�Q���)�!�,�E�9�9�(�B�.�.��L�,�q�/�U�":�":�"#�$B�"C�"C�C�"/���l�8J�"K�"K�K�%�,�,�f�b�-�-H�I�I�I�,�Q�/��(,�|�A��(>� �(,�(C� �(�M�9�9�%2�=�%A�F�+7����+;�L�#/�)�59� 9��l�l�!-�a��C�!7�!7�&)��/;�A�B�B�/?� � �&(���"�M�M�$��*=�>�>�>�#.��?�D�!�#�a���*�Q��� ,�~��%�,�,�f�d�M�-J�K�K�K��  � >�?�?��+�F�C�,�4F�G�G�G� (�!�O�E�(;�E�F�F�(C�%� .��v�7H� I� I�I� �9�,�D�&�u�T�z�2�D�!�(�(�&�$� �)F�G�G�G��EB �N0=� 9� 9�+���m�� �F�D�-�8�8�8�8��Kr4c����� j}�|d�}|� |��}t� |��D]#\}}�|||z�}||z }� ||���$� t|��d�� dd�<|Sr6)�_match_arguments_partial�zipr�) r�� match_partial�selected_pattern� arg_countsr�r�rrr-r�r�r+r�s �����r2�consume_positionalsz=ArgumentParser._parse_known_args..consume_positionalss���� �9�M�2�;�<�<�@� �&��{�4D�E�E�J�&)��j�%A�%A� *� *�!�� �"�;� �i�0G�#G�H���y�(� �� �F�D�)�)�)�)�)��Z���)9�)9�:�K����N�� r4rr�c� ��g|] }|�k�|�� Sr<r<)rpr�r�s �r2rsz4ArgumentParser._parse_known_args..9s.���,)�,)�,)���K�'�'��'�'�'r4z(the following arguments are required: %sr!c�H�g|]}|jtu�t|���� Sr<)r�rr@rqs r2rsz4ArgumentParser._parse_known_args..xs7��=�=�=�!'� &� �8� ;� ;�.�f�5�5� ;� ;� ;r4z#one of the arguments %s is requiredr�r6)r[�_read_args_from_filesr�r�r�r�r��iterr&�_parse_optionalr*r�rkrNrMr�r�r@r�rr�rr'rOrg� _get_valuer�rx)"r+r-rZr#r�r�� mutex_action� conflicts�arg_string_pattern_parts�arg_strings_iter� arg_stringr��patternr�r��max_option_string_index�next_option_string_index�positionals_end_index�strings� stop_index�required_actionsr�r�rSr�r�r�r�r�r�r�r�r�r�s"``` @@@@@@@@@r2r{z ArgumentParser._parse_known_args~sU�������������� � %� 1��4�4�[�A�A�K����:� 8� 8�K�'�6�M�#,�[�-G�#H�#H� 8� 8���<�,�7�7� �b�I�I� �� � ��r��r�!2�3�3�3�� � ��q�1�u�v�v�!6�7�7�7�7� 8�!#��#%� �� �,�,��&�'7�8�8� 9� 9�M�A�z��T�!�!�(�/�/��4�4�4�"2�9�9�J�,�3�3�C�8�8�8�8�9� $�3�3�J�?�?� ��'�!�G�G�/;�)�!�,�!�G�(�/�/��8�8�8�8�!�g�g�&>�?�?���u�u� �#&�5�5� � H� H� H� H� H� H� H� H� H� H�*S �S �S �S �S �S �S �S �S �S �n�2�2�4�4� � � � � � � � � � �(��� � � )�&)�*?�&@�&@� #� #�&(� #��4�4�4�(+�,)�,)�,)�,)�2�,)�,)�,)�(*�(*� $��6�6�6�(;�(;�K�(H�(H�%�)�;�6�6�"7�K��"7�K��"7�7�7�%�k�2J�&J�K��� � �g�&�&�&�6� �+�*�;�7�7�K�5�4�4�4�:)�(��5�5� � � � �k�*�+�+�.�/�/�/����m� I� I�F��\�)�)��?� I�$�+�+�,<�V�,D�,D�E�E�E�E� ��2�"�6�>�3�7�7�3�� �6�;�7�7�3���'�)�V�[�*I�*I�I�I�� �6�;� $������ G� G�I�I�I�� � 4� �J�J�q�C�D�D��y�y�!1�2�2�3� 4� 4� 4��4� 6� 6�E��~� 6�#�2� 6� 6�F��!9�9�9���:� =�=�+0�+?�=�=�=�E��A�B�B�C��J�J�s�S�X�X�e�_�_�4�5�5�5���&� � r4c�<�g}|D�]}|r|d|jvr|�|���* t|dd���5}g}|������D]/}|�|��D]}|�|����0|�|��}|�|��ddd��n #1swxYwY��#t$r-}|� t|����Yd}~��d}~wwxYw|Sr�) r[r&r��readr0�convert_arg_line_to_argsr�r�r�r�r�)r+r-�new_arg_stringsr�� args_file�arg_liner/r}s r2r�z$ArgumentParser._read_args_from_files�s�����%� )� )�J�� )��A��d�6P�!P�!P��&�&�z�2�2�2�2� )��j����n�-�-�<��&(� �(1���(8�(8�(C�(C�(E�(E�8�8�H�'+�'D�'D�X�'N�'N�8�8�� +� 2� 2�3� 7� 7� 7� 7�8�&*�&@�&@��&M�&M� �'�.�.�{�;�;�;� <�<�<�<�<�<�<�<�<�<�<����<�<�<�<����)�)�)��J�J�s�3�x�x�(�(�(�(�(�(�(�(�����)�����s<�C"�BC� C"�C �C"�C �C"�" D�,"D�Dc��|gSr6r<)r+r�s r2r�z'ArgumentParser.convert_arg_line_to_args�s ���z�r4c��|�|��}tj||��}|��dtd��ttd��t td��i}|�|j��}|�tdd|j��|jz}t||���t|� d����S)Nzexpected one argumentzexpected at most one argumentzexpected at least one argumentzexpected %s argumentzexpected %s argumentsrc) �_get_nargs_patternrWrrxrrr�r�rrr�r�)r+r�r�� nargs_patternr� nargs_errorsr�s r2r�zArgumentParser._match_argument�s����/�/��7�7� �� �-�)<�=�=�� �=��a�/�0�0��!�;�<�<��Q�?�@�@��L� �"�"�6�<�0�0�C��{��5�6�%�|�-�-�/5�|�<�� ���,�,� ,��5�;�;�q�>�>�"�"�"r4c�8��g}tt|��dd��D]w}|d|�}d��fd�|D����}tj||��}|�3|�d�|���D����n�x|S)Nrr�rtc�:��g|]}��|����Sr<)r�)rpr�r+s �r2rsz;ArgumentParser._match_arguments_partial..�s7���<�<�<�#)� $�6�6�v�>�>�<�<�.�s��H�H�H�v�s�6�{�{�H�H�Hr4)r�r�r*rWrr�r�)r+r�r�rr�� actions_slicer�rs` r2r�z'ArgumentParser._match_arguments_partial�s�������s�7�|�|�Q��+�+� � �A�#�B�Q�B�K�M��g�g�<�<�<�<�-:�<�<�<�=�=�G��I�g�':�;�;�E�� �� � �H�H������H�H�H�I�I�I���!� � r4c�t�|sdS|d|jvrdS||jvr|j|}||ddfSt|��dkrdS|�d��\}}}|r||jvr|j|}||||fS|�|��}t|��dkrLd�d�|D����}||d�}t d��} |�| |z��nt|��dkr|\} | S|j� |��r |j sdSd|vrdSd|ddfS) Nrrcrr!c��g|] \}}}}|�� Sr<r<)rpr�r�r�r�s r2rsz2ArgumentParser._parse_optional..�s6��!O�!O�!O�<�F�M�3� �"/�!O�!O�!Or4)r(�matchesz4ambiguous option: %(option)s could match %(matches)sr�) r�r�r�� partition�_get_option_tuplesr*rxr�r�rr�) r+r�r�r�r�r�� option_tuplesrQrrr�r�s r2r�zArgumentParser._parse_optional�s���� ��4��!�}�� 1�1�1��4� ��4� 4� 4��0��<�F��:�t�T�1� 1� �z�?�?�a� � ��4�,6�+?�+?��+D�+D�(� �s�L� � <�=�D�$?�?�?��0��?�F��=�#�|�;� ;��/�/� �;�;� � �}� � �� !� !��i�i�!O�!O�@M�!O�!O�!O�P�P�G�(�W�=�=�D��J�K�K�C� �J�J�s�T�z� "� "� "� "��� � �1� $� $�)�M�L�� � � (� .� .�z� :� :� ��6� ��t� �*� � ��4��Z��t�+�+r4c��g}|j}|d|vrx|d|vrn|jrf|�d��\}}}|sdx}}|jD]?}|�|��r(|j|}||||f}|�|���@n�|d|vr�|d|vr�|}|dd�} |dd�} |jD]n}|| kr)|j|}||d| f}|�|���1|�|��r(|j|}||ddf}|�|���on%|�td��|z��|S)NrrcrrDrtzunexpected option string: %s)r�r]r�r�rbr&r�rx) r+r�rr� option_prefixr�r�r�r��short_option_prefix�short_explicit_args r2r�z!ArgumentParser._get_option_tuples�s������!�� �� �u� $� $��q�)9�U�)B�)B�� � +�3@�3J�3J�3�3O�3O�0� �s�L��.�)-�-�C�,�%)�%@�+�+�M�$�/�/� �>�>�+�!%�!<�]�!K��$�m�S�,�F��� � �c�*�*�*��� �1� �� &� &�=��+;�5�+H�+H�)�M�"/����"3� �!.�q�r�r�!2� �!%�!<� '� '� � �$7�7�7�!�8��G�F� �-��5G�G�C��M�M�#�&�&�&�&�"�-�-�m�<�<�'�!�8��G�F� �-��t�;�C��M�M�#�&�&�&�� '� �J�J�q�7�8�8�=�H� I� I� I�� r4c�b�|j}|�d}no|tkrd}na|tkrd}nS|tkrd}nE|tkrd}n7|t krd}n)|t krd}ndd �d |z��z}|jr,|� d d ��}|� d d ��}|S) Nz(-*A-*)z(-*A?-*)z (-*[A-]*)z (-*A[A-]*)z([-AO]*)z (-*A[-AO]*)z(-*-*)z(-*%s-*)z-*rrtr�) r�rrrrrrr*r�r*)r+r�r�r�s r2r�z!ArgumentParser._get_nargs_pattern& s���� �� �=�%�M�M��h� � �&�M�M��l� "� "�'�M�M��k� !� !�(�M�M��i� � �&�M�M��f�_�_�)�M�M��h� � �$�M�M�'����3��;�)?�)?�?�M� � � ;�)�1�1�$��;�;�M�)�1�1�#�r�:�:�M��r4c��|�||��\}}|r:td��}|�|d�|��z��|Srw)�parse_known_intermixed_argsrxr�r*rxs r2�parse_intermixed_argsz$ArgumentParser.parse_intermixed_argsW sW���5�5�d�I�F�F� ��d� � -��0�1�1�C� �J�J�s�S�X�X�d�^�^�+� ,� ,� ,�� r4c�� �|���� d�� D��}|rtd|djz���� fd�|jD��rtd��� |j} |j�!|���dd�|_� D]2}|j|_t|_|j|_ t|_�3|� ||��\}}� D]a}t||j ��rJt||j ��gkr1ddlm}|d|j �d |����t!||j ���b � D]}|j|_|j |_�n"#� D]}|j|_|j |_�wxYw|���} |D]}|j|_d |_�|jD]} | j| _d | _�|� ||��\}} |D]}|j|_�|jD]} | j| _�n,#|D]}|j|_�|jD]} | j| _�wxYw ||_n #||_wxYw|| fS) Nc�<�g|]}|jttfv�|��Sr<)r�rrrqs r2rsz>ArgumentParser.parse_known_intermixed_args..l s3�� 5� 5� 5��� ��� 3�3�3��3�3�3r4z3parse_intermixed_args: positional arg with nargs=%src�:��g|]}|jD] }|�v�|j���Sr<)r�r')rpr�r�r�s �r2rsz>ArgumentParser.parse_known_intermixed_args..r sI��� I� I� I�E��.� I� I��&�K�2G�2G� �K�2G�2G�2G�2Gr4z;parse_intermixed_args: positional in mutuallyExclusiveGroup�)rEzDo not expect z in F)rkr r�r�r�r�� save_nargsrr�� save_defaultr�rr'rOrDrEr|rsr�� save_required) r+rrrZ�a� save_usager��remaining_argsrEr�r�r�r�s @r2r�z*ArgumentParser.parse_known_intermixed_args^ sD����2�2�4�4� � 5� 5�+� 5� 5� 5�� � 9��-�-.�q�T�Z�8�9�9� 9� I� I� I� I�T�%D� I� I� I� 7��6�7�7� 7�. $���J� 9��:�%�!%�!2�!2�!4�!4�Q�R�R�!8�D�J�)�.�.�F�(.� �F�%�#+�F�L�*0�.�F�'�%-�F�N�N�,0�,A�,A�$�BK�-M�-M�)� �>�)�8�8�F�� �6�;�7�7�8� '� �6�;� ?� ?�� C� C�1�1�1�1�1�1��������i�i�P�Q�Q�Q�� �6�;�7�7�7�� 8�*�9�9�F�#)�#4�F�L�%+�%8�F�N�N�9��k�9�9�F�#)�#4�F�L�%+�%8�F�N�N�9�����2�2�4�4�I� 9�(�,�,�F�+1�?�F�(�&+�F�O�O�!�<�+�+�E�*/�.�E�'�%*�E�N�N�$(�$9�$9�.�:C�%E�%E�!� �6�(�;�;�F�&,�&:�F�O�O�!�<�9�9�E�%*�%8�E�N�N�9��(�;�;�F�&,�&:�F�O�O�!�<�9�9�E�%*�%8�E�N�N�9����9�$�D�J�J���D�J� #� #� #� #��&� � s>�$I�,CE%�I�%F�I�AH�*(I�)H;�;I� Ic������js<�jttfvr' |�d��n#t $rYnwxYw|si�jt krY�jr�j}n�j}t|t��r,�� �|��}�� �|���n3|s?�jtkr/�js(�j��j}n|}�� �|��n�t|��dkrA�jdt fvr1|\}�� �|��}�� �|��n��jtkr��fd�|D��}n~�jtkr,��fd�|D��}�� �|d��nB�jtkrt}n*��fd�|D��}|D]}�� �|���|S)Nr`rcc�<��g|]}���|����Sr<�r��rp�vr�r+s ��r2rsz.ArgumentParser._get_values..� �'���E�E�E�A�T�_�_�V�Q�/�/�E�E�Er4c�<��g|]}���|����Sr<r�r�s ��r2rsz.ArgumentParser._get_values..� r�r4rc�<��g|]}���|����Sr<r�r�s ��r2rsz.ArgumentParser._get_values..� r�r4)r�r�rrrr�rrKr�rr�r�� _check_valuerr�r)r+r�r-r1r�r�s`` r2r�zArgumentParser._get_values� sK�����$� ���f�i�=P�)P�)P� ��"�"�4�(�(�(�(��� � � ��� �����* -�v�|�x�7�7��$� '�� �������%��%�%� 1������6�6���!�!�&�%�0�0�0��� -�&�,�,�">�">��'�#?��~�)�����#�� � � �f�e� ,� ,� ,� ,��� � �� "� "�v�|��h�7G�'G�'G�%�K�J��O�O�F�J�7�7�E� � � �f�e� ,� ,� ,� ,��\�Y� &� &�E�E�E�E�E��E�E�E�E�E��\�V� #� #�E�E�E�E�E��E�E�E�E� � � �f�e�A�h� /� /� /� /��\�X� %� %��E�E�F�E�E�E�E��E�E�E�E�� -� -���!�!�&�!�,�,�,�,�� s�6� A�Ac�4�|�d|j|j��}t|��s"td��}t |||z��� ||��}n�#t $rL}t |jdt|j����}t|��}t ||���d}~wttf$rPt |jdt|j����}||d�}td��}t |||z���wxYw|S)Nr#z%r is not callabler$)r#r1z!invalid %(type)s value: %(value)r) rr#r rxrrrOr'r�r r�) r+r�r�rr�rr}r0rrs r2r�zArgumentParser._get_value� s*���&�&�v�v�{�F�K�H�H� �� �"�"� 9��(�)�)�C����i��8�8� 8� 4��Y�z�*�*�F�F��!� -� -� -��6�;� �D���4E�4E�F�F�D��c�(�(�C����,�,� ,������:�&� 4� 4� 4��6�;� �D���4E�4E�F�F�D� �:�6�6�D��7�8�8�C����d� �3�3� 3�  4����� s� A � D�*AB1�1A$Dc���|j�[||jvrT|d�tt|j����d�}t d��}t |||z���dSdS)Nr!)r1rz3invalid choice: %(value)r (choose from %(choices)s))rr*r�r'rxr)r+r�r1rrr�s r2r�zArgumentParser._check_value� sr�� �>� %�%�v�~�*E�*E�"�#�y�y��T�6�>�)B�)B�C�C�E�E�D��I�J�J�C����d� �3�3� 3� &� %�*E�*Er4c��|���}|�|j|j|j��|���Sr6)r�r�r�r�r�r})r+rks r2r�zArgumentParser.format_usage sK���'�'�)�)� ����D�J�� � �;� =� =� =��$�$�&�&�&r4c���|���}|�|j|j|j��|�|j��|jD]d}|�|j ��|�|j��|� |j ��|� ���e|�|j ��|���Sr6)r�r�r�r�r�r�r�r�r�r r�r�r�rYr})r+rk� action_groups r2r}zArgumentParser.format_help s����'�'�)�)� � ���D�J�� � �;� =� =� =� ���4�+�,�,�,�!�/� $� $�L� � #� #�L�$6� 7� 7� 7� � � �|�7� 8� 8� 8� � #� #�L�$?� @� @� @� � !� !� #� #� #� #� ���4�;�'�'�'��$�$�&�&�&r4c�8�|�|j���S)Nr�)rZr\r:s r2r�zArgumentParser._get_formatter% s���#�#���#�3�3�3r4c�r�|� tj}|�|���|��dSr6)r�r�r�r��r+�files r2� print_usagezArgumentParser.print_usage+ s6�� �<��;�D� ���D�-�-�/�/��6�6�6�6�6r4c�r�|� tj}|�|���|��dSr6)r�r�r�r}r�s r2r�zArgumentParser.print_help0 s6�� �<��;�D� ���D�,�,�.�.��5�5�5�5�5r4c��|r>|p tj} |�|��dS#ttf$rYdSwxYwdSr6)r��stderr�writerr�)r+rDr�s r2r�zArgumentParser._print_message5 sd�� � ��&�4�;�D� �� � �7�#�#�#�#�#��"�G�,� � � ���� ����  � s �)�>�>rc�r�|r |�|tj��tj|��dSr6)r�r�r�r�)r+�statusrDs r2r�zArgumentParser.exit@ s8�� � 6� � � ���� 5� 5� 5� � �&�����r4c�� |�tj��|j|d�}|�dt d��|z��dS)N)r\rDrDz%(prog)s: error: %(message)s )r�r�r�r\r�rx)r+rDrrs r2r�zArgumentParser.errorE sV�� � �����%�%�%�� �g�6�6�� � � �!�Q�7�8�8�4�?�@�@�@�@�@r4rHr6)rN)"r$r=r>rr`r(rmrrsrkryr�r{r�r�r�r�r�r�r�r�r�r�r�r�r�r}r�r�r�r�r�r�rirjs@r2rr�sM��������,��!���!.�!�'+�"&�")��"�#�=0�=0�=0�=0�=0�=0�D ?� ?� ?����>���*�*�*� .�.�.�����$�$�$�$�LA!�A!�A!�F���2���#�#�#�,��� 7,�7,�7,�r(�(�(�T+�+�+�b����H!�H!�H!�H!�Z6�6�6�p���44�4�4�'�'�'� '�'�'�.4�4�4� 7�7�7�7� 6�6�6�6� �������� A� A� A� A� A� A� Ar4r)2� __version__�__all__�osrU�rerW�sysr�rDrrxrrrrrrrr�r*rrBrr r rr r@� Exceptionrrr rrlrsryrr�r�r�r�r�r�r�rr r�rrrr<r4r2�r�s���;�z� � � � ��,����������������*�*�*�*�*�*�*�*� �� ��� �� � �� � �.�� �����v����> � � �"G�G�G�G�G�F�G�G�G�TQ�Q�Q�Q�Q�-�Q�Q�Q�!�!�!�!�!�6�!�!�!������M����: $� $� $� $� $�}� $� $� $�& � � �?�?�?�?�?�I�?�?�?�( � � � � � � � � �\@�\@�\@�\@�\@� �\@�\@�\@�~$/�$/�$/�$/�$/�F�$/�$/�$/�N .� .� .� .� .�6� .� .� .�F2�2�2�2�2��2�2�2�.�����(����"�����)����"#-�#-�#-�#-�#-�F�#-�#-�#-�L-�-�-�-�-��-�-�-�61�1�1�1�1�6�1�1�1�.�����&����&�����V����8bL�bL�bL�bL�bL��bL�bL�bL�H-�-�-�-�-�M�-�-�-�1:�1:�1:�1:�1:�v�1:�1:�1:�n$�$�$�$�$� �$�$�$�(s8�s8�s8�s8�s8��s8�s8�s8�l ';�';�';�';�';�&�';�';�';�TE�E�E�E�E�n�E�E�E�8XA�XA�XA�XA�XA�%�'8�XA�XA�XA�XA�XAr4