Hacked By AnonymousFox

Current Path : /opt/imunify360/venv/lib/python3.11/site-packages/docutils/transforms/__pycache__/
Upload File :
Current File : //opt/imunify360/venv/lib/python3.11/site-packages/docutils/transforms/__pycache__/references.cpython-311.pyc

�

j��fӏ��h�dZdZddlmZmZddlmZGd�de��ZGd�de��ZGd	�d
e��Z	Gd�de��Z
Gd
�de��ZGd�de��ZGd�de
��ZGd�de��ZGd�de��ZGd�de��ZGd�dej��ZdS)z&
Transforms for resolving references.
�reStructuredText�)�nodes�utils)�	Transformc��eZdZdZdZd�ZdS)�PropagateTargetsa}
    Propagate empty internal targets to the next element.

    Given the following nodes::

        <target ids="internal1" names="internal1">
        <target anonymous="1" ids="id1">
        <target ids="internal2" names="internal2">
        <paragraph>
            This is a test.

    PropagateTargets propagates the ids and names of the internal
    targets preceding the paragraph to the paragraph itself::

        <target refid="internal1">
        <target anonymous="1" refid="id1">
        <target refid="internal2">
        <paragraph ids="internal2 id1 internal1" names="internal2 internal1">
            This is a test.
    ic��|j�tj��D�]T}t	|jtj��s?|�d��s*|�d��s|�d��r�bt|��dks
Jd���|�	d���}t	|tj
��r1|�	dd�	��}t	|tj
���1|�@t	|tjtjf��rt	|tj��s��$|d
�
|d
��|d�
|d��t|d��si|_t|d
��si|_|d
D]}||jj|<||j|<�|dD]}||j|<�
|j�t%|di����|j�t%|d
i����|d
d|d<g|d
<g|d<|j�|����VdS)N�refid�refuri�refnamerz&error: block-level target has childrenT)�ascendF)r
�descend�ids�names�expect_referenced_by_name�expect_referenced_by_id)�document�findallr�target�
isinstance�parent�TextElement�hasattr�len�	next_node�system_message�	Invisible�
Targetable�extendrrr�update�getattr�
note_refid)�selfrr�id�names     �~/builddir/build/BUILD/imunify360-venv-2.3.5/opt/imunify360/venv/lib/python3.11/site-packages/docutils/transforms/references.py�applyzPropagateTargets.apply(s����m�+�+�E�L�9�9�-	-�-	-�F��6�=�%�*;�<�<�
��N�N�7�+�+�
�/5�~�~�h�/G�/G�
��~�~�i�0�0�
���v�;�;�!�#�#�#�%M�#�#�#��(�(��(�5�5�I��Y��(<�=�=�
L�%�/�/�t�U�/�K�K�	��Y��(<�=�=�
L��!��i�%�/�5�;K�)L�M�M�"�"�9�e�l�;�;�"���e��#�#�F�5�M�2�2�2��g��%�%�f�W�o�6�6�6��9�&A�B�B�
9�68�	�3��9�&?�@�@�
7�46�	�1��U�m�
?�
?��(1��
�!�"�%�9?�	�1�"�5�5��w��
C�
C��<B�	�3�D�9�9�
�/�6�6��� ;�R�@�@�
B�
B�
B��-�4�4��� 9�2�>�>�
@�
@�
@�%�U�m�A�.�F�7�O��F�5�M� �F�7�O��M�$�$�V�,�,�,�,�[-	-�-	-�N��__name__�
__module__�__qualname__�__doc__�default_priorityr'�r(r&rrs5��������*��.-�.-�.-�.-�.-r(rc��eZdZdZdZd�ZdS)�AnonymousHyperlinksa�
    Link anonymous references to targets.  Given::

        <paragraph>
            <reference anonymous="1">
                internal
            <reference anonymous="1">
                external
        <target anonymous="1" ids="id1">
        <target anonymous="1" ids="id2" refuri="http://external">

    Corresponding references are linked via "refid" or resolved via "refuri"::

        <paragraph>
            <reference anonymous="1" refid="id1">
                text
            <reference anonymous="1" refuri="http://external">
                external
        <target anonymous="1" ids="id1">
        <target anonymous="1" ids="id2" refuri="http://external">
    i�c�D�g}g}|j�tj��D],}|�d��r|�|���-|j�tj��D],}|�d��r|�|���-t|��t|��kr�|jj�	dt|���dt|���d���}|j�
