ó
    ˆ*£hLB  ã                  ó`  • S r SSKJr  SSK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  \(       a*  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\5      r " S S\5      r  " S S\5      r! " S S\5      r" " S S\5      r# " S S\5      r$ " S S\5      r%g)z-Table-related objects such as Table and Cell.é    )Úannotations)ÚTYPE_CHECKINGÚIterator)Ú
FillFormat)ÚTcRange)ÚSubshape)Ú	TextFrame)ÚEmuÚlazyproperty)ÚMSO_VERTICAL_ANCHOR)ÚCT_TableÚCT_TableCellÚCT_TableColÚCT_TableRow)ÚBaseSlidePart)ÚGraphicFrame)ÚProvidesPart)ÚLengthc                  óø  ^ • \ rS rSrSrSU 4S jjrSS jr\SS j5       r\	SS j5       r
\
R                  SS j5       r
\	SS j5       r\R                  SS	 j5       r\	SS
 j5       r\R                  SS j5       rSS jr\	SS j5       r\R                  SS j5       r\	SS j5       r\R                  SS j5       rSS jrSS jr\	SS j5       r\S 5       r\	SS j5       r\R                  SS j5       rSrU =r$ ) ÚTableé   zƒA DrawingML table object.

Not intended to be constructed directly, use
:meth:`.Slide.shapes.add_table` to add a table to a slide.
c                óB   >• [         [        U ]  5         Xl        X l        g ©N)Úsuperr   Ú__init__Ú_tblÚ_graphic_frame)ÚselfÚtblÚgraphic_frameÚ	__class__s      €ÚG/home/mande/repo/quber/.venv/lib/python3.13/site-packages/pptx/table.pyr   ÚTable.__init__   s   ø€ ÜŒe�TÑ#Ô%ØŒ	Ø+Õó    c                óL   • [        U R                  R                  X5      U 5      $ )zªReturn cell at `row_idx`, `col_idx`.

Return value is an instance of |_Cell|. `row_idx` and `col_idx` are zero-based, e.g.
cell(0, 0) is the top, left cell in the table.
)Ú_Cellr   Útc)r   Úrow_idxÚcol_idxs      r"   ÚcellÚ
Table.cell"   s   € ô �T—Y‘Y—\‘\ 'Ó3°TÓ:Ð:r$   c                ó.   • [        U R                  U 5      $ )zÆ|_ColumnCollection| instance for this table.

Provides access to |_Column| objects representing the table's columns. |_Column| objects
are accessed using list notation, e.g. `col = tbl.columns[0]`.
)Ú_ColumnCollectionr   ©r   s    r"   ÚcolumnsÚTable.columns*   s   € ô ! §¡¨DÓ1Ð1r$   c                ó.   • U R                   R                  $ )zÄWhen `True`, indicates first column should have distinct formatting.

Read/write. Distinct formatting is used, for example, when the first column contains row
headings (is a side-heading column).
©r   ÚfirstColr.   s    r"   Ú	first_colÚTable.first_col3   ó   € ð �y‰y×!Ñ!Ð!r$   c                ó$   • XR                   l        g r   r2   ©r   Úvalues     r"   r4   r5   <   ó   € à"�	‰	Õr$   c                ó.   • U R                   R                  $ )z¦When `True`, indicates first row should have distinct formatting.

Read/write. Distinct formatting is used, for example, when the first row contains column
headings.
©r   ÚfirstRowr.   s    r"   Ú	first_rowÚTable.first_row@   r6   r$   c                ó$   • XR                   l        g r   r<   r8   s     r"   r>   r?   I   r:   r$   c                ó.   • U R                   R                  $ )zªWhen `True`, indicates rows should have alternating shading.

Read/write. Used to allow rows to be traversed more easily without losing track of which
row is being read.
©r   ÚbandRowr.   s    r"   Úhorz_bandingÚTable.horz_bandingM   ó   € ð �y‰y× Ñ Ð r$   c                ó$   • XR                   l        g r   rB   r8   s     r"   rD   rE   V   ó   € à!�	‰	Õr$   c                óL   ^ • U 4S jT R                   R                  5        5       $ )zwGenerate _Cell object for each cell in this table.

Each grid cell is generated in left-to-right, top-to-bottom order.
c              3  ó<   >#   • U  H  n[        UT5      v •  M     g 7fr   ©r&   ©Ú.0r'   r   s     €r"   Ú	<genexpr>Ú#Table.iter_cells.<locals>.<genexpr>_   s   øé € Ð?Ò*> B”�b˜$—�Ò*>ùó   ƒ)r   Úiter_tcsr.   s   `r"   Ú
iter_cellsÚTable.iter_cellsZ   s   ø€ ô
 @¨$¯)©)×*<Ñ*<Ô*>Ó?Ð?r$   c                ó.   • U R                   R                  $ )z­When `True`, indicates the rightmost column should have distinct formatting.

