§
    £”j«O  ã                  ó¬  — U d Z ddlmZ ddlmZ ddlmZmZ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 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"m#Z#m$Z$ ddl%m&Z&m'Z' dZ(de)d<    G d„ de ¦  «        Z* G d„ de ¦  «        Z+ G d„ de ¦  «        Z, G d„ de ¦  «        Z- G d„ de ¦  «        Z. G d„ de ¦  «        Z/ G d„ d¦  «        Z0d S )!z'Section-related custom element classes.é    )Úannotations)Údeepcopy)ÚCallableÚIteratorÚListÚSequenceÚcast)Úetree)Ú	TypeAlias)ÚWD_HEADER_FOOTERÚWD_ORIENTATIONÚWD_SECTION_START)Únsmap)ÚCT_OnOff)ÚST_SignedTwipsMeasureÚST_TwipsMeasureÚ	XsdString)ÚCT_Tbl)ÚCT_P)ÚBaseOxmlElementÚOptionalAttributeÚRequiredAttributeÚ
ZeroOrMoreÚ	ZeroOrOne)ÚLengthÚlazypropertyzCT_P | CT_Tblr   ÚBlockElementc                  óˆ   — e Zd ZU dZded<   ded<   ded<   ded	<    ed
d¬¦  «        Z edd¬¦  «        Zedd„¦   «         Z	dS )Ú	CT_HdrFtrzN`w:hdr` and `w:ftr`, the root element for header and footer part respectively.zCallable[[], CT_P]Úadd_pz
List[CT_P]Úp_lstzList[CT_Tbl]Útbl_lstzCallable[[CT_Tbl], CT_Tbl]Ú_insert_tblzw:p© ©Ú
successorszw:tblÚreturnúList[CT_P | CT_Tbl]c                ó,   — |                       d¦  «        S )z×Generate all `w:p` and `w:tbl` elements in this header or footer.

        Elements appear in document order. Elements shaded by nesting in a `w:ins` or
        other "wrapper" element will not be included.
        z./w:p | ./w:tbl)Úxpath©Úselfs    ú`/var/www/finuniver-perm.ru/html/portfolio/venv/lib/python3.11/site-packages/docx/oxml/section.pyÚinner_content_elementsz CT_HdrFtr.inner_content_elements)   s   € ð �zŠzÐ+Ñ,Ô,Ð,ó    N)r'   r(   )
Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú__annotations__r   ÚpÚtblÚpropertyr.   r$   r/   r-   r   r      s’   € € € € € € ØXÐXàÐÐÑØÐÐÑØÐÐÑà+Ð+Ð+Ñ+àˆ
�5 RÐ(Ñ(Ô(€AØ
ˆ*�W¨Ð
,Ñ
,Ô
,€Càð-ð -ð -ñ „Xð-ð -ð -r/   r   c                  óX   — e Zd ZU dZ ede¦  «        Zded<    ede¦  «        Z	ded<   dS )	ÚCT_HdrFtrRefz5`w:headerReference` and `w:footerReference` elements.úw:typer   Útype_zr:idÚstrÚrIdN)
r0   r1   r2   r3   r   r   r;   r4   r   r=   r$   r/   r-   r9   r9   3   sd   € € € € € € Ø?Ð?à/Ð/ØÐ"ñô €Eð ð ð ñ ð !Ð  ¨Ñ3Ô3€CÐ3Ð3Ð3Ñ3Ð3Ð3r/   r9   c                  ó  — e Zd ZU dZ ede¦  «        Zded<    ede¦  «        Z	ded<    ede¦  «        Z
ded<    ed	e¦  «        Zded
<    ede¦  «        Zded<    ede¦  «        Zded<    ede¦  «        Zded<   dS )Ú
CT_PageMarz-``<w:pgMar>`` element, defining page margins.zw:topúLength | NoneÚtopzw:rightÚrightzw:bottomÚbottomzw:leftÚleftzw:headerÚheaderzw:footerÚfooterzw:gutterÚgutterN)r0   r1   r2   r3   r   r   rA   r4   r   rB   rC   rD   rE   rF   rG   r$   r/   r-   r?   r?   <   sW  € € € € € € Ø7Ð7à*Ð*ØÐ&ñô €Cð ð ð ñ ð -Ð,Ø�?ñô €Eð ð ð ñ ð .Ð-ØÐ)ñô €Fð ð ð ñ ð ,Ð+Ø�/ñô €Dð ð ð ñ ð .Ð-Ø�Oñô €Fð ð ð ñ ð .Ð-Ø�Oñô €Fð ð ð ñ ð .Ð-Ø�Oñô €Fð ð ð ñ ð ð r/   r?   c                  óˆ   — e Zd ZU dZ ede¦  «        Zded<    ede¦  «        Zded<    ede	e	j
        ¬¦  «        Zd	ed
<   dS )Ú	CT_PageSzz?``<w:pgSz>`` element, defining page dimensions and orientation.zw:wr@   Úwzw:hÚhzw:orient)Údefaultr   ÚorientN)r0   r1   r2   r3   r   r   rJ   r4   rK   r   ÚPORTRAITrM   r$   r/   r-   rI   rI   V   s«   € € € € € € ØIÐIà(Ð(Øˆñô €Að ð ð ñ ð )Ð(Øˆñô €Að ð ð ñ ð /Ð.Ø�N¨NÔ,Cðñ ô €Fð ð ð ñ ð ð r/   rI   c                  ó~  — e Zd ZU dZded<   ded<   ded<   ded	<   d
ed<   d
ed<   ded<   ded<   dZ ede¬¦  «        Z ede¬¦  «        Z e	dedd…         ¬¦  «        Z
ded<    e	dedd…         ¬¦  «        Zded<    e	dedd…         ¬¦  «        Zded <    e	d!ed"d…         ¬¦  «        Zd#ed$<   [dXd+„ZdXd,„ZedYd.„¦   «         Zej        dZd1„¦   «         Zd[d2„ZedYd3„¦   «         Zej        dZd4„¦   «         Zd\d6„Zd\d7„ZedYd8„¦   «         Zej        dZd9„¦   «         ZedYd:„¦   «         Zej        dZd;„¦   «         Zd]d=„ZedYd>„¦   «         Zej        dZd?„¦   «         Zed^dA„¦   «         Zej        d_dC„¦   «         ZedYdD„¦   «         Zej        d`dE„¦   «         ZedYdF„¦   «         Zej        d`dG„¦   «         ZedadI„¦   «         ZdbdJ„ZdcdK„Z edYdL„¦   «         Z!e!j        d`dM„¦   «         Z!edddO„¦   «         Z"e"j        dedQ„¦   «         Z"edfdS„¦   «         Z#e#j        dgdU„¦   «         Z#edYdV„¦   «         Z$e$j        d`dW„¦   «         Z$dS )hÚ	CT_SectPrzA`w:sectPr` element, the container element for section properties.zCallable[[], CT_PageMar]Úget_or_add_pgMarzCallable[[], CT_PageSz]Úget_or_add_pgSzzCallable[[], CT_OnOff]Úget_or_add_titlePgzCallable[[], CT_SectType]Úget_or_add_typezCallable[[], CT_HdrFtrRef]Ú_add_footerReferenceÚ_add_headerReferencezCallable[[], None]Ú_remove_titlePgÚ_remove_type)zw:footnotePrzw:endnotePrr:   úw:pgSzúw:pgMarz
w:paperSrczw:pgBorderszw:lnNumTypezw:pgNumTypezw:colsz
w:formProtzw:vAlignzw:noEndnoteú	w:titlePgzw:textDirectionzw:bidizw:rtlGutterz	w:docGridzw:printerSettingszw:sectPrChangezw:headerReferencer%   zw:footerReferencer:   é   NzCT_SectType | NoneÚtyperY   é   zCT_PageSz | NoneÚpgSzrZ   é   zCT_PageMar | NoneÚpgMarr[   é   zCT_OnOff | NoneÚtitlePgr;   r   r=   r<   r'   r9   c                óJ   — |                       ¦   «         }||_        ||_        |S )zxReturn newly added CT_HdrFtrRef element of `type_` with `rId`.

        The element tag is `w:footerReference`.
        )rU   r;   r=   )r,   r;   r=   ÚfooterReferences       r-   Úadd_footerReferencezCT_SectPr.add_footerReference–   ó+   € ð
 ×3Ò3Ñ5Ô5ˆØ %ˆÔØ!ˆÔØÐr/   c                óJ   — |                       ¦   «         }||_        ||_        |S )zxReturn newly added CT_HdrFtrRef element of `type_` with `rId`.

        The element tag is `w:headerReference`.
        )rV   r;   r=   )r,   r;   r=   ÚheaderReferences       r-   Úadd_headerReferencezCT_SectPr.add_headerReference    rg   r/   r@   c                ó&   — | j         }|€dS |j        S )z™Value of the `w:bottom` attr of `<w:pgMar>` child element, as |Length|.

        |None| when either the element or the attribute is not present.
        N)ra   rC   ©r,   ra   s     r-   Úbottom_marginzCT_SectPr.bottom_marginª   s   € ð ”
