nHdMb dZgdZddlZddlZddlZddlZddl m Z m Z dZ dZ dZdZd Zd Zd ZGd d eZdZGddeZGddeZGddeZGddeZGddeZdZGddeZGddeZGddeZGd d!eZ Gd"d#eZ!Gd$d%eZ"Gd&d'e"Z#Gd(d)e"Z$Gd*d+eZ%Gd,d-eZ&Gd.d/eZ'Gd0d1eZ(Gd2d3eZ)Gd4d5eZ*Gd6d7e%Z+Gd8d9eZ,Gd:d;eZ-Gd<d=eZ.Gd>d?e.Z/Gd@dAe/Z0GdBdCee.Z1dS)Dz1.1)ArgumentParser ArgumentErrorArgumentTypeErrorBooleanOptionalActionFileType HelpFormatterArgumentDefaultsHelpFormatterRawDescriptionHelpFormatterRawTextHelpFormatterMetavarTypeHelpFormatter NamespaceAction ONE_OR_MOREOPTIONALPARSER REMAINDERSUPPRESS ZERO_OR_MOREN)gettextngettextz ==SUPPRESS==?*+zA......_unrecognized_argsc"eZdZ dZdZdZdS)_AttributeHolderct|j}g}i}|D]$}|t |%|D]9\}}|r||d|4|||<:|r%|dt |z|dd|dS)N=z**%s(, ))type__name__ _get_argsappendrepr _get_kwargs isidentifierjoin)self type_name arg_strings star_argsargnamevalues //opt/alt/python311/lib64/python3.11/argparse.py__repr__z_AttributeHolder.__repr__vsJJ'   >>## * *C   tCyy ) ) ) )++-- ( (KD%  "" (""dddEE#:;;;;"' $  9   vY7 8 8 8$99dii &<&<&<&<==cNt|jSN)list__dict__itemsr+s r2r(z_AttributeHolder._get_kwargssDM''))***r4cgSr6r:s r2r%z_AttributeHolder._get_argss r4N)r$ __module__ __qualname__r3r(r%r<r4r2rrmsF > > >+++r4rc||gSt|tur |ddSddl}||SNr)r#r7copy)r9rAs r2 _copy_itemsrBsG }  E{{dQQQxKKK 99U  r4ceZdZ d dZdZdZGddeZd Zd Z d Z d Z d!d Z dZ dZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdS)"rNc|"ddl}|j}|dz}||_||_t |t |dz |dz|_||_d|_ d|_ d|_ | |d|_ |j |_tjdtj|_tjd|_dS)NrrDz\s+z\n\n\n+)shutilget_terminal_sizecolumns_prog_indent_incrementminmax_max_help_position_width_current_indent_level_action_max_length_Section _root_section_current_section_recompileASCII_whitespace_matcher_long_break_matcher)r+progindent_incrementmax_help_positionwidthrHs r2__init__zHelpFormatter.__init__s = MMM,,..6E QJE !1"%&7&)%"*6F6J&K&K#M#M   "#!]]466 $ 2#&;vsy#A#A #&;z#:#:   r4cP|xj|jz c_|xjdz c_dSNrQrLrRr:s r2_indentzHelpFormatter._indents-  66 q r4cP|xj|jzc_|xjdzc_dSrbrdr:s r2_dedentzHelpFormatter._dedents-  66 q r4ceZdZddZdZdS)HelpFormatter._SectionNc>||_||_||_g|_dSr6) formatterparentheadingr9)r+rkrlrms r2r`zHelpFormatter._Section.__init__s"&DN DK"DLDJJJr4cV|j|j|jj}|d|jD}|j|j|sdS|jtur!|j|jj}d|d|jfz}nd}|d||dgS)Ncg|] \}}|| Sr<r<).0funcargss r2 z6HelpFormatter._Section.format_help..s"GGGjdDddDkGGGr4z%*s%s:  ) rlrkre _join_partsr9rgrmrrQ)r+r* item_helpcurrent_indentrms r2 format_helpz"HelpFormatter._Section.format_helps{&&&(((>-DGGDJGGGHHI{&&&((( r|8++ 0H!%!?$DL'II4w 4899 9r4r6)r$r=r>r`ryr<r4r2rTris7      : : : : :r4rTcH|jj||fdSr6)rVr9r&)r+rqrrs r2 _add_itemzHelpFormatter._add_items& #**D$<88888r4c||||j|}||jg||_dSr6)rerTrVr{ry)r+rmsections r2 start_sectionzHelpFormatter.start_sectionsL --d&;WEE w*B/// 'r4cP|jj|_|dSr6)rVrlrgr:s r2 end_sectionzHelpFormatter.end_sections! $ 5 < r4c\|tur | ||j|gdSdSdSr6)rr{ _format_text)r+texts r2add_textzHelpFormatter.add_texts? x  D$4 NN4,tf 5 5 5 5 5 $4$4r4c^|tur#||||f}||j|dSdSr6)rr{ _format_usage)r+usageactionsgroupsprefixrrs r2 add_usagezHelpFormatter.add_usages@  '661D NN4-t 4 4 4 4 4 ! r4c||jtur|j}||g}||D] }|||!t t t|}||jz}t |j ||_ | |j |gdSdSr6) helpr_format_action_invocation_iter_indented_subactionsr&rNmaplenrQrSr{_format_action)r+actionget_invocation invocations subactioninvocation_length action_lengths r2 add_argumentzHelpFormatter.add_arguments ;h & &";N)>&112K!;;FCC > > "">>)#<#<====!$C[$9$9 : : -0DDM&)$*A*7'9'9D # NN4. 9 9 9 9 9 ' &r4c:|D]}||dSr6)r)r+rrs r2 add_argumentszHelpFormatter.add_argumentss2 & &F   f % % % % & &r4c|j}|r3|jd|}|ddz}|S)N ru)rUryr[substrip)r+rs r2ryzHelpFormatter.format_helpsQ!--//  ++//==D::d##d*D r4c@dd|DS)Nrtc(g|]}|r |tu |Sr<)r)rpparts r2rsz-HelpFormatter._join_parts..%s5::: :$($8$8$8$8$8r4)r*)r+ part_stringss r2rvzHelpFormatter._join_parts$s4ww::$0:::;; ;r4c |td}||t|jz}nO||sdt|jz}n1|.dt|jz}g}g}|D]4}|jr||||5|j} | ||z|} dd|| fD}|j|jz t|t|zkrqd} | ||} | ||} tj | | }tj | | }d fd }t|t|zdzkrpdt|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 cg|]}||Sr<r<)rpss r2rsz/HelpFormatter._format_usage..EsCCCACaCCCr4z%\(.*?\)+(?=\s|$)|\[.*?\]+(?=\s|$)|\S+cg}g}|t|dz }nt|dz }|D]}|dzt|zkrA|r?||d|zg}t|dz }|||t|dzz }|r+||d|z| |dt|d|d<|S)Nrcrr)rr&r*)partsindentrlineslineline_lenr text_widths r2 get_linesz.HelpFormatter._format_usage..get_linesYsED)#&v;;?#&v;;? %22#a<#d))3j@@T@!LL#((4..)@AAA#%D'*6{{QH D))) CIIM1> Vchhtnn%<===)#(8CKKLL#9a Lr4g?rcrurr6) _dictrKoption_stringsr&_format_actions_usager*rPrQrrWfindallextend)r+rrrrr\ optionals positionalsrformat action_usage part_regexp opt_usage pos_usage opt_parts pos_partsrrrrrs @r2rzHelpFormatter._format_usage)s  >y\\F  Ddj1111EE]7]4:!6!6!66EE]$* 5 5 55DIK! / /(/$$V,,,,&&v..../F!6)k"96BBLHHCC$ )=CCCDDEt';;J6{{SZZ'*44 #F9f55 "F;77 K Y?? K Y?? !!!!!!*v;;T*dZ.??? CKK#d))$;a$?@F ' ) 4&9*.sDDD$43C3C3C3Cr4z[\[(]z[\])]z(%s) z\1 (%s)z *rt)set_group_actions ValueErrorindexraddrrrequiredrange enumerater&getpopr#_get_default_metavar_for_positional _format_argsnargs format_usage!_get_default_metavar_for_optionalsortedr*rWrr)r+rr group_actionsinsertsgroupstartgroup_action_countendsuppressed_actions_countrexposed_actions_countirdefaultr option_string args_stringropencloses r2rz#HelpFormatter._format_actions_usagesr ( )( )E' 9 !7!7!7888$ ) e&:1&=>>&))=%>%>"0059%)===/0,"'"6::%))&111!;(22494,>AY,Y) >/ G++#ENNNd2NNNN-0GEN'>>#CLLLC/LLLL+.GCLL.22 G++#ENNNd2NNNN-0GEN'>>#CLLLC/LLLL+.GCL"519c22))%( E    J"7++- #- #IAv{h&& T""";;q>>S((KKNNNN[[Q''3..KKA&&&*! #BB6JJ((99]**Aw#~~$r(c//#AbDz T""""!' 5a 8 <1$$!..00DD #DDVLLG"&"3"3FG"D"DK&3mm[[AD)6+F+F!D=D T""""... & &A!!*E!A#JJxxDD%DDDEEwx$t44wx%'55wDDD%%0#t<<zz|| s E EEcd|vr|t|jz}t|j|jz d}d|jz}||||dzS)Nz%(prog)r rr)rrKrNrPrQ _fill_text)r+rrrs r2rzHelpFormatter._format_textse   $DJ////Dt';;R@@ t++tZ886AAr4c~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| ddD]} | d|d| fzn*| ds| d||D]*} | || +||S) NrDrrtz%*s%s z %*s%-*s rrcru)rMrSrOrNrPrQrrrr _expand_help _split_linesr&endswithrrrv) r+r help_position help_width action_width action_headertup indent_firstr help_text help_linesrrs r2rzHelpFormatter._format_actionsD3a7 355 }4b99 $t';;a? 66v>> { )&M9C%OMM  < / /&L-GC'#-MLL&M9C%OM(L ; 6;,,.. ))&11I H!..y*EE  Y,JqM)JJKKK&qrrNHHDLLmR-F!FGGGG''--  LL   77?? 9 9I LL,,Y77 8 8 8 8&&&r4c|js8||}|||d\}|Sg}|jdkr||jnO||}|||}|jD]}||d|d|S)Nrcrrr!) rr_metavar_formatterrrrrr&r*)r+rrmetavarrrrs r2rz'HelpFormatter._format_action_invocation1s$ $>>vFFG?t..vw??BBHGNE|q   V23333 @@HH"//@@ %+%:IIMLLMMM;;!GHHHH99U## #r4c|j|jn3|j*d|jD}dd|zn|fd}|S)Nc,g|]}t|Sr<str)rpchoices r2rsz4HelpFormatter._metavar_formatter..MsDDD63v;;DDDr4z{%s},c>ttrSf|zSr6) isinstancetuple) tuple_sizeresults r2rz0HelpFormatter._metavar_formatter..formatRs'&%(( / zJ..r4)rchoicesr*)r+rdefault_metavar choice_strsrrs @r2rz HelpFormatter._metavar_formatterIsn > %^FF ^ 'DDV^DDDKchh{333FF$F / / / / /  r4c|||}|jd|dz}n"|jtkrd|dz}n|jtkr*|d}t |dkrd|z}nd|z}n|jt krd|dz}n|jt krd}n|jtkrd |dz}nw|jtkrd }nd d t|jD}n#t$rtd dwxYwd |||jz}|S)N%srcrrDz [%s [%s ...]]z[%s ...]z %s [%s ...]rz%s ...rtcg|]}dS)r r<)rprs r2rsz.HelpFormatter._format_args..os===A4===r4zinvalid nargs valuer) rrrrrrrrrr TypeErrorrr*)r+rr get_metavarrrformatss r2rzHelpFormatter._format_argsYs}--foFF < KKNN*FF \X % %kk!nn,FF \\ ) )!k!nnG7||q  (72#g- \[ ( ("[[^^3FF \Y & &FF \V # # A.FF \X % %FF B==v|)<)<=== B B B !677TA BXXg&&V\)B)BBF s -D D'ctt||j}t|D]}||tur||=t|D](}t ||dr||j||<)|d*dd|dD}||d<| ||zS)Nrr$rr!c,g|]}t|Sr<r)rpcs r2rsz.HelpFormatter._expand_help..~s$G$G$GSVV$G$G$Gr4) rvarsrKr7rhasattrr$rr*_get_help_string)r+rparamsr0 choices_strs r2rzHelpFormatter._expand_helpusd6ll444LL ! !Dd|x''4LLL 5 5Dvd|Z00 5%d|4t ::i ,))$G$GVI5F$G$G$GHHK +F9 $$V,,v55r4c#K |j}||Ed{V|dS#t$rYdSwxYwr6)_get_subactionsrergAttributeError)r+rget_subactionss r2rz'HelpFormatter._iter_indented_subactionssw #3N LLNNN%~'' ' ' ' ' ' ' ' LLNNNNN     DD sA AAc|jd|}ddl}|||S)Nrr)rZrrtextwrapwrap)r+rr_rs r2rzHelpFormatter._split_linessE'++C66<<>> }}T5)))r4c|jd|}ddl}|||||S)Nrr)initial_indentsubsequent_indent)rZrrrfill)r+rr_rrs r2rzHelpFormatter._fill_textsT'++C66<<>>}}T5,2/577 7r4c|jSr6)rr+rs r2rzHelpFormatter._get_help_string {r4c4|jSr6)destupperr"s r2rz/HelpFormatter._get_default_metavar_for_optionals{  """r4c|jSr6)r%r"s r2rz1HelpFormatter._get_default_metavar_for_positionalr#r4)rDrENr6)r$r=r>r`rergobjectrTr{r~rrrrrryrvrrrrrrrrrrrrrrr<r4r2rrs#$#% ;;;;> :::::6:::>999 ((( 6665555 :::$&&&;;; ^,^,^,@ooobBBB.'.'.'`$$$0 8 6 6 6***777###r4rceZdZ dZdS)r cndfd|dDS)Nrtc3"K|] }|zV dSr6r<)rprrs r2 z9RawDescriptionHelpFormatter._fill_text..s'PPv}PPPPPPr4T)keepends)r* splitlines)r+rr_rs `r2rz&RawDescriptionHelpFormatter._fill_texts8wwPPPP$1O1OPPPPPPr4N)r$r=r>rr<r4r2r r s- QQQQQr4r ceZdZ dZdS)r c*|Sr6)r.)r+rr_s r2rz!RawTextHelpFormatter._split_liness   r4N)r$r=r>rr<r4r2r r s( !!!!!r4r ceZdZ dZdS)rc |j}|d}d|vr1|jtur#ttg}|js |j|vr|dz }|S)Nrtz %(default)z (default: %(default)s))rrrrrrr)r+rrdefaulting_nargss r2rz.ArgumentDefaultsHelpFormatter._get_help_stringse { <D t # #~X--$,l#; (6FLrr<r4r2rrs( r4rceZdZ dZdZdS)r c|jjSr6r#r$r"s r2rz:MetavarTypeHelpFormatter._get_default_metavar_for_optional {##r4c|jjSr6r6r"s r2rzrrr<r4r2r r s7$$$$$$$$r4r c|dS|jrd|jS|jdtfvr|jS|jdtfvr|jS|jr dd|jzdzSdS)N/{r})rr*rrr%r)arguments r2_get_action_namer>st  xx/000  $!1 1 1 tX. . .}  SXXh.///#55tr4ceZdZ dZdZdS)rc<t||_||_dSr6)r> argument_namemessage)r+r=rBs r2r`zArgumentError.__init__s-h77 r4cp|jd}ntd}|t|j|jzS)Nz %(message)sz'argument %(argument_name)s: %(message)s)rBrA)rArrrB)r+rs r2__str__zArgumentError.__str__sH   %"FF@AAFT\+/+=???? ?r4N)r$r=r>r`rDr<r4r2rrs7 ?????r4rceZdZ dS)rN)r$r=r>r<r4r2rr sJDr4rc<eZdZ ddZdZdZddZdS) r NFc ||_||_||_||_||_||_||_||_| |_| |_ dSr6 rr%rconstrr#rrrr) r+rr%rrIrr#rrrrs r2r`zAction.__init__IsO-          r4c(gd}fd|DS)NrHc4g|]}|t|fSr<getattrrpr0r+s r2rsz&Action._get_kwargs..l(>>>wtT**+>>>r4r<r+namess` r2r(zAction._get_kwargs_s0    ?>>>>>>>r4c|jdSr@rr:s r2rzAction.format_usagens"1%%r4c:ttd)Nz.__call__() not defined)NotImplementedErrorrr+parser namespacevaluesrs r2__call__zAction.__call__qs!!$=">">???r4NNNNNFNNr6)r$r=r>r`r(rrZr<r4r2r r s0j, ? ? ?&&&@@@@@@r4r c:eZdZ dfd ZddZdZxZS)rNFc g} |D]N} | | | dr"d| ddz} | | Ot| |d|||||| dS)N----no-rDr) rr%rrr#rrrr)r& startswithsuperr`) r+rr%rr#rrrr_option_stringsr __class__s r2r`zBooleanOptionalAction.__init__vs+ 6 6M  " "= 1 1 1''-- 6 '-*; ; &&}555 *      r4cp||jvr,t||j|d dSdS)Nr_)rsetattrr%r`rVs r2rZzBooleanOptionalAction.__call__sC D/ / / Itym.F.Fw.O.O*O P P P P P 0 /r4c6d|jS)Nz | )r*rr:s r2rz"BooleanOptionalAction.format_usageszz$-...r4)NNNFNNr6)r$r=r>r`rZr __classcell__rcs@r2rrusx<QQQQ///////r4rc8eZdZ dfd ZddZxZS) _StoreActionNFc |dkrtd|"|tkrtdtztt|||||||||| |  dS)Nrznargs 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 constrH)rrrarjr` r+rr%rrIrr#rrrrrcs r2r`z_StoreAction.__init__s A::KLL L  (!2!2?(JKK K lD!!**) +     r4c2t||j|dSr6)rer%rVs r2rZz_StoreAction.__call__s 49f-----r4r[r6r$r=r>r`rZrgrhs@r2rjrjsk :........r4rjc2eZdZ dfd ZddZxZS)_StoreConstActionNFc ftt|||d||||dS)Nr)rr%rrIrrr)rarqr` r+rr%rIrrrrrcs r2r`z_StoreConstAction.__init__sL &&//) 0     r4c<t||j|jdSr6)rer%rIrVs r2rZz_StoreConstAction.__call__s 49dj11111r4NNFNNr6rorhs@r2rqrqsb "22222222r4rqc&eZdZ dfd ZxZS)_StoreTrueActionFNcdtt|||d|||dS)NTrr%rIrrr)rarwr`r+rr%rrrrcs r2r`z_StoreTrueAction.__init__sI %%..) /     r4)FFNr$r=r>r`rgrhs@r2rwrwsH           r4rwc&eZdZ dfd ZxZS)_StoreFalseActionTFNcdtt|||d|||dS)NFry)rar}r`rzs r2r`z_StoreFalseAction.__init__sI &&//) 0     r4)TFNr{rhs@r2r}r}sH           r4r}c8eZdZ dfd ZddZxZS) _AppendActionNFc |dkrtd|"|tkrtdtztt|||||||||| |  dS)Nrznargs for append actions must be != 0; if arg strings are not supplying the value to append, the append const action may be more appropriaterlrH)rrrarr`rms r2r`z_AppendAction.__init__s A::OPP P  (!2!2?(JKK K mT""++) ,     r4ct||jd}t|}||t ||j|dSr6)rMr%rBr&rer+rWrXrYrr9s r2rZz_AppendAction.__call__N 49d33E"" V 49e,,,,,r4r[r6rorhs@r2rrsk :--------r4rc2eZdZ dfd ZddZxZS)_AppendConstActionNFc htt|||d|||||dS)Nr)rr%rrIrrrr)rarr`rss r2r`z_AppendConstAction.__init__ sO  $''00) 1     r4ct||jd}t|}||jt ||j|dSr6)rMr%rBr&rIrers r2rZz_AppendConstAction.__call__2sP 49d33E"" TZ    49e,,,,,r4rur6rorhs@r2rrsb $--------r4rc.eZdZ dfd ZddZxZS) _CountActionNFcdtt|||d|||dS)Nr)rr%rrrr)rarr`rzs r2r`z_CountAction.__init__;sH lD!!**) +     r4clt||jd}|d}t||j|dzdSNrrc)rMr%re)r+rWrXrYrcounts r2rZz_CountAction.__call__Is= 49d33 =E 49eai00000r4)NFNr6rorhs@r2rr9s\       11111111r4rc.eZdZeedffd ZddZxZS) _HelpActionNcbtt||||d|dSNr)rr%rrr)rarr`)r+rr%rrrcs r2r`z_HelpAction.__init__RsE k4  ))) *     r4cV||dSr6) print_helpexitrVs r2rZz_HelpAction.__call__^s% r4r6r$r=r>rr`rZrgrhs@r2rrPs\!      r4rc0eZdZdeedffd ZddZxZS)_VersionActionNz&show program's version number and exitcptt||||d|||_dSr)rarr`version)r+rrr%rrrcs r2r`z_VersionAction.__init__esH nd##,,) -     r4c|j}||j}|}||||t j|dSr6)r_get_formatterr_print_messagery_sysstdoutr)r+rWrXrYrrrks r2rZz_VersionAction.__call__sso, ?nG))++ 7###i3355t{CCC r4r6rrhs@r2rrcs_!>      r4rcXeZdZGddeZedddffd ZdZdZd dZ xZ S) _SubParsersActionceZdZfdZxZS)&_SubParsersAction._ChoicesPseudoActionc|x}}|r|dd|zz }ttj|}|g|||dS)Nrr!)rr%rr)r*rar_ChoicesPseudoActionr`)r+r0aliasesrrr%suprcs r2r`z/_SubParsersAction._ChoicesPseudoAction.__init__sq! !Gd 87TYYw%7%777)>EEC LLD!(  * * * * *r4r{rhs@r2rrs8 * * * * * * * * *r4rFNc ||_||_i|_g|_t t |||t|j|||dS)N)rr%rrrrr) _prog_prefix _parser_class_name_parser_map_choices_actionsrarr`r) r+rr\ parser_classr%rrrrcs r2r`z_SubParsersAction.__init__so!) " " &&//)) 0     r4c |d|jd||d<|dd}||jvr t |t d|z|D]+}||jvr t |t d|z,d|vrF|d}||||}|j||j di|}||j|<|D] }||j|< |S)Nr\rrr<zconflicting subparser: %szconflicting subparser alias: %sr) rrrrrrrrr&r)r+r0kwargsraliasr choice_actionrWs r2 add_parserz_SubParsersAction.add_parsersQ ::f   %(,(9(9(944@F6N**Y++ 4( ( (a(C&D&Dt&KLL L H HE---#!=>>FHHH. V  ::f%%D 55dGTJJM  ! ( ( 7 7 7$#--f--&,d# 2 2E+1D !% ( ( r4c|jSr6)rr:s r2rz!_SubParsersAction._get_subactionss $$r4ct|d}|dd}|jturt||j| |j|}nM#t$r@|d|jd}t d|z}t||wxYw||d\} }t|  D]\} } t|| | |rRt| tgt|t|dSdS)Nrrcr!) parser_namerz5unknown parser %(parser_name)r (choices: %(choices)s))r%rrerKeyErrorr*rrparse_known_argsrr9 setdefault_UNRECOGNIZED_ARGS_ATTRrMr) r+rWrXrYrrr-rrmsg subnamespacekeyr1s r2rZz_SubParsersAction.__call__s_Qi QRRj  9H $ $ Ity+ 6 6 6 +*;7FF + + +#.#yy)>??AADKLLtSCc** *  +%+$;$;K$N$N! k|,,2244 + +JC IsE * * * *  L OO & &'> C C C I6 7 7 > >{ K K K K K L Ls AA Br6) r$r=r>r rrr`rrrZrgrhs@r2rr}s*****v***.<%%%LLLLLLLLr4rceZdZddZdS) _ExtendActionNct||jd}t|}||t ||j|dSr6)rMr%rBrrers r2rZz_ExtendAction.__call__rr4r6)r$r=r>rZr<r4r2rrs(------r4rc$eZdZ ddZdZdZdS)rrrNc>||_||_||_||_dSr6)_mode_bufsize _encoding_errors)r+modebufsizeencodingerrorss r2r`zFileType.__init__s"  ! r4c|dkrdjvr&djvrtjjn tjSt fddDr&djvrtjjn tjSt djz}t| t|jj j j S#t$r+}||d}t d}t||zd}~wwxYw) N-rbc3*K|] }|jvVdSr6)r)rprr+s r2r,z$FileType.__call__..s)44Q$*_444444r4waxzargument "-" with mode %r)filenameerrorz$can't open '%(filename)s': %(error)s)rrstdinbufferanyrrrrrrrOSErrorr)r+stringrerrrBs` r2rZzFileType.__call__s S==dj  ,/4:,=,=tz((4:M4444e44444 &-0DJ->->t{))DKO344tzA oo% 4 DM4> && & 4 4 4 &33D>??G#GdN33 3 4s&C C;&C66C;c|j|jf}d|jfd|jfg}dd|Dd|Dz}t |jd|dS)Nrrr!c8g|]}|dkt|S)r)r')rpr/s r2rsz%FileType.__repr__..s#EEEC3"99d3ii999r4c&g|]\}}||d|S)Nrr<)rpkwr/s r2rsz%FileType.__repr__..s3222gb#!$*,SS1!0r4r r")rrrrr*r#r$)r+rrrargs_strs r2r3zFileType.__repr__sz4=(t~.4<0HI99EE4EEE22222233 ::...99r4)rrNN)r$r=r>r`rZr3r<r4r2rrsK  444(:::::r4rc"eZdZ dZdZdZdS)r c >|D]}t||||dSr6)re)r+rr0s r2r`zNamespace.__init__*s4 . .D D$t - - - - . .r4czt|tstSt|t|kSr6)rr NotImplementedr)r+others r2__eq__zNamespace.__eq__.s1%++ "! !DzzT%[[((r4c||jvSr6)r8)r+rs r2 __contains__zNamespace.__contains__3sdm##r4N)r$r=r>r`rrr<r4r2r r #sF ...))) $$$$$r4r ceZdZfdZdZddZdZdZdZdZ d Z d Z d Z d Z d ZdZddZdZdZdZdZxZS)_ActionsContainerctt|||_||_||_||_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)Nrstore store_const store_true store_falser& append_constrrrparsersrz^-\d+$|^-\d*\.\d+$)rarr` descriptionargument_default prefix_charsconflict_handler _registriesregisterrjrqrwr}rrrrrrr _get_handler_actions_option_string_actions_action_groups_mutually_exclusive_groups _defaultsrWrX_negative_number_matcher_has_negative_number_optionals)r+rrrrrcs r2r`z_ActionsContainer.__init__9s &&//111& 0( 0 hl333 h666 h /@AAA h .>??? h /@AAA h-888 h0BCCC h666 h 444 h >::: h +<=== h-888  &(#!*,'), 4I(J(J%/1+++r4cF|j|i}|||<dSr6)rr)r+ registry_namer1r(registrys r2rz_ActionsContainer.registerns'#..}bAA r4NcD|j|||Sr6)rr)r+rr1rs r2 _registry_getz_ActionsContainer._registry_getrs  .225'BBBr4c |j||jD]}|j|vr||j|_dSr6)rupdaterr%r)r+rrs r2 set_defaultsz_ActionsContainer.set_defaultsxsQ f%%%m 5 5F{f$$!' !4 5 5r4c|jD]}|j|kr|j |jcS|j|dSr6)rr%rrr)r+r%rs r2 get_defaultz_ActionsContainer.get_defaultsNm & &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 | |dn#t$rtd wxYw||S)Nrcrr%z+dest supplied twice for positional argumentrzunknown action ""r#z is not callablez: is a FileType class object, instance of it must be passedrz,length of metavar tuple does not match nargsr<)rrr_get_positional_kwargs_get_optional_kwargsrr_pop_action_classcallablerr#rrrrr  _add_action)r+rrrcharsr% action_classr type_funcs r2rz_ActionsContainer.add_arguments ! @s4yyA~~$q'!*E*A*A P&(( !NOOO0T0$A&AAFF/T.???F F " "&>Dt~%%$(N4$8y!!&2$($9y!--f55  %% F*lllDEE E''''&&vv{FKHH  "" BYYY@AA A  2;))>?? ? 4) * * Q Q##%%2264@@@@ Q Q Q !OPPP Q'''s (E++FcZt|g|Ri|}|j||Sr6)_ArgumentGrouprr&)r+rrrrs r2add_argument_groupz$_ActionsContainer.add_argument_groups;t5d555f55 ""5))) r4c Tt|fi|}|j||Sr6)_MutuallyExclusiveGrouprr&)r+rrs r2add_mutually_exclusive_groupz._ActionsContainer.add_mutually_exclusive_groups3'7777 '..u555 r4c$|||j|||_|jD] }||j|< |jD]=}|j|r!|js|jd>|S)NT) _check_conflictrr& containerrrrmatchr)r+rrs r2r z_ActionsContainer._add_actions V$$$ V$$$$2 @ @M9?D ' 6 6$2 E EM,22=AA E:E7>>tDDD r4c:|j|dSr6)rremover"s r2_remove_actionz _ActionsContainer._remove_actions V$$$$$r4ci}|jD];}|j|vr&td}t||jz|||j< > >!%F:  ::g  , . .9F3J3J!%F: Fb9999r4c@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)optionrzNinvalid option string %(option)r: must start with a character %(prefix_chars)rrcr%z%dest= is required for options like %rrrr$) rrrr&rrlstripreplacer) r+rrrrlong_option_stringsrrr%dest_option_strings r2r z&_ActionsContainer._get_optional_kwargssa ! : :M #t'888"/(,(9;;GHH t,,,  ! !- 0 0 0=!!A%%-*:d>O*O*O#**=999zz&$'' <" 7%8%;""%3A%6"%,,T->??D 6?@@ }!4555<<S))DFnEEEEr4c\|d|}|d||S)Nr)rr)r+rrrs r2r z#_ActionsContainer._pop_action_class:s-Hg..!!(FF;;;r4cd|jz} t||S#t$r'td}t ||jzwxYw)Nz_handle_conflict_%sz%invalid conflict_resolution value: %r)rrMrrr)r+handler_func_namers r2rz_ActionsContainer._get_handler>se1D4II :4!233 3 : : :;<.Ys,%=%=%=)>&3%=%=%=r4)rrr*r)r+rconflicting_actionsrBconflict_strings r2_handle_conflict_errorz(_ActionsContainer._handle_conflict_errorUsk:;23355))%=%=(;%=%=%=>>FGo$=>>>r4c|D][\}}|j||j|d|js|j|\dSr6)rrrrrr)r+rr3rs r2_handle_conflict_resolvez*_ActionsContainer._handle_conflict_resolve^sy&9 8 8 !M6  ! ( ( 7 7 7  ' + +M4 @ @ @( 8 //777 8 8r4r6)r$r=r>r`rrrrrrrr rr"rr r rrr5r7rgrhs@r2rr7sL0101010101j!!!CCCC 555...1(1(1(f  *%%%&<&<&eZdZdfd ZfdZfdZfdZxZS)rNc p|j}|d|j|d|j|d|jt t |j}|dd|i|||_g|_|j |_ |j |_ |j |_ |j |_ |j |_ |j|_dS)Nrrrrr<)rrrrrarr`rrrrrrrr)r+rrrrr super_initrcs r2r`z_ArgumentGroup.__init__os"!9#=>>>~y5666!9#=>>>>4009  55{5f555  %0!* &/&F#",  4 +*3*N'''r4ctt||}|j||Sr6)rarr rr&r+rrcs r2r z_ArgumentGroup._add_actions<~t,,88@@ ""6*** r4ctt|||j|dSr6)rarrrrr<s r2rz_ArgumentGroup._remove_actions> nd##226::: ""6*****r4cntjdtdtj|i|S)Nz&Nesting argument groups is deprecated.rDcategory stacklevel)warningswarnDeprecationWarningrarr+rrrrcs r2rz!_ArgumentGroup.add_argument_groupsC 4'    *uww)4:6:::r4NN)r$r=r>r`r rrrgrhs@r2rrmsOOOOOO, +++++;;;;;;;;;r4rc6eZdZdfd ZdZdZfdZxZS)rFcttt||||_||_dSr6)rarr`r _container)r+rrrcs r2r`z _MutuallyExclusiveGroup.__init__s4 %t,,55i@@@  #r4c|jrtd}t||j|}|j||S)Nz-mutually exclusive arguments must be optional)rrrrIr rr&)r+rrs r2r z#_MutuallyExclusiveGroup._add_actionsW ? "CDDCS// !,,V44 ""6*** r4cn|j||j|dSr6)rIrrrr"s r2rz&_MutuallyExclusiveGroup._remove_actions5 &&v... ""6*****r4cntjdtdtj|i|S)Nz0Nesting mutually exclusive groups is deprecated.rDr?)rBrCrDrarrEs r2rz4_MutuallyExclusiveGroup.add_mutually_exclusive_groupsC >'    4uww3TDVDDDr4)F)r$r=r>r`r rrrgrhs@r2rrs}$$$$$$ +++EEEEEEEEEr4rc eZdZ ddddgedddddddf fd ZdZdZdZd Zd Z d#d Z d#d Z d Z dZ dZdZdZdZdZdZd#dZd#dZdZdZdZdZdZdZd$dZd$dZd$dZd%d!Zd"Z xZ!S)&rNrrTc tt|j}|||| | |/tjt 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$rYFwxYwdS) N)rrrrrzpositional argumentsoptionsc|Sr6r<)rs r2identityz)ArgumentParser.__init__..identitysMr4r#rhrDrzshow this help message and exit)rrr)rarr`_ospathbasenamerargvr\repilogformatter_classfromfile_prefix_charsadd_help allow_abbrev exit_on_errorrr _positionals _optionals _subparsersrrrr"rrr)r+r\rrrWparentsrXrrYrrrZr[r\ superinit add_grouprQdefault_prefixrldefaultsrcs r2r`zArgumentParser.__init__s.$//8  k+#3#3 5 5 5 5 <8$$TYq\22D   .%:"  (*+ %Ia(>&?&?@@#)AiLL11    fdH---!$| 3 3a = ;   s"N1$4V$;x899  ; ; ;  0 0F  ' ' / / / 0!+%%h////"      0 0sE<< F F c(gd}fd|DS)N)r\rrrXrrZc4g|]}|t|fSr<rLrNs r2rsz.ArgumentParser._get_kwargs..rOr4r<rPs` r2r(zArgumentParser._get_kwargs s0   ?>>>>>>>r4c |j"|td|dt |d|vsd|vrbt|dd}t|dd}||||_n |j|_|du| }| }|j }| |j ||d||d<||d}|d d gi|}|j||S) Nz(cannot have multiple subparser argumentsrrr subcommandsr\rtrrr<)r_rrrr#rrr]rr_get_positional_actionsrrrryrr r ) r+rrrrkrr parsers_classrs r2add_subparserszArgumentParser.add_subparserss   ' JJqCDD E E E .$t**555 f    7 7fjj-8899EFJJ}d;;<.@s0***(****r4rr:s r2_get_optional_actionsz$ArgumentParser._get_optional_actions?s%**"m*** *r4c$d|jDS)Nc g|] }|j | Sr<rSros r2rsz:ArgumentParser._get_positional_actions..Es0...,....r4rpr:s r2riz&ArgumentParser._get_positional_actionsDs%.."m... .r4c|||\}}|r:td}||d|z|SNzunrecognized arguments: %sr)rrrr*r+rrrXrVrs r2 parse_argszArgumentParser.parse_argsLsW**4;; d  -011C JJsSXXd^^+ , , , r4c|tjdd}nt|}|t}|jD]N}|jt ur>t||js)|jt urt||j|jO|j D].}t||st|||j |/|j rT | ||\}}nR#t$r,}|t|Yd}~n!d}~wwxYw| ||\}}t|t r=|t%|t t'|t ||fSrb)rrVr7r rr%rrrrerr\_parse_known_argsrrrrrrMdelattr)r+rrrXrr%errs r2rzArgumentParser.parse_known_argsSs <9QRR=DD::D  ! Im H HF{(**y&+66H~X55 6;GGGN ? ?D9d++ ? 4)=>>>   F %"&"8"8y"I"I 44  % % % 3s88$$$$$$$$ %#44T9EEOIt 95 6 6 8 KK +BCC D D D I6 7 7 7$s C%% D/"DDc n !jijD]v}|j}t |jD]X\}}|g}||d||||dzdYwig}t} t | D]q\}} | dkr0|d| D]} |d; | } | d} n| |<d} || rd |ttdfd !!fd} !fd }gd rt}nd } |krmt fd D} |kr| }| kr| ;| vr! |}|| |  |km| }|dg}jD]}|vr|jr#|t#|0|jzt'|jt(r`t+|jrK|jt/|jur/t1|j||j|r8t7d d |zjD]d}|jr[|jD]}|vrnL d|jD}t7d}|d |zefS)Nrcr^rAOrtch | ||}||jurc ||gD]7}| vr1t d}t |}t |||z8|tur| ||dSdS)Nznot allowed with argument %s)r _get_valuesrrrr>rr) rargument_stringsrargument_valuesconflict_actionr action_nameaction_conflictsrX seen_actionsseen_non_default_actionsr+s r2 take_actionz5ArgumentParser._parse_known_args..take_actions   V $ $ $"..v7GHHO fn44(,,V444'7';';FB'G'GGGO&*BBB >??&6&G&G +FC+4EFFFCh..tYGGGGG/.r4c|}|\}}}j}g} | ||dzS|||d}j}|dkr|d|vru|dkro||g|f|d} | |dz}|ddpd} j} || vr | |}| }nt d} t || |z|dkr!|dz} |g}||||fngt d} t || |z|dz}|d}|||}||z} || }||||fnJ|D]\}}}|||| S)NTrcr}rrtzignored explicit argument %r)_match_argumentr&rrrr) start_index option_tuplerr explicit_argmatch_argument action_tuples arg_countr charnew_explicit_arg optionals_maprstoprrrselected_patternsr-arg_strings_patternextrasoption_string_indicesr+rs r2consume_optionalz:ArgumentParser._parse_known_args..consume_optionals'1=L2> /FM<"1NM9 >MM+k":;;;&?* + .vs ; ;I !-E!Q)!,E99(B..%,,fb--HIII,Q/(,|A(> +7+;+Ct((,(C (M99%2=%AF+;LL"#$B"C"CC"/l8J"K"KK#a*Q ,~%,,fdM-JKKK  >??+FC,4FGGG (!OE(;EFF(C% .v7H I II 9,D&uTz2D!((&$ )FGGGs9 |0= 9 9+m FD-8888Kr4c j}|d}| |}t |D]#\}}|||z}||z } ||$ t|d dd<|Sr6)_match_arguments_partialzipr) r match_partialselected_pattern arg_countsrrrrr-rrr+rs r2consume_positionalsz=ArgumentParser._parse_known_args..consume_positionalss 9M2;<<@ &{4DEEJ&)j%A%A * *! "; i0G#GHy(  FD)))))Z)9)9:KN r4rrc g|] }|k| Sr<r<)rprrs r2rsz4ArgumentParser._parse_known_args..+s.,),),)K'''''r4z(the following arguments are required: %sr!cHg|]}|jtut| Sr<)rrr>ros r2rsz4ArgumentParser._parse_known_args..js7===!' & 8 ; ;.f55 ; ; ;r4z#one of the arguments %s is requiredrr6)rY_read_args_from_filesrrrrriterr&_parse_optionalr*rrirNrMrrr>rrrrr%rMre _get_valuerr)"r+r-rXr!rr mutex_action conflictsarg_string_pattern_partsarg_strings_iter arg_stringrpatternrrmax_option_string_indexnext_option_string_indexpositionals_end_indexstrings stop_indexrequired_actionsrrrQrrrrrrrrrrs"``` @@@@@@@@@r2ryz ArgumentParser._parse_known_argsysU  % 144[AAK: 8 8K'6M#,[-G#H#H 8 8<,77 bII   rr!2333  q1uvv!67777 8!##%  ,,&'788 9 9MAzT!!(//444"299J,33C88889 $33J?? '!GG/;)!,!G(//8888!gg&>??uu #&55  H H H H H H H H H H*J J J J J J J J J J \2244          (  )&)*?&@&@ # #&( #444(+,),),),)2,),),)(*(* $666(;(;K(H(H%);66"7K"7K"777%k2J&JK g&&&6 +*;77K5444:)(55   k*++.///m I IF\))? I$++,3773 6;773')V[*I*III 6; $ G GIII  4 JJqCDDyy!1223 4 4 44 6 6E~ 6#2 6 6F!999: ==+0+?===EABBCJJsSXXe__4555&  r4c<g}|D]}|r|d|jvr||* t|dd5}g}|D]/}||D]}||0||}||dddn #1swxYwY#t$r-}| t|Yd}~d}~wwxYw|Sr) rYr&rreadr.convert_arg_line_to_argsrrrrr)r+r-new_arg_stringsr args_filearg_liner/r{s r2rz$ArgumentParser._read_args_from_filesss% ) )J )Ad6P!P!P&&z2222 )jn--<&( (1(8(8(C(C(E(E88H'+'D'DX'N'N88 + 2 23 7 7 7 78&*&@&@&M&M '..{;;; <<<<<<<<<<<<<<<)))JJs3xx(((((((()s<C"BC C"C C"C C"" D,"DDc|gSr6r<)r+rs r2rz'ArgumentParser.convert_arg_line_to_argss zr4c||}tj||}|dtdttdt tdi}||j}|tdd|j|jz}t||t| dS)Nzexpected one argumentzexpected at most one argumentzexpected at least one argumentzexpected %s argumentzexpected %s argumentsrc) _get_nargs_patternrWrrrrrrrrrr)r+rr nargs_patternr nargs_errorsrs r2rzArgumentParser._match_arguments//77  -)<== =a/00!;<<Q?@@L ""6<00C{56%|--/5|< ,, ,5;;q>>"""r4c8g}tt|ddD]w}|d|}dfd|D}tj||}|3|d|Dnx|S)Nrrrtc:g|]}|Sr<)r)rprr+s r2rsz;ArgumentParser._match_arguments_partial..s7<<<#) $66v>><<.sHHHvs6{{HHHr4)rrr*rWrrr)r+rrrr actions_slicerrs` r2rz'ArgumentParser._match_arguments_partialss7||Q++  A#BQBKMgg<<<<-:<<<==GIg':;;E  HHHHHIII!  r4cr|sdS|d|jvrdS||jvr|j|}||dfSt|dkrdSd|vr4|dd\}}||jvr|j|}|||fS||}t|dkrLdd|D}||d}t d}|||znt|dkr|\} | S|j |r |j sdSd|vrdSd|dfS) Nrrcrr!cg|]\}}}| Sr<r<)rprrrs r2rsz2ArgumentParser._parse_optional..s4!J!J!J7FM<"/!J!J!Jr4)r&matchesz4ambiguous option: %(option)s could match %(matches)sr) rrrsplit_get_option_tuplesr*rrrrr) r+rrrr option_tuplesrOrrrrs r2rzArgumentParser._parse_optionals 4!} 1114 4 4 40}||r'|j|}|||f}||?n|d|vr|d|vr|}d}|dd}|dd} |jD]l}||kr(|j|}||| f}||0||r'|j|}|||f}||mn%|td|z|S)NrrcrrDzunexpected option string: %s)rr[rrr`r&rr) r+rrr  option_prefixrrrshort_option_prefixshort_explicit_args r2rz!ArgumentParser._get_option_tupless!  u $ $q)9U)B)B +-''2?2E2Ec12M2M/M<<$1M#'L%)%@++M$// >>+!%!<]!K$m\A c*** 1  & &=+;5+H+H)ML"/"3 !.qrr!2 !%!< ' '  $777!8GF -1CCCMM#&&&&"--m<<'!8GF -=CMM#&&& ' JJq788=H I I I r4cb|j}|d}no|tkrd}na|tkrd}nS|tkrd}nE|tkrd}n7|t krd}n)|t krd}ndd d |zz}|jr,| d d }| d d }|S) Nz(-*A-*)z(-*A?-*)z (-*[A-]*)z (-*A[A-]*)z([-AO]*)z (-*A[-AO]*)z(-*-*)z(-*%s-*)z-*r}rtr) rrrrrrrr*rr()r+rrrs r2rz!ArgumentParser._get_nargs_pattern s  =%MMh  &MMl " "'MMk ! !(MMi  &MMf__)MMh  $MM'3;)?)??M   ;)11$;;M)11#r::Mr4c|||\}}|r:td}||d|z|Sru)parse_known_intermixed_argsrrr*rvs r2parse_intermixed_argsz$ArgumentParser.parse_intermixed_argsM sW55dIFF d  -011C JJsSXXd^^+ , , , r4c | d D}|rtd|djz fd|jDrtd |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<)rrrros r2rsz>ArgumentParser.parse_known_intermixed_args..b s3 5 5 5  333333r4z3parse_intermixed_args: positional arg with nargs=%src:g|]}|jD] }|v|jSr<)rr%)rprrrs r2rsz>ArgumentParser.parse_known_intermixed_args..h sI I I IE. I I&K2G2G K2G2G2G2Gr4z;parse_intermixed_args: positional in mutuallyExclusiveGroup)rCzDo not expect z in F)rir rrrr save_nargsrr save_defaultrrr%rMrBrCrzrqr save_required) r+rrrXa save_usagerremaining_argsrCrrrrs @r2rz*ArgumentParser.parse_known_intermixed_argsT sD2244  5 5+ 5 5 5  9--.qTZ899 9 I I I IT%D I I I 7677 7. $J 9:%!%!2!2!4!4QRR!8DJ)..F(. F%#+FL*0.F'%-FNN,0,A,A$BK-M-M) >)88F 6;778 ' 6; ? ? C C111111iiPQQQ 6;777 8*99F#)#4FL%+%8FNN9k99F#)#4FL%+%8FNN92244I 9(,,F+1?F(&+FOO!<++E*/.E'%*ENN$($9$9.:C%E%E! 6(;;F&,&:FOO!<99E%*%8ENN9(;;F&,&:FOO!<99E%*%8ENN99$DJJDJ # # # #&  s>$I,CE%I%FIAH*(I)H;;I Icjttfvr' |dn#t$rYnwxYw|sijt krYjrj}nj}t|tr, |} |n3|s?jtkr/js(jj}n|} |nt|dkrAjdt fvr1|\} |} |njtkrfd|D}n~jtkr,fd|D} |dnBjtkrt}n*fd|D}|D]} ||S)Nr^rcc<g|]}|Sr<rrpvrr+s r2rsz.ArgumentParser._get_values.. 'EEEAT__VQ//EEEr4c<g|]}|Sr<rrs r2rsz.ArgumentParser._get_values.. rr4rc<g|]}|Sr<rrs r2rsz.ArgumentParser._get_values.. rr4)rrrrrrrrIrrrr _check_valuerrr)r+rr-r1rrs`` r2rzArgumentParser._get_values sA < 2 2 2 ""4((((    * -v|x77$ ' %%% 166!!&%000 -&,,">">'#?~)#   fe , , , ,   " "v|h7G'G'G%KJOOFJ77E   fe , , , ,\Y & &EEEEEEEEEE\V # #EEEEEEEEE   feAh / / / /\X % %EEFEEEEEEEE - -!!&!,,,, s / <<c4|d|j|j}t|s"td}t |||z ||}n#t $rL}t |jdt|j}t|}t ||d}~wttf$rPt |jdt|j}||d}td}t |||zwxYw|S)Nr#z%r is not callabler$)r#r1z!invalid %(type)s value: %(value)r) rr#r rrrrMr'rr r) r+rrrrrr{r0rrs r2rzArgumentParser._get_value s*&&vv{FKHH  "" 9())Ci88 8 4Yz**FF! - - -6; D4E4EFFDc((C,, ,:& 4 4 46; D4E4EFFD :66D788Cd 33 3  4 s A D*AB11A$Dc|j[||jvrT|dtt|jd}t d}t |||zdSdS)Nr!)r1rz3invalid choice: %(value)r (choose from %(choices)s))rr*rr'rr)r+rr1rrrs r2rzArgumentParser._check_value sr > %%v~*E*E"#yyT6>)B)BCCEEDIJJCd 33 3 & %*E*Er4c|}||j|j|j|Sr6)rrrrrry)r+rks r2rzArgumentParser.format_usage sK'')) DJ  ; = = =$$&&&r4c|}||j|j|j||j|jD]d}||j ||j| |j | e||j |Sr6)rrrrrrrrr~rrrrrWry)r+rk action_groups r2ryzArgumentParser.format_help s''))  DJ  ; = = = 4+,,,!/ $ $L  # #L$6 7 7 7   |7 8 8 8  # #L$? @ @ @  ! ! # # # # 4;'''$$&&&r4c8||jS)Nr)rXr\r:s r2rzArgumentParser._get_formatter s###333r4cr| tj}|||dSr6)rrrrr+files r2 print_usagezArgumentParser.print_usage! s6 <;D D--//66666r4cr| tj}|||dSr6)rrrryrs r2rzArgumentParser.print_help& s6 <;D D,,..55555r4c|r>|p tj} ||dS#ttf$rYdSwxYwdSr6)rstderrwriterr)r+rBrs r2rzArgumentParser._print_message+ sd  &4;D  7#####"G,       s )>>rcr|r ||tjtj|dSr6)rrrr)r+statusrBs r2rzArgumentParser.exit6 s8  6    5 5 5 &r4c |tj|j|d}|dt d|zdS)N)r\rBrDz%(prog)s: error: %(message)s )rrrr\rr)r+rBrrs r2rzArgumentParser.error; sV  %%% g66 !Q7884?@@@@@r4rFr6)rN)"r$r=r>rr`r(rkr rqrirwrryrrrrrrrrrrrrrryrrrrrrrgrhs@r2rrsM,!!.!'+"&")"#=0=0=0=0=0=0D ? ? ?>*** ...$$$$Lx!x!x!t2###, 8&8&8&t+++Z+++bH!H!H!H!Z666p4444''' '''.444 7777 6666  A A A A A A Ar4r)2 __version____all__osrSrerWsysrrBrrrrrrrrrrr(rrBrr r rr r> Exceptionrrr rrjrqrwr}rrrrrrrrr rrrrr<r4r2rs;z    ,********      . v>   "DDDDDFDDDNQQQQQ-QQQ!!!!!6!!!M: $ $ $ $ $} $ $ $&   ?????I???(        \@\@\@\@\@ \@\@\@~$/$/$/$/$/F$/$/$/N . . . . .6 . . .F22222222.(")"#-#-#-#-#-F#-#-#-L--------6111116111.&&V4bLbLbLbLbLbLbLbLH-----M---1:1:1:1:1:v1:1:1:n$$$$$ $$$(s8s8s8s8s8s8s8s8l ';';';';';&';';';TEEEEEnEEE8SASASASASA%'8SASASASASAr4