|��}|D]g}tj|j|j|���}|j�
|��}|�
|��|�|���hdSt||��D]�\}}	d|	_	|	�d��r|	d|d<d|_nM|	d	s|jj|	d
}	�J|	d	d|d
<|j�|��	��dS)N�	anonymouszAnonymous hyperlink mismatch: z references but z+ targets.
See "backrefs" attribute for IDs.�r
�Trrr
r)rrr�	reference�get�appendrr�reporter�error�set_id�problematic�	rawsource�add_backref�replace_self�zip�
referencedr�resolvedrr")
r#�anonymous_refs�anonymous_targets�node�msg�msgid�ref�prb�prbidrs
          r&r'zAnonymousHyperlinks.applyssC�������M�)�)�%�/�:�:�	,�	,�D��x�x��$�$�
,��%�%�d�+�+�+���M�)�)�%�,�7�7�	/�	/�D��x�x��$�$�
/�!�(�(��.�.�.���~���#�&7�"8�"8�8�8��-�(�.�.�.���(�(�(�(�#�.?�*@�*@�*@�*@�B�C�C�C��M�(�(��-�-�E�%�
&�
&���'��m�S�]�%�A�A�A���
�,�,�S�1�1������&�&�&�� � ��%�%�%�%��F��~�/@�A�A�	�	�K�C�� !�F��
��>�>�(�+�+��$*�8�$4�C��M�#$�C�L��!�%�=�!�!%��!2�6�'�?�!C�� �#)�%�=��#3�C��L��M�,�,�S�1�1�1���	�	r(Nr)r/r(r&r1r1Ys5��������,��$�$�$�$�$r(r1c�:�eZdZdZdZd�Zd�Zd�Zd�Zd�Z	d�Z
d	S)
�IndirectHyperlinksaN
    a) Indirect external references::

           <paragraph>
               <reference refname="indirect external">
                   indirect external
           <target id="id1" name="direct external"
               refuri="http://indirect">
           <target id="id2" name="indirect external"
               refname="direct external">

       The "refuri" attribute is migrated back to all indirect targets
       from the final direct target (i.e. a target not referring to
       another indirect target)::

           <paragraph>
               <reference refname="indirect external">
                   indirect external
           <target id="id1" name="direct external"
               refuri="http://indirect">
           <target id="id2" name="indirect external"
               refuri="http://indirect">

       Once the attribute is migrated, the preexisting "refname" attribute
       is dropped.

    b) Indirect internal references::

           <target id="id1" name="final target">
           <paragraph>
               <reference refname="indirect internal">
                   indirect internal
           <target id="id2" name="indirect internal 2"
               refname="final target">
           <target id="id3" name="indirect internal"
               refname="indirect internal 2">

       Targets which indirectly refer to an internal target become one-hop
       indirect (their "refid" attributes are directly set to the internal
       target's "id"). References which indirectly refer to an internal
       target become direct internal references::

           <target id="id1" name="final target">
           <paragraph>
               <reference refid="id1">
                   indirect internal
           <target id="id2" name="indirect internal 2" refid="id1">
           <target id="id3" name="indirect internal" refid="id1">
    i�c��|jjD]3}|js|�|��|�|���4dS�N)r�indirect_targetsrB�resolve_indirect_target�resolve_indirect_references�r#rs  r&r'zIndirectHyperlinks.apply�sU���m�4�	5�	5�F��?�
