Your IP : 216.73.216.213


Current Path : /opt/alt/python37/lib/python3.7/site-packages/docutils/__pycache__/
Upload File :
Current File : //opt/alt/python37/lib/python3.7/site-packages/docutils/__pycache__/frontend.cpython-37.pyc

B

7��]��@s�dZdZddlZddlZddlZddlZddlZddlZddl	Z	ddl	m
Z
ddlZddlZddl
ZddlmZmZmZmZdd�Zdd	�Zd4d
d�Zd5dd
�Zd6dd�Zd7dd�Zd8dd�Zd9dd�Zd:dd�Zd;dd�Zd<dd�Zd=dd�Zd>dd�Zd?d d!�Z d@d"d#�Z!dAd$d%�Z"d&d'�Z#d(d)�Z$Gd*d+�d+e	j%�Z%Gd,d-�d-e	j&�Z&Gd.d/�d/e	j'ej(�Z'Gd0d1�d1ej)�Z*Gd2d3�d3e+�Z,dS)Ba�
Command-line and common processing for Docutils front-end tools.

Exports the following classes:

* `OptionParser`: Standard Docutils command-line processing.
* `Option`: Customized version of `optparse.Option`; validation support.
* `Values`: Runtime settings; objects are simple structs
  (``object.attribute``).  Supports cumulative list settings (attributes).
* `ConfigParser`: Standard Docutils config file processing.

Also exports the following functions:

* Option callbacks: `store_multiple`, `read_config_file`.
* Setting validators: `validate_encoding`,
  `validate_encoding_error_handler`,
  `validate_encoding_and_error_handler`,
  `validate_boolean`, `validate_ternary`, `validate_threshold`,
  `validate_colon_separated_string_list`,
  `validate_comma_separated_string_list`,
  `validate_dependency_file`.
* `make_paths_absolute`.
* SettingSpec manipulation: `filter_settings_spec`.
ZreStructuredText�N)�
SUPPRESS_HELP)�locale_encoding�
SafeString�ErrorOutput�ErrorStringcOsHx|D]}t|j|d�qWx&t|���D]\}}t|j||�q*WdS)z�
    Store multiple values in `parser.values`.  (Option callback.)

    Store `None` for each attribute named in `args`, and store the value for
    each key (attribute name) in `kwargs`.
    N)�setattr�values�list�items)�option�opt�value�parser�args�kwargsZ	attribute�key�r�B/opt/alt/python37/lib/python3.7/site-packages/docutils/frontend.py�store_multiple/s
rc
CsNy|�|�}Wn,tk
r:}z|�|�Wdd}~XYnX|j�||�dS)zQ
    Read a configuration file during option processing.  (Option callback.)
    N)�get_config_file_settings�
ValueError�errorr�update)rrr
rZnew_settingsrrrr�read_config_file;s
rcCs8yt�|�Wn$tk
r2td||f��YnX|S)Nz$setting "%s": unknown encoding: "%s")�codecs�lookup�LookupError)�settingr
�
option_parser�
config_parser�config_sectionrrr�validate_encodingEsr!cCs4yt�|�Wn tk
r.td|��YnX|S)Nz�unknown encoding error handler: "%s" (choices: "strict", "ignore", "replace", "backslashreplace", "xmlcharrefreplace", and possibly others; see documentation for the Python ``codecs`` module))r�lookup_errorr)rr
rrr rrr�validate_encoding_error_handlerNsr#cCsnd|krV|�d�\}}t|d||||�|rB|�||d|�qZt|j|d|�n|}t|||||�|S)z�
    Side-effect: if an error handler is included in the value, it is inserted
    into the appropriate place as if it was a separate setting/option.
    �:Z_error_handler)�splitr#�setrrr!)rr
rrr �encoding�handlerrrr�#validate_encoding_and_error_handlerZs
r)cCsFt|t�r|Sy|j|����Stk
r@td|��YnXdS)z|Check/normalize boolean settings:
         True:  '1', 'on', 'yes', 'true'
         False: '0', 'off', 'no','false', ''
    zunknown boolean value: "%s"N)�
isinstance�bool�booleans�strip�lower�KeyErrorr)rr
rrr rrr�validate_booleanps
r0cCsBt|t�s|dkr|Sy|j|����Stk
r<|SXdS)z�Check/normalize three-value settings:
         True:  '1', 'on', 'yes', 'true'
         False: '0', 'off', 'no','false', ''
         any other value: returned as-is.
    N)r*r+r,r-r.r/)rr