ˆØˆ=Ø�4ØŒ|Ðr/   Úvalueúint | Length | Nonec                óˆ   — |                       ¦   «         }|�t          |t          ¦  «        r|nt          |¦  «        |_        d S ©N)rQ   Ú
isinstancer   rC   ©r,   rn   ra   s      r-   rm   zCT_SectPr.bottom_marginµ   ó>   € à×%Ò%Ñ'Ô'ˆØ % µ¸EÅ6Ñ1JÔ1J �u�uÕPVÐW\ÑP]ÔP]ˆŒˆˆr/   c                óV   — t          | ¦  «        }|j                             ¦   «          |S )zÊReturn an exact duplicate of this ``<w:sectPr>`` element tree suitable for
        use in adding a section break.

        All rsid* attributes are removed from the root ``<w:sectPr>`` element.
        )r   ÚattribÚclear)r,   Úcloned_sectPrs     r-   ÚclonezCT_SectPr.cloneº   s*   € õ ! ™œˆØÔ×"Ò"Ñ$Ô$Ð$ØÐr/   c                ó&   — | j         }|€dS |j        S )a  Distance from bottom edge of page to bottom edge of the footer.

        This is the value of the `w:footer` attribute in the `w:pgMar` child element,
        as a |Length| object, or |None| if either the element or the attribute is not
        present.
        N)ra   rF   rl   s     r-   rF   zCT_SectPr.footerÄ   s   € ð ”