Read/write. Used, for example, when a row totals column appears at the far right of the
table.
©r   ÚlastColr.   s    r"   Úlast_colÚTable.last_cola   rF   r$   c                ó$   • XR                   l        g r   rU   r8   s     r"   rW   rX   j   rH   r$   c                ó.   • U R                   R                  $ )z”When `True`, indicates the bottom row should have distinct formatting.

Read/write. Used, for example, when a totals row appears as the bottom row.
©r   ÚlastRowr.   s    r"   Úlast_rowÚTable.last_rown   s   € ð �y‰y× Ñ Ð r$   c                ó$   • XR                   l        g r   r[   r8   s     r"   r]   r^   v   rH   r$   c                óž   • [        [        U R                   Vs/ s H  oR                  PM     sn5      5      nX R                  l        gs  snf )z†Called by a row when its height changes.

Triggers the graphic frame to recalculate its total height (as the sum of the row
heights).
N)r
   ÚsumÚrowsÚheightr   )r   ÚrowÚnew_table_heights      r"   Únotify_height_changedÚTable.notify_height_changedz   s;   € ô œs¸$¿)º)Ó#Dº)°3§J¤J¹)Ñ#DÓEÓFÐØ%5×ÑÕ"ùò $Eó   ™A
c                óž   • [        [        U R                   Vs/ s H  oR                  PM     sn5      5      nX R                  l        gs  snf )z‰Called by a column when its width changes.

Triggers the graphic frame to recalculate its total width (as the sum of the column
widths).
N)r
   ra   r/   Úwidthr   )r   ÚcolÚnew_table_widths      r"   Únotify_width_changedÚTable.notify_width_changedƒ   s:   € ô œc¸¿ºÓ"Eº°§9¤9¹Ñ"EÓFÓGˆØ$3×ÑÕ!ùò #Frh   c                ó.   • U R                   R                  $ )z'The package part containing this table.)r   Úpartr.   s    r"   rp   Ú
Table.partŒ   s   € ð ×"Ñ"×'Ñ'Ð'r$   c                ó.   • [        U R                  U 5      $ )z·|_RowCollection| instance for this table.

Provides access to |_Row| objects representing the table's rows. |_Row| objects are
accessed using list notation, e.g. `col = tbl.rows[0]`.
)Ú_RowCollectionr   r.   s    r"   rb   Ú
Table.rows‘   s   € ô ˜dŸi™i¨Ó.Ð.r$   c                ó.   • U R                   R                  $ )z³When `True`, indicates columns should have alternating shading.

Read/write. Used to allow columns to be traversed more easily without losing track of
which column is being read.
©r   ÚbandColr.   s    r"   Úvert_bandingÚTable.vert_bandingš   rF   r$   c                ó$   • XR                   l        g r   rv   r8   s     r"   rx   ry   £   rH   r$   )r   r   )r   r   r    r   )r(   Úintr)   r{   Úreturnr&   )r|   r-   ©r|   Úbool)r9   r~   ©r|   zIterator[_Cell]©r|   ÚNone)r|   r   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r*   r   r/   Úpropertyr4   Úsetterr>   rD   rR   rW   r]   rf   rm   rp   rb   rx   Ú__static_attributes__Ú__classcell__©r!   s   @r"   r   r      sn  ø† ñ÷,ô
;ð ó2ó ð2ð ó"ó ð"ð ×Ñó#ó ð#ð ó"ó ð"ð ×Ñó#ó ð#ð ó!ó ð!ð ×Ñó"ó ð"ô@ð ó!ó ð!ð ‡_�_ó"ó ð"ð ó!ó ð!ð ‡_�_ó"ó ð"ô6ô4ð ó(ó ð(ð ñ/ó ð/ð ó!ó ð!ð ×Ñó"ó ö"r$   r   c                  óL  ^ • \ rS rSrSrSU 4S jjrSS jrSS jr\SS j5       r	\
SS j5       r\
SS j5       r\
S S	 j5       r\R                  S!S
 j5       r\