5��,�,�V�4�4�4��,�,�V�4�4�4�4�	5�	5r(c��|�d��}|�	|d}nY|jj�|��}|s8|jjjD]}||��rn�|�|��dS|jj|}|�|���t|tj
��ra|jsZ|�d��rEt|d��r|�
|��dSd|_|�|��|`|�d��r|d|d<d|vr|d=nz|�d��r&|d|d<|j�|��n?|dr ||d<|j�|��n|�|��dS|�|d=d|_dS)Nrr
�r$�multiply_indirectr5rr)r7r�nameids�transformer�unknown_reference_resolvers�nonexistent_indirect_targetr�note_referenced_byrrrrBr�circular_indirect_referencerUrPr")r#rr�reftarget_id�resolver_function�	reftargets      r&rPz*IndirectHyperlinks.resolve_indirect_target�s���*�*�Y�'�'���?�!�'�?�L�L��=�0�4�4�W�=�=�L��
��
�1�M�=�=�%�(�(��0�0������4�4�V�<�<�<����M�%�l�3�	��$�$��$�5�5�5��y�%�,�/�/�	)��&�	)��!�!�)�,�,�	)��v�2�3�3�
��0�0��8�8�8���'(�F�$��(�(��3�3�3��(����X�&�&�
	�(��2�F�8���&� � ��7�O��
�
�
�w�
'�
'�		�'��0�F�7�O��M�$�$�V�,�,�,�,����
�".��w���
�(�(��0�0�0�0��0�0��8�8�8������y�!�����r(c��|d|jjvr|�|d��dS|�|d��dS)Nrz>which is a duplicate, and cannot be used as a unique referencezwhich does not exist)rrV�indirect_target_errorrRs  r&rYz.IndirectHyperlinks.nonexistent_indirect_targetse���)���
� 5�5�5��&�&�v�0N�
O�
O�
O�
O�
O�
�&�&�v�/E�F�F�F�F�Fr(c�2�|�|d��dS)Nzforming a circular reference)r`rRs  r&r[z.IndirectHyperlinks.circular_indirect_reference	s���"�"�6�+I�J�J�J�J�Jr(c	��d}g}|drd|ddz}|dD]5}|�|jj�|g�����6|dD]5}|�|jj�|g�����6|dr|d|ddzz
}|jj�d|�d|d	�d
|�d�|���}|j�|��}tj	|��D]g}	tj|	j|	j|�
��}
|j�|
��}|�
|��|	�|
���hd|_dS)N�rz"%s" rrz	(id="%s")zIndirect hyperlink target z refers to target "rz", �.��	base_noder4r5)rr�refnamesr7�refidsr9r:r;r�uniqrr<r=r>r?rB)r#r�explanation�naming�reflistr%r$rFrGrHrIrJs            r&r`z(IndirectHyperlinks.indirect_target_errors��������'�?�	2��v�g��q�1�1�F��7�O�	A�	A�D��N�N�4�=�1�5�5�d�B�?�?�@�@�@�@���-�	=�	=�B��N�N�4�=�/�3�3�B��;�;�<�<�<�<��%�=�	5��k�F�5�M�!�$4�4�4�F��m�$�*�*�*�����	�*�*�*�K�K�K�9�DJ�+�L�L���
�$�$�S�)�)���:�g�&�&�	"�	"�C��#��-���e�=�=�=�C��M�(�(��-�-�E��O�O�E�"�"�"����S�!�!�!�!�����r(c��|�d��rd}|jj}n|�d��rd}d}ndS||}|dD]�}|jj�|g��}|r|�|���|D]U}|jr�
|d=|||<|r||��d|_t|tj	��r|�
|���V��|dD]�}|jj�|g��}|r|�|���|D]U}|jr�
|d=|||<|r||��d|_t|tj	��r|�
|���V��dS)	Nr
rr�r%rr5rrT)rrr"rgr7rZrBrrrrQrh)	r#r�attname�call_method�attvalr%rlrHr$s	         r&rQz.IndirectHyperlinks.resolve_indirect_references#s����>�>�'�"�"�	��G��-�2�K�K�
�^�^�H�
%�
%�	��G��K�K��F������7�O�
	:�
	:�D��m�,�0�0��r�:�:�G��
5��)�)�t�)�4�4�4��	
:�	
:���<����	�N�%��G���%��K��$�$�$� ����c�5�<�0�0�:��4�4�S�9�9�9��	
:���-�
	:�
	:�B��m�*�.�.�r�2�6�6�G��
1��)�)�R�)�0�0�0��	
:�	
:���<�����L�%��G���%��K��$�$�$� ����c�5�<�0�0�:��4�4�S�9�9�9��	
:�	
	:�
	:r(N)r*r+r,r-r.r'rPrYr[r`rQr/r(r&rLrL�s�������0�0�d��5�5�5�*�*�*�XG�G�G�K�K�K����.%:�%:�%:�%:�%:r(rLc��eZdZdZdZd�ZdS)�ExternalTargetsa�
    Given::

        <paragraph>
            <reference refname="direct external">
                direct external
        <target id="id1" name="direct external" refuri="http://direct">

    The "refname" attribute is replaced by the direct "refuri" attribute::

        <paragraph>
            <reference refuri="http://direct">
                direct external
        <target id="id1" name="direct external" refuri="http://direct">
    i�c�L�|j�tj��D]~}|�d��rg|d}|dD]V}|jj�|g��}|r|�|���|D]}|jr�
|d=||d<d|_��W�dS)Nrrrnrr5)	rrrrrrgr7rZrB)r#rrr%rlrHs      r&r'zExternalTargets.apply_s����m�+�+�E�L�9�9�	)�	)�F��~�~�h�'�'�
)���)��"�7�O�	)�	)�D�"�m�4�8�8��r�B�B�G��=��1�1�t�1�<�<�<�&�)�)���<�%�$��	�N�(.��H�
�'(����)��	)�	)r(Nr)r/r(r&rsrsKs5�������� ��
)�
)�
)�
)�
)r(rsc��eZdZdZd�Zd�ZdS)�InternalTargetsi�c���|j�tj��D]A}|�d��s*|�d��s|�|���BdS)Nrr
)rrrrr�resolve_reference_idsrRs  r&r'zInternalTargets.applyssi���m�+�+�E�L�9�9�	3�	3�F��>�>�(�+�+�
3�F�N�N�7�4K�4K�
3��*�*�6�2�2�2��	3�	3r(c��|dD]w}|jj�|��}|jj�|g��}|r|�|���|D]}|jr�
|r|d=||d<d|_��xdS)a�
        Given::

            <paragraph>
                <reference refname="direct internal">
                    direct internal
            <target id="id1" name="direct internal">

        The "refname" attribute is replaced by "refid" linking to the target's
        "id"::

            <paragraph>
                <reference refid="id1">
                    direct internal
            <target id="id1" name="direct internal">
        rrnrr
r5N)rrVr7rgrZrB)r#rr%r
rlrHs      r&rxz%InternalTargets.resolve_reference_idsxs���"�7�O�	!�	!�D��M�)�-�-�d�3�3�E��m�,�0�0��r�:�:�G��
5��)�)�t�)�4�4�4��
!�
!���<����)��I��#(�C��L� ����

!�	!�	!r(N)r*r+r,r.r'rxr/r(r&rvrvos8��������3�3�3�
!�!�!�!�!r(rvc�H�eZdZdZdZdZ	gd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�ZdS)�	Footnotesa�
    Assign numbers to autonumbered footnotes, and resolve links to footnotes,
    citations, and their references.

    Given the following ``document`` as input::

        <document>
            <paragraph>
                A labeled autonumbered footnote reference:
                <footnote_reference auto="1" id="id1" refname="footnote">
            <paragraph>
                An unlabeled autonumbered footnote reference:
                <footnote_reference auto="1" id="id2">
            <footnote auto="1" id="id3">
                <paragraph>
                    Unlabeled autonumbered footnote.
            <footnote auto="1" id="footnote" name="footnote">
                <paragraph>
                    Labeled autonumbered footnote.

    Auto-numbered footnotes have attribute ``auto="1"`` and no label.
    Auto-numbered footnote_references have no reference text (they're
    empty elements). When resolving the numbering, a ``label`` element
    is added to the beginning of the ``footnote``, and reference text
    to the ``footnote_reference``.

    The transformed result will be::

        <document>
            <paragraph>
                A labeled autonumbered footnote reference:
                <footnote_reference auto="1" id="id1" refid="footnote">
                    2
            <paragraph>
                An unlabeled autonumbered footnote reference:
                <footnote_reference auto="1" id="id2" refid="id3">
                    1
            <footnote auto="1" id="id3" backrefs="id2">
                <label>
                    1
                <paragraph>
                    Unlabeled autonumbered footnote.
            <footnote auto="1" id="footnote" name="footnote" backrefs="id1">
                <label>
                    2
                <paragraph>
                    Labeled autonumbered footnote.

    Note that the footnotes are not in the same order as the references.

    The labels and reference text are added to the auto-numbered ``footnote``
    and ``footnote_reference`` elements.  Footnote elements are backlinked to
    their references via "refids" attributes.  References are assigned "id"
    and "refid" attributes.

    After adding labels and reference text, the "auto" attributes can be
    ignored.
    ilN)
�*u†u‡�§�¶�#u♠u♥u♦u♣c���g|_|jj}|�|��|j_|�|��|���|���dSrN)�autofootnote_labelsr�autofootnote_start�number_footnotes�number_footnote_references�symbolize_footnotes�resolve_footnotes_and_citations)r#�startnums  r&r'zFootnotes.apply�sj��#%�� ��=�3��+/�+@�+@��+J�+J��
�(��'�'��1�1�1�� � �"�"�"��,�,�.�.�.�.�.r(c�L�|jjD�]�}	t|��}|dz
}||jjvrn�$|�dtjd|����|dD]�}|jj�|g��D]�}|tj	|��z
}|�
d��t|d��t|d��cxkrdksnJ�|dd|d<|�|dd��|j�
|��d|_����|dsX|d	sP|d�|��|j�||��|j�|�����|S)
z�
        Assign numbers to autonumbered footnotes.

        For labeled autonumbered footnotes, copy the number over to
        corresponding footnote references.
        Tr5rrcrrrr
