ó
    ˆ*£h8O  ã                  ó$  • S r SSKJr  SSKrSSKJrJrJr  SSKJ	r	  SSK
JrJrJrJr  SSKJr  SSKJr  SS	KJr  SS
KJr  SSKJrJrJrJrJrJrJrJrJ r   SSK!J"r"J#r#J$r$J%r%J&r&J'r'J(r(J)r)J*r*  SSK+J,r,J-r-  \(       a  SSK.J/r/   " S S\"5      r0 " S S\"5      r1 " S S\"5      r2 " S S\"5      r3 " S S\"5      r4 " S S\"5      r5 " S S\"5      r6 " S S\"5      r7 " S S \"5      r8 " S! S"\"5      r9 " S# S$\"5      r: " S% S&\"5      r; " S' S(\"5      r<g))z4Custom element classes for text-related XML elementsé    )ÚannotationsN)ÚTYPE_CHECKINGÚCallableÚcast)ÚMSO_LANGUAGE_ID)ÚMSO_AUTO_SIZEÚMSO_TEXT_UNDERLINE_TYPEÚMSO_VERTICAL_ANCHORÚPP_PARAGRAPH_ALIGNMENT)ÚInvalidXmlError)Ú	parse_xml)ÚCT_GradientFillProperties©Únsdecls)	ÚST_Coordinate32Ú&ST_TextFontScalePercentOrPercentStringÚST_TextFontSizeÚST_TextIndentLevelTypeÚ$ST_TextSpacingPercentOrPercentStringÚST_TextSpacingPointÚST_TextTypefaceÚST_TextWrappingTypeÚ
XsdBoolean)	ÚBaseOxmlElementÚChoiceÚOneAndOnlyOneÚ	OneOrMoreÚOptionalAttributeÚRequiredAttributeÚ
ZeroOrMoreÚ	ZeroOrOneÚZeroOrOneChoice)ÚEmuÚLength)ÚCT_Hyperlinkc                  ó¦   • \ rS rSr% SrS\S'   \" SSS9rS\S	'   \" S
5      r	S\S'   \
SS j5       r\R                  SS j5       r\SS j5       rSrg)ÚCT_RegularTextRuné/   z`a:r` custom element classú(Callable[[], CT_TextCharacterProperties]Úget_or_add_rPrúa:rPr)úa:t©Ú
successorsú!CT_TextCharacterProperties | NoneÚrPrr,   r   Útc                óD   • U R                   R                  nU=(       d    S$ )z#All text of (required) `a:t` child.Ú ©r1   Útext)Úselfr5   s     ÚK/home/mande/repo/quber/.venv/lib/python3.13/site-packages/pptx/oxml/text.pyr5   ÚCT_RegularTextRun.text9   s   € ð �v‰v�{‰{ˆà�z�rÐó    c                óD   • U R                  U5      U R                  l        g ©N)Ú_escape_ctrl_charsr1   r5   ©r6   Úvalues     r7   r5   r8   @   s   € à×-Ñ-¨eÓ4ˆ�‰�r9   c                ó4   • [         R                  " SS U 5      $ )züReturn str after replacing each control character with a plain-text escape.