rrr rrr�validate_ternary}sr1cCst|�}|dkrtd��|S)Nrz(negative value; must be positive or zero)�intr)rr
rrr rrr�validate_nonnegative_int�sr3cCsVyt|�Stk
rPy|j|��Sttfk
rJtd|��YnXYnXdS)Nzunknown threshold: %r.)r2r�
thresholdsr.r/�AttributeErrorr)rr
rrr rrr�validate_threshold�sr6cCs2t|t�s|�d�}n|��}|�|�d��|S)Nr$)r*r	r%�pop�extend)rr
rrr �lastrrr�$validate_colon_separated_string_list�s

r:cCs:t|t�s|g}|��}dd�|�d�D�}|�|�|S)zHCheck/normalize list arguments (split at "," and strip whitespace).
    cSs g|]}|�d�r|�d��qS)z 	
)r-)�.0�irrr�
<listcomp>�sz1validate_comma_separated_list.<locals>.<listcomp>�,)r*r	r7r%r8)rr
rrr r9r
rrr�validate_comma_separated_list�s

r?cCs"|sdS|�d�r|S|dSdS)Nz./�/)�endswith)rr
rrr rrr�validate_url_trailing_slash�s

rBcCs.ytj�|�Stk
r(tj�d�SXdS)N)�docutils�utils�DependencyList�IOError)rr
rrr rrr�validate_dependency_file�srGcCsFt|||||�}x0|D](}tj�|�}||krtd||f��qW|S)Nz$Invalid class value %r (perhaps %r?))r?rCZnodesZmake_idr)rr
rrr �clsZ
normalizedrrr�validate_strip_class�s
rIc

Cs�t|||||�}g}x�|D]�}y|�dd�\}}WnFtk
rR|�|�wYn(tk
rxtd|�dd���YnX|��}|�d�}	t|	�dkr�|	}n t|�dkr�td|�dd���|�||f�qW|S)z~Check/normalize a comma separated list of smart quote definitions.

    Return a list of (language-tag, quotes) string tuples.r$�z4Invalid value "%s". Format is "<language>:<quotes>".�ascii�backslashreplace�z[Invalid value "%s". Please specify 4 quotes
    (primary open/close; secondary open/close).)r?r%r5�appendr�encoder-�len)
rr
rrr Z	lc_quotes�item�langZquotesZmultichar_quotesrrr�validate_smartquotes_locales�s*


rScsf�dkrt���xP|D]H}||kr||}t|t�rH�fdd�|D�}n|rVt�|�}|||<qWdS)z�
    Interpret filesystem path settings relative to the `base_path` given.

    Paths are values in `pathdict` whose keys are in `keys`.  Get `keys` from
    `OptionParser.relative_path_settings`.
    Ncsg|]}t�|��qSr)�make_one_path_absolute)r;�path)�	base_pathrrr=sz'make_paths_absolute.<locals>.<listcomp>)�os�getcwdr*r	rT)Zpathdict�keysrVrr
r)rVr�make_paths_absolute�s




rZcCstj�tj�||��S)N)rWrU�abspath�join)rVrUrrrrTsrTcOs�t|�}x�tdt|�d�D]p}g}xZ||D]N}dd�|dD�d}||krPq,|t|���krp|�||�q,|�|�q,Wt|�||<qWt|�S)a�Return a copy of `settings_spec` excluding/replacing some settings.

    `settings_spec` is a tuple of configuration settings with a structure
    described for docutils.SettingsSpec.settings_spec.

    Optional positional arguments are names of to-be-excluded settings.
    Keyword arguments are option specification replacements.
    (See the html4strict writer for an example.)
    ��cSs*g|]"}|�d�r|dd��dd��qS)z--r]N�-�_)�
startswith�replace)r;Z
opt_stringrrrr=sz(filter_settings_spec.<locals>.<listcomp>rJr)r	�rangerPrYrN�tuple)�
settings_specZexcluderb�settingsr<ZnewoptsZopt_spec�opt_namerrr�filter_settings_specs

