fb 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"DLDJJJr4c|j|j|jj}|d|jD}|j|j|sdS|jturA|j:|jj}tdt|jz}d|d|fz}nd}|d||dgS)Ncg|] \}}|| Sr<r<).0funcargss r2 z6HelpFormatter._Section.format_help..s"GGGjdDddDkGGGr4z %(heading)s:)rm%*s%s  ) rlrkre _join_partsr9rgrmrrQ_dict)r+r* item_helpcurrent_indent heading_textrms r2 format_helpz"HelpFormatter._Section.format_helps{&&&(((>-DGGDJGGGHHI{&&&((( r|8++ 0H!%!? 004 3M3M3MM #~r<&HH4w 4899 9r4r6)r$r=r>r`r}r<r4r2rTris7      : : : : :r4rTcH|jj||fdSr6)rVr9r&)r+rqrrs r2 _add_itemzHelpFormatter._add_items& #**D$<88888r4c||||j|}||jg||_dSr6)rerTrVrr})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 rv)rUr}r[substrip)r+rs r2r}zHelpFormatter.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 r2rwzHelpFormatter._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..FsCCCACaCCCr4z%\(.*?\)+(?=\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_linesZsED)#&v;;?#&v;;? %22#a<#d))3j@@T@!LL#((4..)@AAA#%D'*6{{QH D))) CIIM1> Vchhtnn%<===)#(8CKKLL#9a Lr4g?rcrvrr6) rxryrKoption_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_usages} * )* )E' 9 !7!7!7888& ) e&:1&=>>&))=%>%>"0059%)===/0,"'"6::%))&111!;(22494,>AY,Y)0!  >/ G++#ENNNd2NNNN-0GEN'>>#CLLLC/LLLL+.GCLL.22 G++#ENNNd2NNNN-0GEN'>>#CLLLC/LLLL+.GCL"519c22))%( I    N"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)ryrKrNrPrQ _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) NrDrrtruz %*s%-*s rrcrv)rMrSrOrNrPrQrrrr _expand_help _split_linesr&endswithrrrw) 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_invocation4s$ $>>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..PsDDD63v;;DDDr4z{%s},c>ttrSf|zSr6) isinstancetuple) tuple_sizeresults r2rz0HelpFormatter._metavar_formatter..formatUs'&%(( / zJ..r4)rchoicesr*)r+rdefault_metavar choice_strsrrs @r2rz HelpFormatter._metavar_formatterLsn > %^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<)rprxs r2rsz.HelpFormatter._format_args..rs===A4===r4zinvalid nargs valuer) rrrrrrrrrr TypeErrorrr*)r+rr get_metavarrrformatss r2rzHelpFormatter._format_args\s}--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) ryvarsrKr7rhasattrr$rr*_get_help_string)r+rparamsr0 choices_strs r2rzHelpFormatter._expand_helpxsd6ll444LL ! !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`rergobjectrTrrrrrrrr}rwrrrrrrrrrrrrrrr<r4r2rrs#$#% ;;;;> :::::6:::@999 ((( 6665555 :::$&&&;;; ^,^,^,@qqqfBBB.'.'.'`$$$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)r0)r+rr_s r2rz!RawTextHelpFormatter._split_liness   r4N)r$r=r>rr<r4r2r r s( !!!!!r4r ceZdZ dZdS)rc |j}|d}d|vr>|jtur0ttg}|js |j|vr|tdz }|S)Nrtz %(default)z (default: %(default)s))rrrrrrrrx)r+rrdefaulting_nargss r2rz.ArgumentDefaultsHelpFormatter._get_help_stringsm { <D t # #~X--$,l#; (9FLrr<r4r2rrs( r4rceZdZ dZdZdS)r c|jjSr6r#r$r$s r2rz:MetavarTypeHelpFormatter._get_default_metavar_for_optional {##r4c|jjSr6r8r$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?rDs r2r`zArgumentError.__init__s-h77 r4cp|jd}ntd}|t|j|jzS)Nz %(message)sz'argument %(argument_name)s: %(message)s)rDrC)rCrxryrD)r+rs r2__str__zArgumentError.__str__sH   %"FF@AAFT\+/+=???? ?r4N)r$r=r>r`rFr<r4r2rrs7 ?????r4rceZdZ dS)rN)r$r=r>r<r4r2rrsJDr4rc<eZdZ ddZdZdZddZdS) r NFc ||_||_||_||_||_||_||_||_| |_| |_ dSr6 rr'rconstrr#rrrr) r+rr'rrKrr#rrrrs r2r`zAction.__init__LsO-          r4c(gd}fd|DS)NrJc4g|]}|t|fSr<getattrrpr0r+s r2rsz&Action._get_kwargs..o(>>>wtT**+>>>r4r<r+namess` r2r(zAction._get_kwargsbs0    ?>>>>>>>r4c|jdSr@rr:s r2rzAction.format_usageqs"1%%r4c:ttd)Nz.__call__() not defined)NotImplementedErrorrxr+parser namespacevaluesrs r2__call__zAction.__call__ts!!$=">">???r4NNNNNFNNr6)r$r=r>r`r(rr\r<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__ys+ 6 6M  " "= 1 1 1''-- 6 '-*; ; &&}555 *      r4cp||jvr,t||j|d dSdS)Nra)rsetattrr'rbrXs r2r\zBooleanOptionalAction.__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`r\r __classcell__res@r2rrxsx<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 constrJ)rrrcrlr` r+rr'rrKrr#rrrrres r2r`z_StoreAction.__init__s A::KLL L  (!2!2?(JKK K lD!!**) +     r4c2t||j|dSr6)rgr'rXs r2r\z_StoreAction.__call__s 49f-----r4r]r6r$r=r>r`r\rirjs@r2rlrlsk :........r4rlc2eZdZ dfd ZddZxZS)_StoreConstActionNFc ftt|||d||||dS)Nr)rr'rrKrrr)rcrsr` r+rr'rKrrrrres r2r`z_StoreConstAction.__init__sL &&//) 0     r4c<t||j|jdSr6)rgr'rKrXs r2r\z_StoreConstAction.__call__s 49dj11111r4NNFNNr6rqrjs@r2rsrssb "22222222r4rsc&eZdZ dfd ZxZS)_StoreTrueActionFNcdtt|||d|||dS)NTrr'rKrrr)rcryr`r+rr'rrrres r2r`z_StoreTrueAction.__init__sI %%..) /     r4)FFNr$r=r>r`rirjs@r2ryrysH           r4ryc&eZdZ dfd ZxZS)_StoreFalseActionTFNcdtt|||d|||dS)NFr{)rcrr`r|s r2r`z_StoreFalseAction.__init__sI &&//) 0     r4)TFNr}rjs@r2rrsH           r4rc8eZdZ 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 appropriaternrJ)rrrcrr`ros r2r`z_AppendAction.__init__s A::OPP P  (!2!2?(JKK K mT""++) ,     r4ct||jd}t|}||t ||j|dSr6)rOr'rBr&rgr+rYrZr[rr9s r2r\z_AppendAction.__call__N 49d33E"" V 49e,,,,,r4r]r6rqrjs@r2rrsk :--------r4rc2eZdZ dfd ZddZxZS)_AppendConstActionNFc htt|||d|||||dS)Nr)rr'rrKrrrr)rcrr`rus r2r`z_AppendConstAction.__init__#sO  $''00) 1     r4ct||jd}t|}||jt ||j|dSr6)rOr'rBr&rKrgrs r2r\z_AppendConstAction.__call__5sP 49d33E"" TZ    49e,,,,,r4rwr6rqrjs@r2rr!sb $--------r4rc.eZdZ dfd ZddZxZS) _CountActionNFcdtt|||d|||dS)Nr)rr'rrrr)rcrr`r|s r2r`z_CountAction.__init__>sH lD!!**) +     r4clt||jd}|d}t||j|dzdSNrrc)rOr'rg)r+rYrZr[rcounts r2r\z_CountAction.__call__Ls= 49d33 =E 49eai00000r4)NFNr6rqrjs@r2rr<s\       11111111r4rc.eZdZeedffd ZddZxZS) _HelpActionNcbtt||||d|dS)Nrrr'rrr)rcrr`)r+rr'rrres r2r`z_HelpAction.__init__UsE k4  ))) *     r4cV||dSr6) print_helpexitrXs r2r\z_HelpAction.__call__as% r4r6r$r=r>rr`r\rirjs@r2rrSs\!      r4rc0eZdZdeedffd ZddZxZS)_VersionActionNc|td}tt||||d|||_dS)Nz&show program's version number and exitrr)rxrcrr`version)r+rrr'rrres r2r`z_VersionAction.__init__hs[ <=>>D nd##,,) -     r4c|j}||j}|}||||t j|dSr6)r_get_formatterr_print_messager}_sysstdoutr)r+rYrZr[rrrks r2r\z_VersionAction.__call__xso, ?nG))++ 7###i3355t{CCC r4r6rrjs@r2rrfs_!  r4rcXeZdZGddeZedddffd ZdZdZd dZ xZ S) _SubParsersActionceZdZfdZxZS)&_SubParsersAction._ChoicesPseudoActionc|x}}|r|dd|zz }ttj|}|g|||dS)Nrr!)rr'rr)r*rcr_ChoicesPseudoActionr`)r+r0aliasesrrr'supres r2r`z/_SubParsersAction._ChoicesPseudoAction.__init__sq! !Gd 87TYYw%7%777)>EEC LLD!(  * * * * *r4r}rjs@r2rrs8 * * * * * * * * *r4rFNc ||_||_i|_g|_t t |||t|j|||dS)N)rr'rrrrr) _prog_prefix _parser_class_name_parser_map_choices_actionsrcrr`r) r+rr\ parser_classr'rrrres 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) rrrrrrxrrr&r)r+r0kwargsraliasr choice_actionrYs 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'rrgrKeyErrorr*rxrparse_known_argsrr9 setdefault_UNRECOGNIZED_ARGS_ATTRrOr) r+rYrZr[rrr-rrmsg subnamespacekeyr1s r2r\z_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`rrr\rirjs@r2rrs*****v***.<%%%LLLLLLLLr4rceZdZddZdS) _ExtendActionNct||jd}t|}||t ||j|dSr6)rOr'rBrrgrs r2r\z_ExtendAction.__call__rr4r6)r$r=r>r\r<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)rrstdinbufferanyrrxrrrrrOSErrorr)r+stringrerrrDs` r2r\zFileType.__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`r\r3r<r4r2rrsK  444(:::::r4rc"eZdZ dZdZdZdS)r c >|D]}t||||dSr6)rg)r+rr0s r2r`zNamespace.__init__/s4 . .D D$t - - - - . .r4czt|tstSt|t|kSr6)rr NotImplementedr)r+others r2__eq__zNamespace.__eq__3s1%++ "! !DzzT%[[((r4c||jvSr6)r8)r+rs r2 __contains__zNamespace.__contains__8sdm##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+$)rcrr` descriptionargument_default prefix_charsconflict_handler _registriesregisterrlrsryrrrrrrrr _get_handler_actions_option_string_actions_action_groups_mutually_exclusive_groups _defaultsrWrX_negative_number_matcher_has_negative_number_optionals)r+rrrrres r2r`z_ActionsContainer.__init__>s &&//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.registerss'#..}bAA r4NcD|j|||Sr6)rr)r+rr1rs r2 _registry_getz_ActionsContainer._registry_getws  .225'BBBr4c |j||jD]}|j|vr||j|_dSr6)rupdaterr'r)r+rrs r2 set_defaultsz_ActionsContainer.set_defaults}sQ 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 r2rz_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 %rrrxr&) rrxrr&rrlstripreplacery) 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)rrOrrxr)r+handler_func_namers r2rz_ActionsContainer._get_handlerCse1D4II :4!233 3 : : :;<.^s,%=%=%=)>&3%=%=%=r4)rrr*r)r+rconflicting_actionsrDconflict_strings r2_handle_conflict_errorz(_ActionsContainer._handle_conflict_errorZsk:;23355))%=%=(;%=%=%=>>FGo$=>>>r4c|D][\}}|j||j|d|js|j|\dSr6)rrrrrr)r+rr5rs r2_handle_conflict_resolvez*_ActionsContainer._handle_conflict_resolvecsy&9 8 8 !M6  ! ( ( 7 7 7  ' + +M4 @ @ @( 8 //777 8 8r4r6)r$r=r>r`rrrrrrrrrr$r r r rrr7r9rirjs@r2rr<sL0101010101j!!!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<)rrrrrcrr`r rrrrrrr)r+rr rrr super_initres r2r`z_ArgumentGroup.__init__ts"!9#=>>>~y5666!9#=>>>>4009  55{5f555  %0!* &/&F#",  4 +*3*N'''r4ctt||}|j||Sr6)rcrrrr&r+rres r2rz_ArgumentGroup._add_actions<~t,,88@@ ""6*** r4ctt|||j|dSr6)rcrrrrr>s r2rz_ArgumentGroup._remove_actions> nd##226::: ""6*****r4cntjdtdtj|i|S)Nz&Nesting argument groups is deprecated.rDcategory stacklevel)warningswarnDeprecationWarningrcrr+rrrres r2rz!_ArgumentGroup.add_argument_groupsC 4'    *uww)4:6:::r4NN)r$r=r>r`rrrrirjs@r2rrrsOOOOOO, +++++;;;;;;;;;r4rc6eZdZdfd ZdZdZfdZxZS)rFcttt||||_||_dSr6)rcrr`r _container)r+rrres r2r`z _MutuallyExclusiveGroup.__init__s4 %t,,55i@@@  #r4c|jrtd}t||j|}|j||S)Nz-mutually exclusive arguments must be optional)rrxrrKrrr&)r+rrs r2rz#_MutuallyExclusiveGroup._add_actionsW ? "CDDCS// !,,V44 ""6*** r4cn|j||j|dSr6)rKrrrr$s r2rz&_MutuallyExclusiveGroup._remove_actions5 &&v... ""6*****r4cntjdtdtj|i|S)Nz0Nesting mutually exclusive groups is deprecated.rDrA)rDrErFrcrrGs r2rz4_MutuallyExclusiveGroup.add_mutually_exclusive_groupsC >'    4uww3TDVDDDr4)F)r$r=r>r`rrrrirjs@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)rcrr`_ospathbasenamerargvr\repilogformatter_classfromfile_prefix_charsadd_help allow_abbrev exit_on_errorrrx _positionals _optionals _subparsersrrrr$rrr)r+r\rrrYparentsrZrr[rrr\r]r^ superinit add_grouprSdefault_prefixrldefaultsres 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\rrrZrr\c4g|]}|t|fSr<rNrPs r2rsz.ArgumentParser._get_kwargs..rQr4r<rRs` r2r(zArgumentParser._get_kwargss0   ?>>>>>>>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 argumentsrr r subcommandsr\rtrrr<)rarrxrr#rrr_rr_get_positional_actionsrrrr}rr r) r+rr rrkrr parsers_classrs r2add_subparserszArgumentParser.add_subparserss   ' JJqCDD E E E .$t**555 f    7 7fjj-8899EFJJ}d;;<.Es0***(****r4rr:s r2_get_optional_actionsz$ArgumentParser._get_optional_actionsDs%**"m*** *r4c$d|jDS)Nc g|] }|j | Sr<rUrqs r2rsz:ArgumentParser._get_positional_actions..Js0...,....r4rrr:s r2rkz&ArgumentParser._get_positional_actionsIs%.."m... .r4c|||\}}|r:td}||d|z|SNzunrecognized arguments: %sr)rrxrr*r+rrrZrXrs r2 parse_argszArgumentParser.parse_argsQsW**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)rrXr7r rr'rrrrgrr^_parse_known_argsrrrrrrOdelattr)r+rrrZrr'errs r2rzArgumentParser.parse_known_argsXs <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_valuesrrrxr@rr) rargument_stringsrargument_valuesconflict_actionr action_nameaction_conflictsrZ 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| vr|dkr|s |d| vr"td} t || |z||g|f|d} | |dz}j} || vr5| |}|dd}|sdx}}n|ddkr d}|dd}nd}n| |z|dz} n|dkr!|dz} |g}||||fngtd} t || |z|dz}|d}|||}||z} || }||||fn|D]\}}}|||| S)NTrcrrrtzignored explicit argument %rr)_match_argumentr&rrxrr) start_index option_tuplerrsep explicit_argmatch_argument action_tuples arg_countrrchar optionals_mapstoprrrselected_patternsr-arg_strings_patternextrasoption_string_indicesr+rs r2consume_optionalz:ArgumentParser._parse_known_args..consume_optionals1=L7C 4FM3 "1NMB >MM+k":;;;&?* + .vs ; ;I !-E!Q)!,E99(B..L,q/U":":"#$B"C"CC"/l8J"K"KK%,,fb--HIII,Q/(,|A(> (,(C (M99%2=%AF+7+;L#/)59 9ll!-aC!7!7&)/;ABB/? &("MM$*=>>>#.?D!#a*Q ,~%,,fdM-JKKK  >??+FC,4FGGG (!OE(;EFF(C% .v7H I II 9,D&uTz2D!((&$ )FGGGEB N0= 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..9s.,),),)K'''''r4z(the following arguments are required: %sr!cHg|]}|jtut| Sr<)rrr@rqs r2rsz4ArgumentParser._parse_known_args..xs7===!' & 8 ; ;.f55 ; ; ;r4z#one of the arguments %s is requiredrr6)r[_read_args_from_filesrrrrriterr&_parse_optionalr*rrkrNrMrrr@rrrrr'rOrg _get_valuerrx)"r+r-rZr#rr mutex_action conflictsarg_string_pattern_partsarg_strings_iter arg_stringrpatternrrmax_option_string_indexnext_option_string_indexpositionals_end_indexstrings stop_indexrequired_actionsrrrSrrrrrrrrrrs"``` @@@@@@@@@r2r{z ArgumentParser._parse_known_args~sU  % 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*S S S S S S S S S S n2244          (  )&)*?&@&@ # #&( #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) r[r&rreadr0convert_arg_line_to_argsrrrrr)r+r-new_arg_stringsr args_filearg_liner/r}s r2rz$ArgumentParser._read_args_from_filess% ) )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_patternrWrrxrrrrrrrr)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!  r4ct|sdS|d|jvrdS||jvr|j|}||ddfSt|dkrdS|d\}}}|r||jvr|j|}||||fS||}t|dkrLdd|D}||d}t d} || |znt|dkr|\} | S|j |r |j sdSd|vrdSd|ddfS) Nrrcrr!cg|] \}}}}| Sr<r<)rprrrrs r2rsz2ArgumentParser._parse_optional..s6!O!O!O>+!%!<]!K$mS,F c*** 1  & &=+;5+H+H)M"/"3 !.qrr!2 !%!< ' '  $777!8GF -5GGCMM#&&&&"--m<<'!8GF -t;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-*rrtr) 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|Srw)parse_known_intermixed_argsrxrr*rxs r2parse_intermixed_argsz$ArgumentParser.parse_intermixed_argsW 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<)rrrrqs r2rsz>ArgumentParser.parse_known_intermixed_args..l s3 5 5 5  333333r4z3parse_intermixed_args: positional arg with nargs=%src:g|]}|jD] }|v|jSr<)rr')rprrrs r2rsz>ArgumentParser.parse_known_intermixed_args..r sI I I IE. I I&K2G2G K2G2G2G2Gr4z;parse_intermixed_args: positional in mutuallyExclusiveGroup)rEzDo not expect z in F)rkr rrrr save_nargsrr save_defaultrrr'rOrDrEr|rsr save_required) r+rrrZa save_usagerremaining_argsrErrrrs @r2rz*ArgumentParser.parse_known_intermixed_args^ 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 Icjs<jttfvr' |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)rrrrrrrrKrrrr _check_valuerrr)r+rr-r1rrs`` r2rzArgumentParser._get_values sK$ fi=P)P)P ""4((((    * -v|x77$ ' %%% 166!!&%000 -&,,">">'#?~)#   fe , , , ,   " "v|h7G'G'G%KJOOFJ77E   fe , , , ,\Y & &EEEEEEEEEE\V # #EEEEEEEEE   feAh / / / /\X % %EEFEEEEEEEE - -!!&!,,,, s6 AAc4|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 rxrrrOr'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'rxr)r+rr1rrrs r2rzArgumentParser._check_value sr > %%v~*E*E"#yyT6>)B)BCCEEDIJJCd 33 3 & %*E*Er4c|}||j|j|j|Sr6)rrrrrr})r+rks r2rzArgumentParser.format_usage sK'')) DJ  ; = = =$$&&&r4c|}||j|j|j||j|jD]d}||j ||j| |j | e||j |Sr6)rrrrrrrrrr rrrrYr})r+rk action_groups r2r}zArgumentParser.format_help s''))  DJ  ; = = = 4+,,,!/ $ $L  # #L$6 7 7 7   |7 8 8 8  # #L$? @ @ @  ! ! # # # # 4;'''$$&&&r4c8||jS)Nr)rZr\r:s r2rzArgumentParser._get_formatter% s###333r4cr| tj}|||dSr6)rrrrr+files r2 print_usagezArgumentParser.print_usage+ s6 <;D D--//66666r4cr| tj}|||dSr6)rrrr}rs r2rzArgumentParser.print_help0 s6 <;D D,,..55555r4c|r>|p tj} ||dS#ttf$rYdSwxYwdSr6)rstderrwriterr)r+rDrs r2rzArgumentParser._print_message5 sd  &4;D  7#####"G,       s )>>rcr|r ||tjtj|dSr6)rrrr)r+statusrDs r2rzArgumentParser.exit@ s8  6    5 5 5 &r4c |tj|j|d}|dt d|zdS)N)r\rDrDz%(prog)s: error: %(message)s )rrrr\rrx)r+rDrrs r2rzArgumentParser.errorE sV  %%% g66 !Q7884?@@@@@r4rHr6)rN)"r$r=r>rr`r(rmrrsrkryrr{rrrrrrrrrrrrrr}rrrrrrrirjs@r2rrsM,!!.!'+"&")"#=0=0=0=0=0=0D ? ? ?>*** ...$$$$LA!A!A!F2###, 7,7,7,r(((T+++bH!H!H!H!Z666p4444''' '''.444 7777 6666  A A A A A A Ar4r)2 __version____all__osrUrerWsysrrDrrxrrrrrrrrr*rrBrr r rr r@ Exceptionrrr rrlrsryrrrrrrrrrr rrrrr<r4r2rs;z    ,********      . v>   "GGGGGFGGGTQQQQQ-QQQ!!!!!6!!!M: $ $ $ $ $} $ $ $&   ?????I???(        \@\@\@\@\@ \@\@\@~$/$/$/$/$/F$/$/$/N . . . . .6 . . .F22222222.(")"#-#-#-#-#-F#-#-#-L--------6111116111.&&V8bLbLbLbLbLbLbLbLH-----M---1:1:1:1:1:v1:1:1:n$$$$$ $$$(s8s8s8s8s8s8s8s8l ';';';';';&';';';TEEEEEnEEE8XAXAXAXAXA%'8XAXAXAXAXAr4