For example, a BEL character (x07) would appear as "_x0007_". Horizontal-tab
(x09) and line-feed (x0A) are not escaped. All other characters in the range
x00-x1F are escaped.
z([\x00-\x08\x0B-\x1F])c                ó<   • S[        U R                  S5      5      -  $ )Nz_x%04X_é   )ÚordÚgroup)Úmatchs    r7   Ú<lambda>Ú6CT_RegularTextRun._escape_ctrl_chars.<locals>.<lambda>L   s   € ¸yÌ3ÈuÏ{É{Ð[\Ë~ÓK^Ò?^r9   )ÚreÚsub)Úss    r7   r<   Ú$CT_RegularTextRun._escape_ctrl_charsD   s   € ô �vŠvÐ/Ñ1^Ð`aÓbÐbr9   © N©ÚreturnÚstr)r>   rN   )rI   rN   rM   rN   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Ú__annotations__r!   r0   r   r1   Úpropertyr5   ÚsetterÚstaticmethodr<   Ú__static_attributes__rK   r9   r7   r'   r'   /   ss   ‡ Ù$à<Ó<á-6Ø˜Hñ.€CÐ	*ó ñ ' uÓ-€A€Ó-àóó ðð 
‡[�[ó5ó ð5ð ócó ócr9   r'   c                  ó
  • \ rS rSr% SrS\S'   S\S'   \" S5      rS\S	'   \" S
5      r	S\S'   S r
\SS j5       r\SS j5       r\S 5       r\SS j5       r\S 5       r\S 5       rS r\S 5       r\S 5       r\S 5       rSrg)ÚCT_TextBodyéO   z_`p:txBody` custom element class.

Also used for `c:txPr` in charts and perhaps other elements.
zCallable[[], CT_TextParagraph]Úadd_pzlist[CT_TextParagraph]Úp_lstza:bodyPrÚCT_TextBodyPropertiesÚbodyPrza:pÚCT_TextParagraphÚpc                óL   • U R                    H  nU R                  U5        M     g)zqRemove all `a:p` children, but leave any others.

cf. lxml `_Element.clear()` method which removes all children.
N)r]   Úremove)r6   ra   s     r7   Úclear_contentÚCT_TextBody.clear_content]   s   € ð
 —”ˆAØ�K‰K˜ŽNò r9   c                ód   • U R                   S   nUR                  5       nUR                  5       nU$ )zÌ`a:defRPr` element of required first `p` child, added with its ancestors if not present.

Used when element is a ``c:txPr`` in a chart and the `p` element is used only to specify
formatting, not content.
r   )r]   Úget_or_add_pPrÚget_or_add_defRPr)r6   ra   ÚpPrÚdefRPrs       r7   rj   ÚCT_TextBody.defRPre   s2   € ð �J‰J�q‰MˆØ×ÑÓ ˆØ×&Ñ&Ó(ˆØˆr9   c                óˆ   • U R                   n[        U5      S:”  a  gU(       d  [        S5      eUS   R                  S:w  a  gg)z5True if only a single empty `a:p` element is present.rA   Fz#p:txBody must have at least one a:pr   r3   T)r]   Úlenr   r5   )r6   Úpss     r7   Úis_emptyÚCT_TextBody.is_emptyq   s@   € ð �Z‰ZˆÜˆr‹7�Q‹;ØæÜ!Ð"GÓHÐHàˆa‰5�:‰:˜ÓØØr9   c                ó<   • U R                  5       n[        U5      nU$ )z%Return a new `p:txBody` element tree.)Ú_txBody_tmplr   ©ÚclsÚxmlÚtxBodys      r7   ÚnewÚCT_TextBody.new   s    € ð ×ÑÓ ˆÜ˜3“ˆØˆr9   c                óX   • U R                  5       n[        [        [        U5      5      nU$ )zgReturn a new `a:txBody` element tree.

Suitable for use in a table cell and possibly other situations.
)Ú_a_txBody_tmplr   rZ   r   rs   s      r7   Únew_a_txBodyÚCT_TextBody.new_a_txBody†   s'   € ð × Ñ Ó"ˆÜ”k¤9¨S£>Ó2ˆØˆr9   c                ó8   • U R                  5       n[        U5      $ )zLReturn a new `p:txBody` element tree, suitable for use in an `p:sp` element.)Ú_p_txBody_tmplr   )rt   ru   s     r7   Únew_p_txBodyÚCT_TextBody.new_p_txBody�   s   € ð × Ñ Ó"ˆÜ˜‹~Ðr9   c                ó:   • S[        SS5      -  n[        U5      nU$ )zeReturn a `c:txPr` element tree.

Suitable for use in a chart object like data labels or tick labels.
zp<c:txPr %s>
  <a:bodyPr/>
  <a:lstStyle/>
  <a:p>
    <a:pPr>
      <a:defRPr/>
    </a:pPr>
  </a:p>
</c:txPr>
ÚcÚa©r   r   )rt   ru   ÚtxPrs      r7   Únew_txPrÚCT_TextBody.new_txPr–   s*   € ðô �C˜Óñ
ˆô ˜‹~ˆØˆr9   c                óX   • [        U R                  5      S:”  a  gU R                  5         g)zœEnsure p:txBody has at least one a:p child.

Intuitively, reverse a ".clear_content()" operation to minimum conformance with spec
(single empty paragraph).
r   N)rm   r]   r\   ©r6   s    r7   Úunclear_contentÚCT_TextBody.unclear_contentª   s    € ô ˆt�z‰z‹?˜QÓØØ�
‰
�r9   c                ó   • S[        S5      -  $ )Nz1<a:txBody %s>
  <a:bodyPr/>
  <a:p/>
</a:txBody>
rƒ   r   ©rt   s    r7   rz   ÚCT_TextBody._a_txBody_tmpl´   s   € àOÔSZÐ[^ÓS_Ñ`Ð`r9   c                ó    • S[        SS5      -  $ )Nz1<p:txBody %s>
  <a:bodyPr/>
  <a:p/>
</p:txBody>
ra   rƒ   r   r�   s    r7   r~   ÚCT_TextBody._p_txBody_tmpl¸   s   € ð MÔPWÐX[Ð]`ÓPaÑbð	
r9   c                ó    • S[        SS5      -  $ )NzA<p:txBody %s>
  <a:bodyPr/>
  <a:lstStyle/>
  <a:p/>
</p:txBody>
rƒ   ra   r   r�   s    r7   rr   ÚCT_TextBody._txBody_tmpl¾   s   € ðô  ' s¨CÓ0ñ	2ð	
r9   rK   N)rM   ÚCT_TextCharacterProperties)rM   Úbool)rM   rZ   )rO   rP   rQ   rR   rS   rT   r   r_   r   ra   rd   rU   rj   ro   Úclassmethodrw   r{   r   r†   rŠ   rz   r~   rr   rX   rK   r9   r7   rZ   rZ   O   sü   ‡ ñð
 *Ó)Ø!Ó!á$1Øó%€FÐ!ó ñ $ EÓ*€AÐÓ*òð ó	ó ð	ð óó ðð ñó ðð óó ðð ñó ðð
 ñó ðò&ð ñaó ðað ñ