S S j5       r\R                  S"S j5       r\
S S j5       r\R                  S#S j5       r\
S S j5       r\R                  S$S j5       rS%S jr\
S&S j5       r\
S&S j5       rS'S jr\
S(S j5       r\R                  S)S j5       r\
S*S j5       r\
S+S j5       r\R                  S,S j5       r\S-S j5       rSrU =r$ ).r&   é¨   z
Table cellc                ó8   >• [         [        U ]  U5        Xl        g r   )r   r&   r   Ú_tc)r   r'   Úparentr!   s      €r"   r   Ú_Cell.__init__«   s   ø€ ÜŒe�TÑ# FÔ+Ø�r$   c                óh   • [        U[        U 5      5      (       d  gU R                  UR                  L $ )zÀ|True| if this object proxies the same element as `other`.

Equality for proxy objects is defined as referring to the same XML element, whether or not
they are the same proxy object instance.
F©Ú
isinstanceÚtyper�   ©r   Úothers     r"   Ú__eq__Ú_Cell.__eq__¯   s+   € ô ˜%¤ d£×,Ñ,ØØ�x‰x˜5Ÿ9™9Ð$Ð$r$   c                óh   • [        U[        U 5      5      (       d  gU R                  UR                  L$ )NTr“   r–   s     r"   Ú__ne__Ú_Cell.__ne__¹   s)   € Ü˜%¤ d£×,Ñ,ØØ�x‰x˜uŸy™yÐ(Ð(r$   c                ób   • U R                   R                  5       n[        R                  " U5      $ )zc|FillFormat| instance for this cell.

Provides access to fill properties such as foreground color.
)r�   Úget_or_add_tcPrr   Úfrom_fill_parent)r   ÚtcPrs     r"   ÚfillÚ
_Cell.fill¾   s'   € ð �x‰x×'Ñ'Ó)ˆÜ×*Ò*¨4Ó0Ð0r$   c                ó.   • U R                   R                  $ )z=True if this cell is the top-left grid cell in a merged cell.)r�   Úis_merge_originr.   s    r"   r¤   Ú_Cell.is_merge_originÇ   s   € ð �x‰x×'Ñ'Ð'r$   c                ó.   • U R                   R                  $ )a;  True if this cell is spanned by a merge-origin cell.

A merge-origin cell "spans" the other grid cells in its merge range, consuming their area
and "shadowing" the spanned grid cells.

Note this value is |False| for a merge-origin cell. A merge-origin cell spans other grid
cells, but is not itself a spanned cell.
)r�   Ú
is_spannedr.   s    r"   r§   Ú_Cell.is_spannedÌ   s   € ð �x‰x×"Ñ"Ð"r$   c                ó.   • U R                   R                  $ )zœLeft margin of cells.

Read/write. If assigned |None|, the default value is used, 0.1 inches for left and right
margins and 0.05 inches for top and bottom.
)r�   ÚmarLr.   s    r"   Úmargin_leftÚ_Cell.margin_leftØ   s   € ð �x‰x�}‰}Ðr$   c                óF   • U R                  U5        XR                  l        g r   )Ú_validate_margin_valuer�   rª   )r   r«   s     r"   r«   r¬   á   s   € à×#Ñ# KÔ0Ø#�‰�r$   c                ó.   • U R                   R                  $ )zRight margin of cell.)r�   ÚmarRr.   s    r"   Úmargin_rightÚ_Cell.margin_rightæ   ó   € ð �x‰x�}‰}Ðr$   c                óF   • U R                  U5        XR                  l        g r   )r®   r�   r°   )r   r±   s     r"   r±   r²   ë   s   € à×#Ñ# LÔ1Ø$�‰�r$   c                ó.   • U R                   R                  $ )zTop margin of cell.)r�   ÚmarTr.   s    r"   Ú
margin_topÚ_Cell.margin_topð   r³   r$   c                óF   • U R                  U5        XR                  l        g r   )r®   r�   r¶   )r   r·   s     r"   r·   r¸   õ   s   € à×#Ñ# JÔ/Ø"�‰�r$   c                ó.   • U R                   R                  $ )zBottom margin of cell.)r�   ÚmarBr.   s    r"   Úmargin_bottomÚ_Cell.margin_bottomú   r³   r$   c                óF   • U R                  U5        XR                  l        g r   )r®   r�   r»   )r   r¼   s     r"   r¼   r½   ÿ   s   € à×#Ñ# MÔ2Ø%�‰�r$   c                óÜ  • [        U R                  UR                  5      nUR                  (       d  [        S5      eUR                  (       a  [        S5      eUR                  5         UR                  u  p4UR                  5        H	  nX5l        M     UR                  5        H	  nXEl
        M     UR                  5        H
  nSUl        M     UR                  5        H
  nSUl        M     g)a–  Create merged cell from this cell to `other_cell`.