rhc@s(eZdZdZdd�Zdd�Zdd�ZdS)	�Valuesz�
    Updates list attributes by extension rather than by replacement.
    Works in conjunction with the `OptionParser.lists` instance attribute.
    cOs8tjj|f|�|�t|d�r(|jdkr4tj��|_dS)N�record_dependencies)�optparseri�__init__�hasattrrjrCrDrE)�selfrrrrrrl0s

zValues.__init__cCspt|t�r|j}|��}xHt|j���D]6}t||�r(||kr(t||�}|r(|||7}||=q(W|�	|�dS)N)
r*ri�__dict__�copyr	�listsrYrm�getattrZ
_update_loose)rnZ
other_dictrrr
rrrr7s


z
Values.updatecCs|j|jd�S)z Return a shallow copy of `self`.)�defaults)�	__class__ro)rnrrrrpCszValues.copyN)�__name__�
__module__�__qualname__�__doc__rlrrprrrrri)sric@s$eZdZejjddgZdd�ZdS)�Option�	validator�	overridesc	
Cs�tj�|||||�}|j}|r�|jr�t||�}y|�|||�}Wn8tk
rx}zt�d|t|�f��Wdd}~XYnXt	|||�|j
r�t	||j
d�|S)z�
        Call the validator function on applicable settings and
        evaluate the 'overrides' option.
        Extends `optparse.Option.process`.
        zError in option "%s":
    %sN)rkry�process�destrzrr�	ExceptionZOptionValueErrorrrr{)	rnrr
rr�resultr�	new_valuerrrrr|Ls
"zOption.processN)rurvrwrkryZATTRSr|rrrrryHsryc8@sxeZdZdZdddgZd��Zdddd	d
d�Zddddd
d
d
d
d
d�	Ze	e
jdd�pZepZdZ
dZddddgifdddgded�fddgddd�fd d!d"gd#d$d%d&�fd'd(d)gd#d*d%d&�fd+d,gd#dd%d&�fd-d.d/gded�fd0d1gd2d3ifd4d5gd6ed7d8�fd9d:gd;d#d<d<d=�fd>d?gd;d#d@dA�fdBdCgd;ddD�fdEdFgddedG�fdHdIgdJddD�fdKdLgddMdedN�fdOdPgddMd�fdQdRgded�fdSdTgddUd�fdVdWgdXdYdZed[�fd\d]gdXd^dZed[�fd_d`dageddbdcedd�fdedfdggd#ddbd&�fdhdidjgd#d
dbd&�fdkdlgedmd	dcedn�fdodpgd#ddmd&�fdqdrgedsd
dcedn�fdtdugded�fdvdwgddxd�fdydzgd{d|d}�fd~dgddedG�fd�d�gd�ddD�fd�d�d�gd�ed��fd�d�gd�ed��fd�d�d�gd�d�ed��fd�d�gd�ed��fd�e
efd�d�gd�e
ed��fd�ed�geed��fd�d�d�gd�d�d�d��fd�d�gd|edd��fd�d�gd|d�d6ed��fd�d�d�gd�d�ifd�d�d�gd�d�ifed�gd�d�ifed�gd�d�ifed�gd�difed�gd�difed�gd�difed�gd�difed�gdXd�ed��fed�gd�diff2fZddddd��Zd�Zd�Zd�ejej�r
d�ej�pd�e
j ��d�e
j!fZ"d�d�dĄZ#d�dƄZ$d�dȄZ%d�dʄZ&d�d̄Z'd�d΄Z(d�dЄZ)d�d҄Z*d�dԄZ+d�dքZ,dS)��OptionParsera�
    Parser for command-line and library use.  The `settings_spec`
    specification here and in other Docutils components are merged to build
    the set of command-line options and runtime settings for this process.

    Common settings (defined below) and component-specific settings must not
    conflict.  Short options are reserved for common settings, and components
    are restrict to using long options.
    z/etc/docutils.confz./docutils.confz~/.docutilsz(info 1 warning 2 error 3 severe 4 none 5rJr]r^rM�)�infoZwarningrZsevereZnoneTF)	�1�on�yes�true�0�off�no�false�r'NrKrLzGeneral Docutils Optionsz'Specify the document title as metadata.z--titlez2Include a "Generated by Docutils" credit and link.z--generatorz-g�
store_true)�actionrzz"Do not include a generator credit.z--no-generatorZstore_false�	generator)r�r}z2Include the date at the end of the document (UTC).z--datez-dZstore_constz%Y-%m-%dZ	datestamp)r��constr}zInclude the time & date (UTC).z--timez-tz%Y-%m-%d %H:%M UTCz'Do not include a datestamp of any kind.z--no-datestampz&Include a "View document source" link.z
--source-linkz-sz3Use <URL> for a source link; implies --source-link.z--source-url�metavarz<URL>z-Do not include a "View document source" link.z--no-source-link�callback)Zsource_linkZ
source_url)r�r�Z
callback_argsz4Link from section headers to TOC entries.  (default)z--toc-entry-backlinksZ
toc_backlinks�entry)r}r�r��defaultz0Link from section headers to the top of the TOC.z--toc-top-backlinks�top)r}r�r�z+Disable backlinks to the table of contents.z--no-toc-backlinks)r}r�z6Link from footnotes/citations to references. (default)z--footnote-backlinks)r�r�rzz/Disable backlinks from footnotes and citations.z--no-footnote-backlinksZfootnote_backlinksz0Enable section numbering by Docutils.  (default)z--section-numberingZ
sectnum_xform)r�r}r�rzz&Disable section numbering by Docutils.z--no-section-numberingz/Remove comment elements from the document tree.z--strip-commentsz6Leave comment elements in the document tree. (default)z--leave-comments�strip_commentsz�Remove all elements with classes="<class>" from the document tree. Warning: potentially dangerous; use with caution. (Multiple-use option.)z--strip-elements-with-classrNZstrip_elements_with_classesz<class>)r�r}r�rzz�Remove all classes="<class>" attributes from elements in the document tree. Warning: potentially dangerous; use with caution. (Multiple-use option.)z
--strip-classZ
strip_classeszReport system messages at or higher than <level>: "info" or "1", "warning"/"2" (default), "error"/"3", "severe"/"4", "none"/"5"z--reportz-rZreport_levelz<level>)�choicesr�r}r�rzz4Report all system messages.  (Same as "--report=1".)z	--verbosez-vz3Report no system messages.  (Same as "--report=5".)z--quietz-qzdHalt execution at system messages at or above <level>.  Levels as in --report.  Default: 4 (severe).z--haltZ
halt_level)r�r}r�r�rzz6Halt at the slightest problem.  Same as "--halt=info".z--strictzjEnable a non-zero exit status for non-halting system messages at or above <level>.  Default: 5 (disabled).z
--exit-statusZexit_status_levelz3Enable debug-level system messages and diagnostics.z--debugz Disable debug output.  (default)z
--no-debug�debugz-Send the output of system messages to <file>.z
--warnings�warning_streamz<file>)r}r�z1Enable Python tracebacks when Docutils is halted.z--tracebackz%Disable Python tracebacks.  (default)z--no-traceback�	tracebackziSpecify the encoding and optionally the error handler of input text.  Default: <locale-dependent>:strict.z--input-encodingz-iz<name[:handler]>)r�rzzlSpecify the error handler for undecodable characters.  Choices: "strict" (default), "ignore", and "replace".z--input-encoding-error-handler�strict)r�rzz^Specify the text encoding and optionally the error handler for output.  Default: UTF-8:strict.z--output-encodingz-ozutf-8)r�r�rzz�Specify error handler for unencodable output characters; "strict" (default), "ignore", "replace", "xmlcharrefreplace", "backslashreplace".z--output-encoding-error-handlerzJSpecify text encoding and error handler for error output.  Default: %s:%s.z--error-encodingz-ezSSpecify the error handler for unencodable characters in error output.  Default: %s.z--error-encoding-error-handlerz<Specify the language (as BCP 47 language tag).  Default: en.z
--languagez-lZ
language_code�enz<name>)r}r�r�z)Write output file dependencies to <file>.z--record-dependencies)r�rzr�z6Read configuration settings from <file>, if it exists.z--config�string)r��typer�r�z,Show this program's version number and exit.z	--versionz-Vr��versionz Show this help message and exit.z--helpz-h�helpz--id-prefixr�r�z--auto-id-prefix�idz--dump-settingsz--dump-internalsz--dump-transformsz--dump-pseudo-xmlz--expose-internal-attributeZexpose_internals)r�r}rzz--strict-visitor)�_disable_config�_source�_destination�
_config_files)r��generalz(%%prog (Docutils %s%s, Python %s, on %s)z [%s]rrc
Os�i|_g|_tjj|f|�tdtjdd�d�|��|jsB|j|_t	|j
�|_
|ft|�|_|�
|j�|�|pti�|r�|jds�y|��}Wn0tk
r�}z|�t|��Wdd}~XYnX|�|j�dS)z�
        `components` is a list of Docutils components each containing a
        ``.settings_spec`` attribute.  `defaults` is a mapping of setting
        default overrides.
        N�N)�width)Zoption_classZadd_help_optionZ	formatterr�)rq�config_filesrkr�rlryZTitledHelpFormatterr��version_templater	�relative_path_settingsrd�
components�populate_from_components�set_defaults_from_dictrs�get_standard_config_settingsrrrro)rnr�rsZread_config_filesrrZconfig_settingsrrrrrl?s" zOptionParser.__init__c
Cs�x�|D]�}|dkrq|j}|j�|j�x�tdt|�d�D]�}|||d�\}}}|rrt�|||�}|�|�n|}x@|D]8\}	}
}|j|
d|	i|��}|�	d�dkr|d|j
|j<q|W|jr:|j
�|j�q:WqWx$|D]}|r�|jr�|j
�|j�q�WdS)aE
        For each component, first populate from the `SettingsSpec.settings_spec`
        structure, then from the `SettingsSpec.settings_defaults` dictionary.
        After all components have been processed, check for and populate from
        each component's `SettingsSpec.settings_default_overrides` dictionary.
        Nrr^r�r�rNrJ)rer�r8rcrPrkZOptionGroupZadd_option_group�
add_option�getrqr}�settings_defaultsrsrZsettings_default_overrides)
rnr��	componentrer<�title�descriptionZoption_spec�groupZ	help_textZoption_stringsrrrrrr�_s,


z%OptionParser.populate_from_componentscs�ytjd�tj�}Wntk
r0|j}YnXtjj�dtjkrnyddl}Wnt	k
rldd��YnX�fdd�|D�S)	z:Return list of config files, from environment or standard.ZDOCUTILSCONFIG�HOMErNcSs|S)Nr)�xrrr�<lambda>��z8OptionParser.get_standard_config_files.<locals>.<lambda>csg|]}|��r�|��qSr)r-)r;�f)�expandrrr=�sz:OptionParser.get_standard_config_files.<locals>.<listcomp>)
rW�environr%�pathsepr/�standard_config_filesrU�
expanduser�pwd�ImportError)rnr�r�r)r�r�get_standard_config_files~s
z&OptionParser.get_standard_config_filescCs.t�}x"|��D]}|�|�|�|�qW|S)N)rir�rr)rnrf�filenamerrrr��sz)OptionParser.get_standard_config_settingscCs�t�}|�||�|j�|j�tj�|�}i}t�}xX|j	D]N}|sHq>xBt
|jpTd�|jfD](}||krnq`d||<|�
|�|�|�q`Wq>Wt|j|j|�|jS)zAReturns a dictionary containing appropriate config file settings.rrJ)�ConfigParser�readr�r8�_filesrWrU�dirnamerir�rdZconfig_section_dependenciesr r�get_sectionrZror�)rn�config_filerrVZappliedrfr��sectionrrrr�s$z%OptionParser.get_config_file_settingscCs,|�|�\|_|_t|j|j�|j|_|S)z/Store positional arguments as runtime settings.)�
check_argsr�r�rZror�r�r�)rnrrrrr�check_values�szOptionParser.check_valuescCshd}}|r"|�d�}|dkr"d}|r<|�d�}|dkr<d}|rJ|�d�|r`||kr`|�d�||fS)Nrr_zMaximum 2 arguments allowed.z_Do not specify the same file for both source and destination.  It will clobber the source file.)r7r)rnr�sourceZdestinationrrrr��s



zOptionParser.check_argscCs|j�|�dS)N)rsr)rnrsrrrr��sz#OptionParser.set_defaults_from_dictcCst|j�}|j|_|S)z(Needed to get custom `Values` instances.)rirsr�r�)rnrsrrr�get_default_values�s
zOptionParser.get_default_valuescCsDx2|j|gD]"}x|jD]}|j|kr|SqWqWtd|��dS)a
        Get an option by its dest.

        If you're supplying a dest which is shared by several options,
        it is undefined which option of those is returned.

        A KeyError is raised if there is no option with the supplied
        dest.
        zNo option with dest == %r.N)Z