�dupnames)r�
autofootnotes�strrV�insertr�label�
footnote_refsr7�Text�delattrrr>r"rBr8�note_explicit_targetr�)r#r��footnoter�r%rHs      r&r�zFootnotes.number_footnotes�s����
�3�	7�	7�H�
��H�
�
���A�
����
� 5�5�5��	
�

�O�O�A�u�{�2�u�5�5�6�6�6� ��)�
%�
%���=�6�:�:�4��D�D�%�%�C��5�:�e�,�,�,�C��K�K�	�*�*�*��x���/�/�3�s�5�z�?�?�G�G�G�G�a�G�G�G�G�G�G�#+�E�?�1�#5�C��L��(�(��U��A��7�7�7��M�,�,�S�1�1�1�#$�C�L�L�%��G�$�
7�X�j�-A�
7���!�(�(��/�/�/��
�2�2�8�X�F�F�F��(�/�/��6�6�6���r(c��d}|jjD�]�}|js|�d��r� 	|j|}n�#t
$r�|jj�dt|j��z|���}|j�	|��}|jj|d�D]�}|js|�d��r�tj|j|j|���}|j�	|��}|�
|��|�|����YdSwxYw|tj|��z
}|jj|}	|jj|	}
|	|d<|j�|��t|d��d	ksJ�|
�
|dd��d	|_|d	z
}���dS)
z3Assign numbers to autonumbered footnote references.rr
zUToo many autonumbered footnote references: only %s corresponding footnotes available.reNrr4rr5)r�autofootnote_refsrBrr��
IndexErrorr9r:rr;rr<r=r>r?r�rVrr")r#r��irHr�rFrGrIrJr$r�s           r&r�z$Footnotes.number_footnote_referencess��
���=�2�	�	�C��|�
�s�{�{�7�3�3�
��
��0��3�����
�
�
��m�,�2�2�;��D�4�5�5�6�AD�3�F�F���
�,�,�S�1�1���=�:�1�2�2�>�*�*�C��|�!�s�{�{�9�'=�'=�!� ��+��-���e�E�E�E�C� �M�0�0��5�5�E��O�O�E�*�*�*��$�$�S�)�)�)�)�����
����
�5�:�e�$�$�$�C���&�u�-�B��}�(��,�H��C��L��M�$�$�S�)�)�)��s�5�z�?�?�a�'�'�'�'�� � ��U��A��/�/�/��C�L�
��F�A�A�9	�	s�
>�C3D6�5D6c���g}|jjD]�}t|jjt	|j����\}}|j||dzz}|�|��|�dtj	d|����|jxjdz
c_|j�
|����d}|jjD�]�}	|tj||��z
}n�#t$r�|jj�dt	|��z|���}|j�
|��}	|jj|d�D]�}|js|�d��r�tj|j|j|	���}
|j�
|
��}|�|��|�|
����YdSwxYw|jj|}t	|d	��dksJ�|d	d|d<|j�|��|�|d	d��|dz
}���dS)
z<Add symbols indexes to "[*]"-style footnotes and references.r5rrczOToo many symbol footnote references: only %s corresponding footnotes available.reNr
r4r)r�symbol_footnotes�divmod�symbol_footnote_startr�symbolsr8r�rr�r;�symbol_footnote_refsr�r�r9r:rBrr<r=r>r?r")r#�labelsr��reps�index�	labeltextr�rHrFrGrIrJs            r&r�zFootnotes.symbolize_footnotes0s������
�6�	+�	+�H� ���!D�!$�T�\�!2�!2�4�4�K�D�%���U�+�t�a�x�8�I��M�M�)�$�$�$��O�O�A�u�{�2�y�9�9�:�:�:��M�/�/�1�4�/�/��M� � ��*�*�*�*�
���=�5�	�	�C�
��u�z�&��)�,�,�,�����
�
�
��m�,�2�2�;�=@��[�[�I� #�3�%�%���
�,�,�S�1�1���=�=�a�b�b�A�*�*�C��|�!�s�{�{�7�';�';�!� ��+��-���e�E�E�E�C� �M�0�0��5�5�E��O�O�E�*�*�*��$�$�S�)�)�)�)�����
�����}�5�a�8�H��x���'�'�1�,�,�,�,�#�E�?�1�-�C��L��M�$�$�S�)�)�)�� � ��U��A��/�/�/�
��F�A�A�/	�	s�C1�1C.G$�#G$c�F�|jjD]C}|dD]8}||jjvr(|jj|}|�||���9�D|jjD]C}|dD]8}||jjvr(|jj|}|�||���9�DdS)za
        Link manually-labeled footnotes and citations to/from their
        references.
        rN)r�	footnotesr��resolve_references�	citations�
citation_refs)r#r�r�rl�citations     r&r�z)Footnotes.resolve_footnotes_and_citationsUs���
�
�/�	?�	?�H�!�'�*�
?�
?���D�M�7�7�7�"�m�9�%�@�G��+�+�H�g�>�>�>��
?��
�/�	?�	?�H�!�'�*�
?�
?���D�M�7�7�7�"�m�9�%�@�G��+�+�H�g�>�>�>��
?�	?�	?r(c�:�t|d��dksJ�|dd}|D]g}|jr�
|�d��||d<t|d��dksJ�|�|dd��d|_�hd|_dS)Nrr5rrr
)rrBr�r>)r#�noterlr$rHs     r&r�zFootnotes.resolve_referenceses����4��;���1�$�$�$�$�
�%�[��^���	�	�C��|�
���K�K�	�"�"�"��C��L��s�5�z�?�?�a�'�'�'�'����S��Z��]�+�+�+��C�L�L���
�
�
r()
r*r+r,r-r.r�r�r'r�r�r�r�r�r/r(r&r{r{�s�������9�9�v����9����G�"/�/�/����:���B#�#�#�J?�?�?� ����r(r{c��eZdZdS)�#CircularSubstitutionDefinitionErrorN)r*r+r,r/r(r&r�r�ss�������Dr(r�c��eZdZdZdZ	d�ZdS)�
SubstitutionsaD
    Given the following ``document`` as input::

        <document>
            <paragraph>
                The
                <substitution_reference refname="biohazard">
                    biohazard
                 symbol is deservedly scary-looking.
            <substitution_definition name="biohazard">
                <image alt="biohazard" uri="biohazard.png">

    The ``substitution_reference`` will simply be replaced by the
    contents of the corresponding ``substitution_definition``.

    The transformed result will be::

        <document>
            <paragraph>
                The
                <image alt="biohazard" uri="biohazard.png">
                 symbol is deservedly scary-looking.
            <substitution_definition name="biohazard">
                <image alt="biohazard" uri="biohazard.png">
    ��c	��	�|jj}|jj}i}t|jjdd��}t|j�tj����}|D�]�}d}|d}||vr|}	n*|�	��}
|�
|
d��}	|	�%|jj�d|z|���}nO||	}t|�����|kr"|jj�d|	z��}|r�|j�|��}tj|j|j|���}
|j�|
��}|�|��|�|
����7|j}|�|��}d	|jvs	d
|jvrL|dkrFt/||dz
tj��r#||dz
���||dz
<d
|jvs	d
|jvr\t|��|dzkrFt/||dztj��r#||dz���||dz<|���}	|�tj��D]v}||d�	��}||�|g��vrt:�||�|	��||d<|�|���w�ne#t:$�rW|j}t/|tj��r[|jj�dtj |j|j��|j!|���}|�|��n�|}|�"d��r|d}|�"d���|jj�d|z|���}|j�|��}tj|j|j|���}
|j�|
��}|�|��|�|
��Y��-wxYw|�|j#��|j#D]:}t/|tj$��rd|vr|j�%|���;���dS)N�line_length_limiti'rcrz(Undefined substitution referenced: "%s".rez;Substitution definition "%s" exceeds the line-length-limit.r4�ltrim�trimrr5�rtrimz
ref-originz*Circular substitution definition detected:)�linerfz2Circular substitution definition referenced: "%s".)&r�substitution_defs�substitution_namesr!�settings�listrr�substitution_reference�lowerr7r9r:r�astextr;r<r=r>r?rr��
attributesrr��rstrip�lstrip�deepcopy�
setdefaultr�r8�substitution_definition�
literal_blockr�r�children�Referential�note_refname)r#�defs�normed�nestedr��
subreflistrHrFr�key�normed_name�subdefrGrIrJrr��subdef_copy�
nested_ref�nested_name�
ref_originrEs                      r&r'zSubstitutions.apply�sK���}�.����1����#�D�M�$:�$7��@�@���$�-�/�/��0L�M�M�N�N�
��R	9�R	9�C��C��)�n�G��$������%�m�m�o�o���j�j��d�3�3���{��m�,�2�2�@�� �+.�3�0�0����c����v�}�}���'�'�*;�;�;��-�0�6�6�2�47�8�9�9�C��
��
�,�,�S�1�1���'��m�S�]�%�A�A�A���
�,�,�S�1�1������&�&�&�� � ��%�%�%���Z�F��L�L��%�%�E��6�,�,�,��V�.�.�.��1�9�9��F�5�1�9�,=�,1�J�"8�"8�9�(.�u�q�y�(9�(@�(@�(B�(B�F�5�1�9�%��6�,�,�,��V�.�.�.���K�K�%�!�)�+�+�"�6�%�!�)�#4�e�j�A�A�,�(.�u�q�y�(9�(@�(@�(B�(B�F�5�1�9�%� �/�/�+�+�K�!
�"-�"5�"5��4�#6�#6�2�2�J�"(��I�)>�)D�)D�)F�)F�"G�K�"�f�&7�&7��R�&H�&H�H�H�A�A��;�'�.�.�s�3�3�3�/2�J�|�,��%�%�j�1�1�1�1�2��7�
�
�
�����f�e�&C�D�D�*��-�0�6�6�D��+�F�,<�,2�,<�>�>�#�[�F�	7�<�<�C�
�'�'��,�,�,�,�"%�J�$�,�,�\�:�:�>�%/��%=�
�%�,�,�\�:�:�>��-�0�6�6� �")�*�5?�7�A�A�C�!�M�0�0��5�5�E��+��
�s�}�E�C�C�C�C� �M�0�0��5�5�E��O�O�E�*�*�*��$�$�S�)�)�)���/
����0
���[�1�2�2�2�$�,�
9�
9���d�E�$5�6�6�9�!�D�(�(��
�2�2�4�8�8�8��
9�[R	9�R	9s�BL5�5ER�RNr)r/r(r&r�r�ws?��������4��>�Z9�Z9�Z9�Z9�Z9r(r�c�*�eZdZdZdZ	d�Zd�Zd�ZdS)�TargetNotesz�
    Creates a footnote for each external target in the text, and corresponding
    footnote references after each reference.
    ic�t�tj|||���|j�dg��|_dS)N)�	startnode�class)r�__init__�detailsr7�classes)r#rr�s   r&r�zTargetNotes.__init__�s8����4��Y�?�?�?�?� �(�,�,�W�b�9�9����r(c��i}g}|j�tj��D]�}|�d��s�|d}g}|D]5}|�|jj�|g�����6|s�]|�|d||��}|d|vr |||d<|�	|����|j�tj
