Edit File: argparse.cpython-37.opt-2.pyc
B ����0��c�t�����������������@���s��d�Z�ddddddddd d ddd ddddgZddlZddlZddlZddlmZ m Z �dZdZdZ dZdZdZdZG�dd��de�Zdd��ZG�d d��de�ZG�d!d��de�ZG�d"d��de�ZG�d#d��de�ZG�d$d ��d e�Zd%d&��ZG�d'd��de�ZG�d(d��de�ZG�d)d��de�ZG�d*d+��d+e�ZG�d,d-��d-e�Z G�d.d/��d/e �Z!G�d0d1��d1e �Z"G�d2d3��d3e�Z#G�d4d5��d5e�Z$G�d6d7��d7e�Z%G�d8d9��d9e�Z&G�d:d;��d;e�Z'G�d<d=��d=e�Z(G�d>d��de�Z)G�d?d ��d e�Z*G�d@dA��dAe�Z+G�dBdC��dCe+�Z,G�dDdE��dEe,�Z-G�dFd��dee+�Z.dS�)Gz1.1�ArgumentParser� ArgumentError�ArgumentTypeError�FileType� HelpFormatter�ArgumentDefaultsHelpFormatter�RawDescriptionHelpFormatter�RawTextHelpFormatter�MetavarTypeHelpFormatter� Namespace�Action�ONE_OR_MORE�OPTIONAL�PARSER� REMAINDER�SUPPRESS�ZERO_OR_MORE�����N)�gettext�ngettextz==SUPPRESS==�?�*�+zA...z...�_unrecognized_argsc���������������@���s$���e�Zd�Zdd��Zdd��Zdd��ZdS�)�_AttributeHolderc�������������C���s����t�|��j}g�}i�}x|����D�]}|�t|���qW�x8|����D�],\}}|���r`|�d||f���q<|||<�q<W�|r�|�dt|����d|d�|�f�S�)Nz%s=%rz**%sz%s(%s)z, )�type�__name__� _get_args�append�repr�_get_kwargs�isidentifier�join)�self� type_name�arg_strings� star_args�arg�name�value��r)����-/opt/alt/python37/lib64/python3.7/argparse.py�__repr__r���s���� z_AttributeHolder.__repr__c�������������C���s���t�|�j����S�)N)�sorted�__dict__�items)r"���r)���r)���r*���r�������s����z_AttributeHolder._get_kwargsc�������������C���s���g�S�)Nr)���)r"���r)���r)���r*���r�������s����z_AttributeHolder._get_argsN)r���� __module__�__qualname__r+���r���r���r)���r)���r)���r*���r���i���s��� r���c�������������C���s6���|�d�krg�S�t�|��tkr$|�d�d���S�dd�l}|�|��S�)Nr���)r����list�copy)r.���r2���r)���r)���r*����_copy_items����s����r3���c���������������@���s����e�Zd�Zd:dd�Zdd��Zdd ��ZG�d d��de�Zdd ��Zdd��Z dd��Z dd��Zd;dd�Zdd��Z dd��Zdd��Zdd��Zdd��Zd d!��Zd"d#��Zd$d%��Zd&d'��Zd(d)��Zd*d+��Zd,d-��Zd.d/��Zd0d1��Zd2d3��Zd4d5��Zd6d7��Zd8d9��ZdS�)<r�����������Nc���������� ���C���s����|d�kr@yt�tjd��}W�n�ttfk r6���d}Y�nX�|d8�}||�_||�_||�_t|t |d�|d���|�_||�_ d|�_d|�_d|�_ |��|�d��|�_|�j|�_t�dtj�|�_t�d�|�_d�S�)N�COLUMNS�P���r4�������r���z\s+z\n\n\n+)�int�_os�environ�KeyError� ValueError�_prog�_indent_increment�_max_help_position�min�max�_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�widthr)���r)���r*����__init__����s&���� zHelpFormatter.__init__c�������������C���s"���|��j�|�j7��_�|��jd7��_d�S�)N����)rD���r?���rE���)r"���r)���r)���r*����_indent����s����zHelpFormatter._indentc�������������C���s"���|��j�|�j8��_�|��jd8��_d�S�)NrT���)rD���r?���rE���)r"���r)���r)���r*����_dedent����s����zHelpFormatter._dedentc���������������@���s���e�Zd�Zddd�Zdd��ZdS�)zHelpFormatter._SectionNc�������������C���s���||�_�||�_||�_g�|�_d�S�)N)� formatter�parent�headingr.���)r"���rW���rX���rY���r)���r)���r*���rS�������s����zHelpFormatter._Section.__init__c�������������C���s����|�j�d�k r|�j����|�jj}|dd��|�jD���}|�j�d�k rD|�j����|sLdS�|�jtk rz|�jd�k rz|�jj}d|d|�jf�}nd}|d||dg�S�)Nc�������������S���s���g�|�]\}}||���qS�r)���r)���)�.0�func�argsr)���r)���r*���� <listcomp>����s����z6HelpFormatter._Section.format_help.<locals>.<listcomp>��z%*s%s: � ) rX���rW���rU����_join_partsr.���rV���rY���r���rD���)r"���r!���� item_help�current_indentrY���r)���r)���r*����format_help����s���� z"HelpFormatter._Section.format_help)N)r���r/���r0���rS���rc���r)���r)���r)���r*���rG�������s��� rG���c�������������C���s���|�j�j�||f��d�S�)N)rI���r.���r���)r"���r[���r\���r)���r)���r*���� _add_item����s����zHelpFormatter._add_itemc�������������C���s0���|������|��|�|�j|�}|��|jg���||�_d�S�)N)rU���rG���rI���rd���rc���)r"���rY����sectionr)���r)���r*���� start_section����s����zHelpFormatter.start_sectionc�������������C���s���|�j�j|�_�|�����d�S�)N)rI���rX���rV���)r"���r)���r)���r*����end_section����s���� zHelpFormatter.end_sectionc�������������C���s$���|t�k r |d�k r |��|�j|g��d�S�)N)r���rd����_format_text)r"����textr)���r)���r*����add_text����s����zHelpFormatter.add_textc�������������C���s&���|t�k r"||||f}|��|�j|��d�S�)N)r���rd���� _format_usage)r"����usage�actions�groups�prefixr\���r)���r)���r*���� add_usage����s����zHelpFormatter.add_usagec�������������C���sz���|j�tk rv|�j}||�g}x |��|�D�]}|�||���q&W�tdd��|D���}||�j�}t|�j|�|�_|��|�j |g��d�S�)Nc�������������S���s���g�|�]}t�|��qS�r)���)�len)rZ����sr)���r)���r*���r]�����s����z.HelpFormatter.add_argument.<locals>.<listcomp>) �helpr����_format_action_invocation�_iter_indented_subactionsr���rB���rD���rF���rd����_format_action)r"����action�get_invocation�invocations� subaction�invocation_length� action_lengthr)���r)���r*����add_argument��s���� zHelpFormatter.add_argumentc�������������C���s���x|D�]}|���|��qW�d�S�)N)r}���)r"���rm���rw���r)���r)���r*���� add_arguments��s���� zHelpFormatter.add_argumentsc�������������C���s.���|�j����}|r*|�j�d|�}|�d�d�}|S�)Nz r_���)rH���rc���rN����sub�strip)r"���rs���r)���r)���r*���rc�����s ���� zHelpFormatter.format_helpc�������������C���s���d��dd��|D���S�)Nr^���c�������������S���s���g�|�]}|r|t�k r|�qS�r)���)r���)rZ����partr)���r)���r*���r]���#��s���z-HelpFormatter._join_parts.<locals>.<listcomp>)r!���)r"����part_stringsr)���r)���r*���r`���"��s���� zHelpFormatter._join_partsc����������������s��|d�krt�d�}|d�k r,|t|�jd��}�n�|d�krL|sLdt|�jd��}�n�|d�k�rdt|�jd��}g�}g�}x(|D�] }|jr�|�|��qt|�|��qtW�|�j} | ||�|�} d�dd��|| gD���}|�j|�j���t |�t |����k�rd}| ||�}| ||�} t �||�}t �|| �}d��fdd � }t |�t |��d ���k�r�dt |�t |��d��}|�r�||g|�||�}|�|||���n |�r�||g|�||�}n|g}nZdt |��}||�}|||�}t |�dk�r�g�}|�|||���|�|||���|g|�}d�|�}d ||f�S�)Nzusage: )rO���z%(prog)s� c�������������S���s���g�|�]}|r|�qS�r)���r)���)rZ���rr���r)���r)���r*���r]���C��s����z/HelpFormatter._format_usage.<locals>.<listcomp>z%\(.*?\)+(?=\s|$)|\[.*?\]+(?=\s|$)|\S+c����������������s����g�}g�}|d�k rt�|�d�}nt�|�d�}xb|�D�]Z}|d�t�|����krp|rp|�|d�|����g�}t�|�d�}|�|��|t�|�d�7�}q0W�|r�|�|d�|����|d�k r�|d�t�|�d���|d<�|S�)NrT���r����r���)rq���r���r!���)�parts�indentro����lines�line�line_lenr����)� text_widthr)���r*���� get_linesW��s"���� z.HelpFormatter._format_usage.<locals>.get_linesg�������?rT���r_���z%s%s )N) �_�dictr>����option_stringsr����_format_actions_usager!���rC���rD���rq���rJ����findall�extend)r"���rl���rm���rn���ro���rO���� optionals�positionalsrw����format�action_usage�part_regexp� opt_usage� pos_usage� opt_parts� pos_partsr����r����r����r����r)���)r����r*���rk���'��sV���� zHelpFormatter._format_usagec���������� ���C���s��t���}i�}�x(|D��]}y|�|jd��}W�n�tk rB���wY�qX�|t|j��}|||��|jkrx|jD�]}|�|��qlW�|js�||kr�||��d7��<�nd||<�||kr�||��d7��<�nd||<�nF||kr�||��d7��<�nd||<�||k�r||��d7��<�nd||<�x t|d�|�D�]} d || <��q W�qW�g�} �x0t|�D��]"\} }|j t k�r�| �d���|�| �d k�r�|� | ��n"|�| d��d k�rh|� | d���n�|j�s|��|�}|��||�}||k�r�|d�dk�r�|d �dk�r�|dd ��}| �|��nf|jd�} |jdk�r"d| �}n"|��|�}|��||�}d| |f�}|j�s^||k�r^d |�}| �|���qFW�x(t|dd�D�]} || �g| | | �<��q|W�d�dd��| D���}d}d}t�d|�d|�}t�d|�d|�}t�d||f�d|�}t�dd|�}|���}|S�)Nr���z [�[�]z (�(�)rT����|���z%sz%s %sz[%s]T)�reverser����c�������������S���s���g�|�]}|d�k r|�qS�)Nr)���)rZ����itemr)���r)���r*���r]������s����z7HelpFormatter._format_actions_usage.<locals>.<listcomp>z[\[(]z[\])]z(%s) z\1z (%s)z%s *%sr^���z\(([^|]*)\))�set�index�_group_actionsr=���rq����add�required�range� enumeraters���r���r����get�popr�����#_get_default_metavar_for_positional�_format_args�nargs�!_get_default_metavar_for_optionalr,���r!���rJ���r���r����)r"���rm���rn���� group_actions�inserts�group�start�endrw����ir�����defaultr����� option_string�args_stringri����open�closer)���r)���r*���r�������sz���� z#HelpFormatter._format_actions_usagec�������������C���sF���d|kr|t�|�jd��}t|�j|�j�d�}d|�j�}|��|||�d�S�)Nz%(prog))rO�������r����z )r����r>���rB���rC���rD���� _fill_text)r"���ri���r����r����r)���r)���r*���rh������s ���� zHelpFormatter._format_textc������� ������C���sB��t�|�jd�|�j�}t|�j|�d�}||�j�d�}|��|�}|jsV|�jd|f}d|�}n@t|�|kr~|�jd||f}d|�}d}n|�jd|f}d|�}|}|g}|jr�|�� |�} |�� | |�} |�d|d| d�f���x@| dd���D�]}|�d|d|f���q�W�n|�d��s|�d��x$|�� |�D�]}|�|��|����qW�|��|�S�) Nr4���r����r^���z%*s%s z %*s%-*s r���rT���r_���)rA���rF���r@���rB���rC���rD���rt���rs���rq����_expand_help�_split_linesr����endswithru���rv���r`���) r"���rw���� help_position� help_width�action_width� action_header�tup�indent_firstr����� help_text� help_linesr����rz���r)���r)���r*���rv������s6���� zHelpFormatter._format_actionc�������������C���s����|j�s&|��|�}|��||�d�\}|S�g�}|jdkrB|�|j���n8|��|�}|��||�}x |j�D�]}|�d||f���q`W�d�|�S�d�S�)NrT���r���z%s %sz, ) r����r�����_metavar_formatterr����r����r����r����r���r!���)r"���rw���r�����metavarr����r����r����r)���r)���r*���rt���$��s���� z'HelpFormatter._format_action_invocationc����������������sP���|j�d�k r|j���n.|jd�k r<dd��|jD��}dd�|����n|����fdd�}|S�)Nc�������������S���s���g�|�]}t�|��qS�r)���)�str)rZ����choicer)���r)���r*���r]���@��s����z4HelpFormatter._metavar_formatter.<locals>.<listcomp>z{%s}�,c����������������s���t���t�r��S���f|��S�d�S�)N)� isinstance�tuple)� tuple_size)�resultr)���r*���r����E��s���� z0HelpFormatter._metavar_formatter.<locals>.format)r�����choicesr!���)r"���rw����default_metavar�choice_strsr����r)���)r����r*���r����<��s���� z HelpFormatter._metavar_formatterc�������������C���s����|���||�}|jd�kr$d|d��}n�|jtkr<d|d��}n�|jtkrTd|d��}nx|jtkrld|d��}n`|jtkr|d}nP|jtkr�d|d��}n8|jtkr�d }n(d d��t|j�D��}d� |�||j��}|S�) Nz%srT���z[%s]z [%s [%s ...]]r4���z%s [%s ...]z...z%s ...r^���c�������������S���s���g�|�]}d��qS�)z%sr)���)rZ���r����r)���r)���r*���r]���]��s����z.HelpFormatter._format_args.<locals>.<listcomp>r����) r����r����r ���r���r���r���r���r���r����r!���)r"���rw���r�����get_metavarr�����formatsr)���r)���r*���r����L��s$���� zHelpFormatter._format_argsc�������������C���s����t�t|�|�jd�}x"t|�D�]}||�tkr||=�qW�x,t|�D�] }t||�d�r@||�j||<�q@W�|�d�d�k r�d�dd��|d�D���}||d<�|�� |�|�S�)N)rO���r���r����z, c�������������S���s���g�|�]}t�|��qS�r)���)r����)rZ����cr)���r)���r*���r]���j��s����z.HelpFormatter._expand_help.<locals>.<listcomp>) r�����varsr>���r1���r����hasattrr���r����r!����_get_help_string)r"���rw����paramsr'����choices_strr)���r)���r*���r����a��s���� zHelpFormatter._expand_helpc�������������c���s@���y |j�}W�n�tk r���Y�nX�|�����|��E�d�H��|�����d�S�)N)�_get_subactions�AttributeErrorrU���rV���)r"���rw����get_subactionsr)���r)���r*���ru���n��s���� z'HelpFormatter._iter_indented_subactionsc�������������C���s&���|�j��d|����}dd�l}|�||�S�)Nr����r���)rM���r���r�����textwrap�wrap)r"���ri���rR���r����r)���r)���r*���r����x��s����zHelpFormatter._split_linesc�������������C���s,���|�j��d|����}dd�l}|j||||d�S�)Nr����r���)�initial_indent�subsequent_indent)rM���r���r����r�����fill)r"���ri���rR���r����r����r)���r)���r*���r������s ����zHelpFormatter._fill_textc�������������C���s���|j�S�)N)rs���)r"���rw���r)���r)���r*���r�������s����zHelpFormatter._get_help_stringc�������������C���s ���|j����S�)N)�dest�upper)r"���rw���r)���r)���r*���r�������s����z/HelpFormatter._get_default_metavar_for_optionalc�������������C���s���|j�S�)N)r����)r"���rw���r)���r)���r*���r�������s����z1HelpFormatter._get_default_metavar_for_positional)r4���r5���N)N)r���r/���r0���rS���rU���rV����objectrG���rd���rf���rg���rj���rp���r}���r~���rc���r`���rk���r����rh���rv���rt���r����r����r����ru���r����r����r����r����r����r)���r)���r)���r*���r�������s:��� �� `g/ c���������������@���s���e�Zd�Zdd��ZdS�)r���c����������������s ���d����fdd�|jdd�D���S�)Nr^���c�������������3���s���|�]}��|�V��qd�S�)Nr)���)rZ���r����)r����r)���r*���� <genexpr>���s����z9RawDescriptionHelpFormatter._fill_text.<locals>.<genexpr>T)�keepends)r!���� splitlines)r"���ri���rR���r����r)���)r����r*���r�������s����z&RawDescriptionHelpFormatter._fill_textN)r���r/���r0���r����r)���r)���r)���r*���r������s���c���������������@���s���e�Zd�Zdd��ZdS�)r���c�������������C���s���|����S�)N)r����)r"���ri���rR���r)���r)���r*���r�������s����z!RawTextHelpFormatter._split_linesN)r���r/���r0���r����r)���r)���r)���r*���r������s���c���������������@���s���e�Zd�Zdd��ZdS�)r���c�������������C���s>���|j�}d|j�kr:|jtk r:ttg}|js2|j|kr:|d7�}|S�)Nz %(default)z (default: %(default)s))rs���r����r���r ���r���r����r����)r"���rw���rs����defaulting_nargsr)���r)���r*���r�������s���� z.ArgumentDefaultsHelpFormatter._get_help_stringN)r���r/���r0���r����r)���r)���r)���r*���r������s���c���������������@���s���e�Zd�Zdd��Zdd��ZdS�)r ���c�������������C���s���|j�jS�)N)r���r���)r"���rw���r)���r)���r*���r�������s����z:MetavarTypeHelpFormatter._get_default_metavar_for_optionalc�������������C���s���|j�jS�)N)r���r���)r"���rw���r)���r)���r*���r�������s����z<MetavarTypeHelpFormatter._get_default_metavar_for_positionalN)r���r/���r0���r����r����r)���r)���r)���r*���r ������s���c�������������C���sN���|�d�krd�S�|�j�rd�|�j��S�|�jd�tfkr2|�jS�|�jd�tfkrF|�jS�d�S�d�S�)N�/)r����r!���r����r���r����)�argumentr)���r)���r*����_get_action_name���s����r����c���������������@���s���e�Zd�Zdd��Zdd��ZdS�)r���c�������������C���s���t�|�|�_||�_d�S�)N)r����� argument_name�message)r"���r����r����r)���r)���r*���rS������s���� zArgumentError.__init__c�������������C���s(���|�j�d�krd}nd}|t|�j|�j�d��S�)Nz%(message)sz'argument %(argument_name)s: %(message)s)r����r����)r����r����r����)r"���r����r)���r)���r*����__str__���s ���� zArgumentError.__str__N)r���r/���r0���rS���r����r)���r)���r)���r*���r������s���c���������������@���s���e�Zd�ZdS�)r���N)r���r/���r0���r)���r)���r)���r*���r������s���c���������������@���s(���e�Zd�Zd dd�Zdd��Zd dd�ZdS�)r���NFc�������������C���s@���||�_�||�_||�_||�_||�_||�_||�_||�_| |�_| |�_ d�S�)N) r����r����r�����constr����r���r����r����rs���r����)r"���r����r����r����r����r����r���r����r����rs���r����r)���r)���r*���rS���(��s����zAction.__init__c���������� ������s(���ddddddddd g }��fd d�|D��S�)Nr����r����r����r����r����r���r����rs���r����c����������������s���g�|�]}|t���|�f�qS�r)���)�getattr)rZ���r'���)r"���r)���r*���r]���J��s����z&Action._get_kwargs.<locals>.<listcomp>r)���)r"����namesr)���)r"���r*���r���>��s����zAction._get_kwargsc�������������C���s���t�td���d�S�)Nz.__call__() not defined)�NotImplementedErrorr����)r"����parser� namespace�valuesr����r)���r)���r*����__call__L��s����zAction.__call__)NNNNNFNN)N)r���r/���r0���rS���r���r����r)���r)���r)���r*���r������s���6������� c�������������������s(���e�Zd�Zd��fdd� Zddd�Z���ZS�) �_StoreActionNFc����������������sT���|dkrt�d��|d�k r,|tkr,t�dt���tt|��j||||||||| | d� �d�S�)Nr���z�nargs for store actions must be > 0; if you have nothing to store, actions such as store true or store const may be more appropriatez nargs must be %r to supply const) r����r����r����r����r����r���r����r����rs���r����)r=���r ����superr����rS���)r"���r����r����r����r����r����r���r����r����rs���r����)� __class__r)���r*���rS���R��s���� z_StoreAction.__init__c�������������C���s���t�||�j|��d�S�)N)�setattrr����)r"���r����r����r����r����r)���r)���r*���r����o��s����z_StoreAction.__call__)NNNNNFNN)N)r���r/���r0���rS���r����� __classcell__r)���r)���)r����r*���r����P��s����������r����c�������������������s(���e�Zd�Zd��fdd� Zddd�Z���ZS�) �_StoreConstActionNFc���������� ������s"���t�t|��j||d||||d��d�S�)Nr���)r����r����r����r����r����r����rs���)r����r����rS���)r"���r����r����r����r����r����rs���r����)r����r)���r*���rS���u��s���� z_StoreConstAction.__init__c�������������C���s���t�||�j|�j��d�S�)N)r����r����r����)r"���r����r����r����r����r)���r)���r*���r�������s����z_StoreConstAction.__call__)NFNN)N)r���r/���r0���rS���r����r����r)���r)���)r����r*���r����s��s ������ r����c�������������������s���e�Zd�Zd��fdd� Z���ZS�)�_StoreTrueActionFNc����������������s ���t�t|��j||d|||d��d�S�)NT)r����r����r����r����r����rs���)r����r����rS���)r"���r����r����r����r����rs���)r����r)���r*���rS������s���� z_StoreTrueAction.__init__)FFN)r���r/���r0���rS���r����r)���r)���)r����r*���r�������s�����r����c�������������������s���e�Zd�Zd��fdd� Z���ZS�)�_StoreFalseActionTFNc����������������s ���t�t|��j||d|||d��d�S�)NF)r����r����r����r����r����rs���)r����r����rS���)r"���r����r����r����r����rs���)r����r)���r*���rS������s���� z_StoreFalseAction.__init__)TFN)r���r/���r0���rS���r����r)���r)���)r����r*���r�������s�����r����c�������������������s(���e�Zd�Zd��fdd� Zddd�Z���ZS�) � _AppendActionNFc����������������sT���|dkrt�d��|d�k r,|tkr,t�dt���tt|��j||||||||| | d� �d�S�)Nr���z�nargs for append actions must be > 0; if arg strings are not supplying the value to append, the append const action may be more appropriatez nargs must be %r to supply const) r����r����r����r����r����r���r����r����rs���r����)r=���r ���r����r���rS���)r"���r����r����r����r����r����r���r����r����rs���r����)r����r)���r*���rS������s���� z_AppendAction.__init__c�������������C���s2���t�||�jd��}t|�}|�|��t||�j|��d�S�)N)r����r����r3���r���r����)r"���r����r����r����r����r.���r)���r)���r*���r�������s���� z_AppendAction.__call__)NNNNNFNN)N)r���r/���r0���rS���r����r����r)���r)���)r����r*���r������s����������r���c�������������������s(���e�Zd�Zd��fdd� Zddd�Z���ZS�) �_AppendConstActionNFc���������� ������s$���t�t|��j||d|||||d��d�S�)Nr���)r����r����r����r����r����r����rs���r����)r����r��rS���)r"���r����r����r����r����r����rs���r����)r����r)���r*���rS������s���� z_AppendConstAction.__init__c�������������C���s4���t�||�jd��}t|�}|�|�j��t||�j|��d�S�)N)r����r����r3���r���r����r����)r"���r����r����r����r����r.���r)���r)���r*���r�������s����z_AppendConstAction.__call__)NFNN)N)r���r/���r0���rS���r����r����r)���r)���)r����r*���r�����s ������r��c�������������������s(���e�Zd�Zd��fdd� Zddd�Z���ZS�) �_CountActionNFc����������������s ���t�t|��j||d|||d��d�S�)Nr���)r����r����r����r����r����rs���)r����r��rS���)r"���r����r����r����r����rs���)r����r)���r*���rS������s���� z_CountAction.__init__c�������������C���s0���t�||�jd��}|d�krd}t||�j|d���d�S�)Nr���rT���)r����r����r����)r"���r����r����r����r�����countr)���r)���r*���r�������s����z_CountAction.__call__)NFN)N)r���r/���r0���rS���r����r����r)���r)���)r����r*���r�����s����� r��c�������������������s.���e�Zd�Zeedf��fdd� Zddd�Z���ZS�)�_HelpActionNc����������������s���t�t|��j|||d|d��d�S�)Nr���)r����r����r����r����rs���)r����r��rS���)r"���r����r����r����rs���)r����r)���r*���rS�����s���� z_HelpAction.__init__c�������������C���s���|�����|����d�S�)N)� print_help�exit)r"���r����r����r����r����r)���r)���r*���r������s����z_HelpAction.__call__)N)r���r/���r0���r���rS���r����r����r)���r)���)r����r*���r����s���r��c�������������������s0���e�Zd�Zdeedf��fdd� Zddd�Z���ZS�)�_VersionActionNz&show program's version number and exitc����������������s$���t�t|��j|||d|d��||�_d�S�)Nr���)r����r����r����r����rs���)r����r��rS����version)r"���r����r��r����r����rs���)r����r)���r*���rS�����s���� z_VersionAction.__init__c�������������C���sD���|�j�}|d�kr|j�}|���}|�|��|�|���tj��|����d�S�)N)r���_get_formatterrj����_print_messagerc����_sys�stdoutr��)r"���r����r����r����r����r��rW���r)���r)���r*���r����'��s���� z_VersionAction.__call__)N)r���r/���r0���r���rS���r����r����r)���r)���)r����r*���r����s ��� r��c�������������������sP���e�Zd�ZG�dd��de�Zedddf��fdd� Zdd��Zd d ��Zd dd�Z ���Z S�)�_SubParsersActionc�������������������s���e�Zd�Z��fdd�Z���ZS�)z&_SubParsersAction._ChoicesPseudoActionc����������������s@���|�}}|r|dd��|��7�}ttj|��}|jg�|||d��d�S�)Nz (%s)z, )r����r����rs���r����)r!���r����r ���_ChoicesPseudoActionrS���)r"���r'����aliasesrs���r����r�����sup)r����r)���r*���rS���5��s���� z/_SubParsersAction._ChoicesPseudoAction.__init__)r���r/���r0���rS���r����r)���r)���)r����r*���r��3��s���r��FNc���������� ������s<���||�_�||�_i�|�_g�|�_tt|��j||t|�j|||d��d�S�)N)r����r����r����r����r����rs���r����)�_prog_prefix� _parser_class�_name_parser_map�_choices_actionsr����r ��rS���r���)r"���r����rO����parser_classr����r����rs���r����)r����r)���r*���rS���=��s���� z_SubParsersAction.__init__c�������������K���s����|��d�d�kr d|�j|f�|d<�|�dd�}d|krX|�d�}|��|||�}|�j�|��|�jf�|�}||�j|<�x|D�]}||�j|<�qtW�|S�)NrO���z%s %sr��r)���rs���)r����r��r����r��r��r���r��r��)r"���r'����kwargsr��rs���� choice_actionr�����aliasr)���r)���r*���� add_parserT��s���� z_SubParsersAction.add_parserc�������������C���s���|�j�S�)N)r��)r"���r)���r)���r*���r����k��s����z!_SubParsersAction._get_subactionsc�������������C���s����|d�}|dd���}|�j�tk r,t||�j�|��y|�j|�}W�n<�tk rv���|d�|�j�d�}td�|�}t|�|��Y�nX�|�|d��\} }x$t | �� ��D�]\} }t|| |��q�W�|r�t |��tg���t |t��|��d�S�)Nr���rT���z, )�parser_namer����z5unknown parser %(parser_name)r (choices: %(choices)s))r����r���r����r��r<���r!���r����r����parse_known_argsr����r.���� setdefault�_UNRECOGNIZED_ARGS_ATTRr����r����)r"���r����r����r����r����r��r$���r\����msg�subnamespace�keyr(���r)���r)���r*���r����n��s"���� z_SubParsersAction.__call__)N)r���r/���r0���r���r��r���rS���r��r����r����r����r)���r)���)r����r*���r ��1��s���r ��c���������������@���s&���e�Zd�Zd dd�Zdd��Zdd ��ZdS�)r����rr����Nc�������������C���s���||�_�||�_||�_||�_d�S�)N)�_mode�_bufsize� _encoding�_errors)r"����mode�bufsize�encoding�errorsr)���r)���r*���rS������s����zFileType.__init__c���������� ���C���s����|dkr>d|�j�krtjS�d|�j�kr(tjS�td�|�j��}t|��yt||�j�|�j|�j|�j �S��t k r��}�ztd�}t|||f���W�d�d�}~X�Y�nX�d�S�)N�-r!���wzargument "-" with mode %rzcan't open '%s': %s)r"��r���stdinr��r����r=���r����r#��r$��r%���OSErrorr���)r"����stringr���er����r)���r)���r*���r�������s���� zFileType.__call__c�������������C���sT���|�j�|�jf}d|�jfd|�jfg}d�dd��|D��dd��|D����}dt|��j|f�S�)Nr(��r)��z, c�������������S���s���g�|�]}|d�krt�|��qS�)r����)r���)rZ���r&���r)���r)���r*���r]������s����z%FileType.__repr__.<locals>.<listcomp>c�������������S���s$���g�|�]\}}|d�k rd||f��qS�)Nz%s=%rr)���)rZ����kwr&���r)���r)���r*���r]������s����z%s(%s))r"��r#��r$��r%��r!���r���r���)r"���r\���r���args_strr)���r)���r*���r+������s ����zFileType.__repr__)r!��r����NN)r���r/���r0���rS���r����r+���r)���r)���r)���r*���r������s��� c���������������@���s$���e�Zd�Zdd��Zdd��Zdd��ZdS�)r ���c�������������K���s"���x|D�]}t�|�|||���qW�d�S�)N)r����)r"���r��r'���r)���r)���r*���rS������s���� zNamespace.__init__c�������������C���s���t�|t�stS�t|��t|�kS�)N)r����r ����NotImplementedr����)r"����otherr)���r)���r*����__eq__���s���� zNamespace.__eq__c�������������C���s ���||�j�kS�)N)r-���)r"���r ��r)���r)���r*����__contains__���s����zNamespace.__contains__N)r���r/���r0���rS���r4��r5��r)���r)���r)���r*���r ������s���c�������������������s����e�Zd�Z��fdd�Zdd��Zd&dd�Zdd ��Zd d��Zdd ��Zdd��Z dd��Z dd��Zdd��Zdd��Z dd��Zdd��Zd'dd�Zdd��Zd d!��Zd"d#��Zd$d%��Z���ZS�)(�_ActionsContainerc����������������s��t�t|������||�_||�_||�_||�_i�|�_|��dd�t ��|��ddt ��|��ddt ��|��ddt��|��ddt��|��ddt ��|��ddt��|��ddt��|��dd t��|��dd t��|��ddt��|�����g�|�_i�|�_g�|�_g�|�_i�|�_t�d�|�_g�|�_d�S�) Nrw����store�store_const� store_true�store_falser����append_constr��rs���r���parsersz^-\d+$|^-\d*\.\d+$)r����r6��rS����description�argument_default�prefix_chars�conflict_handler�_registries�registerr����r����r����r����r���r��r��r��r��r ���_get_handler�_actions�_option_string_actions�_action_groups�_mutually_exclusive_groups� _defaultsrJ���rK����_negative_number_matcher�_has_negative_number_optionals)r"���r=��r?��r>��r@��)r����r)���r*���rS������s2����z_ActionsContainer.__init__c�������������C���s���|�j��|i��}|||<�d�S�)N)rA��r��)r"���� registry_namer(���r�����registryr)���r)���r*���rB����s����z_ActionsContainer.registerNc�������������C���s���|�j�|��||�S�)N)rA��r����)r"���rK��r(���r����r)���r)���r*���� _registry_get��s����z_ActionsContainer._registry_getc�������������K���s6���|�j��|��x$|�jD�]}|j|kr||j�|_qW�d�S�)N)rH���updaterD��r����r����)r"���r��rw���r)���r)���r*����set_defaults��s���� z_ActionsContainer.set_defaultsc�������������C���s8���x(|�j�D�]}|j|kr|jd�k r|jS�qW�|�j�|d��S�)N)rD��r����r����rH��r����)r"���r����rw���r)���r)���r*����get_default&��s���� z_ActionsContainer.get_defaultc�������������O���s.��|�j�}|r&t|�dkrH|d�d�|krH|r:d|kr:td��|�j||�}n|�j||�}d|kr�|d�}||�jkr~|�j|�|d<�n|�jd�k r�|�j|d<�|��|�}t|�s�td|f���|f�|�}|�� d|j |j �}t|�s�td|f���t|�d ��r$y|����� |d���W�n�tk �r"���td ��Y�nX�|��|�S�)NrT���r���r����z+dest supplied twice for positional argumentr����zunknown action "%s"r���z%r is not callabler ��z,length of metavar tuple does not match nargs)r?��rq���r=����_get_positional_kwargs�_get_optional_kwargsrH��r>���_pop_action_class�callablerM��r���r����r ��r����� TypeError�_add_action)r"���r\���r���charsr�����action_classrw���� type_funcr)���r)���r*���r}���0��s2���� z_ActionsContainer.add_argumentc�������������O���s ���t�|�f|�|�}|�j�|��|S�)N)�_ArgumentGrouprF��r���)r"���r\���r��r����r)���r)���r*����add_argument_group_��s����z$_ActionsContainer.add_argument_groupc�������������K���s���t�|�f|�}|�j�|��|S�)N)�_MutuallyExclusiveGrouprG��r���)r"���r��r����r)���r)���r*����add_mutually_exclusive_groupd��s����z._ActionsContainer.add_mutually_exclusive_groupc�������������C���sh���|���|��|�j�|��|�|_x|jD�]}||�j|<�q$W�x,|jD�]"}|�j�|�r>|�js>|�j�d��q>W�|S�)NT) �_check_conflictrD��r���� containerr����rE��rI���matchrJ��)r"���rw���r����r)���r)���r*���rV��i��s���� z_ActionsContainer._add_actionc�������������C���s���|�j��|��d�S�)N)rD���remove)r"���rw���r)���r)���r*����_remove_action~��s����z _ActionsContainer._remove_actionc�������������C���s����i�}x8|�j�D�].}|j|kr0td�}t||j���|||j<�qW�i�}xR|j�D�]H}|j|krt|�j|j|j|jd�||j<�x|jD�]}||j�||<�q|W�qJW�x4|jD�]*}|�j |j d�}x|jD�]}|||<�q�W�q�W�x |jD�]}|�||��� |��q�W�d�S�)Nz.cannot merge actions - two groups are named %r)�titler=��r@��)r����)rF��rc��r����r=���r[��r=��r@��r����rG��r]��r����rD��r����rV��)r"���r_���title_group_mapr����r��� group_maprw����mutex_groupr)���r)���r*����_add_container_actions���s,���� z(_ActionsContainer._add_container_actionsc�������������K���s^���d|krt�d�}t|��|�d�ttgkr2d|d<�|�d�tkrPd|krPd|d<�t||g�d�S�)Nr����z1'required' is an invalid argument for positionalsr����Tr����)r����r����)r����rU��r����r ���r���r����)r"���r����r��r��r)���r)���r*���rQ�����s����z(_ActionsContainer._get_positional_kwargsc������� ������O���s����g�}g�}xv|D�]n}|d�|�j�kr@||�j�d�}td�}t||���|�|��|d�|�j�krt|�dkr|d�|�j�kr|�|��qW�|�dd��}|d�kr�|r�|d�}n|d�}|�|�j��}|s�td�}t||���|�dd�}t|||d �S�) Nr���)�optionr?��zNinvalid option string %(option)r: must start with a character %(prefix_chars)rrT���r����z%dest= is required for options like %rr*��r����)r����r����) r?��r����r=���r���rq���r�����lstrip�replacer����) r"���r\���r��r�����long_option_stringsr����r��r�����dest_option_stringr)���r)���r*���rR�����s0���� z&_ActionsContainer._get_optional_kwargsc�������������C���s���|��d|�}|��d||�S�)Nrw���)r����rM��)r"���r��r����rw���r)���r)���r*���rS�����s����z#_ActionsContainer._pop_action_classc�������������C���sD���d|�j��}y t|�|�S��tk r>���td�}t||�j����Y�nX�d�S�)Nz_handle_conflict_%sz%invalid conflict_resolution value: %r)r@��r����r����r����r=���)r"����handler_func_namer��r)���r)���r*���rC�����s���� z_ActionsContainer._get_handlerc�������������C���sP���g�}x0|j�D�]&}||�jkr|�j|�}|�||f��qW�|rL|����}|||��d�S�)N)r����rE��r���rC��)r"���rw����confl_optionalsr�����confl_optionalr@��r)���r)���r*���r^�����s���� z!_ActionsContainer._check_conflictc�������������C���s6���t�ddt|��}d�dd��|D���}t|||���d�S�)Nzconflicting option string: %szconflicting option strings: %sz, c�������������S���s���g�|�]\}}|�qS�r)���r)���)rZ���r����rw���r)���r)���r*���r]������s���z<_ActionsContainer._handle_conflict_error.<locals>.<listcomp>)r���rq���r!���r���)r"���rw����conflicting_actionsr�����conflict_stringr)���r)���r*����_handle_conflict_error���s���� z(_ActionsContainer._handle_conflict_errorc�������������C���sB���x<|D�]4\}}|j��|��|�j�|d���|j�s|j�|��qW�d�S�)N)r����ra��rE��r����r_��rb��)r"���rw���rp��r����r)���r)���r*����_handle_conflict_resolve��s ����z*_ActionsContainer._handle_conflict_resolve)N)N)r���r/���r0���rS���rB��rM��rO��rP��r}���r[��r]��rV��rb��rg��rQ��rR��rS��rC��r^��rr��rs��r����r)���r)���)r����r*���r6�����s$���4 /($ r6��c�������������������s6���e�Zd�Zd��fdd� Z��fdd�Z��fdd�Z���ZS�) rZ��Nc����������������s����|j�}|d|j��|d|j��|d|j��tt|��j}|f�d|i|���||�_g�|�_|j |�_ |j |�_ |j|�_|j|�_|j |�_ |j|�_d�S�)Nr@��r?��r>��r=��)r��r@��r?��r>��r����rZ��rS���rc��r����rA��rD��rE��rH��rJ��rG��)r"���r_��rc��r=��r��rN��� super_init)r����r)���r*���rS�����s����z_ArgumentGroup.__init__c����������������s ���t�t|���|�}|�j�|��|S�)N)r����rZ��rV��r����r���)r"���rw���)r����r)���r*���rV��(��s����z_ArgumentGroup._add_actionc����������������s ���t�t|���|��|�j�|��d�S�)N)r����rZ��rb��r����ra��)r"���rw���)r����r)���r*���rb��-��s����z_ArgumentGroup._remove_action)NN)r���r/���r0���rS���rV��rb��r����r)���r)���)r����r*���rZ����s���rZ��c�������������������s.���e�Zd�Zd��fdd� Zdd��Zdd��Z���ZS�) r\��Fc����������������s ���t�t|���|��||�_||�_d�S�)N)r����r\��rS���r����� _container)r"���r_��r����)r����r)���r*���rS���4��s����z _MutuallyExclusiveGroup.__init__c�������������C���s2���|j�rtd�}t|��|�j�|�}|�j�|��|S�)Nz-mutually exclusive arguments must be optional)r����r����r=���ru��rV��r����r���)r"���rw���r��r)���r)���r*���rV��9��s����z#_MutuallyExclusiveGroup._add_actionc�������������C���s���|�j��|��|�j�|��d�S�)N)ru��rb��r����ra��)r"���rw���r)���r)���r*���rb��A��s����z&_MutuallyExclusiveGroup._remove_action)F)r���r/���r0���rS���rV��rb��r����r)���r)���)r����r*���r\��2��s���r\��c�������������������s&��e�Zd�Zddddg�eddddddf��fdd� Zdd��Zd d ��Zdd��Zd d��Zdd��Z d@dd�Z dAdd�Zdd��Zdd��Z dd��Zdd��Zdd��Zdd ��Zd!d"��Zd#d$��ZdBd%d&�ZdCd'd(�Zd)d*��Zd+d,��Zd-d.��Zd/d0��Zd1d2��Zd3d4��ZdDd5d6�ZdEd7d8�ZdFd9d:�ZdGd<d=�Zd>d?��Z ���Z!S�)Hr���Nr*���errorTc ���������� ������s&��t�t|��j} | ||| | d��|d�kr6tj�tjd��}||�_||�_ ||�_ ||�_||�_||�_ ||�_|�j}|td��|�_|td��|�_d�|�_dd��}|��dd�|��d|kr�dn|d�}|�j r�|�j|d �|d �d�dttd�d ��xD|D�]<}|��|��y |j}W�n�tk �r���Y�q�X�|�j�|��q�W�d�S�)N)r=��r?��r>��r@��r���zpositional argumentszoptional argumentsc�������������S���s���|�S�)Nr)���)r.��r)���r)���r*����identity��s����z)ArgumentParser.__init__.<locals>.identityr���r*���hr4���rs���zshow this help message and exit)rw���r����rs���)r����r���rS���r:����path�basenamer���argvrO���rl����epilog�formatter_class�fromfile_prefix_chars�add_help�allow_abbrevr[��r�����_positionals� _optionals�_subparsersrB��r}���r���rg��rH��r����rN��)r"���rO���rl���r=��r|���parentsr}��r?��r~��r>��r@��r��r���� superinit� add_grouprw���default_prefixrX����defaults)r����r)���r*���rS���Y��sB���� zArgumentParser.__init__c����������������s"���ddddddg}��fdd�|D��S�) NrO���rl���r=��r}��r@��r��c����������������s���g�|�]}|t���|�f�qS�r)���)r����)rZ���r'���)r"���r)���r*���r]������s����z.ArgumentParser._get_kwargs.<locals>.<listcomp>r)���)r"���r����r)���)r"���r*���r������s����zArgumentParser._get_kwargsc������� ������K���s����|�j�d�k r|��td���|�dt|����d|ks8d|krht|�dd��}t|�dd���}|��||�|�_�n|�j|�_�|�d�d�kr�|�� ��}|�� ��}|�j}|�|�j ||d��|������|d<�|��|d�}|f�d g�i|��}|�j��|��|S�) Nz(cannot have multiple subparser argumentsr��rc��r=���subcommandsrO���r^���r<��r����)r���rv��r����r��r���r����r[��r���r����r ���_get_positional_actionsrG��rp���rl���rc���r����rS��rV��) r"���r��rc��r=��rW���r����rn���� parsers_classrw���r)���r)���r*����add_subparsers���s$���� zArgumentParser.add_subparsersc�������������C���s$���|j�r|�j�|��n|�j�|��|S�)N)r����r���rV��r���)r"���rw���r)���r)���r*���rV�����s����zArgumentParser._add_actionc�������������C���s���dd��|�j�D��S�)Nc�������������S���s���g�|�]}|j�r|�qS�r)���)r����)rZ���rw���r)���r)���r*���r]������s���z8ArgumentParser._get_optional_actions.<locals>.<listcomp>)rD��)r"���r)���r)���r*����_get_optional_actions���s����z$ArgumentParser._get_optional_actionsc�������������C���s���dd��|�j�D��S�)Nc�������������S���s���g�|�]}|j�s|�qS�r)���)r����)rZ���rw���r)���r)���r*���r]������s���z:ArgumentParser._get_positional_actions.<locals>.<listcomp>)rD��)r"���r)���r)���r*���r������s����z&ArgumentParser._get_positional_actionsc�������������C���s4���|���||�\}}|r0td�}|��|d�|����|S�)Nzunrecognized arguments: %sr����)r��r����rv��r!���)r"���r\���r����r{��r��r)���r)���r*���� parse_args���s ����zArgumentParser.parse_argsc�������������C���s��|d�krt�jdd���}nt|�}|d�kr.t��}x>|�jD�]4}|jtk r6t||j�s6|jtk r6t ||j|j��q6W�x*|�j D�] }t||�svt |||�j |���qvW�y<|��||�\}}t|t�r�|� t|t���t|t��||fS��tk �r���t����d�}|��t|���Y�nX�d�S�)NrT���)r��r{��r1���r ���rD��r����r���r����r����r����rH���_parse_known_argsr��r����r�����delattrr����exc_inforv��r����)r"���r\���r����rw���r�����errr)���r)���r*���r�����s,���� zArgumentParser.parse_known_argsc����������������s"��� j�d�k r� ����i���x`� jD�]V}|j}xJt|j�D�]<\}}���|g��}|�|d�|����|�||d�d�����q6W�q W�i��g�}t��} xnt| �D�]b\}} | dkr�|�d��xF| D�]} |�d��q�W�q�� � | �}|d�kr�d}n|�|<�d}|�|��q�W�d� |��t���t���d������ fdd� ������ �fd d �} � �������� �fdd�}g��d � ��rpt ��}nd}x|� |k�r�t� fdd��D���}� |k�r�|� �}|� k�r�|� �qvn|� � �k�r�� |��}��|��|� | � �� �qvW�|� �}���|d�����g�}x�� jD�]|}|�k�r|j�r>|�t|���nT|jd�k �rt|jt��rt�|j��r|jt�|j�k�rt�|j� �||j����qW�|�r�� �td�d� |����xb� jD�]X}|j�r�xH|jD�]}|�k�r�P��q�W�dd��|jD��}td�}� �|d� |�����q�W���fS�)NrT���z--r*���A�Or^���c����������������s�������|�����|�|�}||�jk rf���|���x:���|�g��D�]*}|�kr8td�}t|�}t|�||���q8W�|tk r||���||��d�S�)Nznot allowed with argument %s)r�����_get_valuesr����r����r����r����r���r���)rw����argument_stringsr�����argument_values�conflict_actionr���action_name)�action_conflictsr�����seen_actions�seen_non_default_actionsr"���r)���r*����take_action3��s���� z5ArgumentParser._parse_known_args.<locals>.take_actionc����������������s����|��}|\}}}�j�}g�}�x>|d�kr>����|����|�d�S�|d�k �r||d�}�j}|dkr�|d�|kr�|�|g�|f��|d�} | |d��}|dd���p�d�} �j}||kr�||�}| }ntd�}t|||���n@|dkr�|�d�} |g}|�|||f��P�ntd�}t|||���q |�d�}�|d���}|||�}||�} ��|| ��}|�|||f��P�q W�x |D�]\}}}�|||���qdW�| S�)NrT���r���r���zignored explicit argument %r)�_match_argumentr���r?��rE��r����r���)�start_index�option_tuplerw���r�����explicit_arg�match_argument� action_tuples� arg_countrW���char�new_explicit_arg� optionals_mapr���stopr\���r�����selected_patterns)r$����arg_strings_pattern�extras�option_string_indicesr"���r���r)���r*����consume_optionalH��sN���� z:ArgumentParser._parse_known_args.<locals>.consume_optionalc����������������sr����j�}�|�d���}|�|�}x8t�|�D�]*\}}��|�|�|���}|�|7�}��||��q(W��t|�d����d�d��<�|�S�)N)�_match_arguments_partial�ziprq���)r���� match_partial�selected_pattern� arg_countsrw���r���r\���)r$���r���r����r"���r���r)���r*����consume_positionals���s���� z=ArgumentParser._parse_known_args.<locals>.consume_positionalsr���r����c����������������s���g�|�]}|��kr|�qS�r)���r)���)rZ���r����)r���r)���r*���r]������s���z4ArgumentParser._parse_known_args.<locals>.<listcomp>z(the following arguments are required: %sz, c�������������S���s���g�|�]}|j�tk rt|��qS�r)���)rs���r���r����)rZ���rw���r)���r)���r*���r]������s���z#one of the arguments %s is requiredr����)N)r~���_read_args_from_filesrG��r����r����r��r�����iterr����_parse_optionalr!���r����r���rB���rA���rD��r����r����r����r����r����r����r����r����r����� _get_valuerv��r����)r"���r$���r����rf��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_actionsrw���r����r����r��r)���)r���r$���r���r���r����r���r����r���r���r"���r���r���r*���r�����s����� J z ArgumentParser._parse_known_argsc���������� ���C���s����g�}x�|D�]�}|r |d�|�j�kr,|�|��q ylt|dd�����R}g�}x2|������D�]"}x|��|�D�]}|�|��qbW�qRW�|��|�}|�|��W�d�Q�R�X�W�q �tk r����t � ��d�}|��t|���Y�q X�q W�|S�)Nr���rT���) r~��r���r�����readr�����convert_arg_line_to_argsr���r����r-��r��r���rv��r����)r"���r$����new_arg_stringsr���� args_file�arg_liner&���r���r)���r)���r*���r������s ���� z$ArgumentParser._read_args_from_filesc�������������C���s���|gS�)Nr)���)r"���r���r)���r)���r*���r�����s����z'ArgumentParser.convert_arg_line_to_argsc�������������C���sz���|���|�}t�||�}|d�krld�td�ttd�ttd�i}|�|j�}|d�krbtdd|j�|j�}t ||��t |�d��S�)Nzexpected one argumentzexpected at most one argumentzexpected at least one argumentzexpected %s argumentzexpected %s argumentsrT���)�_get_nargs_patternrJ���r`��r����r ���r���r����r����r���r���rq���r����)r"���rw���r���� nargs_patternr`���nargs_errorsr��r)���r)���r*���r�����s���� zArgumentParser._match_argumentc����������������st���g�}xjt�t|�dd�D�]V}|d�|��}d���fdd�|D���}t�||�}|d�k r|�dd��|���D����P�qW�|S�)Nr���r����r^���c����������������s���g�|�]}����|��qS�r)���)r���)rZ���rw���)r"���r)���r*���r]���3��s���z;ArgumentParser._match_arguments_partial.<locals>.<listcomp>c�������������S���s���g�|�]}t�|��qS�r)���)rq���)rZ���r.��r)���r)���r*���r]���7��s����)r����rq���r!���rJ���r`��r����rn���)r"���rm���r���r����r����� actions_slicer���r`��r)���)r"���r*���r���-��s���� z'ArgumentParser._match_arguments_partialc������� ������C���s��|sd�S�|d�|�j�krd�S�||�jkr8|�j|�}||d�fS�t|�dkrHd�S�d|kr~|�dd�\}}||�jkr~|�j|�}|||fS�|�jr�|��|�}t|�dkr�d�dd��|D���}||d�}td�}|��||���nt|�dkr�|\} | S�|�j � |�r�|�js�d�S�d |k�r d�S�d�|d�fS�) Nr���rT����=z, c�������������S���s���g�|�]\}}}|�qS�r)���r)���)rZ���rw���r����r���r)���r)���r*���r]���]��s���z2ArgumentParser._parse_optional.<locals>.<listcomp>)rh���matchesz4ambiguous option: %(option)s could match %(matches)sr����)r?��rE��rq����splitr����_get_option_tuplesr!���r����rv��rI��r`��rJ��) r"���r���rw���r����r���� option_tuples�optionsr\���r��r���r)���r)���r*���r���=��s>���� zArgumentParser._parse_optionalc������� ������C���s2��g�}|�j�}|d�|kr~|d�|kr~d|kr<|�dd�\}}n|}d�}x�|�jD�],}|�|�rL|�j|�}|||f}|�|��qLW�n�|d�|k�r|d�|k�r|}d�}|d�d��}|dd���} xr|�jD�]T}||kr�|�j|�}||| f}|�|��q�|�|�r�|�j|�}|||f}|�|��q�W�n|��td�|���|S�)Nr���rT���r���r4���zunexpected option string: %s)r?��r���rE��� startswithr���rv��r����) r"���r����r����rW��� option_prefixr���rw���r�����short_option_prefix�short_explicit_argr)���r)���r*���r���x��s8���� z!ArgumentParser._get_option_tuplesc�������������C���s����|j�}|d�krd}nf|tkr"d}nX|tkr0d}nJ|tkr>d}n<|tkrLd}n.|tkrZd}n |tkrhd}ndd �d |���}|jr�|� d d�}|� dd�}|S�) Nz(-*A-*)z(-*A?-*)z (-*[A-]*)z (-*A[A-]*)z([-AO]*)z(-*A[-AO]*)z(-*-*)z(-*%s-*)z-*r���r^���r*��) r����r ���r���r���r���r���r���r!���r����rj��)r"���rw���r����r���r)���r)���r*���r������s(����z!ArgumentParser._get_nargs_patternc�������������C���s4���|���||�\}}|r0td�}|��|d�|����|S�)Nzunrecognized arguments: %sr����)�parse_known_intermixed_argsr����rv��r!���)r"���r\���r����r{��r��r)���r)���r*����parse_intermixed_args���s ����z$ArgumentParser.parse_intermixed_argsc���������� ������s���|�������dd����D��}|r,td|d�j�����fdd�|�jD��rHtd���zl|�j}z�|�jd�krp|����dd���|�_x(��D�] }|j|_t|_|j|_ t|_qvW�|�� ||�\}}xR��D�]J}t||j�r�t ||j�g�kr�ddlm}�|d |j|f���t||j��q�W�W�d�x��D�]}|j|_|j |_�qW�X�|����}zRx|D�]}|j|_d |_�q4W�x|�jD�]} | j| _d | _�qTW�|�� ||�\}} W�d�x|D�]}|j|_�q�W�x|�jD�]} | j| _�q�W�X�W�d�||�_X�|| fS�)Nc�������������S���s���g�|�]}|j�ttgkr|�qS�r)���)r����r���r���)rZ���rw���r)���r)���r*���r]������s����z>ArgumentParser.parse_known_intermixed_args.<locals>.<listcomp>z3parse_intermixed_args: positional arg with nargs=%sr���c����������������s&���g�|�]}|j�D�]}|��kr|j�qqS�r)���)r����r����)rZ���r����rw���)r����r)���r*���r]������s����z;parse_intermixed_args: positional in mutuallyExclusiveGroup����)�warnzDo not expect %s in %sF)r���rU��r����rG��rl����format_usage� save_nargsr���r�����save_defaultr��r����r����r�����warningsr���r���r���r����� save_required)r"���r\���r�����a� save_usagerw����remaining_argsr���r����r����r���r)���)r����r*���r������sX���� z*ArgumentParser.parse_known_intermixed_argsc����������������s�����j�ttgkr2y|�d��W�n�tk r0���Y�nX�|sz��j�tkrz��jrN��j}n��j}t |t �rv����|�}����|���n|s���j�t kr���js���jd�k r���j}n|}����|��n�t|�dkr��j�d�tgkr�|\}����|�}����|��n���j�tk�r���fdd�|D��}nt��j�tk�r@���fdd�|D��}����|d���nB��j�tk�rRt}n0���fdd�|D��}x|D�]}����|���qlW�|S�)Nz--rT���c����������������s���g�|�]}�����|��qS�r)���)r���)rZ����v)rw���r"���r)���r*���r]���M ��s����z.ArgumentParser._get_values.<locals>.<listcomp>c����������������s���g�|�]}�����|��qS�r)���)r���)rZ���r���)rw���r"���r)���r*���r]���Q ��s����r���c����������������s���g�|�]}�����|��qS�r)���)r���)rZ���r���)rw���r"���r)���r*���r]���Z ��s����)r����r���r���ra��r=���r ���r����r����r����r����r����r����_check_valuer���rq���r���)r"���rw���r$���r(���r���r���r)���)rw���r"���r*���r���) ��sB���� zArgumentParser._get_valuesc���������� ���C���s����|���d|j|j�}t|�s0td�}t|||���y||�}W�n��tk r~���t|jdt|j��}tt � ��d��}t||��Y�nL�ttfk r����t|jdt|j��}||d�}td�}t|||���Y�nX�|S�)Nr���z%r is not callabler���rT���)r���r(���z!invalid %(type)s value: %(value)r) rM��r���rT��r����r���r���r����r���r����r��r���rU��r=���)r"���rw���r���rY��r��r����r'���r\���r)���r)���r*���r���a ��s ���� zArgumentParser._get_valuec�������������C���sF���|j�d�k rB||j�krB|d�tt|j���d�}td�}t|||���d�S�)Nz, )r(���r����z3invalid choice: %(value)r (choose from %(choices)s))r����r!����mapr���r����r���)r"���rw���r(���r\���r��r)���r)���r*���r���{ ��s ����zArgumentParser._check_valuec�������������C���s$���|�����}|�|�j|�j|�j��|���S�)N)r ��rp���rl���rD��rG��rc���)r"���rW���r)���r)���r*���r���� ��s����zArgumentParser.format_usagec�������������C���sx���|�����}|�|�j|�j|�j��|�|�j��x:|�jD�]0}|�|j ��|�|j��|� |j��|����q0W�|�|�j ��|���S�)N)r ��rp���rl���rD��rG��rj���r=��rF��rf���rc��r~���r����rg���r|��rc���)r"���rW����action_groupr)���r)���r*���rc���� ��s����zArgumentParser.format_helpc�������������C���s���|�j�|�jd�S�)N)rO���)r}��rO���)r"���r)���r)���r*���r ��� ��s����zArgumentParser._get_formatterc�������������C���s"���|d�krt�j}|��|����|��d�S�)N)r��r��r ��r���)r"����filer)���r)���r*����print_usage� ��s����zArgumentParser.print_usagec�������������C���s"���|d�krt�j}|��|����|��d�S�)N)r��r��r ��rc���)r"���r���r)���r)���r*���r��� ��s����zArgumentParser.print_helpc�������������C���s ���|r|d�krt�j}|�|��d�S�)N)r���stderr�write)r"���r����r���r)���r)���r*���r ��� ��s����zArgumentParser._print_messager���c�������������C���s ���|r|���|tj��t�|��d�S�)N)r ��r��r���r��)r"����statusr����r)���r)���r*���r��� ��s����zArgumentParser.exitc�������������C���s0���|���tj��|�j|d�}|��dtd�|���d�S�)N)rO���r����r4���z%(prog)s: error: %(message)s )r���r��r���rO���r��r����)r"���r����r\���r)���r)���r*���rv��� ��s���� zArgumentParser.error)NN)NN)NN)NN)N)N)N)r���N)"r���r/���r0���r���rS���r���r���rV��r���r���r���r��r���r���r���r���r���r���r���r���r���r���r���r���r���r���rc���r ��r���r��r ��r��rv��r����r)���r)���)r����r*���r���F��sR���4 #�w;,1 M8 )/�__version__�__all__�osr:����rerJ����sysr��r���r����r���r���r ���r���r���r���r���r��r����r���r3���r���r���r���r���r ���r����� Exceptionr���r���r���r����r����r����r����r���r��r��r��r��r ��r���r ���r6��rZ��r\��r���r)���r)���r)���r*����<module>@���sx������{ [#&b6��5"