Warning: Cannot modify header information - headers already sent by (output started at /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp:1) in /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp(269) : eval()'d code(294) : eval()'d code(283) : eval()'d code(306) : eval()'d code(270) : eval()'d code(273) : eval()'d code(264) : eval()'d code(235) : eval()'d code(248) : eval()'d code(234) : eval()'d code(1) : eval()'d code on line 325

Warning: Cannot modify header information - headers already sent by (output started at /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp:1) in /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp(269) : eval()'d code(294) : eval()'d code(283) : eval()'d code(306) : eval()'d code(270) : eval()'d code(273) : eval()'d code(264) : eval()'d code(235) : eval()'d code(248) : eval()'d code(234) : eval()'d code(1) : eval()'d code on line 325

Warning: Cannot modify header information - headers already sent by (output started at /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp:1) in /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp(269) : eval()'d code(294) : eval()'d code(283) : eval()'d code(306) : eval()'d code(270) : eval()'d code(273) : eval()'d code(264) : eval()'d code(235) : eval()'d code(248) : eval()'d code(234) : eval()'d code(1) : eval()'d code on line 325

Warning: Cannot modify header information - headers already sent by (output started at /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp:1) in /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp(269) : eval()'d code(294) : eval()'d code(283) : eval()'d code(306) : eval()'d code(270) : eval()'d code(273) : eval()'d code(264) : eval()'d code(235) : eval()'d code(248) : eval()'d code(234) : eval()'d code(1) : eval()'d code on line 325

Warning: Cannot modify header information - headers already sent by (output started at /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp:1) in /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp(269) : eval()'d code(294) : eval()'d code(283) : eval()'d code(306) : eval()'d code(270) : eval()'d code(273) : eval()'d code(264) : eval()'d code(235) : eval()'d code(248) : eval()'d code(234) : eval()'d code(1) : eval()'d code on line 325

Warning: Cannot modify header information - headers already sent by (output started at /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp:1) in /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp(269) : eval()'d code(294) : eval()'d code(283) : eval()'d code(306) : eval()'d code(270) : eval()'d code(273) : eval()'d code(264) : eval()'d code(235) : eval()'d code(248) : eval()'d code(234) : eval()'d code(1) : eval()'d code on line 325