ˆØˆ=Ø�4ØŒ|Ðr/   c                óˆ   — |                       ¦   «         }|�t          |t          ¦  «        r|nt          |¦  «        |_        d S rq   )rQ   rr   r   rF   rs   s      r-   rF   zCT_SectPr.footerÑ   rt   r/   úCT_HdrFtrRef | Nonec                ór   — dt          j        |¦  «        z  }|                      |¦  «        }|sdS |d         S )zAReturn footerReference element of `type_` or None if not present.z!./w:footerReference[@w:type='%s']Nr   )r   Úto_xmlr*   )r,   r;   ÚpathÚfooterReferencess       r-   Úget_footerReferencezCT_SectPr.get_footerReferenceÖ   sB   € à2Õ5EÔ5LÈUÑ5SÔ5SÑSˆØŸ:š: dÑ+Ô+ÐØð 	Ø�4Ø Ô"Ð"r/   c                ó�   — |                       dt          j        |¦  «        z  ¦  «        }t          |¦  «        dk    rdS |d         S )zAReturn headerReference element of `type_` or None if not present.z!./w:headerReference[@w:type='%s']r   N)r*   r   r~   Úlen)r,   r;   Úmatching_headerReferencess      r-   Úget_headerReferencezCT_SectPr.get_headerReferenceÞ   sP   € à$(§J¢JØ/Õ2BÔ2IÈ%Ñ2PÔ2PÑPñ%
ô %
Ð!õ Ð(Ñ)Ô)¨QÒ.Ð.Ø�4Ø(¨Ô+Ð+r/   c                ó&   — | j         }|€dS |j        S )z²The value of the ``w:gutter`` attribute in the ``<w:pgMar>`` child element,
        as a |Length| object, or |None| if either the element or the attribute is not
        present.N)ra   rG   rl   s     r-   rG   zCT_SectPr.gutterç   s   € ð
 ”
