
    B/g?                         % S SK JrJrJrJrJrJrJrJrJ	r	J
r
Jr  S SKJr  S SKJrJrJrJr  0 r\\\4   \S'   S rS rSS jr " S S	\	5      rg
)    )ONE_OR_MOREOPTIONALPARSER	REMAINDERSUPPRESSZERO_OR_MOREActionArgumentErrorArgumentParser_get_action_name_SubParsersAction)gettext)DictListSetTuple_num_consumed_argsc                 p   [         R                  U S5      nU R                  [        [        [
        4;   a  gU R                  [        :X  a  US:  $ U R                  [        :X  a  gU R                  c  US:H  $ [        U R                  [        5      (       d   SU R                  -  5       eXR                  :H  $ )znReturns False if the parse would raise an error if no more arguments are given to this action, True otherwise.r   T   F+failed to handle a possible nargs value: %r)
r   getnargsr   r   r   r   r   
isinstanceintactionnum_consumed_argss     @/usr/lib/python3/dist-packages/argcomplete/packages/_argparse.pyaction_is_satisfiedr      s    *..vq9||,	::||{" A%%||v || A%%fllC((f*WZ`ZfZf*ff(,,    c                 F   [         R                  U S5      nU R                  [        [        [
        [        4;   a  gU R                  [        :X  d  U R                  c  US:H  $ [        U R                  [        5      (       d   SU R                  -  5       eXR                  :  $ )zPReturns True if action could consume more arguments (i.e., its pattern is open).r   Tr   )
r   r   r   r   r   r   r   r   r   r   r   s     r   action_is_openr"   .   s    *..vq9||k69EE||x6<<#7 A%%fllC((f*WZ`ZfZf*ff(||++r    c                     [         R                  U S5      nU R                  (       a+  U(       d  [        U 5      (       d  gU R                  [
        :H  $ U R                  [
        :H  =(       a    US:  $ )zReturns True if action will necessarily consume the next argument.
isoptional indicates whether the argument is an optional (starts with -).
r   Tr   )r   r   option_stringsr   r   r   )r   
isoptionalr   s      r   action_is_greedyr&   ;   sZ     +..vq9"5f"="=||y((||y(C->!-CCr    c                   "    \ rS rSrSrSS jrSrg)IntrospectiveArgumentParserI   zThe following is a verbatim copy of ArgumentParser._parse_known_args (Python 2.7.3),
except for the lines that contain the string "Added by argcomplete".
c           	      Z  ^ ^^^^^^ ^!^"^#^$ [         R                  5         TT l        / T l        T R                  b  T R                  T5      m0 mTT l        T R                   Hi  nUR                  n[        UR                  5       HA  u  pxTR                  U/ 5      n	U	R                  US U 5        U	R                  XgS-   S  5        MC     Mk     0 m / n
[        T5      n[        U5       Hg  u  p|US:X  a-  U
R                  S5        U H  nU
R                  S5        M     M8  T R                  U5      nUc  SnOUT U'   SnU
R                  U5        Mi     SR                  U
5      m[!        5       m"[!        5       m#T#T l        SUUU"U#U 4S jjm$UUUU U U$4S jnT R%                  5       m!UUU!U U$4S	 jn/ mS
nT (       a  ['        T 5      nOSnUU::  al  [)        T  Vs/ s H  nUU:  d  M  UPM     sn5      nUU:w  a  U" U5      nUU:  a  UnMB  UnUT ;  a  TUU nTR                  U5        UnU" U5      nUU::  a  Ml  U" U5      nTR                  TUS  5        T!(       a8  T R                  R                  T!S
   5        T R+                  [-        S5      5        T R.                   HF  nUR0                  (       d  M  UT";  d  M  [3        U5      nT R+                  [-        S5      U-  5        MH     T R                   H  nUR0                  (       d  M  UR                   H  nUT#;   d  M    M0     UR                   Vs/ s H,  nUR4                  [6        Ld  M  [9        [3        U5      5      PM.     nn[-        S5      nT R+                  USR                  U5      -  5        M     TT4$ s  snf s  snf )Nr   z---AO c                 >  > TR                  U 5        TR                  X5      nX0R                  LaT  TR                  U 5        T
R                  U / 5       H-  nUT;   d  M  [	        S5      n[        U5      n[        XU-  5      e   U[        Ld  [        U [        5      (       a   U " TTX25        g g ! [         aa    [        U [        5      (       aJ  U R                  US      R                  n[        U5      R                  5        H  u  p[        TX5        M     e f = f)Nznot allowed with argument %sr   )add_get_valuesdefaultr   r   r   r
   r   r   r   BaseException_name_parser_map_argcomplete_namespacevarsitemssetattr)r   argument_stringsoption_stringargument_valuesconflict_actionmsgaction_namesubnamespacekeyvalueaction_conflicts	namespaceseen_actionsseen_non_default_actionsselfs             r   take_actionBIntrospectiveArgumentParser._parse_known_args.<locals>.take_action   s   V$"..vHO
 nn4(,,V4'7';';FB'GO&*BB%&DE&6&G+F+4EFF	 (H h.*VEV2W2W4OK 3X % 

 "&*;<<'-'>'>q?Q'R'i'i*.|*<*B*B*DJC#Is: +E 
s   %
B1 1A+Dc                   > TU    n[        U[        5      (       a  US   n[        U5      S:X  a  Uu  p#nOUu  p#pTTR                  n/ n Uc  TR	                  TU    5        U S-   $ Ub  U" US5      nTR
                  n	US:X  ah  US   U	;  a_  UR	                  U/ U45        US   n
XS   -   nUSS  =(       d    S nTR                  nX<;   a  X   nUnO[        S5      n[        X-U-  5      eUS:X  a  U S-   nU/nUR	                  X/U45        O[        S5      n[        X-U-  5      eU S-   nTUS  nU/Tl	        S[        U'   U" UU5      nUU-   nTUU n[        U5      [        U'   [        U5      (       d  TR                  R                  U5        UR	                  X/U45        OGM_  U(       d   eU H  u  p/nT" X/U5        M     U$ )Nr      r   r,   zignored explicit argument %r)r   listlen_match_argumentappendprefix_chars_option_string_actionsr   r
   active_actionsr   r"   remove)start_indexoption_tupler   r:   explicit_arg_match_argumentaction_tuples	arg_countcharscharnew_explicit_argoptionals_mapr=   stopargsstartselected_patternsarg_stringsarg_strings_patternextrasoption_string_indicesrF   rG   s                     r   consume_optionalGIntrospectiveArgumentParser._parse_known_args.<locals>.consume_optional   s6   0=L,--+A< A%6B3|9E6q "11NACM>MM+k":;&?*  + .vs ;I
 !--E A~-*:%*G%,,fb--HI,Q/(,A(>+7+;+Ct((,(C(C(9%2%AF+;L")*H"IC"/l8J"KK #a*Q ,~%,,fM-JK
 &&DE+F,4FGG (!OE(;EF(C%+1(D'12&v. .v7H II 9,D&uT2D
 25T&v.)&11++226: "((&)FG F ! =/<+mF-8 0=Kr    c                 2  > T
R                   nTU S  nU" T	U5      n[        T	U5       H   u  pET
R                  R                  U5        M"     [        T	U5       H*  u  pETX U-    nX-  n [	        U5      [
        U'   T" XF5        M,     T	[	        U5      S  T	S S & U $ N)_match_arguments_partialziprQ   rN   rL   r   )rS   match_partialselected_pattern
arg_countsr   rY   r_   rb   rc   positionalsrF   rG   s          r   consume_positionalsJIntrospectiveArgumentParser._parse_known_args.<locals>.consume_positionals   s     99M2;<@&{4DEJ &)j%A!##**62 &B%(j%A!";y1HI(-0Y"6*F)	 &B )Z):;KNr    r   ztoo few argumentszargument %s is requiredz#one of the arguments %s is required ri   )r   clearr5   rQ   fromfile_prefix_chars_read_args_from_files_action_conflicts_mutually_exclusive_groups_group_actions	enumerate
setdefaultextenditerrN   _parse_optionaljoinset_seen_non_default_actions_get_positional_actionsmaxminerrorr   _actionsrequiredr   helpr   str)%rF   rb   rC   
intermixedkwargsmutex_groupgroup_actionsimutex_action	conflictsarg_string_pattern_partsarg_strings_iter
arg_stringrT   patternrf   rp   rS   max_option_string_indexindexnext_option_string_indexpositionals_end_indexstrings
stop_indexr   namegroupnamesr=   rB   rc   rd   re   ro   rD   rE   rG   s%   ```                          @@@@@@@@r   _parse_known_args-IntrospectiveArgumentParser._parse_known_argsN   s     "&/#,.%%144[AK 8:!1::K'66M#,[-G-G#H,77bI	  r!23  1uw!78 $I ; !##% ,&'78MAT!(//4"2J,33C8 #3  $33J?'!G/;)!,!G(//8! 9& !gg&>? %(E03 )A&	 	BT	 T	p 224	 	.  &)*?&@#&(#44'*?T+m?TeX]alXlE?T+m'n$66(;K(H% );6"7K"7K "77%k2JKg&6 +;7K- 442 )5
 	k*+./
 &&{1~6JJw234 mmF-+F3DJJw'@ADHI	 $ 44E~~~#22F!99 3 EJDXDXDX&\b\g\gow\w5,V45DX   ""GHCJJsSXXe_45 5 &  u ,nfs   
N#&N#8N(N()rw   r5   r   rQ   NF)__name__
__module____qualname____firstlineno____doc__r   __static_attributes__ r    r   r(   r(   I   s    H!r    r(   Nr   )argparser   r   r   r   r   r   r	   r
   r   r   r   r   typingr   r   r   r   r   r   __annotations__r   r"   r&   r(   r   r    r   <module>r      sV        ) )(* D% *-&
,DM!. M!r    