This cell and `other_cell` specify opposite corners of the merged cell range. Either
diagonal of the cell region may be specified in either order, e.g. self=bottom-right,
other_cell=top-left, etc.

Raises |ValueError| if the specified range already contains merged cells anywhere within
its extents or if `other_cell` is not in the same table as `self`.
zother_cell from different tablez'range contains one or more merged cellsTN)r   r�   Úin_same_tableÚ
ValueErrorÚcontains_merged_cellÚmove_content_to_originÚ
dimensionsÚiter_top_row_tcsÚrowSpanÚiter_left_col_tcsÚgridSpanÚiter_except_left_col_tcsÚhMergeÚiter_except_top_row_tcsÚvMerge)r   Ú
other_cellÚtc_rangeÚ	row_countÚ	col_countr'   s         r"   ÚmergeÚ_Cell.merge  sÀ   € ô ˜4Ÿ8™8 Z§^¡^Ó4ˆà×%×%ÜÐ>Ó?Ð?Ø×(×(ÜÐFÓGÐGà×'Ñ'Ô)à'×2Ñ2Ñˆ	à×+Ñ+Ö-ˆBØ"ŽJñ .à×,Ñ,Ö.ˆBØ#ŽKñ /à×3Ñ3Ö5ˆBØˆBŽIñ 6à×2Ñ2Ö4ˆBØˆBŽIò 5r$   c                ó.   • U R                   R                  $ )a>  int count of rows spanned by this cell.

The value of this property may be misleading (often 1) on cells where `.is_merge_origin`
is not |True|, since only a merge-origin cell contains complete span information. This
property is only intended for use on cells known to be a merge origin by testing
`.is_merge_origin`.
)r�   rÆ   r.   s    r"   Úspan_heightÚ_Cell.span_height"  s   € ð �x‰x×ÑÐr$   c                ó.   • U R                   R                  $ )aA  int count of columns spanned by this cell.

The value of this property may be misleading (often 1) on cells where `.is_merge_origin`
is not |True|, since only a merge-origin cell contains complete span information. This
property is only intended for use on cells known to be a merge origin by testing
`.is_merge_origin`.
)r�   rÈ   r.   s    r"   Ú
span_widthÚ_Cell.span_width-  s   € ð �x‰x× Ñ Ð r$   c                óâ   • U R                   (       d  [        S5      e[        R                  " U R                  5      nUR                  5        H  nS=Ul        Ul        S=Ul        Ul	        M!     g)a0  Remove merge from this (merge-origin) cell.

The merged cell represented by this object will be "unmerged", yielding a separate
unmerged cell for each grid cell previously spanned by this merge.

Raises |ValueError| when this cell is not a merge-origin cell. Test with
`.is_merge_origin` before calling.
z>not a merge-origin cell; only a merge-origin cell can be splité   FN)
r¤   rÁ   r   Úfrom_merge_originr�   rQ   rÆ   rÈ   rÊ   rÌ   )r   rÎ   r'   s      r"   ÚsplitÚ_Cell.split8  s\   € ð ×#×#ÜÐ`ÓaÐaä×,Ò,¨T¯X©XÓ6ˆà×#Ñ#Ö%ˆBØ'(Ð(ˆBŒJ˜œØ$)Ð)ˆBŒI˜ž	ò &r$   c                ó.   • U R                   R                  $ )ak  Textual content of cell as a single string.

The returned string will contain a newline character (`"\n"`) separating each paragraph
and a vertical-tab (`"\v"`) character for each line break (soft carriage return) in the
cell's text.