ó ð
ð
 ñ
ó ó
r9   rZ   c                  ó   • \ rS rSr% SrS\S'   S\S'   S\S'   S\S	'   S
\S'   S\S'   S
\S'   \" \" S5      \" S5      \" S5      4SS9r\	" S\
\" S5      S9rS\S'   \	" S\
\" S5      S9rS\S'   \	" S\
\" S5      S9rS\S'   \	" S\
\" S5      S9rS\S'   \	" S\5      rS\S'   \	" S\5      rS\S'   \S  5       r\R,                  S$S! j5       rS"rg#)%r^   éÉ   z `a:bodyPr` custom element class.zCallable[[], BaseOxmlElement]Ú_add_noAutofitz"Callable[[], CT_TextNormalAutofit]Ú_add_normAutofitÚ_add_spAutoFitúCallable[[], None]Ú_remove_eg_textAutoFitúBaseOxmlElement | NoneÚ	noAutofitzCT_TextNormalAutofit | NoneÚnormAutofitÚ	spAutoFitza:noAutofitza:normAutofitza:spAutoFit)z	a:scene3dza:sp3dza:flatTxúa:extLstr-   ÚlInsi0e ©Údefaultr$   ÚtInsi˜²  ÚrInsÚbInsÚanchorzMSO_VERTICAL_ANCHOR | NoneÚwrapú
str | Nonec                ó²   • U R                   b  [        R                  $ U R                  b  [        R                  $ U R
                  b  [        R                  $ g)zTThe autofit setting for the text frame, a member of the `MSO_AUTO_SIZE` enumeration.N)rž   r   ÚNONErŸ   ÚTEXT_TO_FIT_SHAPEr    ÚSHAPE_TO_FIT_TEXTr‰   s    r7   ÚautofitÚCT_TextBodyProperties.autofitì   sK   € ð �>‰>Ñ%Ü ×%Ñ%Ð%Ø×ÑÑ'Ü ×2Ñ2Ð2Ø�>‰>Ñ%Ü ×2Ñ2Ð2Ør9   c                ó8  • Ub  U[         ;  a  [        SU 35      eU R                  5         U[         R                  :X  a  U R	                  5         g U[         R
                  :X  a  U R                  5         g U[         R                  :X  a  U R                  5         g g )Nzmonly None or a member of the MSO_AUTO_SIZE enumeration can be assigned to CT_TextBodyProperties.autofit, got )	r   Ú