��D]u}|�d��s�|�d��rH|�|d|g|��}|d|vr |||d<|�	|���v|j�|��dS)Nrrr3)
rrrrrrrgr7�make_target_footnoter8r6r�r?)	r#�notes�nodelistrr�refsr%r�rHs	         r&r'zTargetNotes.applys��������m�+�+�E�L�9�9�	*�	*�F��>�>�(�+�+�
���7�O�E��D��
B�
B�����D�M�2�6�6�t�R�@�@�A�A�A�A��
���0�0���1A�4�16�8�8�H��h��u�,�,�*2��f�X�&�'�����)�)�)���=�(�(���9�9�	.�	.�C��7�7�;�'�'�
���{�{�8�$�$�
.��4�4�S��]�S�E�5:�<�<���x�=��-�-�+3�E�#�h�-�(��O�O�H�-�-�-����#�#�H�-�-�-�-�-r(c�,�||vr2||}t|d��dksJ�|dd}n�tj��}|j�|��}d|z}d|d<|g|d<tj��}|tjd||���z
}||z
}|j�|��|j�||��|D�]5}t|tj
��r�tj|d���}	|	d	xx|jz
cc<|j�
|	��|j�|	��|j�|��dz}
|	g}t#j|jj��s_|jr0|�dtjd
|j�����n(|�dtjd
����|j�|
|����7|S)Nrr5rz
TARGET_NOTE: �autorc)r)rr�r�� )�text�Classes)rrr�rr;�	paragraphr6�note_autofootnoter�rr�footnote_referencer��note_autofootnote_ref�note_footnote_refrr�r�get_trim_footnote_ref_spacer�r��inliner�)r#rr�r�r��
footnote_name�footnote_id�footnote_paragraphrH�refnoder�rls            r&r�z TargetNotes.make_target_footnote"s%���U�?�?��V�}�H��x��(�)�)�Q�.�.�.�.�$�W�-�a�0�M�M��~�'�'�H��-�.�.�x�8�8�K�,�k�9�M� �H�V��!.��H�W��!&��!2�!2���%�/�"�f�V�"L�"L�"L�L���*�*�H��M�+�+�H�5�5�5��M�.�.�x��B�B�B��	.�	.�C��#�u�|�,�,�
���.�}�1�M�M�M�G��I����$�,�.�����M�/�/��8�8�8��M�+�+�G�4�4�4��J�$�$�S�)�)�A�-�E��i�G��4�T�]�5K�L�L�
7��<�7��N�N��5�<�S�$�,�G�G�G�I�I�I�I��N�N�1�e�j��o�o�6�6�6��J���e�W�-�-�-�-��r(N)r*r+r,r-r.r�r'r�r/r(r&r�r��sX��������
���:�:�:�
.�.�.�<"�"�"�"�"r(r�c��eZdZdZdZd�ZdS)�DanglingReferencesze
    Check for dangling references (incl. footnote & citation) and for
    unreferenced targets.
    iRc��t|j|jjj��}|j�|��|j�tj��D]y}|jsp|�	d��r�|dr|dd}n|dr|dd}n|d}|jj