Assignment to `text` replaces all text currently contained in the cell. A newline
character (`"\n"`) in the assigned text causes a new paragraph to be started. A
vertical-tab (`"\v"`) character in the assigned text causes a line-break (soft
carriage-return) to be inserted. (The vertical-tab character appears in clipboard text
copied from PowerPoint as its encoding of line-breaks.)
©Ú
text_frameÚtextr.   s    r"   rá   Ú
_Cell.textJ  s   € ð �‰×#Ñ#Ð#r$   c                ó$   • XR                   l        g r   rß   )r   rá   s     r"   rá   râ   Z  s   € à#�‰Õr$   c                óL   • U R                   R                  5       n[        X5      $ )z9|TextFrame| containing the text that appears in the cell.)r�   Úget_or_add_txBodyr	   )r   ÚtxBodys     r"   rà   Ú_Cell.text_frame^  s!   € ð —‘×+Ñ+Ó-ˆÜ˜Ó&Ð&r$   c                ó.   • U R                   R                  $ )a®  Vertical alignment of this cell.

This value is a member of the :ref:`MsoVerticalAnchor` enumeration or |None|. A value of
|None| indicates the cell has no explicitly applied vertical anchor setting and its
effective value is inherited from its style-hierarchy ancestors.

Assigning |None| to this property causes any explicitly applied vertical anchor setting to
be cleared and inheritance of its effective value to be restored.
©r�   Úanchorr.   s    r"   Úvertical_anchorÚ_Cell.vertical_anchord  s   € ð �x‰x�‰Ðr$   c                ó$   • XR                   l        g r   ré   )r   Úmso_anchor_idxs     r"   rë   rì   q  s   € à(�‰�r$   c                óT   • [        U [        5      (       d  U b  Sn[        X-  5      egg)zMRaise ValueError if `margin_value` is not a positive integer value or |None|.Nz.margin value must be integer or None, got '%s')r”   r{   Ú	TypeError)Úmargin_valueÚtmpls     r"   r®   Ú_Cell._validate_margin_valueu  s2   € ô ˜,¬×,Ñ,°Ñ1IØCˆDÜ˜DÑ/Ó0Ð0ð 2JÐ,r$   )r�   )r'   r   r�   r   )r—   Úobjectr|   r~   )r|   r   r}   ©r|   r   )r«   úLength | None)r±   rö   )r·   rö   )r¼   rö   )rÍ   r&   r|   r�   ©r|   r{   r€   )r|   Ústr)rá   rø   )r|   r	   )r|   úMSO_VERTICAL_ANCHOR | None)rî   rù   )rñ   rö   r|   r�   )r‚   rƒ   r„   r…   r†   r   r˜   r›   r   r¡   r‡   r¤   r§   r«   rˆ   r±   r·   r¼   rÑ   rÔ   r×   rÜ   rá   rà   rë   Ústaticmethodr®   r‰   rŠ   r‹   s   @r"   r&   r&   ¨   s½  ø† Ù÷ô%ô)ð
 ó1ó ð1ð ó(ó ð(ð ó	#ó ð	#ð óó ðð ×Ñó$ó ð$ð óó ðð ×Ñó%ó ð%ð óó ðð ×Ñó#ó ð#ð óó ðð ×Ñó&ó ð&ôð< ó ó ð ð ó!ó ð!ô*ð$ ó$ó ð$ð 
‡[�[ó$ó ð$ð ó'ó ð'ð
 ó
ó ð
ð ×Ñó)ó ð)ð ó1ó ö1r$   r&   c                  ól   ^ • \ rS rSrSrSU 4S jjr\SS j5       r\R                  S	S j5       rSr	U =r
$ )
Ú_Columni}  zTable columnc                óD   >• [         [        U ]  U5        X l        Xl        g r   )r   rü   r   Ú_parentÚ_gridCol)r   ÚgridColr�   r!   s      €r"   r   Ú_Column.__init__€  s   ø€ ÜŒg�tÑ% fÔ-ØŒØ�r$   c                ó.   • U R                   R                  $ )zWidth of column in EMU.)rÿ   Úwr.   s    r"   rj   Ú_Column.width…  s   € ð �}‰}�‰Ðr$   c                óX   • XR                   l        U R                  R                  5         g r   )rÿ   r  rþ   rm   )r   rj   s     r"   rj   r  Š  s   € à�‰ŒØ�‰×)Ñ)Õ+r$   )rÿ   rþ   )r   r   r�   r-   rõ   )rj   r   )r‚   rƒ   r„   r…   r†   r   r‡   rj   rˆ   r‰   rŠ   r‹   s   @r"   rü   rü   }  s7   ø† Ù÷ ð
 óó ðð ‡\�\ó,ó ö,r$   rü   c                  ó|   ^ • \ rS rSrSrSU 4S jjr\S 5       r\S	S j5       r\R                  S