ValueErrorrœ   r¬   r˜   r­   r™   r®   rš   r=   s     r7   r¯   r°   ÷   sŒ   € àÑ ¬mÓ!;Üð7Ø7<°gð?óð ð 	×#Ñ#Ô%Ø”M×&Ñ&Ó&Ø×ÑÕ!Ø”m×5Ñ5Ó5Ø×!Ñ!Õ#Ø”m×5Ñ5Ó5Ø×ÑÕ!ð 6r9   rK   N)r>   zMSO_AUTO_SIZE | None)rO   rP   rQ   rR   rS   rT   r"   r   Úeg_textAutoFitr   r   r#   r¢   r¥   r¦   r§   r
   r¨   r   r©   rU   r¯   rV   rX   rK   r9   r7   r^   r^   É   s,  ‡ Ù*à1Ó1Ø8Ó8Ø1Ó1Ø.Ó.à%Ó%Ø,Ó,Ø%Ó%á$Ù	�Ó	¡ Ó 7¹ÀÓ9NÐOØBñ€Nñ %Ø�©¨U«ñ€Dˆ&ó ñ %Ø�©¨U«ñ€Dˆ&ó ñ %Ø�©¨U«ñ€Dˆ&ó ñ %Ø�©¨U«ñ€Dˆ&ó ñ *;ØÐ%ó*€FÐ&ó ñ )ØÐ#ó€Dˆ*ó ð ñó ðð ‡^�^ó"ó ó"r9   r^   c            
      óp  • \ rS rSr% SrS\S'   S\S'   S\S'   S\S	'   \" \" S
5      \" S5      \" S5      \" S5      \" S5      \" S5      4SS9r\	" SSS9r
S\S'   \	" SSS9rS\S'   \" S\5      rS\S'   \" S\5      rS\S'   \" S\5      rS\S'   \" S \5      rS\S '   \" S!\5      rS"\S!'   S# rS'S$ jrS%rg&)(r“   i  z–Custom element class for `a:rPr`, `a:defRPr`, and `a:endParaRPr`.

'rPr' is short for 'run properties', and it corresponds to the |Font| proxy class.
zCallable[[], CT_Hyperlink]Úget_or_add_hlinkClickzCallable[[], CT_TextFont]Úget_or_add_latinr›   Ú_remove_latinÚ_remove_hlinkClickza:noFillza:solidFillz
a:gradFillz
a:blipFillz
a:pattFillz	a:grpFill)za:effectLstza:effectDagza:highlightza:uLnTxza:uLnz	a:uFillTxza:uFillúa:latinúa:eaúa:csúa:symúa:hlinkClickúa:hlinkMouseOverúa:rtlr¡   r-   r¹   )rº   r»   r¼   r½   r¾   r¿   r¡   zCT_TextFont | NoneÚlatinr½   )r¾   r¿   r¡   zCT_Hyperlink | NoneÚ
hlinkClickÚlangzMSO_LANGUAGE_ID | NoneÚszz
int | NoneÚbzbool | NoneÚiÚuzMSO_TEXT_UNDERLINE_TYPE | Nonec                ó,   • [         R                  " 5       $ r;   )r   Únew_gradFillr‰   s    r7   Ú_new_gradFillÚ(CT_TextCharacterProperties._new_gradFillI  s   € Ü(×5Ò5Ó7Ð7r9   c                ó2   • U R                  5       nXl        U$ )zEAdd an `a:hlinkClick` child element with r:id attribute set to `rId`.)rµ   ÚrId)r6   rÌ   rÁ   s      r7   Úadd_hlinkClickÚ)CT_TextCharacterProperties.add_hlinkClickL  s   € à×/Ñ/Ó1ˆ
ØŒØÐr9   rK   N)rÌ   rN   rM   r%   )rO   rP   rQ   rR   rS   rT   r"   r   Úeg_fillPropertiesr!   rÀ   rÁ   r   r   rÂ   r   rÃ   r   rÄ   rÅ   r	   rÆ   rÉ   rÍ   rX   rK   r9   r7   r“   r“     s  ‡ ñð
 6Ó5Ø/Ó/Ø%Ó%Ø*Ó*á'á�:ÓÙ�=Ó!Ù�<Ó Ù�<Ó Ù�<Ó Ù�;Óð	