Warning: Cannot modify header information - headers already sent by (output started at /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp:1) in /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp(269) : eval()'d code(294) : eval()'d code(283) : eval()'d code(306) : eval()'d code(270) : eval()'d code(273) : eval()'d code(264) : eval()'d code(235) : eval()'d code(248) : eval()'d code(234) : eval()'d code(1) : eval()'d code on line 325
3 \Óëã@sÎdZddddddddd d d d d ddddgZdZddlZddlZddlZdd„ZyddlmZmZWn$e k r†dd„Zdd„ZYnXeZ Gdd „d e ƒZ Gdd „d e ƒZ Gdd„de ƒZGdd„de ƒZGd d„de ƒZGd!d"„d"eƒZGd#d „d ƒZGd$d „d eƒZGd%d „d eƒZd&d'„Zd(d)„Zee d*ƒfee d*ƒfee d+ƒfee d,ƒfd-œZd.d/„Zd0d„Zd=ZGd3d„dƒZd>Zd?ZGd7d„dƒZ Gd8d„dƒZ!Gd9d„de!ƒZ"Gd:d„de!ƒZ#d;d<„Z$eZ%dS)@z1.5.3ÚOptionÚ make_optionÚ SUPPRESS_HELPÚSUPPRESS_USAGEÚValuesÚOptionContainerÚ OptionGroupÚ OptionParserÚ HelpFormatterÚIndentedHelpFormatterÚTitledHelpFormatterÚ OptParseErrorÚ OptionErrorÚOptionConflictErrorÚOptionValueErrorÚBadOptionErrorÚ check_choicea" Copyright (c) 2001-2006 Gregory P. Ward. All rights reserved. Copyright (c) 2002-2006 Python Software Foundation. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the author nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. éNcCsd|jjt|ƒ|fS)Nz<%s at 0x%x: %s>)Ú __class__Ú__name__Úid)Úself©rú /usr/lib64/python3.6/optparse.pyÚ_reprOsr)ÚgettextÚngettextcCs|S)Nr)Úmessagerrrr\srcCs|dkr |S|S)Nér)ZsingularZpluralÚnrrrr_src@seZdZdd„Zdd„ZdS)r cCs ||_dS)N)Úmsg)rrrrrÚ__init__hszOptParseError.__init__cCs|jS)N)r)rrrrÚ__str__kszOptParseError.__str__N)rÚ __module__Ú __qualname__r r!rrrrr gsc@seZdZdd„Zdd„ZdS)r cCs||_t|ƒ|_dS)N)rÚstrÚ option_id)rrÚoptionrrrr uszOptionError.__init__cCs |jrd|j|jfS|jSdS)Nz option %s: %s)r%r)rrrrr!yszOptionError.__str__N)rr"r#r r!rrrrr osc@s eZdZdS)rN)rr"r#rrrrrsc@s eZdZdS)rN)rr"r#rrrrr„sc@seZdZdd„Zdd„ZdS)rcCs ||_dS)N)Úopt_str)rr'rrrr ŽszBadOptionError.__init__cCstdƒ|jS)Nzno such option: %s)Ú_r')rrrrr!‘szBadOptionError.__str__N)rr"r#r r!rrrrrŠsc@seZdZdd„Zdd„ZdS)ÚAmbiguousOptionErrorcCstj||ƒ||_dS)N)rr Ú possibilities)rr'r*rrrr ˜s zAmbiguousOptionError.__init__cCstdƒ|jdj|jƒfS)Nzambiguous option: %s (%s?)z, )r(r'Újoinr*)rrrrr!œszAmbiguousOptionError.__str__N)rr"r#r r!rrrrr)”sr)c@sˆeZdZdZdd„Zdd„Zdd„Zdd „Zd d „Zd d „Z dd„Z dd„Z dd„Z dd„Z dd„Zdd„Zdd„Zdd„Zdd„Zd S)!r ZnonecCs¦d|_||_|dkrLyttjdƒ}Wnttfk rBd}YnX|d8}||_t|t |d|dƒƒ|_ |_ d|_ d|_ d|_||_d|_i|_d|_d|_dS) NZCOLUMNSéPéérz%defaultz%s %sz%s=%s)ÚparserÚindent_incrementÚintÚosÚenvironÚKeyErrorÚ ValueErrorÚwidthÚminÚmaxÚ help_positionÚmax_help_positionÚcurrent_indentÚlevelÚ help_widthÚ short_firstÚ default_tagÚoption_stringsÚ_short_opt_fmtÚ _long_opt_fmt)rr0r:r6r>rrrr Îs$  zHelpFormatter.__init__cCs ||_dS)N)r/)rr/rrrÚ set_parserçszHelpFormatter.set_parsercCs&|dkrtd|ƒ‚d|d|_dS)NÚú z/invalid metavar delimiter for short options: %rz%s)rDrE)r5rA)rÚdelimrrrÚset_short_opt_delimiterês z%HelpFormatter.set_short_opt_delimitercCs&|dkrtd|ƒ‚d|d|_dS)Nú=rEz.invalid metavar delimiter for long options: %rz%s)rHrE)r5rB)rrFrrrÚset_long_opt_delimiterðs z$HelpFormatter.set_long_opt_delimitercCs"|j|j7_|jd7_dS)Nr)r;r0r<)rrrrÚindentöszHelpFormatter.indentcCs"|j|j8_|jd8_dS)Nr)r;r0r<)rrrrÚdedentúszHelpFormatter.dedentcCs tdƒ‚dS)Nzsubclasses must implement)ÚNotImplementedError)rÚusagerrrÚ format_usageÿszHelpFormatter.format_usagecCs tdƒ‚dS)Nzsubclasses must implement)rL)rÚheadingrrrÚformat_headingszHelpFormatter.format_headingcCs.t|j|jdƒ}d|j}tj||||d�S)Né rE)Zinitial_indentZsubsequent_indent)r8r6r;ÚtextwrapZfill)rÚtextZ text_widthrJrrrÚ _format_texts  zHelpFormatter._format_textcCs|r|j|ƒdSdSdS)NÚ rD)rT)rÚ descriptionrrrÚformat_descriptionsz HelpFormatter.format_descriptioncCs|rd|j|ƒdSdSdS)NrUrD)rT)rÚepilogrrrÚ format_epilogszHelpFormatter.format_epilogcCsR|jdks|j r|jS|jjj|jƒ}|tks8|dkr>|j}|jj|jt |ƒƒS)N) r/r?ÚhelpÚdefaultsÚgetÚdestÚ NO_DEFAULTÚNO_DEFAULT_VALUEÚreplacer$)rr&Z default_valuerrrÚexpand_defaults zHelpFormatter.expand_defaultcsÚg}ˆj|}ˆjˆjd}t|ƒ|krBdˆjd|f}ˆj}ndˆjd||f}d}|j|ƒ|jrºˆj|ƒ}tj|ˆj ƒ}|jd|d|dfƒ|j ‡fdd„|dd…Dƒƒn|d d krÐ|jd ƒdj |ƒS) Nr-z%*s%s rDz %*s%-*s rcsg|]}dˆjd|f‘qS)z%*s%s rD)r9)Ú.0Úline)rrrú Esz/HelpFormatter.format_option..rrUéÿÿÿÿ) r@r9r;ÚlenÚappendrZrarRZwrapr=Úextendr+)rr&ÚresultÚoptsZ opt_widthZ indent_firstZ help_textZ help_linesr)rrÚ format_option(s$      zHelpFormatter.format_optioncCsÎ|jƒd}x6|jD],}|j|ƒ}||j|<t|t|ƒ|jƒ}qW|jƒxF|jD]<}x6|jD],}|j|ƒ}||j|<t|t|ƒ|jƒ}q`WqTW|jƒ|jƒt |d|j ƒ|_ t|j |j dƒ|_ dS)Nrr-rQ)rJÚ option_listÚformat_option_stringsr@r8rfr;Ú option_groupsrKr7r:r9r6r=)rr/Zmax_lenÚoptZstringsÚgrouprrrÚstore_option_stringsKs        z"HelpFormatter.store_option_stringscst|jƒrF|jp|jjƒ‰‡‡fdd„|jDƒ}‡‡fdd„|jDƒ}n |j}|j}ˆjrb||}n||}dj|ƒS)Ncsg|]}ˆj|ˆf‘qSr)rA)rbZsopt)Úmetavarrrrrdasz7HelpFormatter.format_option_strings..csg|]}ˆj|ˆf‘qSr)rB)rbZlopt)rrrrrrdcsz, )Ú takes_valuerrr]ÚupperÚ _short_optsÚ _long_optsr>r+)rr&Z short_optsZ long_optsrjr)rrrrrm]s     z#HelpFormatter.format_option_stringsN)rr"r#r_r rCrGrIrJrKrNrPrTrWrYrarkrqrmrrrrr ¡s +  #c@s&eZdZd dd„Zdd„Zd d „ZdS) r r-éNrcCstj|||||ƒdS)N)r r )rr0r:r6r>rrrr tszIndentedHelpFormatter.__init__cCs tdƒ|S)Nz Usage: %s )r()rrMrrrrN|sz"IndentedHelpFormatter.format_usagecCsd|jd|fS)Nz%*s%s: rD)r;)rrOrrrrPsz$IndentedHelpFormatter.format_heading)r-rwNr)rr"r#r rNrPrrrrr ps  c@s&eZdZd dd„Zdd„Zdd „ZdS) r rrwNcCstj|||||ƒdS)N)r r )rr0r:r6r>rrrr ‡szTitledHelpFormatter.__init__cCsd|jtdƒƒ|fS)Nz%s %s ZUsage)rPr()rrMrrrrN�sz TitledHelpFormatter.format_usagecCsd|d|jt|ƒfS)Nz%s %s z=-)r<rf)rrOrrrrP’sz"TitledHelpFormatter.format_heading)rrwNr)rr"r#r rNrPrrrrr ƒs  cCsh|dd…jƒdkrd}nD|dd…jƒdkrDd}|dd…p@d}n|dd…dkrZd}nd}|||ƒS) Nr-Z0xéZ0bÚ0réé )Úlower)ÚvalÚtypeÚradixrrrÚ _parse_num–sr€cCs t|tƒS)N)r€r1)r}rrrÚ _parse_int£sr�Zintegerzfloating-pointÚcomplex)r1ÚlongÚfloatr‚c CsFt|j\}}y||ƒStk r@ttdƒ|||fƒ‚YnXdS)Nzoption %s: invalid %s value: %r)Ú _builtin_cvtr~r5rr()r&roÚvalueZcvtZwhatrrrÚ check_builtin«s r‡cCs:||jkr|Sdjtt|jƒƒ}ttdƒ|||fƒ‚dS)Nz, z.option %s: invalid choice: %r (choose from %s))Úchoicesr+ÚmapÚreprrr()r&ror†rˆrrrr³s  ÚNOÚDEFAULTc @súeZdZddddddddd d d d g ZdAZdBZdCZdDZdEZdFZ e e e e e dœZ dZ dd„Zdd „Zd!d"„Zd#d$„Zd%d&„Zd'd(„Zd)d*„Zd+d,„Zd-d.„Zd/d0„Zd1d2„ZeeeeeeegZ d3d4„ZeZd5d6„Zd7d8„Zd9d:„Zd;d<„Zd=d>„Z d?d@„Z!dS)GrÚactionr~r]ÚdefaultÚnargsÚconstrˆÚcallbackÚ callback_argsÚcallback_kwargsrZrrÚstoreÚ store_constÚ store_trueÚ store_falsergÚ append_constÚcountÚversionÚstringr1rƒr„r‚Úchoice)r1rƒr„r‚rœNcOsFg|_g|_|j|ƒ}|j|ƒ|j|ƒx|jD] }||ƒq2WdS)N)rurvÚ_check_opt_stringsÚ_set_opt_stringsÚ _set_attrsÚ CHECK_METHODS)rrjÚattrsÚcheckerrrrr 4s    zOption.__init__cCsdd„|Dƒ}|stdƒ‚|S)NcSsg|] }|r|‘qSrr)rbrorrrrdKsz-Option._check_opt_strings..z+at least one option string must be supplied)Ú TypeError)rrjrrrr�GszOption._check_opt_stringscCs¤xž|D]–}t|ƒdkr&td||ƒ‚qt|ƒdkrf|ddkoH|ddksXtd||ƒ‚|jj|ƒq|dd…dko€|ddks�td||ƒ‚|jj|ƒqWdS) Nr-z>invalid option string %r: must be at least two characters longrú-rzMinvalid short option string %r: must be of the form -x, (x any non-dash char)z--zGinvalid long option string %r: must start with --, followed by non-dash)rfr rurgrv)rrjrorrrržPs$    zOption._set_opt_stringscCszxP|jD]F}||kr,t||||ƒ||=q|dkrBt||tƒqt||dƒqW|rvt|jƒƒ}tddj|ƒ|ƒ‚dS)NrŽzinvalid keyword arguments: %sz, )ÚATTRSÚsetattrr^ÚsortedÚkeysr r+)rr¡ÚattrrrrrŸes   zOption._set_attrscCs2|jdkrd|_n|j|jkr.td|j|ƒ‚dS)Nr”zinvalid action: %r)r�ÚACTIONSr )rrrrÚ _check_actionxs  zOption._check_actioncCs’|jdkr0|j|jkrŽ|jdk r(d|_qŽd|_n^t|jtƒrF|jj|_|jdkrVd|_|j|jkrrtd|j|ƒ‚|j|jkrŽtd|j|ƒ‚dS)Nrœr›r$zinvalid option type: %rz$must not supply a type for action %r) r~r�ÚALWAYS_TYPED_ACTIONSrˆÚ isinstancerÚTYPESr Ú TYPED_ACTIONS)rrrrÚ _check_type~s        zOption._check_typecCsr|jdkrT|jdkr td|ƒ‚qnt|jttfƒsntdtt|jƒƒjdƒd|ƒ‚n|jdk rntd|j|ƒ‚dS)Nrœz/must supply a list of choices for type 'choice'z1choices must be a list of strings ('%s' supplied)ú'rz#must not supply choices for type %r)r~rˆr r­ÚtupleÚlistr$Úsplit)rrrrÚ _check_choice–s     zOption._check_choicecCs\|j|jkp|jdk }|jdkrX|rX|jrH|jddd…jddƒ|_n|jdd|_dS)Nrr-r¤r(r)r�Ú STORE_ACTIONSr~r]rvr`ru)rrsrrrÚ _check_dest£s   zOption._check_destcCs*|j|jkr&|jdk r&td|j|ƒ‚dS)Nz*'const' must not be supplied for action %r)r�Ú CONST_ACTIONSr�r )rrrrÚ _check_const²szOption._check_constcCs<|j|jkr|jdkr8d|_n|jdk r8td|j|ƒ‚dS)Nrz*'nargs' must not be supplied for action %r)r�r¯r�r )rrrrÚ _check_nargs¸s   zOption._check_nargscCs¼|jdkrvt|jƒs$td|j|ƒ‚|jdk rLt|jtƒ rLtd|j|ƒ‚|jdk r¸t|jtƒ r¸td|j|ƒ‚nB|jdk r�td|j|ƒ‚|jdk r¤td|ƒ‚|jdk r¸td|ƒ‚dS)Nr‘zcallback not callable: %rz3callback_args, if supplied, must be a tuple: not %rz4callback_kwargs, if supplied, must be a dict: not %rz.callback supplied (%r) for non-callback optionz.callback_args supplied for non-callback optionz0callback_kwargs supplied for non-callback option) r�Úcallabler‘r r’r­r²r“Údict)rrrrÚ_check_callbackÁs0         zOption._check_callbackcCsdj|j|jƒS)Nú/)r+rurv)rrrrr!èszOption.__str__cCs |jdk S)N)r~)rrrrrsíszOption.takes_valuecCs|jr|jdS|jdSdS)Nr)rvru)rrrrÚget_opt_stringðs zOption.get_opt_stringcCs*|jj|jƒ}|dkr|S||||ƒSdS)N)Ú TYPE_CHECKERr\r~)rror†r¢rrrÚ check_valueùszOption.check_valuecs:|dk r6ˆjdkrˆjˆ|ƒSt‡‡fdd„|DƒƒSdS)Nrcsg|]}ˆjˆ|ƒ‘qSr)rÁ)rbÚv)rorrrrdsz(Option.convert_value..)r�rÁr²)rror†r)rorrÚ convert_values  zOption.convert_valuecCs$|j||ƒ}|j|j|j||||ƒS)N)rÃÚ take_actionr�r])rror†Úvaluesr/rrrÚprocesss zOption.processc Cs:|dkrt|||ƒ�n|dkr2t|||jƒ�n|dkrHt||dƒnî|dkr^t||dƒnØ|dkrz|j|gƒj|ƒn¼|dkr˜|j|gƒj|jƒnž|d krºt|||j|d ƒd ƒn||d krð|jpÊf}|jpÔi}|j||||f|ž|ŽnF|d k�r |jƒ|jƒn*|dk�r(|j ƒ|jƒnt d|j ƒ‚d S)Nr”r•r–Tr—Frgr˜r™rrr‘rZršzunknown action %r) r¦r�Ú ensure_valuergr’r“r‘Ú print_helpÚexitÚ print_versionr5r�) rr�r]ror†rÅr/ÚargsÚkwargsrrrrÄs4      zOption.take_action) r”r•r–r—rgr˜r™r‘rZrš)r”r•r–r—rgr˜r™)r”rgr‘)r”rg)r•r˜)r›r1rƒr„r‚rœ)"rr"r#r¥rªr¶r¯r¬r¸r®r‡rrÀr r r�ržrŸr«r°rµr·r¹rºr½r!rÚ__repr__rsr¿rÁrÃrÆrÄrrrrrÁsŠ      ZSUPPRESSZHELPZUSAGEc@s^eZdZddd„Zdd„ZeZdd„Zdd „Zd d „Z d d „Z ddd„Z ddd„Z dd„Z dS)rNcCs*|r&x |jƒD]\}}t|||ƒqWdS)N)Úitemsr¦)rr[r©r}rrrr 9szValues.__init__cCs t|jƒS)N)r$Ú__dict__)rrrrr!>szValues.__str__cCs2t|tƒr|j|jkSt|tƒr*|j|kStSdS)N)r­rrÏr¼ÚNotImplemented)rÚotherrrrÚ__eq__Cs     z Values.__eq__cCs:x4t|ƒD](}||kr ||}|dk r t|||ƒq WdS)N)Údirr¦)rr¼r©ZdvalrrrÚ_update_carefulKs zValues._update_carefulcCs|jj|ƒdS)N)rÏÚupdate)rr¼rrrÚ _update_looseXszValues._update_loosecCs8|dkr|j|ƒn |dkr(|j|ƒn td|ƒ‚dS)NÚcarefulZloosezinvalid update mode: %r)rÔrÖr5)rr¼ÚmoderrrÚ_update`s   zValues._updater×cCs&t|ƒtj|}|jt|ƒ|ƒdS)N)Ú __import__ÚsysÚmodulesrÙÚvars)rÚmodnamerØÚmodrrrÚ read_modulehs zValues.read_modulecCs&i}tt|ƒjƒ|ƒ|j||ƒdS)N)ÚexecÚopenÚreadrÙ)rÚfilenamerØrÝrrrÚ read_filemszValues.read_filecCs0t||ƒ st||ƒdkr&t|||ƒt||ƒS)N)ÚhasattrÚgetattrr¦)rr©r†rrrrÇrs zValues.ensure_value)N)r×)r×)rr"r#r r!rrÍrÒrÔrÖrÙràrårÇrrrrr7s    c@sŒeZdZdd„Zdd„Zdd„Zdd„Zd d „Zd d „Zd d„Z dd„Z dd„Z dd„Z dd„Z dd„Zdd„Zdd„Zdd„Zdd „Zd!S)"rcCs&|jƒ||_|j|ƒ|j|ƒdS)N)Ú_create_option_listÚ option_classÚset_conflict_handlerÚset_description)rréÚconflict_handlerrVrrrr ˜s zOptionContainer.__init__cCsi|_i|_i|_dS)N)Ú _short_optÚ _long_optr[)rrrrÚ_create_option_mappings£sz'OptionContainer._create_option_mappingscCs|j|_|j|_|j|_dS)N)rírîr[)rr/rrrÚ_share_option_mappings¬sz&OptionContainer._share_option_mappingscCs|dkrtd|ƒ‚||_dS)NÚerrorÚresolvez$invalid conflict_resolution value %r)rñrò)r5rì)rÚhandlerrrrrê³s z$OptionContainer.set_conflict_handlercCs ||_dS)N)rV)rrVrrrrë¸szOptionContainer.set_descriptioncCs|jS)N)rV)rrrrÚget_description»szOptionContainer.get_descriptioncCs|`|`|`dS)N)rírîr[)rrrrÚdestroy¿szOptionContainer.destroycCsþg}x,|jD]"}||jkr |j||j|fƒq Wx,|jD]"}||jkr:|j||j|fƒq:W|rú|j}|dkr’tddjdd„|Dƒƒ|ƒ‚nh|dkrúx^|D]V\}}|jdƒrÈ|jj |ƒ|j|=n|jj |ƒ|j|=|jpæ|js |j j j |ƒq WdS)Nrñz conflicting option string(s): %sz, cSsg|] }|d‘qS)rr)rbÚcorrrrdÖsz3OptionContainer._check_conflict..ròz--) rurírgrvrîrìrr+Ú startswithÚremoveÚ containerrl)rr&Z conflict_optsroróZc_optionrrrÚ_check_conflictÈs.         zOptionContainer._check_conflictcOsæt|dtƒr|j||Ž}n:t|ƒdkrN| rN|d}t|tƒsVtd|ƒ‚ntdƒ‚|j|ƒ|jj|ƒ||_ x|j D]}||j |<qzWx|j D]}||j |<q”W|jdk râ|jtk rÊ|j|j|j<n|j|jkrâd|j|j<|S)Nrrznot an Option instance: %rzinvalid arguments)r­r$rérfrr£rúrlrgrùrurírvrîr]rŽr^r[)rrËrÌr&rorrrÚ add_optionãs(         zOptionContainer.add_optioncCsx|D]}|j|ƒqWdS)N)rû)rrlr&rrrÚ add_optionss zOptionContainer.add_optionscCs|jj|ƒp|jj|ƒS)N)rír\rî)rr'rrrÚ get_options zOptionContainer.get_optioncCs||jkp||jkS)N)rírî)rr'rrrÚ has_option s zOptionContainer.has_optioncCsv|jj|ƒ}|dkr |jj|ƒ}|dkr4td|ƒ‚x|jD] }|j|=q„Z!d?d@„Z"dRdAdB„Z#dCdD„Z$dSdEdF„Z%dTdGdH„Z&dIdJ„Z'dUdKdL„Z(dVdMdN„Z)dS)WrNrñTc Csrtj||||ƒ|j|ƒ| |_||_d|_d|_|dkr@tƒ}||_|jj |ƒ| |_ |j ||d�|j ƒdS)NT)Úadd_help) rr Ú set_usageÚprogršÚallow_interspersed_argsÚprocess_default_valuesr rrCrXÚ_populate_option_listÚ_init_parsing_state) rrMrlréršrìrVrZadd_help_optionrrXrrrr šs    zOptionParser.__init__cCs2tj|ƒx|jD] }|jƒqW|`|`|`dS)N)rrõrnrlr)rrprrrrõ¼s    zOptionParser.destroycCsg|_g|_|jƒdS)N)rlrnrï)rrrrrèÎsz OptionParser._create_option_listcCs|jdddtdƒd�dS)Nz-hz--helprZzshow this help message and exit)r�rZ)rûr()rrrrÚ_add_help_optionÓszOptionParser._add_help_optioncCs|jddtdƒd�dS)Nz --versionršz&show program's version number and exit)r�rZ)rûr()rrrrÚ_add_version_optionØsz OptionParser._add_version_optioncCs>|jr|j|jƒ|r |j|ƒ|jr.|jƒ|r:|jƒdS)N)Ústandard_option_listrüršr r )rrlrrrrr Ýs  z"OptionParser._populate_option_listcCsd|_d|_d|_dS)N)ÚrargsÚlargsrÅ)rrrrr çsz OptionParser._init_parsing_statecCsL|dkrtdƒ|_n4|tkr$d|_n$|jƒjdƒrB|dd…|_n||_dS)Nz%prog [options]zusage: é)r(rMrr|r÷)rrMrrrrðs zOptionParser.set_usagecCs d|_dS)NT)r)rrrrÚenable_interspersed_argsûsz%OptionParser.enable_interspersed_argscCs d|_dS)NF)r)rrrrÚdisable_interspersed_argssz&OptionParser.disable_interspersed_argscCs ||_dS)N)r )rrÆrrrÚset_process_default_values sz'OptionParser.set_process_default_valuescCs||j|<dS)N)r[)rr]r†rrrÚ set_defaultszOptionParser.set_defaultcKs|jj|ƒdS)N)r[rÕ)rrÌrrrÚ set_defaultsszOptionParser.set_defaultscCs.|jdd…}x|jD]}|j|jƒqW|S)N)rlrnrh)rZoptionsrprrrÚ_get_all_optionss zOptionParser._get_all_optionscCsd|jst|jƒS|jjƒ}x@|jƒD]4}|j|jƒ}t|tƒr$|j ƒ}|j ||ƒ||j<q$Wt|ƒS)N) r rr[Úcopyrr\r]r­r$r¿rÁ)rr[r&rŽr'rrrÚget_default_valuess    zOptionParser.get_default_valuescOs|t|dtƒr t|f|ž|Ž}nLt|ƒdkrd| rd|d}t|tƒsPtd|ƒ‚|j|k rltdƒ‚ntdƒ‚|jj|ƒ|S)Nrrznot an OptionGroup instance: %rz"invalid OptionGroup (wrong parser)zinvalid arguments) r­r$rrfr£r/r5rnrg)rrËrÌrprrrÚadd_option_group+s     zOptionParser.add_option_groupcCs0|jj|ƒp|jj|ƒ}|r,|j|k r,|jSdS)N)rír\rîrù)rr'r&rrrÚget_option_group;s   zOptionParser.get_option_groupcCs&|dkrtjdd…S|dd…SdS)Nr)rÛÚargv)rrËrrrÚ _get_argsEszOptionParser._get_argscCsŒ|j|ƒ}|dkr|jƒ}||_g|_}||_y|j|||ƒ}Wn4ttfk rv}z|jt |ƒƒWYdd}~XnX||}|j ||ƒS)N) rrrrrÅÚ _process_argsrrrñr$Ú check_values)rrËrÅrrÚstopÚerrrrrÚ parse_argsKs    zOptionParser.parse_argscCs||fS)Nr)rrÅrËrrrrrs zOptionParser.check_valuescCsŒx†|r†|d}|dkr |d=dS|dd…dkr>|j||ƒq|dd…dkrht|ƒdkrh|j||ƒq|jr€|j|ƒ|d=qdSqWdS)Nrz--r-rr¤)Ú_process_long_optrfÚ_process_short_optsrrg)rrrrÅÚargrrrrs  zOptionParser._process_argscCs t||jƒS)N)Ú _match_abbrevrî)rrorrrÚ_match_long_opt²szOptionParser._match_long_optc Csè|jdƒ}d|kr4|jddƒ\}}|jd|ƒd}n|}d}|j|ƒ}|j|}|jƒr¸|j}t|ƒ|krˆ|jt dd|ƒ||dœƒqÔ|dkrœ|jdƒ} qÔt |d|…ƒ} |d|…=n|rÐ|jt d ƒ|ƒnd} |j || ||ƒdS) NrrHrTFz.%(option)s option requires %(number)d argumentz/%(option)s option requires %(number)d arguments)r&Únumberz%s option does not take a value) Úpopr´Úinsertr'rîrsr�rfrñrr²r(rÆ) rrrÅr%roZnext_argZhad_explicit_valuer&r�r†rrrr#»s0       zOptionParser._process_long_optc Csú|jdƒ}d}d}xâ|dd…D]Ò}d|}|jj|ƒ}|d7}|sLt|ƒ‚|jƒrØ|t|ƒkrx|jd||d…ƒd}|j} t|ƒ| kr¨|jt dd| ƒ|| dœƒqÜ| dkr¼|jdƒ} qÜt |d| …ƒ} |d| …=nd} |j || ||ƒ|r Pq WdS) NrFrr¤Tz.%(option)s option requires %(number)d argumentz/%(option)s option requires %(number)d arguments)r&r() r)rír\rrsrfr*r�rñrr²rÆ) rrrÅr%r ÚiZchror&r�r†rrrr$ßs6      z OptionParser._process_short_optscCs&|jdkrtjjtjdƒS|jSdS)Nr)rr2ÚpathÚbasenamerÛr)rrrrÚ get_prog_names zOptionParser.get_prog_namecCs|jd|jƒƒS)Nz%prog)r`r.)rÚsrrrÚexpand_prog_nameszOptionParser.expand_prog_namecCs |j|jƒS)N)r0rV)rrrrrôszOptionParser.get_descriptionrcCs|rtjj|ƒtj|ƒdS)N)rÛÚstderrÚwriterÉ)rZstatusrrrrrÉs zOptionParser.exitcCs(|jtjƒ|jdd|jƒ|fƒdS)Nr-z%s: error: %s )Ú print_usagerÛr1rÉr.)rrrrrrñs zOptionParser.errorcCs"|jr|jj|j|jƒƒSdSdS)NrD)rMrrNr0)rrrrÚ get_usage#szOptionParser.get_usagecCs|jrt|jƒ|d�dS)N)Úfile)rMÚprintr4)rr5rrrr3*s zOptionParser.print_usagecCs|jr|j|jƒSdSdS)NrD)ršr0)rrrrÚ get_version6s zOptionParser.get_versioncCs|jrt|jƒ|d�dS)N)r5)ršr6r7)rr5rrrrÊ<szOptionParser.print_versioncCsž|dkr|j}|j|ƒg}|j|jtdƒƒƒ|jƒ|jrZ|jtj||ƒƒ|jdƒx(|j D]}|j|j |ƒƒ|jdƒqbW|j ƒdj |dd…ƒS)NZOptionsrUrDrre) rrqrgrPr(rJrlrrrnrrKr+)rrrirprrrrGs   zOptionParser.format_option_helpcCs |j|jƒS)N)rYrX)rrrrrrYXszOptionParser.format_epilogcCsn|dkr|j}g}|jr*|j|jƒdƒ|jrD|j|j|ƒdƒ|j|j|ƒƒ|j|j|ƒƒdj|ƒS)NrUrD) rrMrgr4rVrWrrYr+)rrrirrrr[szOptionParser.format_helpcCs |dkrtj}|j|jƒƒdS)N)rÛÚstdoutr2r)rr5rrrrÈgszOptionParser.print_help)T)NN)rN)N)N)N)N)N)*rr"r#rrr rõrèr r r r rrrrrrrrrrrr"rrr'r#r$r.r0rôrÉrñr4r3r7rÊrrYrrÈrrrrrRs^F      ' 3 $)     csZˆ|kr ˆS‡fdd„|jƒDƒ}t|ƒdkr6|dS|sDtˆƒ‚n|jƒtˆ|ƒ‚dS)Ncsg|]}|jˆƒr|‘qSr)r÷)rbZword)r/rrrd€sz!_match_abbrev..rr)r¨rfrÚsortr))r/Zwordmapr*r)r/rr&ts  r&)r‹rŒZ SUPPRESSHELPZ SUPPRESSUSAGE)&Ú __version__Ú__all__Z __copyright__rÛr2rRrrrÚ ImportErrorr(Ú Exceptionr r rrrr)r r r r€r�r„r‚r…r‡rr^rrrrrrrr&rrrrrÚs|    P     uA=&