S j5       rSr
U =r$ )Ú_Rowi�  z	Table rowc                óD   >• [         [        U ]  U5        X l        Xl        g r   )r   r  r   rþ   Ú_tr©r   Útrr�   r!   s      €r"   r   Ú_Row.__init__“  s   ø€ ÜŒd�DÑ" 6Ô*ØŒØ�r$   c                ó.   • [        U R                  U 5      $ )z†Read-only reference to collection of cells in row.

An individual cell is referenced using list notation, e.g. `cell = row.cells[0]`.
)Ú_CellCollectionr	  r.   s    r"   ÚcellsÚ
_Row.cells˜  s   € ô ˜tŸx™x¨Ó.Ð.r$   c                ó.   • U R                   R                  $ )zHeight of row in EMU.)r	  Úhr.   s    r"   rc   Ú_Row.height   s   € ð �x‰x�z‰zÐr$   c                óX   • XR                   l        U R                  R                  5         g r   )r	  r  rþ   rf   )r   rc   s     r"   rc   r  ¥  s   € à�‰Œ
Ø�‰×*Ñ*Õ,r$   ©rþ   r	  )r  r   r�   rs   rõ   )rc   r   )r‚   rƒ   r„   r…   r†   r   r‡   r  rc   rˆ   r‰   rŠ   r‹   s   @r"   r  r  �  sK   ø† Ù÷ð
 ñ/ó ð/ð óó ðð ‡]�]ó-ó ö-r$   r  c                  óN   ^ • \ rS rSrSrSU 4S jjrS	S jrS
S jrSS jrSr	U =r
$ )r  i«  z Horizontal sequence of row cellsc                óD   >• [         [        U ]  U5        X l        Xl        g r   )r   r  r   rþ   r	  r
  s      €r"   r   Ú_CellCollection.__init__®  s   ø€ ÜŒo˜tÑ-¨fÔ5ØŒØ�r$   c                óº   • US:  d#  U[        U R                  R                  5      :¼  a  SU-  n[        U5      e[	        U R                  R                  U   U 5      $ )z+Provides indexed access, (e.g. 'cells[0]').r   zcell index [%d] out of range)Úlenr	  Útc_lstÚ