ð
ñÐñ6 !*Øð
ñ!€EÐó ñ '0ØÐ#Lñ'€JÐ#ó ñ $5Ø�ó$€DÐ
 ó ñ 'Øˆoó€Bˆ
ó ñ ' s¨JÓ7€A€{Ó7Ù& s¨JÓ7€A€{Ó7Ù(9ØÐ$ó)€AÐ%ó ò8÷r9   r“   c                  óh   • \ rS rSr% SrS\S'   \" SSS9rS\S	'   \" S
SS9rS\S'   \	SS j5       r
Srg)ÚCT_TextFieldiS  z?`a:fld` field element, for either a slide number or date field.r)   r*   r+   )úa:pPrr,   r-   r/   r0   r,   rK   r�   r1   c                óL   • U R                   nUc  gUR                  =(       d    S$ )z$The text of the `a:t` child element.r3   r4   )r6   r1   s     r7   r5   ÚCT_TextField.text_  s#   € ð �F‰FˆØ‰9ØØ�v‰v�|˜Ðr9   NrL   )rO   rP   rQ   rR   rS   rT   r!   r0   r1   rU   r5   rX   rK   r9   r7   rÑ   rÑ   S  sP   ‡ ÙIà<Ó<á-6ØÐ,ñ.€CÐ	*ó ñ !*Ø˜"ñ!€AÐó ð óó ór9   rÑ   c                  ó6   • \ rS rSr% Sr\" S\5      rS\S'   Sr	g)ÚCT_TextFontih  z�Custom element class for `a:latin`, `a:ea`, `a:cs`, and `a:sym`.

These occur as child elements of CT_TextCharacterProperties, e.g. `a:rPr`.
ÚtypefacerN   rK   N)
rO   rP   rQ   rR   rS   r   r   r×   rT   rX   rK   r9   r7   rÖ   rÖ   h  s   ‡ ññ
 &Ø�Oó€Hˆcö r9   rÖ   c                  óB   • \ rS rSr% SrS\S'   \" SSS9r\S 5       r	Sr
g	)
ÚCT_TextLineBreakis  z`a:br` line break elementr)   r*   r+   rK   r-   c                ó   • g)zŒUnconditionally a single vertical-tab character.

A line break element can contain no text other than the implicit line feed it
represents.
ÚrK   r‰   s    r7   r5   ÚCT_TextLineBreak.textz  s   € ð r9   N)rO   rP   rQ   rR   rS   rT   r!   r0   rU   r5   rX   rK   r9   r7   rÙ   rÙ   s  s)   ‡ Ù#à<Ó<á
�G¨Ñ
+€Càñó ór9   rÙ   c                  ó(   • \ rS rSrSr\" S\SS9rSrg)ÚCT_TextNormalAutofiti„  zI`a:normAutofit` element specifying fit text to shape font reduction, etc.Ú	fontScaleg      Y@r£   rK   N)	rO   rP   rQ   rR   rS   r   r   rß   rX   rK   r9   r7   rÞ   rÞ   „  s   † ÙSá!ØÐ;ÀUñƒIr9   rÞ   c                  óè   • \ rS rSr% SrS\S'   S\S'   S\S'   S	\S
'   S\S'   \" SSS9rS\S'   \" SSS9r	\" SSS9r
\" SSS9rS\S'   S S jrS!S"S jjrS#S jr\S$S j5       r\S%S j5       rS rSrg)&r`   iŒ  z`a:p` custom element classr)   Úget_or_add_endParaRPrz(Callable[[], CT_TextParagraphProperties]rg   zlist[CT_RegularTextRun]Úr_lstzCallable[[], CT_TextLineBreak]Ú_add_brzCallable[[], CT_RegularTextRun]Ú_add_rrÒ   )úa:rúa:brza:fldúa:endParaRPrr-   z!CT_TextParagraphProperties | Noneri   rå   )rç   ræ   rç   rK   r/   Ú
endParaRPrc                ó"   • U R                  5       $ )z'Return a newly appended `a:br` element.)rã   r‰   s    r7   Úadd_brÚCT_TextParagraph.add_brž  s   € à�|‰|‹~Ðr9   Nc                ó@   • U R                  5       nU(       a  Xl        U$ )z&Return a newly appended `a:r` element.)rä   r5   )r6   r5   Úrs      r7   Úadd_rÚCT_TextParagraph.add_r¢  s   € à�K‰K‹MˆÞØŒFØˆr9   c                ó¶   • [        [        R                  " SU5      5       H5  u  p#US:”  a  U R                  5         U(       d  M$  U R	                  U5        M7     g)ao  Append `a:r` and `a:br` elements to `p` based on `text`.

        Any `
` or `` (vertical-tab) characters in `text` delimit `a:r` (run) elements and
        themselves are translated to `a:br` (line-break) elements. The vertical-tab character
        appears in clipboard text from PowerPoint at "soft" line-breaks (new-line, but not new
        paragraph).
        z
|r   N)Ú	enumeraterG   Úsplitrê   rî   )r6   r5   ÚidxÚr_strs       r7   Úappend_textÚCT_TextParagraph.append_text©  sA   € ô $¤B§H¢H¨W°dÓ$;Ö<‰JˆCà�Q‹wØ—‘”çˆuØ—
‘
˜5Ö!ò =r9   c                ó&   • [        S U  5       5      $ )ztSequence containing text-container child elements of this `a:p` element.