�d|z|����zdS)Nr3rrrr
z(Hyperlink target "%s" is not referenced.re)�DanglingReferencesVisitorrrWrX�walkrrrrAr7r9�info)r#�visitorrrks    r&r'zDanglingReferences.applyPs��+��M��M�%�A�C�C��	
�
���7�#�#�#��m�+�+�E�L�9�9�	0�	0�F��$�
0��:�:�k�*�*��
��'�?�-�#�G�_�Q�/�F�F��E�]�-�#�E�]�1�-�F�F�$�G�_�F��
�&�+�+�>���(.�,�0�0�0��!	0�	0r(Nr)r/r(r&r�r�Gs5��������
��0�0�0�0�0r(r�c�(�eZdZd�Zd�Zd�ZexZZdS)r�c�b�tj�||��||_||_dSrN)r�SparseNodeVisitorr�rrX)r#rrXs   r&r�z"DanglingReferencesVisitor.__init__ns0��
��(�(��x�8�8�8� ��
�+F��(�(�(r(c��dSrNr/)r#rEs  r&�
unknown_visitz'DanglingReferencesVisitor.unknown_visitss���r(c��|js|�d��sdS|d}|jj�|��}|��[|jD]}||��rdS�t
|jjdd��r#t|tj
��r	d|_dS||jjvr+|jj�d|dz|���}n+|jj�d|d�d�|���}|j�
|��}tj|j|j|�	��}	|d
d}n*#t $r|j�
|��}YnwxYw|�|��|�|��dS|d=||d<|jj|�|�
��d|_dS)Nr�
use_bibtexFTzBDuplicate target name, cannot be used as a unique reference: "%s".rezUnknown target name: "z".r4rrr
rT)rBrrrVr7rXr!r�rr�citation_referencer9r:r;r<r=r�r>r?rrZ)	r#rErr$r]rFrGrIrJs	         r&�visit_referencez)DanglingReferencesVisitor.visit_referencevs#���=�	����Y� 7� 7�	��F��y�/��
�]�
"�
&�
&�w�
/�
/��
�:�%)�%E�
'�
'�!�$�$�T�*�*���E�E���D�M�2�L�%�H�H��"�4��)A�B�B��%)�D�M��F��d�m�3�3�3��-�0�6�6�+�.2�9�o�?�JN�7�P�P�C�C��-�0�6�6�D��i��D�D�D�"&�7�(�(�C��
�,�,�S�1�1���'��n�d�n�E�C�C�C��6� ��K��N�E�E��!�6�6�6� �M�0�0��5�5�E�E�E�6��������&�&�&��!�!�#�&�&�&�&�&��Y���D��M��M��b�!�4�4��4�;�;�;� �D�M�M�Ms�?E�$E5�4E5N)r*r+r,r�r�r��visit_footnote_reference�visit_citation_referencer/r(r&r�r�lsP������G�G�G�

�
�
�$!�$!�$!�L;J�I��7�7�7r(r�N)r-�
__docformat__�docutilsrr�docutils.transformsrrr1rLrsrvr{�	Exceptionr�r�r�r�r�r�r/r(r&�<module>rsV��
��#�
�!�!�!�!�!�!�!�!�)�)�)�)�)�)�G-�G-�G-�G-�G-�y�G-�G-�G-�T>�>�>�>�>�)�>�>�>�Bn:�n:�n:�n:�n:��n:�n:�n:�b!)�!)�!)�!)�!)�i�!)�!)�!)�H%!�%!�%!�%!�%!�i�%!�%!�%!�PY�Y�Y�Y�Y�	�Y�Y�Y�x	�	�	�	�	�)�	�	�	�z9�z9�z9�z9�z9�I�z9�z9�z9�zP�P�P�P�P�)�P�P�P�f"0�"0�"0�"0�"0��"0�"0�"0�J0J�0J�0J�0J�0J�� 7�0J�0J�0J�0J�0Jr(

Hacked By AnonymousFox1.0, Coded By AnonymousFox