Files
ServerSync/lib/rich/__pycache__/table.cpython-314.pyc

370 lines
50 KiB
Plaintext
Raw Normal View History

2026-02-12 02:28:23 +02:00
+
<00> <0C>ia<69><00>
<00>|<00>^RIHtHtHt^RIHtHtHtHtH t H
t
H t H t H t ^RIHtHt^RIHtHt^RIHt^RIHtHt^RIHt^RIHt^R IHt^R
IH t H!t!^R I"H#t#^R I$H%t%^R I&H't'H(t(^RI)H*t*H+t+]'d^RI,H-t-H.t.H/t/H0t0H1t1H2t2]!RR44t3]!RR44t4!RR] 4t5!RR]4t6]7R8XEd<>^RI8H-t-^RI9H:t:^RI;H<t<]<!R4;_uu_4]6!RRRR 7t=]=P}R!R"R#R$R%7]=P}R&R'R(7]=P}R)RR*R+7]=PR,R-R.4]=PR/R0R14]=PR2R3R4R5R$R67]=PR7R8R94R:R;lt@]-!4t,]:!4tA]@!R<4],P<>]=R=R>7R$]=nC]@!R?4],P<>]=4^2]=nD]@!R@4],P<>]=R=R>7RA]=nDRB]=nCRCRD.]=nE]@!RE4],P<>]=R=R>7RA]=nDRB]=nCRCRD.]=nE^]=nF]@!RF4],P<>]=R=R>7RA]=nDRB]=nCRCRD.]=nER$]=nG^]=nF]@!RG4],P<>]=R=R>7RARARA4RA#RA# +'giRA#;i)H<>)<03> dataclass<73>field<6C>replace) <09> TYPE_CHECKING<4E>Dict<63>Iterable<6C>List<73>
NamedTuple<EFBFBD>Optional<61>Sequence<63>Tuple<6C>Union)<02>box<6F>errors)<02>loop_first_last<73> loop_last)<01> pick_bool)<02>ratio_distribute<74> ratio_reduce)<01>VerticalAlignMethod)<01> JupyterMixin<69><01> Measurement)<02>Padding<6E>PaddingDimensions)<01> is_renderable)<01>Segment)<02>Style<6C> StyleType)<02>Text<78>TextType)<06>Console<6C>ConsoleOptions<6E> JustifyMethod<6F>OverflowMethod<6F>RenderableType<70> RenderResultc<00><>a<00>]tRt^&toRtRtRtRtRtRt Rt
Rt Rt Rt RtRtRtRtRt^t]!]R7tV3R lR
lt]V3R lR l4t]V3R lRl4tV3RltRtVtR#)<11>Columna<6E> Defines a column within a ~Table.
Args:
title (Union[str, Text], optional): The title of the table rendered at the top. Defaults to None.
caption (Union[str, Text], optional): The table caption rendered below. Defaults to None.
width (int, optional): The width in characters of the table, or ``None`` to automatically fit. Defaults to None.
min_width (Optional[int], optional): The minimum width of the table, or ``None`` for no minimum. Defaults to None.
box (box.Box, optional): One of the constants in box.py used to draw the edges (see :ref:`appendix_box`), or ``None`` for no box lines. Defaults to box.HEAVY_HEAD.
safe_box (Optional[bool], optional): Disable box characters that don't display on windows legacy terminal with *raster* fonts. Defaults to True.
padding (PaddingDimensions, optional): Padding for cells (top, right, bottom, left). Defaults to (0, 1).
collapse_padding (bool, optional): Enable collapsing of padding around cells. Defaults to False.
pad_edge (bool, optional): Enable padding of edge cells. Defaults to True.
show_header (bool, optional): Show a header row. Defaults to True.
show_footer (bool, optional): Show a footer row. Defaults to False.
show_edge (bool, optional): Draw a box around the outside of the table. Defaults to True.
show_lines (bool, optional): Draw lines between every row. Defaults to False.
leading (int, optional): Number of blank lines between rows (precludes ``show_lines``). Defaults to 0.
style (Union[str, Style], optional): Default style for the table. Defaults to "none".
row_styles (List[Union, str], optional): Optional list of row styles, if more than one style is given then the styles will alternate. Defaults to None.
header_style (Union[str, Style], optional): Style of the header. Defaults to "table.header".
footer_style (Union[str, Style], optional): Style of the footer. Defaults to "table.footer".
border_style (Union[str, Style], optional): Style of the border. Defaults to None.
title_style (Union[str, Style], optional): Style of the title. Defaults to None.
caption_style (Union[str, Style], optional): Style of the caption. Defaults to None.
title_justify (str, optional): Justify method for title. Defaults to "center".
caption_justify (str, optional): Justify method for caption. Defaults to "center".
highlight (bool, optional): Highlight cell contents (if str). Defaults to False.
<EFBFBD><00>left<66>top<6F>ellipsisNF)<01>default_factoryc<00><<01>V^8<>dQhRR/#)<03><00>returnr)<00>)<02>format<61> __classdict__s"<22><>1/tmp/pip-target-qd_sq_1j/lib/python/rich/table.py<70> __annotate__<5F>Column.__annotate__ts<00><><00>(<28>(<28>h<EFBFBD>(<28>c <0C><00>\V.R7#)zReturn a copy of this Column.<2E><01>_cells)r<00><01>selfs&r5<00>copy<70> Column.copyts<00><00><16>t<EFBFBD>B<EFBFBD>'<27>'r8c<00>.<<01>V^8<>dQhRS[R,/#)r0r1r&)r)r3r4s"<22>r5r6r7ys<00><><00><1F><1F>x<EFBFBD> 0<>1<>r8c# <0C>:"<00>VPRjx<01>L
R#L5i)z2Get all cells in the column, not including header.Nr:r<s&r5<00>cells<6C> Column.cellsxs<00><00><00><18>;<3B>;<3B><1E><1E>s <00><01><04>c<00> <<01>V^8<>dQhRS[/#<00>r0r1<00><01>bool)r3r4s"<22>r5r6r7~s<00><><00>&<26>&<26>$<24>&r8c <0C><00>VPRJ#)z!Check if this column is flexible.N)<01>ratior<s&r5<00>flexible<6C>Column.flexible}s<00><00><14>z<EFBFBD>z<EFBFBD><14>%<25>%r8c<00><<01>V^8<>dQh/R;R&R;R&S[;R&S[;R&S[;R&R;R&R ;R
&R ;R &S[S[,;R &S[S[,;R&S[S[,;R&S[S[,;R&S[;R&S[;R&S[;R&S[R,;R&#)r0r&<00>header<65>footer<65> header_style<6C> footer_style<6C>styler$<00>justifyr<00>verticalr%<00>overflow<6F>width<74> min_width<74> max_widthrI<00>no_wrap<61> highlight<68>_indexr;)rr <00>intrGr )r3r4s"<22>r5r6r7&s<00><><00><00>> <1D>!<21>?<01>D <1D>!<21>E<01>J<1C> <20>K<01>P<1C> <20>Q<01>V <15><19>W<01>\<1D>%<25>]<01>b$<24>+<2B>c<01>h<1F>+<2B>i<01>n <14>C<EFBFBD>=<3D><1F>o<01>t<18><03>}<7D>#<23>u<01>z<18><03>}<7D>#<23>{<01>@ <14>C<EFBFBD>=<3D><1F>A<01>F<12><19>G<01>L<14><1B>M<01>R <10>O<EFBFBD>S<01>X <11>!<21> "<22>@<40>Yr8r2)<1E>__name__<5F>
__module__<EFBFBD> __qualname__<5F>__firstlineno__<5F>__doc__rMrNrOrPrQrRrSrTrUrVrWrIrXrYrZr<00>listr;r><00>propertyrBrJ<00>__annotate_func__<5F>__static_attributes__<5F>__classdictcell__<5F>r4s@r5r)r)&s<><00><><00><00><08>: "<22>F<EFBFBD>H<>!<21>F<EFBFBD>H<> <20>L<EFBFBD>-<2D> <20>L<EFBFBD>-<2D><19>E<EFBFBD>-<2D>%<25>G<EFBFBD>[<5B>&+<2B>H<EFBFBD>M<>!+<2B>H<EFBFBD><1F><1F>E<EFBFBD>\<5C>#<23>I<EFBFBD>_<>#<23>I<EFBFBD>_<><1F>E<EFBFBD>w<><19>G<EFBFBD>R<><1B>I<EFBFBD>C<><13>F<EFBFBD><1A>%*<2A>4<EFBFBD>%@<40>F<EFBFBD>(<28>(<28><0E><1F><0E><1F><0E>&<26><0E>&<26>q<01>r8r)c<00><a<00>]tRt^<5E>toRtRtRtV3RltRtVt R#)<06>RowzInformation regarding a row.NFc<00>B<<01>V^8<>dQh/S[S[,;R&S[;R&#)r0rQ<00> end_section<6F>r rrG)r3r4s"<22>r5r6<00>Row.__annotate__<5F>s$<00><><00><00> <14>I<EFBFBD> <1E>%<25> <01><16><1D>r8r2)
r\r]r^r_r`rQrjrcrdrerfs@r5rhrh<00>s<00><><00><00>&<26>!%<25>E<EFBFBD> <20><1D>K<EFBFBD>L<><01>r8rhc<00>6a<00>]tRt^<5E>toRtV3RltRtVtR#)<05>_CellzA single cell in a table.c<00><<<01>V^8<>dQh/S[;R&R;R&S[;R&#)r0rQr&<00>
renderablerS)rr)r3r4s"<22>r5r6<00>_Cell.__annotate__<5F>s,<00><><00><00> <15><14><01>
!<21> <20> <01>"<22>!<21>r8r2N)r\r]r^r_r`rcrdrerfs@r5rnrn<00>s<00><><00><00>#<23>"<22><1A>"<22><01>r8rnc2<00><>a<00>]tRt^<5E>toRtRRRRRRRRR]P RRR RVR
R R R RR RR RR RR RR R^RRRRRRRRRRRRRRRRR RR!R /V3R"lR#llt]R ^R
R R R RR /V3R$lR%ll4t ]
V3R&lR'l4t ] PV3R(lR)l4t ]
V3R*lR+l4t ]
V3R,lR-l4tV3R.lR/ltV3R0lR1lt]
V3R2lR3l4t]PV3R4lR5l4tRWRRR!RRRRRR6R7R8R9R:R;RRRRR<RR=RR>R / V3R?lR@llltRRRAR /V3RBlRClltV3RDlREltV3RFlRGltV3RHlRIlt]V3RJlRKl4tV3RLlRMltV3RNlROltV3RPlRQltV3RRlRSltV3RTltRUtVtR#)X<>Tablea<65>
A console renderable to draw a table.
Args:
*headers (Union[Column, str]): Column headers, either as a string, or :class:`~rich.table.Column` instance.
title (Union[str, Text], optional): The title of the table rendered at the top. Defaults to None.
caption (Union[str, Text], optional): The table caption rendered below. Defaults to None.
width (int, optional): The width in characters of the table, or ``None`` to automatically fit. Defaults to None.
min_width (Optional[int], optional): The minimum width of the table, or ``None`` for no minimum. Defaults to None.
box (box.Box, optional): One of the constants in box.py used to draw the edges (see :ref:`appendix_box`), or ``None`` for no box lines. Defaults to box.HEAVY_HEAD.
safe_box (Optional[bool], optional): Disable box characters that don't display on windows legacy terminal with *raster* fonts. Defaults to True.
padding (PaddingDimensions, optional): Padding for cells (top, right, bottom, left). Defaults to (0, 1).
collapse_padding (bool, optional): Enable collapsing of padding around cells. Defaults to False.
pad_edge (bool, optional): Enable padding of edge cells. Defaults to True.
expand (bool, optional): Expand the table to fit the available space if ``True``, otherwise the table width will be auto-calculated. Defaults to False.
show_header (bool, optional): Show a header row. Defaults to True.
show_footer (bool, optional): Show a footer row. Defaults to False.
show_edge (bool, optional): Draw a box around the outside of the table. Defaults to True.
show_lines (bool, optional): Draw lines between every row. Defaults to False.
leading (int, optional): Number of blank lines between rows (precludes ``show_lines``). Defaults to 0.
style (Union[str, Style], optional): Default style for the table. Defaults to "none".
row_styles (List[Union, str], optional): Optional list of row styles, if more than one style is given then the styles will alternate. Defaults to None.
header_style (Union[str, Style], optional): Style of the header. Defaults to "table.header".
footer_style (Union[str, Style], optional): Style of the footer. Defaults to "table.footer".
border_style (Union[str, Style], optional): Style of the border. Defaults to None.
title_style (Union[str, Style], optional): Style of the title. Defaults to None.
caption_style (Union[str, Style], optional): Style of the caption. Defaults to None.
title_justify (str, optional): Justify method for title. Defaults to "center".
caption_justify (str, optional): Justify method for caption. Defaults to "center".
highlight (bool, optional): Highlight cell contents (if str). Defaults to False.
<EFBFBD>titleN<65>captionrUrVr<00>safe_box<6F>padding<6E>collapse_paddingF<67>pad_edgeT<65>expand<6E> show_header<65> show_footer<65> show_edge<67>
show_lines<EFBFBD>leadingrQ<00>none<6E>
row_stylesrOz table.headerrPz table.footer<65> border_style<6C> title_style<6C> caption_style<6C> title_justify<66>center<65>caption_justifyrYc6<00><><<01>V^8<>dQhRS[S[S[3,RS[S[,RS[S[,RS[S[,RS[S[,RS[S[P,RS[S[,RS[ R S[R
S[R S[R S[R S[RS[RS[RS[RS[
RS[S[ S[
,,RS[S[
,RS[S[
,RS[S[
,RS[S[
,RS[S[
,RRRRRS[RR/#)r0<00>headersrtrurUrVrrvrwrxryrzr{r|r}r~rrQr<>rOrPr<>r<>r<>r<>r$r<>rYr1N) rr)<00>strr r!r[r<00>BoxrGrrr)r3r4s"<22>r5r6<00>Table.__annotate__<5F>sd<00><><00>>&<26>>&<26><17><06><03> <0B>$<24>>&<26><18><08>!<21>>&<26><1A>(<28>#<23> >&<26>
<18><03>}<7D> >&<26> <1C>C<EFBFBD>=<3D> >&<26><16>c<EFBFBD>g<EFBFBD>g<EFBFBD> <1E>>&<26><1B>4<EFBFBD>.<2E>>&<26>#<23>>&<26><1F>>&<26><17>>&<26><15>>&<26><1A>>&<26><1A>>&<26><18>>&<26> <19>!>&<26>"<15>#>&<26>$<19>%>&<26>&<1D>X<EFBFBD>i<EFBFBD>0<>1<>'>&<26>(<1F>y<EFBFBD>)<29>)>&<26>*<1F>y<EFBFBD>)<29>+>&<26>,<1F>y<EFBFBD>)<29>->&<26>.<1E>i<EFBFBD>(<28>/>&<26>0 <20> <09>*<2A>1>&<26>2'<27>3>&<26>4)<29>5>&<26>6<18>7>&<26>8
<0E>9>&r8c<08><><00>.Vn.VnWnW nW0nW@nWPnW`n\P!V4Vn
W<>n W<>n W<>n W<>nW<>nW<>nW<>nW<>nVVnT;'gRVnT;'gRVnVVnVVnVVnVVnVVnVVn\9T;'g.4VnVPP<pVFOp\?V\@4'dVPCVR7K-\EVP4Vn#V!V4KQ R#)r*)rMN)$<24>columns<6E>rowsrtrurUrVrrvr<00>unpack<63>_paddingry<00>_expandr{r|r}r~rrxrQrOrPr<>r<>r<>r<>r<>rYrar<><00>append<6E>
isinstancer<EFBFBD><00>
add_column<EFBFBD>lenrZ)r=rtrurUrVrrvrwrxryrzr{r|r}r~rrQr<>rOrPr<>r<>r<>r<>r<>rYr<><00> append_columnrMs&$$$$$$$$$$$$$$$$$$$$$$$$$* r5<00>__init__<5F>Table.__init__<5F>s!<00><00>:&(<28><04> <0C>!<21><04> <09><1A>
<EFBFBD><1E> <0C><1A>
<EFBFBD>"<22><0E><16><08> <20> <0A><1F><0E><0E>w<EFBFBD>/<2F><04> <0A> <20> <0A><1D> <0C>&<26><18>&<26><18>"<22><0E>$<24><0F><1E> <0C> 0<><1D><1A><04>
<EFBFBD>(<28>.<2E>.<2E>B<EFBFBD><04><19>(<28>.<2E>.<2E>B<EFBFBD><04><19>(<28><04><19>&<26><04><18>*<2A><04><1A>.;<3B><04><1A>0?<3F><04><1C>"<22><04><0E>/3<>J<EFBFBD>4D<34>4D<34>"<22>/E<><04><0F><1C> <0C> <0C>+<2B>+<2B> <0A><1D>F<EFBFBD><19>&<26>#<23>&<26>&<26><14><0F><0F>v<EFBFBD><0F>.<2E> #<23>D<EFBFBD>L<EFBFBD>L<EFBFBD> 1<><06> <0A><1D>f<EFBFBD>%<25> r8c <00>R<<01>V^8<>dQhRS[S[S[3,RS[RS[RS[RS[RR/#)r0r<>rwrxryrzr1rs)rr)r<>rrG)r3r4s"<22>r5r6r<><00>sP<00><><00>
<EFBFBD>
<EFBFBD><17><06><03> <0B>$<24>
<EFBFBD>#<23>
<EFBFBD><1F> 
<EFBFBD>
<17> 
<EFBFBD> <15> 
<EFBFBD>
<11>
r8c <0C>.<00>V!VRRRVRVRRRRRRR VR
V/#) ayGet a table with no lines, headers, or footer.
Args:
*headers (Union[Column, str]): Column headers, either as a string, or :class:`~rich.table.Column` instance.
padding (PaddingDimensions, optional): Get padding around cells. Defaults to 0.
collapse_padding (bool, optional): Enable collapsing of padding around cells. Defaults to True.
pad_edge (bool, optional): Enable padding around edges of table. Defaults to False.
expand (bool, optional): Expand the table to fit the available space if ``True``, otherwise the table width will be auto-calculated. Defaults to False.
Returns:
Table: A table instance.
rNrwrxr{Fr|r}ryrzr2)<06>clsrwrxryrzr<>s&$$$$*r5<00>grid<69>
Table.grid<69>sb<00><00>*<13> <14>

<EFBFBD><14>

<EFBFBD><1C>

<EFBFBD>.<2E>

<EFBFBD>
<1E>

<EFBFBD> <1E>

<EFBFBD><1C>

<EFBFBD><1E>

<EFBFBD><1A>

<EFBFBD>
r8c<00> <<01>V^8<>dQhRS[/#rErF)r3r4s"<22>r5r6r<>s<00><><00>6<>6<><04>6r8c <0C>F<00>VP;'gVPRJ#)z-Setting a non-None self.width implies expand.N)r<>rUr<s&r5rz<00> Table.expands<00><00><14>|<7C>|<7C>5<>5<>t<EFBFBD>z<EFBFBD>z<EFBFBD><14>5<>5r8c<00>$<<01>V^8<>dQhRS[RR/#)r0rzr1NrF)r3r4s"<22>r5r6r<>#s<00><><00><1E><1E>T<EFBFBD><1E>d<EFBFBD>r8c <0C><00>WnR#)z Set expand.N)r<>)r=rzs&&r5rzr<>"s <00><00><1E> r8c<00> <<01>V^8<>dQhRS[/#rE<00>r[)r3r4s"<22>r5r6r<>(s<00><><00><15><15>c<EFBFBD>r8c <0C><><00>^pVP'dVP'd
V^, pVP'd$V\VP4^,
, pV#)z'Get extra width to add to cell content.)rr}r<>r<>)r=rUs& r5<00> _extra_width<74>Table._extra_width'sI<00><00><12><05> <0F>8<EFBFBD>8<EFBFBD>8<EFBFBD><04><0E><0E><0E> <11>Q<EFBFBD>J<EFBFBD>E<EFBFBD> <0F>8<EFBFBD>8<EFBFBD>8<EFBFBD> <11>S<EFBFBD><14><1C><1C>&<26><11>*<2A> *<2A>E<EFBFBD><14> r8c<00> <<01>V^8<>dQhRS[/#rEr<>)r3r4s"<22>r5r6r<>2s<00><><00><1E><1E>3<EFBFBD>r8c <0C>,<00>\VP4#)zGet the current number of rows.)r<>r<>r<s&r5<00> row_count<6E>Table.row_count1s<00><00><13>4<EFBFBD>9<EFBFBD>9<EFBFBD>~<7E>r8c<00>*<<01>V^8<>dQhRRRS[RS[/#)r0<00>consoler"<00>indexr1)r[r)r3r4s"<22>r5r6r<>6s"<00><><00><15><15>Y<EFBFBD><15>s<EFBFBD><15>y<EFBFBD>r8c <0C>H<00>\P!4pVP'dCW1PVPV\ VP4,,4, pVP
V,P pVeW1PV4, pV#)zGet the current row style.)r<00>nullr<6C><00> get_styler<65>r<>rQ)r=r<>r<>rQ<00> row_styles&&& r5<00> get_row_style<6C>Table.get_row_style6sr<00><00><15>
<EFBFBD>
<EFBFBD> <0C><05> <0F>?<3F>?<3F>?<3F> <11>&<26>&<26>t<EFBFBD><EFBFBD><EFBFBD>u<EFBFBD>s<EFBFBD>4<EFBFBD>?<3F>?<3F>?S<>7S<37>'T<>U<> U<>E<EFBFBD><18>I<EFBFBD>I<EFBFBD>e<EFBFBD>$<24>*<2A>*<2A> <09> <14> <20> <11>&<26>&<26>y<EFBFBD>1<> 1<>E<EFBFBD><14> r8c<00>(<<01>V^8<>dQhRRRRRS[/#<00>r0r<>r"<00>optionsr#r1r)r3r4s"<22>r5r6r<>@s%<00><><00><1B><1B> <20><1B>+;<3B><1B> <14>r8c <08>V<00>VPpVPe VPpV^8d \^^4#VPp\ VP WP W4,
444pVPpVPUu.uFpV!WP V4V4NK pp\ RV44V,pVPf\ RV44V,M VPp \W<>4p
V
PVP4p
V
#uupi)Nc3<00>8"<00>TFqPx<00>K R#5i<01>N)<01>minimum<75><02>.0<EFBFBD> measurements& r5<00> <genexpr><3E>)Table.__rich_measure__.<locals>.<genexpr>V<00><00><00><00>D<>|<7C> <0B>#<23>#<23>|<7C><><00>c3<00>8"<00>TFqPx<00>K R#5ir<>)<01>maximumr<6D>s& r5r<>r<>Yr<>r<>) rWrUrr<><00>sum<75>_calculate_column_widths<68> update_width<74>_measure_columnr<6E><00>clamprV) r=r<>r<>rW<00> extra_widthr<68><00>column<6D> measurements<74> minimum_width<74> maximum_widthr<68>s &&& r5<00>__rich_measure__<5F>Table.__rich_measure__@s!<00><00><1C>%<25>%<25> <09> <0F>:<3A>:<3A> !<21><1C>
<EFBFBD>
<EFBFBD>I<EFBFBD> <14>q<EFBFBD>=<3D><1E>q<EFBFBD>!<21>$<24> $<24><1A>'<27>'<27> <0B><17> <10> )<29> )<29><17>-<2D>-<2D>i<EFBFBD>.E<>F<> <0E>
<EFBFBD> <09>
<1F>.<2E>.<2E><0F><1F>,<2C>,<2C>
<EFBFBD>&<26><06> <1C>G<EFBFBD>%9<>%9<>)<29>%D<>f<EFBFBD> M<>&<26> <15>
<EFBFBD>
<10>D<>|<7C>D<> D<>{<7B> R<> <16>
<15>
<EFBFBD>
<EFBFBD>"<22> <10>D<>|<7C>D<> D<>{<7B> R<><15><1A><1A> <16>
"<22>-<2D>?<3F> <0B>!<21>'<27>'<27><04><0E><0E>7<> <0B><1A><1A><>
s<00>!D&c<00>><<01>V^8<>dQhRS[S[S[S[S[3,/#rE)r r[)r3r4s"<22>r5r6r<>bs"<00><><00><1D><1D><15>s<EFBFBD>C<EFBFBD><13>c<EFBFBD>1<>2<>r8c <0C><00>VP#)zGet cell padding.)r<>r<s&r5rw<00> Table.paddingas<00><00><14>}<7D>}<7D>r8c<00>$<<01>V^8<>dQhRS[RR/#)r0rwr1rs)r)r3r4s"<22>r5r6r<>gs<00><><00><14><14>0<><14>W<EFBFBD>r8c <0C><<00>\P!V4VnV#)zSet cell padding.)rr<>r<>)r=rws&&r5rwr<>fs<00><00> <20><0E><0E>w<EFBFBD>/<2F><04> <0A><13> r8rRr+rSr,rTr-rWrIrXc<00><><<01>V^8<>dQhRRRRRS[S[,RS[S[,RS[S[,RS[S[,RR R
R R R RS[S[,RS[S[,RS[S[,RS[S[,RS[RR/#)r0rMr&rNrOrYrPrQrRr$rSrrTr%rUrVrWrIrXr1N)r rrGr[)r3r4s"<22>r5r6r<>ls<><00><><00>8$<24>8$<24> <20>8$<24>!<21>8$<24>
<1F>y<EFBFBD>)<29> 8$<24> <1C>D<EFBFBD>><3E> 8$<24><1F>y<EFBFBD>)<29>8$<24><18> <09>"<22>8$<24>!<21>8$<24>(<28>8$<24>#<23>8$<24><18><03>}<7D>8$<24><1C>C<EFBFBD>=<3D>8$<24><1C>C<EFBFBD>=<3D>8$<24><18><03>}<7D>8$<24> <16>!8$<24>"
<0E>#8$r8c  <0C><><00>\\VP4TTT;'gRVeTM VPT;'gRT;'gRVVV V
V V V VR7pVPP V4R#)a<>Add a column to the table.
Args:
header (RenderableType, optional): Text or renderable for the header.
Defaults to "".
footer (RenderableType, optional): Text or renderable for the footer.
Defaults to "".
header_style (Union[str, Style], optional): Style for the header, or None for default. Defaults to None.
highlight (bool, optional): Whether to highlight the text. The default of None uses the value of the table (self) object.
footer_style (Union[str, Style], optional): Style for the footer, or None for default. Defaults to None.
style (Union[str, Style], optional): Style for the column cells, or None for default. Defaults to None.
justify (JustifyMethod, optional): Alignment for cells. Defaults to "left".
vertical (VerticalAlignMethod, optional): Vertical alignment, one of "top", "middle", or "bottom". Defaults to "top".
overflow (OverflowMethod): Overflow method: "crop", "fold", "ellipsis". Defaults to "ellipsis".
width (int, optional): Desired width of column in characters, or None to fit to contents. Defaults to None.
min_width (Optional[int], optional): Minimum width of column, or ``None`` for no minimum. Defaults to None.
max_width (Optional[int], optional): Maximum width of column, or ``None`` for no maximum. Defaults to None.
ratio (int, optional): Flexible ratio for the column (requires ``Table.expand`` or ``Table.width``). Defaults to None.
no_wrap (bool, optional): Set to ``True`` to disable wrapping of this column.
r*N)rZrMrNrOrYrPrQrRrSrTrUrVrWrIrX)r)r<>r<>rYr<>)r=rMrNrOrYrPrQrRrSrTrUrVrWrIrXr<>s&&&$$$$$$$$$$$$ r5r<><00>Table.add_columnlsz<00><00>N<18><16>t<EFBFBD>|<7C>|<7C>$<24><19><19>%<25>+<2B>+<2B><12>#,<2C>#8<>i<EFBFBD>d<EFBFBD>n<EFBFBD>n<EFBFBD>%<25>+<2B>+<2B><12><17>+<2B>+<2B>2<EFBFBD><1B><1D><1D><17><1F><1F><17><1B>
<EFBFBD><06>" <0A> <0C> <0C><1B><1B>F<EFBFBD>#r8rjc<00>N<<01>V^8<>dQhRS[R,RS[S[,RS[RR/#)r0<00> renderablesr&rQrjr1Nrk)r3r4s"<22>r5r6r<><00>sD<00><><00>-D<01>-D<01><1E>/<2F>0<>-D<01><18> <09>"<22>-D<01><1A> -D<01>
<0E> -Dr8c <0C><><00>RRlp\V4pVPp\V4\V48d(.VOR.\V4\V4,
,Op\V4F<>wrxV\V48XdX\ WpP
R7p VP Fp
V!V \R44K VPPV 4MWg,p Vf V!V R4K<>\V4'd V!W<>4K<>\P!R\V4P R24h VP P\WR74R#) a<>Add a row of renderables.
Args:
*renderables (None or renderable): Each cell in a row must be a renderable object (including str),
or ``None`` for a blank cell.
style (StyleType, optional): An optional style to apply to the entire row. Defaults to None.
end_section (bool, optional): End a section and draw a line. Defaults to False.
Raises:
errors.NotRenderableError: If you add something that can't be rendered.
c<00>,<00>V^8<>dQhR\RRRR/#)r0r<>rpr&r1N)r))r3s"r5r6<00>#Table.add_row.<locals>.__annotate__<5F>s"<00><00> -<2D> -<2D>V<EFBFBD> -<2D>1A<31> -<2D>d<EFBFBD> -r8c<00><<00>VPPV4R#r<>)r;r<>)r<>rps&&r5<00>add_cell<6C>Table.add_row.<locals>.add_cell<6C>s<00><00> <12>M<EFBFBD>M<EFBFBD> <20> <20><1A> ,r8N)rZrYr*zunable to render z1; a string or other renderable object is required<65>rQrj)rar<>r<><00> enumerater)rYr<>r r<>rr<00>NotRenderableError<6F>typer\rh) r=rQrjr<>r<><00>cell_renderablesr<73>r<>rpr<><00>_s &$$* r5<00>add_row<6F> Table.add_row<6F>s*<00><00>$ -<2D>>B<01>+<2B>=N<><18><16>,<2C>,<2C><07> <0E><1F> <20>3<EFBFBD>w<EFBFBD><<3C> /<2F> <0E>!<21> <0E><16><16>3<EFBFBD>w<EFBFBD><<3C>#<23>.><3E>*?<3F>?<3F>@<40> <0E> <1C>"+<2B>+;<3B>!<<3C> <1D>E<EFBFBD><14><03>G<EFBFBD> <0C>$<24><1F>u<EFBFBD><0E><0E>G<><06><1D><19><19>A<EFBFBD><1C>V<EFBFBD>T<EFBFBD>"<22>X<EFBFBD>.<2E>#<23><14> <0C> <0C>#<23>#<23>F<EFBFBD>+<2B> <20><1E><06><19>!<21><18><16><12>$<24><1E>z<EFBFBD>*<2A>*<2A><18><16>,<2C><1C>/<2F>/<2F>'<27><04>Z<EFBFBD>(8<>(A<>(A<>'B<>Bs<42>t<><12><12>"=<3D> <0A> <09> <09><18><18><13>5<EFBFBD>B<>Cr8c<00><<01>V^8<>dQhRR/#)r0r1Nr2)r3r4s"<22>r5r6r<><00>s<00><><00>-<2D>-<2D>T<EFBFBD>-r8c <0C>^<00>VP'dRVPR,nR#R#)z2Add a new section (draw a line after current row).TN<54><4E><EFBFBD><EFBFBD><EFBFBD>)r<>rjr<s&r5<00> add_section<6F>Table.add_section<6F>s"<00><00> <10>9<EFBFBD>9<EFBFBD>9<EFBFBD>(,<2C>D<EFBFBD>I<EFBFBD>I<EFBFBD>b<EFBFBD>M<EFBFBD> %<25> r8c<00>&<<01>V^8<>dQhRRRRRR/#)r0r<>r"r<>r#r1r'r2)r3r4s"<22>r5r6r<><00>s%<00><><00>.<0E>.<0E> <20>.<0E>+;<3B>.<0E> <17>.r8c#<08>"aa"<00>VP'g\R4x<00>R#VPpVPe VPpVPpVP SVP W4,
44p\V4V,pVPW`PRR7oRRVV3RlllpVP'dGV!VP\P!VPR4VPR7Rjx<01>L
VPSSV4Rjx<01>L
VP 'dIV!VP \P!VP"R4VP$R7Rjx<01>L
R#R#L{LbL 5i) <09>
N)rUrY<00>heightc<00>8<00>V^8<>dQhR\R\RRRR/#)r0<00>textrQrRr$r1r')r!r)r3s"r5r6<00>,Table.__rich_console__.<locals>.__annotate__<5F>s,<00><00>
<0E>
<0E><1A>
<0E>#,<2C>
<0E>7F<37>
<0E> <1B>
r8c<00><><<02>\V\4'dSPWRR7MTpSPVSP VR7R7#)F)rQrY<00>rR)r<>)r<>r<><00>
render_str<EFBFBD>render<65>update)r<>rQrR<00> render_textr<74><00>render_optionss&&& <20><>r5<00>render_annotation<6F>1Table.__rich_console__.<locals>.render_annotation<6F>sZ<00><><00>
<1E>d<EFBFBD>C<EFBFBD>(<28>(<28><18>"<22>"<22>4<EFBFBD><05>"<22>F<><19> <18>
<1B>><3E>><3E><1B>^<5E>%:<3A>%:<3A>7<EFBFBD>%:<3A>%K<>"<22><0E> r8z table.title)rQrRz table.caption)r<>)r<>rrWrUr<>r<>r<>r<>r<>rYrtr<00>
pick_firstr<EFBFBD>r<><00>_renderrur<>r<>) r=r<>r<>rWr<><00>widths<68> table_widthr<68>r<>s &f& @r5<00>__rich_console__<5F>Table.__rich_console__<5F>sQ<00><><00><00><14>|<7C>|<7C>|<7C><19>$<24>-<2D> <1F> <12><1B>%<25>%<25> <09> <0F>:<3A>:<3A> !<21><1C>
<EFBFBD>
<EFBFBD>I<EFBFBD><1A>'<27>'<27> <0B><15>.<2E>.<2E> <13>W<EFBFBD>)<29>)<29>)<29>*A<>B<>
<EFBFBD><06><1A>&<26>k<EFBFBD>K<EFBFBD>/<2F> <0B> <20><1E><1E><1D><1E><1E><04>(<28>
<EFBFBD><0E>
<0E>
<0E> <10>:<3A>:<3A>:<3A>(<28><14>
<EFBFBD>
<EFBFBD><1B>&<26>&<26>t<EFBFBD>'7<>'7<><1D>G<><1C>*<2A>*<2A><0E> <0E> <0E>
<18><<3C><<3C><07><1E><16>@<40>@<40>@<40> <0F><<3C><<3C><<3C>(<28><14> <0C> <0C><1B>&<26>&<26>t<EFBFBD>'9<>'9<>?<3F>K<><1C>,<2C>,<2C><0E> <0E> <0E> <18>  <0E>
A<01> <0E>s=<00>D F<01> F <04>F<01>(F <04>)F<01>?AF<01>F <04> F<01> F<01> Fc<00>8<<01>V^8<>dQhRRRRRS[S[,/#r<><00>r r[)r3r4s"<22>r5r6r<> s)<00><><00>?<16>?<16> <20>?<16>+;<3B>?<16> <0A>c<EFBFBD><19>?r8c
 <0C>D<00>VPpVPpVUu.uFqPPWV4NK ppVUu.uFqwP;'g^NK ppVPp VP
p
VP 'EdDVU u.uF,q<>P'gKV P;'g^NK. p p \V 4'd<>\Wd4UUu.uF%wruVP'd^M VPNK' p ppVUu.uFDpVP'gKVP;'g^V !VP4,NKF ppV\V 4,
p\W<>V4p\V4p\!V4F6wppVP'gKV V,\#V4,VV&K8 \V4pVV8<>d<>TP%TVUu.uF)qUPRJ;'dVP&'*NK+ upV4p\V4pVV8<>d3VV,
p\)V^.\+V4,W<>4p\V4p\W<>4UUu.uF'wppVPWP-V4V4NK) pppVUu.uFqwP;'g^NK ppVV8dVP 'g'VP.e<>VVP.V
,
8dhVP.fTM\1VP.V
,
V4p\VV,
V4p\VV4UUu.uFwppVV,NK pppV#uupiuupiuup iuuppiuupiuupiuuppiuupiuuppi)zNCalculate the widths of each column, including padding, not including borders.N)rWr<>r<>r<><00>_get_padding_widthr<68>rzrJrI<00>any<6E>ziprUrZr<>r<00>iterr<72><00>next<78>_collapse_widthsrXrr<>r<>rV<00>min)r=r<>r<>rWr<>r<><00> width_ranges<65>_ranger<00>get_padding_widthr<68><00>col<6F>ratios<6F> fixed_widths<68> flex_minimum<75>flexible_width<74> flex_widths<68>iter_flex_widthsr<73>r<00> excess_widthrU<00>
_max_width<EFBFBD>
pad_widths<EFBFBD>_width<74>pads&&& r5r<><00>Table._calculate_column_widths sR<00><00><1C>%<25>%<25> <09><16>,<2C>,<2C><07>IP<49>
<EFBFBD>IP<EFBFBD>v<EFBFBD> <20> <20><17>6<EFBFBD> :<3A><17> <15>
<EFBFBD>5A<01>A<>L<EFBFBD>&<26>.<2E>.<2E>%<25>%<25>A<EFBFBD>%<25>L<EFBFBD><06>A<> <20>3<>3<><19><1A>'<27>'<27> <0B> <0F>;<3B>;<3B>;<3B>07<30>H<><07><13><<3C><<3C>n<EFBFBD>c<EFBFBD>i<EFBFBD>i<EFBFBD>n<EFBFBD>n<EFBFBD>1<EFBFBD>n<EFBFBD><07>F<EFBFBD>H<><12>6<EFBFBD>{<7B>{<7B>+.<2E>l<EFBFBD>*D<> <12>*D<><0E><06> <20><1F><1F><1F>A<EFBFBD>f<EFBFBD>n<EFBFBD>n<EFBFBD><<3C>*D<><1D> <12> #*<2A> <12>")<29><06><1D><EFBFBD><EFBFBD>K<01>V<EFBFBD>\<5C>\<5C>&<26>&<26>Q<EFBFBD>*;<3B>F<EFBFBD>M<EFBFBD>M<EFBFBD>*J<>J<>J<>")<29><1D> <12>
"+<2B>S<EFBFBD><1C>-><3E>!><3E><0E>.<2E>~<7E>|<7C>T<> <0B>#'<27> <0B>#4<> <20>%.<2E>w<EFBFBD>%7<>M<EFBFBD>E<EFBFBD>6<EFBFBD><1D><EFBFBD><EFBFBD><EFBFBD>(4<>U<EFBFBD>(;<3B>d<EFBFBD>CS<43>>T<>(T<><06>u<EFBFBD> <0A>&8<><1A>&<26>k<EFBFBD> <0B> <16><19> "<22><19>*<2A>*<2A><16>MT<4D>U<>W<EFBFBD>6<EFBFBD>,<2C>,<2C>$<24>&<26>=<3D>=<3D>v<EFBFBD>~<7E>~<7E>+=<3D>=<3D>W<EFBFBD>U<><19><0E>F<EFBFBD>
<1E>f<EFBFBD>+<2B>K<EFBFBD><1A>Y<EFBFBD>&<26>*<2A>Y<EFBFBD>6<> <0C>%<25>l<EFBFBD>Q<EFBFBD>C<EFBFBD>#<23>f<EFBFBD>+<2B>4E<34>v<EFBFBD>V<><06>!<21>&<26>k<EFBFBD> <0B>&)<29><16>%9<><0E>%9<>M<EFBFBD>E<EFBFBD>6<EFBFBD><15>$<24>$<24>W<EFBFBD>.B<>.B<>5<EFBFBD>.I<>6<EFBFBD>R<>%9<> <19><0E>9E<01>E<> <0C>f<EFBFBD>n<EFBFBD>n<EFBFBD>)<29>)<29><01>)<29> <0C>F<EFBFBD>E<> <17>)<29> #<23><04> <0B> <0B> <0B> <10>N<EFBFBD>N<EFBFBD> &<26>;<3B>$<24>.<2E>.<2E>;<3B>:V<>+W<><18>><3E>><3E>)<29><1A><18><14><1E><1E>+<2B>5<>y<EFBFBD>A<> <17>
*<2A>*<2A>{<7B>*B<>F<EFBFBD>K<>J<EFBFBD>69<36>&<26>*<2A>6M<36>N<>6M<36>{<7B>v<EFBFBD>s<EFBFBD>f<EFBFBD>s<EFBFBD>l<EFBFBD>l<EFBFBD>6M<36>F<EFBFBD>N<><15> <0A><>s
<EFBFBD><EFBFBD>B<01><>
I<01><> <12><> <12><> V<01><><0E><>F<01><>Os^<00>M2<04>M7<04>M7<04> M<<04>$M<<04>7M<<04>+N<06>N<04>*N<04>=N<04>-N
<EFBFBD>N
<EFBFBD>6-N<06>*N<04>N<04>Nc <00>b<<01>V^8<>dQhRS[S[,RS[S[,RS[RS[S[,/#)r0r<00>wrapablerWr1)r r[rG)r3r4s"<22>r5r6r<>Ms9<00><><00>$<16>$<16><19>#<23>Y<EFBFBD>$<16>*.<2E>t<EFBFBD>*<2A>$<16>AD<41>$<16> <0A>c<EFBFBD><19>$r8c <0C>a <0C>\V4pWC,
p\V4'd<>V'd<>V^8<>d<>\R\W444o \V 3Rl\W444pS V,
p\W4UU u.uFwr<>VS 8Xd V 'd^M^NK p
pp \V
4'd V'gV#\ WW4.\ V4,p \ WZW<5A>4p\V4pWC,
pK<>V#uup pi)aReduce widths so that the total is under max_width.
Args:
widths (List[int]): List of widths.
wrapable (List[bool]): List of booleans that indicate if a column may shrink.
max_width (int): Maximum width to reduce to.
Returns:
List[int]: A new list of widths.
c3<00>>"<00>TFwrV'gKVx<00>K R#5ir<>r2)r<>rU<00>
allow_wraps& r5r<><00>)Table._collapse_widths.<locals>.<genexpr>^s<00><00><00>!<12>3H<33>/<2F>e<EFBFBD>J<EFBFBD>E<EFBFBD>E<EFBFBD>3H<33>s<00> <01>
c3<00>N<"<00>TFwrV'd
VS8wdTM^x<00>K R#5i)rNr2)r<>rUr#<00>
max_columns& <20>r5r<>r$as)<00><><00><00>(<12>-B<>)<29><05>(<28>E<EFBFBD>Z<EFBFBD>,?<3F>E<EFBFBD>Q<EFBFBD>F<>-B<>s<00>"%)r<>r <00>maxr
rr<>r) r<>rr rW<00> total_widthr<00>second_max_column<6D>column_differencerUr#r<00>
max_reducer&s &&&& @r5r <00>Table._collapse_widthsLs<00><><00><1A>&<26>k<EFBFBD> <0B>"<22>.<2E> <0C> <0E>x<EFBFBD>=<3D>=<3D><1D>,<2C><11>"2<> <20>!<12>36<33>v<EFBFBD>3H<33>!<12><12>
<EFBFBD>%(<28>(<12>-0<><16>-B<>(<12>%<12>!<21>%/<2F>1B<31>$B<>!<21>.1<EFBFBD><16>-B<><12>-B<>)<29><05>!<21>J<EFBFBD>.<2E>:<3A>Q<EFBFBD>A<EFBFBD>E<>-B<><17><12><1B>6<EFBFBD>{<7B>{<7B>*;<3B><19> <16> <0A> "<22>,<2C>B<>C<>c<EFBFBD>&<26>k<EFBFBD>Q<>
<EFBFBD>%<25>l<EFBFBD>J<EFBFBD>O<><06>!<21>&<26>k<EFBFBD> <0B>*<2A>6<> <0C><15> <0A><>s <00>D<06>Dc <00>@<<01>V^8<>dQhRRRS[RS[RS[S[,/#)r0r<>r"<00> column_indexr<78>r1)r[r)rrn)r3r4s"<22>r5r6r<>ss7<00><><00>G<12>G<12> <20>G<12>03<30>G<12>=C<>G<12> <11>%<25><1F>Gr8c # <0C>aaaaaa"<00>VPoVPoVPo\S4pV^8HoV\ VP
4^,
8Ho/oRVVVVVV3Rllp.pVP pVPpVP'dGT!VP;'gR4V!VP4,p V!W<>P34T!VP;'gR4p
VPF p V!W<>34K VP'dGT!VP;'gR4V!VP4,p V!W<>P34V'd\\ p \#V4FDwr<>wpp\%TV !VV!W<>44\'VRR4;'g VP(4x<00>KF R#VF4wpp\%TT\'VRR4;'g VP(4x<00>K6 R#5i)z3Get all the cells with padding and optional header.c
<00>r<00>V^8<>dQhR\R\R\\\\\3,/#)r0<00> first_row<6F>last_rowr1)rGr r[)r3s"r5r6<00>&Table._get_cells.<locals>.__annotate__<5F>s0<00><00> <1C> <1C>4<EFBFBD> <1C>4<EFBFBD> <1C>E<EFBFBD>#<23>s<EFBFBD>C<EFBFBD>QT<51>BT<42><U<> r8c<00>6<<06>SPW34pV'dV#S wr4rVS 'd5S
'g\^Wd,
4pV'g\^W5,
4pS 'g)S
'd^pS 'd^pV'd^pV'd^pW4WV3pVSW3&V#)r)<02>getr')r1r2<00>cachedr,<00>right<68>bottomr+r<><00>_padding_cacherx<00> first_column<6D> last_columnryrws&& <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>r5<00> get_padding<6E>%Table._get_cells.<locals>.get_padding<6E>s<><00><><00>#<23>'<27>'<27><19>(=<3D>><3E>F<EFBFBD><15><1D> <0A>'.<2E> $<24>C<EFBFBD><06><1F>#<23><1E>q<EFBFBD>$<24>,<2C>/<2F>D<EFBFBD><1F> <20><11>C<EFBFBD>L<EFBFBD>1<>F<EFBFBD><1B><1F><1C>D<EFBFBD><1E><1D>E<EFBFBD><1C><1B>C<EFBFBD><1B><1E>F<EFBFBD><1B>F<EFBFBD>1<>H<EFBFBD>4<<3C>N<EFBFBD>I<EFBFBD>0<> 1<><1B>Or8r*rSN)rxryrwr r<>r<>r<>r<>r{rOrMrQrBr|rPrNrrrn<00>getattrrS)r=r<>r.r<><00> any_paddingr<<00> raw_cells<6C>_appendr<64>rO<00>
cell_style<EFBFBD>cellrP<00>_Padding<6E>first<73>lastrQrpr9rxr:r;ryrws&&&& @@@@@@r5<00>
_get_cells<EFBFBD>Table._get_cellsss<><00><><00><00>
 <20>0<>0<><18><17>=<3D>=<3D><08><16>,<2C>,<2C><07><19>'<27>l<EFBFBD> <0B>#<23>q<EFBFBD>(<28> <0C>"<22>c<EFBFBD>$<24>,<2C>,<2C>&7<>!<21>&;<3B>;<3B> <0B>MO<4D><0E> <1C> <1C>2?A<01> <09><1B>"<22>"<22><07><1B>%<25>%<25> <09> <0F> <1B> <1B> <1B>$<24>T<EFBFBD>%6<>%6<>%<<3C>%<<3C>"<22>=<3D> <09><16>#<23>#<23>A<0E><0E>L<EFBFBD> <14>\<5C>=<3D>=<3D>1<> 2<><1E>v<EFBFBD>|<7C>|<7C>1<>1<>r<EFBFBD>2<>
<EFBFBD><1A>L<EFBFBD>L<EFBFBD>D<EFBFBD> <13>Z<EFBFBD>&<26> '<27>!<21> <0F> <1B> <1B> <1B>$<24>T<EFBFBD>%6<>%6<>%<<3C>%<<3C>"<22>=<3D> <09><16>#<23>#<23>A<0E><0E>L<EFBFBD> <14>\<5C>=<3D>=<3D>1<> 2<> <16><1E>H<EFBFBD>4C<34>I<EFBFBD>4N<34>0<><05>0<>e<EFBFBD>Z<EFBFBD><1B><19><1C>Z<EFBFBD><1B>U<EFBFBD>)A<>B<><1B>J<EFBFBD>
<EFBFBD>D<EFBFBD>9<>L<>L<>V<EFBFBD>_<EFBFBD>_<EFBFBD><12><12>5O<01>&/<2F>!<21><05>z<EFBFBD><1B><19><1E><1B>J<EFBFBD>
<EFBFBD>D<EFBFBD>9<>L<>L<>V<EFBFBD>_<EFBFBD>_<EFBFBD><12><12>&/<2F>s&<00>B$H <01>-AH <01>34H <01>(H <01>=8H <01>6BH c<00>&<<01>V^8<>dQhRS[RS[/#)r0r.r1r<>)r3r4s"<22>r5r6r<><00>s<00><><00>$<24>$<24>s<EFBFBD>$<24>s<EFBFBD>$r8c <0C><><00>VPwr#r$VP'd^p\WC,
4pVP'g-V^8Xd^pV\ VP
4^,
8Xd^pWC,#)zGet extra width from padding.)rwrx<00>absryr<>r<>)r=r.r<><00> pad_right<68>pad_lefts&& r5r<00>Table._get_padding_width<74>sh<00><00>$(<28>L<EFBFBD>L<EFBFBD>!<21><01>a<EFBFBD> <0F> <20> <20> <20><18>H<EFBFBD><1B>H<EFBFBD>0<>1<>I<EFBFBD><13>}<7D>}<7D>}<7D><1B>q<EFBFBD> <20><1C><08><1B>s<EFBFBD>4<EFBFBD><<3C><<3C>0<>1<EFBFBD>4<>4<><1D> <09><17>#<23>#r8c<00>.<<01>V^8<>dQhRRRRRS[RS[/#)r0r<>r"r<>r#r<>r1)r)r)r3r4s"<22>r5r6r<><00>s3<00><><00>%<1B>%<1B><1A>%<1B>"<22>%<1B><17> %<1B>
<15> %r8c <0C>.<00>VPpV^8d \^^4#VPVP4pVPe>\VPV,VPV,4P V4#.p.pVP pVP p \Pp
VPWPV4F(p V
!WV P4wr<>V!V 4V !V 4K* \V'd \V4M^V'd \V4MT4P V4pTPVPfRMVPV,VPf R4pV#VPV,4pV#)z0Get the minimum and maximum width of the column.N) rWrrrZrU<00> with_maximumr<6D>r5rGrpr'r<>rV)r=r<>r<>r<>rW<00> padding_width<74>
min_widths<EFBFBD>
max_widths<EFBFBD>
append_min<EFBFBD>
append_max<EFBFBD>get_render_widthrC<00>_min<69>_maxr<78>s&&&& r5r<><00>Table._measure_column<6D>sj<00><00><1C>%<25>%<25> <09> <14>q<EFBFBD>=<3D><1E>q<EFBFBD>!<21>$<24> $<24><1C>/<2F>/<2F><06> <0A> <0A>><3E> <0A> <11><<3C><<3C> #<23><1E><16> <0C> <0C>}<7D>,<2C>f<EFBFBD>l<EFBFBD>l<EFBFBD>]<5D>.J<><0E><1A>l<EFBFBD>9<EFBFBD>%<25> &<26>!#<23>
<EFBFBD> "<22>
<EFBFBD><1F>&<26>&<26>
<EFBFBD><1F>&<26>&<26>
<EFBFBD>&<26>?<3F>?<3F><18><18>O<EFBFBD>O<EFBFBD>G<EFBFBD>]<5D>]<5D>F<EFBFBD>C<>D<EFBFBD>)<29>'<27>D<EFBFBD>O<EFBFBD>O<EFBFBD>L<>J<EFBFBD>D<EFBFBD> <16>t<EFBFBD> <1C> <16>t<EFBFBD> <1C>D<01>
"<22>)<29>C<EFBFBD>
<EFBFBD>O<EFBFBD>q<EFBFBD>)<29>C<EFBFBD>
<EFBFBD>O<EFBFBD>y<EFBFBD>
<EFBFBD> <17>,<2C>y<EFBFBD>
!<21> <14>"<22>'<27>'<27><1A>$<24>$<24>,<2C>D<EFBFBD>&<26>2B<32>2B<32>]<5D>2R<32><1A>$<24>$<24>,<2C>D<EFBFBD>
<EFBFBD> <0B><1B><1A>39<33>2B<32>2B<32>]<5D>2R<32>
<EFBFBD> <0B><1B>r8c<00><<<01>V^8<>dQhRRRRRS[S[,RR/#)r0r<>r"r<>r#rr1r'r)r3r4s"<22>r5r6r<><00>s7<00><><00>t<1B>t<1B> <20>t<1B>+;<3B>t<1B>EI<45>#<23>Y<EFBFBD>t<1B> <17>tr8c#<08><> aaa*a+a,a-"<00>SPSP;'gR4pTSPSP;'gR4,pVV3Rl\SP44p\ \ V!4pSP'd<SPPV\SPSP4R7MRpV'd#SP'gVP4MTp\P!4p SPp
SPp SPp SP p SP"pSP$p\o*V'd<>S*!VP&V4S*!VP(V4S*!VP*V43S*!VP,V4S*!VP.V4S*!VP0V43S*!VP2V4S*!VP4V4S*!VP6V43.pV 'dS*!VP9V4V4x<00>V x<00>M.pSP:pSPp\\=V44EFwpwpppT;'dT o,T;'dT o+S,'g#S+'gSP>VV ,
,MRp^p.pS,'g S+'d\@PB!4pM T!T!SV 'd
V^,
MT44p\ VVV
4F<>wpppVPEVVPFVPHVPJRVPLR7pSPOVPPVV!VP4V,R7p\SV\UV44pVPWV4K<> \SRV44o-RV*V+V,V-3Rllp \ VVVV
4UU!UUu.uFEwpp!ppS*PYV !VV!PZVV!V!P4V,4VV4NKG uppp!pVR &V'EdV'd*V 'd"S*!VP]VR
V R 7V4x<00>V x<00>TV'd^M V'd^M^,wp"p#p$V$P^Pa4'dT$M-S*!V$P^VPbV$P,4p%\eV4FSp&V 'dV"x<00>\gV4F%wp'p(V(V&,Rjx<01>L
V''dK!V%x<00>K' V 'dV#x<00>V x<00>KU M0\eV4F!p&VFp(V(V&,Rjx<01>L
K V x<00>K# V'd2V'd*V 'd"S*!VP]VR V R 7V4x<00>V x<00>T;'d VPhp)V'gEKhV'gV'g V)'gEK<>V'dEK<>V 'dV\UV4^,
8<>dEK<>V 'd S,'dEK<>V'd&S*!VP]VR V R 7V,V4x<00>MS*!VP]VRV R 7V4x<00>V x<00>EK V'd+V 'd!S*!VPkV4V4x<00>V x<00>R#R#R#uuppp!piEL<>ELX5i)r*c3<00>L<"<00>TFwrSPSW4x<00>K R#5ir<>)rG)r<>r.r<>r<>r=s& <20><>r5r<><00> Table._render.<locals>.<genexpr><3E>s)<00><><00><00>
<EFBFBD>(?<3F>$<24> <0C> <11>O<EFBFBD>O<EFBFBD>G<EFBFBD>\<5C> :<3A> :<3A>(?<3F>s<00>!$)<01>safeN)rUrRrXrTr<>rY<00>rQc3<00>8"<00>TFp\V4x<00>K R#5ir<>)r<>)r<>rCs& r5r<>r^Ns<00><00><00>9<>5<EFBFBD>4<EFBFBD>S<EFBFBD><14>Y<EFBFBD>Y<EFBFBD>5<EFBFBD>r<EFBFBD>c <00><><00>V^8<>dQhR\\\,,RRR\R\R\\\,,/#)r0rCrSrrUrQr1)r rr[r)r3s"r5r6<00>#Table._render.<locals>.__annotate__PsS<00><00> M<01> M<01><1A>4<EFBFBD><07>=<3D>)<29> M<01>/<2F> M<01><1B> M<01><1D>  M<01>
<16>d<EFBFBD>7<EFBFBD>m<EFBFBD>$<24>  Mr8c<00><><<04>S'dRpM
S'dRpVR8XdSPWSV4#VR8XdSPWSV4#SPWSV4#)r8r,<00>middle)<03> align_top<6F> align_middle<6C> align_bottom)rCrSrUrQ<00>_Segment<6E>
footer_row<EFBFBD>
header_row<EFBFBD>
row_heights&&&&<26><><EFBFBD><EFBFBD>r5<00>
align_cell<EFBFBD>!Table._render.<locals>.align_cellPsd<00><><00> <1E>'<27>H<EFBFBD><1F>$<24>H<EFBFBD><1B>u<EFBFBD>$<24>#<23>-<2D>-<2D>d<EFBFBD>:<3A>u<EFBFBD>M<>M<><1D><18>)<29>#<23>0<>0<><14>j<EFBFBD>%<25>P<>P<><1F>,<2C>,<2C>T<EFBFBD>*<2A>e<EFBFBD>L<>Lr8:NNN<4E>foot)<01>edge<67>head<61>mid<69>row)6r<36>rQr<>r<>r<>rar
r<00>
substituterrvr{<00>get_plain_headed_boxr<00>liner|r}r~r<00> head_left<66>
head_right<EFBFBD> head_vertical<61>mid_left<66> mid_right<68> mid_vertical<61> foot_left<66>
foot_right<EFBFBD> foot_vertical<61>get_topr<70>rr<>rr<>r<>rRrXrTrY<00> render_linesrpr'r<>r<><00> set_shaperS<00>get_rowr<77><00>strip<69>background_style<6C>rangerrj<00>
get_bottom).r=r<>r<>r<00> table_styler<65><00> _column_cells<6C> row_cells<6C>_box<6F>new_liner<65>r{r|r}r~r<00> box_segmentsr<73>r<>r<>rErF<00>row_cellrs<00>
max_heightrBr<>rUrCr<>r<><00>linesrm<00>_cellr+r7<00>_divider<65>divider<65>line_no<6E> last_cell<6C> rendered_cellrjrirjrkrls.ff&& @@@@r5r<00> Table._render<65>s<><00><><00><00><1E>'<27>'<27><04>
<EFBFBD>
<EFBFBD>(8<>(8<>b<EFBFBD>9<> <0B>"<22>W<EFBFBD>%6<>%6<>t<EFBFBD>7H<37>7H<37>7N<37>7N<37>B<EFBFBD>%O<>O<> <0C>
<EFBFBD>(1<>$<24>,<2C>,<2C>(?<3F>
<EFBFBD> <0A>
.2<EFBFBD>#<23>}<7D>2E<32>-F<> <09>
<14>x<EFBFBD>x<EFBFBD>x<EFBFBD> <11>H<EFBFBD>H<EFBFBD> <1F> <1F><17>i<EFBFBD><04> <0A> <0A>w<EFBFBD>7G<37>7G<37>H<> <20> <0E><16> <0A>/3<>4<EFBFBD>;K<>;K<>;K<>t<EFBFBD>(<28>(<28>*<2A>QU<51><04><1A><<3C><<3C>><3E><08><16>,<2C>,<2C><07><1A>&<26>&<26> <0B><1A>&<26>&<26> <0B><18>N<EFBFBD>N<EFBFBD> <09><19>_<EFBFBD>_<EFBFBD>
<EFBFBD><16>,<2C>,<2C><07><1A><08> <0F><1D>T<EFBFBD>^<5E>^<5E>\<5C>:<3A><1C>T<EFBFBD>_<EFBFBD>_<EFBFBD>l<EFBFBD>;<3B><1C>T<EFBFBD>/<2F>/<2F><1C>><3E><12> <1D>T<EFBFBD>]<5D>]<5D>L<EFBFBD>9<><1C>T<EFBFBD>^<5E>^<5E>\<5C>:<3A><1C>T<EFBFBD>.<2E>.<2E> <0C>=<3D><12> <1D>T<EFBFBD>^<5E>^<5E>\<5C>:<3A><1C>T<EFBFBD>_<EFBFBD>_<EFBFBD>l<EFBFBD>;<3B><1C>T<EFBFBD>/<2F>/<2F><1C>><3E><12><0E>L<EFBFBD>"<19><1E>t<EFBFBD>|<7C>|<7C>F<EFBFBD>3<>\<5C>B<>B<><1E><0E><><1D>L<EFBFBD><1C>*<2A>*<2A> <0A><1B>%<25>%<25> <09>.7<EFBFBD><0F> <09>8R<38>.S<> *<2A>E<EFBFBD>*<2A>E<EFBFBD>4<EFBFBD><18><1E>.<2E>.<2E>;<3B>J<EFBFBD><1D>-<2D>-<2D>+<2B>J<EFBFBD>#<23>:<3A><15> <09> <09>%<25>+<2B>-<2D>.<2E><19> <10>
<1B>J<EFBFBD>/1<>E<EFBFBD><19>Z<EFBFBD>!<21>J<EFBFBD>J<EFBFBD>L<EFBFBD> <09>%<25>!<21>'<27> <0B>5<EFBFBD>1<EFBFBD>9<EFBFBD><15>O<><12> <09>(+<2B>6<EFBFBD>8<EFBFBD>W<EFBFBD>'E<>#<23><05>t<EFBFBD>V<EFBFBD>!(<28><1E><1E><1F>"<22>N<EFBFBD>N<EFBFBD>"<22>N<EFBFBD>N<EFBFBD>#<23>_<EFBFBD>_<EFBFBD><1F>$<24>.<2E>.<2E> "0<>"<12><0E> <20>,<2C>,<2C><18>O<EFBFBD>O<EFBFBD>"<22>#<23>D<EFBFBD>J<EFBFBD>J<EFBFBD>/<2F>)<29>;<3B>-<2D><12><05>
!<21><1A>S<EFBFBD><15>Z<EFBFBD>8<>
<EFBFBD><15> <0C> <0C>U<EFBFBD>#<23>(F<01>"<1D>9<>5<EFBFBD>9<>9<>J<EFBFBD> M<01> M<01>836<33>f<EFBFBD>h<EFBFBD><05>w<EFBFBD>2W<32> <0E>3X<01>.<2E>E<EFBFBD>5<EFBFBD>$<24><06><19>"<22>"<22><1E><1C><1D><0E><0E><1D>!<21>%<25>+<2B>+<2B>.<2E><19>:<3A> <16> <1A><1E> <12>3X<01> <0E>E<EFBFBD>!<21>H<EFBFBD><14>t<EFBFBD><17>K<EFBFBD>"<22><1C> <0C> <0C>V<EFBFBD>V<EFBFBD>)<29> <0C>D<>l<EFBFBD><16><16>#<23>N<EFBFBD>(4<>%<25>Q<EFBFBD>4<EFBFBD>a<EFBFBD>UV<55>(X<>%<25><04>e<EFBFBD>X<EFBFBD>
 <20>}<7D>}<7D>*<2A>*<2A>,<2C>,<2C><1D>!<21> <20> <0A> <0A>y<EFBFBD>'A<>'A<>H<EFBFBD>N<EFBFBD>N<EFBFBD>'R<><16><18> %<25>Z<EFBFBD>0<>G<EFBFBD> <20>"<22>
<EFBFBD>4=<3D>e<EFBFBD>4D<34>0<> <09>=<3D>#0<><17>#9<>9<>9<>(<28>y<EFBFBD>")<29>M<EFBFBD>5E<01>!<21>#<23> <0B>"<22>N<EFBFBD> 1<> %<25>Z<EFBFBD>0<>G<EFBFBD>).<2E> <0A>#0<><17>#9<>9<>9<>*/<2F>"<22>N<EFBFBD> 1<><14><05>+<2B><1E><18>L<EFBFBD>L<EFBFBD><16><16>i<EFBFBD>L<EFBFBD>@<40>,<2C><12><12><1F><0E><1D>1<>1<>#<23>/<2F>/<2F>K<EFBFBD><13>t<EFBFBD><1A>w<EFBFBD>+<2B>+<2B><1C><04>(<28>U<EFBFBD>c<EFBFBD>)<29>n<EFBFBD>q<EFBFBD>6H<36>-H<>(<28>Z<EFBFBD>Z<EFBFBD><1E>&<26> <20>L<EFBFBD>L<EFBFBD><16><15>Y<EFBFBD>L<EFBFBD>G<>'<27>Q<>(<28><1A><1A>
'<27> <20>L<EFBFBD>L<EFBFBD><16><15>Y<EFBFBD>L<EFBFBD>G<><1C><1A><1A>#<23>N<EFBFBD>m/T<01>p <10>I<EFBFBD><1A>4<EFBFBD>?<3F>?<3F>6<EFBFBD>2<>L<EFBFBD>A<> A<><1A>N<EFBFBD><1E>4<EFBFBD><34>I <0E>D:<3A>:<3A>s<00>A[<01> B[<01>#[<01>5A<[<01>2B.[<01>!A [<01> [<01>
[<01>[<01>!'[<01> [<01>"[<01>4C6[<01>*A Z8 <0C>5[<01>[<01>[<01>)[<01> [<01> -[<01>9A'[<01> [
<EFBFBD>! [<01>/[<01>?,[<01>+[
<EFBFBD>,[<01>[<01> [<01>)[<01>>[<01>[<01>[<01>&[<01>1[<01><[<01>[<01>[<01>&[<01>1[<01>9A[<01> [<01>-[<01>[c<00>R<<01>V^8<>dQh/S[S[,;R&S[S[,;R&#)r0r<>r<>)r r)rh)r3r4s"<22>r5r6r<><00>s*<00><><00><00>@<12>&<26>\<5C><19>A<01>B <0F>s<EFBFBD>)<29>O<EFBFBD>Cr8)r<>r<>r<>rrur<>r<>rxr<>rPrOrYrrVryr<>r<>rvr}r|r{r~rQrtr<>r<>rU)r<00>)r*r*)r\r]r^r_r`r<00>
HEAVY_HEADr<EFBFBD><00> classmethodr<64>rbrz<00>setterr<72>r<>r<>r<>rwr<>r<>r<>rr<>r rGrr<>rrcrdrerfs@r5rsrs<00>s<><00><><00><00><08>D>&<26>%)<29>>&<26>'+<2B> >&<26>
$<24> >&<26> $(<28> >&<26>"%<25><1E><1E>>&<26>$(<28>>&<26>&,<2C>>&<26>"'<27>>&<26><1E>>&<26><1D>>&<26>!<21>>&<26>"<22>>&<26><1F>>&<26> !<21>!>&<26>"<19>#>&<26>$"<22>%>&<26>&59<35>'>&<26>(-;<3B>)>&<26>*-;<3B>+>&<26>,-1<>->&<26>.,0<>/>&<26>0.2<EFBFBD>1>&<26>2*2<>3>&<26>4,4<>5>&<26>6 <20>7>&<26>>&<26>@<11>
<EFBFBD>&'<27>
<EFBFBD>"&<26> 
<EFBFBD>
<1F> 
<EFBFBD> <1D> 
<EFBFBD>
<EFBFBD><11>
<EFBFBD>@<0E>6<><0E>6<> <0C>]<5D>]<5D><1E><13><1E><0E><15><0E><15><0E><1E><0E><1E><15><15><1B><1B>B<0E><1D><0E><1D> <0A>^<5E>^<5E><14><14><14>
8$<24>
-1<> 8$<24> %)<29> 8$<24>-1<>8$<24>&*<2A>8$<24>$*<2A>8$<24>+0<>8$<24>&0<>8$<24> $<24>8$<24>$(<28>8$<24>$(<28>8$<24> $<24>8$<24> <1E>!8$<24>8$<24>t-D<01>&*<2A>-D<01>"<22> -D<01>-D<01>^-<2D>-<2D> .<0E>.<0E>`?<16>?<16>B<11>$<16><11>$<16>LG<12>G<12>R$<24>$<24> %<1B>%<1B>Nt<1B>t<1B>u<01>r8rs<00>__main__)r")<01>ReprHighlighter)<01>timerz Table renderzStar Wars MovieszRich example tabler7)rtrur<><00>Released<65> bright_cyan<61>cyanT)rOrQrX<00>Title<6C>magentar`z
Box Office<63>green)rRrQz Dec 20, 2019z Star Wars: The Rise of Skywalkerz $952,110,690z May 25, 2018zSolo: A Star Wars Storyz $393,151,347z Dec 15, 2017z!Star Wars Ep. V111: The Last Jediz$1,332,539,889zon blackr<6B>z Dec 16, 2016zRogue One: A Star Wars Storyz$1,332,439,889c<00>(<00>V^8<>dQhR\RR/#)r0r<>r1N)r<>)r3s"r5r6r6<00>s<00><00> <1C> <1C><13> <1C><14> r8c<00><><00>\P4\P\V44\P4R#r<>)r<><00>print<6E>rulerY)r<>s&r5rMrM<00>s$<00><00> <13>M<EFBFBD>M<EFBFBD>O<EFBFBD> <13>L<EFBFBD>L<EFBFBD><19>4<EFBFBD><1F> )<29> <13>M<EFBFBD>M<EFBFBD>Or8z Example Tabler<65>r<>z expand=Truezwidth=50NF<4E>dimr<6D>zrow_styles=['dim', 'none']z%leading=1, row_styles=['dim', 'none']z+show_lines=True, row_styles=['dim', 'none'])H<> dataclassesrrr<00>typingrrrr r
r r r rr*rr<00>_looprr<00>_pickr<00>_ratiorr<00>alignr<00>jupyterr<00>measurerrwrr<00>protocolr<00>segmentrrQrrr<>r r!r<>r"r#r$r%r&r'r)rhrnrsr\<00> rich.console<6C>rich.highlighterr<72><00>_timerr<72><00>tabler<65>r<>rMrYr<>rzrUr<>rr~r2r8r5<00><module>r<>s<><00><01>1<>1<>
<02>
<02>
<02><1A>-<2D><1C>2<>&<26>!<21> <20>/<2F>#<23><1C>#<23> <20><10><06><06> <0B>Y&<26>Y&<26> <0B>Y&<26>x <0B>M<01>M<01> <0B>M<01>#<23>J<EFBFBD>#<23>N <1B>L<EFBFBD>N <1B>b <0C>z<EFBFBD><19>$<24>0<><1D> <0E>~<7E> <1E> <1E><15>$<24>(<28>#<23>
<EFBFBD><05> <0E><18><18> <16>]<5D>&<26>$<24> <19>
<EFBFBD> <0E><18><18><17> <09><18>2<> <0A><18><18><1C>w<EFBFBD>g<EFBFBD><18>F<> <0A> <0A> <0A> <1A> .<2E> <1A>
<EFBFBD>
<0E> <0A> <0A>n<EFBFBD>&?<3F><1E>P<> <0A> <0A> <0A> <1A> /<2F> <1C><1C><1C> <16>
<EFBFBD> <0E> <0A> <0A> <1A> *<2A> <1C>
<EFBFBD>  <1C>
<1A>)<29><07>#<23>%<25> <09><0E><EFBFBD><1F><0F> <0A> <0A>e<EFBFBD>X<EFBFBD> <0A>.<2E><1B><05> <0C><0E>}<7D><1D><0F> <0A> <0A>e<EFBFBD><1C><18><05> <0B><0E>z<EFBFBD><1A><0F> <0A> <0A>e<EFBFBD>X<EFBFBD> <0A>.<2E><1A><05> <0B><1C><05> <0C>!<21>6<EFBFBD>?<3F><05><18><0E>+<2B>,<2C><0F> <0A> <0A>e<EFBFBD>X<EFBFBD> <0A>.<2E><1A><05> <0B><1C><05> <0C>!<21>6<EFBFBD>?<3F><05><18><19><05> <0A><0E>6<>7<><0F> <0A> <0A>e<EFBFBD>X<EFBFBD> <0A>.<2E><1A><05> <0B><1C><05> <0C>!<21>6<EFBFBD>?<3F><05><18><1F><05><18><19><05> <0A><0E><<3C>=<3D><0F> <0A> <0A>e<EFBFBD>X<EFBFBD> <0A>.<2E>O
<1F> <1E> <1A>
<1F> <1E> <1E>s <00>+F3J*<05>* J;