These include `a:r`, `a:br`, and `a:fld`.
c              3  ój   #   • U  H)  n[        U[        [        [        45      (       d  M%  Uv •  M+     g 7fr;   )Ú
isinstancer'   rÙ   rÑ   )Ú.0Úes     r7   Ú	<genexpr>Ú4CT_TextParagraph.content_children.<locals>.<genexpr>¿  s(   é € ð 
Ú�!œz¨!Ô.?ÔAQÔS_Ð-`×a�A‰A’tùs   ‚$3ª	3)Útupler‰   s    r7   Úcontent_childrenÚ!CT_TextParagraph.content_children¹  s   € ô ñ 
Ùó
ó 
ð 	
r9   c                óv   • SR                  U R                   Vs/ s H  oR                  PM     sn5      $ s  snf )z%str text contained in this paragraph.r3   )Újoinrÿ   r5   )r6   Úchilds     r7   r5   ÚCT_TextParagraph.textÃ  s/   € ð �w‰w°×0EÒ0EÓFÒ0E uŸ
œ
Ñ0EÑFÓGÐGùÒFs   š6c                ó4   • S[        S5      -  n[        U5      $ )Nz<a:r %s><a:t/></a:r>rƒ   r„   )r6   Úr_xmls     r7   Ú_new_rÚCT_TextParagraph._new_rÉ  s   € Ø&¬°«Ñ5ˆÜ˜ÓÐr9   )rM   rÙ   r;   )r5   rª   rM   r'   )r5   rN   )rM   z?tuple[CT_RegularTextRun | CT_TextLineBreak | CT_TextField, ...]rL   )rO   rP   rQ   rR   rS   rT   r!   ri   r    rí   Úbrrè   rê   rî   rõ   rU   rÿ   r5   r  rX   rK   r9   r7   r`   r`   Œ  s¬   ‡ Ù$àCÓCØ<Ó<Ø"Ó"Ø+Ó+Ø+Ó+á-6ØÐDñ.€CÐ	*ó ñ 	�5Ð%6Ñ7€AÙ	�FÐ'8Ñ	9€BÙ4=Ø 2ñ5€JÐ1ó ôöô"ð  ó
ó ð
ð óHó ðHõ
 r9   r`   c                  óÄ  • \ rS rSr% SrS\S'   S\S'   S\S'   S\S'   S	\S