IndexErrorr&   ©r   ÚidxÚmsgs      r"   Ú__getitem__Ú_CellCollection.__getitem__³  sK   € à�‹7�cœS §¡§¡Ó1Ó1Ø0°3Ñ6ˆCÜ˜S“/Ð!Ü�T—X‘X—_‘_ SÑ)¨4Ó0Ð0r$   c                óD   ^ • U 4S jT R                   R                   5       $ )zProvides iterability.c              3  ó<   >#   • U  H  n[        UT5      v •  M     g 7fr   rK   rL   s     €r"   rN   Ú+_CellCollection.__iter__.<locals>.<genexpr>¼  s   øé € Ð:ª/ B”�b˜$—�ª/ùrP   )r	  r  r.   s   `r"   Ú__iter__Ú_CellCollection.__iter__º  s   ø€ ä:¨$¯(©(¯/ª/Ó:Ð:r$   c                ó@   • [        U R                  R                  5      $ )z1Supports len() function (e.g. 'len(cells) == 1').)r  r	  r  r.   s    r"   Ú__len__Ú_CellCollection.__len__¾  s   € ä�4—8‘8—?‘?Ó#Ð#r$   r  )r  r   r�   r  )r  r{   r|   r&   r   r÷   )r‚   rƒ   r„   r…   r†   r   r   r%  r(  r‰   rŠ   r‹   s   @r"   r  r  «  s   ø† Ù*÷ô
1ô;÷$ò $r$   r  c                  óF   ^ • \ rS rSrSrSU 4S jjrS	S jrS rS rSr	U =r
$ )
r-   iÃ  zSequence of table columns.c                óD   >• [         [        U ]  U5        X l        Xl        g r   )r   r-   r   rþ   r   ©r   r   r�   r!   s      €r"   r   Ú_ColumnCollection.__init__Æ  s   ø€ ÜÔ Ñ/°Ô7ØŒØ�	r$   c                óâ   • US:  d-  U[        U R                  R                  R                  5      :¼  a  SU-  n[	        U5      e[        U R                  R                  R                  U   U 5      $ )z-Provides indexed access, (e.g. 'columns[0]').r   zcolumn index [%d] out of range)r  r   ÚtblGridÚgridCol_lstr  rü   r  s      r"   r   Ú_ColumnCollection.__getitem__Ë  s[   € à�‹7�cœS §¡×!2Ñ!2×!>Ñ!>Ó?Ó?Ø2°SÑ8ˆCÜ˜S“/Ð!Ü�t—y‘y×(Ñ(×4Ñ4°SÑ9¸4Ó@Ð@r$   c                óT   • [        U R                  R                  R                  5      $ )z3Supports len() function (e.g. 'len(columns) == 1').)r  r   r/  r0  r.   s    r"   r(  Ú_ColumnCollection.__len__Ò  s   € ä�4—9‘9×$Ñ$×0Ñ0Ó1Ð1r$   c                ó8   • U R                   R                  5         g)z@Called by a column when its width changes. Pass along to parent.N)rþ   rm   r.   s    r"   rm   Ú&_ColumnCollection.notify_width_changedÖ  s   € à�‰×)Ñ)Õ+r$   ©rþ   r   ©r   r   r�   r   )r  r{   )r‚   rƒ   r„   r…   r†   r   r   r(  rm   r‰   rŠ   r‹   s   @r"   r-   r-   Ã  s    ø† Ù$÷ô
Aò2÷,ð ,r$   r-   c                  óF   ^ • \ rS rSrSrSU 4S jjrS	S jrS rS rSr	U =r
$ )
rs   iÛ  zSequence of table rowsc                óD   >• [         [        U ]  U5        X l        Xl        g r   )r   rs   r   rþ   r   r,  s      €r"   r   Ú_RowCollection.__init__Þ  s   ø€ ÜŒn˜dÑ,¨VÔ4ØŒØ�	r$   c                ó’   • US:  d  U[        U 5      :¼  a  SU-  n[        U5      e[        U R                  R                  U   U 5      $ )z*Provides indexed access, (e.g. 'rows[0]').r   zrow index [%d] out of range)r  r  r  r   Útr_lstr  s      r"   r   Ú_RowCollection.__getitem__ã  sD   € à�‹7�cœS ›YÓ&Ø/°#Ñ5ˆCÜ˜S“/Ð!Ü�D—I‘I×$Ñ$ SÑ)¨4Ó0Ð0r$   c                ó@   • [        U R                  R                  5      $ )z0Supports len() function (e.g. 'len(rows) == 1').)r  r   r<  r.   s    r"   r(  Ú_RowCollection.__len__ê  s   € ä�4—9‘9×#Ñ#Ó$Ð$r$   c                ó8   • U R                   R                  5         g)z>Called by a row when its height changes. Pass along to parent.N)rþ   rf   r.   s    r"   rf   Ú$_RowCollection.notify_height_changedî  s   € à�‰×*Ñ*Õ,r$   r6  r7  )r  r{   r|   r  )r‚   rƒ   r„   r…   r†   r   r   r(  rf   r‰   rŠ   r‹   s   @r"   rs   rs   Û  s   ø† Ù ÷ô
1ò%÷-ð -r$   rs   N)&r†   Ú
__future__r   Útypingr   r   Úpptx.dml.fillr   Úpptx.oxml.tabler   Úpptx.shapesr   Úpptx.text.textr	   Ú	pptx.utilr
   r   Úpptx.enum.textr   r   r   r   r   Úpptx.parts.slider   Úpptx.shapes.graphfrmr   Ú
pptx.typesr   r   rô   r   r&   rü   r  r  r-   rs   © r$   r"   Ú<module>rN     s�   ðÙ 3å "ç *å $Ý #Ý  Ý $ß 'æÝ2ßPÓPÝ.Ý1Ý'Ý ôO"ˆFô O"ôdR1ˆHô R1ôj,ˆhô ,ô&-ˆ8ô -ô6$�hô $ô0,˜ô ,ô0-�Xõ -r$   