ˆØˆ=Ø�4ØŒ|Ðr/   c                óˆ   — |                       ¦   «         }|�t          |t          ¦  «        r|nt          |¦  «        |_        d S rq   )rQ   rr   r   rG   rs   s      r-   rG   zCT_SectPr.gutterñ   rt   r/   c                ó&   — | j         }|€dS |j        S )zÜDistance from top edge of page to top edge of header.

        This value comes from the `w:header` attribute on the `w:pgMar` child element.
        |None| if either the element or the attribute is not present.
        N)ra   rE   rl   s     r-   rE   zCT_SectPr.headerö   s   € ð ”
ˆØˆ=Ø�4ØŒ|Ðr/   c                óˆ   — |                       ¦   «         }|�t          |t          ¦  «        r|nt          |¦  «        |_        d S rq   )rQ   rr   r   rE   rs   s      r-   rE   zCT_SectPr.header  rt   r/   úIterator[CT_P | CT_Tbl]c                ó6   — t                                | ¦  «        S )zÎGenerate all `w:p` and `w:tbl` elements in this section.

        Elements appear in document order. Elements shaded by nesting in a `w:ins` or
        other "wrapper" element will not be included.
        )Ú_SectBlockElementIteratorÚiter_sect_block_elementsr+   s    r-   Úiter_inner_contentzCT_SectPr.iter_inner_content  s   € õ )×AÒAÀ$ÑGÔGÐGr/   c                ó&   — | j         }|€dS |j        S )z°The value of the ``w:left`` attribute in the ``<w:pgMar>`` child element, as
        a |Length| object, or |None| if either the element or the attribute is not
        present.N)ra   rD   rl   s     r-   Úleft_marginzCT_SectPr.left_margin  s   € ð
 ”
ˆØˆ=Ø�4ØŒzÐr/   c                óˆ   — |                       ¦   «         }|�t          |t          ¦  «        r|nt          |¦  «        |_        d S rq   )rQ   rr   r   rD   rs   s      r-   r�   zCT_SectPr.left_margin  s;   € à×%Ò%Ñ'Ô'ˆØ#˜m­z¸%ÅÑ/HÔ/H˜m�U�UÍfÐUZÉmÌmˆŒ
ˆ
ˆ
r/   r   c                ó:   — | j         }|€t          j        S |j        S )zÏ`WD_ORIENTATION` member indicating page-orientation for this section.

        This is the value of the `orient` attribute on the `w:pgSz` child, or
        `WD_ORIENTATION.PORTRAIT` if not present.
        )r_   r   rN   rM   ©r,   r_   s     r-   ÚorientationzCT_SectPr.orientation  s!   € ð ŒyˆØˆ<Ý!Ô*Ð*ØŒ{Ðr/   úWD_ORIENTATION | Nonec                óX   — |                       ¦   «         }|r|nt          j        |_        d S rq   )rR   r   rN   rM   ©r,   rn   r_   s      r-   r”   zCT_SectPr.orientation*  s*   € à×#Ò#Ñ%Ô%ˆØ$ÐA�e�e­.Ô*AˆŒˆˆr/   c                ó&   — | j         }|€dS |j        S )ziValue in EMU of the `h` attribute of the `w:pgSz` child element.

        |None| if not present.
        N)r_   rK   r“   s     r-   Úpage_heightzCT_SectPr.page_height/  ó   € ð ŒyˆØˆ<Ø�4ØŒvˆr/   c                ó<   — |                       ¦   «         }||_        d S rq   )rR   rK   r—   s      r-   r™   zCT_SectPr.page_height:  ó   € à×#Ò#Ñ%Ô%ˆØˆŒˆˆr/   c                ó&   — | j         }|€dS |j        S )zoValue in EMU of the ``w`` attribute of the ``<w:pgSz>`` child element.

        |None| if not present.
        N)r_   rJ   r“   s     r-   Ú