'   S	\S'   S	\S'   Sr\" S\SS S9rS\S'   \" S\SS S9r	S\S'   \" S\SS S9r
S\S'   \" S\SS S9rS\S'   \" S\SS 9rS!\S'   \" S"\5      rS#\S"'   C\S+S$ j5       r\R&                  S,S% j5       r\S-S& j5       r\R&                  S.S' j5       r\S( 5       r\R&                  S.S) j5       rS*rg)/ÚCT_TextParagraphPropertiesiÎ  z`a:pPr` custom element class.r)   rh   zCallable[[], CT_TextSpacing]Ú
_add_lnSpcÚ_add_spcAftÚ_add_spcBefr›   Ú_remove_lnSpcÚ_remove_spcAftÚ_remove_spcBef)úa:lnSpcúa:spcBefúa:spcAftz	a:buClrTxza:buClrza:buSzTxz	a:buSzPctz	a:buSzPtsz
a:buFontTxza:buFontza:buNoneza:buAutoNumza:buCharza:buBlipza:tabLstúa:defRPrr¡   r  rA   Nr-   zCT_TextSpacing | NoneÚlnSpcr  é   ÚspcBefr  é   ÚspcAftr  é   r/   rj   Úlvlr   r£   ÚintÚalgnzPP_PARAGRAPH_ALIGNMENT | Nonec                ó°   • U R                   nUc  gUR                  b  UR                  R                  $ [        [        UR
                  5      R                  $ )a  The spacing between baselines of successive lines in this paragraph.

A float value indicates a number of lines. A |Length| value indicates a fixed spacing.
Value is contained in `./a:lnSpc/a:spcPts/@val` or `./a:lnSpc/a:spcPct/@val`. Value is
|None| if no element is present.
N)r  ÚspcPtsÚvalr   ÚCT_TextSpacingPercentÚspcPct)r6   r  s     r7   Úline_spacingÚ'CT_TextParagraphProperties.line_spacing   sG   € ð —
‘
ˆØ‰=ØØ�<‰<Ñ#Ø—<‘<×#Ñ#Ð#ÜÔ)¨5¯<©<Ó8×<Ñ<Ð<r9   c                óÔ   • U R                  5         Uc  g [        U[        5      (       a   U R                  5       R	                  U5        g U R                  5       R                  U5        g r;   )r  rù   r$   r  Ú
set_spcPtsÚ
set_spcPctr=   s     r7   r$  r%    sM   € à×ÑÔØ‰=ØÜ�eœV×$Ñ$Ø�O‰OÓ×(Ñ(¨Õ/à�O‰OÓ×(Ñ(¨Õ/r9   c                óZ   • U R                   nUc  gUR                  nUc  gUR                  $ )zJThe EMU equivalent of the centipoints value in `./a:spcAft/a:spcPts/@val`.N)r  r   r!  )r6   r  r   s      r7   Úspace_afterÚ&CT_TextParagraphProperties.space_after  ó0   € ð —‘ˆØ‰>ØØ—‘ˆØ‰>ØØ�z‰zÐr9   c                ój   • U R                  5         Ub   U R                  5       R                  U5        g g r;   )r  r  r'  r=   s     r7   r*  r+  $  ó0   € à×ÑÔØÑØ×ÑÓ×)Ñ)¨%Õ0ð r9   c                óZ   • U R                   nUc  gUR                  nUc  gUR                  $ )zJThe EMU equivalent of the centipoints value in `./a:spcBef/a:spcPts/@val`.N)r  r   r!  )r6   r  r   s      r7   Úspace_beforeÚ'CT_TextParagraphProperties.space_before*  r,  r9   c                ój   • U R                  5         Ub   U R                  5       R                  U5        g g r;   )r  r  r'  r=   s     r7   r0  r1  5  r.  r9   rK   )rM   úfloat | Length | None)r>   r3  )rM   úLength | None)r>   r4  )rO   rP   rQ   rR   rS   rT   Ú_tag_seqr!   r  r  r  rj   r   r   r  r   r  rU   r$  rV   r*  r0  rX   rK   r9   r7   r  r  Î  st  ‡ Ù'à?Ó?Ø,Ó,Ø-Ó-Ø-Ó-Ø%Ó%Ø&Ó&Ø&Ó&ð€Hñ& $-Ø˜h q r˜lñ$€EÐ ó ñ %.Ø˜x¨¨˜|ñ%€FÐ!ó ñ %.Ø˜x¨¨˜|ñ%€FÐ!ó ñ 1:Ø˜x¨¨˜}ñ1€FÐ-ó ñ !ØÐ%¨qñ€Cˆó ñ +<ØÐ&ó+€DÐ
'ó ð 	àó=ó ð=ð ×Ñó0ó ð0ð óó ðð ×Ñó1ó ð1ð
 ñó ðð ×Ñó1ó ó1r9   r  c                  óŠ   • \ rS rSr% SrS\S'   S\S'   S\S'   S\S	'   \" S
