o
    ^iz                     @   s~  U d Z ddlmZmZmZmZmZmZmZm	Z	 ddl
mZ ddlmZmZmZ ddlmZ ddlmZ ddlmZmZmZ dd	lmZ dd
lmZmZmZmZ ee	d ef Z				d de de dee deee  def
ddZ!e!dg ddZ"ee#d< i Z$eee ee eee  f ef e#d< 			d!de%de dee deee  dee%eee%ef  f f
ddZg dZ&dZ'dZ(dS )"z
mistune
~~~~~~~

A fast yet powerful Python Markdown parser with renderers and
plugins, compatible with sane CommonMark rules.

Documentation: https://mistune.lepture.com/
    )AnyDictIterableListOptionalTupleUnionLiteral   )BlockParser)BaseRenderer
BlockStateInlineState)InlineParser)Markdown)Plugin	PluginRefimport_plugin)HTMLRenderer)escape
escape_urlsafe_entityunikey)htmlastTFr   Nr   	hard_wraprendererpluginsreturnc                 C   sR   |dkrd}n	|dkrt | d}t|d}d}|dur"dd |D }t|||dS )	a  Create a Markdown instance based on the given condition.

    :param escape: Boolean. If using html renderer, escape html.
    :param hard_wrap: Boolean. Break every new line into ``<br>``.
    :param renderer: renderer instance, default is HTMLRenderer.
    :param plugins: List of plugins.

    This method is used when you want to re-use a Markdown instance::

        markdown = create_markdown(
            escape=False,
            hard_wrap=True,
        )
        # re-use markdown function
        markdown('.... your text ...')
    r   Nr   )r   )r   c                 S   s   g | ]}t |qS  )r   ).0nr   r   K/home/ubuntu/hpml_nyu/venv/lib/python3.10/site-packages/mistune/__init__.py
<listcomp>6   s    z#create_markdown.<locals>.<listcomp>)r   inliner   )r   r   r   )r   r   r   r   r$   real_pluginsr   r   r"   create_markdown   s   

r&   )strikethrough	footnotestablespeedup)r   r   __cached_parserstextc                 C   sH   |dkrd }|||f}|t v rt | | S t|||d}|t |< || S )Nr   )r   r   r   )r+   r&   )r,   r   r   r   keymdr   r   r"   markdown@   s   
r/   )r   r   r   r   r   r   r   r   r   r   r   r   r&   r/   z3.2.0zhttps://mistune.lepture.com/)TFr   N)Tr   N))__doc__typingr   r   r   r   r   r   r   r	   block_parserr   corer   r   r   inline_parserr   r/   r   r   r   r   r   renderers.htmlr   utilr   r   r   r   RendererRefboolr&   r   __annotations__r+   str__all____version____homepage__r   r   r   r"   <module>   sX    (


#*