page_widthzCT_SectPr.page_width?  rš   r/   c                ó<   — |                       ¦   «         }||_        d S rq   )rR   rJ   r—   s      r-   rž   zCT_SectPr.page_widthJ  rœ   r/   úCT_SectPr | Nonec                óf   — |                       d¦  «        }t          |¦  «        dk    r|d         ndS )zCSectPr immediately preceding this one or None if this is the first.z./preceding::w:sectPr[1]r   N)r*   rƒ   )r,   Úpreceding_sectPrss     r-   Úpreceding_sectPrzCT_SectPr.preceding_sectPrO  s;   € ð !ŸJšJÐ'AÑBÔBÐÝ'*Ð+<Ñ'=Ô'=ÀÒ'AÐ'AÐ  Ô#Ð#ÀtÐKr/   c                óŠ   — |                       |¦  «        }|€t          d¦  «        ‚|j        }|                      |¦  «         |S )zCReturn rId of w:footerReference child of `type_` after removing it.Nz!CT_SectPr has no footer reference)r�   Ú
ValueErrorr=   Úremove)r,   r;   re   r=   s       r-   Úremove_footerReferencez CT_SectPr.remove_footerReferenceV  óI   € à×2Ò2°5Ñ9Ô9ˆØÐ"åÐ@ÑAÔAÐAØÔ!ˆØ�Š�OÑ$Ô$Ð$Øˆ
r/   c                óŠ   — |                       |¦  «        }|€t          d¦  «        ‚|j        }|                      |¦  «         |S )zCReturn rId of w:headerReference child of `type_` after removing it.Nz!CT_SectPr has no header reference)r…   r¥   r=   r¦   )r,   r;   ri   r=   s       r-   Úremove_headerReferencez CT_SectPr.remove_headerReference`  r¨   r/   c                ó&   — | j         }|€dS |j        S )z±The value of the ``w:right`` attribute in the ``<w:pgMar>`` child element, as
        a |Length| object, or |None| if either the element or the attribute is not
        present.N)ra   rB   rl   s     r-   Úright_marginzCT_SectPr.right_marginj  s   € ð
 ”
ˆØˆ=Ø�4ØŒ{Ðr/   c                ó<   — |                       ¦   «         }||_        d S rq   )rQ   rB   rs   s      r-   r¬   zCT_SectPr.right_margint  s   € à×%Ò%Ñ'Ô'ˆØˆŒˆˆr/   r   c                óH   — | j         }|�|j        €t          j        S |j        S )zÊThe member of the ``WD_SECTION_START`` enumeration corresponding to the value
        of the ``val`` attribute of the ``<w:type>`` child element, or
        ``WD_SECTION_START.NEW_PAGE`` if not present.)r]   Úvalr   ÚNEW_PAGE)r,   r]   s     r-   Ú
start_typezCT_SectPr.start_typey  s'   € ð
 ŒyˆØˆ<˜4œ8Ð+Ý#Ô,Ð,ØŒxˆr/   úWD_SECTION_START | Nonec                óˆ   — |�|t           j        u r|                      ¦   «          d S |                      ¦   «         }||_        d S rq   )r   r°   rX   rT   r¯   )r,   rn   r]   s      r-   r±   zCT_SectPr.start_typeƒ  sH   € àˆ=˜EÕ%5Ô%>Ð>Ð>Ø×ÒÑÔÐØˆFØ×#Ò#Ñ%Ô%ˆØˆŒˆˆr/   Úboolc                ó&   — | j         }|€dS |j        S )zEValue of `w:titlePg/@val` or |False| if `./w:titlePg` is not present.NF)rc   r¯   )r,   rc   s     r-   ÚtitlePg_valzCT_SectPr.titlePg_val‹  s   € ð ”,ˆØˆ?Ø�5ØŒ{Ðr/   úbool | Nonec                ól   — |dv r|                       ¦   «          d S d|                      ¦   «         _        d S )N)NFT)rW   rS   r¯   )r,   rn   s     r-   r¶   zCT_SectPr.titlePg_val“  s?   € à�MÐ!Ð!Ø× Ò Ñ"Ô"Ð"Ð"Ð"à,0ˆD×#Ò#Ñ%Ô%Ô)Ð)Ð)r/   c                ó&   — | j         }|€dS |j        S )z¯The value of the ``w:top`` attribute in the ``<w:pgMar>`` child element, as a
        |Length| object, or |None| if either the element or the attribute is not
        present.N)ra   rA   rl   s     r-   Ú
top_marginzCT_SectPr.top_marginš  s   € ð
 ”
ˆØˆ=Ø�4ØŒyÐr/   c                ó<   — |                       ¦   «         }||_        d S rq   )rQ   rA   rs   s      r-   rº   zCT_SectPr.top_margin¤  s   € à×%Ò%Ñ'Ô'ˆØˆŒ	ˆ	ˆ	r/   )r;   r   r=   r<   r'   r9   )r'   r@   )rn   ro   )r'   rP   )r;   r   r'   r|   )r'   rŠ   )r'   r   )rn   r•   )rn   r@   )r'   r    )r;   r   r'   r<   )r;   r   )r'   r   )rn   r²   )r'   r´   )rn   r·   )%r0   r1   r2   r3   r4   Ú_tag_seqr   ri   re   r   r]   r_   ra   rc   rf   rj   r7   rm   Úsetterry   rF   r�   r…   rG   rE   rŽ   r�   r”   r™   rž   r£   r§   rª   r¬   r±   r¶   rº   r$   r/   r-   rP   rP   d   s   € € € € € € ØKÐKà.Ð.Ð.Ñ.Ø,Ð,Ð,Ñ,Ø.Ð.Ð.Ñ.Ø.Ð.Ð.Ñ.Ø4Ð4Ð4Ñ4Ø4Ð4Ð4Ñ4Ø'Ð'Ð'Ñ'Ø$Ð$Ð$Ñ$ð€Hð, !�jÐ!4ÀÐJÑJÔJ€OØ �jÐ!4ÀÐJÑJÔJ€OØ(˜yØ˜X a b bœ\ð ñ  ô  €Dð ð ð ñ ð '˜YØ˜X a b bœ\ðñ ô €Dð ð ð ñ ð  )˜yØ˜h q r rœlð ñ  ô  €Eð ð ð ñ ð  )˜yØ ¨¨¨¤ð ñ  ô  €Gð ð ð ñ ð 	ðð ð ð ðð ð ð ð ðð ð ñ „Xðð Ôð^ð ^ð ^ñ Ôð^ðð ð ð ð ð
ð 
ð 
ñ „Xð
ð „]ð^ð ^ð ^ñ „]ð^ð#ð #ð #ð #ð,ð ,ð ,ð ,ð ðð ð ñ „Xðð „]ð^ð ^ð ^ñ „]ð^ð ð	ð 	ð 	ñ „Xð	ð „]ð^ð ^ð ^ñ „]ð^ðHð Hð Hð Hð ðð ð ñ „Xðð Ôð\ð \ð \ñ Ôð\ð ð	ð 	ð 	ñ „Xð	ð ÔðBð Bð Bñ ÔðBð ðð ð ñ „Xðð Ôðð ð ñ Ôðð ðð ð ñ „Xðð Ôðð ð ñ Ôðð ðLð Lð Lñ „XðLðð ð ð ðð ð ð ð ðð ð ñ „Xðð Ôðð ð ñ Ôðð ðð ð ñ „Xðð Ôðð ð ñ Ôðð ðð ð ñ „Xðð Ôð1ð 1ð 1ñ Ôð1ð ðð ð ñ „Xðð Ôðð ð ñ Ôðð ð r/   rP   c                  ó6   — e Zd ZU dZ ede¦  «        Zded<   dS )ÚCT_SectTypez:``<w:sectType>`` element, defining the section start type.zw:valr²   r¯   N)r0   r1   r2   r3   r   r   r¯   r4   r$   r/   r-   r¿   r¿   ª  sH   € € € € € € ØDÐDà#4Ð#4ØÐ!ñ$ô $€Cð ð ð ñ ð ð r/   r¿   c                  ó˜   — e Zd ZU dZdZded<   dZded<   dd„Zedd„¦   «         Z	dd„Z
dd„Zedd„¦   «         Zdd„Zedd„¦   «         ZdS )rŒ   z�Generates the block-item XML elements in a section.

    A block-item element is a `CT_P` (paragraph) or a `CT_Tbl` (table).
    Nzetree.XPath | NoneÚ_compiled_blocks_xpathÚ_compiled_count_xpathÚsectPrrP   c                ó   — || _         d S rq   )Ú_sectPr)r,   rÃ   s     r-   Ú__init__z"_SectBlockElementIterator.__init__¾  s   € ØˆŒˆˆr/   r'   úIterator[BlockElement]c                ó<   —  | |¦  «                              ¦   «         S )zIGenerate each CT_P or CT_Tbl element within extents governed by `sectPr`.)Ú_iter_sect_block_elements)ÚclsrÃ   s     r-   r�   z2_SectBlockElementIterator.iter_sect_block_elementsÁ  s   € ð ˆs�6‰{Œ{×4Ò4Ñ6Ô6Ð6r/   c              #  óä   K  — | j         | j        }}|                     |¦  «        }|dk    rdn|                      ||dz
           ¦  «        }|                      |¦  «        |d…         D ]}|V — ŒdS )z0Generate each CT_P or CT_Tbl element in section.r   é   N)rÅ   Ú_sectPrsÚindexÚ%_count_of_blocks_in_and_above_sectionÚ_blocks_in_and_above_section)r,   rÃ   ÚsectPrsÚ
sectPr_idxÚn_blks_to_skipÚelements         r-   rÉ   z3_SectBlockElementIterator._iter_sect_block_elementsÆ  s•   è è € ð œ,¨¬�ˆØ—]’] 6Ñ*Ô*ˆ
ð
 ˜QŠˆð ˆAà×;Ò;¸GÀJÐQRÁNÔ<SÑTÔTð 	ð ×8Ò8¸Ñ@Ô@ÀÀÀÔQð 	ð 	ˆGØˆMˆMˆMˆMð	ð 	r/   úSequence[BlockElement]c                ó¼   — | j         €&t          j        | j        t          d¬¦  «        | _         | j         }t          t          t                    ||¦  «        ¦  «        S )úFAll ps and tbls in section defined by `sectPr` and all prior sections.NF©Ú
namespacesÚregexp)rÁ   r
   ÚXPathÚ"_blocks_in_and_above_section_xpathr   r	   r   r   ©r,   rÃ   r*   s      r-   rÐ   z6_SectBlockElementIterator._blocks_in_and_above_sectionà  sW   € àÔ&Ð.Ý*/¬+ØÔ7Ý Øð+ñ +ô +ˆDÔ'ð
 Ô+ˆå•H�\Ô*¨E¨E°&©M¬MÑ:Ô:Ð:r/   r<   c           	     ó.   — d}d}d}|› d|› d|› d|› d|› �	S )zHXPath expr for ps and tbls in context of a sectPr and all prior sectPrs.z./parent::w:pPr/parent::w:pzself::w:sectPr[parent::w:body]z-preceding-sibling::*[self::w:p | self::w:tbl]z | ú/r$   )r,   Úp_sect_term_blockÚbody_sect_termÚpred_ps_and_tblss       r-   rÜ   z<_SectBlockElementIterator._blocks_in_and_above_section_xpathì  sa   € ð :Ðà9ˆàJÐð !ð 6ð 6à#ð6ð 6à&6ð6ð 6ð !ð	6ð 6ð $4ð	6ð 6ð	
r/   Úintc                óÈ   — | j         €*t          j        d| j        › d�t          d¬¦  «        | _         | j         }t          t          t           ||¦  «        ¦  «        ¦  «        S )r×   Nzcount(ú)FrØ   )rÂ   r
   rÛ   rÜ   r   rã   r	   ÚfloatrÝ   s      r-   rÏ   z?_SectBlockElementIterator._count_of_blocks_in_and_above_section  se   € àÔ%Ð-Ý).¬ØC˜Ô@ÐCÐCÐCÝ Øð*ñ *ô *ˆDÔ&ð
 Ô*ˆå•4�˜u˜u V™}œ}Ñ-Ô-Ñ.Ô.Ð.r/   úSequence[CT_SectPr]c                ó6   — | j                              d¦  «        S )z5All w:sectPr elements in document, in document-order.zC/w:document/w:body/w:p/w:pPr/w:sectPr | /w:document/w:body/w:sectPr)rÅ   r*   r+   s    r-   rÍ   z"_SectBlockElementIterator._sectPrs  s!   € ð Œ|×!Ò!ØQñ
ô 
ð 	
r/   )rÃ   rP   )rÃ   rP   r'   rÇ   )r'   rÇ   )rÃ   rP   r'   rÕ   )r'   r<   )rÃ   rP   r'   rã   )r'   rç   )r0   r1   r2   r3   rÁ   r4   rÂ   rÆ   Úclassmethodr�   rÉ   rÐ   r   rÜ   rÏ   rÍ   r$   r/   r-   rŒ   rŒ   µ  sö   € € € € € € ðð ð
 26ÐÐ5Ð5Ð5Ñ5Ø04ÐÐ4Ð4Ð4Ñ4ðð ð ð ð ð7ð 7ð 7ñ „[ð7ðð ð ð ð4
;ð 
;ð 
;ð 
;ð ð
ð 
ð 
ñ „\ð
ð6
/ð 
/ð 
/ð 
/ð ð
ð 
ð 
ñ „\ð
ð 
ð 
r/   rŒ   N)1r3   Ú
__future__r   Úcopyr   Útypingr   r   r   r   r	   Úlxmlr
   Útyping_extensionsr   Údocx.enum.sectionr   r   r   Údocx.oxml.nsr   Údocx.oxml.sharedr   Údocx.oxml.simpletypesr   r   r   Údocx.oxml.tabler   Údocx.oxml.text.paragraphr   Údocx.oxml.xmlchemyr   r   r   r   r   Údocx.sharedr   r   r   r4   r   r9   r?   rI   rP   r¿   rŒ   r$   r/   r-   ú<module>r÷      s¶  ðØ -Ð -Ð -à "Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð Ð Ð Ø ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;à Ð Ð Ð Ð Ð Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'à PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PØ Ð Ð Ð Ð Ð Ø %Ð %Ð %Ð %Ð %Ð %Ø SÐ SÐ SÐ SÐ SÐ SÐ SÐ SÐ SÐ SØ "Ð "Ð "Ð "Ð "Ð "Ø )Ð )Ð )Ð )Ð )Ð )ðð ð ð ð ð ð ð ð ð ð ð ð ð ð -Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,à)€Ð )Ð )Ð )Ñ )ð-ð -ð -ð -ð -�ñ -ô -ð -ð,4ð 4ð 4ð 4ð 4�?ñ 4ô 4ð 4ðð ð ð ð �ñ ô ð ð4ð ð ð ð �ñ ô ð ðCð Cð Cð Cð C�ñ Cô Cð CðL
ð ð ð ð �/ñ ô ð ðd
ð d
ð d
ð d
ð d
ñ d
ô d
ð d
ð d
ð d
r/   