5      rS\S'   \" S5      rS\S'   SS jr	SS jr
Srg)ÚCT_TextSpacingi<  z8Used for `a:lnSpc`, `a:spcBef`, and `a:spcAft` elements.z#Callable[[], CT_TextSpacingPercent]Úget_or_add_spcPctz!Callable[[], CT_TextSpacingPoint]Úget_or_add_spcPtsr›   Ú_remove_spcPctÚ_remove_spcPtsza:spcPctzCT_TextSpacingPercent | Noner#  za:spcPtszCT_TextSpacingPoint | Noner   c                óP   • U R                  5         U R                  5       nXl        g)zZSet spacing to `value` lines, e.g. 1.75 lines.

A ./a:spcPts child is removed if present.
N)r;  r8  r!  )r6   r>   r#  s      r7   r(  ÚCT_TextSpacing.set_spcPctM  s#   € ð
 	×ÑÔØ×'Ñ'Ó)ˆØ�
r9   c                óP   • U R                  5         U R                  5       nXl        g)zHSet spacing to `value` points. A ./a:spcPct child is removed if present.N)r:  r9  r!  )r6   r>   r   s      r7   r'  ÚCT_TextSpacing.set_spcPtsV  s!   € à×ÑÔØ×'Ñ'Ó)ˆØ�
r9   rK   N)r>   Úfloat)r>   r$   )rO   rP   rQ   rR   rS   rT   r!   r#  r   r(  r'  rX   rK   r9   r7   r7  r7  <  sU   ‡ ÙBà:Ó:Ø8Ó8Ø&Ó&Ø&Ó&ñ ,5Øó,€FÐ(ó ñ *3Øó*€FÐ&ó ô÷r9   r7  c                  ó6   • \ rS rSr% Sr\" S\5      rS\S'   Sr	g)r"  i]  zZ`a:spcPct` element, specifying spacing in thousandths of a percent in its `val` attribute.r!  r@  rK   N)
rO   rP   rQ   rR   rS   r   r   r!  rT   rX   rK   r9   r7   r"  r"  ]  s   ‡ Ùdá"ØÐ3ó€Cˆö r9   r"  c                  ó6   • \ rS rSr% Sr\" S\5      rS\S'   Sr	g)ÚCT_TextSpacingPointie  zM`a:spcPts` element, specifying spacing in centipoints in its `val` attribute.r!  r$   rK   N)
rO   rP   rQ   rR   rS   r   r   r!  rT   rX   rK   r9   r7   rC  rC  e  s   ‡ ÙWá#ØÐ"ó€Cˆö r9   rC  )=rS   Ú
__future__r   rG   Útypingr   r   r   Úpptx.enum.langr   Úpptx.enum.textr   r	   r
   r   Úpptx.excr   Ú	pptx.oxmlr   Úpptx.oxml.dml.fillr   Úpptx.oxml.nsr   Úpptx.oxml.simpletypesr   r   r   r   r   r   r   r   r   Úpptx.oxml.xmlchemyr   r   r   r   r   r   r    r!   r"   Ú	pptx.utilr#   r$   Úpptx.oxml.actionr%   r'   rZ   r^   r“   rÑ   rÖ   rÙ   rÞ   r`   r  r7  r"  rC  rK   r9   r7   Ú<module>rP     s  ðÙ :å "ã 	ß 0Ñ 0å *÷ó õ %Ý Ý 8Ý  ÷
÷ 
õ 
÷
÷ 
õ 
÷ "æÝ-ôc˜ô cô@w
�/ô w
ôt;"˜Oô ;"ô|I ô IôX�?ô ô*�/ô ô�ô ô"˜?ô ô? �ô ? ôDk1 ô k1ô\�_ô ôB˜Oô ô˜/õ r9   