option_groupsZoption_listr}r/)rnr}r�rrrr�get_option_by_dest�s


zOptionParser.get_option_by_dest)rNN)-rurvrwrxr�r%Zthreshold_choicesr4r,rr�sys�stderrrZdefault_error_encodingZ$default_error_encoding_error_handlerr0rrIr6r)r#rGrrr:rer�r�r rC�__version__Z__version_details__r��platformr�rlr�r�r�rr�r�r�r�r�rrrrr�csf

















 r�c@sPeZdZdddd�ZdZdZdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�ZdS)r�)zpep_html writerZ
stylesheet)zpep_html writerZstylesheet_path)zpep_html writer�template)Zpep_stylesheetZpep_stylesheet_pathZpep_templatea
The "[option]" section is deprecated.  Support for old-format configuration
files may be removed in a future Docutils release.  Please revise your
configuration files.  See <http://docutils.sf.net/docs/user/config.html>,
section "Old-Format Configuration Files".
zhUnable to read configuration file "%s": content not encoded as UTF-8.
Skipping "%s" configuration file.
cOs&tjj|f|�|�g|_t�|_dS)N)�CP�RawConfigParserrlr�r�_stderr)rnrrrrrrl�szConfigParser.__init__c	Cs�t|�ttfkr|g}x�|D]�}yt�|dd�}Wntk
rHwYnXy0tjdkrhtj�	|||�ntj�
|||�Wn4tk
r�|j�
|j||f�|��wYnX|��|j�|�|�d�r�|�|�|�||�qWdS)N�rzutf-8)r^r]�options)r��strr�openrFr��version_infor�r��readfp�	read_file�UnicodeDecodeErrorr��write�not_utf8_error�closer�rN�has_section�handle_old_config�validate_settings)rn�	filenamesrr��fprrrr��s(



zConfigParser.readcCs�t�|jt|d�|�d�}|�d�s0|�d�xht|���D]X\}}||j	krt|j	|\}}|�|�s||�|�nd}|}|�
||�s>|�|||�q>W|�d�dS)Nrr�r�)
�warnings�
warn_explicit�old_warning�ConfigDeprecationWarningr�r��add_sectionr	r
�old_settings�
has_optionr&�remove_section)rnr�r�rr
r�rrrrr�s





zConfigParser.handle_old_configc	Cs�x�|��D]�}x�|�|�D]�}y|�|�}Wntk
rBwYnX|jr�|�||�}y|j|||||d�}Wn<tk
r�}ztd||t|�||f��Wdd}~XYnX|�	|||�|j
r|�	||j
d�qWq
WdS)zi
        Call the validator function and implement overrides on all applicable
        settings.
        )rr zAError in config file "%s", section "[%s]":
    %s
        %s = %sN)�sectionsr�r�r/rzr�r~rrr&r{)	rnr�rr�rrr
r�rrrrr�'s(
zConfigParser.validate_settingscCs|���dd�S)zW
        Transform '-' to '_' so the cmdline form of option names can be used.
        r_r`)r.rb)rn�	optionstrrrr�optionxformCszConfigParser.optionxformcCs6i}|�|�r2x"|�|�D]}|�||�||<qW|S)zf
        Return a given section as a dictionary (empty if the section
        doesn't exist).
        )r�r�r�)rnr�Zsection_dictrrrrr�Is

zConfigParser.get_sectionN)rurvrwr�r�r�rlr�r�r�r�r�rrrrr��s		r�c@seZdZdZdS)r�z3Warning for deprecated configuration file features.N)rurvrwrxrrrrr�Usr�)NN)NN)NN)NN)NN)NN)NN)NN)NN)NN)NN)NN)NN)N)-rxZ
__docformat__rW�os.pathr�r��configparserr�rrkrrCZdocutils.utilsZdocutils.nodesZdocutils.utils.error_reportingrrrrrrr!r#r)r0r1r3r6r:r?rBrGrIrSrZrTrhriryr�ZSettingsSpecr�r��DeprecationWarningr�rrrr�<module>sL
	







	

	


"
~v